diff --git a/.circleci/config.yml b/.circleci/config.yml index 709ff7feb..60c5f700f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -13,9 +13,10 @@ pip-run: &pip-install command: | python3 -m venv venv . venv/bin/activate - pip install -r pip-requirements.txt --progress-bar off - pip install --progress-bar off sphinx pytest - pip install --progress-bar off sphinx-astropy sphinx-bootstrap-theme nbconvert==5.6.1 + python3 -m pip install --upgrade pip wheel + python3 -m pip install -r pip-requirements.txt --progress-bar off + python3 -m pip install --progress-bar off "sphinx>=2.0,<3.0" pytest + python3 -m pip install --progress-bar off sphinx-astropy sphinx-bootstrap-theme nbconvert==5.6.1 jobs: diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 68417b1b6..000000000 --- a/.travis.yml +++ /dev/null @@ -1,51 +0,0 @@ -language: c - -os: - - linux - -sudo: false - -addons: - apt: - packages: - - graphviz - - texlive-latex-extra - - dvipng - -env: - global: - - - PYTHON_VERSION=3.6 - - NUMPY_VERSION=stable - - ASTROPY_VERSION=stable - - EVENT_TYPE='pull_request push' - - - CONDA_ENVIRONMENT='environment.yml' - - CONDA_DEPENDENCIES='jupyter ipython' - - CONDA_CHANNELS='astropy-ci-extras astropy' - - # We need to install the master/latest version of nbconvert because it has support for - # allowing exceptions in individual cells: - - PIP_DEPENDENCIES='git+https://github.com/jupyter/nbconvert' - -# matrix: - -# # Don't wait for allowed failures -# fast_finish: true - -# include: - -# - os: linux -# env: SETUP_CMD='test --coverage' - -install: - - - git clone --depth 1 git://github.com/astropy/ci-helpers.git - - source ci-helpers/travis/setup_conda.sh - -script: - # - | - # python scripts/convert.py docs/_static/tutorials/ -v - # --output-path=docs/rst-tutorials - # --template=docs/_static/astropy.tpl - - python scripts/convert.py tutorials/notebooks --exec-only -v diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index 98d0c03f7..9de9e8c54 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -6,7 +6,7 @@ Overview Each tutorial is a `Jupyter notebook `_ file. Each notebook is saved in a separate directory within the ``tutorials/notebooks`` subdirectory in this project. For an example, let's look at the source notebook -of the `FITS-header `_ tutorial. Within ``tutorials/notebooks/FITS-header``, there is a single Jupyter notebook file that contains the text and code for the tutorial, and any small data files used @@ -188,7 +188,7 @@ your ``requirements.txt`` file would look like: numpy>=1.13 To see an example, have a look at the FITS-header `requirements.txt file `_. Push the notebook and other files from your local branch up to your fork of the @@ -211,7 +211,10 @@ If your tutorial includes large data files (where large means >~ 1 MB), we don't want to include them in the ``astropy/astropy-tutorials`` git repository, as that will drastically slow down cloning the repository. Instead, we encourage use of the `astropy.utils.download_files` function, and will host data files on -the ``_ server. To do this, use the following +the ``_ server by opening a PR at the +``_ repository, or to use Zenodo to host the data files +if the file concerned is larger than 10 MB. +To do the former, use the following procedure: * When writing your tutorial, include the files in your tutorial's directory @@ -241,10 +244,28 @@ procedure: If you do this, the only change necessary when merging your notebook will be to set ``tutorialpath`` to ``'http://data.astropy.org/tutorials/My-tutorial-name/'``. +For larger data files that are bigger than 10 MB in size, we recommend hosting with Zenodo. +To use this approach, follow these steps: + +* You will need to sign up for an account with Zenodo before you can upload a file there. + +* After a Zenodo account has been properly set up, be sure to log in and do a new upload. Follow +the Zenodo instructions and complete all the required fields as the bare minimum in order to have +the data file(s) uploaded to their records. Once this is done you will have a link to share the data. + +* With the link to the data file record, which has the format ``https://zenodo.org/api/records/:id``, an example HTTP GET request needed to retrieve the data using the Python package ``requests`` is shown below:: + + import requests + r = requests.get("https://zenodo.org/api/records/1234) + +To use the output as a locally stored file, you would first need to write the file contents to a file, for example:: + + with open('./some-data-file.fits', 'wb') as f: + f.write(r.content) + If you need information or help with: -* previewing how the rendered Jupyter notebooks will look on the tutorial - webpage +* previewing how the rendered Jupyter notebooks will look on the tutorial webpage * marking a cell with an intentional / expected error please see the :ref:`dev-page`. diff --git a/README.rst b/README.rst index 66c2ec39a..07b61552e 100644 --- a/README.rst +++ b/README.rst @@ -22,7 +22,7 @@ You can also get started quickly using `Binder `_ to run th your web browser within a remote server: .. image:: http://mybinder.org/badge.svg - :target: https://mybinder.org/v2/gh/astropy/astropy-tutorials/master?filepath=tutorials/notebooks + :target: https://mybinder.org/v2/gh/astropy/astropy-tutorials/main?filepath=tutorials/notebooks Contributing tutorial material diff --git a/pip-requirements.txt b/pip-requirements.txt index 9d5791ed7..8add60d89 100644 --- a/pip-requirements.txt +++ b/pip-requirements.txt @@ -1,13 +1,14 @@ IPython>=6.1 -astropy>=3 -astroquery>=0.3.7 +astropy>=4 +git+https://github.com/astropy/astroquery.git matplotlib==3.0.2 -numpy>=1.15 +numpy>=1.17 jupyter>=1.0 scipy>=1.0 notebook>=5.7.2 aplpy -spectral-cube +git+https://github.com/radio-astro-tools/spectral-cube.git#egg=spectral-cube +git+https://github.com/radio-astro-tools/radio-beam.git#egg=radio-beam reproject==0.5.1 dust_extinction>=0.7 astro-gala diff --git a/scripts/tests/test_convert.py b/scripts/tests/test_convert.py index b709a0f47..634b54ede 100644 --- a/scripts/tests/test_convert.py +++ b/scripts/tests/test_convert.py @@ -10,7 +10,7 @@ tests_path = path.split(path.abspath(__file__))[0] def test_convert_succeed(): - # With the current master version of nbconvert, we can allow errors + # With the current main version of nbconvert, we can allow errors # per-cell. This notebook, even though it raises an exception, should still # execute fine: nbc = NBConverter(path.join(tests_path, 'test-succeed.ipynb')) diff --git a/tutorials/astropy.tpl b/tutorials/astropy.tpl index 5ddb31cc0..09393fb0d 100644 --- a/tutorials/astropy.tpl +++ b/tutorials/astropy.tpl @@ -8,7 +8,7 @@ .. raw:: html - +
@@ -31,7 +31,7 @@
- + {% endblock %} diff --git a/tutorials/dev.rst b/tutorials/dev.rst index 98b864b4a..ad27c3451 100644 --- a/tutorials/dev.rst +++ b/tutorials/dev.rst @@ -8,7 +8,7 @@ Documentation on tutorials infrastructure Overview -------- -Tutorials are written as Jupyter notebooks on the ``master`` branch of the +Tutorials are written as Jupyter notebooks on the ``main`` branch of the ``astropy/astropy-tutorials`` repository in ``tutorials/notebooks/``. These notebook files do not contain output in order to simplify version-controlling the files. @@ -18,15 +18,11 @@ to look like the main documentation. Sphinx requires restructured text (RST) files for its build process, so use an intermediate step to run the notebooks to produce output, and then convert the notebook files into RST files. -We use our own run-and-convert machinery using ``nbconvert``. We use the same -script that converts the notebooks to RST to test the notebooks on travis by -simply executing the notebooks and ignoring the output. - We use `CircleCI `_ to do the Sphinx build, which is then pushed to the ``gh-pages`` branch of the repository and served by GitHub. The notebooks are first converted to RST files during the Sphinx build by doing the conversion at the end of the `Sphinx configuration file -`_. +`_. Why not use nbsphinx? --------------------- @@ -77,7 +73,7 @@ Building the tutorials page locally ----------------------------------- For this, you can use the `Makefile -`_ at the +`_ at the top-level of the tutorials repository. From the root level of the cloned or downloaded repository:: @@ -135,7 +131,7 @@ Marking a cell with an intentional error Edit the cell metadata of the cell in which you would like to raise an exception and add the following to the top-level JSON: ``"tags": ["raises-exception"]`` -This tag is recognized by the latest (master) version of nbconvert. +This tag is recognized by the latest (main) version of nbconvert. Automatically Strip Output and Notebook Metadata ------------------------------------------------ diff --git a/tutorials/notebooks/Coordinates-Intro/Coordinates-Intro.ipynb b/tutorials/notebooks/Coordinates-Intro/Coordinates-Intro.ipynb deleted file mode 100755 index a1274d56d..000000000 --- a/tutorials/notebooks/Coordinates-Intro/Coordinates-Intro.ipynb +++ /dev/null @@ -1,342 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Coords 1: Getting Started with astropy.coordinates\n", - "\n", - "## Authors\n", - "Erik Tollerud, Kelle Cruz, Stephen Pardy, Stephanie T. Douglas\n", - "\n", - "## Learning Goals\n", - "* Create `astropy.coordinates.SkyCoord` objects using names and coordinates\n", - "* Use SkyCoord objects to become familiar with object oriented programming (OOP)\n", - "* Interact with a `SkyCoord` object and access its attributes\n", - "* Use a `SkyCoord` object to query a database\n", - "\n", - "## Keywords\n", - "coordinates, OOP, file input/output\n", - "\n", - "\n", - "## Summary\n", - "In this tutorial, we're going to investigate the area of the sky around the picturesque group of galaxies named \"Hickson Compact Group 7,\" download an image, and do something with its coordinates." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Imports" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Python standard-library\n", - "from urllib.parse import urlencode\n", - "from urllib.request import urlretrieve\n", - "\n", - "# Third-party dependencies\n", - "from astropy import units as u\n", - "from astropy.coordinates import SkyCoord\n", - "from IPython.display import Image" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Describing on-sky locations with `coordinates`" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The `SkyCoord` class in the `astropy.coordinates` package is used to represent celestial coordinates. First, we'll make a SkyCoord object based on our object's name, \"Hickson Compact Group 7\" or \"HCG 7\" for short. Most astronomical object names can be found by [SESAME](http://cdsweb.u-strasbg.fr/cgi-bin/Sesame), a service which queries Simbad, NED, and VizieR and returns the object's type and its J2000 position. This service can be used via the `SkyCoord.from_name()` [class method](https://julien.danjou.info/blog/2013/guide-python-static-class-abstract-methods):" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "# initialize a SkyCood object named hcg7_center at the location of HCG 7\n", - "hcg7_center = SkyCoord.from_name('HCG 7')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "Note that the above command requires an internet connection. If you don't have one, execute the following line instead:\n", - "
" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "# uncomment and run this line if you don't have an internet connection\n", - "# hcg7_center = SkyCoord(9.81625*u.deg, 0.88806*u.deg, frame='icrs')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "type(hcg7_center)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Show the available methods and attributes of the SkyCoord object we've created called `hcg7_center`" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dir(hcg7_center)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Show the RA and Dec." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(hcg7_center.ra, hcg7_center.dec)\n", - "print(hcg7_center.ra.hour, hcg7_center.dec)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We see that, according to SESAME, HCG 7 is located at ra = 9.849 deg and dec = 0.878 deg. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This object we've just created has various useful ways of accessing the information contained within it. In particular, the ``ra`` and ``dec`` attributes are specialized [Quantity](http://docs.astropy.org/en/stable/units/index.html) objects (actually, a subclass called [Angle](http://docs.astropy.org/en/stable/api/astropy.coordinates.Angle.html), which in turn is subclassed by [Latitude](http://docs.astropy.org/en/stable/api/astropy.coordinates.Latitude.html) and [Longitude](http://docs.astropy.org/en/stable/api/astropy.coordinates.Longitude.html)). These objects store angles and provide pretty representations of those angles, as well as some useful attributes to quickly convert to common angle units:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "type(hcg7_center.ra), type(hcg7_center.dec)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.ra, hcg7_center.dec" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.ra.hour" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "SkyCoord will also accept string-formatted coordinates either as separate strings for RA/Dec or a single string. You'll need to give units, though, if they aren't part of the string itself." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "scrolled": false - }, - "outputs": [], - "source": [ - "SkyCoord('0h39m15.9s', '0d53m17.016s', frame='icrs')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.ra.hour" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Download an image\n", - "Now that we have a `SkyCoord` object, we can try to use it to access data from the [Sloan Digitial Sky Survey](http://www.sdss.org/) (SDSS). Let's start by trying to get a picture using the SDSS image cutout service to make sure HCG 7 is in the SDSS footprint and has good image quality.\n", - "\n", - "This requires an internet connection, but if it fails, don't worry: the file is included in the repository so you can just let it use the local file``'HCG7_SDSS_cutout.jpg'``, defined at the top of the cell. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# tell the SDSS service how big of a cutout we want\n", - "im_size = 12*u.arcmin # get a 12 arcmin square\n", - "im_pixels = 1024 \n", - "cutoutbaseurl = 'http://skyservice.pha.jhu.edu/DR12/ImgCutout/getjpeg.aspx'\n", - "query_string = urlencode(dict(ra=hcg7_center.ra.deg, \n", - " dec=hcg7_center.dec.deg, \n", - " width=im_pixels, height=im_pixels, \n", - " scale=im_size.to(u.arcsec).value/im_pixels))\n", - "url = cutoutbaseurl + '?' + query_string\n", - "\n", - "# this downloads the image to your disk\n", - "urlretrieve(url, 'HCG7_SDSS_cutout.jpg')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "Image('HCG7_SDSS_cutout.jpg')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Very pretty!\n", - "\n", - "The saga of HCG 7 continues in [Coords 2: Transforming between coordinate systems](http://learn.astropy.org/rst-tutorials/Coordinates-Transform.html)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Exercises" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Exercise 1" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Create a `SkyCoord` of some other astronomical object you find interesting. Using only a single method/function call, get a string with the RA/Dec in the form 'HH:MM:SS.S DD:MM:SS.S'. Check your answer against an academic paper or a website like [SIMBAD](http://simbad.u-strasbg.fr/simbad/) that will show you sexigesimal coordinates for the object.\n", - "\n", - "(Hint: `SkyCoord.to_string()` might be worth reading up on.)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Exercise 2" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now get an image of that object from the Digitized Sky Survey and download it and/or show it in the notebook. Bonus points if you figure out the (one-line) trick to get it to display in the notebook *without* ever downloading the file yourself.\n", - "\n", - "(Hint: STScI has an easy-to-access [copy of the DSS](https://archive.stsci.edu/dss/). The pattern to follow for the web URL is ``http://archive.stsci.edu/cgi-bin/dss_search?f=GIF&ra=RA&dec=DEC``.)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.2" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/tutorials/notebooks/Coordinates-Intro/HCG7_2MASS.tbl b/tutorials/notebooks/Coordinates-Intro/HCG7_2MASS.tbl deleted file mode 100644 index ff7960ba9..000000000 --- a/tutorials/notebooks/Coordinates-Intro/HCG7_2MASS.tbl +++ /dev/null @@ -1,95 +0,0 @@ -\ -\fixlen = T -\RowsRetrieved = 23 -\ORIGIN = 'IPAC Infrared Science Archive (IRSA), Caltech/JPL' -\DATETIME= '2015-02-25 16:44:17' -\DataTag = 'ADS/IRSA.Gator#2015/0225/164417_13085' -\DATABASE= '2MASS All-Sky Extended Source Catalog (XSC) (fp_xsc)' -\EQUINOX = 'J2000' -\SKYAREA = 'within 20 arcmin of ra=9.81625 dec=+0.88806 Eq J2000 ' -\StatusFile = '/workspace/TMP_gDI5AY_559/Gator/irsa/13085/log.13085.html' -\SQL = 'WHERE (cc_flg != 'a' and cc_flg != 'z') ' -\SQL = 'SELECT (27 column names follow in next row.)' -\ -\ designation -\ ___ source designation formed from sexigesimal coordinates -\ ra (deg) -\ ___ right ascension (J2000 decimal deg) based on peak pixel -\ dec (deg) -\ ___ declination (J2000 decimal deg) based on peak pixel -\ r_k20fe (arcsec) -\ ___ 20mag/sq." isophotal K fiducial ell. ap. semi-major axis -\ j_m_k20fe (mag) -\ ___ J 20mag/sq." isophotal fiducial ell. ap. magnitude -\ j_msig_k20fe (mag) -\ ___ J 1-sigma uncertainty in 20mag/sq." iso.fid.ell.mag -\ j_flg_k20fe -\ ___ J confusion flag for 20mag/sq." iso. fid. ell. mag -\ h_m_k20fe (mag) -\ ___ H 20mag/sq." isophotal fiducial ell. ap. magnitude -\ h_msig_k20fe (mag) -\ ___ H 1-sigma uncertainty in 20mag/sq." iso.fid.ell.mag -\ h_flg_k20fe -\ ___ H confusion flag for 20mag/sq." iso. fid. ell. mag -\ k_m_k20fe (mag) -\ ___ K 20mag/sq." isophotal fiducial ell. ap. magnitude -\ k_msig_k20fe (mag) -\ ___ K 1-sigma uncertainty in 20mag/sq." iso.fid.ell.mag -\ k_flg_k20fe -\ ___ K confusion flag for 20mag/sq." iso. fid. ell. mag -\ k_ba -\ ___ K minor/major axis ratio fit to the 3-sigma isophote -\ k_phi (deg) -\ ___ K angle to 3-sigma major axis (E of N) -\ sup_ba -\ ___ minor/major axis ratio fit to 3-sig. super-coadd isophote -\ sup_phi (deg) -\ ___ super-coadd angle to major axis (E of N) -\ r_ext (arcsec) -\ ___ extrapolation/total radius -\ j_m_ext (mag) -\ ___ J mag from fit extrapolation -\ j_msig_ext (mag) -\ ___ J 1-sigma uncertainty in mag from fit extrapolation -\ h_m_ext (mag) -\ ___ H mag from fit extrapolation -\ h_msig_ext (mag) -\ ___ H 1-sigma uncertainty in mag from fit extrapolation -\ k_m_ext (mag) -\ ___ K mag from fit extrapolation -\ k_msig_ext (mag) -\ ___ K 1-sigma uncertainty in mag from fit extrapolation -\ cc_flg -\ ___ indicates artifact contamination and/or confusion -\ angle (deg) -\ ___ Position Angle in degree. -\ dist (arcsec) -\ ___ Distance between the target position and each source in arcsec. -\ -| designation| ra| dec|r_k20fe|j_m_k20fe|j_msig_k20fe|j_flg_k20fe|h_m_k20fe|h_msig_k20fe|h_flg_k20fe|k_m_k20fe|k_msig_k20fe|k_flg_k20fe| k_ba|k_phi|sup_ba|sup_phi| r_ext|j_m_ext|j_msig_ext|h_m_ext|h_msig_ext|k_m_ext|k_msig_ext|cc_flg| dist| angle| -| char| double| double| double| double| double| int| double| double| int| double| double| int| double| int|double| int| double| double| double| double| double| double| double| char| double| double| -| | deg| deg| arcsec| mag| mag| | mag| mag| | mag| mag| | | deg| | deg| arcsec| mag| mag| mag| mag| mag| mag| | arcsec| deg| -| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| null| - 00402069+0052508 10.086218 0.880798 9.4 13.835 0.068 0 13.010 0.086 0 12.588 0.089 0 0.8 70 0.820 35 18.62 13.632 0.088 12.744 0.104 12.398 0.105 0 972.120611 91.538952 - 00395984+0103545 9.999350 1.065140 12.9 12.925 0.035 0 12.183 0.042 0 11.890 0.067 0 0.8 35 0.700 40 35.90 12.469 0.048 11.910 0.066 11.522 0.087 0 916.927636 45.951861 - 00401849+0049448 10.077062 0.829130 6.0 14.918 0.086 0 14.113 0.107 0 13.714 0.103 0 0.6 -15 1.000 90 11.35 14.631 0.121 13.953 0.169 13.525 0.161 0 962.489231 102.731490 - 00395277+0057124 9.969907 0.953472 5.3 14.702 0.049 0 14.248 0.069 0 13.899 0.095 0 0.6 -60 0.440 -50 10.59 14.620 0.144 14.150 0.296 13.730 0.200 0 601.136444 66.936590 - 00401864+0047245 10.077704 0.790143 7.6 15.585 0.134 1 15.003 0.180 1 14.049 0.142 1 0.5 30 0.460 30 14.48 14.977 0.138 14.855 0.303 13.653 0.180 0 1004.982128 110.531470 - 00393485+0051355 9.895219 0.859882 39.3 11.415 0.031 3 10.755 0.044 3 10.514 0.068 3 0.6 -30 0.700 -60 92.29 11.415 0.018 10.155 0.054 9.976 0.085 0 301.813395 109.639102 - 00392964+0103495 9.873526 1.063769 10.9 14.463 0.065 0 13.618 0.067 0 13.258 0.091 0 0.4 55 0.280 60 20.35 14.200 0.086 13.363 0.091 13.101 0.133 0 665.301415 18.051526 - 00403343+0049079 10.139293 0.818865 5.0 15.484 0.150 0 null null null 13.970 0.137 0 1.0 90 1.000 90 10.05 15.035 0.183 14.725 0.000 13.654 0.189 0 1189.207905 102.088788 - 00393319+0035505 9.888305 0.597381 11.5 13.156 0.033 0 12.509 0.043 0 12.073 0.059 0 0.6 -55 0.520 -40 21.64 13.026 0.040 12.247 0.046 11.978 0.065 0 1078.110270 166.078500 - 00395031+0035444 9.959649 0.595693 5.1 15.684 0.135 0 14.805 0.138 0 13.981 0.124 0 1.0 90 1.000 90 10.05 15.684 0.135 14.404 0.176 13.838 0.201 0 1172.286501 153.874091 - 00394272+0037395 9.928026 0.627663 5.2 15.359 0.107 0 14.264 0.090 0 13.798 0.109 0 1.0 90 1.000 90 10.30 15.332 0.193 13.994 0.133 13.629 0.172 0 1020.130143 156.769515 - 00393899+0038325 9.912468 0.642384 5.0 15.266 0.094 0 14.432 0.102 0 14.067 0.134 0 1.0 90 1.000 90 10.05 15.043 0.141 14.306 0.164 13.940 0.225 0 949.833479 158.613482 - 00400691+0040595 10.028815 0.683197 5.5 15.012 0.065 0 14.244 0.074 0 14.001 0.112 0 0.7 -25 0.740 -40 10.71 14.669 0.087 14.058 0.115 13.889 0.187 0 1062.726983 133.944137 - 00391798+0041588 9.824936 0.699687 6.1 15.685 0.168 0 14.890 0.191 0 14.003 0.155 0 1.0 90 1.000 90 11.40 15.677 0.312 14.415 0.226 13.568 0.190 0 678.863209 177.360117 - 00384796+0034572 9.699858 0.582578 5.1 14.925 0.077 0 14.224 0.114 0 13.536 0.079 0 1.0 90 1.000 90 10.20 14.839 0.133 14.111 0.192 13.461 0.137 0 1176.842625 200.856597 - 00390392+0050579 9.766345 0.849419 5.0 14.895 0.070 0 14.238 0.087 0 13.834 0.110 0 1.0 90 1.000 90 10.05 14.706 0.107 14.033 0.132 13.750 0.187 0 227.201453 232.246890 - 00391339+0051508 9.805797 0.864135 52.8 10.362 0.014 0 9.631 0.017 0 9.334 0.024 0 0.3 -15 0.400 -15 75.02 10.279 0.015 9.527 0.016 9.247 0.023 0 93.990015 203.598476 - 00391786+0054458 9.824418 0.912743 27.9 11.082 0.016 0 10.384 0.022 0 10.147 0.032 0 0.5 5 0.700 5 42.75 10.914 0.018 10.251 0.021 10.031 0.030 0 93.596555 18.308033 - 00385879+0057269 9.744971 0.957478 5.0 15.535 0.122 0 14.796 0.145 0 14.278 0.165 0 1.0 90 1.000 90 10.05 15.535 0.122 14.623 0.227 14.147 0.269 0 358.163568 314.246475 - 00391879+0053308 9.828303 0.891909 15.4 13.044 0.047 0 12.412 0.063 0 12.077 0.094 0 0.8 60 0.740 65 23.62 12.755 0.048 12.283 0.072 11.713 0.096 0 45.544562 72.287562 - 00391213+0102408 9.800550 1.044691 5.0 15.568 0.126 0 15.047 0.181 0 14.356 0.176 0 1.0 90 1.000 90 10.05 15.295 0.181 15.047 0.181 14.067 0.250 0 566.696375 354.276982 - 00383990+0104442 9.666268 1.078968 5.3 15.255 0.108 0 14.232 0.121 0 13.873 0.113 0 1.0 90 1.000 90 10.44 15.151 0.180 13.812 0.149 13.552 0.155 0 873.946372 321.851314 - 00384916+0050212 9.704872 0.839244 5.1 15.075 0.088 0 14.651 0.170 0 13.804 0.101 0 1.0 90 1.000 90 10.20 15.053 0.159 14.651 0.170 13.682 0.171 0 437.740484 246.331036 diff --git a/tutorials/notebooks/Coordinates-Intro/HCG7_SDSS_cutout.jpg b/tutorials/notebooks/Coordinates-Intro/HCG7_SDSS_cutout.jpg deleted file mode 100644 index 4eb9718ff..000000000 Binary files a/tutorials/notebooks/Coordinates-Intro/HCG7_SDSS_cutout.jpg and /dev/null differ diff --git a/tutorials/notebooks/Coordinates-Intro/requirements.txt b/tutorials/notebooks/Coordinates-Intro/requirements.txt deleted file mode 100644 index 5bea42877..000000000 --- a/tutorials/notebooks/Coordinates-Intro/requirements.txt +++ /dev/null @@ -1,5 +0,0 @@ -astropy=2.0 -numpy=1.13 -matplotlib=2.0 -astroquery=0.3 -ipython=6.2 diff --git a/tutorials/notebooks/Coordinates-Transform/Coordinates-Transform.ipynb b/tutorials/notebooks/Coordinates-Transform/Coordinates-Transform.ipynb deleted file mode 100755 index e68187dda..000000000 --- a/tutorials/notebooks/Coordinates-Transform/Coordinates-Transform.ipynb +++ /dev/null @@ -1,664 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Coords 2: Transforming between coordinate systems\n", - "\n", - "## Authors\n", - "Erik Tollerud, Kelle Cruz, Stephen Pardy, Stephanie T. Douglas\n", - "\n", - "## Learning Goals\n", - "- Create `astropy.coordinates.SkyCoord` objects\n", - "- Transform to different coordinate systems on the sky\n", - "- Transform to altitude/azimuth coordinates from a specific observing site\n", - "\n", - "## Keywords\n", - "coordinates, units, observational astronomy\n", - "\n", - "## Summary\n", - "\n", - "In this tutorial we demonstrate how to define astronomical coordinates using the `astropy.coordinates` \"frame\" classes. We then show how to transform between the different built-in coordinate frames, such as from ICRS (RA, Dec) to Galactic (l, b). Finally, we show how to compute altitude and azimuth from a specific observing site." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Imports" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Third-party dependencies\n", - "from astropy import units as u\n", - "from astropy.coordinates import SkyCoord\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Set up matplotlib and use a nicer set of plot parameters\n", - "from astropy.visualization import astropy_mpl_style\n", - "import matplotlib.pyplot as plt\n", - "plt.style.use(astropy_mpl_style)\n", - "%matplotlib inline" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Section 0: Quickstart" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "**Note:** If you already worked through [Coords 1](http://learn.astropy.org/rst-tutorials/Coordinates-Intro.html?highlight=coordinates) you can feel free to skip to [Section 1](#Section-1:).\n", - "\n", - "
" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In Astropy, the most common object you'll work with for coordinates is `SkyCoord`. A `SkyCoord` can most easily be created directly from angles as shown below. \n", - "\n", - "In this tutorial we'll be converting between frames. Let's start in the ICRS frame (which happens to be the default.) \n", - "\n", - "For much of this tutorial we'll work with the Hickson Compact Group 7. We can create an object either by passing the degrees explicitly (using the astropy [units](http://docs.astropy.org/en/stable/units/index.html) library) or by passing in strings. The two coordinates below are equivalent:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center = SkyCoord(9.81625*u.deg, 0.88806*u.deg, frame='icrs') # using degrees directly\n", - "print(hcg7_center)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center = SkyCoord('0h39m15.9s', '0d53m17.016s', frame='icrs') # passing in string format\n", - "print(hcg7_center)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can get the right ascension and declination components of the object directly by accessing those attributes." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(hcg7_center.ra)\n", - "print(hcg7_center.dec)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Section 1: " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Introducing frame transformations" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`astropy.coordinates` provides many tools to transform between different coordinate systems. For instance, we can use it to transform from ICRS coordinates (in RA and Dec) to Galactic coordinates.\n", - "\n", - "To understand the code in this section, it may help to read over the [overview of the astropy coordinates scheme](http://astropy.readthedocs.org/en/latest/coordinates/index.html#overview-of-astropy-coordinates-concepts). The key piece to understand is that all coordinates in Astropy are in particular \"frames\" and we can transform between a specific `SkyCoord` object in one frame to another. For example, we can transform our previously-defined center of HCG 7 from ICRS to Galactic coordinates:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center = SkyCoord(9.81625*u.deg, 0.88806*u.deg, frame='icrs')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There are three different ways of transforming coordinates. Each has its pros and cons, but all should give you the same result. The first way to transform to other built-in frames is by specifying those attributes. For instance, let's see the location of HCG 7 in Galactic coordinates." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### Transforming coordinates using attributes:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.galactic" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### Transforming coordinates using the transform_to() method and other coordinate object" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The above is actually a special \"quick-access\" form that internally does the same as what's in the cell below: it uses the [`transform_to()`](http://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html#astropy.coordinates.SkyCoord.transform_to) method to convert from one frame to another. We can pass in an empty coordinate class to specify what coordinate system to transform into." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from astropy.coordinates import Galactic # new coordinate baseclass\n", - "hcg7_center.transform_to(Galactic())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### Transforming coordinates using the transform_to() method and a string" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Finally, we can transform using the `transform_to()` method and a string with the name of a built-in coordinate system." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.transform_to('galactic')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can transform to many coordinate frames and equinoxes. \n", - "\n", - "These coordinates are available by default:\n", - "\n", - " - ICRS\n", - " - FK5\n", - " - FK4\n", - " - FK4NoETerms\n", - " - Galactic\n", - " - Galactocentric\n", - " - Supergalactic\n", - " - AltAz\n", - " - GCRS\n", - " - CIRS\n", - " - ITRS\n", - " - HCRS\n", - " - PrecessedGeocentric\n", - " - GeocentricTrueEcliptic\n", - " - BarycentricTrueEcliptic\n", - " - HeliocentricTrueEcliptic\n", - " - SkyOffsetFrame\n", - " - GalacticLSR\n", - " - LSR\n", - " - BaseEclipticFrame\n", - " - BaseRADecFrame\n", - "\n", - "Let's focus on just a few of these. We can try FK5 coordinates next:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center_fk5 = hcg7_center.transform_to('fk5')\n", - "print(hcg7_center_fk5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "And, as with the Galactic coordinates, we can acheive the same result by importing the FK5 class from the `astropy.coordinates` package. This also allows us to change the equinox." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from astropy.coordinates import FK5\n", - "hcg7_center_fk5.transform_to(FK5(equinox='J1975')) # precess to a different equinox " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "
\n", - "\n", - "**Beware:** Changing frames also changes some of the attributes of the object, but usually in a way that makes sense. The following code should fail.\n", - "\n", - "
" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "tags": [ - "raises-exception" - ] - }, - "outputs": [], - "source": [ - "hcg7_center.galactic.ra # should fail because Galactic coordinates are l/b not RA/Dec" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Instead, we now have access to the l and b attributes:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(hcg7_center.galactic.l, hcg7_center.galactic.b)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Section 2:" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Transform frames to get to altitude-azimuth (\"AltAz\")\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To actually do anything with observability we need to convert to a frame local to an on-earth observer. By far the most common choice is horizontal altitude-azimuth coordinates, or \"AltAz\". We first need to specify both where and when we want to try to observe.\n", - "\n", - "We'll need to import a few more specific modules:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from astropy.coordinates import EarthLocation\n", - "from astropy.time import Time" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's first see the sky position at Kitt Peak National Observatory in Arizona." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Kitt Peak, Arizona\n", - "kitt_peak = EarthLocation(lat='31d57.5m', lon='-111d35.8m', height=2096*u.m)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For known observing sites we can enter the name directly." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "kitt_peak = EarthLocation.of_site('Kitt Peak')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can see the list of observing sites:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "EarthLocation.get_site_names()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's check the altitude at 1 AM UTC, which is 6 PM AZ mountain time:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "observing_time = Time('2010-12-21 1:00')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now we use these to create an `AltAz` frame object. Note that this frame has some other information about the atmosphere, which can be used to correct for atmospheric refraction. Here we leave that alone, because the default is to ignore this effect (by setting the pressure to 0)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from astropy.coordinates import AltAz\n", - "\n", - "aa = AltAz(location=kitt_peak, obstime=observing_time)\n", - "print(aa)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now we can transform our ICRS `SkyCoord` to `AltAz` to get the location in the sky over Kitt Peak at the requested time." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.transform_to(aa)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To look at just the altitude we can `alt` attribute:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "hcg7_center.transform_to(aa).alt" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Alright, it's at 55 degrees at 6 PM, but that's pretty early to be observing. We could try various times one at a time to see if the airmass is at a darker time, but we can do better: let's try to create an airmass plot." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# this gives a Time object with an *array* of times\n", - "delta_hours = np.linspace(0, 6, 100)*u.hour\n", - "full_night_times = observing_time + delta_hours\n", - "full_night_aa_frames = AltAz(location=kitt_peak, obstime=full_night_times)\n", - "full_night_aa_coos = hcg7_center.transform_to(full_night_aa_frames)\n", - "\n", - "plt.plot(delta_hours, full_night_aa_coos.secz)\n", - "plt.xlabel('Hours from 6pm AZ time')\n", - "plt.ylabel('Airmass [Sec(z)]')\n", - "plt.ylim(0.9,3)\n", - "plt.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Great! Looks like the lowest airmass is in another hour or so (7 PM). But that might still be twilight... When should we start observing for proper dark skies? Fortunately, Astropy provides a ``get_sun`` function that can be used to check this. Let's use it to check if we're in 18-degree twilight or not." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from astropy.coordinates import get_sun\n", - "\n", - "full_night_sun_coos = get_sun(full_night_times).transform_to(full_night_aa_frames)\n", - "plt.plot(delta_hours, full_night_sun_coos.alt.deg)\n", - "plt.axhline(-18, color='k')\n", - "plt.xlabel('Hours from 6pm AZ time')\n", - "plt.ylabel('Sun altitude')\n", - "plt.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Looks like it's just below 18 degrees at 7 PM, so you should be good to go!" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can also look at the object altitude at the present time and date:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "now = Time.now()\n", - "hcg7_center = SkyCoord(9.81625*u.deg, 0.88806*u.deg, frame='icrs')\n", - "kitt_peak_aa = AltAz(location=kitt_peak, obstime=now)\n", - "print(hcg7_center.transform_to(kitt_peak_aa))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Exercises" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Exercise 1" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Try to compute to some arbitrary precision (rather than eyeballing on a plot) when 18 degree twilight or sunrise/sunset hits on that night." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Exercise 2" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Try converting the HCG 7 coordinates to an equatorial frame at some other equinox a while in the past (like J2000). Do you see the precession of the equinoxes?\n", - "\n", - "Hint: To see a diagram of the supported frames look [here](http://docs.astropy.org/en/stable/coordinates/#module-astropy.coordinates) or on the list above. One of those will do what you need if you give it the right frame attributes." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Exercise 3" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Try looking at the altitude of HCG 7 at another observatory." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Wrap-up" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For more documentation on the many other features of `astropy.coordinates`, check out [its section of the documentation](http://astropy.readthedocs.org/en/latest/coordinates/index.html).\n", - "\n", - "You might also be interested in [the astroplan affiliated package](http://astroplan.readthedocs.org/), which uses the `astropy.coordinates` to do more advanced versions of the tasks in the last section of this tutorial." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.7" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/tutorials/notebooks/Coordinates-Transform/requirements.txt b/tutorials/notebooks/Coordinates-Transform/requirements.txt deleted file mode 100644 index c58b45fdc..000000000 --- a/tutorials/notebooks/Coordinates-Transform/requirements.txt +++ /dev/null @@ -1,5 +0,0 @@ -astropy=2.0 -numpy=1.13 -matplotlib=2.1 -astroquery=0.3 -ipython=6.2 diff --git a/tutorials/notebooks/FITS-cubes/FITS-cubes.ipynb b/tutorials/notebooks/FITS-cubes/FITS-cubes.ipynb index 29e91669a..041ff97e0 100755 --- a/tutorials/notebooks/FITS-cubes/FITS-cubes.ipynb +++ b/tutorials/notebooks/FITS-cubes/FITS-cubes.ipynb @@ -35,9 +35,9 @@ "metadata": {}, "source": [ "```\n", - "conda install -c astropy astroquery\n", - "conda install -c astropy spectral-cube\n", - "conda install -c astropy reproject\n", + "conda install -c conda-forge astroquery\n", + "conda install -c conda-forge spectral-cube\n", + "conda install -c conda-forge reproject\n", "```" ] }, diff --git a/tutorials/notebooks/UVES/UVES.ipynb b/tutorials/notebooks/UVES/UVES.ipynb index c157997fd..4cf6da57f 100644 --- a/tutorials/notebooks/UVES/UVES.ipynb +++ b/tutorials/notebooks/UVES/UVES.ipynb @@ -232,14 +232,18 @@ "the current directory, then this file can be imported into a python session in\n", "order to use the function `func` with the following command:\n", "\n", - "```import spectra_utils\n", - "a = spectra_utils.func(param1, param2, ...)```\n", + "```\n", + "import spectra_utils\n", + "a = spectra_utils.func(param1, param2, ...)\n", + "```\n", "\n", "Alternatively, you can import just one (or a few) of many different functions\n", "that are defined in your file ``spectra_utils.py``:\n", "\n", - "```from spectra_utils import func\n", - "a = func(param1, param2, ...)```\n", + "```\n", + "from spectra_utils import func\n", + "a = func(param1, param2, ...)\n", + "```\n", "\n", "You'll recognize that python does not make a difference between modules that come\n", "with python (e.g. `glob`), external modules (e.g. `numpy` or `astropy`) and modules\n", @@ -1336,7 +1340,20 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.5" + "version": "3.8.3" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false } }, "nbformat": 4, diff --git a/tutorials/notebooks/astropy-coordinates/1-Coordinates-Intro.ipynb b/tutorials/notebooks/astropy-coordinates/1-Coordinates-Intro.ipynb new file mode 100644 index 000000000..e16e8457a --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/1-Coordinates-Intro.ipynb @@ -0,0 +1,634 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Astronomical Coordinates 1: Getting Started with astropy.coordinates\n", + "\n", + "## Authors\n", + "Adrian Price-Whelan\n", + "\n", + "## Learning Goals\n", + "* Create `astropy.coordinates.SkyCoord` objects using coordinate data and object names\n", + "* Use SkyCoord objects to become familiar with object oriented programming (OOP)\n", + "* Use a `SkyCoord` object to query the *Gaia* archive using `astroquery`\n", + "* Output coordinate data in different string representations\n", + "* Demonstrate working with 3D sky coordinates (including distance information for objects)\n", + "\n", + "## Keywords\n", + "coordinates, OOP, astroquery, gaia\n", + "\n", + "\n", + "## Summary\n", + "\n", + "Astronomers use a wide variety of coordinate systems and formats to represent sky coordinates of celestial objects. For example, you may have seen terms like \"right ascension\" and \"declination\" or \"galactic latitude and longitude,\" and you may have seen angular coordinate components represented as \"0h39m15.9s,\" \"00:39:15.9,\" or 9.81625º. The subpackage `astropy.coordinates` provides tools for representing the coordinates of objects and transforming them between different systems. \n", + "\n", + "In this tutorial, we will explore how the `astropy.coordinates` package can be used to work with astronomical coordinates. You may find it helpful to keep [the Astropy documentation for the coordinates package](http://docs.astropy.org/en/stable/coordinates/index.html) open alongside this tutorial for reference or additional reading. In the text below, you may also see some links that look like ([docs](http://docs.astropy.org/en/stable/coordinates/index.html)). These links will take you to parts of the documentation that are directly relevant to the cells from which they link. \n", + "\n", + "*Note: This is the 1st tutorial in a series of tutorials about astropy.coordinates.*\n", + "- [Next tutorial: Astronomical Coordinates 2: Transforming Coordinate Systems and Representations](2-Coordinates-Transforms)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Imports\n", + "\n", + "We start by importing some packages that we will need below:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "import numpy as np\n", + "\n", + "from astropy import units as u\n", + "from astropy.coordinates import SkyCoord, Distance\n", + "from astropy.io import fits\n", + "from astropy.table import QTable\n", + "from astropy.utils.data import download_file\n", + "\n", + "from astroquery.gaia import Gaia\n", + "Gaia.ROW_LIMIT = 10000 # Set the row limit for returned data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Representing On-sky Positions with `astropy.coordinates`\n", + "\n", + "In Astropy, the most common way of representing and working with sky coordinates is to use the `SkyCoord` object ([docs](https://docs.astropy.org/en/stable/coordinates/skycoord.html)). A `SkyCoord` can be created directly from angles or arrays of angles with associated units, as demonstrated below. \n", + "\n", + "To get started, let's assume that we want to create a `SkyCoord` object for the center of the open star cluster NGC 188 so that later we can query and retrieve stars that might be members of the cluster. Let's also assume, for now, that we already know the sky coordinates of the cluster to be (12.11, 85.26) degrees in the ICRS coordinate frame. The ICRS — sometimes referred to as \"equatorial\" or \"J2000\" coordinates ([more info about the ICRS](https://arxiv.org/abs/astro-ph/0602086)) — is currently the most common astronomical coordinate frame for stellar or extragalactic astronomy, and is the default coordinate frame for `SkyCoord`. Since we already know the ICRS position of NGC 188 (see above), we can create a `SkyCoord` object for the cluster by passing the data in to the `SkyCoord` initializer:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center = SkyCoord(12.11*u.deg, 85.26*u.deg)\n", + "ngc188_center" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Even though the default frame is ICRS, it is generally recommended to explicitly specify the frame your coordinates are in. In this case, this would be an equivalent way of creating our `SkyCoord` object for NGC 188:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center = SkyCoord(12.11*u.deg, 85.26*u.deg, frame='icrs')\n", + "ngc188_center" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we will see later on in this series, there are many other supported coordinate frames, so it helps to get into the habit of passing in the name of a coordinate frame.\n", + "\n", + "In the above initializations, we passed in `astropy.units.Quantity` objects with angular units to specify the angular components of our sky coordinates. The `SkyCoord` initializer will also accept string-formatted coordinates either as separate strings for Right Ascension (RA) and Declination (Dec) or a single string. For example, if we have sexagesimal sky coordinate data: In this case, the representation of the data includes specifications of the units (the \"hms\" for \"hour minute second\", and the \"dms\" for \"degrees minute second\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "SkyCoord('00h48m26.4s', '85d15m36s', frame='icrs')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Some string representations do not explicitly define units, so it is sometimes necessary to specify the units of the string coordinate data explicitly if they are not implicitly included:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "SkyCoord('00:48:26.4 85:15:36', unit=(u.hour, u.deg), \n", + " frame='icrs')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For more information and examples on initializing `SkyCoord` objects, [see this documentation](http://docs.astropy.org/en/latest/coordinates/skycoord.html)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For the `SkyCoord` initializations demonstrated above, we assumed that we already had the coordinate component values ready. If you do not know the coordinate values and the object you are interested in is in [SESAME](http://cdsweb.u-strasbg.fr/cgi-bin/Sesame), you can also automatically look up and load coordinate values from the name of the object using the `SkyCoord.from_name()` class method1 ([docs](http://docs.astropy.org/en/latest/coordinates/index.html#convenience-methods)). Note, however, that this requires an internet connection. It is safe to skip this cell if you are not connected to the internet because we already defined the object `ngc188_center` in the cells above.\n", + "\n", + " 1If you do not know what a class method is, think of it like an alternative constructor for a `SkyCoord` object — calling `SkyCoord.from_name()` with a name gives you a new `SkyCoord` object. For more detailed background on what class methods are and when they're useful, see [this page](https://julien.danjou.info/blog/2013/guide-python-static-class-abstract-methods)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center = SkyCoord.from_name('NGC 188')\n", + "ngc188_center" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `SkyCoord` object that we defined now has various ways of accessing the coordinate information contained within it. All `SkyCoord` objects have attributes that allow you to retrieve the coordinate component data, but the component names will change depending on the coordinate frame of the `SkyCoord` you have. In our examples we have created a `SkyCoord` in the ICRS frame, so the component names are lower-case abbreviations of Right Ascension, `.ra`, and Declination, `.dec`:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center.ra, ngc188_center.dec" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `SkyCoord` component attributes (here ``ra`` and ``dec``) return specialized `Quantity`-like objects that make working with angular data easier. While `Quantity` ([docs](http://docs.astropy.org/en/stable/units/index.html)) is a general class that represents numerical values and physical units of any kind, `astropy.coordinates` defines subclasses of `Quantity` that are specifically designed for working with angles, such as the `Angle` ([docs](http://docs.astropy.org/en/stable/api/astropy.coordinates.Angle.html)) class. The `Angle` class then has additional, more specialized subclasses `Latitude` ([docs](http://docs.astropy.org/en/stable/api/astropy.coordinates.Latitude.html)) and `Longitude` ([docs](http://docs.astropy.org/en/stable/api/astropy.coordinates.Longitude.html)). These objects store angles, provide useful attributes to quickly convert to common angular units, and enable formatting the numerical values in various formats. For example, in a Jupyter notebook, these objects know how to represent themselves using LaTeX:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center.ra" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center.dec" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "type(ngc188_center.ra), type(ngc188_center.dec)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "With these objects, we can retrieve the coordinate components in different units using the `Quantity.to()` method:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "(ngc188_center.ra.to(u.hourangle), \n", + " ngc188_center.ra.to(u.radian),\n", + " ngc188_center.ra.to(u.degree))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Or using the shorthand attributes, which return only the component values:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "(ngc188_center.ra.hour, \n", + " ngc188_center.ra.radian, \n", + " ngc188_center.ra.degree)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can also format the values into strings with specified units ([docs](http://docs.astropy.org/en/latest/coordinates/formatting.html)), for example:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center.ra.to_string(unit=u.hourangle, sep=':', pad=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Querying the *Gaia* Archive to Retrieve Coordinates of Stars in NGC 188" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now that we have a `SkyCoord` object for the center of NGC 188, we can use this object with the `astroquery` package to query many different astronomical databases (see a full list of [available services in the astroquery documentation](https://astroquery.readthedocs.io/en/latest/#available-services)). Here, we will use the `SkyCoord` object `ngc188_center` to select sources from the *Gaia* Data Release 2 catalog around the position of the center of NGC 188 to look for stars that might be members of the star cluster. To do this, we will use the `astroquery.gaia` subpackage ([docs](https://astroquery.readthedocs.io/en/latest/gaia/gaia.html)).\n", + "\n", + "This requires an internet connection, but if it fails, the catalog file is included in the repository so you can load it locally (skip the next cell if you do not have an internet connection):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "job = Gaia.cone_search_async(ngc188_center, radius=0.5*u.deg)\n", + "ngc188_table = job.get_results()\n", + "\n", + "# only keep stars brighter than G=19 magnitude\n", + "ngc188_table = ngc188_table[ngc188_table['phot_g_mean_mag'] < 19*u.mag]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "cols = ['source_id',\n", + " 'ra',\n", + " 'dec',\n", + " 'parallax',\n", + " 'parallax_error',\n", + " 'pmra',\n", + " 'pmdec',\n", + " 'radial_velocity',\n", + " 'phot_g_mean_mag',\n", + " 'phot_bp_mean_mag',\n", + " 'phot_rp_mean_mag']\n", + "ngc188_table[cols].write('gaia_results.fits', overwrite=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The above cell may not work if you do not have an internet connection, so we have included the results table along with the notebook:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_table = QTable.read('gaia_results.fits')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "len(ngc188_table)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The returned `astropy.table` `Table` object now contains about 5000 stars from *Gaia* DR2 around the coordinate position of the center of NGC 188. Let's now construct a `SkyCoord` object with the results table. In the *Gaia* data archive, the ICRS coordinates of a source are given as column names `\"ra\"` and `\"dec\"`:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_table['ra']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_table['dec']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note that, because the *Gaia* archive provides data tables with associated units, and we read this table using the `QTable` object ([docs](http://docs.astropy.org/en/latest/table/mixin_columns.html#quantity-and-qtable)), the above table columns are represented as `Quantity` objects with units of degrees. Note also that these columns contain many (>5000!) coordinate values. We can pass these directly in to `SkyCoord` to get a single `SkyCoord` object to represent all of these coordinates:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_gaia_coords = SkyCoord(ngc188_table['ra'], ngc188_table['dec'])\n", + "ngc188_gaia_coords" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exercises" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create a `SkyCoord` for the center of the open cluster the Pleiades (either by looking up the coordinates and passing them in, or by using the convenience method we learned about above):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center = SkyCoord.from_name('NGC 188')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Using only a single method/function call on the `SkyCoord` object representing the center of NGC 188, print a string with the RA/Dec in the form 'HH:MM:SS.S DD:MM:SS.S'. Check your answer against [SIMBAD](http://simbad.u-strasbg.fr/simbad/), which will show you sexagesimal coordinates for the object.\n", + "\n", + "(Hint: `SkyCoord.to_string()` might be useful)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center.to_string(style=\"hmsdms\", sep=\":\", precision=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Using a single method/function call on the `SkyCoord` object containing the results of our *Gaia* query, compute the angular separation between each resulting star and the coordinates of the cluster center for NGC 188.\n", + "\n", + "(Hint: `SkyCoord.separation()` might be useful)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_gaia_coords.separation(ngc188_center)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## More Than Just Sky Positions: Including Distance Information in `SkyCoord`\n", + "\n", + "So far, we have used `SkyCoord` to represent angular sky positions (i.e., `ra` and `dec` only). It is sometimes useful to include distance information with the sky coordinates of a source, thereby specifying the full 3D position of an object. To pass in distance information, `SkyCoord` accepts the keyword argument \"`distance`\". So, if we knew that the distance to NGC 188 is 1.96 kpc, we could also pass in a distance (as a `Quantity` object) using this argument:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_center_3d = SkyCoord(12.11*u.deg, 85.26*u.deg,\n", + " distance=1.96*u.kpc)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "With the table of *Gaia* data we retrieved above for stars around NGC 188, `ngc188_table`, we also have parallax measurements for each star. For a precisely-measured parallax $\\varpi$, the distance $d$ to a star can be obtained approximately as $d \\approx 1/\\varpi$. This only really works if the parallax error is small relative to the parallax ([see discussion in this paper](https://arxiv.org/abs/1507.02105)), so if we want to use these parallaxes to get distances we first have to filter out stars that have low signal-to-noise parallaxes:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "parallax_snr = ngc188_table['parallax'] / ngc188_table['parallax_error']\n", + "ngc188_table_3d = ngc188_table[parallax_snr > 10] \n", + "len(ngc188_table_3d)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The above selection on `parallax_snr` keeps stars that have a ~10-sigma parallax measurement, but this is an arbitrary selection threshold that you may want to tune or remove in your own use cases. This selection removed over half of the stars in our original table, but for the remaining stars we can be confident that converting the parallax measurements to distances is mostly safe.\n", + "\n", + "The default way of passing in a distance to a `SkyCoord` object, as above, is to pass in a `Quantity` with a unit of length. However, `astropy.coordinates` also provides a specialized object, `Distance`, for handling common transformations of different distance representations ([docs](http://docs.astropy.org/en/latest/coordinates/index.html#distance)). Among other things, this class supports passing in a parallax value:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Distance(parallax=1*u.mas)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The catalog of stars we queried from *Gaia* contains parallax information in milliarcsecond units, so we can create a `Distance` object directly from these values:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "gaia_dist = Distance(parallax=ngc188_table_3d['parallax'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can then create a `SkyCoord` object to represent the 3D positions of all of the *Gaia* stars by passing in this distance object to the `SkyCoord` initializer:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_coords_3d = SkyCoord(ra=ngc188_table_3d['ra'], \n", + " dec=ngc188_table_3d['dec'],\n", + " distance=gaia_dist)\n", + "ngc188_coords_3d" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's now use `matplotlib` to plot the sky positions of all of these sources, colored by distance to emphasize the cluster stars:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "fig, ax = plt.subplots(figsize=(6.5, 5.2),\n", + " constrained_layout=True)\n", + "cs = ax.scatter(ngc188_coords_3d.ra.degree, \n", + " ngc188_coords_3d.dec.degree, \n", + " c=ngc188_coords_3d.distance.kpc, \n", + " s=5, vmin=1.5, vmax=2.5, cmap='twilight')\n", + "cb = fig.colorbar(cs)\n", + "cb.set_label(f'distance [{u.kpc:latex_inline}]')\n", + "\n", + "ax.set_xlabel('RA [deg]')\n", + "ax.set_ylabel('Dec [deg]')\n", + "\n", + "ax.set_title('Gaia DR2 sources near NGC 188', fontsize=18)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now that we have 3D position information for both the cluster center, and for the stars we queried from *Gaia*, we can compute the 3D separation (distance) between all of the *Gaia* sources and the cluster center:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "sep3d = ngc188_coords_3d.separation_3d(ngc188_center_3d)\n", + "sep3d" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exercises\n", + "\n", + "Using the 3D separation values, define a boolean mask to select candidate members of the cluster. Select all stars within 50 pc of the cluster center. How many candidate members of NGC 188 do we have, based on their 3D positions?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ngc188_3d_mask = sep3d < 50*u.pc\n", + "ngc188_3d_mask.sum()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this tutorial, we have introduced `astropy.coordinates` as a way to store and represent astronomical sky coordinates. We used coordinate objects, via the `SkyCoord` class interface, to parse and change coordinate representations and units. We also demonstrated how to use a `SkyCoord` object with the `astroquery` package to query an astronomical database, the *Gaia* science archive. We then created a single `SkyCoord` object with the queried data that represents the sky coordinates of many objects. Finally, we introduced the concept of using `astropy.coordinates` to represent a 3D position of an object or set of objects." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.3" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/tutorials/notebooks/astropy-coordinates/2-Coordinates-Transforms.ipynb b/tutorials/notebooks/astropy-coordinates/2-Coordinates-Transforms.ipynb new file mode 100644 index 000000000..e5fd4fca0 --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/2-Coordinates-Transforms.ipynb @@ -0,0 +1,755 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Astronomical Coordinates 2: Transforming Coordinate Systems and Representations\n", + "\n", + "## Authors\n", + "Adrian Price-Whelan\n", + "\n", + "## Learning Goals\n", + "* Introduce key concepts in `astropy.coordinates`: coordinate component formats, representations, and frames\n", + "* Demonstrate how to work with coordinate representations, for example, to change from Cartesian to Cylindrical coordinates\n", + "* Introduce coordinate frame transformations and demonstrate transforming from ICRS coordinates to Galactic and Altitude-Azimuth coordinates\n", + "\n", + "## Keywords\n", + "coordinates, OOP\n", + "\n", + "\n", + "## Summary\n", + "\n", + "In the previous tutorial in this series, we showed how astronomical coordinates in the ICRS or equatorial coordinate system can be represented in Python using the `SkyCoord` object ([docs](https://docs.astropy.org/en/stable/coordinates/skycoord.html)). There are many other coordinate systems that are commonly used in astronomical research. For example, the Galactic coordinate system is often used in radio astronomy and Galactic science, the \"horizontal\" or altitude-azimuth frame is often used for observatory-specific observation planning, and Ecliptic coordinates are often used for solar system science or space mission footprints. All of these coordinate frames (and others!) are supported by `astropy.coordinates`. As we will see below, the `SkyCoord` object is designed to make transforming between these systems a straightforward task.\n", + "\n", + "In this tutorial, we will explore how the `astropy.coordinates` package can be used to transform astronomical coordinates between different coordinate systems or frames. You may find it helpful to keep [the Astropy documentation for the coordinates package](http://docs.astropy.org/en/stable/coordinates/index.html) open alongside this tutorial for reference or additional reading. In the text below, you may also see some links that look like ([docs](http://docs.astropy.org/en/stable/coordinates/index.html)). These links will take you to parts of the documentation that are directly relevant to the cells from which they link. \n", + "\n", + "*Note: This is the 2nd tutorial in a series of tutorials about astropy.coordinates. If you are new to astropy.coordinates, you may want to start from the beginning or an earlier tutorial.*\n", + "- [Previous tutorial: Astronomical Coordinates 1 - Getting Started](1-Coordinates-Intro)\n", + "- [Next tutorial: Astronomical Coordinates 3 - Working with Velocity Data](3-Coordinates-Velocities)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Imports\n", + "\n", + "We start by importing some general packages that we will need below:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import matplotlib as mpl\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "import numpy as np\n", + "\n", + "from astropy import units as u\n", + "from astropy.coordinates import (SkyCoord, Distance, Galactic, \n", + " EarthLocation, AltAz)\n", + "import astropy.coordinates as coord\n", + "from astropy.io import fits\n", + "from astropy.table import QTable\n", + "from astropy.time import Time\n", + "from astropy.utils.data import download_file" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Key `astropy.coordinates` Concepts: Component Formats, Representations, and Frames\n", + "\n", + "Usage of the term \"coordinates\" is overloaded in astronomy and is often used interchangeably when referring to data formats (e.g., sexagesimal vs. decimal), representations (e.g., Cartesian vs. spherical), and frames (e.g., equatorial vs. galactic). In `astropy.coordinates`, we have tried to formalize these three concepts and have made them a core part of the way we interact with objects in this subpackage ([docs](https://docs.astropy.org/en/stable/coordinates/index.html#overview-of-astropy-coordinates-concepts)). Here we will give an overview of these different concepts as we build up to demonstrating how to transform between different astronomical reference frames or systems.\n", + "\n", + "\n", + "## Coordinate Component Formats\n", + "\n", + "In our previous tutorial, we showed that it is possible to pass in coordinate component data to the `SkyCoord` initializer as strings or as `Quantity` objects in a variety of formats and units. We also saw that the coordinate components of `SkyCoord` objects can be re-formatted. For example, we can change the coordinate *format* by changing the component units, or converting the data to a string:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c = SkyCoord(ra=15.9932*u.deg, dec=-10.52351344*u.deg)\n", + "print(c.ra.hourangle)\n", + "print(c.to_string('hmsdms'))\n", + "print(c.dec.to_string(sep=':', precision=5))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "See the previous tutorial [Astronomical Coordinates 1 - Getting Started](1-Coordinates-Intro) for more examples of this.\n", + "\n", + "## Coordinate Representations\n", + "\n", + "In the previous tutorial, we only worked with coordinate data in spherical representations (longitude/latitude), but `astropy.coordinates` also supports other coordinate representations like Cartesian, cylindrical, etc. ([docs](https://docs.astropy.org/en/stable/coordinates/skycoord.html#astropy-skycoord-representations)). To retrieve the coordinate data in a different representation, we can use the `SkyCoord.represent_as()` method. This method either takes a string name of the desired representation, for example:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c.represent_as('cartesian')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "or it accepts an `astropy.coordinates` `Representation` class, such as:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c.represent_as(coord.CartesianRepresentation)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A list of all supported representations is given in the documentation ([docs](https://docs.astropy.org/en/stable/coordinates/representations.html#astropy-coordinates-representations)), or can be identified as class names that end in `Representaton`:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print([x for x in dir(coord) \n", + " if x.endswith('Representation') and not x.startswith('Base')])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the `SkyCoord` object that we defined above, we only specified sky positions (i.e., no distance data), so the units of the Cartesian components that are returned above are dimensionless and are interpreted as being on the surface of the (dimensionless) unit sphere. If we instead pass in a distance to `SkyCoord` using the `distance` keyword argument, we instead get a `CartesianRepresentation` object for the 3D position with positional units. For example:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c2 = SkyCoord(ra=15.9932 * u.deg, \n", + " dec=-10.52351344 * u.deg,\n", + " distance=127.4 * u.pc)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c2.represent_as('cartesian')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Or, we could represent this data with cylindrical components:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c2.represent_as('cylindrical')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To summarize, using `SkyCoord.represent_as()` is a convenient way to retrieve your coordinate data in a different representation, like Cartesian or Cylindrical. You can also change (in place) the representation of a `SkyCoord` object by setting the `SkyCoord.representation_type` attribute. For example, if we create a `SkyCoord` again with a distance, the default representation type is spherical:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c3 = SkyCoord(ra=15.9932 * u.deg, \n", + " dec=-10.52351344 * u.deg,\n", + " distance=127.4 * u.pc)\n", + "print(c3.representation_type)\n", + "c3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can, however, change the internal representation of the data by setting the `representation_type` attribute to a new `Representation` class:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c3.representation_type = coord.CylindricalRepresentation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This then changes the way `SkyCoord` will display the components:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note, however, that changing the representation will also change the components that are available on a given `SkyCoord` object: Once we set the `representation_type` to cylindrical, the attributes `.ra` and `.dec` will no longer work, and we instead have to use the cylindrical component names to access the data. In this case, these are `.rho` for radius, `.phi` for azimuth, `.z` for $z$ position:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "c3.rho, c3.phi, c3.z" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Transforming Between Coordinate Frames\n", + "\n", + "The third key concept to keep in mind when thinking about astronomical coordinate data is the reference frame or coordinate system that the data are in. In the previous tutorial, and so far here, we have worked with the default frame assumed by `SkyCoord`: the International Celestial Reference System (ICRS; [some important definitions and context about the ICRS is given here](https://arxiv.org/abs/astro-ph/0602086)). The ICRS is the fundamental coordinate system used in most modern astronomical contexts and is generally what people mean when they refer to \"equatorial\" or \"J2000\" or \"RA/Dec\" coordinates (but there are some important caveats if you are working with older data). As noted above, however, there are many other coordinate systems used in different astronomical, solar, or solar system contexts. \n", + "\n", + "Some other common coordinate systems are defined as a rotation away from the ICRS that is defined to make science applications easier to interpret. One example here is the Galactic coordinate system, which is rotated with respect to the ICRS to approximately align the Galactic plane with latitude=0. As an example of the `astropy.coordinates` frame transformation machinery, we will load in a subset of a catalog of positions and distances to a set of open clusters in the Milky Way from Cantat-Gaudin et al. 2018 ([Table 1 in this catalog](http://vizier.u-strasbg.fr/viz-bin/VizieR-3?-source=J/A%2bA/618/A93/table1)). We have pre-selected the 474 clusters within 2 kpc of the sun and provide the catalog as a data file next to this notebook. This catalog provides sky position (columns `RAJ2000` and `DEJ2000` in the original catalog) and distance estimates (column `dmode` in the original catalog), which we have renamed in the table we provide to column names `'ra'`, `'dec'`, and `'distance'`. We will start by loading the catalog as a `QTable` using `astropy.table` ([docs](https://docs.astropy.org/en/stable/table/)):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "tbl = QTable.read('Cantat-Gaudin-open-clusters.ecsv')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can now pass the coordinate components to `SkyCoord` to create a single array-valued `SkyCoord` object to represent the positions of all of the open clusters in this catalog. Note that below we will explicitly specify the coordinate frame using `frame='icrs'`: Even though this is the default frame, it is often better to be explicit so that it is clearer to someone reading the code what the coordinate system is:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_c = SkyCoord(\n", + " ra=tbl['ra'],\n", + " dec=tbl['dec'],\n", + " distance=tbl['distance'],\n", + " frame='icrs')\n", + "len(open_cluster_c)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To see the first few coordinate entries, we can \"slice\" the array-valued coordinate object like we would a Python list or numpy array:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_c[:4]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's now visualize the sky positions of all of these clusters, colored by their distances. To plot these in an all-sky spherical projection (e.g., aitoff) using `matplotlib`, with longitude increasing to the left as is typically done for plotting astronomical objects on the sky, we have to trick `matplotlib` a little bit: We have to pass in the *negative* angle values when plotting, then reformat the tick labels to make them positive values again. We have written a short function below to handle this trick:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def coordinates_aitoff_plot(coords):\n", + " fig, ax = plt.subplots(figsize=(10, 4), \n", + " subplot_kw=dict(projection=\"aitoff\"))\n", + " \n", + " sph = coords.spherical\n", + " cs = ax.scatter(-sph.lon.wrap_at(180*u.deg).radian,\n", + " sph.lat.radian,\n", + " c=sph.distance.value)\n", + "\n", + " def fmt_func(x, pos):\n", + " val = coord.Angle(-x*u.radian).wrap_at(360*u.deg).degree\n", + " return f'${val:.0f}' + r'^{\\circ}$'\n", + "\n", + " ticker = mpl.ticker.FuncFormatter(fmt_func)\n", + " ax.xaxis.set_major_formatter(ticker)\n", + "\n", + " ax.grid()\n", + " \n", + " cb = fig.colorbar(cs)\n", + " cb.set_label('distance [pc]')\n", + " \n", + " return fig, ax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we can plot the sky positions by passing our `SkyCoord` object in to this `coordinates_aitoff_plot()` plot helper function:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "fig, ax = coordinates_aitoff_plot(open_cluster_c)\n", + "ax.set_xlabel('RA [deg]')\n", + "ax.set_ylabel('Dec [deg]')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The majority of these open clusters are relatively close to the Galactic midplane, which is why they form a fairly narrow \"band\" on the sky in ICRS coordinates. If we transform these positions to Galactic coordinates, we would therefore expect the points to appear around the latitude $b=0$ line. \n", + "\n", + "To transform our coordinates from ICRS to Galactic (or any other coordinate system), we can use the `SkyCoord.transform_to()` method and pass in the new coordinate frame instance (in this case, `Galactic()`):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_gal = open_cluster_c.transform_to(Galactic())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "While the recommended way of transforming `SkyCoord` objects to new frames is by passing in a frame class *instance* as we demonstrated in the cell above, `SkyCoord` also supports a shorthand for transforming some frames by accessing attributes (named as the lower-case version of the new frame name):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_gal = open_cluster_c.galactic" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The transformed `SkyCoord` object now contains coordinate data in the `Galactic` coordinate frame:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_gal[:4]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Comparing this to the original `SkyCoord`, note that the names of the longitude and latitude components have changed from `ra` to `l` and from `dec` to `b`, per convention. We can therefore access the new Galactic longitude/latitude data using these new attribute names:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_gal.l[:3]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "open_cluster_gal.b[:3]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*Note: the ICRS coordinate component names (`.ra`, `.dec`) will therefore **not** work on this new, transformed `SkyCoord` instance, `open_cluster_gal`*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "With this new `SkyCoord` object (in the Galactic frame), let's re-make a sky plot to visualize the sky positions of the open clusters in Galactic coordinates:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "fig, ax = coordinates_aitoff_plot(open_cluster_gal);\n", + "ax.set_xlabel('Galactic longitude, $l$ [deg]')\n", + "ax.set_ylabel('Galactic latitude, $b$ [deg]')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we hoped and expected, in the Galactic coordinate frame, the open clusters predominantly appear at low galactic latitudes!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Transforming to More Complex Coordinate Frames: Computing the Altitude of a Target at an Observatory\n", + "\n", + "To determine whether a target is observable from a given observatory on Earth or to find out what targets are observable from a city or place on Earth at some time, we sometimes need to convert a coordinate or set of coordinates to a frame that is local to an on-earth observer. The most common choice for such a frame is \"horizontal\" or \"Altitude-Azimuth\" coordinates. In this frame, the sky coordinates of a source can be specified as an altitude from the horizon and an azimuth angle at a specified time. This coordinate frame is supported in `astropy.coordinates` through the `AltAz` coordinate frame.\n", + "\n", + "The `AltAz` frame is different from the previously-demonstrated `Galactic` frame in that it requires additional metadata to define the frame instance. Since the `Galactic` frame is close to being a 3D rotation away from the ICRS frame, and that rotation matrix is fixed, we could transform to `Galactic` by instantiating the class with no arguments (see the example above where we used `.transform_to(Galactic())`). In order to specify an instance of the `AltAz` frame, we have to (at minimum) pass in (1) a location on Earth, and (2) the time (or times) we are requesting the frame at. \n", + "\n", + "In `astropy.coordinates`, we specify locations on Earth with the `EarthLocation` class ([docs](https://docs.astropy.org/en/stable/api/astropy.coordinates.EarthLocation.html)). If we know the Earth longitude and latitude of our site, we can use these to create an instance of `EarthLocation` directly:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "demo_loc = EarthLocation.from_geodetic(\n", + " lon=-74.32834*u.deg, lat=43.05885*u.deg)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `EarthLocation` class also provides handy short-hands for retrieving an instance for a given street address (by querying the [OpenStreetMap](https://www.openstreetmap.org/) web API):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "tags": [ + "raises-exception" + ] + }, + "outputs": [], + "source": [ + "demo_loc = EarthLocation.of_address('162 Fifth Ave, New York, NY 10010')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Or for an astronomical observatory (use `EarthLocation.get_site_names()` to see a list of all available sites). For example, to retrieve an `EarthLocation` instance for the position of Kitt Peak National Observatory (in AZ, USA):" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "observing_location = EarthLocation.of_site('Kitt Peak')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will use Kitt Peak as our site.\n", + "\n", + "As an example, we will now compute the altitude of a few of the open clusters from our catalog above over the course of a night. We have an object to represent our location on Earth, so now we need to create a set of times to compute the `AltAz` frame for. `AltAz` expects time information to be passed in as an `astropy.time.Time` object ([docs](https://docs.astropy.org/en/stable/api/astropy.time.Time.html); which can contain an array of times). Let's pretend we have an observing run coming up on Dec 18, 2020, and we would like to compute the altitude/azimuth coordinates for our open clusters over that whole night." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1AM UTC = 6PM local time (AZ mountain time), roughly the start of a night\n", + "observing_date = Time('2020-12-18 1:00')\n", + "\n", + "# Compute the alt/az over a 14 hour period, starting at 6PM local time,\n", + "# with 256 equally spaced time points:\n", + "time_grid = observing_date + np.linspace(0, 14, 256) * u.hour" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we use our location, `observing_location`, and this grid of times, `time_grid`, to create an `AltAz` frame object. \n", + "\n", + "*Note: This frame accepts even more parameters about the atmosphere, which can be used to correct for atmospheric refraction. But here we leave those additional parameters set to their defaults, which ignores refraction.*" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "altaz = AltAz(location=observing_location, obstime=time_grid)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we can transform the ICRS `SkyCoord` positions of the open clusters to `AltAz` to get the location of each of the clusters in the sky over Kitt Peak over a night. Let's first do this only for the first open cluster in the catalog we loaded:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "oc_altaz = open_cluster_c[0].transform_to(altaz)\n", + "oc_altaz" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "There is a lot of information in the representation of our transformed `SkyCoord`, but note that the frame of the new object is now correctly noted as `AltAz`, as in` 0.25*u.mas]\n", + "\n", + "ngc188_center_3d = SkyCoord(12.11*u.deg, 85.26*u.deg,\n", + " distance=1.96*u.kpc,\n", + " pm_ra_cosdec=-2.3087*u.mas/u.yr,\n", + " pm_dec=-0.9565*u.mas/u.yr)\n", + "\n", + "ngc188_coords_3d = SkyCoord(\n", + " ra=ngc188_table['ra'], \n", + " dec=ngc188_table['dec'],\n", + " distance=Distance(parallax=ngc188_table['parallax']),\n", + " pm_ra_cosdec=ngc188_table['pmra'],\n", + " pm_dec=ngc188_table['pmdec'],\n", + " radial_velocity=ngc188_table['radial_velocity'],\n", + " obstime=Time('J2015.5'))\n", + "\n", + "sep3d = ngc188_coords_3d.separation_3d(ngc188_center_3d)\n", + "pm_diff = np.sqrt(\n", + " (ngc188_table['pmra'] - ngc188_center_3d.pm_ra_cosdec)**2 + \n", + " (ngc188_table['pmdec'] - ngc188_center_3d.pm_dec)**2)\n", + "\n", + "ngc188_members_mask = (sep3d < 50*u.pc) & (pm_diff < 1.5*u.mas/u.yr)\n", + "ngc188_members = ngc188_table[ngc188_members_mask]\n", + "ngc188_members_coords = ngc188_coords_3d[ngc188_members_mask]\n", + "len(ngc188_members)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From the selections above, the table `ngc188_members` and the `SkyCoord` instance `ngc188_members_coords` contain 216 sources that, based on their 3D positions and proper motions, are consistent with being members of the open cluster NGC 188." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's assume that we now want to cross-match our catalog of candidate members of NGC 188 — here, based on *Gaia* data — to some other catalog. In this tutorial, we will demonstrate how to manually cross-match these *Gaia* sources with the 2MASS photometric catalog to retrieve infrared magnitudes for these stars, and then we will plot a color–magnitude diagram. To do this, we first need to query the 2MASS catalog to retrieve all sources in a region around the center of NGC 188, as we did for *Gaia*. Here, we will also take into account the fact that the *Gaia* data release 2 reference epoch is J2015.5, whereas the 2MASS coordinates are likely reported at their time of observation (in the late 1990's). \n", + "\n", + "*Note that some data archives, like the Gaia science archive, support running cross-matches at the database level and even support epoch propagation. If you need to perform a large cross-match, it will be much more efficient to use these services!*\n", + "\n", + "We will again use `astroquery` to execute this query. This will again require an internet connection, but we have included the results of this query in a file along with this notebook in case you are not connected to the internet. To query 2MASS, we will use the `astroquery.vizier` module ([docs](https://astroquery.readthedocs.io/en/latest/vizier/vizier.html)) to run a cone search centered on the sky position of NGC 188 with a search radius of 0.5º:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# NOTE: skip this cell if you do not have an internet connection\n", + "\n", + "# II/246 is the catalog name for the main 2MASS photometric catalog\n", + "v = Vizier(catalog=\"II/246\", columns=['*', 'Date']) \n", + "v.ROW_LIMIT = -1\n", + "\n", + "result = v.query_region(ngc188_center_3d, radius=0.5*u.deg)\n", + "tmass_table = result[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Alternatively, we can read the 2MASS table provided along with this tutorial:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# the .read() below produces some warnings that we can safely ignore\n", + "with warnings.catch_warnings(): \n", + " warnings.simplefilter('ignore', UserWarning)\n", + " \n", + " tmass_table = QTable.read('2MASS_results.ecsv')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As with the *Gaia* results table, we can now create a single `SkyCoord` object to represent all of the sources returned from our query to the 2MASS catalog. Let's look at the column names in this table by displaying the first few rows:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "tmass_table[:3]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From looking at the column names, the two relevant sky coordinate columns are `RAJ2000` for `ra` and `DEJ2000` for `dec`:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "tmass_coords = SkyCoord(tmass_table['RAJ2000'], \n", + " tmass_table['DEJ2000'])\n", + "len(tmass_coords)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note also that the table contains a \"Date\" column that specifies the epoch of the coordinates. Are all of these epochs the same?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "np.unique(tmass_table['Date'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It looks like all of the sources in our 2MASS table have the same epoch, so let's create an `astropy.time.Time` object to represent this date:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "tmass_epoch = Time(np.unique(tmass_table['Date']))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We now want to cross-match our *Gaia*-selected candidate members of NGC 188, `ngc_members_coords`, with this table of photometry from 2MASS. However, as noted previously, the *Gaia* coordinates are given at a different epoch J2015.5, which is nearly ~16 years after the 2MASS epoch of the data we downloaded (1999-10-19 or roughly J1999.88). We will therefore first use the `SkyCoord.apply_space_motion()` method ([docs](http://docs.astropy.org/en/latest/api/astropy.coordinates.SkyCoord.html#astropy.coordinates.SkyCoord.apply_space_motion)) to transform the *Gaia* positions back to the 2MASS epoch before we do the cross-match:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# you can ignore the warning raised here\n", + "ngc188_members_coords_1999 = ngc188_members_coords.apply_space_motion(\n", + " tmass_epoch)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The object `ngc188_members_coords_1999` now contains the coordinate information for our *Gaia*-selected members of NGC 188, as we think they would appear if observed on 1999-10-19.\n", + "\n", + "We can now use the ``SkyCoord.match_to_catalog_sky`` method to match these two catalogs ([docs](http://docs.astropy.org/en/latest/coordinates/matchsep.html#astropy-coordinates-matching)), using the `ngc188_members_coords_1999` as our NGC 188 members coordinates. \n", + "\n", + "Note that order matters with this method: Here we will match *Gaia* to 2MASS. `SkyCoord.match_to_catalog_sky` returns three objects: (1) the indices into `tmass_coords` that get the closest matches in `ngc188_members_coords_1999`, (2) the angular separation between each `ngc188_members_coords_1999` coordinate and the closest source in `tmass_coords`, and (3) the 3D distance between each `ngc188_members_coords_1999` coordinate and the closest source in `tmass_coords`. Here, the 3D distances will not be useful because the 2MASS coordinates do not have associated distance information, so we will ignore these quantities:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "idx_gaia, sep2d_gaia, _ = ngc188_members_coords_1999.match_to_catalog_sky(\n", + " tmass_coords)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's now look at the distribution of separations (in arcseconds) for all of the cross-matched sources:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "plt.hist(sep2d_gaia.arcsec, histtype='step', \n", + " bins=np.logspace(-2, 2., 64))\n", + "plt.xlabel('separation [arcsec]')\n", + "plt.xscale('log')\n", + "plt.yscale('log')\n", + "plt.tight_layout()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From this, it looks like all of sources in our *Gaia* NGC 188 member list cross-match to another sources within a few arcseconds, so these all seem like they are correctly matches to a 2MASS source!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "(sep2d_gaia < 2*u.arcsec).sum(), len(ngc188_members)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "With our cross-match done, we can now make `Gaia`+2MASS color–magnitude diagrams of our candidate NGC 188 members using the information returned by the cross-match:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Jmag = tmass_table['Jmag'][idx_gaia] # note that we use the index array returned above\n", + "Gmag = ngc188_members['phot_g_mean_mag']\n", + "Bmag = ngc188_members['phot_bp_mean_mag']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "fig, axes = plt.subplots(1, 2, figsize=(10, 5))\n", + "\n", + "ax = axes[0]\n", + "ax.scatter(Gmag - Jmag, Gmag, \n", + " marker='o', color='k', \n", + " linewidth=0, alpha=0.5)\n", + "ax.set_xlabel('$G - J$')\n", + "ax.set_ylabel('$G$')\n", + "ax.set_xlim(0, 3)\n", + "ax.set_ylim(19, 10) # backwards because magnitudes!\n", + "\n", + "ax = axes[1]\n", + "ax.scatter(Bmag - Gmag, Jmag, \n", + " marker='o', color='k', \n", + " linewidth=0, alpha=0.5)\n", + "ax.set_xlabel('$G_{BP} - G$')\n", + "ax.set_ylabel('$J$')\n", + "ax.set_xlim(0.2, 1)\n", + "ax.set_ylim(17, 8) # backwards because magnitudes!\n", + "\n", + "fig.tight_layout()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Those both look like color-magnitude diagrams of a main sequence + red giant branch of an intermediate-age stellar cluster, so it looks like our selection and cross-matching has worked!\n", + "\n", + "For more on what matching options are available, check out the [separation and matching section of the Astropy documentation](https://astropy.readthedocs.io/en/stable/coordinates/matchsep.html). Or for more on what you can do with `SkyCoord`, see [its API documentation](http://astropy.readthedocs.org/en/stable/api/astropy.coordinates.SkyCoord.html)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.3" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/tutorials/notebooks/astropy-coordinates/Cantat-Gaudin-open-clusters.ecsv b/tutorials/notebooks/astropy-coordinates/Cantat-Gaudin-open-clusters.ecsv new file mode 100644 index 000000000..afe1cab7f --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/Cantat-Gaudin-open-clusters.ecsv @@ -0,0 +1,543 @@ +# %ECSV 0.9 +# --- +# datatype: +# - name: ID +# datatype: string +# description: Name (1) +# meta: !!omap +# - {ucd: ID_MAIN} +# - {_votable_string_dtype: char} +# - name: ra +# unit: deg +# datatype: float32 +# format: '{:7.3f}' +# description: Right ascension (ICRS) (1) +# meta: !!omap +# - {ucd: POS_EQ_RA_MAIN} +# - {width: 7} +# - {precision: '3'} +# - name: dec +# unit: deg +# datatype: float32 +# format: '{:7.3f}' +# description: Declination (ICRS) (1) +# meta: !!omap +# - {ucd: POS_EQ_DEC_MAIN} +# - {width: 7} +# - {precision: '3'} +# - name: distance +# unit: pc +# datatype: float32 +# format: '{:6.1f}' +# description: Distance if +0.1mas added to parallax (dmodePLUS01) +# meta: !!omap +# - {ucd: PHYS_DISTANCE_TRUE} +# - {width: 6} +# - {precision: '1'} +# - name: pm_ra_cosdec +# unit: mas / yr +# datatype: float32 +# format: '{:7.3f}' +# description: Mean proper motion along RA of members (pmra) +# meta: !!omap +# - {ucd: POS_EQ_PMRA} +# - {width: 7} +# - {precision: '3'} +# - name: pm_dec +# unit: mas / yr +# datatype: float32 +# format: '{:7.3f}' +# description: Mean proper motion along DE of members(pmdec) +# meta: !!omap +# - {ucd: POS_EQ_PMDEC} +# - {width: 7} +# - {precision: '3'} +# - name: radial_velocity +# unit: km / s +# datatype: float32 +# format: '{:7.2f}' +# description: Mean RV +# meta: !!omap +# - {ucd: VELOC_MEAN} +# - {width: 7} +# - {precision: '2'} +# meta: !!omap +# - {ID: J_A_A_618_A93_table1} +# - {name: J/A+A/618/A93/table1} +# - {description: Summary of mean parameters for the OCs characterised in this study} +# schema: astropy-2.0 +ID ra dec distance pm_ra_cosdec pm_dec radial_velocity +ASCC_10 51.870 34.981 629.6 -1.737 -1.368 -15.67 +ASCC_101 288.399 36.369 382.2 0.934 1.288 -20.17 +ASCC_105 295.548 27.366 522.9 1.464 -1.635 -13.81 +ASCC_108 298.306 39.349 1034.6 -0.519 -1.690 -6.33 +ASCC_11 53.056 44.856 787.2 0.926 -3.030 -14.43 +ASCC_110 300.742 33.528 1598.2 0.271 -3.132 -1.09 +ASCC_111 302.891 37.515 772.3 -1.150 -1.524 -22.81 +ASCC_113 317.933 38.638 528.7 0.800 -3.679 -4.44 +ASCC_115 329.280 51.558 694.2 -0.549 -0.543 -46.01 +ASCC_123 340.299 53.986 227.7 12.093 -1.407 -2.49 +ASCC_127 347.205 64.974 362.0 7.474 -1.745 -11.81 +ASCC_128 349.949 54.435 610.6 1.236 0.186 -14.91 +ASCC_13 78.255 44.417 973.2 -0.473 -1.743 32.37 +ASCC_16 81.198 1.655 337.0 1.355 -0.015 23.18 +ASCC_19 81.982 -1.987 345.2 1.152 -1.234 23.89 +ASCC_21 82.179 3.527 333.9 1.404 -0.632 18.70 +ASCC_23 95.047 46.710 580.5 1.098 -0.598 -13.29 +ASCC_30 104.271 -6.230 975.0 -1.595 -0.171 36.34 +ASCC_32 105.714 -26.512 736.1 -3.307 3.477 35.05 +ASCC_41 116.674 0.137 287.3 0.646 -3.990 -10.07 +ASCC_58 153.657 -55.001 456.8 -13.276 2.786 12.12 +ASCC_71 185.033 -67.509 1093.4 -9.272 -1.351 -11.43 +ASCC_73 189.281 -67.203 607.1 -11.539 -2.945 -6.34 +ASCC_79 229.731 -60.798 766.1 -2.914 -4.232 -1.40 +ASCC_85 251.853 -45.555 801.0 0.170 -4.102 16.48 +ASCC_87 255.658 -28.421 714.8 -1.180 -3.814 5.30 +ASCC_88 256.886 -35.564 815.8 0.919 -3.282 -29.53 +ASCC_90 264.777 -34.874 542.8 -1.630 -2.681 7.27 +ASCC_97 279.263 -19.139 535.2 -2.331 -6.508 -0.34 +ASCC_99 282.170 -18.488 286.0 5.188 -1.311 -29.80 +Alessi_1 13.343 49.536 658.4 6.536 -6.245 -3.73 +Alessi_10 301.233 -10.555 423.3 1.469 -7.879 -13.57 +Alessi_12 310.875 23.871 514.1 4.303 -4.639 2.43 +Alessi_13 51.762 -35.821 103.0 36.332 -4.709 21.13 +Alessi_19 274.741 12.311 543.7 -1.005 -7.073 -4.51 +Alessi_2 71.602 55.199 582.2 -0.904 -1.046 -11.00 +Alessi_20 2.593 58.742 409.8 8.195 -2.341 -5.04 +Alessi_21 107.690 -9.363 540.9 -5.475 2.602 41.85 +Alessi_24 260.764 -62.693 457.0 -0.488 -8.999 12.32 +Alessi_3 109.275 -46.142 270.6 -9.875 11.958 0.20 +Alessi_31 267.698 -11.853 622.6 -1.164 -4.122 5.36 +Alessi_37 341.961 46.342 661.1 0.351 -1.569 -10.48 +Alessi_44 295.325 1.592 615.2 0.463 -2.325 -9.80 +Alessi_5 160.819 -61.081 380.3 -15.411 2.503 12.49 +Alessi_6 220.058 -66.127 813.4 -10.472 -5.559 -14.35 +Alessi_62 284.026 21.597 581.5 0.245 -1.074 13.28 +Alessi_8 232.408 -51.227 621.8 -5.899 -5.729 -27.26 +Alessi_9 265.974 -47.028 202.0 9.916 -9.157 -6.44 +Alessi_Teutsch_11 304.127 52.051 606.6 -0.139 -1.295 -26.67 +Alessi_Teutsch_12 255.421 -58.981 568.0 -2.134 -8.952 -5.88 +Alessi_Teutsch_3 118.228 -53.022 646.9 -5.378 8.926 16.59 +Alessi_Teutsch_5 332.218 61.103 806.1 -1.895 -3.207 -21.04 +Alessi_Teutsch_8 180.649 -60.935 912.4 -6.625 1.630 -15.35 +Aveni_Hunter_1 354.175 48.205 403.7 -0.184 -2.087 -16.87 +BDSB96 106.332 -12.327 1027.3 -3.843 1.071 29.04 +BH_164 222.311 -66.465 401.1 -7.368 -10.714 -0.18 +BH_200 252.484 -44.182 1867.3 -0.025 -1.132 -4.96 +BH_202 253.779 -40.947 1471.2 -1.869 -3.802 -50.06 +BH_211 255.535 -41.113 1531.5 -0.671 -1.943 -48.83 +BH_221 259.641 -32.334 987.3 2.000 -1.568 -4.79 +BH_23 123.449 -36.329 419.2 -7.101 7.350 22.83 +BH_56 134.355 -43.181 828.2 -5.570 5.439 19.69 +BH_87 151.148 -55.386 1834.2 -6.335 2.626 -12.93 +BH_92 154.779 -56.425 1936.0 -5.896 3.446 20.29 +BH_99 159.553 -59.168 424.7 -14.494 0.919 11.96 +Barkhatova_1 313.398 46.037 1654.5 -2.440 -4.478 -5.08 +Basel_1 282.036 -5.876 1529.2 -0.079 -4.509 22.69 +Basel_11a 109.296 -13.988 1192.6 -1.581 0.929 80.49 +Basel_11b 89.547 21.965 1509.5 1.046 -4.137 3.43 +Basel_17 167.650 -59.047 1764.1 -6.628 2.174 -9.79 +Berkeley_10 54.894 66.486 1997.7 -1.470 1.047 -36.29 +Berkeley_67 69.472 50.755 1838.6 2.316 -1.374 -0.28 +Berkeley_80 283.591 -1.214 1928.0 -0.755 -2.667 43.95 +Berkeley_82 287.845 13.111 1194.3 0.178 -3.168 -2.63 +Berkeley_87 305.396 37.433 1424.5 -3.654 -6.264 -7.50 +Berkeley_9 53.167 52.649 1557.7 1.493 0.037 -17.40 +Blanco_1 0.853 -29.958 230.5 18.739 2.602 5.76 +Bochum_13 259.333 -35.529 1437.9 -0.286 -1.284 -20.76 +Collinder_107 99.203 4.972 1339.8 -1.325 0.659 11.01 +Collinder_110 99.677 2.069 1806.0 -1.091 -2.049 38.17 +Collinder_115 101.659 1.776 1655.8 -1.245 -0.567 50.95 +Collinder_132 108.485 -30.758 613.4 -4.140 3.732 24.13 +Collinder_135 109.362 -37.044 293.5 -9.975 6.157 16.03 +Collinder_140 110.882 -31.966 367.2 -8.074 4.789 19.65 +Collinder_185 125.833 -36.349 1324.6 -4.924 3.879 75.78 +Collinder_197 131.202 -41.280 859.5 -5.808 3.933 35.82 +Collinder_258 186.798 -60.767 1119.9 -7.051 -0.288 -28.00 +Collinder_269 200.992 -66.204 1435.9 -5.058 -2.492 -22.30 +Collinder_272 202.586 -61.319 1840.6 -3.441 -1.798 -4.59 +Collinder_277 207.058 -66.066 1418.0 -9.225 -4.139 -27.28 +Collinder_292 237.410 -57.594 1521.4 -2.397 -2.232 -32.04 +Collinder_338 264.483 -37.657 606.0 2.546 -1.854 -23.35 +Collinder_350 267.018 1.525 352.5 -4.965 -0.019 -14.64 +Collinder_359 270.598 3.260 522.3 0.637 -8.668 5.28 +Collinder_394 283.092 -20.229 659.4 -1.459 -5.882 13.86 +Collinder_419 304.534 40.732 925.0 -2.708 -6.382 4.64 +Collinder_463 27.031 71.738 789.8 -1.715 -0.307 -11.60 +Collinder_469 274.143 -18.309 1895.9 0.089 -1.679 17.84 +Collinder_69 83.792 9.813 386.0 1.194 -2.118 29.10 +Collinder_74 87.170 7.374 1969.4 1.011 -1.512 20.18 +Collinder_95 97.788 9.894 630.0 -2.263 -5.159 8.47 +Czernik_12 39.853 54.922 1635.9 -0.189 0.931 -17.50 +Czernik_25 93.432 6.953 1763.9 -0.222 0.252 42.79 +Czernik_37 268.320 -27.373 1868.6 0.459 -0.445 -19.21 +Czernik_38 282.451 4.965 1951.7 -1.840 -5.005 57.39 +Dias_5 274.385 -19.707 1145.6 1.798 -0.945 -26.59 +Dolidze_5 305.025 39.331 1746.6 -1.929 -5.384 -20.40 +Dolidze_53 296.588 24.613 1647.5 -1.494 -4.609 -57.94 +Dolidze_8 306.129 42.300 891.0 -2.633 -5.910 -4.07 +ESO_130_06 181.970 -59.310 736.4 -11.266 -0.866 -5.68 +ESO_166_04 137.602 -53.884 1005.0 -5.983 5.675 16.76 +ESO_226_06 246.040 -51.151 1930.2 -2.181 -3.308 -18.53 +ESO_368_11 116.086 -34.628 1791.0 -0.853 2.278 22.47 +ESO_559_13 112.176 -20.807 1891.7 -1.402 1.721 48.61 +FSR_0165 299.546 26.761 1980.0 -2.782 -5.558 11.18 +FSR_0167 301.218 27.057 1511.2 0.102 -1.830 1.77 +FSR_0198 300.614 35.681 1627.5 -3.560 -6.611 12.13 +FSR_0241 300.763 46.196 1726.9 -1.427 -3.575 -0.52 +FSR_0278 307.761 51.021 1463.8 -4.615 -9.738 -7.94 +FSR_0385 340.628 58.941 1769.1 -5.939 -3.974 -54.46 +FSR_0442 352.489 63.447 1260.8 1.287 -2.554 -27.24 +FSR_0496 6.656 64.010 1277.8 2.231 -0.621 -22.98 +FSR_0551 24.938 64.878 838.9 0.112 -1.422 -23.49 +FSR_0667 61.766 51.141 1027.3 0.901 -3.870 2.50 +FSR_0771 75.919 32.157 1339.3 1.631 -4.203 -3.37 +FSR_0850 86.257 24.740 1761.9 1.301 -2.555 19.24 +FSR_0866 103.823 29.745 1062.6 1.405 -0.443 65.47 +FSR_0893 93.454 21.608 1906.0 -0.355 -3.215 39.17 +FSR_0904 91.774 19.021 1738.3 -0.448 -1.107 14.08 +FSR_0923 92.644 16.971 1396.6 0.657 0.141 43.83 +FSR_0935 98.778 17.740 1977.4 -0.074 -1.056 31.06 +FSR_0951 95.573 14.650 1465.6 0.242 0.070 45.53 +FSR_0977 97.974 11.865 1718.2 0.721 -1.533 23.72 +FSR_1032 99.072 4.011 1708.9 -1.372 -3.174 51.96 +FSR_1051 103.046 3.662 1892.1 -0.761 -2.639 37.17 +FSR_1063 98.654 -0.265 1914.3 0.057 -1.541 59.76 +FSR_1085 103.290 -0.192 1379.0 -1.050 0.262 41.66 +FSR_1163 104.810 -9.078 1903.5 0.192 1.215 10.21 +FSR_1284 109.992 -24.535 1920.4 -0.983 1.357 42.20 +FSR_1378 120.304 -40.676 1395.0 -5.659 11.934 26.03 +FSR_1435 134.218 -43.757 1769.3 -3.900 2.732 29.17 +Ferrero_1 275.063 -32.338 785.1 0.149 -4.809 15.51 +Ferrero_11 93.646 0.637 730.5 -3.013 -4.339 24.80 +Gulliver_10 123.090 -38.676 561.5 -4.443 4.965 32.64 +Gulliver_13 104.858 -13.254 1334.9 -2.941 0.281 56.53 +Gulliver_14 259.928 -36.785 1143.8 -3.719 -4.792 -13.36 +Gulliver_18 302.905 26.532 1348.4 -3.198 -5.646 -3.62 +Gulliver_20 273.736 11.082 403.9 1.039 -6.525 -13.92 +Gulliver_21 106.961 -25.462 612.3 -1.929 4.205 39.86 +Gulliver_24 1.161 62.835 1308.1 -3.241 -1.570 -31.86 +Gulliver_28 293.559 18.059 584.9 -4.485 -3.400 0.97 +Gulliver_29 256.745 -35.205 967.3 1.325 -2.206 3.46 +Gulliver_30 313.673 45.996 1797.7 -2.524 -3.697 -10.20 +Gulliver_31 301.912 38.232 1905.6 -1.500 -3.113 -11.45 +Gulliver_32 98.383 7.478 1416.2 -0.879 2.304 40.24 +Gulliver_35 150.379 -58.198 1871.4 -6.973 3.967 86.46 +Gulliver_36 123.185 -35.111 1171.3 -0.236 0.609 10.22 +Gulliver_37 292.077 25.347 1297.6 -0.775 -3.740 2.52 +Gulliver_38 300.808 34.435 1889.9 -0.921 -2.594 10.62 +Gulliver_44 127.249 -38.095 1093.9 -0.666 2.301 15.45 +Gulliver_48 316.334 50.733 842.3 -4.781 -6.671 -26.67 +Gulliver_51 30.335 63.801 1288.9 -4.892 -0.149 -57.36 +Gulliver_52 161.669 -59.508 1903.3 -4.755 1.470 -11.33 +Gulliver_54 81.297 33.688 1086.5 -0.595 -7.299 16.77 +Gulliver_57 141.203 -48.075 1205.3 -6.737 4.085 19.87 +Gulliver_58 191.515 -61.965 1898.9 -3.592 -0.353 -1.82 +Gulliver_6 83.278 -1.652 400.6 -0.007 -0.207 28.35 +Gulliver_9 126.998 -47.929 473.0 -5.992 6.915 23.30 +Haffner_13 115.209 -30.073 534.4 -6.184 5.879 34.22 +Haffner_3 106.027 -6.133 1966.8 -1.179 -0.906 54.30 +Haffner_5 109.493 -22.660 1428.9 0.965 -4.060 -6.93 +Harvard_10 244.859 -54.957 646.6 -1.919 -10.577 -17.22 +Harvard_13 255.999 -48.090 1068.0 -2.766 -7.190 -4.22 +Harvard_16 262.781 -36.813 1329.6 -0.636 -0.778 5.46 +Hogg_17 218.459 -61.326 1865.8 -5.201 -2.433 -43.76 +IC_1396 324.745 57.514 837.2 -2.355 -4.495 -19.04 +IC_1805 38.210 61.471 1729.1 -0.702 -0.669 -42.39 +IC_1848 42.855 60.419 1837.2 -0.372 -0.315 -53.36 +IC_2391 130.292 -52.991 149.0 -24.644 23.316 15.29 +IC_2395 130.531 -48.090 663.3 -4.464 3.293 17.66 +IC_2488 141.857 -57.004 1180.8 -7.761 5.698 -1.42 +IC_2602 160.613 -64.426 149.5 -17.582 10.700 17.44 +IC_2714 169.373 -62.719 1180.1 -7.597 2.639 -12.93 +IC_348 56.132 32.159 311.7 4.483 -6.447 19.71 +IC_4651 261.212 -49.917 843.6 -2.410 -5.064 -30.33 +IC_4665 266.554 5.615 333.7 -0.909 -8.520 -14.40 +IC_4725 277.937 -19.114 608.8 -1.688 -6.117 3.09 +IC_4756 279.649 5.435 450.1 1.260 -4.927 -24.74 +IC_4996 304.135 37.649 1622.5 -2.681 -5.348 -29.11 +IC_5146 328.372 47.246 745.1 -2.910 -2.490 -2.12 +Kharchenko_1 92.197 24.281 1823.1 0.767 -2.286 41.41 +King_1 5.505 64.383 1543.5 -4.947 -1.273 -53.20 +King_26 292.237 14.882 1841.6 -2.344 -4.935 25.01 +King_4 39.028 59.024 1972.3 -0.575 -0.084 -44.33 +King_6 51.982 56.444 678.0 3.864 -1.814 -21.88 +Koposov_12 90.245 35.287 1903.7 0.699 -1.732 20.31 +Koposov_36 84.218 31.210 1493.0 0.804 -3.668 52.26 +LDN_988e 316.027 50.245 579.8 1.181 -3.560 -27.98 +Loden_1194 212.006 -59.786 686.1 -7.762 -4.667 -24.79 +Loden_46 155.884 -54.667 996.1 -11.367 4.645 24.32 +Lynga_1 209.994 -62.152 1814.2 -5.303 -2.274 -32.03 +Lynga_2 216.085 -61.328 859.5 -6.716 -4.696 -12.35 +Lynga_6 241.218 -51.960 1952.7 -1.866 -2.757 -46.60 +Mamajek_1 130.637 -78.963 104.0 -29.834 26.990 16.69 +Mamajek_4 276.635 -50.772 425.0 4.646 -21.051 -26.32 +Melotte_101 160.535 -65.110 1759.3 -6.307 3.483 9.53 +Melotte_105 169.920 -63.486 1864.5 -6.771 2.133 1.49 +Melotte_20 51.617 48.975 172.5 22.864 -25.378 -0.10 +Melotte_22 56.601 24.114 133.8 20.077 -45.503 5.92 +Melotte_71 114.383 -12.065 1776.6 -2.446 4.210 51.26 +Muzzio_1 134.478 -47.761 1543.2 -5.261 4.224 135.64 +NGC_1027 40.677 61.616 989.2 -1.753 2.090 -4.06 +NGC_1039 40.531 42.722 481.2 0.722 -5.681 -7.16 +NGC_129 7.607 60.213 1562.8 -2.605 -1.096 -37.89 +NGC_1333 52.297 31.310 287.8 7.425 -9.865 1.92 +NGC_1342 52.894 37.380 613.2 0.520 -1.604 -9.95 +NGC_1444 57.361 52.658 1040.3 -0.746 -1.829 -36.90 +NGC_1496 61.111 52.668 1349.0 1.511 -0.756 -27.23 +NGC_1502 61.954 62.332 957.1 -0.571 -0.848 -14.76 +NGC_1513 62.470 49.504 1282.1 1.324 -3.679 -14.73 +NGC_1528 63.878 51.218 928.8 2.181 -2.246 -9.62 +NGC_1545 65.202 50.221 668.6 -1.957 -0.082 -11.36 +NGC_1582 67.985 43.718 890.7 2.216 -1.347 18.00 +NGC_1647 71.481 19.079 554.2 -1.057 -1.502 -6.69 +NGC_1662 72.198 10.882 395.5 -1.128 -1.962 -13.31 +NGC_1664 72.763 43.676 1158.4 1.703 -5.738 6.38 +NGC_1708 75.871 52.851 863.3 0.276 -1.360 7.20 +NGC_1750 75.926 23.695 671.2 -0.960 -2.366 -10.38 +NGC_1778 77.033 37.020 1408.9 0.506 -3.145 -26.24 +NGC_1817 78.139 16.696 1469.8 0.485 -0.890 66.07 +NGC_188 11.798 85.244 1571.4 -2.307 -0.960 -41.70 +NGC_189 9.885 61.090 1110.0 0.338 -3.306 -28.71 +NGC_1901 79.561 -68.294 402.1 1.537 12.670 0.85 +NGC_1907 82.033 35.330 1351.9 -0.040 -3.418 2.78 +NGC_1912 82.167 35.824 997.0 1.580 -4.424 -1.49 +NGC_1960 84.084 34.135 1036.9 -0.155 -3.388 7.03 +NGC_2099 88.074 32.545 1257.3 1.924 -5.648 8.03 +NGC_2112 88.452 0.403 993.9 -2.713 4.270 30.86 +NGC_2168 92.272 24.336 793.9 2.308 -2.905 -7.90 +NGC_2183 92.717 -6.213 746.2 -3.605 0.447 27.11 +NGC_2184 91.690 -2.000 544.0 -0.648 -0.288 42.03 +NGC_2186 93.031 5.453 1844.1 0.415 -1.993 21.98 +NGC_2215 95.199 -7.277 869.6 0.436 -3.673 -2.48 +NGC_2232 96.888 -4.749 312.8 -4.745 -1.840 25.35 +NGC_2244 98.045 4.914 1341.1 -1.598 0.179 75.18 +NGC_225 10.805 61.774 640.5 -5.373 -0.093 -4.12 +NGC_2251 98.680 8.337 1270.0 0.697 -3.806 26.10 +NGC_2264 100.217 9.877 674.2 -1.690 -3.727 20.22 +NGC_2281 102.091 41.060 493.7 -2.946 -8.321 19.58 +NGC_2286 101.916 -3.167 1867.3 0.188 -1.468 35.63 +NGC_2287 101.499 -20.716 671.7 -4.339 -1.381 23.52 +NGC_2301 102.943 0.465 791.5 -1.367 -2.179 26.53 +NGC_2302 102.977 -7.086 1076.4 -1.453 -0.228 38.54 +NGC_2309 104.020 -7.180 1916.8 -0.495 -0.634 55.64 +NGC_2318 104.854 -13.822 1183.9 -1.781 -2.198 8.66 +NGC_2323 105.684 -8.365 887.9 -0.688 -0.611 6.79 +NGC_2343 107.029 -10.619 973.3 0.193 -0.195 15.73 +NGC_2354 108.503 -25.724 1133.6 -2.885 1.832 34.38 +NGC_2355 109.247 13.772 1597.8 -3.802 -1.086 36.85 +NGC_2358 109.261 -17.143 839.9 -1.351 0.542 27.57 +NGC_2360 109.443 -15.631 970.1 0.383 5.603 28.30 +NGC_2362 109.671 -24.954 1147.7 -2.791 2.953 28.86 +NGC_2374 111.016 -13.235 1124.6 -4.665 0.659 53.72 +NGC_2422 114.147 -14.489 454.7 -7.057 0.993 36.18 +NGC_2423 114.299 -13.863 851.4 -0.735 -3.632 19.90 +NGC_2428 114.831 -16.550 1197.0 -3.316 2.461 52.88 +NGC_2432 115.223 -19.078 1608.2 -0.684 1.614 51.63 +NGC_2437 115.445 -14.844 1365.7 -3.838 0.365 49.04 +NGC_2447 116.141 -23.853 911.4 -3.551 5.068 21.99 +NGC_2448 116.034 -24.837 993.1 -3.432 2.941 36.98 +NGC_2451A 115.736 -38.264 188.9 -21.116 15.328 23.59 +NGC_2451B 116.128 -37.954 351.2 -9.671 4.702 16.78 +NGC_2477 118.046 -38.537 1259.5 -2.449 0.870 7.90 +NGC_2482 118.787 -24.263 1177.4 -4.722 2.189 39.13 +NGC_2489 119.064 -30.060 1682.4 -2.529 2.102 38.77 +NGC_2516 119.527 -60.800 392.8 -4.748 11.221 23.82 +NGC_2527 121.246 -28.122 600.7 -5.549 7.275 40.07 +NGC_2539 122.658 -12.834 1132.7 -2.331 -0.584 29.18 +NGC_2546 123.082 -37.661 859.7 -3.757 3.862 16.20 +NGC_2547 122.525 -49.198 372.8 -8.609 4.262 14.07 +NGC_2548 123.412 -5.726 705.3 -1.313 1.029 8.85 +NGC_2567 124.645 -30.631 1489.7 -2.955 2.580 36.79 +NGC_2627 129.309 -29.952 1537.3 -2.381 2.879 28.68 +NGC_2632 130.054 19.621 182.2 -36.090 -12.919 34.72 +NGC_2659 130.634 -44.999 1721.5 -5.336 5.028 16.55 +NGC_2669 131.611 -52.931 1027.0 -4.136 4.649 21.83 +NGC_2670 131.386 -48.801 1288.8 -5.379 3.621 5.15 +NGC_2671 131.557 -41.886 1225.4 -1.569 0.940 6.35 +NGC_2682 132.846 11.814 791.2 -10.986 -2.964 33.80 +NGC_2925 143.321 -53.413 702.5 -8.533 5.336 1.44 +NGC_2972 145.058 -50.326 1633.3 -5.085 2.489 21.13 +NGC_3033 147.145 -56.415 1511.8 -7.554 4.254 27.56 +NGC_3114 150.553 -60.041 923.3 -7.376 3.779 -1.22 +NGC_3228 155.378 -51.814 461.9 -14.867 -0.696 13.78 +NGC_3293 158.970 -58.231 1981.4 -7.671 3.344 -13.16 +NGC_3330 159.659 -54.148 1467.9 -7.705 2.996 -5.86 +NGC_3496 164.877 -60.335 1922.1 -7.408 2.668 9.62 +NGC_3532 166.417 -58.707 455.6 -10.385 5.175 5.37 +NGC_3572 167.640 -60.294 1980.6 -6.261 1.893 0.92 +NGC_3680 171.392 -43.240 941.7 -7.278 1.118 1.74 +NGC_3766 174.061 -61.616 1699.6 -6.731 0.961 -17.35 +NGC_3960 177.644 -55.679 1892.0 -6.522 1.853 -22.54 +NGC_433 18.798 60.133 1689.5 -1.422 -0.720 -34.94 +NGC_4349 186.048 -61.866 1616.1 -7.827 -0.296 -11.46 +NGC_4609 190.582 -62.995 1267.7 -4.870 -1.045 -25.22 +NGC_4755 193.415 -60.371 1693.3 -4.647 -1.134 9.50 +NGC_5269 206.147 -62.907 1698.2 -4.490 -1.918 -36.91 +NGC_5281 206.614 -62.916 1366.7 -4.628 -2.389 -19.10 +NGC_5316 208.516 -61.883 1259.8 -6.297 -1.515 -14.41 +NGC_5381 210.205 -59.578 1967.5 -6.034 -2.932 -38.61 +NGC_5460 211.847 -48.285 680.7 -6.599 -3.454 -4.61 +NGC_5617 217.452 -60.719 1890.5 -5.641 -3.172 -34.74 +NGC_5662 218.734 -56.640 705.6 -6.427 -7.243 -21.14 +NGC_5715 220.859 -57.578 1772.3 -3.487 -2.324 -26.16 +NGC_5749 222.204 -54.502 980.9 -2.756 -3.079 -18.04 +NGC_5764 223.389 -52.667 1662.5 -3.325 -2.318 -32.52 +NGC_581 23.339 60.659 1992.0 -1.384 -0.497 -45.33 +NGC_5822 226.051 -54.366 759.8 -7.422 -5.534 -28.15 +NGC_5823 226.365 -55.608 1538.7 -3.691 -2.443 -47.32 +NGC_5925 231.847 -54.515 1238.2 -4.319 -5.142 -20.62 +NGC_6025 240.779 -60.430 715.3 -2.901 -3.035 15.53 +NGC_6067 243.299 -54.227 1749.6 -1.907 -2.586 -38.90 +NGC_6087 244.721 -57.916 866.7 -1.567 -2.411 1.14 +NGC_6124 246.332 -40.661 593.1 -0.203 -2.094 -20.80 +NGC_6134 246.953 -49.161 1025.9 2.184 -4.483 -25.35 +NGC_6152 248.213 -52.629 1383.8 -2.511 -4.980 -35.70 +NGC_6167 248.662 -49.759 1279.3 -0.616 -2.854 -19.18 +NGC_6192 250.077 -43.355 1428.9 1.653 -0.188 -7.81 +NGC_6193 250.319 -48.777 1063.0 1.278 -4.111 -15.51 +NGC_6208 252.336 -53.714 1042.9 -0.966 -1.519 -32.15 +NGC_6231 253.545 -41.812 1392.3 -0.529 -2.177 -39.88 +NGC_6242 253.878 -39.474 1131.3 1.149 -0.825 -7.03 +NGC_6253 254.778 -52.712 1444.9 -4.537 -5.280 -27.97 +NGC_6259 255.195 -44.678 1864.3 -1.015 -2.892 -32.84 +NGC_6268 255.524 -39.721 1310.6 0.908 -0.781 -14.26 +NGC_6281 256.179 -37.948 499.5 -1.856 -4.017 -5.00 +NGC_6383 263.673 -32.573 998.5 2.596 -1.708 -54.74 +NGC_6400 265.062 -36.957 1079.5 0.499 -2.549 -13.06 +NGC_6405 265.069 -32.242 434.5 -1.306 -5.847 -9.47 +NGC_6416 266.014 -32.344 951.1 -1.946 -2.327 -22.43 +NGC_6425 266.733 -31.507 896.2 3.801 -1.647 -3.07 +NGC_6475 268.447 -34.841 270.2 3.099 -5.426 -14.84 +NGC_6494 269.237 -18.987 674.4 0.284 -1.809 -8.37 +NGC_6520 270.856 -27.884 1458.8 0.688 -0.418 -22.35 +NGC_6561 272.659 -16.740 1275.8 -0.002 -0.754 1.62 +NGC_6568 273.192 -21.612 939.1 0.593 -1.377 -43.70 +NGC_6583 273.962 -22.143 1844.8 1.303 0.110 -2.27 +NGC_6611 274.688 -13.792 1438.7 0.178 -1.576 3.70 +NGC_6633 276.845 6.615 376.8 1.198 -1.811 -28.62 +NGC_6645 278.158 -16.918 1489.0 1.340 -0.633 -3.93 +NGC_6649 278.359 -10.399 1678.4 -0.007 -0.055 -8.87 +NGC_6664 279.125 -8.194 1675.0 -0.089 -2.561 -4.44 +NGC_6694 281.317 -9.386 1531.9 0.144 -1.411 -10.54 +NGC_6704 282.687 -5.203 1775.0 -0.730 -3.139 25.49 +NGC_6705 282.766 -6.272 1799.4 -1.568 -4.144 36.01 +NGC_6709 282.836 10.334 962.0 1.414 -3.532 -10.21 +NGC_6716 283.616 -19.888 651.8 -1.476 -6.013 -0.09 +NGC_6728 284.715 -8.953 1504.4 1.312 -1.760 11.51 +NGC_6735 285.155 -0.498 1835.3 0.072 -1.274 7.04 +NGC_6755 286.942 4.224 1981.4 -0.734 -3.529 27.11 +NGC_6793 290.817 22.159 556.1 3.795 3.544 -16.59 +NGC_6800 291.664 25.008 924.1 0.438 -0.876 -13.29 +NGC_6811 294.340 46.378 1001.1 -3.399 -8.812 7.70 +NGC_6830 297.718 23.101 1808.3 -3.213 -5.766 2.62 +NGC_6866 300.983 44.158 1226.7 -1.365 -5.743 12.83 +NGC_6871 301.548 35.765 1554.8 -3.129 -6.437 4.38 +NGC_6910 305.797 40.771 1483.2 -3.415 -5.359 14.97 +NGC_6939 307.917 60.653 1574.4 -1.841 -5.413 -18.99 +NGC_6940 308.626 28.278 929.4 -1.954 -9.413 8.10 +NGC_6991 313.621 47.400 527.9 5.593 8.509 -12.46 +NGC_6997 314.128 44.640 796.4 -4.275 -6.882 -19.61 +NGC_7031 316.809 50.870 1200.9 -1.242 -4.205 -4.16 +NGC_7039 317.663 45.597 703.1 -0.320 -2.542 -10.59 +NGC_7058 320.448 50.822 349.8 7.432 2.889 -16.78 +NGC_7062 320.862 46.385 1898.3 -1.914 -4.045 -22.05 +NGC_7063 321.122 36.507 622.8 1.524 -2.482 4.43 +NGC_7082 322.186 47.103 1165.5 -0.293 -1.106 -24.85 +NGC_7086 322.624 51.593 1391.6 -1.656 -1.629 -22.34 +NGC_7092 322.889 48.247 288.6 -7.477 -19.738 -5.09 +NGC_7142 326.290 65.782 1920.1 -2.747 -1.288 -49.70 +NGC_7160 328.448 62.589 848.1 -3.472 -1.378 -28.00 +NGC_7209 331.224 46.508 1053.7 2.255 0.283 -18.42 +NGC_7243 333.788 49.830 803.2 0.433 -2.857 -2.90 +NGC_7296 337.000 52.321 1906.5 -2.958 -2.712 -29.85 +NGC_743 29.614 60.130 990.3 -0.030 -1.708 -18.16 +NGC_744 29.652 55.473 1165.2 -1.864 -1.790 -25.47 +NGC_752 29.223 37.794 422.3 9.810 -11.713 5.69 +NGC_7654 351.195 61.590 1379.4 -1.938 -1.131 -32.09 +NGC_7762 357.472 68.035 884.0 1.452 4.016 -45.40 +NGC_7789 359.334 56.726 1718.2 -0.922 -1.933 -54.15 +NGC_869 34.741 57.134 1893.8 -0.689 -1.082 -62.82 +NGC_884 35.584 57.149 1897.4 -0.628 -1.066 -43.01 +Patchick_3 79.120 45.584 1448.5 -1.609 -1.288 -31.02 +Pismis_12 140.007 -45.131 1785.5 -6.748 4.833 32.44 +Pismis_3 127.834 -38.640 1880.6 -4.809 6.645 30.33 +Pismis_4 128.790 -44.407 647.9 -8.236 5.337 11.59 +Platais_10 205.220 -59.271 233.3 -30.591 -10.215 -16.83 +Platais_3 69.976 71.280 174.0 3.616 -20.931 8.07 +Platais_8 136.718 -58.685 132.6 -15.596 14.474 20.64 +Platais_9 139.241 -43.862 178.7 -24.705 13.333 17.02 +Pozzo_1 122.374 -47.335 335.3 -6.516 9.530 18.67 +RSG_1 75.508 37.475 319.5 0.770 -12.330 14.69 +RSG_5 303.482 45.574 325.3 3.573 1.605 -6.91 +RSG_7 344.190 59.363 405.5 4.927 -1.865 -11.51 +RSG_8 344.983 59.371 427.6 5.343 -1.654 -9.64 +Roslund_2 296.261 23.977 1688.7 -1.741 -5.115 126.71 +Roslund_3 299.695 20.509 1400.8 -0.386 -5.108 -21.67 +Roslund_5 302.641 33.751 510.2 1.981 -1.164 -17.45 +Roslund_6 307.185 39.798 340.3 5.875 2.155 -12.89 +Roslund_7 313.196 37.847 1100.6 1.729 -0.360 -12.72 +Ruprecht_1 99.084 -14.157 1315.1 -0.316 -0.900 12.52 +Ruprecht_10 106.626 -20.125 1771.5 -0.849 0.564 33.94 +Ruprecht_105 188.694 -61.592 1699.0 -5.986 -0.001 -4.38 +Ruprecht_111 219.010 -59.975 1258.2 -7.214 -6.113 -34.51 +Ruprecht_119 247.039 -51.500 1778.7 -1.300 -3.413 -39.38 +Ruprecht_121 250.436 -46.159 1691.8 -1.073 -2.569 -52.95 +Ruprecht_128 266.063 -34.879 1595.5 1.889 -1.262 -39.79 +Ruprecht_130 266.900 -30.098 1931.5 0.477 -1.795 -41.84 +Ruprecht_134 268.184 -29.537 1922.2 -1.653 -2.432 -42.19 +Ruprecht_135 269.511 -11.646 970.7 1.420 -1.415 -14.33 +Ruprecht_145 282.636 -18.270 561.7 8.329 -4.080 -54.70 +Ruprecht_147 289.087 -16.333 296.0 -0.939 -26.576 41.84 +Ruprecht_167 215.150 -58.858 1347.1 -8.205 -4.838 -28.64 +Ruprecht_170 276.335 -9.995 1689.5 0.452 -0.132 0.29 +Ruprecht_171 278.012 -16.062 1334.8 7.677 1.091 5.61 +Ruprecht_174 310.856 37.031 1899.1 -3.154 -4.675 -12.89 +Ruprecht_26 114.271 -15.587 950.6 -3.200 0.071 13.19 +Ruprecht_27 114.423 -26.516 1673.3 -1.230 0.428 37.21 +Ruprecht_29 115.279 -24.377 1757.2 -2.138 1.617 44.62 +Ruprecht_33 116.445 -21.915 1833.1 -1.384 0.058 48.10 +Ruprecht_50 120.872 -30.873 1843.3 -1.726 2.352 51.08 +Ruprecht_71 132.316 -46.875 1625.8 -5.220 4.642 38.73 +Ruprecht_82 146.421 -54.004 1788.0 -6.443 4.348 2.08 +Ruprecht_84 147.281 -65.259 1613.5 -6.963 3.997 -8.63 +Ruprecht_91 161.964 -57.483 947.2 -11.179 2.421 0.74 +Ruprecht_93 166.037 -61.372 1768.3 -6.411 3.104 -24.40 +Ruprecht_98 179.715 -64.581 460.1 -4.114 -8.632 -5.09 +SAI_24 44.816 60.566 1738.1 -0.201 0.114 -3.64 +SAI_25 45.109 57.307 1996.2 0.608 -1.205 -66.26 +Skiff_J0458+43.0 74.547 43.036 1958.2 0.595 -1.109 -16.39 +Skiff_J0619+18.5 94.829 18.546 1293.3 -0.529 -1.284 11.47 +Skiff_J1942+38.6 295.611 38.645 1995.8 -3.131 -5.898 -18.20 +Stephenson_1 283.568 36.899 343.8 1.110 -3.010 -18.69 +Stock_1 294.146 25.163 388.1 6.034 0.302 -19.51 +Stock_10 84.808 37.850 346.3 -3.114 -0.464 -11.67 +Stock_12 353.923 52.685 418.5 8.527 -1.846 -4.20 +Stock_2 33.856 59.522 361.0 15.966 -13.627 8.19 +Stock_21 7.590 57.922 1564.6 -2.161 -1.787 -35.08 +Stock_23 49.075 60.377 574.0 -4.261 -0.865 -18.07 +Stock_5 31.119 64.365 875.7 -0.729 -2.069 -33.35 +Stock_7 37.431 60.627 636.8 -3.496 0.484 4.79 +Teutsch_126 333.455 55.712 1767.9 -1.820 -2.230 -33.73 +Teutsch_30 306.929 36.074 1496.3 -3.180 -5.692 94.08 +Teutsch_35 294.091 35.742 468.3 -0.683 -2.439 -7.66 +Teutsch_38 131.523 -38.025 613.2 -8.636 3.669 28.09 +Tombaugh_5 56.984 59.070 1449.3 0.515 -2.388 -23.10 +Trumpler_10 131.943 -42.566 413.9 -12.532 6.527 22.43 +Trumpler_14 160.986 -59.553 1944.3 -6.540 2.076 -10.53 +Trumpler_17 164.108 -59.230 1983.0 -4.631 2.216 105.27 +Trumpler_19 168.623 -57.563 1989.8 -1.675 -1.237 -26.38 +Trumpler_2 39.232 55.905 640.9 1.583 -5.352 -4.12 +Trumpler_22 217.783 -61.169 1941.0 -5.120 -2.683 -43.03 +Trumpler_25 261.125 -39.006 1884.6 0.358 -2.120 -26.79 +Trumpler_26 262.126 -29.487 1329.5 -0.873 -3.082 -7.59 +Trumpler_28 264.231 -32.469 1239.8 -0.851 -2.824 -23.47 +Trumpler_29 265.347 -40.158 1246.8 0.489 -2.308 -23.99 +Trumpler_3 48.004 63.218 629.1 -3.354 -0.112 -19.46 +Trumpler_30 269.182 -35.298 1196.7 1.243 -2.189 -18.36 +Trumpler_32 274.294 -13.349 1414.8 -1.052 1.158 16.52 +Trumpler_33 276.159 -19.711 1240.9 0.435 0.449 -3.71 +Turner_5 143.284 -36.358 399.7 0.092 -3.115 -3.49 +Turner_9 296.165 29.494 1445.6 0.346 -2.399 1.57 +vdBergh_83 100.025 -27.189 859.5 -2.896 3.199 15.78 +vdBergh_92 106.038 -11.475 1030.2 -4.540 1.618 27.99 diff --git a/tutorials/notebooks/astropy-coordinates/HD_219829_query_results.ecsv b/tutorials/notebooks/astropy-coordinates/HD_219829_query_results.ecsv new file mode 100644 index 000000000..6800a6a42 --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/HD_219829_query_results.ecsv @@ -0,0 +1,528 @@ +# %ECSV 0.9 +# --- +# datatype: +# - name: solution_id +# datatype: int64 +# description: Solution Identifier +# meta: !!omap +# - {ucd: meta.version} +# - name: designation +# datatype: object +# description: Unique source designation (unique across all Data Releases) +# meta: !!omap +# - {ucd: meta.id;meta.main} +# - {_votable_string_dtype: char} +# - name: source_id +# datatype: int64 +# description: Unique source identifier (unique within a particular Data Release) +# meta: !!omap +# - {ucd: meta.id} +# - name: random_index +# datatype: int64 +# description: Random index used to select subsets +# meta: !!omap +# - {ucd: meta.code} +# - name: ref_epoch +# unit: yr +# datatype: float64 +# description: Reference epoch +# meta: !!omap +# - {ucd: meta.ref;time.epoch} +# - name: ra +# unit: deg +# datatype: float64 +# description: Right ascension +# meta: !!omap +# - {ucd: pos.eq.ra;meta.main} +# - {utype: Char.SpatialAxis.Coverage.Location.Coord.Position2D.Value2.C1} +# - name: ra_error +# unit: mas +# datatype: float64 +# description: Standard error of right ascension +# meta: !!omap +# - {ucd: stat.error;pos.eq.ra} +# - name: dec +# unit: deg +# datatype: float64 +# description: Declination +# meta: !!omap +# - {ucd: pos.eq.dec;meta.main} +# - {utype: Char.SpatialAxis.Coverage.Location.Coord.Position2D.Value2.C2} +# - name: dec_error +# unit: mas +# datatype: float64 +# description: Standard error of declination +# meta: !!omap +# - {ucd: stat.error;pos.eq.dec} +# - name: parallax +# unit: mas +# datatype: float64 +# description: Parallax +# meta: !!omap +# - {ucd: pos.parallax} +# - name: parallax_error +# unit: mas +# datatype: float64 +# description: Standard error of parallax +# meta: !!omap +# - {ucd: stat.error;pos.parallax} +# - name: parallax_over_error +# datatype: float32 +# description: Parallax divided by its error +# meta: !!omap +# - {ucd: arith.ratio} +# - name: pmra +# unit: mas / yr +# datatype: float64 +# description: Proper motion in right ascension direction +# meta: !!omap +# - {ucd: pos.pm;pos.eq.ra} +# - name: pmra_error +# unit: mas / yr +# datatype: float64 +# description: Standard error of proper motion in right ascension direction +# meta: !!omap +# - {ucd: stat.error;pos.pm;pos.eq.ra} +# - name: pmdec +# unit: mas / yr +# datatype: float64 +# description: Proper motion in declination direction +# meta: !!omap +# - {ucd: pos.pm;pos.eq.dec} +# - name: pmdec_error +# unit: mas / yr +# datatype: float64 +# description: Standard error of proper motion in declination direction +# meta: !!omap +# - {ucd: stat.error;pos.pm;pos.eq.dec} +# - name: ra_dec_corr +# datatype: float32 +# description: Correlation between right ascension and declination +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.ra;pos.eq.dec} +# - name: ra_parallax_corr +# datatype: float32 +# description: Correlation between right ascension and parallax +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.ra;pos.parallax} +# - name: ra_pmra_corr +# datatype: float32 +# description: Correlation between right ascension and proper motion in right ascension +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.ra;pos.pm;pos.eq.ra} +# - name: ra_pmdec_corr +# datatype: float32 +# description: Correlation between right ascension and proper motion in declination +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.ra;pos.pm;pos.eq.dec} +# - name: dec_parallax_corr +# datatype: float32 +# description: Correlation between declination and parallax +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.dec;pos.parallax} +# - name: dec_pmra_corr +# datatype: float32 +# description: Correlation between declination and proper motion in right ascension +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.dec;pos.pm;pos.eq.ra} +# - name: dec_pmdec_corr +# datatype: float32 +# description: Correlation between declination and proper motion in declination +# meta: !!omap +# - {ucd: stat.correlation;pos.eq.dec;pos.pm;pos.eq.dec} +# - name: parallax_pmra_corr +# datatype: float32 +# description: Correlation between parallax and proper motion in right ascension +# meta: !!omap +# - {ucd: stat.correlation;pos.parallax;pos.pm;pos.eq.ra} +# - name: parallax_pmdec_corr +# datatype: float32 +# description: Correlation between parallax and proper motion in declination +# meta: !!omap +# - {ucd: stat.correlation;pos.parallax;pos.pm;pos.eq.dec} +# - name: pmra_pmdec_corr +# datatype: float32 +# description: Correlation between proper motion in right ascension and proper motion in declination +# meta: !!omap +# - {ucd: stat.correlation;pos.pm;pos.eq.ra;pos.pm;pos.eq.dec} +# - name: astrometric_n_obs_al +# datatype: int32 +# description: Total number of observations AL +# meta: !!omap +# - {ucd: meta.number} +# - name: astrometric_n_obs_ac +# datatype: int32 +# description: Total number of observations AC +# meta: !!omap +# - {ucd: meta.number} +# - name: astrometric_n_good_obs_al +# datatype: int32 +# description: Number of good observations AL +# meta: !!omap +# - {ucd: meta.number} +# - name: astrometric_n_bad_obs_al +# datatype: int32 +# description: Number of bad observations AL +# meta: !!omap +# - {ucd: meta.number} +# - name: astrometric_gof_al +# datatype: float32 +# description: Goodness of fit statistic of model wrt along-scan observations +# meta: !!omap +# - {ucd: stat.fit.goodness} +# - name: astrometric_chi2_al +# datatype: float32 +# description: AL chi-square value +# meta: !!omap +# - {ucd: stat.fit.chi2} +# - name: astrometric_excess_noise +# unit: mas +# datatype: float64 +# description: Excess noise of the source +# meta: !!omap +# - {ucd: stat.value} +# - name: astrometric_excess_noise_sig +# datatype: float64 +# description: Significance of excess noise +# meta: !!omap +# - {ucd: stat.value} +# - name: astrometric_params_solved +# datatype: int16 +# description: Which parameters have been solved for? +# meta: !!omap +# - {ucd: meta.number} +# - name: astrometric_primary_flag +# datatype: bool +# description: Primary or seconday +# meta: !!omap +# - {ucd: meta.code} +# - name: astrometric_weight_al +# unit: 1 / mas2 +# datatype: float32 +# description: Mean astrometric weight of the source +# meta: !!omap +# - {ucd: stat.weight;stat.mean} +# - name: astrometric_pseudo_colour +# unit: 1 / um +# datatype: float64 +# description: Astrometrically determined pseudocolour of the source +# meta: !!omap +# - {ucd: em.wavenumber} +# - name: astrometric_pseudo_colour_error +# unit: 1 / um +# datatype: float64 +# description: Standard error of the pseudocolour of the source +# meta: !!omap +# - {ucd: em.wavenumber;stat.error} +# - name: mean_varpi_factor_al +# datatype: float32 +# description: Mean Parallax factor AL +# meta: !!omap +# - {ucd: arith.factor;pos.parallax} +# - name: astrometric_matched_observations +# datatype: int16 +# description: Matched FOV transits used in the AGIS solution +# meta: !!omap +# - {ucd: meta.number} +# - name: visibility_periods_used +# datatype: int16 +# description: Number of visibility periods used in Astrometric solution +# meta: !!omap +# - {ucd: meta.number} +# - name: astrometric_sigma5d_max +# unit: mas +# datatype: float32 +# description: The longest semi-major axis of the 5-d error ellipsoid +# meta: !!omap +# - {ucd: pos.errorEllipse;stat.max} +# - name: frame_rotator_object_type +# datatype: int32 +# description: The type of the source mainly used for frame rotation +# meta: !!omap +# - {ucd: meta.code} +# - name: matched_observations +# datatype: int16 +# description: Amount of observations matched to this source +# meta: !!omap +# - {ucd: meta.number} +# - name: duplicated_source +# datatype: bool +# description: Source with duplicate sources +# meta: !!omap +# - {ucd: meta.code.status} +# - name: phot_g_n_obs +# datatype: int32 +# description: Number of observations contributing to G photometry +# meta: !!omap +# - {ucd: meta.number} +# - name: phot_g_mean_flux +# unit: electron / s +# datatype: float64 +# description: G-band mean flux +# meta: !!omap +# - {ucd: phot.flux;stat.mean;em.opt} +# - name: phot_g_mean_flux_error +# unit: electron / s +# datatype: float64 +# description: Error on G-band mean flux +# meta: !!omap +# - {ucd: stat.error;phot.flux;stat.mean;em.opt} +# - name: phot_g_mean_flux_over_error +# datatype: float32 +# description: G-band mean flux divided by its error +# meta: !!omap +# - {ucd: arith.ratio} +# - name: phot_g_mean_mag +# unit: mag +# datatype: float32 +# description: G-band mean magnitude +# meta: !!omap +# - {ucd: phot.mag;stat.mean;em.opt} +# - name: phot_bp_n_obs +# datatype: int32 +# description: Number of observations contributing to BP photometry +# meta: !!omap +# - {ucd: meta.number} +# - name: phot_bp_mean_flux +# unit: electron / s +# datatype: float64 +# description: Integrated BP mean flux +# meta: !!omap +# - {ucd: phot.flux;stat.mean} +# - name: phot_bp_mean_flux_error +# unit: electron / s +# datatype: float64 +# description: Error on the integrated BP mean flux +# meta: !!omap +# - {ucd: stat.error;phot.flux;stat.mean} +# - name: phot_bp_mean_flux_over_error +# datatype: float32 +# description: Integrated BP mean flux divided by its error +# meta: !!omap +# - {ucd: arith.ratio} +# - name: phot_bp_mean_mag +# unit: mag +# datatype: float32 +# description: Integrated BP mean magnitude +# meta: !!omap +# - {ucd: phot.mag;stat.mean} +# - name: phot_rp_n_obs +# datatype: int32 +# description: Number of observations contributing to RP photometry +# meta: !!omap +# - {ucd: meta.number} +# - name: phot_rp_mean_flux +# unit: electron / s +# datatype: float64 +# description: Integrated RP mean flux +# meta: !!omap +# - {ucd: phot.flux;stat.mean} +# - name: phot_rp_mean_flux_error +# unit: electron / s +# datatype: float64 +# description: Error on the integrated RP mean flux +# meta: !!omap +# - {ucd: stat.error;phot.flux} +# - name: phot_rp_mean_flux_over_error +# datatype: float32 +# description: Integrated RP mean flux divided by its error +# meta: !!omap +# - {ucd: arith.ratio} +# - name: phot_rp_mean_mag +# unit: mag +# datatype: float32 +# description: Integrated RP mean magnitude +# meta: !!omap +# - {ucd: phot.mag;stat.mean} +# - {name: phot_bp_rp_excess_factor, datatype: float32, description: BP/RP excess factor} +# - {name: phot_proc_mode, datatype: int16, description: Photometry processing mode} +# - name: bp_rp +# unit: mag +# datatype: float32 +# description: BP - RP colour +# meta: !!omap +# - {ucd: phot.color} +# - name: bp_g +# unit: mag +# datatype: float32 +# description: BP - G colour +# meta: !!omap +# - {ucd: phot.color} +# - name: g_rp +# unit: mag +# datatype: float32 +# description: G - RP colour +# meta: !!omap +# - {ucd: phot.color} +# - name: radial_velocity +# unit: km / s +# datatype: float64 +# description: Radial velocity +# meta: !!omap +# - {ucd: spect.dopplerVeloc.opt} +# - name: radial_velocity_error +# unit: km / s +# datatype: float64 +# description: Radial velocity error +# meta: !!omap +# - {ucd: stat.error;spect.dopplerVeloc.opt} +# - name: rv_nb_transits +# datatype: int32 +# description: Number of transits used to compute radial velocity +# meta: !!omap +# - {ucd: meta.number} +# - name: rv_template_teff +# unit: K +# datatype: float32 +# description: Teff of the template used to compute radial velocity +# meta: !!omap +# - {ucd: stat.fit.param} +# - name: rv_template_logg +# unit: log(cm.s**-2) +# datatype: float32 +# description: logg of the template used to compute radial velocity +# meta: !!omap +# - {ucd: stat.fit.param} +# - name: rv_template_fe_h +# unit: dex +# datatype: float32 +# description: Fe/H of the template used to compute radial velocity +# meta: !!omap +# - {ucd: stat.fit.param} +# - name: phot_variable_flag +# datatype: object +# description: Photometric variability flag +# meta: !!omap +# - {ucd: meta.code;src.var} +# - {_votable_string_dtype: char} +# - name: l +# unit: deg +# datatype: float64 +# description: Galactic longitude +# meta: !!omap +# - {ucd: pos.galactic.lon} +# - name: b +# unit: deg +# datatype: float64 +# description: Galactic latitude +# meta: !!omap +# - {ucd: pos.galactic.lat} +# - name: ecl_lon +# unit: deg +# datatype: float64 +# description: Ecliptic longitude +# meta: !!omap +# - {ucd: pos.ecliptic.lon} +# - name: ecl_lat +# unit: deg +# datatype: float64 +# description: Ecliptic latitude +# meta: !!omap +# - {ucd: pos.ecliptic.lat} +# - name: priam_flags +# datatype: int64 +# description: flags for the Apsis-Priam results +# meta: !!omap +# - {ucd: meta.code} +# - name: teff_val +# unit: K +# datatype: float32 +# description: stellar effective temperature +# meta: !!omap +# - {ucd: phys.temperature.effective} +# - name: teff_percentile_lower +# unit: K +# datatype: float32 +# description: teffVal lower uncertainty +# meta: !!omap +# - {ucd: phys.temperature.effective;stat.min} +# - name: teff_percentile_upper +# unit: K +# datatype: float32 +# description: teffVal upper uncertainty +# meta: !!omap +# - {ucd: phys.temperature.effective;stat.max} +# - name: a_g_val +# unit: mag +# datatype: float32 +# description: line-of-sight extinction in the G band, A_G) +# meta: !!omap +# - {ucd: phys.absorption.gal} +# - name: a_g_percentile_lower +# unit: mag +# datatype: float32 +# description: aGVal lower uncertainty +# meta: !!omap +# - {ucd: phys.absorption.gal;stat.min} +# - name: a_g_percentile_upper +# unit: mag +# datatype: float32 +# description: aGVal upper uncertainty +# meta: !!omap +# - {ucd: phys.absorption.gal;stat.max} +# - {name: e_bp_min_rp_val, unit: mag, datatype: float32, description: line-of-sight reddening E(BP-RP)} +# - {name: e_bp_min_rp_percentile_lower, unit: mag, datatype: float32, description: eBPminRPVal lower uncertainty} +# - {name: e_bp_min_rp_percentile_upper, unit: mag, datatype: float32, description: eBPminRPVal upper uncertainty} +# - name: flame_flags +# datatype: int64 +# description: Flags for the Apsis-FLAME results +# meta: !!omap +# - {ucd: meta.code} +# - name: radius_val +# unit: Rsun +# datatype: float32 +# description: stellar radius +# meta: !!omap +# - {ucd: phys.size.radius} +# - name: radius_percentile_lower +# unit: Rsun +# datatype: float32 +# description: radiusVal lower uncertainty +# meta: !!omap +# - {ucd: phys.size.radius;stat.error} +# - name: radius_percentile_upper +# unit: Rsun +# datatype: float32 +# description: radiusVal upper uncertainty +# meta: !!omap +# - {ucd: phys.size.radius;stat.error} +# - name: lum_val +# unit: Lsun +# datatype: float32 +# description: stellar luminosity +# meta: !!omap +# - {ucd: phys.luminosity} +# - name: lum_percentile_lower +# unit: Lsun +# datatype: float32 +# description: lumVal lower uncertainty +# meta: !!omap +# - {ucd: phys.luminosity;stat.error} +# - name: lum_percentile_upper +# unit: Lsun +# datatype: float32 +# description: lumVal upper uncertainty +# meta: !!omap +# - {ucd: phys.luminosity;stat.error} +# - name: datalink_url +# datatype: object +# description: datalink url +# meta: !!omap +# - {ucd: meta.ref.url} +# - {utype: Acess.reference} +# - {_votable_string_dtype: char} +# - name: epoch_photometry_url +# datatype: object +# description: epoch photometry url +# meta: !!omap +# - {utype: Acess.reference} +# - {_votable_string_dtype: char} +# - {name: dist, datatype: float64} +# schema: astropy-2.0 +solution_id designation source_id random_index ref_epoch ra ra_error dec dec_error parallax parallax_error parallax_over_error pmra pmra_error pmdec pmdec_error ra_dec_corr ra_parallax_corr ra_pmra_corr ra_pmdec_corr dec_parallax_corr dec_pmra_corr dec_pmdec_corr parallax_pmra_corr parallax_pmdec_corr pmra_pmdec_corr astrometric_n_obs_al astrometric_n_obs_ac astrometric_n_good_obs_al astrometric_n_bad_obs_al astrometric_gof_al astrometric_chi2_al astrometric_excess_noise astrometric_excess_noise_sig astrometric_params_solved astrometric_primary_flag astrometric_weight_al astrometric_pseudo_colour astrometric_pseudo_colour_error mean_varpi_factor_al astrometric_matched_observations visibility_periods_used astrometric_sigma5d_max frame_rotator_object_type matched_observations duplicated_source phot_g_n_obs phot_g_mean_flux phot_g_mean_flux_error phot_g_mean_flux_over_error phot_g_mean_mag phot_bp_n_obs phot_bp_mean_flux phot_bp_mean_flux_error phot_bp_mean_flux_over_error phot_bp_mean_mag phot_rp_n_obs phot_rp_mean_flux phot_rp_mean_flux_error phot_rp_mean_flux_over_error phot_rp_mean_mag phot_bp_rp_excess_factor phot_proc_mode bp_rp bp_g g_rp radial_velocity radial_velocity_error rv_nb_transits rv_template_teff rv_template_logg rv_template_fe_h phot_variable_flag l b ecl_lon ecl_lat priam_flags teff_val teff_percentile_lower teff_percentile_upper a_g_val a_g_percentile_lower a_g_percentile_upper e_bp_min_rp_val e_bp_min_rp_percentile_lower e_bp_min_rp_percentile_upper flame_flags radius_val radius_percentile_lower radius_percentile_upper lum_val lum_percentile_lower lum_percentile_upper datalink_url epoch_photometry_url dist +1635721458409799680 "Gaia DR2 2661015604634933376" 2661015604634933376 1462977265 2015.5 349.71443808314274 0.08378571922869163 5.406350233734066 0.06981455319885849 0.6903548758382615 0.10463774397164591 6.5975704 -2.040609180770594 0.15831024111217917 -6.727220501613464 0.12727204562445724 0.10056114 0.41059625 -0.06951938 -0.29032317 -0.33375117 -0.20685387 -0.05722975 -0.02347639 -0.24349955 0.21937583 166 0 164 2 4.8880634 262.13422 0.2663134487782464 2.171809642664326 31 False 2.8542476 1.5514739804406905 0.016978433426132592 0.05109339 19 10 0.14950746 0 25 False 213 3543.567366333834 4.391155897486671 806.9783 16.814764 22 1556.5689066685113 8.889620901441209 175.09958 17.370968 22 2908.398474069353 12.687689613971845 229.22995 16.102785 1.2600205 0 1.2681828 0.55620384 0.7119789 "" "" 0 "" "" "" NOT_AVAILABLE 84.95495367917219 -50.51155224725024 352.69253586015975 9.041664774111247 100001 4882.8276 4719.0 5395.1875 "" "" "" "" "" "" "" "" "" "" "" "" "" https://gea.esac.esa.int/data-server/datalink/links?ID=Gaia+DR2+2661015604634933376 "" 0.009964971210843544 +1635721458409799680 "Gaia DR2 2661015810793360640" 2661015810793360640 445528008 2015.5 349.7110402948439 0.16941288934305035 5.412381636738937 0.17384712162982535 0.3185553977267934 0.24882616850465583 1.2802327 -1.3880934756827557 0.33746698300303346 -0.724554720226459 0.3098058592182854 0.094283886 0.34688985 0.045790747 -0.2295854 -0.5191395 0.014803272 0.29463488 -0.22077389 -0.41961917 0.40085238 124 0 122 2 0.6869756 127.12059 0.33455945030732376 0.958805018580522 31 False 0.87546533 1.4437486412836686 0.038719526885210846 0.13986896 14 9 0.34992754 0 22 False 167 1133.0685011406038 2.9375438138606 385.7197 18.052725 17 495.2567304822127 10.441309330782271 47.432434 18.614313 18 939.8572691150545 11.672303749069789 80.52029 17.329266 1.2665731 0 1.2850475 0.5615883 0.72345924 "" "" 0 "" "" "" NOT_AVAILABLE 84.95572883742342 -50.50465462729523 352.69181149042794 9.048542887522542 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" https://gea.esac.esa.int/data-server/datalink/links?ID=Gaia+DR2+2661015810793360640 "" 0.010381105060756268 +1635721458409799680 "Gaia DR2 2661015540210781568" 2661015540210781568 392933776 2015.5 349.72896715675495 0.3507449262151289 5.405115847648341 0.2754966431973364 29.00319440995681 0.420067397908447 69.04414 483.4165901889734 0.6304528339026761 -114.8633971841528 0.6218405635092622 0.11931643 0.590636 -0.11640657 -0.08865421 -0.16874471 -0.19063891 -0.29583436 0.13647223 0.083452486 0.31626296 175 175 172 3 95.94435 15203.307 1.425635421842276 487.07952921430655 31 True 0.46855804 1.7542147886298571 0.07386439068528583 0.158552 20 9 0.35701492 0 32 False 268 11766095.72548246 63091.9435541105 186.49126 8.011785 31 6864746.194927425 71221.50232088838 96.385864 8.259827 26 10431791.117108675 59648.871202286355 174.88664 7.216023 1.470032 0 1.0438037 0.2480421 0.7957616 "" "" 0 "" "" "" NOT_AVAILABLE 84.97288436651142 -50.52053841797158 352.70548749750327 9.034798992151346 102001 5095.6333 4515.74 5567.135 "" "" "" "" "" "" 200111 0.9924494 0.83145976 1.2637082 0.59827954 0.58807945 0.6084796 https://gea.esac.esa.int/data-server/datalink/links?ID=Gaia+DR2+2661015540210781568 "" 0.011269551575792706 +1635721458409799680 "Gaia DR2 2661015707714189184" 2661015707714189184 924300071 2015.5 349.7325640762333 0.27531281213241265 5.418079919788587 0.20537475568947308 1.5732410878793706 0.32694739400446454 4.8119087 0.4909678777132653 0.46152746362550745 -5.594393419558784 0.3814540101438963 0.119662344 0.5599697 -0.04842105 -0.3322206 -0.1301056 -0.20511477 -0.13745356 -0.082227394 -0.28557575 0.14430724 148 0 146 2 2.437362 185.21773 0.7263511480432564 1.7663414311099603 31 False 0.33277047 1.3171559769139742 0.055499499275174446 0.034256052 17 10 0.42479882 0 24 False 195 650.8177979952492 2.2851064810512614 284.80853 18.654716 19 167.91547268251236 7.287216794237041 23.042469 19.788662 20 828.841075240713 10.161745901753976 81.56483 17.465742 1.5315447 0 2.3229198 1.1339455 1.1889744 "" "" 0 "" "" "" NOT_AVAILABLE 84.98879753420717 -50.51167813980394 352.7140191392524 9.045282218570865 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" https://gea.esac.esa.int/data-server/datalink/links?ID=Gaia+DR2+2661015707714189184 "" 0.012013284432577832 +1635721458409799680 "Gaia DR2 2661015608930257920" 2661015608930257920 825796434 2015.5 349.7086448902422 0.07323571711597479 5.4087729260160655 0.05808282683067876 0.19582104254302538 0.08595094040527913 2.2782886 6.635767769631729 0.1395661923983293 -3.842791624074978 0.11951121462516086 0.11297976 0.4498689 -0.02993958 -0.2125153 -0.23179407 -0.19369368 -0.042317882 0.03244135 -0.10013225 0.28470865 161 0 161 0 -0.7516409 142.468 0.0 0.0 31 False 3.8972554 1.6003483589186642 0.01525096333098385 0.05435083 18 10 0.13667808 0 24 False 210 3676.6204656649393 3.6229447195114655 1014.8155 16.774744 22 1949.7530735631422 8.013553975023903 243.30692 17.12644 21 2515.686070709493 10.526838347453003 238.97832 16.260279 1.2145499 0 0.86616135 0.351696 0.51446533 "" "" 0 "" "" "" NOT_AVAILABLE 84.94947620732303 -50.506356276905095 352.6881462604411 9.046174761584277 100001 5783.0 5454.9854 6262.01 "" "" "" "" "" "" "" "" "" "" "" "" "" https://gea.esac.esa.int/data-server/datalink/links?ID=Gaia+DR2+2661015608930257920 "" 0.013557172703677567 +1635721458409799680 "Gaia DR2 2661015913872579200" 2661015913872579200 410476564 2015.5 349.7150602330541 1.4275506913539715 5.427438298209662 1.0676230144618029 -3.8129011453293926 1.5931269455104502 -2.3933442 8.260768485296449 2.352756770203742 -26.89516888183606 2.1124325560514534 -0.31860068 0.591721 -0.026548184 -0.15503657 -0.4724725 0.04315903 0.10519571 -0.117916964 -0.24485925 0.007941911 84 0 82 2 0.21026266 78.95901 0.0 0.0 31 False 0.0230128 1.732918181172017 0.3190097491902861 -0.08656725 13 9 2.0827143 0 13 False 88 92.72163319146276 1.6588316999681094 55.895744 20.770412 10 68.83626128535741 10.431328180260701 6.598993 20.756845 10 105.87928796587941 7.35504776533965 14.395459 19.699892 1.8843019 0 1.0569534 -0.013566971 1.0705204 "" "" 0 "" "" "" NOT_AVAILABLE 84.97400201557431 -50.494280734717535 352.7015746870559 9.060780518335404 "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" https://gea.esac.esa.int/data-server/datalink/links?ID=Gaia+DR2+2661015913872579200 "" 0.015300302229762508 diff --git a/tutorials/notebooks/astropy-coordinates/dss_hd219829.fits b/tutorials/notebooks/astropy-coordinates/dss_hd219829.fits new file mode 100644 index 000000000..624ba81e9 --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/dss_hd219829.fits @@ -0,0 +1,11 @@ +SIMPLE = T /FITS: Compliance BITPIX = 16 /FITS: I*2 Data NAXIS = 2 /FITS: 2-D Image Data NAXIS1 = 141 /FITS: X Dimension NAXIS2 = 141 /FITS: Y Dimension EXTEND = T /FITS: File can contain extensions DATE = '2019-12-15 ' /FITS: Creation Date ORIGIN = 'STScI/MAST' /GSSS: STScI Digitized Sky Survey SURVEY = 'POSSI-E ' /GSSS: Sky Survey REGION = 'XE582 ' /GSSS: Region Name PLATEID = '08YR ' /GSSS: Plate ID SCANNUM = '00 ' /GSSS: Scan Number DSCNDNUM= '00 ' /GSSS: Descendant Number TELESCID= 1 /GSSS: Telescope ID BANDPASS= 8 /GSSS: Bandpass Code COPYRGHT= 'STScI/AURA' /GSSS: Copyright Holder SITELAT = 33.356 /Observatory: Latitude SITELONG= 116.863 /Observatory: Longitude TELESCOP= 'Palomar Schmidt ' /Observatory: Telescope INSTRUME= 'Photographic Plate' /Detector: Photographic Plate EMULSION= '103aE ' /Detector: Emulsion FILTER = 'plexi ' /Detector: Filter PLTSCALE= 67.20 /Detector: Plate Scale arcsec per mm PLTSIZEX= 355.000 /Detector: Plate X Dimension mm PLTSIZEY= 355.000 /Detector: Plate Y Dimension mm PLATERA = 349.834770000 /Observation: Field centre RA degrees PLATEDEC= 6.73062040000 /Observation: Field centre Dec degrees PLTLABEL= 'E316 ' /Observation: Plate Label DATE-OBS= '1951-08-09T09:60:00' /Observation: Date/Time EXPOSURE= 50.0 /Observation: Exposure Minutes PLTGRADE= '1 ' /Observation: Plate Grade OBSHA = 0.283333 /Observation: Hour Angle OBSZD = 26.9293 /Observation: Zenith Distance AIRMASS = 1.12132 /Observation: Airmass REFBETA = 61.8196600000 /Observation: Refraction Coeff REFBETAP= -0.0820000000000 /Observation: Refraction Coeff REFK1 = 6724.45760000 /Observation: Refraction Coeff REFK2 = 103201.750000 /Observation: Refraction Coeff CNPIX1 = 7152 /Scan: X Corner CNPIX2 = 4123 /Scan: Y Corner XPIXELS = 14000 /Scan: X Dimension YPIXELS = 13999 /Scan: Y Dimension XPIXELSZ= 25.2845 /Scan: Pixel Size microns YPIXELSZ= 25.2845 /Scan: Pixel Size microns PPO1 = 0.000000000000 /Scan: Orientation Coeff PPO2 = 0.000000000000 /Scan: Orientation Coeff PPO3 = 177500.000000 /Scan: Orientation Coeff PPO4 = 0.000000000000 /Scan: Orientation Coeff PPO5 = 0.000000000000 /Scan: Orientation Coeff PPO6 = 177500.000000 /Scan: Orientation Coeff PLTRAH = 23 /Astrometry: Plate Centre H PLTRAM = 19 /Astrometry: Plate Centre M PLTRAS = 21.49 /Astrometry: Plate Centre S PLTDECSN= '+ ' /Astrometry: Plate Centre +/- PLTDECD = 6 /Astrometry: Plate Centre D PLTDECM = 47 /Astrometry: Plate Centre M PLTDECS = 32.2 /Astrometry: Plate Centre S EQUINOX = 2000.0 /Astrometry: Equinox AMDX1 = 67.2502846743 /Astrometry: GSC1 Coeff AMDX2 = 0.0211155472526 /Astrometry: GSC1 Coeff AMDX3 = -51.2853793598 /Astrometry: GSC1 Coeff AMDX4 = 6.20590125033E-006 /Astrometry: GSC1 Coeff AMDX5 = -2.60563128447E-005 /Astrometry: GSC1 Coeff AMDX6 = -4.95957429921E-006 /Astrometry: GSC1 Coeff AMDX7 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX8 = 2.13587329349E-006 /Astrometry: GSC1 Coeff AMDX9 = -1.73709152358E-008 /Astrometry: GSC1 Coeff AMDX10 = 2.40110532330E-006 /Astrometry: GSC1 Coeff AMDX11 = -1.11949948907E-008 /Astrometry: GSC1 Coeff AMDX12 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX13 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX14 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX15 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX16 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX17 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX18 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX19 = 0.000000000000 /Astrometry: GSC1 Coeff AMDX20 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY1 = 67.2705676757 /Astrometry: GSC1 Coeff AMDY2 = -0.0204946917821 /Astrometry: GSC1 Coeff AMDY3 = -186.840773032 /Astrometry: GSC1 Coeff AMDY4 = -1.69337688809E-005 /Astrometry: GSC1 Coeff AMDY5 = -2.84331831211E-006 /Astrometry: GSC1 Coeff AMDY6 = -1.85507819229E-005 /Astrometry: GSC1 Coeff AMDY7 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY8 = 2.08086317165E-006 /Astrometry: GSC1 Coeff AMDY9 = -7.54241041974E-009 /Astrometry: GSC1 Coeff AMDY10 = 2.38259906592E-006 /Astrometry: GSC1 Coeff AMDY11 = -2.12057887010E-009 /Astrometry: GSC1 Coeff AMDY12 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY13 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY14 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY15 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY16 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY17 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY18 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY19 = 0.000000000000 /Astrometry: GSC1 Coeff AMDY20 = 0.000000000000 /Astrometry: GSC1 Coeff AMDREX1 = 67.2502415124 /Astrometry: GSC2 Coeff AMDREX2 = 0.0203790635350 /Astrometry: GSC2 Coeff AMDREX3 = -51.2677319440 /Astrometry: GSC2 Coeff AMDREX4 = 1.13997221372E-005 /Astrometry: GSC2 Coeff AMDREX5 = -1.29903134105E-005 /Astrometry: GSC2 Coeff AMDREX6 = -5.49716024574E-006 /Astrometry: GSC2 Coeff AMDREX7 = 0.000000000000 /Astrometry: GSC2 Coeff AMDREX8 = -2.56602671902E-007 /Astrometry: GSC2 Coeff AMDREX9 = -2.81036142770E-008 /Astrometry: GSC2 Coeff AMDREX10= 3.64259529443E-009 /Astrometry: GSC2 Coeff AMDREX11= 7.64826733095E-010 /Astrometry: GSC2 Coeff AMDREX12= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX13= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX14= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX15= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX16= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX17= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX18= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX19= 0.000000000000 /Astrometry: GSC2 Coeff AMDREX20= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY1 = 67.2654830394 /Astrometry: GSC2 Coeff AMDREY2 = -0.0202185038581 /Astrometry: GSC2 Coeff AMDREY3 = -186.818407761 /Astrometry: GSC2 Coeff AMDREY4 = 5.90151677039E-006 /Astrometry: GSC2 Coeff AMDREY5 = -6.63727042838E-007 /Astrometry: GSC2 Coeff AMDREY6 = -1.00272525425E-005 /Astrometry: GSC2 Coeff AMDREY7 = 0.000000000000 /Astrometry: GSC2 Coeff AMDREY8 = -3.07885327999E-007 /Astrometry: GSC2 Coeff AMDREY9 = -9.78334551569E-009 /Astrometry: GSC2 Coeff AMDREY10= -2.56955212773E-008 /Astrometry: GSC2 Coeff AMDREY11= -1.94842661290E-008 /Astrometry: GSC2 Coeff AMDREY12= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY13= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY14= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY15= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY16= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY17= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY18= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY19= 0.000000000000 /Astrometry: GSC2 Coeff AMDREY20= 0.000000000000 /Astrometry: GSC2 Coeff ASTRMASK= 'xe.mask ' /Astrometry: GSC2 Mask WCSAXES = 2 /GetImage: Number WCS axes WCSNAME = 'DSS ' /GetImage: Local WCS approximation from full platRADESYS = 'ICRS ' /GetImage: GSC-II calibration using ICRS system CTYPE1 = 'RA---TAN ' /GetImage: RA-Gnomic projection CRPIX1 = 71.000000 /GetImage: X reference pixel CRVAL1 = 349.728797 /GetImage: RA of reference pixel CUNIT1 = 'deg ' /GetImage: degrees CTYPE2 = 'DEC--TAN ' /GetImage: Dec-Gnomic projection CRPIX2 = 71.000000 /GetImage: Y reference pixel CRVAL2 = 5.404938 /GetImage: Dec of reference pixel CUNIT2 = 'deg ' /Getimage: degrees CD1_1 = -0.0004722897 /GetImage: rotation matrix coefficient CD1_2 = 0.0000000404 /GetImage: rotation matrix coefficient CD2_1 = 0.0000000607 /GetImage: rotation matrix coefficient CD2_2 = 0.0004724376 /GetImage: rotation matrix coefficient OBJECT = 'data ' /GetImage: Requested Object Name DATAMIN = 2919 /GetImage: Minimum returned pixel value DATAMAX = 12833 /GetImage: Maximum returned pixel value OBJCTRA = '23 18 54.950 ' /GetImage: Requested Right Ascension (J2000) OBJCTDEC= '+05 24 18.42 ' /GetImage: Requested Declination (J2000) OBJCTX = 7222.16 /GetImage: Requested X on plate (pixels) OBJCTY = 4193.89 /GetImage: Requested Y on plate (pixels) END u6cI / / m m @@ZZ &@ZZ  ..[u.. A A  }}7cc   77   77   II u ucc  @Z@@ & &  cc ll Ic....uu[[[[ 7 Ic}}c I I Icc d d 77   IIII u [ uII   @ZZZ & &.  I I llll /I u u ..[[ [[[[ m m  7 Icccc Icc I I ~~ 7777IIII u [ uII   / / &@ m S m m@Z & &@@Z@  +llll  [[[ A [[ m   cccccccc  777777I / u ucIII  II &@ m m m@Z & &@@Z@   +llll  uu[ A A A m      cccccccc   777777I / u u uI / / / u u 77((((111K11TT ' '' TT'' TT  1  w   9  9      f ]]]]00gg 3 3 qq ** **** Wq W = W W E E2((((11 111TT   ''' TT'' nn  111  w/ ''9  9  99   ]]]] MM MM qq ** DD** qq W W W E E BB  11TT   : :        TT TTTT     wnnTT    9999 L L   9S  ]]]] o o 3 3  ** *D*  qqqq W W qq __ (( 11TT TT        : : TTTT  11 ]wTTTT    9999 99 9' ]]]] 3 3  ** *D*  qqqq W W  __ T T Tnnnn K1 'A'      :T : : TT  : : 11   f f  99 f f f   9Sw] C C C]] C 3 3 qq q W ** DD 2 T T Tnnnn T  1   '      Tn : : TT  : : 11  9999 f f   9w] C C]ww]MM!!!qq q W   ** 1111          Tn : : : : A'  TT w ] C C : :     99    f f  ] C C]]www!!!! *Dqqqq W  DD **DD 1111            Tn : : : :   A'''TT w ] ] ]TTAAAA f f99     ] C]ww]]] !! *qqqq ** ****  (B T TT : :T   TTww 11w ] ww ] ]     J0    ]]]] o   z zgg z z!!!!MMM 3 z z<< h(B : : T : :T TT ] ]  w ]  ww ] ] '''' ww8dJ      ]]]] o  gg z z!!!!MMgM<<\\n TTT : :T' TT  1wwww  wwwwww :T''www0 f f]]]]99  ggMM z ` !!MMMg!!!!<<VV\\ TTT : :T' TT 1 ] ] ] ] ww ]wwww nT  ww0 f f]]]]99  !!!!MMMM z ` z z z z z z!!g 3 3M!!!!<<VVnn    ''  ww eK1111''   99 00] C 9S Mggg ` ` z z! z zM 3  hnn     '' f f    wwK1  11     99   ''00] C Sm 3MMM  z z z z! z zM 3 h h  ''    '''  ] ] C C ] ] wwww ww1111  f   wwwwww C C9999]]]]  !! gg   h      ''        wwww ] ]ww ww  11    wwwwww ]]99SS C C C C  f !! 3 3 N h  : : TT   11   wwwww ] ]   BB BB 0000000 1 1 ((nn << h)) 2 <<<< 2 x x x : : TT f  1111 wwwww   BB BB 000 KK ((nnVV h 2VV<< 2 ^ x x xTTTT Tn  TT    ww    TTB ( BBB (00000 0K 1 1 1((n<<<<VpV< 222 VV_ x x xTTTT Tn  'nn''   ww   ''TTB ( BB\B00000 0K 1KK((n <<<<VpV<222 VV_ eK x xTTTT  nT TTnn'    w ] ]w1    TT   o o BB00000  xB( h hVV<<<VVV___y2   e x x xTTTT'' nTTTTT'    w ]w1    TT   o o BB0JJ00  xB( h h<< " " "<VV___y2)e x ^ x x TTnTTnnn   ww ] ] ww 11     BBBBBBJJJ0 0000\Bnn h h<<<<V< y_  22Ke x x x : : nTTnnn   wwwwww ] 11 ''00 ( (BBBBJ~~d 00JJ009\Bnn<<<<V< y_  q   \Bnnnn : : : :'AA'  1111  '    TnTT 111K999 ff[6.99ww]]]w KK  22 " "<< " " __ \Bnn : : : : 'A'  1111'''    Tnnn 111Kff999 ffuE%$99]]]]]w KK   22 " " " " " " __ (Bn T TT ''  ww1111''     1111     f 'j%.)} ]ww] ]weKeK  y_2 " "< " 22 E E E_B\ n T TT''   ww1111''     1111      f '6(c%. ]ww] weK   y_2<<V< 22 E E E_7 TTnnnT TT11 ] ] ''       ww1111 ff  L L f. J0]] 1 1 nn nn <<  h E_  TTTTnT : :11 C C ''       ww11119 L L Lf. 0JwwKK nnnn <<  h E_  (( nn  T : TTTTTT : :11 C C  T : ''ww    f L Lfff   0000 1Knnn << " "__22LLVV ____  E((   T : TTTTTTTT11 ] ]  T :   ww   f Lfff    JJ9Ken nn h h " " " "__ 22<< ____ q q  E f L f f  999S f f f ]] f f   ]]00ww ]]]]ffffBB0ffffffffff q !  N Nhh pV < < <V f f f  999S]]  f f  ]]ww C C]]99ffff\\0ffffffffff q ! N N N NpV < < <V ff f99  99 f f99' ww]]]]  f f f f0 ]]ww ]]ffBB000   ff 9 f    VVVV VV ff f99     f f99  fww]] ]]  f f f f0 ]]00ww C C BB000   ff 9f    VVVV VV ff  f   f9   ]] f f  ]] ]]0000 C ) ) ) Lf  \vmS ffff 99^^;; * VV D * *  * ff f f  99 fS9  ]]  ]] ]]0000w] C C Lf    vS9 ffff SS22^^;; * VV ^DD * *9f Lff f f99SS f    C C]] ' L f ]]]w0w]]S9f9999^^ hhVV  ^^  fff f f f f99SS    ]]]]   f ]]]w0]www S99999^^ hh9VV i DD ffff  9999  99 SS ]]wwfffff  mmJ0BB00002222 hh yy _ _ y _ N N Nffff  99 99 99 SS  ww00ww00ffmmJ0BB hh y _ _ y _ N N Nffff  9999 S9  9Sm]]00JJJ000 SmdJBB2h N hh  _ _yyyy N N ffff  f 99    S9  99S C C00JddJ0 00 99mdJBB00L2h hh yyyy _ _yyyy N N L L Lff L    9mSSS9  f f  S9 wwww]]wS9 0Jv\^^D^hh  3yy 3MM3!! ff L Lff     9 S9 f fSSS9 'mS  wwww]]wmS 00Jv\DDD^hh 3Myy MggM!! L L  99   f 9999999 99 f f ]www]]]]mmdJ0\\\\^^D^U;;;33MM33 yygg hff  SS'' 99999   99 f f f  C]]] C C 00]]S  Sm~J0vvvvDDD^U;;;3333   yyMM N11 C C   KK  x x x xw]]] 99 999B( nnAA'mS00\v7~dJvvvvvv33 MM3M q 11  C C    KK 99 x x w]]] 99B(nn 'Am00v7~dJvvvvvvMM ggM3 qK1  C]00 KKKK99 C C]w]] f SSeeBBn''''SSJJkv00vv\\MMMMpp _yMM  q q K1  ]w00 KKKK ]]]www SSee\\n''  SSJJ\\\\MM33pp** _yyyMM   11 www0 ww'' 9999KK x KKJ0  99KKKKeee/SS  '' Nkd~JJMM Vppp****333  3 33   wJ0 ]]   99   ee x KKJ0 99KKKKKKKeI/nnSS  '' ?4~ dd33 VpVV**MM3  3 MM JJ f fS9 1KKeJ0 ]]   f9999 1 1 1ennn99Sm%YN!`Q %~dJJJv3MMMVV *DMM 33 _ E  ww00 f f f9  KeKe0 ]]   f9999  1 1 1 1nnSSSmY$ Y?~dJJJMgggVV *DMM 33y _  : : ]]]] f f  KKnn T  9999((((99Smmj $n"``?%Q77::***DV <**pVVphh TT 00]]]]  f f  x x KKn  99SSBBBB999S P":&$JzzsYQv::yy***DV <  *DpVVph NhTT ''000    KK (( L L L L9S 999PP_ $(I%!!,7\\:  **VVVVVVpV  Nhh : :        KK ((/ f f  f f 9 999.. y!'/*}(%#U!`F,Q\\ **VV pp < <V <  Nhh  ''  ]]    1KK 1 nn(( f   (B9Wq! $n)c+)&8"] ),Q7vggpVVV VVVV   h N !''''  C C    KeK 1 nn((  f    B\96P !#T&*},,)%#w" ,Q7vggpppVVVV h !    Keee 1 1 nn(( SS99   SS99((\B9SmS9S[WW #%')-..{+-'&$"!;F,kQTTpppppp pph    f f f f KeKKKK T T(( 9999   SSSS((\B99SSm[=q# &)),$./.{-a+-*(%%# o!,k::ppVV pp**  VVhff ]]    x x    T Tnnnnnneeee  mSSSG{{ #B&),-r.///=/=- - *(%!xP +<VppV<VpV< g **** W W  f ]]00   x x(( nnnnnneeee   mSSS-a{{#&),.F.////=/=/=/=- *&" $ +<VppV<<VpV Mg     W W  q   ]] 00 x xB( nn nnnnS9 mmSSSm.-aa{i"%S(7+-.//0303/=/=/=/=.+b).%!_Ec/pVVVpppVVVgM 3 3  *qqqq D   ]] 0J000 xB( T T nn x S9SSmmm.-aa{#&m)Q,.//////=/=/=/=.-*H&$  !3IppppppVVVgMMM  * ^   ]]  ww x xKKnn BBB(e mm !1#e&*,////`/`/`/`////..- )&%v%v(+>%w]]]ppp *DqDDDD ]]w] ee\\\B99& .Hb  #WWW #e%&'*,5-O/////`/`/`/`///////=.#,*,-,-r*$# G-\Q\(D^qDD^^999]]]] ] C CwR8KKeeBB\\\\v\\\999S&& .|#=2 #e%&'**,/////`/`/`/`/////=/=.-+)Q)Q)Q&$_8ww11F%oBDDx99SS9]]]] ] C]  1 1KKnnnnBB\\BB\BBB9 mmmHb|{ "K#(Z+-///`/`/`/`/////=/=-*H&#" w)]wCB$Uv**^ 00 ++ . KK nnnne SmSS00JJGa"D"$) +,X.//`/`/`/`///=/=..+b(#!Ty +1I} y_ '[ ^***     " .+/E$Ab KK  nnnnKe SmSS00JJw-G ^"&*$-r./`/`/`/`///=/=.,|).%!T yE!% +:y_ q**DD    ''H x KKnn nnn T (BBnneeeeeeSSJJJJww-G ^"%/(}+>-r../`/`0W/=/=.#- *($9 :> +C)CCpr#c E E qqqqDDqq  q 000 b= x KKnnnnn T (BvneeeemmJJJJww-iDD $'*$,./`/`0W/=.#- *(&m" $C)CC<__:qq** qq  \\BB 0 99'AA' KKB(nn T TB(999Sm'  ZZt< !T$'+>-r./.-+)&$"E+CCCC)y:T ***   D\\ ( ( 0    KK(  T T T TnB(S999SSSm   @@Zt" !T$'*$-r.-*H'%S#!x+CCCC)yyyy : DDD*  D B\   f f KK (( T T T T n999SS JJJ~&@@t"!$'+-- (%S# ^**j6u[yyy qqq^^^DD*** (B  f f  KK (( nnnnSS  00JJ @t{y :#'c+*&m# Du[__y_ W WqxxD*   nn T T T T T T wwww  C C C C]]]]    '  '.Pj==Wq L%*6) +# :rXt@@eeC]lw __qq W W W W U! VVV  nnnn T T wwww  C C]] C C C C    '  '  '6P##=W#(&!TX>t@&&C]RG__qq W Wqq !! VVp        T Tnnn T nn]]]] ]]  00 'SS ' 'A[|=W!&["_EZ&  eC]822y_ qqMMMM pp     ''  T Tnnn T nn]] ]] 00]]  SS ' A[AuuuHb #$' _+Z&e)CC22y_ qqMMMMpp nnBB  ((((  w]  SmmS 'SSmmAA 'm.[u|q gX$}}}888R8VVVV<<__qq gg z zVppp TTBB ((((  w]  f f9SmS 'SSSS'' 'A[Hb#> +}cII8R8ppVV " "__22qqqq  MM z z <VVV : : ((nnn((BB((0 ]]]] C C  00       ' ff 'AA q}cI//VVVV "<2222qqqq ! <VVV : :  BBnnnBBBB((0 ]]]]]] 00  '  '' A'ff ''mW}cII///88VVVV<V22qq !!Vppp*nT (  nnn C C]w ]] C C ]w ''9  ''SS00  88[[)pVV<  h h**qqqqMMnT (  nnn T T T C C]w ]]]] C]''S9   99005&88nnAA pVV< h h h**qqqqMMTn  B(((nn T Tnn T T ]]00wwww0 C C]] S9SS  999900vvvv?s& nn''  <<VV<< ** qqM 3 MM 3 :T  (BBB T Tnnnn ]] 00]] ]] 0 C C]] f fSm' SS99vvvv%Y nnAA <<VVVV**qqM 3 MM  3TTTT f f 'n BBBB T T ((]] ) C]]]]  ]] 9mS9 vvB\kt@ ennVV qqq 3MMM _nnTT 'n (((( T T ((]] C]ww]] 000]]009SS#mS  vv\vvQ@  ennnnVV)qqq Mggg _TT  'n T  C C C]ww]]]] 0000SSSSSS  vvvvvveKKKeKnTVV h h  qqDD gggg3333 _ TT  'n T  ]]]wwwwwww0000 99SSSSSS  vvvvvve111KKKnTVV h h  W W ** ggMM3333 _ \\  99mm     000Jw] 0 xKK KKeK11KeKeKKKKnnnn^^^^^D * *!!!!!; < <pV  q BB  99SS  0] C 0 xKKKKK 1 xeeK1KeKKKKnnnn^^^^^DDD!!!!;UVVpV  q \BB\00]]] C 999999 f f  w] C C000   ee118RTTnn'' ^DDD ;; pppVVV q\BB\00]]] C 999999 f f   w] C C 00  ee 11 8RTTnn'' x^DD z z !!  VVVppp\\BB C C    f f  ww 0]] 1 1KeeeKKeeeew 1111KK u[nnnnnnnT  'xDDD   z z !! < < ***  BBBB]]   f f  ww 0]] 1 1KeeeKKeeeew111111[ATTnnnnnT 'xDDD!!    < < ***  BB]wwwww 99  f f ]]]]]]00  eeeeKK KeeeKK 1KKK111K nT x^;;;!  <V ^ \\ C]]]]]99  f f C C C C C C   eeeeKK 1KKKKK  1KKK111Kn ^D;;;!  <V**  D o00 ]]9  SS f9999 ]] SSeKKeKK KK111KKK www'''Ann^^^DDD DD33 y _ y _ y!! o o0J0]]S9 SS f f9999]] 99K 1Keee 9KK111KKK ] ] w''' nn^^^D^^DDMMy y _ _y!! o oJ0]]99 f f 00]] SS 1KKKK 1 x11Ke w88''nnD * *D^^^DDD  _y;!! o o0 ]] 99 f f  ]] 99 1KKK 1  xKKew88  nnD * *DDDD * * * _yU;   f f f  ]www] C C C9  xK 1 x x KeeKKKKe K1  q^^  q qMM333    _yhh N  f f f  0]w]]] C C C 9  xK 1 1KeeK1 KKKeK1  qDD  q qMMMM3    y _ N N h BB  f f SS   ]] C] C C   eKKK9KKeeKeK11111KK1K'   q q D * * * q q q q 33MM 3333yyy BB   f f SS f  C C C]]]   K 1KK9KKKK 1KK11111KK1K'   q q D *DD q q  33MM33   _ _y (B C C C C ]]    1 1 1Knnnn 00 SS9  C]w] C C      ] ]wwww ] ] TTwwwwKKKe * *  q q  _ E MgD* B ( ]]]] ]]    1 1 1Knn T T 000  f f999  C]]w C C     wwwwww ] ] TT wwwwKKKe8DD q q y _ 3M* o BBB\]w]]]]    x KKnn T T 00   ]] ]w    ww TTTTKKKKKe^D S  * o ( ( (B]www]]     x KK T T T T 000  99]] ]w     : : :n11KKK1 ^D b# q   * BBBB 00S9999999KKKK : :  (B00     0099 eK     ww KKww *Db# q yy 33 yyyy * BBBB S9999999KKKK T T ( 00   00099  K1   ''ww KK  *^922 q yyMMyyyy   o BB\\ 9S9999eeKKKK g g ) C]]00  990000J9S' 11    'AAu[ KKw ^^ q qy _ MM33yyyy  o BB\\ 99999eeeeKK  C] C C  99 000JSmA' 1111   'Aul 11w ^^ y _ 3333yyyy B\\\0    99nnn 1 1  99 0J wwww  '''''MP  ''  DD q  VVVV (B\\ 999999 nnnKK  99 0wwww]] '''''$,-,&6  AA DD   VV < < BB BB SS999  T TneK SS99  0JJwwww   SS'A  ''/!.F12!,!T' AA q q^^2 qVVV < VV  33MBB BB009999 9  T T nK 1  9999  000 wwww 99'A''''/".F11-!T' AA q q^^ 2 qppV < pp3333M o o]]   f  nnnnBB x x  f f]w C C f f f f f f  [j"n-,0z0z(_['TT[A'AAA q q q qDDDDDD* *ppVV M o oww  ' ''BB x x  f f ]w C C  f f 'A#B((![''TT/u[A''' q q q qDD DDDD **ppVV M ]]  nn(( x x    f f ]] C] ]]' ''  TTA'[r!A'' n'A q q q q D^**** VVyy g o o  ]] f f  nn (( x x  f f]] C] ]] f f''  TTA''A>}[A'' n[A q q q D^** VV _ _ g L L    ]] nn ((eeK 1>X> $  jaa  aa,FFFsssOO  55{{aaVOO 'q2222 pV<< h    ;ff    ]] nn ((eeeK>XX> j P G G  {{F,FFsssOO## | | 5 aaaa OO^9$%+ 22 V<<<  h h h!!!ff    C]]] nn(( eeeK>X  GaaaF, sssiiiO#     a{iD'--) *____ < " "< h h  h !ff9  w]]]BBKKeK>X j j GaaaF, sssiiiO | | #5   a{*DH)/[1I1I0/)Hx____< " "<    !ff    ]w]]BB  j j j j ssssssiiiO | |aaaa <**^%-1I1I1I0.%+A2fL22))  "< !! ff  ]w ]]((  x x j j j j ssssssiiiO55{{{{Vx'/0/0/0/1/'_uLfLL    < "    z z  00]]]w ]]BBB( x x j j j j 55 G G ssss  #5555 5{e"5 |^x'",0/000.$'=LLy_ E h h )<<  h h !  ]]]w]] BBB( x   G G ssss  55555O)$D*[%+,//.'[=#22y_ E_ h h ))VV) h h!; XTENSION= 'TABLE ' / ASCII table extension BITPIX = 8 / 8 bit bytes NAXIS = 2 / 2-dimensional ASCII table NAXIS1 = 24 / Width of table in bytes NAXIS2 = 1600 / Number of rows in table PCOUNT = 0 / Size of special data area GCOUNT = 1 / one data group (required keyword) TFIELDS = 4 / Number of fields in each row EXTNAME = 'xe.mask ' /FITS: Name of Table TTYPE1 = 'XI ' / TBCOL1 = 1 / TFORM1 = 'F6.2 ' / TUNIT1 = 'DEGREES ' / TTYPE2 = 'ETA ' / TBCOL2 = 7 / TFORM2 = 'F6.2 ' / TUNIT2 = 'DEGREES ' / TTYPE3 = 'XI_CORR ' / TBCOL3 = 13 / TFORM3 = 'F6.2 ' / TUNIT3 = 'ARCSEC ' / TTYPE4 = 'ETA_CORR' / TBCOL4 = 19 / TFORM4 = 'F6.2 ' / TUNIT4 = 'ARCSEC ' / END -3.12 -3.12 0.16 0.19 -2.96 -3.12 0.04 0.25 -2.80 -3.12 -0.16 0.30 -2.64 -3.12 -0.34 0.33 -2.48 -3.12 -0.49 0.36 -2.32 -3.12 -0.60 0.39 -2.16 -3.12 -0.69 0.38 -2.00 -3.12 -0.73 0.32 -1.84 -3.12 -0.81 0.19 -1.68 -3.12 -0.86 0.11 -1.52 -3.12 -0.88 0.05 -1.36 -3.12 -0.86 -0.11 -1.20 -3.12 -0.83 -0.16 -1.04 -3.12 -0.79 -0.13 -0.88 -3.12 -0.76 -0.26 -0.72 -3.12 -0.68 -0.41 -0.56 -3.12 -0.57 -0.48 -0.40 -3.12 -0.44 -0.52 -0.24 -3.12 -0.28 -0.51 -0.08 -3.12 -0.10 -0.46 0.08 -3.12 0.03 -0.47 0.24 -3.12 0.13 -0.52 0.40 -3.12 0.33 -0.59 0.56 -3.12 0.50 -0.54 0.72 -3.12 0.55 -0.43 0.88 -3.12 0.55 -0.34 1.04 -3.12 0.57 -0.30 1.20 -3.12 0.66 -0.21 1.36 -3.12 0.73 -0.11 1.52 -3.12 0.75 -0.02 1.68 -3.12 0.65 0.10 1.84 -3.12 0.59 0.18 2.00 -3.12 0.50 0.22 2.16 -3.12 0.38 0.30 2.32 -3.12 0.21 0.40 2.48 -3.12 0.10 0.39 2.64 -3.12 0.00 0.35 2.80 -3.12 -0.14 0.29 2.96 -3.12 -0.36 0.23 3.12 -3.12 -0.47 0.19 -3.12 -2.96 0.18 0.08 -2.96 -2.96 0.09 0.17 -2.80 -2.96 -0.06 0.27 -2.64 -2.96 -0.20 0.34 -2.48 -2.96 -0.36 0.35 -2.32 -2.96 -0.48 0.35 -2.16 -2.96 -0.55 0.35 -2.00 -2.96 -0.61 0.26 -1.84 -2.96 -0.66 0.13 -1.68 -2.96 -0.70 0.09 -1.52 -2.96 -0.72 0.02 -1.36 -2.96 -0.70 -0.10 -1.20 -2.96 -0.66 -0.16 -1.04 -2.96 -0.65 -0.20 -0.88 -2.96 -0.61 -0.28 -0.72 -2.96 -0.57 -0.39 -0.56 -2.96 -0.46 -0.43 -0.40 -2.96 -0.35 -0.45 -0.24 -2.96 -0.25 -0.44 -0.08 -2.96 -0.11 -0.42 0.08 -2.96 -0.01 -0.41 0.24 -2.96 0.10 -0.47 0.40 -2.96 0.21 -0.47 0.56 -2.96 0.36 -0.45 0.72 -2.96 0.41 -0.39 0.88 -2.96 0.45 -0.33 1.04 -2.96 0.51 -0.26 1.20 -2.96 0.57 -0.21 1.36 -2.96 0.61 -0.14 1.52 -2.96 0.59 -0.06 1.68 -2.96 0.54 0.06 1.84 -2.96 0.48 0.15 2.00 -2.96 0.40 0.21 2.16 -2.96 0.29 0.30 2.32 -2.96 0.14 0.37 2.48 -2.96 0.06 0.32 2.64 -2.96 -0.08 0.27 2.80 -2.96 -0.21 0.23 2.96 -2.96 -0.37 0.17 3.12 -2.96 -0.49 0.13 -3.12 -2.80 0.32 -0.01 -2.96 -2.80 0.24 0.04 -2.80 -2.80 0.11 0.16 -2.64 -2.80 -0.00 0.26 -2.48 -2.80 -0.16 0.27 -2.32 -2.80 -0.30 0.25 -2.16 -2.80 -0.42 0.22 -2.00 -2.80 -0.45 0.16 -1.84 -2.80 -0.46 0.09 -1.68 -2.80 -0.46 0.03 -1.52 -2.80 -0.49 -0.06 -1.36 -2.80 -0.49 -0.15 -1.20 -2.80 -0.46 -0.22 -1.04 -2.80 -0.42 -0.25 -0.88 -2.80 -0.42 -0.33 -0.72 -2.80 -0.37 -0.36 -0.56 -2.80 -0.31 -0.37 -0.40 -2.80 -0.26 -0.36 -0.24 -2.80 -0.21 -0.34 -0.08 -2.80 -0.12 -0.31 0.08 -2.80 -0.04 -0.31 0.24 -2.80 0.01 -0.30 0.40 -2.80 0.07 -0.30 0.56 -2.80 0.17 -0.31 0.72 -2.80 0.25 -0.31 0.88 -2.80 0.31 -0.27 1.04 -2.80 0.37 -0.24 1.20 -2.80 0.41 -0.19 1.36 -2.80 0.41 -0.18 1.52 -2.80 0.38 -0.11 1.68 -2.80 0.35 -0.02 1.84 -2.80 0.32 0.07 2.00 -2.80 0.27 0.16 2.16 -2.80 0.16 0.24 2.32 -2.80 0.05 0.29 2.48 -2.80 -0.03 0.22 2.64 -2.80 -0.15 0.16 2.80 -2.80 -0.31 0.14 2.96 -2.80 -0.47 0.11 3.12 -2.80 -0.55 0.02 -3.12 -2.64 0.50 -0.08 -2.96 -2.64 0.45 -0.01 -2.80 -2.64 0.31 0.04 -2.64 -2.64 0.13 0.08 -2.48 -2.64 -0.01 0.12 -2.32 -2.64 -0.18 0.13 -2.16 -2.64 -0.30 0.09 -2.00 -2.64 -0.32 0.08 -1.84 -2.64 -0.31 0.05 -1.68 -2.64 -0.32 -0.02 -1.52 -2.64 -0.33 -0.15 -1.36 -2.64 -0.33 -0.24 -1.20 -2.64 -0.28 -0.26 -1.04 -2.64 -0.27 -0.25 -0.88 -2.64 -0.24 -0.28 -0.72 -2.64 -0.22 -0.28 -0.56 -2.64 -0.20 -0.28 -0.40 -2.64 -0.21 -0.27 -0.24 -2.64 -0.19 -0.23 -0.08 -2.64 -0.12 -0.21 0.08 -2.64 -0.07 -0.18 0.24 -2.64 -0.06 -0.15 0.40 -2.64 -0.03 -0.14 0.56 -2.64 0.05 -0.18 0.72 -2.64 0.13 -0.18 0.88 -2.64 0.16 -0.17 1.04 -2.64 0.19 -0.16 1.20 -2.64 0.23 -0.15 1.36 -2.64 0.21 -0.10 1.52 -2.64 0.20 -0.09 1.68 -2.64 0.19 -0.05 1.84 -2.64 0.21 -0.03 2.00 -2.64 0.14 0.07 2.16 -2.64 0.07 0.16 2.32 -2.64 -0.02 0.20 2.48 -2.64 -0.11 0.16 2.64 -2.64 -0.25 0.12 2.80 -2.64 -0.37 0.04 2.96 -2.64 -0.50 -0.09 3.12 -2.64 -0.55 -0.19 -3.12 -2.48 0.59 -0.19 -2.96 -2.48 0.53 -0.12 -2.80 -2.48 0.40 -0.04 -2.64 -2.48 0.21 -0.05 -2.48 -2.48 0.04 -0.04 -2.32 -2.48 -0.06 0.02 -2.16 -2.48 -0.11 0.04 -2.00 -2.48 -0.16 0.02 -1.84 -2.48 -0.20 -0.01 -1.68 -2.48 -0.23 -0.05 -1.52 -2.48 -0.22 -0.15 -1.36 -2.48 -0.18 -0.20 -1.20 -2.48 -0.14 -0.18 -1.04 -2.48 -0.12 -0.13 -0.88 -2.48 -0.10 -0.11 -0.72 -2.48 -0.09 -0.13 -0.56 -2.48 -0.11 -0.17 -0.40 -2.48 -0.17 -0.17 -0.24 -2.48 -0.16 -0.16 -0.08 -2.48 -0.12 -0.15 0.08 -2.48 -0.10 -0.10 0.24 -2.48 -0.10 -0.06 0.40 -2.48 -0.07 -0.03 0.56 -2.48 -0.01 -0.04 0.72 -2.48 0.01 -0.04 0.88 -2.48 0.01 -0.02 1.04 -2.48 0.01 -0.00 1.20 -2.48 0.02 0.01 1.36 -2.48 0.03 0.02 1.52 -2.48 0.04 0.04 1.68 -2.48 0.09 -0.02 1.84 -2.48 0.08 -0.05 2.00 -2.48 0.03 0.01 2.16 -2.48 -0.05 0.13 2.32 -2.48 -0.10 0.15 2.48 -2.48 -0.17 0.11 2.64 -2.48 -0.31 0.08 2.80 -2.48 -0.42 -0.06 2.96 -2.48 -0.51 -0.26 3.12 -2.48 -0.53 -0.40 -3.12 -2.32 0.57 -0.35 -2.96 -2.32 0.51 -0.25 -2.80 -2.32 0.37 -0.14 -2.64 -2.32 0.19 -0.09 -2.48 -2.32 0.10 -0.05 -2.32 -2.32 0.05 0.00 -2.16 -2.32 0.04 0.04 -2.00 -2.32 -0.04 0.02 -1.84 -2.32 -0.10 -0.02 -1.68 -2.32 -0.10 -0.02 -1.52 -2.32 -0.03 -0.02 -1.36 -2.32 0.01 -0.02 -1.20 -2.32 0.05 0.01 -1.04 -2.32 0.04 0.05 -0.88 -2.32 0.03 0.02 -0.72 -2.32 0.01 -0.06 -0.56 -2.32 -0.02 -0.08 -0.40 -2.32 -0.06 -0.11 -0.24 -2.32 -0.07 -0.13 -0.08 -2.32 -0.08 -0.15 0.08 -2.32 -0.08 -0.12 0.24 -2.32 -0.07 -0.08 0.40 -2.32 -0.04 0.00 0.56 -2.32 -0.05 0.06 0.72 -2.32 -0.09 0.08 0.88 -2.32 -0.12 0.10 1.04 -2.32 -0.16 0.15 1.20 -2.32 -0.16 0.18 1.36 -2.32 -0.15 0.17 1.52 -2.32 -0.08 0.15 1.68 -2.32 -0.02 0.07 1.84 -2.32 -0.01 0.01 2.00 -2.32 -0.08 0.08 2.16 -2.32 -0.13 0.14 2.32 -2.32 -0.17 0.14 2.48 -2.32 -0.21 0.06 2.64 -2.32 -0.30 -0.01 2.80 -2.32 -0.43 -0.13 2.96 -2.32 -0.49 -0.33 3.12 -2.32 -0.52 -0.44 -3.12 -2.16 0.52 -0.44 -2.96 -2.16 0.44 -0.38 -2.80 -2.16 0.28 -0.25 -2.64 -2.16 0.14 -0.13 -2.48 -2.16 0.11 -0.02 -2.32 -2.16 0.07 0.04 -2.16 -2.16 0.06 0.07 -2.00 -2.16 0.03 0.06 -1.84 -2.16 0.04 0.09 -1.68 -2.16 0.09 0.13 -1.52 -2.16 0.15 0.15 -1.36 -2.16 0.19 0.15 -1.20 -2.16 0.19 0.17 -1.04 -2.16 0.16 0.14 -0.88 -2.16 0.11 0.06 -0.72 -2.16 0.06 -0.02 -0.56 -2.16 0.05 -0.06 -0.40 -2.16 0.04 -0.07 -0.24 -2.16 0.01 -0.09 -0.08 -2.16 -0.02 -0.13 0.08 -2.16 -0.03 -0.12 0.24 -2.16 -0.03 -0.08 0.40 -2.16 -0.05 0.00 0.56 -2.16 -0.09 0.07 0.72 -2.16 -0.15 0.14 0.88 -2.16 -0.19 0.16 1.04 -2.16 -0.22 0.24 1.20 -2.16 -0.26 0.29 1.36 -2.16 -0.26 0.31 1.52 -2.16 -0.20 0.26 1.68 -2.16 -0.13 0.17 1.84 -2.16 -0.12 0.11 2.00 -2.16 -0.14 0.13 2.16 -2.16 -0.15 0.15 2.32 -2.16 -0.14 0.06 2.48 -2.16 -0.20 -0.00 2.64 -2.16 -0.30 -0.08 2.80 -2.16 -0.39 -0.21 2.96 -2.16 -0.46 -0.36 3.12 -2.16 -0.45 -0.46 -3.12 -2.00 0.48 -0.50 -2.96 -2.00 0.36 -0.42 -2.80 -2.00 0.22 -0.31 -2.64 -2.00 0.13 -0.19 -2.48 -2.00 0.07 -0.08 -2.32 -2.00 0.05 0.04 -2.16 -2.00 0.03 0.09 -2.00 -2.00 0.10 0.14 -1.84 -2.00 0.17 0.21 -1.68 -2.00 0.22 0.25 -1.52 -2.00 0.26 0.25 -1.36 -2.00 0.25 0.22 -1.20 -2.00 0.24 0.21 -1.04 -2.00 0.20 0.17 -0.88 -2.00 0.13 0.11 -0.72 -2.00 0.08 0.04 -0.56 -2.00 0.07 0.01 -0.40 -2.00 0.07 -0.01 -0.24 -2.00 0.04 -0.04 -0.08 -2.00 -0.01 -0.07 0.08 -2.00 -0.02 -0.05 0.24 -2.00 -0.08 -0.03 0.40 -2.00 -0.11 0.01 0.56 -2.00 -0.15 0.07 0.72 -2.00 -0.17 0.13 0.88 -2.00 -0.20 0.17 1.04 -2.00 -0.22 0.24 1.20 -2.00 -0.27 0.32 1.36 -2.00 -0.30 0.36 1.52 -2.00 -0.27 0.33 1.68 -2.00 -0.24 0.26 1.84 -2.00 -0.21 0.21 2.00 -2.00 -0.18 0.17 2.16 -2.00 -0.14 0.11 2.32 -2.00 -0.09 0.01 2.48 -2.00 -0.12 -0.09 2.64 -2.00 -0.20 -0.17 2.80 -2.00 -0.31 -0.30 2.96 -2.00 -0.33 -0.48 3.12 -2.00 -0.34 -0.60 -3.12 -1.84 0.33 -0.58 -2.96 -1.84 0.29 -0.46 -2.80 -1.84 0.18 -0.33 -2.64 -1.84 0.09 -0.24 -2.48 -1.84 0.02 -0.15 -2.32 -1.84 -0.00 -0.01 -2.16 -1.84 0.07 0.14 -2.00 -1.84 0.18 0.24 -1.84 -1.84 0.27 0.29 -1.68 -1.84 0.29 0.31 -1.52 -1.84 0.28 0.26 -1.36 -1.84 0.26 0.21 -1.20 -1.84 0.20 0.18 -1.04 -1.84 0.16 0.19 -0.88 -1.84 0.12 0.15 -0.72 -1.84 0.07 0.11 -0.56 -1.84 0.04 0.07 -0.40 -1.84 0.04 0.03 -0.24 -1.84 0.01 -0.01 -0.08 -1.84 -0.00 -0.03 0.08 -1.84 -0.07 -0.01 0.24 -1.84 -0.11 0.03 0.40 -1.84 -0.15 0.05 0.56 -1.84 -0.15 0.06 0.72 -1.84 -0.17 0.09 0.88 -1.84 -0.20 0.13 1.04 -1.84 -0.24 0.20 1.20 -1.84 -0.26 0.28 1.36 -1.84 -0.28 0.33 1.52 -1.84 -0.31 0.35 1.68 -1.84 -0.30 0.33 1.84 -1.84 -0.28 0.29 2.00 -1.84 -0.21 0.25 2.16 -1.84 -0.15 0.15 2.32 -1.84 -0.07 -0.01 2.48 -1.84 -0.04 -0.14 2.64 -1.84 -0.11 -0.21 2.80 -1.84 -0.22 -0.30 2.96 -1.84 -0.26 -0.51 3.12 -1.84 -0.23 -0.66 -3.12 -1.68 0.19 -0.56 -2.96 -1.68 0.20 -0.43 -2.80 -1.68 0.17 -0.30 -2.64 -1.68 0.06 -0.24 -2.48 -1.68 -0.01 -0.17 -2.32 -1.68 0.02 0.02 -2.16 -1.68 0.10 0.18 -2.00 -1.68 0.24 0.29 -1.84 -1.68 0.30 0.31 -1.68 -1.68 0.30 0.29 -1.52 -1.68 0.29 0.23 -1.36 -1.68 0.25 0.19 -1.20 -1.68 0.17 0.17 -1.04 -1.68 0.11 0.17 -0.88 -1.68 0.08 0.15 -0.72 -1.68 0.04 0.13 -0.56 -1.68 0.01 0.09 -0.40 -1.68 0.00 0.04 -0.24 -1.68 -0.01 -0.01 -0.08 -1.68 -0.00 -0.02 0.08 -1.68 -0.05 0.02 0.24 -1.68 -0.12 0.05 0.40 -1.68 -0.13 0.07 0.56 -1.68 -0.11 0.05 0.72 -1.68 -0.14 0.06 0.88 -1.68 -0.21 0.10 1.04 -1.68 -0.25 0.16 1.20 -1.68 -0.26 0.22 1.36 -1.68 -0.27 0.29 1.52 -1.68 -0.29 0.32 1.68 -1.68 -0.31 0.33 1.84 -1.68 -0.30 0.31 2.00 -1.68 -0.26 0.28 2.16 -1.68 -0.17 0.17 2.32 -1.68 -0.06 -0.01 2.48 -1.68 0.01 -0.18 2.64 -1.68 -0.03 -0.20 2.80 -1.68 -0.13 -0.31 2.96 -1.68 -0.15 -0.51 3.12 -1.68 -0.12 -0.67 -3.12 -1.52 0.09 -0.53 -2.96 -1.52 0.12 -0.42 -2.80 -1.52 0.05 -0.32 -2.64 -1.52 -0.03 -0.25 -2.48 -1.52 -0.03 -0.13 -2.32 -1.52 0.05 0.07 -2.16 -1.52 0.15 0.23 -2.00 -1.52 0.25 0.30 -1.84 -1.52 0.29 0.30 -1.68 -1.52 0.29 0.25 -1.52 -1.52 0.26 0.21 -1.36 -1.52 0.22 0.19 -1.20 -1.52 0.15 0.20 -1.04 -1.52 0.09 0.18 -0.88 -1.52 0.05 0.15 -0.72 -1.52 0.03 0.13 -0.56 -1.52 0.01 0.08 -0.40 -1.52 -0.01 0.04 -0.24 -1.52 -0.02 0.01 -0.08 -1.52 -0.02 0.02 0.08 -1.52 -0.08 0.04 0.24 -1.52 -0.13 0.08 0.40 -1.52 -0.14 0.08 0.56 -1.52 -0.11 0.07 0.72 -1.52 -0.13 0.07 0.88 -1.52 -0.19 0.09 1.04 -1.52 -0.24 0.13 1.20 -1.52 -0.25 0.21 1.36 -1.52 -0.25 0.27 1.52 -1.52 -0.26 0.31 1.68 -1.52 -0.30 0.31 1.84 -1.52 -0.31 0.29 2.00 -1.52 -0.30 0.25 2.16 -1.52 -0.25 0.15 2.32 -1.52 -0.12 0.01 2.48 -1.52 -0.01 -0.12 2.64 -1.52 0.02 -0.20 2.80 -1.52 -0.01 -0.31 2.96 -1.52 0.01 -0.53 3.12 -1.52 0.03 -0.71 -3.12 -1.36 0.04 -0.51 -2.96 -1.36 0.01 -0.44 -2.80 -1.36 -0.09 -0.35 -2.64 -1.36 -0.14 -0.26 -2.48 -1.36 -0.09 -0.12 -2.32 -1.36 0.06 0.07 -2.16 -1.36 0.15 0.20 -2.00 -1.36 0.22 0.27 -1.84 -1.36 0.24 0.25 -1.68 -1.36 0.24 0.21 -1.52 -1.36 0.20 0.17 -1.36 -1.36 0.16 0.17 -1.20 -1.36 0.13 0.18 -1.04 -1.36 0.09 0.21 -0.88 -1.36 0.06 0.16 -0.72 -1.36 0.04 0.12 -0.56 -1.36 -0.00 0.11 -0.40 -1.36 -0.00 0.07 -0.24 -1.36 -0.02 0.04 -0.08 -1.36 -0.07 0.05 0.08 -1.36 -0.10 0.08 0.24 -1.36 -0.13 0.09 0.40 -1.36 -0.16 0.09 0.56 -1.36 -0.15 0.09 0.72 -1.36 -0.15 0.09 0.88 -1.36 -0.16 0.10 1.04 -1.36 -0.19 0.12 1.20 -1.36 -0.22 0.17 1.36 -1.36 -0.22 0.25 1.52 -1.36 -0.22 0.27 1.68 -1.36 -0.26 0.28 1.84 -1.36 -0.28 0.25 2.00 -1.36 -0.30 0.22 2.16 -1.36 -0.28 0.14 2.32 -1.36 -0.18 0.04 2.48 -1.36 -0.04 -0.09 2.64 -1.36 0.04 -0.17 2.80 -1.36 0.10 -0.33 2.96 -1.36 0.16 -0.54 3.12 -1.36 0.20 -0.71 -3.12 -1.20 -0.07 -0.53 -2.96 -1.20 -0.11 -0.49 -2.80 -1.20 -0.18 -0.38 -2.64 -1.20 -0.22 -0.25 -2.48 -1.20 -0.16 -0.11 -2.32 -1.20 0.01 0.04 -2.16 -1.20 0.12 0.15 -2.00 -1.20 0.16 0.20 -1.84 -1.20 0.19 0.20 -1.68 -1.20 0.19 0.16 -1.52 -1.20 0.14 0.13 -1.36 -1.20 0.11 0.12 -1.20 -1.20 0.10 0.15 -1.04 -1.20 0.10 0.17 -0.88 -1.20 0.08 0.14 -0.72 -1.20 0.03 0.10 -0.56 -1.20 0.00 0.09 -0.40 -1.20 -0.03 0.10 -0.24 -1.20 -0.08 0.06 -0.08 -1.20 -0.10 0.07 0.08 -1.20 -0.11 0.07 0.24 -1.20 -0.12 0.07 0.40 -1.20 -0.16 0.07 0.56 -1.20 -0.17 0.08 0.72 -1.20 -0.14 0.08 0.88 -1.20 -0.12 0.10 1.04 -1.20 -0.14 0.11 1.20 -1.20 -0.17 0.16 1.36 -1.20 -0.17 0.22 1.52 -1.20 -0.18 0.24 1.68 -1.20 -0.21 0.23 1.84 -1.20 -0.21 0.23 2.00 -1.20 -0.21 0.20 2.16 -1.20 -0.21 0.16 2.32 -1.20 -0.16 0.07 2.48 -1.20 -0.07 -0.04 2.64 -1.20 0.02 -0.13 2.80 -1.20 0.15 -0.30 2.96 -1.20 0.28 -0.50 3.12 -1.20 0.33 -0.62 -3.12 -1.04 -0.24 -0.59 -2.96 -1.04 -0.23 -0.50 -2.80 -1.04 -0.25 -0.40 -2.64 -1.04 -0.23 -0.28 -2.48 -1.04 -0.14 -0.13 -2.32 -1.04 -0.00 0.02 -2.16 -1.04 0.06 0.09 -2.00 -1.04 0.09 0.15 -1.84 -1.04 0.12 0.16 -1.68 -1.04 0.13 0.13 -1.52 -1.04 0.11 0.09 -1.36 -1.04 0.10 0.10 -1.20 -1.04 0.10 0.11 -1.04 -1.04 0.10 0.12 -0.88 -1.04 0.07 0.09 -0.72 -1.04 0.04 0.05 -0.56 -1.04 -0.02 0.06 -0.40 -1.04 -0.07 0.07 -0.24 -1.04 -0.09 0.05 -0.08 -1.04 -0.07 0.04 0.08 -1.04 -0.06 0.03 0.24 -1.04 -0.08 0.03 0.40 -1.04 -0.12 0.04 0.56 -1.04 -0.12 0.06 0.72 -1.04 -0.08 0.07 0.88 -1.04 -0.05 0.07 1.04 -1.04 -0.10 0.09 1.20 -1.04 -0.12 0.15 1.36 -1.04 -0.14 0.18 1.52 -1.04 -0.14 0.19 1.68 -1.04 -0.15 0.23 1.84 -1.04 -0.13 0.19 2.00 -1.04 -0.11 0.18 2.16 -1.04 -0.08 0.11 2.32 -1.04 -0.09 0.06 2.48 -1.04 -0.01 -0.03 2.64 -1.04 0.09 -0.13 2.80 -1.04 0.21 -0.29 2.96 -1.04 0.35 -0.46 3.12 -1.04 0.45 -0.57 -3.12 -0.88 -0.38 -0.60 -2.96 -0.88 -0.34 -0.51 -2.80 -0.88 -0.29 -0.40 -2.64 -0.88 -0.23 -0.30 -2.48 -0.88 -0.12 -0.15 -2.32 -0.88 -0.01 -0.00 -2.16 -0.88 0.01 0.07 -2.00 -0.88 0.04 0.11 -1.84 -0.88 0.06 0.12 -1.68 -0.88 0.06 0.09 -1.52 -0.88 0.08 0.07 -1.36 -0.88 0.11 0.07 -1.20 -0.88 0.10 0.07 -1.04 -0.88 0.10 0.07 -0.88 -0.88 0.09 0.06 -0.72 -0.88 0.04 0.04 -0.56 -0.88 -0.02 0.04 -0.40 -0.88 -0.08 0.03 -0.24 -0.88 -0.06 0.02 -0.08 -0.88 -0.03 0.00 0.08 -0.88 -0.05 -0.01 0.24 -0.88 -0.08 0.01 0.40 -0.88 -0.09 0.04 0.56 -0.88 -0.08 0.07 0.72 -0.88 -0.05 0.04 0.88 -0.88 -0.02 0.02 1.04 -0.88 -0.06 0.05 1.20 -0.88 -0.10 0.10 1.36 -0.88 -0.12 0.13 1.52 -0.88 -0.11 0.17 1.68 -0.88 -0.09 0.19 1.84 -0.88 -0.07 0.18 2.00 -0.88 -0.06 0.13 2.16 -0.88 -0.05 0.08 2.32 -0.88 -0.05 0.03 2.48 -0.88 0.02 -0.04 2.64 -0.88 0.13 -0.11 2.80 -0.88 0.28 -0.28 2.96 -0.88 0.43 -0.45 3.12 -0.88 0.56 -0.54 -3.12 -0.72 -0.48 -0.52 -2.96 -0.72 -0.40 -0.46 -2.80 -0.72 -0.34 -0.37 -2.64 -0.72 -0.24 -0.28 -2.48 -0.72 -0.14 -0.16 -2.32 -0.72 -0.07 -0.04 -2.16 -0.72 -0.03 0.04 -2.00 -0.72 -0.01 0.06 -1.84 -0.72 0.03 0.08 -1.68 -0.72 0.05 0.07 -1.52 -0.72 0.08 0.06 -1.36 -0.72 0.11 0.05 -1.20 -0.72 0.11 0.05 -1.04 -0.72 0.10 0.05 -0.88 -0.72 0.08 0.05 -0.72 -0.72 0.02 0.06 -0.56 -0.72 -0.04 0.01 -0.40 -0.72 -0.06 -0.02 -0.24 -0.72 -0.03 -0.05 -0.08 -0.72 -0.04 -0.05 0.08 -0.72 -0.08 -0.04 0.24 -0.72 -0.06 -0.02 0.40 -0.72 -0.06 0.04 0.56 -0.72 -0.07 0.06 0.72 -0.72 -0.03 0.03 0.88 -0.72 -0.01 0.01 1.04 -0.72 -0.05 0.03 1.20 -0.72 -0.09 0.06 1.36 -0.72 -0.09 0.08 1.52 -0.72 -0.07 0.12 1.68 -0.72 -0.05 0.15 1.84 -0.72 -0.02 0.12 2.00 -0.72 -0.02 0.09 2.16 -0.72 -0.03 0.05 2.32 -0.72 -0.01 0.00 2.48 -0.72 0.05 -0.05 2.64 -0.72 0.14 -0.10 2.80 -0.72 0.32 -0.24 2.96 -0.72 0.49 -0.42 3.12 -0.72 0.57 -0.51 -3.12 -0.56 -0.51 -0.41 -2.96 -0.56 -0.50 -0.37 -2.80 -0.56 -0.37 -0.29 -2.64 -0.56 -0.25 -0.23 -2.48 -0.56 -0.17 -0.16 -2.32 -0.56 -0.12 -0.06 -2.16 -0.56 -0.06 0.01 -2.00 -0.56 -0.03 0.03 -1.84 -0.56 0.01 0.05 -1.68 -0.56 0.05 0.06 -1.52 -0.56 0.08 0.07 -1.36 -0.56 0.10 0.05 -1.20 -0.56 0.10 0.05 -1.04 -0.56 0.08 0.05 -0.88 -0.56 0.06 0.04 -0.72 -0.56 0.01 0.01 -0.56 -0.56 -0.02 0.00 -0.40 -0.56 -0.02 -0.07 -0.24 -0.56 -0.03 -0.09 -0.08 -0.56 -0.08 -0.10 0.08 -0.56 -0.11 -0.08 0.24 -0.56 -0.09 -0.06 0.40 -0.56 -0.07 -0.01 0.56 -0.56 -0.08 0.03 0.72 -0.56 -0.05 0.02 0.88 -0.56 0.00 -0.00 1.04 -0.56 -0.02 0.02 1.20 -0.56 -0.06 0.04 1.36 -0.56 -0.04 0.05 1.52 -0.56 -0.02 0.07 1.68 -0.56 -0.00 0.09 1.84 -0.56 0.01 0.07 2.00 -0.56 0.02 0.07 2.16 -0.56 0.05 0.05 2.32 -0.56 0.06 0.01 2.48 -0.56 0.09 -0.05 2.64 -0.56 0.17 -0.10 2.80 -0.56 0.33 -0.19 2.96 -0.56 0.49 -0.33 3.12 -0.56 0.59 -0.45 -3.12 -0.40 -0.57 -0.29 -2.96 -0.40 -0.52 -0.25 -2.80 -0.40 -0.37 -0.19 -2.64 -0.40 -0.22 -0.18 -2.48 -0.40 -0.18 -0.16 -2.32 -0.40 -0.17 -0.09 -2.16 -0.40 -0.10 0.00 -2.00 -0.40 -0.05 0.04 -1.84 -0.40 0.01 0.05 -1.68 -0.40 0.04 0.06 -1.52 -0.40 0.06 0.07 -1.36 -0.40 0.08 0.05 -1.20 -0.40 0.08 0.03 -1.04 -0.40 0.08 0.03 -0.88 -0.40 0.04 0.01 -0.72 -0.40 0.02 -0.04 -0.56 -0.40 0.02 -0.07 -0.40 -0.40 -0.01 -0.08 -0.24 -0.40 -0.04 -0.11 -0.08 -0.40 -0.09 -0.09 0.08 -0.40 -0.10 -0.07 0.24 -0.40 -0.08 -0.07 0.40 -0.40 -0.04 -0.04 0.56 -0.40 -0.05 0.01 0.72 -0.40 -0.03 0.00 0.88 -0.40 0.01 -0.03 1.04 -0.40 0.00 0.00 1.20 -0.40 -0.01 0.05 1.36 -0.40 -0.01 0.06 1.52 -0.40 0.02 0.06 1.68 -0.40 0.04 0.05 1.84 -0.40 0.04 0.02 2.00 -0.40 0.08 0.02 2.16 -0.40 0.12 0.04 2.32 -0.40 0.13 0.01 2.48 -0.40 0.13 -0.06 2.64 -0.40 0.21 -0.10 2.80 -0.40 0.37 -0.17 2.96 -0.40 0.52 -0.27 3.12 -0.40 0.59 -0.35 -3.12 -0.24 -0.59 -0.13 -2.96 -0.24 -0.52 -0.12 -2.80 -0.24 -0.37 -0.12 -2.64 -0.24 -0.21 -0.16 -2.48 -0.24 -0.16 -0.15 -2.32 -0.24 -0.18 -0.09 -2.16 -0.24 -0.14 0.01 -2.00 -0.24 -0.04 0.06 -1.84 -0.24 0.02 0.08 -1.68 -0.24 0.02 0.08 -1.52 -0.24 0.04 0.06 -1.36 -0.24 0.04 0.02 -1.20 -0.24 0.05 -0.01 -1.04 -0.24 0.05 -0.02 -0.88 -0.24 0.06 -0.04 -0.72 -0.24 0.07 -0.08 -0.56 -0.24 0.05 -0.06 -0.40 -0.24 0.01 -0.06 -0.24 -0.24 -0.03 -0.07 -0.08 -0.24 -0.06 -0.06 0.08 -0.24 -0.07 -0.03 0.24 -0.24 -0.05 -0.05 0.40 -0.24 -0.03 -0.02 0.56 -0.24 -0.02 0.02 0.72 -0.24 -0.01 -0.01 0.88 -0.24 -0.00 -0.06 1.04 -0.24 0.02 -0.04 1.20 -0.24 -0.00 0.02 1.36 -0.24 -0.01 0.07 1.52 -0.24 0.02 0.06 1.68 -0.24 0.05 0.03 1.84 -0.24 0.08 -0.01 2.00 -0.24 0.13 -0.01 2.16 -0.24 0.15 -0.01 2.32 -0.24 0.14 -0.00 2.48 -0.24 0.12 -0.05 2.64 -0.24 0.21 -0.08 2.80 -0.24 0.40 -0.13 2.96 -0.24 0.56 -0.19 3.12 -0.24 0.59 -0.23 -3.12 -0.08 -0.56 0.05 -2.96 -0.08 -0.53 0.01 -2.80 -0.08 -0.36 -0.06 -2.64 -0.08 -0.20 -0.11 -2.48 -0.08 -0.14 -0.09 -2.32 -0.08 -0.17 -0.03 -2.16 -0.08 -0.13 0.06 -2.00 -0.08 -0.05 0.10 -1.84 -0.08 -0.00 0.11 -1.68 -0.08 0.03 0.08 -1.52 -0.08 0.02 0.02 -1.36 -0.08 0.03 -0.03 -1.20 -0.08 0.02 -0.04 -1.04 -0.08 0.01 -0.03 -0.88 -0.08 0.02 -0.05 -0.72 -0.08 0.05 -0.07 -0.56 -0.08 0.02 -0.06 -0.40 -0.08 -0.01 -0.07 -0.24 -0.08 -0.02 -0.06 -0.08 -0.08 -0.05 -0.02 0.08 -0.08 -0.05 -0.02 0.24 -0.08 -0.03 -0.00 0.40 -0.08 -0.04 0.00 0.56 -0.08 -0.06 0.02 0.72 -0.08 -0.05 -0.01 0.88 -0.08 -0.01 -0.03 1.04 -0.08 -0.01 -0.03 1.20 -0.08 -0.02 0.03 1.36 -0.08 -0.02 0.06 1.52 -0.08 0.01 0.07 1.68 -0.08 0.04 0.02 1.84 -0.08 0.07 -0.03 2.00 -0.08 0.12 -0.06 2.16 -0.08 0.17 -0.06 2.32 -0.08 0.17 -0.04 2.48 -0.08 0.14 -0.05 2.64 -0.08 0.21 -0.08 2.80 -0.08 0.40 -0.09 2.96 -0.08 0.54 -0.08 3.12 -0.08 0.57 -0.10 -3.12 0.08 -0.60 0.19 -2.96 0.08 -0.53 0.15 -2.80 0.08 -0.39 0.07 -2.64 0.08 -0.20 -0.02 -2.48 0.08 -0.16 -0.01 -2.32 0.08 -0.14 0.04 -2.16 0.08 -0.11 0.08 -2.00 0.08 -0.06 0.10 -1.84 0.08 -0.04 0.10 -1.68 0.08 -0.01 0.06 -1.52 0.08 0.01 -0.02 -1.36 0.08 0.01 -0.06 -1.20 0.08 -0.00 -0.05 -1.04 0.08 -0.01 -0.03 -0.88 0.08 -0.01 -0.03 -0.72 0.08 -0.01 -0.04 -0.56 0.08 -0.00 -0.05 -0.40 0.08 -0.01 -0.05 -0.24 0.08 -0.03 -0.03 -0.08 0.08 -0.04 -0.03 0.08 0.08 -0.05 -0.02 0.24 0.08 -0.06 -0.02 0.40 0.08 -0.09 0.01 0.56 0.08 -0.12 0.00 0.72 0.08 -0.09 -0.01 0.88 0.08 -0.03 -0.03 1.04 0.08 -0.01 -0.01 1.20 0.08 -0.01 0.02 1.36 0.08 0.00 0.06 1.52 0.08 0.06 0.04 1.68 0.08 0.06 -0.01 1.84 0.08 0.04 -0.06 2.00 0.08 0.08 -0.08 2.16 0.08 0.14 -0.08 2.32 0.08 0.16 -0.07 2.48 0.08 0.17 -0.05 2.64 0.08 0.24 -0.02 2.80 0.08 0.39 0.03 2.96 0.08 0.53 0.06 3.12 0.08 0.56 0.09 -3.12 0.24 -0.64 0.32 -2.96 0.24 -0.58 0.30 -2.80 0.24 -0.39 0.20 -2.64 0.24 -0.24 0.09 -2.48 0.24 -0.16 0.05 -2.32 0.24 -0.14 0.07 -2.16 0.24 -0.09 0.08 -2.00 0.24 -0.04 0.08 -1.84 0.24 -0.04 0.06 -1.68 0.24 -0.02 0.00 -1.52 0.24 -0.01 -0.05 -1.36 0.24 0.01 -0.06 -1.20 0.24 0.00 -0.01 -1.04 0.24 0.01 -0.00 -0.88 0.24 -0.01 -0.03 -0.72 0.24 -0.03 -0.05 -0.56 0.24 -0.02 -0.01 -0.40 0.24 -0.04 -0.00 -0.24 0.24 -0.05 -0.04 -0.08 0.24 -0.07 -0.04 0.08 0.24 -0.08 -0.03 0.24 0.24 -0.08 -0.02 0.40 0.24 -0.10 -0.02 0.56 0.24 -0.08 0.01 0.72 0.24 -0.07 -0.01 0.88 0.24 -0.02 -0.02 1.04 0.24 -0.02 -0.04 1.20 0.24 -0.01 0.00 1.36 0.24 0.03 0.02 1.52 0.24 0.09 0.01 1.68 0.24 0.10 -0.03 1.84 0.24 0.06 -0.05 2.00 0.24 0.03 -0.05 2.16 0.24 0.08 -0.05 2.32 0.24 0.13 -0.06 2.48 0.24 0.15 -0.02 2.64 0.24 0.24 0.07 2.80 0.24 0.38 0.13 2.96 0.24 0.52 0.18 3.12 0.24 0.62 0.21 -3.12 0.40 -0.63 0.48 -2.96 0.40 -0.56 0.41 -2.80 0.40 -0.43 0.28 -2.64 0.40 -0.24 0.16 -2.48 0.40 -0.17 0.08 -2.32 0.40 -0.13 0.06 -2.16 0.40 -0.09 0.07 -2.00 0.40 -0.07 0.09 -1.84 0.40 -0.04 0.04 -1.68 0.40 -0.00 -0.00 -1.52 0.40 -0.00 -0.04 -1.36 0.40 -0.00 -0.03 -1.20 0.40 0.02 0.00 -1.04 0.40 0.01 0.01 -0.88 0.40 0.02 -0.05 -0.72 0.40 0.01 -0.03 -0.56 0.40 -0.02 0.02 -0.40 0.40 -0.03 0.03 -0.24 0.40 -0.05 -0.03 -0.08 0.40 -0.08 -0.05 0.08 0.40 -0.08 -0.01 0.24 0.40 -0.08 0.01 0.40 0.40 -0.06 -0.01 0.56 0.40 -0.05 0.00 0.72 0.40 -0.04 -0.01 0.88 0.40 -0.01 -0.05 1.04 0.40 -0.02 -0.06 1.20 0.40 -0.02 -0.05 1.36 0.40 0.02 -0.03 1.52 0.40 0.08 -0.02 1.68 0.40 0.08 -0.03 1.84 0.40 0.04 -0.04 2.00 0.40 0.06 -0.01 2.16 0.40 0.05 -0.02 2.32 0.40 0.08 -0.01 2.48 0.40 0.11 0.06 2.64 0.40 0.22 0.14 2.80 0.40 0.37 0.23 2.96 0.40 0.52 0.29 3.12 0.40 0.60 0.34 -3.12 0.56 -0.50 0.59 -2.96 0.56 -0.49 0.50 -2.80 0.56 -0.38 0.35 -2.64 0.56 -0.23 0.19 -2.48 0.56 -0.14 0.09 -2.32 0.56 -0.10 0.05 -2.16 0.56 -0.09 0.05 -2.00 0.56 -0.08 0.07 -1.84 0.56 -0.05 0.06 -1.68 0.56 -0.00 0.01 -1.52 0.56 0.01 -0.02 -1.36 0.56 0.01 -0.01 -1.20 0.56 0.02 0.00 -1.04 0.56 0.04 -0.00 -0.88 0.56 0.03 -0.03 -0.72 0.56 0.02 -0.01 -0.56 0.56 0.02 0.04 -0.40 0.56 -0.02 0.02 -0.24 0.56 -0.02 -0.04 -0.08 0.56 -0.05 -0.05 0.08 0.56 -0.06 0.01 0.24 0.56 -0.05 0.05 0.40 0.56 -0.05 0.05 0.56 0.56 -0.06 0.02 0.72 0.56 -0.07 -0.01 0.88 0.56 -0.04 -0.03 1.04 0.56 -0.04 -0.04 1.20 0.56 -0.03 -0.04 1.36 0.56 -0.01 -0.05 1.52 0.56 0.02 -0.07 1.68 0.56 0.02 -0.07 1.84 0.56 0.04 -0.06 2.00 0.56 0.05 -0.04 2.16 0.56 0.05 -0.03 2.32 0.56 0.01 -0.00 2.48 0.56 0.05 0.06 2.64 0.56 0.21 0.17 2.80 0.56 0.40 0.27 2.96 0.56 0.51 0.39 3.12 0.56 0.55 0.46 -3.12 0.72 -0.45 0.64 -2.96 0.72 -0.42 0.56 -2.80 0.72 -0.32 0.38 -2.64 0.72 -0.18 0.23 -2.48 0.72 -0.10 0.09 -2.32 0.72 -0.04 0.02 -2.16 0.72 -0.03 -0.01 -2.00 0.72 -0.04 0.02 -1.84 0.72 -0.04 -0.00 -1.68 0.72 -0.03 -0.02 -1.52 0.72 0.01 -0.04 -1.36 0.72 0.03 -0.02 -1.20 0.72 0.05 -0.02 -1.04 0.72 0.06 -0.01 -0.88 0.72 0.05 -0.01 -0.72 0.72 0.03 0.00 -0.56 0.72 0.02 0.03 -0.40 0.72 0.01 0.05 -0.24 0.72 -0.01 -0.02 -0.08 0.72 -0.01 -0.04 0.08 0.72 -0.03 0.04 0.24 0.72 -0.02 0.10 0.40 0.72 -0.04 0.07 0.56 0.72 -0.07 0.05 0.72 0.72 -0.09 0.02 0.88 0.72 -0.08 -0.00 1.04 0.72 -0.08 -0.01 1.20 0.72 -0.05 -0.04 1.36 0.72 -0.04 -0.10 1.52 0.72 -0.03 -0.14 1.68 0.72 0.00 -0.13 1.84 0.72 0.02 -0.14 2.00 0.72 0.04 -0.12 2.16 0.72 -0.00 -0.10 2.32 0.72 -0.03 -0.03 2.48 0.72 0.01 0.06 2.64 0.72 0.21 0.19 2.80 0.72 0.40 0.34 2.96 0.72 0.49 0.49 3.12 0.72 0.49 0.56 -3.12 0.88 -0.43 0.71 -2.96 0.88 -0.37 0.59 -2.80 0.88 -0.29 0.41 -2.64 0.88 -0.17 0.24 -2.48 0.88 -0.06 0.08 -2.32 0.88 0.01 -0.04 -2.16 0.88 0.04 -0.06 -2.00 0.88 0.03 -0.04 -1.84 0.88 -0.00 -0.07 -1.68 0.88 0.02 -0.10 -1.52 0.88 0.06 -0.08 -1.36 0.88 0.06 -0.02 -1.20 0.88 0.08 -0.01 -1.04 0.88 0.07 0.02 -0.88 0.88 0.04 0.01 -0.72 0.88 0.02 0.01 -0.56 0.88 0.02 0.04 -0.40 0.88 0.01 0.04 -0.24 0.88 0.01 -0.00 -0.08 0.88 -0.03 -0.02 0.08 0.88 -0.03 0.04 0.24 0.88 -0.02 0.09 0.40 0.88 -0.01 0.08 0.56 0.88 -0.05 0.04 0.72 0.88 -0.10 0.03 0.88 0.88 -0.12 0.02 1.04 0.88 -0.14 0.00 1.20 0.88 -0.12 -0.05 1.36 0.88 -0.08 -0.11 1.52 0.88 -0.04 -0.15 1.68 0.88 -0.02 -0.17 1.84 0.88 -0.01 -0.19 2.00 0.88 -0.03 -0.20 2.16 0.88 -0.05 -0.17 2.32 0.88 -0.06 -0.07 2.48 0.88 -0.01 0.10 2.64 0.88 0.12 0.26 2.80 0.88 0.29 0.40 2.96 0.88 0.41 0.56 3.12 0.88 0.40 0.67 -3.12 1.04 -0.30 0.71 -2.96 1.04 -0.28 0.60 -2.80 1.04 -0.25 0.41 -2.64 1.04 -0.18 0.23 -2.48 1.04 -0.05 0.03 -2.32 1.04 0.04 -0.09 -2.16 1.04 0.08 -0.13 -2.00 1.04 0.07 -0.12 -1.84 1.04 0.08 -0.14 -1.68 1.04 0.10 -0.14 -1.52 1.04 0.13 -0.12 -1.36 1.04 0.11 -0.06 -1.20 1.04 0.09 -0.03 -1.04 1.04 0.06 -0.02 -0.88 1.04 0.03 0.00 -0.72 1.04 0.01 0.01 -0.56 1.04 -0.01 0.01 -0.40 1.04 0.01 0.02 -0.24 1.04 -0.01 0.01 -0.08 1.04 -0.03 0.01 0.08 1.04 -0.05 0.05 0.24 1.04 -0.01 0.10 0.40 1.04 -0.01 0.06 0.56 1.04 -0.04 0.03 0.72 1.04 -0.08 0.01 0.88 1.04 -0.13 0.00 1.04 1.04 -0.16 -0.01 1.20 1.04 -0.14 -0.03 1.36 1.04 -0.10 -0.07 1.52 1.04 -0.09 -0.12 1.68 1.04 -0.09 -0.16 1.84 1.04 -0.10 -0.19 2.00 1.04 -0.09 -0.22 2.16 1.04 -0.10 -0.20 2.32 1.04 -0.07 -0.06 2.48 1.04 -0.01 0.14 2.64 1.04 0.06 0.33 2.80 1.04 0.18 0.47 2.96 1.04 0.28 0.62 3.12 1.04 0.35 0.74 -3.12 1.20 -0.19 0.69 -2.96 1.20 -0.19 0.59 -2.80 1.20 -0.21 0.41 -2.64 1.20 -0.18 0.20 -2.48 1.20 -0.06 0.00 -2.32 1.20 0.04 -0.13 -2.16 1.20 0.09 -0.19 -2.00 1.20 0.14 -0.19 -1.84 1.20 0.18 -0.17 -1.68 1.20 0.20 -0.16 -1.52 1.20 0.19 -0.14 -1.36 1.20 0.18 -0.11 -1.20 1.20 0.12 -0.10 -1.04 1.20 0.04 -0.08 -0.88 1.20 0.01 -0.04 -0.72 1.20 -0.00 -0.02 -0.56 1.20 -0.01 -0.01 -0.40 1.20 -0.01 0.00 -0.24 1.20 0.01 0.00 -0.08 1.20 -0.01 0.02 0.08 1.20 -0.01 0.06 0.24 1.20 -0.01 0.08 0.40 1.20 -0.02 0.03 0.56 1.20 -0.03 0.00 0.72 1.20 -0.06 -0.02 0.88 1.20 -0.12 -0.04 1.04 1.20 -0.15 -0.05 1.20 1.20 -0.14 -0.01 1.36 1.20 -0.12 -0.07 1.52 1.20 -0.15 -0.12 1.68 1.20 -0.17 -0.16 1.84 1.20 -0.14 -0.19 2.00 1.20 -0.15 -0.23 2.16 1.20 -0.15 -0.17 2.32 1.20 -0.10 -0.06 2.48 1.20 -0.03 0.15 2.64 1.20 0.07 0.37 2.80 1.20 0.11 0.54 2.96 1.20 0.19 0.68 3.12 1.20 0.30 0.81 -3.12 1.36 -0.10 0.72 -2.96 1.36 -0.13 0.61 -2.80 1.36 -0.16 0.40 -2.64 1.36 -0.14 0.19 -2.48 1.36 -0.08 0.00 -2.32 1.36 0.03 -0.15 -2.16 1.36 0.10 -0.23 -2.00 1.36 0.18 -0.24 -1.84 1.36 0.23 -0.23 -1.68 1.36 0.21 -0.21 -1.52 1.36 0.22 -0.20 -1.36 1.36 0.23 -0.17 -1.20 1.36 0.16 -0.12 -1.04 1.36 0.07 -0.10 -0.88 1.36 0.00 -0.07 -0.72 1.36 0.03 -0.05 -0.56 1.36 0.02 0.01 -0.40 1.36 0.03 0.03 -0.24 1.36 0.03 0.03 -0.08 1.36 0.02 0.03 0.08 1.36 0.01 0.05 0.24 1.36 -0.01 0.07 0.40 1.36 -0.01 0.02 0.56 1.36 -0.04 0.01 0.72 1.36 -0.04 -0.04 0.88 1.36 -0.11 -0.07 1.04 1.36 -0.14 -0.07 1.20 1.36 -0.12 -0.03 1.36 1.36 -0.14 -0.08 1.52 1.36 -0.19 -0.15 1.68 1.36 -0.16 -0.20 1.84 1.36 -0.17 -0.23 2.00 1.36 -0.18 -0.23 2.16 1.36 -0.19 -0.14 2.32 1.36 -0.12 -0.00 2.48 1.36 0.00 0.19 2.64 1.36 0.09 0.39 2.80 1.36 0.10 0.60 2.96 1.36 0.12 0.75 3.12 1.36 0.17 0.85 -3.12 1.52 -0.02 0.77 -2.96 1.52 -0.05 0.63 -2.80 1.52 -0.08 0.40 -2.64 1.52 -0.08 0.18 -2.48 1.52 -0.06 0.01 -2.32 1.52 -0.01 -0.14 -2.16 1.52 0.12 -0.22 -2.00 1.52 0.22 -0.25 -1.84 1.52 0.24 -0.25 -1.68 1.52 0.22 -0.27 -1.52 1.52 0.23 -0.25 -1.36 1.52 0.24 -0.21 -1.20 1.52 0.19 -0.12 -1.04 1.52 0.09 -0.07 -0.88 1.52 0.07 -0.08 -0.72 1.52 0.07 -0.06 -0.56 1.52 0.07 0.00 -0.40 1.52 0.09 0.06 -0.24 1.52 0.06 0.04 -0.08 1.52 0.01 0.02 0.08 1.52 -0.03 0.04 0.24 1.52 -0.01 0.03 0.40 1.52 -0.02 0.01 0.56 1.52 -0.05 0.02 0.72 1.52 -0.06 -0.03 0.88 1.52 -0.10 -0.08 1.04 1.52 -0.12 -0.10 1.20 1.52 -0.13 -0.07 1.36 1.52 -0.15 -0.12 1.52 1.52 -0.17 -0.20 1.68 1.52 -0.15 -0.26 1.84 1.52 -0.14 -0.27 2.00 1.52 -0.16 -0.24 2.16 1.52 -0.17 -0.12 2.32 1.52 -0.10 0.03 2.48 1.52 -0.00 0.21 2.64 1.52 0.05 0.42 2.80 1.52 0.04 0.65 2.96 1.52 0.03 0.82 3.12 1.52 0.03 0.90 -3.12 1.68 0.05 0.77 -2.96 1.68 0.03 0.61 -2.80 1.68 -0.03 0.39 -2.64 1.68 -0.05 0.19 -2.48 1.68 -0.07 0.03 -2.32 1.68 0.01 -0.09 -2.16 1.68 0.14 -0.17 -2.00 1.68 0.26 -0.24 -1.84 1.68 0.29 -0.28 -1.68 1.68 0.27 -0.30 -1.52 1.68 0.26 -0.29 -1.36 1.68 0.26 -0.24 -1.20 1.68 0.19 -0.15 -1.04 1.68 0.16 -0.11 -0.88 1.68 0.13 -0.07 -0.72 1.68 0.12 -0.03 -0.56 1.68 0.09 0.05 -0.40 1.68 0.08 0.03 -0.24 1.68 0.07 0.01 -0.08 1.68 0.00 0.02 0.08 1.68 -0.03 0.04 0.24 1.68 -0.05 0.04 0.40 1.68 -0.05 0.01 0.56 1.68 -0.06 0.02 0.72 1.68 -0.06 -0.02 0.88 1.68 -0.08 -0.06 1.04 1.68 -0.12 -0.09 1.20 1.68 -0.16 -0.10 1.36 1.68 -0.18 -0.17 1.52 1.68 -0.19 -0.24 1.68 1.68 -0.17 -0.28 1.84 1.68 -0.14 -0.28 2.00 1.68 -0.12 -0.23 2.16 1.68 -0.11 -0.11 2.32 1.68 -0.06 0.04 2.48 1.68 -0.02 0.20 2.64 1.68 -0.04 0.36 2.80 1.68 -0.06 0.61 2.96 1.68 -0.09 0.82 3.12 1.68 -0.11 0.94 -3.12 1.84 0.14 0.69 -2.96 1.84 0.12 0.52 -2.80 1.84 0.07 0.31 -2.64 1.84 0.00 0.16 -2.48 1.84 -0.02 0.06 -2.32 1.84 0.04 -0.06 -2.16 1.84 0.13 -0.13 -2.00 1.84 0.23 -0.20 -1.84 1.84 0.30 -0.27 -1.68 1.84 0.31 -0.30 -1.52 1.84 0.32 -0.29 -1.36 1.84 0.28 -0.25 -1.20 1.84 0.22 -0.20 -1.04 1.84 0.17 -0.13 -0.88 1.84 0.16 -0.06 -0.72 1.84 0.12 0.01 -0.56 1.84 0.06 0.04 -0.40 1.84 0.05 0.04 -0.24 1.84 0.04 0.00 -0.08 1.84 0.02 0.04 0.08 1.84 -0.02 0.08 0.24 1.84 -0.06 0.08 0.40 1.84 -0.07 0.05 0.56 1.84 -0.06 0.02 0.72 1.84 -0.06 -0.04 0.88 1.84 -0.09 -0.06 1.04 1.84 -0.14 -0.08 1.20 1.84 -0.18 -0.13 1.36 1.84 -0.19 -0.21 1.52 1.84 -0.21 -0.30 1.68 1.84 -0.18 -0.33 1.84 1.84 -0.13 -0.32 2.00 1.84 -0.08 -0.26 2.16 1.84 -0.06 -0.13 2.32 1.84 -0.03 0.03 2.48 1.84 -0.05 0.15 2.64 1.84 -0.14 0.28 2.80 1.84 -0.19 0.53 2.96 1.84 -0.21 0.76 3.12 1.84 -0.24 0.91 -3.12 2.00 0.24 0.57 -2.96 2.00 0.22 0.41 -2.80 2.00 0.15 0.22 -2.64 2.00 0.08 0.09 -2.48 2.00 0.02 0.01 -2.32 2.00 0.05 -0.07 -2.16 2.00 0.12 -0.12 -2.00 2.00 0.17 -0.15 -1.84 2.00 0.23 -0.21 -1.68 2.00 0.29 -0.27 -1.52 2.00 0.31 -0.29 -1.36 2.00 0.30 -0.27 -1.20 2.00 0.24 -0.18 -1.04 2.00 0.20 -0.10 -0.88 2.00 0.16 -0.01 -0.72 2.00 0.11 0.03 -0.56 2.00 0.04 0.05 -0.40 2.00 0.04 0.07 -0.24 2.00 0.06 0.08 -0.08 2.00 0.03 0.08 0.08 2.00 -0.02 0.10 0.24 2.00 -0.05 0.11 0.40 2.00 -0.06 0.08 0.56 2.00 -0.06 0.04 0.72 2.00 -0.07 -0.03 0.88 2.00 -0.10 -0.07 1.04 2.00 -0.16 -0.10 1.20 2.00 -0.16 -0.13 1.36 2.00 -0.19 -0.22 1.52 2.00 -0.21 -0.30 1.68 2.00 -0.16 -0.33 1.84 2.00 -0.07 -0.30 2.00 2.00 -0.01 -0.25 2.16 2.00 0.02 -0.14 2.32 2.00 -0.02 -0.02 2.48 2.00 -0.09 0.08 2.64 2.00 -0.20 0.23 2.80 2.00 -0.25 0.46 2.96 2.00 -0.30 0.71 3.12 2.00 -0.36 0.80 -3.12 2.16 0.37 0.43 -2.96 2.16 0.34 0.31 -2.80 2.16 0.23 0.15 -2.64 2.16 0.12 0.01 -2.48 2.16 0.06 -0.06 -2.32 2.16 0.06 -0.10 -2.16 2.16 0.07 -0.11 -2.00 2.16 0.10 -0.09 -1.84 2.16 0.14 -0.08 -1.68 2.16 0.18 -0.17 -1.52 2.16 0.22 -0.25 -1.36 2.16 0.23 -0.22 -1.20 2.16 0.22 -0.15 -1.04 2.16 0.20 -0.05 -0.88 2.16 0.18 -0.01 -0.72 2.16 0.11 0.02 -0.56 2.16 0.07 0.05 -0.40 2.16 0.06 0.10 -0.24 2.16 0.06 0.14 -0.08 2.16 0.03 0.15 0.08 2.16 -0.01 0.13 0.24 2.16 -0.04 0.11 0.40 2.16 -0.08 0.10 0.56 2.16 -0.10 0.07 0.72 2.16 -0.09 0.02 0.88 2.16 -0.12 -0.05 1.04 2.16 -0.14 -0.11 1.20 2.16 -0.17 -0.16 1.36 2.16 -0.19 -0.19 1.52 2.16 -0.15 -0.22 1.68 2.16 -0.09 -0.22 1.84 2.16 0.00 -0.23 2.00 2.16 0.07 -0.20 2.16 2.16 0.08 -0.14 2.32 2.16 0.02 -0.08 2.48 2.16 -0.10 0.01 2.64 2.16 -0.21 0.16 2.80 2.16 -0.25 0.43 2.96 2.16 -0.34 0.64 3.12 2.16 -0.42 0.74 -3.12 2.32 0.47 0.31 -2.96 2.32 0.40 0.24 -2.80 2.32 0.27 0.08 -2.64 2.32 0.14 -0.07 -2.48 2.32 0.07 -0.13 -2.32 2.32 0.06 -0.15 -2.16 2.32 0.05 -0.11 -2.00 2.32 0.06 -0.04 -1.84 2.32 0.08 -0.00 -1.68 2.32 0.09 -0.04 -1.52 2.32 0.09 -0.10 -1.36 2.32 0.11 -0.10 -1.20 2.32 0.16 -0.05 -1.04 2.32 0.19 -0.04 -0.88 2.32 0.17 -0.02 -0.72 2.32 0.13 0.02 -0.56 2.32 0.08 0.09 -0.40 2.32 0.06 0.14 -0.24 2.32 0.03 0.17 -0.08 2.32 0.01 0.16 0.08 2.32 -0.01 0.15 0.24 2.32 -0.05 0.14 0.40 2.32 -0.10 0.11 0.56 2.32 -0.11 0.10 0.72 2.32 -0.11 0.07 0.88 2.32 -0.07 -0.01 1.04 2.32 -0.08 -0.07 1.20 2.32 -0.11 -0.10 1.36 2.32 -0.07 -0.09 1.52 2.32 -0.02 -0.06 1.68 2.32 0.03 -0.06 1.84 2.32 0.06 -0.12 2.00 2.32 0.07 -0.18 2.16 2.32 0.10 -0.16 2.32 2.32 0.08 -0.10 2.48 2.32 -0.02 -0.04 2.64 2.32 -0.16 0.11 2.80 2.32 -0.28 0.31 2.96 2.32 -0.41 0.52 3.12 2.32 -0.53 0.60 -3.12 2.48 0.49 0.24 -2.96 2.48 0.43 0.13 -2.80 2.48 0.30 -0.03 -2.64 2.48 0.18 -0.19 -2.48 2.48 0.08 -0.22 -2.32 2.48 0.06 -0.21 -2.16 2.48 0.04 -0.15 -2.00 2.48 0.03 -0.09 -1.84 2.48 0.01 -0.01 -1.68 2.48 0.00 0.05 -1.52 2.48 -0.04 0.07 -1.36 2.48 -0.01 0.10 -1.20 2.48 0.06 0.11 -1.04 2.48 0.10 0.06 -0.88 2.48 0.08 0.03 -0.72 2.48 0.05 0.08 -0.56 2.48 0.03 0.15 -0.40 2.48 0.01 0.19 -0.24 2.48 -0.01 0.19 -0.08 2.48 -0.05 0.19 0.08 2.48 -0.04 0.19 0.24 2.48 -0.06 0.19 0.40 2.48 -0.07 0.18 0.56 2.48 -0.08 0.16 0.72 2.48 -0.03 0.12 0.88 2.48 0.02 0.09 1.04 2.48 0.04 0.06 1.20 2.48 0.08 0.05 1.36 2.48 0.12 0.05 1.52 2.48 0.18 0.03 1.68 2.48 0.18 0.00 1.84 2.48 0.18 -0.06 2.00 2.48 0.11 -0.20 2.16 2.48 0.13 -0.22 2.32 2.48 0.14 -0.18 2.48 2.48 0.05 -0.11 2.64 2.48 -0.11 -0.01 2.80 2.48 -0.29 0.13 2.96 2.48 -0.48 0.29 3.12 2.48 -0.60 0.42 -3.12 2.64 0.44 0.15 -2.96 2.64 0.39 0.02 -2.80 2.64 0.29 -0.22 -2.64 2.64 0.17 -0.36 -2.48 2.64 0.07 -0.35 -2.32 2.64 0.02 -0.30 -2.16 2.64 0.01 -0.28 -2.00 2.64 -0.01 -0.20 -1.84 2.64 -0.06 -0.06 -1.68 2.64 -0.11 0.03 -1.52 2.64 -0.12 0.11 -1.36 2.64 -0.10 0.17 -1.20 2.64 -0.07 0.23 -1.04 2.64 -0.04 0.21 -0.88 2.64 -0.05 0.18 -0.72 2.64 -0.06 0.19 -0.56 2.64 -0.06 0.26 -0.40 2.64 -0.05 0.31 -0.24 2.64 -0.07 0.32 -0.08 2.64 -0.08 0.33 0.08 2.64 -0.08 0.31 0.24 2.64 -0.03 0.30 0.40 2.64 -0.01 0.30 0.56 2.64 0.05 0.29 0.72 2.64 0.09 0.24 0.88 2.64 0.14 0.20 1.04 2.64 0.19 0.19 1.20 2.64 0.26 0.18 1.36 2.64 0.30 0.12 1.52 2.64 0.33 0.03 1.68 2.64 0.34 -0.05 1.84 2.64 0.32 -0.10 2.00 2.64 0.27 -0.21 2.16 2.64 0.20 -0.33 2.32 2.64 0.15 -0.35 2.48 2.64 0.08 -0.28 2.64 2.64 -0.03 -0.17 2.80 2.64 -0.23 -0.06 2.96 2.64 -0.46 0.10 3.12 2.64 -0.55 0.22 -3.12 2.80 0.38 -0.04 -2.96 2.80 0.31 -0.20 -2.80 2.80 0.19 -0.39 -2.64 2.80 0.08 -0.49 -2.48 2.80 -0.01 -0.48 -2.32 2.80 -0.04 -0.47 -2.16 2.80 -0.11 -0.41 -2.00 2.80 -0.14 -0.29 -1.84 2.80 -0.21 -0.16 -1.68 2.80 -0.24 -0.01 -1.52 2.80 -0.23 0.07 -1.36 2.80 -0.22 0.16 -1.20 2.80 -0.26 0.27 -1.04 2.80 -0.23 0.33 -0.88 2.80 -0.17 0.34 -0.72 2.80 -0.18 0.38 -0.56 2.80 -0.17 0.45 -0.40 2.80 -0.14 0.49 -0.24 2.80 -0.12 0.52 -0.08 2.80 -0.10 0.54 0.08 2.80 -0.04 0.52 0.24 2.80 0.02 0.49 0.40 2.80 0.10 0.46 0.56 2.80 0.18 0.47 0.72 2.80 0.26 0.41 0.88 2.80 0.29 0.33 1.04 2.80 0.32 0.28 1.20 2.80 0.40 0.25 1.36 2.80 0.45 0.15 1.52 2.80 0.46 0.01 1.68 2.80 0.45 -0.13 1.84 2.80 0.48 -0.19 2.00 2.80 0.44 -0.29 2.16 2.80 0.34 -0.44 2.32 2.80 0.21 -0.57 2.48 2.80 0.16 -0.49 2.64 2.80 0.06 -0.37 2.80 2.80 -0.12 -0.22 2.96 2.80 -0.33 -0.12 3.12 2.80 -0.43 -0.06 -3.12 2.96 0.25 -0.25 -2.96 2.96 0.16 -0.38 -2.80 2.96 0.04 -0.54 -2.64 2.96 -0.04 -0.61 -2.48 2.96 -0.08 -0.70 -2.32 2.96 -0.14 -0.66 -2.16 2.96 -0.21 -0.56 -2.00 2.96 -0.27 -0.40 -1.84 2.96 -0.28 -0.24 -1.68 2.96 -0.34 -0.04 -1.52 2.96 -0.36 0.07 -1.36 2.96 -0.40 0.15 -1.20 2.96 -0.42 0.29 -1.04 2.96 -0.39 0.41 -0.88 2.96 -0.31 0.48 -0.72 2.96 -0.29 0.58 -0.56 2.96 -0.29 0.62 -0.40 2.96 -0.24 0.62 -0.24 2.96 -0.17 0.65 -0.08 2.96 -0.09 0.73 0.08 2.96 0.01 0.74 0.24 2.96 0.12 0.69 0.40 2.96 0.22 0.64 0.56 2.96 0.33 0.60 0.72 2.96 0.39 0.48 0.88 2.96 0.46 0.41 1.04 2.96 0.47 0.35 1.20 2.96 0.51 0.28 1.36 2.96 0.56 0.16 1.52 2.96 0.58 -0.01 1.68 2.96 0.55 -0.20 1.84 2.96 0.57 -0.32 2.00 2.96 0.53 -0.40 2.16 2.96 0.45 -0.51 2.32 2.96 0.34 -0.61 2.48 2.96 0.26 -0.64 2.64 2.96 0.15 -0.49 2.80 2.96 -0.02 -0.36 2.96 2.96 -0.20 -0.26 3.12 2.96 -0.31 -0.20 -3.12 3.12 0.06 -0.32 -2.96 3.12 0.04 -0.44 -2.80 3.12 -0.06 -0.61 -2.64 3.12 -0.11 -0.72 -2.48 3.12 -0.13 -0.80 -2.32 3.12 -0.21 -0.78 -2.16 3.12 -0.28 -0.66 -2.00 3.12 -0.29 -0.49 -1.84 3.12 -0.32 -0.28 -1.68 3.12 -0.38 -0.02 -1.52 3.12 -0.48 0.08 -1.36 3.12 -0.52 0.16 -1.20 3.12 -0.50 0.29 -1.04 3.12 -0.45 0.46 -0.88 3.12 -0.41 0.59 -0.72 3.12 -0.38 0.68 -0.56 3.12 -0.36 0.72 -0.40 3.12 -0.29 0.65 -0.24 3.12 -0.19 0.67 -0.08 3.12 -0.06 0.82 0.08 3.12 0.04 0.84 0.24 3.12 0.17 0.78 0.40 3.12 0.30 0.74 0.56 3.12 0.40 0.63 0.72 3.12 0.46 0.49 0.88 3.12 0.54 0.43 1.04 3.12 0.60 0.42 1.20 3.12 0.58 0.31 1.36 3.12 0.61 0.14 1.52 3.12 0.65 -0.02 1.68 3.12 0.64 -0.22 1.84 3.12 0.62 -0.40 2.00 3.12 0.58 -0.46 2.16 3.12 0.50 -0.50 2.32 3.12 0.43 -0.61 2.48 3.12 0.34 -0.60 2.64 3.12 0.16 -0.61 2.80 3.12 0.05 -0.42 2.96 3.12 -0.13 -0.24 3.12 3.12 -0.24 -0.22 \ No newline at end of file diff --git a/tutorials/notebooks/astropy-coordinates/gaia_results.fits b/tutorials/notebooks/astropy-coordinates/gaia_results.fits new file mode 100644 index 000000000..c0c812380 --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/gaia_results.fits @@ -0,0 +1,1069 @@ +SIMPLE = T / conforms to FITS standard BITPIX = 8 / array data type NAXIS = 0 / number of array dimensions EXTEND = T END XTENSION= 'BINTABLE' / binary table extension BITPIX = 8 / array data type NAXIS = 2 / number of array dimensions NAXIS1 = 76 / length of dimension 1 NAXIS2 = 4938 / length of dimension 2 PCOUNT = 0 / number of group parameters GCOUNT = 1 / number of groups TFIELDS = 11 / number of table fields TTYPE1 = 'source_id' TFORM1 = 'K ' TTYPE2 = 'ra ' TFORM2 = 'D ' TUNIT2 = 'deg ' TTYPE3 = 'dec ' TFORM3 = 'D ' TUNIT3 = 'deg ' TTYPE4 = 'parallax' TFORM4 = 'D ' TUNIT4 = 'mas ' TTYPE5 = 'parallax_error' TFORM5 = 'D ' TUNIT5 = 'mas ' TTYPE6 = 'pmra ' TFORM6 = 'D ' TUNIT6 = 'mas yr-1' TTYPE7 = 'pmdec ' TFORM7 = 'D ' TUNIT7 = 'mas yr-1' TTYPE8 = 'radial_velocity' TFORM8 = 'D ' TUNIT8 = 'km s-1 ' TTYPE9 = 'phot_g_mean_mag' TFORM9 = 'E ' TUNIT9 = 'mag ' TTYPE10 = 'phot_bp_mean_mag' TFORM10 = 'E ' TUNIT10 = 'mag ' TTYPE11 = 'phot_rp_mean_mag' TFORM11 = 'E ' TUNIT11 = 'mag ' COMMENT --BEGIN-ASTROPY-SERIALIZED-COLUMNS-- COMMENT datatype: COMMENT - name: source_id COMMENT datatype: int64 COMMENT description: Unique source identifier (unique within a particular Da\ COMMENT ta Release) COMMENT meta: !!omap COMMENT - {ucd: meta.id} COMMENT - name: ra COMMENT unit: deg COMMENT datatype: float64 COMMENT description: Right ascension COMMENT meta: !!omap COMMENT - {ucd: pos.eq.ra;meta.main} COMMENT - {utype: Char.SpatialAxis.Coverage.Location.Coord.Position2D.Value2\ COMMENT .C1} COMMENT - name: dec COMMENT unit: deg COMMENT datatype: float64 COMMENT description: Declination COMMENT meta: !!omap COMMENT - {ucd: pos.eq.dec;meta.main} COMMENT - {utype: Char.SpatialAxis.Coverage.Location.Coord.Position2D.Value2\ COMMENT .C2} COMMENT - name: parallax COMMENT unit: mas COMMENT datatype: float64 COMMENT description: Parallax COMMENT meta: !!omap COMMENT - {ucd: pos.parallax} COMMENT - name: parallax_error COMMENT unit: mas COMMENT datatype: float64 COMMENT description: Standard error of parallax COMMENT meta: !!omap COMMENT - {ucd: stat.error;pos.parallax} COMMENT - name: pmra COMMENT unit: mas / yr COMMENT datatype: float64 COMMENT description: Proper motion in right ascension direction COMMENT meta: !!omap COMMENT - {ucd: pos.pm;pos.eq.ra} COMMENT - name: pmdec COMMENT unit: mas / yr COMMENT datatype: float64 COMMENT description: Proper motion in declination direction COMMENT meta: !!omap COMMENT - {ucd: pos.pm;pos.eq.dec} COMMENT - name: radial_velocity COMMENT unit: km / s COMMENT datatype: float64 COMMENT description: Radial velocity COMMENT meta: !!omap COMMENT - {ucd: spect.dopplerVeloc.opt} COMMENT - name: phot_g_mean_mag COMMENT unit: mag COMMENT datatype: float32 COMMENT description: G-band mean magnitude COMMENT meta: !!omap COMMENT - {ucd: phot.mag;stat.mean;em.opt} COMMENT - name: phot_bp_mean_mag COMMENT unit: mag COMMENT datatype: float32 COMMENT description: Integrated BP mean magnitude COMMENT meta: !!omap COMMENT - {ucd: phot.mag;stat.mean} COMMENT - name: phot_rp_mean_mag COMMENT unit: mag COMMENT datatype: float32 COMMENT description: Integrated RP mean magnitude COMMENT meta: !!omap COMMENT - {ucd: phot.mag;stat.mean} COMMENT meta: COMMENT __serialized_columns__: {} COMMENT --END-ASTROPY-SERIALIZED-COLUMNS-- END $@(2XC@UPH'?ټ?g@~¶=@lR{Dx@Au-A{WAk Q$@(K $@'}@UP)p.?$i}?Gobf{[Dx@A^AbAX9 $@'v@UP Jm9?r83?+)ϯ̑ˮeDx@Ak?<NhE&ʞDx@ArAvAw Y$@(6'x@UPr?:?3XԼ6y&7CsDx@AUAYAOtY P@(l6`ξ@UO=;?~Dž`?¬(&]HDx@AA'JA5R Y 8@(;@UPu@ .O?P Ʀ@Rȍz@ QXDx@AEAlAYH @(P8J[B@UOvl,5?Fl^0?gȥ"P@)gH> +mwG%wDx@AyAAp $@'&R Q@UPw,?Zg)h?g+m,Dx@Ar4 +Av;Ah<8 @'/p@UP0j?+4y?oG(cC!xᗜqDx@AAA|ؚ @( *@UO??l2[ YcT:)CcsDx@A2tAAd @'_SB@UO%PW?C ?U+/,v\Dx@A AqA#p$@'ݶQ|@UP*J?^b@?O?K}Nw]X;Dx@AuA{&kAm$@'"p@UPX?M`~?<&.H@(|Tw2@UQ E?sy{ ?G:tm8/_Dx@ApCAAz# X@(W }@UPt!i?d?b#[:T޿㬎sDx@AA}IAy\ q$@(a&]@UQDxǽ?ǁ"?>eJ>[/%cDx@A~A}Av P@(|_p@UO? ?q1?`v)տ.kvNDx@A1AgAT $@'҆& @UP>c`?pXU?q尹\pVSD\Dx@AltArAb> Y%@(-(*7@UPA3F}?^sȩ3?J2ڇ_:= Dx@AQA)tA %@'3G@UOoj:?$< G?ޱxM@% +`Կ6Dx@AAU_Av)$@'Ƌ@UP*??tafx?44 6a0EE9m8f:Dx@AAAI $@'@n@UPD5G?򒄃? eJ6I8Dx@A}njAJAs %-@(`[ ř@UO"~Ol#?<#?\CvqA@Dx@AAhA(@'ɢzB@UPLk?tV-?ϭ3*>U3Dx@As"AyVAkn q$@(sK~@UQQ?ߘfc?7pK КqPPDx@Ap-AuJAh I%@(R:P@UOզtk?Tϲ?ڔi*;am4wڷ<+Dx@AAkA q$@(io@UQ +?QXҸ3?Føt~FG֊!QDx@AA3AQ % @'D@UO-?ٓ*oq?xG"h:&\;Dx@AbAeA %!@'jc8@UOOt'? +ΗX?i J<gۿv]jDx@AfMAnA[z &Ӏ@(rʙ@UOn ? K?)E@"xpݺ¼Dx@AIAuA4 H@(p@UO)m*?ٺ4h?8XEj\*7Dx@AAiAx9 %0@(doTh@UOMmv?[|?DI#O[@ qDx@ACAAa $@'nc@UQ?PK?$IgOuwfDx@A}AAuV4 q$@( K@UPKUg@ +kʋ +? bV@$1Դ<1uzDx@AltAxA_ $@'>@UPlm?ݴW_?q;GhUV\Dx@AH`x`x I%@(d%:@UPK!?z`F?< +}nWʿ(@UPV?l*e0?Fz +G?6Dx@AA]Ao A%,@(cg@UOO?Y?|n z?>pCcDx@A)ANA{!$ƀ@(&@UQ|$4?Pa?́.tl, MDx@A"9A? Ay@'P!@UQz0?2뱙?Z J }-l8Dx@A(AA @'/@UOYK:?د,|?v  WtDx@Aj:AA $@'$g#z@UP8ճn?=G`?ͨ$&}T+\Dx@AoDAtޞAg P߀@(Tv@UO)?mz?xÒ!`45>Dx@AA4Av Ҁ@' +'k@UOּ?ҶRC?䐍qUH塿ӄ Dx@A/AA $@'Z2@UP/"7??Ƭ?̸``޿LlyDx@AzA%Autt a%@(h8@UPh(@?(aR~E?nA: U<@;)Dx@AAKAqr %4@(T;J{@UN?ųs1?̐t@^6zR$Dx@Ay +AAp q$@(ƜƵ@UQsU*Dx@ArKAx%AiJ I%@(G8JF@UPCdn;/?^Sھ?;h`?BnDx@A}AvAyz % @'*@UOqy?V3s? G wȿߦ bRDx@A"AZA?$ɀ@'"@UQe{zm?}y?n-kDx@AA~A|< $؀@'qև@UP%=?b8?qX T~8<_Dx@Am)AsPAd $@'hP/@UOqj4?E@z?(u0!srhDx@AuA{Am$@'Ό@UQVb?ޯWvf?}H,Bsx1. Dx@AoAv5RAfX &@'@ @UP#?Zg?1Y\*X/Dx@A*AAi xf@(/@UQ))??D(ꎧ?ԦaT C(_Dx@A?A*A @@(9@UOQWC?ދ(j?V{G @/05Dx@A]A'A}5 I%@(<@UO2'?N?hL +{(gI,Dx@A{nAgAq %@''A"@UOEeNM?&3 ?J'Ť兿eDx@A4A +A\ $@'"Ҧ+@UP}mZ?c +k?79EJݿI@ 4Dx@A`AhAV $ڀ@'/D&@UPҀ?הnx9`?>RWg9lCT0Dx@AcA(A} @':@UPzj #??L} +ho"Dx@AcAXA H@(#6@UOQϗ?*9C?'l[9?Ļ''Dx@AtA_A|^s %E@(\ʑT)@UNVg?r?\\@)S' luDx@A5AeAx] %8@'+{@UN?x8\"?pB3)xN}Dx@Au3A{fAmoA!$@(@UR1#?t{{K?T0J#BVCuLDx@AE3AA %3@'O@UNҥ(D??3tX*8>Dx@AgAmA_S @(&@UNP?1GK? ̌B+@f-sDx@A +A|A^V@'gA@UQۨ?ez?͑Mt}f +Lܿ`Dx@AaA|A I%$@(׼'@UO) +?C}I?^/[p?E i;ODx@A| AEAse y$@(o@UQ1?&?`?HoSm1R9҂Dx@Am*ArAf y$@(uBvғ@UR["v?K?̔MſoJDx@ABA4A"e %O@(O$@UN/?_?}E?˱⅏WrxDx@AmtuAu^Acm2 $@'k=%@UPQ?1ɫ??[ns{M̿zaDx@AzA ArT $@'we,2@UQ'0y?*./?S=>7l)3rDx@A0A{AK % @'s$z@UOǰ?C?􎥍< ⸧S@$Dx@Ac#AgA]'$@'L_@UQƔ?\J ?`}1z'7g>Dx@AfkjAk~A^D @'p{@@UO{4T? ?;6i$l\-eDx@AlJAqӻAcQV$@'%ZF@UR>$! ??&?-Y跿:ư'5Dx@AA5Ay` ɀ@(킊@UNU߆/?V΃s?2߀z7qMDx@AAAz) H@(-@UOor5<?0$=s ??F bGy%LS3fz!Dx@A$Ar&A^S % @'m΁@UOh +?QI?3q]{H,@r0Dx@AxfA~Ao] y$@(b@UR@W4br?v&?_ /hAq-{Dx@Al5ArIAc@'+w@UQdIs?o/DvJ[8m9vDx@AjPAnA_k A%@@(ߌ׋@UN ?|w3W?3 AŕiI\b7tDx@AQ;AA$@'>4-@UQY[)?6{y;?^?V_aDx@Am`x`x %L@(!n@UN xMDx@Ar1AwAiJ %)@)CJR@UOH?5fCf?wfDx@AtfRAyAm %@'Vx0@UOrF?fN?]cop\f= +xDx@AmAsAe $@(By@URf/V? }?:PVC O?M\UDx@A}ԲA At @'N@UN7-?('4G?Cۃ{SDx@AuQAzAlx h@)$4 +@UPĚ?Իqq?JW AD,W̿q2E*Dx@A!A}A՞@G@'pRN/@UQ=?jD'?¨ܦwy;btDx@AOAAf @'-J(@UNY?ߍ.obN?qP7ǿ^E?C)'}Dx@A%AAd@'bq@UR#ޝ?4 ?}UXXBYDpDx@AA}AK %:@'&&v@UNmrd?-{;Z?. j5LOaH"P Dx@AemAjA^!/ @(^c`@UR|G\?ݤ.y?̨VH1 ſ' rDx@AAAA;XA$@'s t!@UQ?J ?%п[S'YDx@A%A(AX %%@'iq@UNf?g$ ?ﯗm-o(~#0'Dx@A_A޳A=t %2@']@UN @?/%?iI(v0Dx@ApAvFAh %[@(Qx@UM11?|+?/?,.n^UlDx@ASAA} %C@'(\@UN71L?့`y?JE~̏X5#Dx@AoAu.Agp %;@)#wrB @UOb5@ Vc/?Lߕ0@DUt@8 kD6*Dx@A]AApsr 0@)-I56@UOtu4?#Ǔ?.uW|6.rDx@AAA  @)+ݽ@UOM61@)X=[?LY'N@BY6@6] (XDx@A`x`x %@'G@UO@m?eQA=^]\jDx@ALA?A" $΀@'<6Q@UQh9?#?3"jyBr %Dx@A~Ar!Av 1%@);@_C@UP&Go"?(zG?àKPQ 5Ja3"Dx@AztdAAp A$@'UTp4@UQ7:d?؇a?4<2Up?!Dx@AɐAvVA}o @(C@UMɩ?>\!*x%MxTAuDx@AAA5 %X@'ws@UMw?>#s?7N*qFK +L=Dx@AlR AtbAb1$@'ڻBP@URST?۞ +?򗢷䀰Xc?!? +Dx@AA_QA)'W@(/Hޛ@USU!?^I?P]1 $Qh¿'WXDx@A})AAAtj $ǀ@'=al{@UQM;?୸ zE? ifXQ}XDx@As 2Ay KAjk& $@')1c@UPk?޸T?6"ֿǔFDx@AxA~ Apo{@'bG@@URZop @R~? y73Ӥ?8Dx@AAA8 0@)H@UP ?+ܻC5?Ãͮ6رoh@mVgDx@AAhA8t@j@'_Q@UR)? V?OLKkS^Kퟮ_Dx@ArDAx5Ai1$@'@URځ? ?;wF}A Dx@AltArvAd9A$@'j{ @UR?ۺ?:f?cZW& .Ϳ`.Dx@An?Av_Ac @(2[@UMr+pԬ?wGn?^, ۲3NDx@AA:WA @(9jk@UMARWYi/#?˭AǞA $@'#nÍ@UO}<+?%8Q?f{֕5U#زDx@AAkAq @'Dkb@UN%b?y4t&?-*!ko2P9HDhe6A@BAJ!A5T @'m.F:@UNPq5?i?bpm@ G rWQ"Dx@ANAA0  @(kRG@UM0Yl?qiw?JIz{8Dx@AoABAy@ %%@'FuӒ@UNʟ{X?!v?M9rGKJdDx@A8AkxAE @)8;h7@UO b?ns &@ pbh@+YDx@A AfmAظ@j@'^6ݐ@URUn ?;f f? 8"wBIoVDx@A%dAAU1$@'mNU@US!ރ\K?u]?N, +$oDx@AA`AsS 8@)^ @UP-{A.?ۤ%7] +?C(eKDx@AoA +A %c@(F +@UM?T^?mm%`ø2,9Dx@AwA}Aos @(ߥ $@UM/3@պ4'+t? Kc@RK37M!NT`@#>ֲATRA_|AGL %s@(~jo}H@UMSG?N)T?T\ X+7Dx@AUA_ AJY0 %r@(7!@UM7Z? MM?"Jvƒ3@#ckDx@AAAy +`@'GH@URV0y?čh\?a'ܿtS!SD<MDx@AԇAlAI$@'s@URP;?݅}"K?`q#a[l BDx@A=AXAN %l@'=@UM:UF?|m8?l oOap9=Dx@A'AZAz %g@'U@UMJMYB?)߰c?N&YM@A96Dx@AlArZAcv $@'Tӱȼ@UPm?ٺݯ?՘yҞտ+Dx@AawA%A %`@)ŀw@UN1`4?oK??ا-qP Dx@AιAEA{ $@(Kw@UR)|?@ )i?3W/ygDx@Am(Asja?:f4بDx@A0rA +A| @(<ĊP@ULͷ?)y+?1VI~X Dx@AyARA %o@)p}C?@UME??ክ=I?LKͿL:nҫDx@AAA @)n+@UQT"Ji?⠹M{ +?kJ㐃Y!D_髩xTDx@AAPA $@)b܄-@UQE(D?޼.?I*/dE]jrrBr WDx@A{>AӿAs% )%q@' @UM_?>6]?%)>xGsb551Dx@AڪAAx ڀ@)Rp@UNf ?{(>?U] + !)(Dx@A>A,AZ (@'eE7@UMV3oÁ3fW?7Zhs?ʺ v"6Dx@AAA @)|Vb@UPǪֿ?ۆK?ݺ?VK{r@l?Dx@AAAJA$@'1; 6@UR_e?\7J? 3R|m9e6{Dx@An As _Afz @&6$`X}@UOafT?6}:??%)fп]Dx@AAA. 9%G@'MWJ@UMԄ%? q?Q%|R/ۄhqDx@Ap3Av(Ag h@'!.ޮ@UNzf?1g?]{ܝ!Dx@AzA)Ah %@(p.@Az@UL ?Z?/u~F+Dx@AlۥArAdj @'>?@UN7@ }?A^@4:7+?DcDx@AGA A @(_I@UL8?݂SC?{R>f\NY'hlDx@AAAW %@&[ D@UO~?ߛtj֎?Qgj8BzzDx@Aq|AwAi[ 9%S@'h5"g@UMן)?Hmq)?ߣ29Y}NpO`Dx@AqAvAhia$@'6,%@USp?|ך?WM/TVIZDx@A +VAAT 9% @)j@UPJ?gdit?偽A~[]@MYDx@A}ܪAVAu0 )%l@'* @UM2?op@&̜$Dx@AbRyAgHAZMq $@'dzw@UR?ZC?82"pO:SQj_Dx@AnAtoAf[Y %@(Y @UL2?k>Ð?@pmUzrFe}Dx@A|AKAtK$@()+@USM?:8?}oz¿c(Dx@AlAsAc[ ǀ@)3cѯ@URu? >3?Ƃ(9ZyTDx@A?AI}A] (@)R°@UOCR +?l&By?¥v[aW{i1ֳROmDx@A\AAs: i%B@')tJ@UN9?^؂?ۛp/4P&y?`XA;A@_A4 $Հ@&LZx@UP=V?ޞ +nk?C̜2]dn)ۜ%Dx@An9AA ( @)#@UPXt?ؑO>;?޸"/*nDτHDx@AVAA @&K.:@UPIi?z?G@2a@/\"Dx@A3AwIA + @(3m&@ULUk?c n;?\M/2"Yt?,Dx@AYA8A 8@'9ĺP@UMVi?o%z,8?%8Wݍ/ᰐb-Dx@AAJAxSQ$@'$xe@UR8a? ;R a?wKڹNЗѿfrDx@AXAA6Q$@'wF@URmm?:?% +!Bc(chDx@AЙAAzZ $@&xHU@UP!xQ?r?_8i#@2:([X@0Nѡ@T(Dx@A~ +AqAz) i%@&-U;)@UOe1?o?rDkT5fDx@A^J/AgAAS? @)JM@UQ}G-?ZYصt@rDx@AAM+A( %@(K@UL#\?UsT.?Jt_ՌuEDx@A~'AAu @((.@UL]?_ +?h%zj8mjDx@AXAA> i%9@'I@UN)@ W\?CԵ@J.2.0Dx@AuGA7Ag  $@&ηO@UP'(B?Sq&J?)[ '`u]^ǙH g7AUdA_4,AJL %a@)`vhH@UN4 6ӧS?ф']~uf.pDx@A~d A8Att !%7@)c9@UOr^F??+š#SݟwDx@AnEAtJ\Y8(ĿkDx@AymA_A;e @)AR@UQT=Y?Γ{?&" 󆕄 +ǁFDx@AcAA{~`@'Y*@USs h?䋁Z৵?!>scEjڠBDx@AAMAȬ %@(@#@UL?\m?wK8k}뫵kb:Dx@Ax%A}Ao! a%N@'(z0p@UM5M^?DƵ?ļ8?}d}@Q3Dx@A`AA y%@(#aw@ULooJ?D(2~?lXUp$NjJ bDx@A{'A8Asp %U@)(@UN.?q(?ǘ7=ѿK$ Dx@AAxA~ y%@&r@UNƷ?ߌF?F<]4ژRO LDx@AkLAqAb۸ $@&G1_@UP4.Q?ÝL_?uV(q d.k{/VDx@A AA} %}@).d>@UM^;?}v?C7?@ '5j?:&Dx@AIATA} `@' j. @UM֖?+j1?F@WR7}(bDx@AAA* %@(Wv@UL_[?1^վi?կ v7z?XDx@Ap`x`x %@([ž@UL_ ?d)1?v*eq Dx@Av]A{DAmxi @)^Wt@UR<&?RaS&I?鯌_W@#?EN*YA=8AFA3* %j@)kh7[@UMPm?7y? [0!Q+Dx@A{jAeAi $@)xn͔@URBg?-[:?G@#w )!ٝ$d)Dx@AUA[tAM Z @)wK]#"@URr2?fhE?LDzV@#R4!{1ɉDx@Ax!BAAl'k $@&Rݜ@UP/?E,N?"Éy{<Dx@A\'A`QAU @&x%@UPkfN?i,?5|Gy?F)FDx@AtA> A)& $Ā@)gH@URy͎?Ol?5ۖ@=谐JDx@A'AA + @)dW8@UL'?O?$?MNU7ұ+⍿>pDx@AA#Axq $@&a@UP<_5J?;(?Zmi1Q2`HV"Dx@AFAA{Y %p@)w˰.@UMԊ?]]HS?yxpu%*Ov}I6Dx@AoAڷAw$x@'S_p@UTj??z?k,MrBdT-Fse:Dx@A"8AASr x@&g]@UN7"?*LfAf?c@#Eo]cDx@AݭADwA@'v3.@UTIh6`?{=Y?S7]2IcwDx@Aa|AOAR !%@'=nU@UL<(?|ZR?,DR_ZL-)Dx@A{qA BAr( 1%y@'y~I5C>@ULS#? +ywz?3 +&v}(Ef"#!Dx@AO)A9Av @&K!F@UPZ6C?ћ?ģ! nZDx@A\A>A7 $@&6?@UR5e?[e?N5 LU5Dx@AmAs1Ae7 x@&6g@UOp{?eR©M?~oBn\nt$F%^Dx@A*A#AVY$@'[0@USf%?Qt0.?Jy+vE6 Dx@A8AfApX!@'1nZ@US_ol?5Ő?YV3HcP$s9-GbcDx@AAA&@(@UT'q?9d?ŔR@Xzl?]xDx@AIAA;E $@)V(@UP6 O?xf6K?.`:3~+Dx@AA*Awq %z@)u}Dj@UMAE?UZ@?nΝ!Zk1(Dx@AmAA` x@&һ@UNP0N_?= +{? c@84S*z@ 0hDx@AAA] !%O@)%n@UN?UǝOw?vXk"S皘2F)Dx@AmeAsYAd׌ @)?X>p@ULEy&@ r.A?"XB@Lo> mYG-;Dx@AҐAYJA. T@&Z@UR8?oFq?E29*m됺 ADx@AmAA $@&87@URLɓ?PL`M?2'ҿ+TS FDx@A1AA= %@(@UL;+*?ޣ̩~ki?#a麯Dx@ARA,AO; %@(M@@UL,1\?ߋ<?^$&2!DD4]Dx@Am AsVAed @)On@%@UM S?pYS?s6 &O~;0Dx@AAA @(58z@UT/b9?:[|V?t`Rb:O?#aߺDx@A8fAAp $@&‰ׄ @URq[G?ZƶI?]ՃU1rȑHdDx@ArWAx Aj$ @(hu@UT7??窔s̢?ՇgGsFH.*Dx@AA7}Ak@(4@UTkk?%o\.V?]@)Jszr@UTd?⨼?MwDx@AGA A,n4@(x@UTca?P@4Xl?T?p{d[ eDx@APA]$A0 @( @UL!1&o?%äV?2 |',&3 d{Dx@AAAzA $@&@URs6ө?S4?g#՜#ܿ=:$9Dx@AAAx $@(Jsd@UT-|#?Yts%?d,@5{l3mIDx@AOsAmA_ `@&_@UM/?ԗY? Sd߀t])ɾDx@AAiAx H@&5*`Y@UMW ^U?V`s?;I<}w̿ov}pqDx@AzAeA y% @&l-@UO2,5?.W?(, lYM/Dx@A}A+Au + q%@'.#45@UK,}k??3vc @=u?'FDx@AA AP@&1@US L$?;e?ăK #@ ` ˍv؋Dx@AIAAܦ q%@&:@UN< ?x+̢2?h(ayR nDx@A~Ao1Av  @'{y#E@UL?Ю;?PݣG Ϳ vDx@AH`x`xX@& GSg@USln?ݵI0; ?Fo)혖ҿ4]Dx@AAi`A|e  @):@UQ?ݩ. +? Yi{g ,FBDx@AmA*A7 !%@'ĨħL@UK6SW?*B_?=1L2U<5LjDx@A] AfAR %@)P+B&l@UL̫?ne_k?௶^H+fRDx@Aj+Ap'Ab8 @({E@UL?րG?Hx˂=GۮlDx@AA>Aw r5@)@UQ#7?zqr~c?m?fD;tRT?~ YDx@AbAEA %@)^?(@UM>?1j?swt?uG?ҼIDx@AYA AJ %@'ysY@ULV^?ٔ?v:Cpxc_Dx@AAuAvH T@&.@URU腰?㑿?W#_X?ݹZ?k$'~Dx@AaA AЬ $u@(dp@UT?4Pqfd?EGs,Bu,TDx@AoAA $@)=@UQk@햩?,MC@5l7@HN@B^7EcAEoAM0}A;u %@)/1@UP}?ݩ''?y qf?.Dx@AqAwJGAiEQ +pހ@)m@UNz:/?"I"?t|Ojq/ [Dx@AZAApˀ@'ќ8@US7G?ޜ@?ỹHm +@DDx@AA6 AR $@&o?V @UPd"E?_-yx?+ %MRjaDx@AyA$Ap %@*qhSF@UP?QQ K?Z?ǫ_y??ͥ$Dx@AlZArAcP! @'6n8$o@ULU2?߷A`V?S6K]0Dx@AAAa9 %v@)ġQ:@UM?ܞ4l?nP_M뵿9Dx@ABAQAH: I%d@&8H@ULRs?^E]? r4_{CKz~Dx@AA)Aw $@&{ޟ<@UQɪ"(?Ѝo-'?GFh3")e<#=KDx@AsAyAk i%@(dD@@@UK)?WTMu@{?u?̰?=DĩDx@Ax:MA~[YAo +Xр@)ξJJ@UM?-y9?|@*f>B#chDx@AAtA %@)\q@@UMx_?E1?->~Fvb| 6DGvjAPAZƿAEGV @'@UK.h\?ۦk#?IJ` }QYOoK㌕Dx@A+lAxA=$i@'-N@UTq?iR[?20AtxQ8;%$2Dx@AvA|An: $@&aܮU'@UPn@Ju?zU?@?l$MP{Dx@AnkAtĘAfci $~@)'ӯo@UTk-?;ZAH;?<5^{"@p*Dx@A_pAeAV_ d@){!@USG)?싅H?/GꨚͿI ?vCkDx@AA0AY %~@)?~@UM{?1&y?UgSN^Rؿ5Dx@A}7AAtx@'Hе(A@UT4?܁l +?WdZ˃ym? +g@sDx@AAAb~A @&oV@UOߧT7?/-Z?)IŽɵ;(FB;Iѻ/CK +A>AIܓA2 @)P@USB,?1h? ˿զ?`j0ŃDx@AOAWAEp@'z,X@UT1%?|w? `@+O5?@Q0DDx@AAA + +x@* rc@UO)E?sĘ6?jMh3m2)DxDx@AZbAAX +q%f@)pr@UNJ*R?ߩ|?Q = +ADx@A2AA{ $m@(rl@UU6ke?- + +PbDx@A|^MAp&AsE +y%M@*(r@UO +-P?uAI ?5Lbrm:`**hZfDx@Au^PA{IAlا Y%J@&!VU@UM{ ?k5A%? ^MBo>Dx@A\ujAdAQ| @)_(@ULmv?ew ?MaF#˿'+Dx@AAAU1 $@&Vzk@UPa$6t?䥯$?+PלrPDx@AlAsYAc$d@'\~@UUk?[;7?#j\hANϿ +E]rCAJATFA> $@)VH@USB?n|?Rǚ<{4cDx@AxAAx調 fDx@AA3=Ayx %@(Z[`@UK,Oh?cx?R%&N`Z:xۿۏqDx@Au8AzAlY +@&&:@US$4?jE?Pk[n6ҧ wfDx@AEA%AY *@&^@UQCL?:DJu?zTE^@'BɻDx@AopAA_f %@(="$W@UK~3N?sڂ?Y~݅!Ll52;Dx@AhyAq+A] (@&SyF@UOǨҤ?ՠBz{$?,T|>7_'&#Dx@A[3AbAD I%]@&j@UMˡ?4?Y1zHt'Dx@An'AtrAfp +q%Z@*b@UNKͿM@~L?x?ڪ@Aqtl“J9Dx@AvAA>^ +q ;@*@@UN?-*?x}s@܆3?1ə~Dx@A׆`x`x$d@(: @UUef30"?ۙzDn? B[ljonw~ Dx@AhAYA1 +%4@*dn@UOR?Zڛ?e­] ˖`ӿVӪDx@A_6`x`x$_@' m@UUXH?36Ad?uc -V$ Dx@AhAA $b@(M'@UUq&A-?ɨ?Ji>N]Y"Dx@AUnAA(jy$g@'K'ӦG@UTd?L]?WXKHXI"jDx@AxA~sAp! %@'B1j@UK{?-ɪ?ctt,MIDx@Ad ArAO O@)wh@UU6?iĤz?s1|^^ | }Dx@AgKAAH)$j@( +@UU`:?[XIw ?Ƕ w}BZ@+t8SDx@AAAwK4 !$@&MC[@UOU5#?}l?7O#bTʿY`'嘥Dx@AkAqgAcj I%f@&̶;sa@ULco?eSD?[Aj;1F?@gU=Dx@A}:AAG3 %@'6٥@UKrKm?ؤە8?!kܿr=mBsCDx@A~:AzbAv| @)@ULa4?C~`z?KQ8TgB NutcDx@AzFA=gAq:L %@)fjU@UL.a?ԭBtS1?[̿ŧ֑ѿ+c(Dx@A1AAK %@'`@UK^5x?͊S?]S24n5?Dx@AAAzW_ )$@&? m@UP,A@ +Bq?<@#Yj=B@1* HBDx@A[23AcnAPF Y%T@&Mz@UM0~;6?-L]?w_Ny 3k}Dx@As$AxAj3 +Q%@)[@UMfg?>h?$pC[m¿(\?oWJs?p}Q@!h~b?EX~Dx@AzKAkAj!A$@)X=!@UT?cx +y?8N wCtPtDx@AwEA}!Ao`i$@&@USRʺ?xt?ӰX?԰$0ԎDx@AA|A9 a%@(GBNI@UJl0N?ݥUcV?LćM!6ĿC{?Dx@A޴AAw )$@&7S@UOM,n?s:?W*y@$C8g¸?Wf!+Dx@AAAn +y%_@*"@UNh?^hi0?qX' %GvWZA-7Dx@AmVAs_AeP $@*61z@URz]d;@W&-?Z%4@6F{@9Jq*Dx@AhAvAY $@* k@UR8Ԉ?w?ƼφS?6Xj<Dx@A~nFA7Auy$a@')]y@UTGA?˅25?2eI?dd`Dx@Af*AnۉA[ %@'_~:@UK%r]&I?y2?]  3t+9Dx@AxA +]Aph5 !$@&:I2@UO!Z?ݽ7>>?>ƕ:aTDx@AnŸAtAf= a%@(VQn@UJb?H=\?mhq0@ l 'A'P}Dx@AAKA @&2](@UOzky?k&>?S0m CH_'a]Dx@AeAQA a%@(_EQ@UJO~?X#͒+?o'WW݊ ?`‹Dx@AzAAo> $π@*$۠@URY+$@ӻK?S?@6ɅX@9~NoEXw AM AU{ AB$ a%@(+,y@UJt?5?', +2YpWfFDx@Ay7ASAq*~ $u@&Ͼ@US۬X?<˾O?8tP`Dx@A\AA}td a%@(uCŀ;@UJo???Ɣ  7eNMDx@AMA.KA|. Y%@(h!Mޢ@UJ䃕?,]f? Oe 5ٿ؁v=sDx@AxAA}žx@']@UT_?Ay?ݶKB&FDx@A3A^BA %0@&Vt@UN?N1 ;?_2˿\9sUDx@AxbA}2ZAp; +%@*God@UPX>9?ۜ?-^[U?e_ɀ P$Dx@A!AA + $@&nDB'G@US(y?޼%C?~M"@,/0@SDx@A8A4A %@'u@UKR ?*g?'HiZTDx@Au$HA{V Alv$Y@'`k>@UU]z{?j:3?n ο4ƭY_ @Dx@AA_Ac!@U@)_du@UT(?A +?V@9$?0]PC\Dx@A +Ad0A $@&&;{2ZE@UQ9,?e8nP?Yjm-f!VN@t!Dx@ATIAZj{ALee +Y%}@*+BG@UMWKg? 2wDx@AsAAA` m@'?HP@UKn?7?{.lp'hHjTDx@AUA7A_3 a%@(R@ @UJ{"?qgE?|ʿ*弚UDx@AɉA +A @&$Z@UQT{?$};K?{b܃|a#-TDx@AAhvA %'@&D^J@UN;&96?OgO?ȱ*0G@̌11Dx@AA*AxGy$_@'e@UT:?߂ {E?,Ob47H^ +qDx@AzzAAqR!$@)_q"@UTg|?ج:2?01޲'?ԡ@iʂDx@A'ApA$T@(> 4!@UUR{?Nf;?" -D%Ic@tSy'^Dx@AQlAVaAJ6 +#@*D{ @UQa?p=]?_roC\LqDx@AFaAA$X@'BH]@UUR?ѲGQ2?S7]J -|@BtDx@AA֖A{ Y%@(:I:@UJ4T?n۸?D']">T#Dx@AAZAs a%@(zQ@UJk?5e-?),i*sxt%.Dx@AvA{Am| %@(GBMd@UK ?z? qADx@Ar$AxvAj 9&܀@(.@UJQ?|%?a} 6]!錞4Dx@AkkA]Ad %@&4Q{@UNkb?# ?t~'~μ4nDx@ANAAq Q%P@&u5@UM+S?bfa*?{O/S͸Dx@AwA|!An Q%H@&d%@UMrh?(X5&?/5CpJAnEDx@AAXYA|b +@'p3@UU?B`?Cy,a@]1Dx@A qA A +x@*@_a3@UNp=zMMN4?Pt?hAgI?:G\4vDx@AMAPAz!A$@)IdZ@UTsׅ? ?NxwG[$V4$Ɏ0Dx@ARAcDAxD !$@&54@UO{3~?&?h"@ 8CDx@A6ApA˴ j@'&O*PE @UKf;~?&?C[DX#?.w}Dx@A>AA +@*Tn1@UOQi(? #%?>ׂH?{/Ii|Dx@ANAfAw6 A%@&5K4@UK֘??S?⾫tR/jU QDx@AtAz=8AlR +$@*Mz$@UQ̣[R?tܒ?z?az{?qWH5Dx@AsADA׆ A%@&Z]@UK 2?ߕZ;?SP t^'>>?.,Q`*>CF6x5|iAAOAK%A69 %?@&A^SP@UM?p;Um?|hYû\FDx@A^AAv Q%e@&~E1Q@ULv?Z#?haǭn׌&.Dx@AnAtyAf} z@&)g~o@UNsSm?೩?rq7!ȰRDx@A=AbAS $@&#֝@UR}vXQ?޴˯+?-FUS5<} Dx@AzÖAIArT $@&F}*@USBU_?! `?BJ̧ 9?ҪWDx@A&A> A}2 0ʀ@&Y@UOV?6I?093C},@uKDx@Ay=A{Ap!I$n@)I)u@UU|?9]P?ͪy > +/6Dx@AAA$ 1&ˀ@%5R @UO?fEŚA?U-YϾKt_:'Dx@A{OxAAry$S@'ׄ@UU_P?Ǔy?ϊp? 7݃b@3Dx@AAwA5 P\@'dx*@UJk_ +?-?=q HdDx@A}8A,A +y$W@&T@UU@?-̤C?N/sa@)x|\@*I!:eA&iA1 Ak!$c@&U\@UT$$?r?N2i@/ЌDx@A[A`:AUdU$O@']@UUr?~w?00CiMzfDx@AqR:AvvAh% 0@%q@UO3T?t͎?xBƿGlȿcCDx@AA+Alb 9%@(ݨٌ@UJC-!?[?ʇ4"@ +&Dx@Ax A;AoQ %@)fKm@UK=c?AaG?aG`@1cA?'YDx@AiAA' 9%@(;`C@UJFX?(#?q@%3)K + |Dx@AfPAkA^hK@&UxZ@USm? 59?߿{=?]"Dx@AuAEA{%@)ǒ@ULRa??K\A? GܻO-7@DسcnDx@AkAA] x@)^́w@UJҽ?b"?*Ü?xq?N-=[XDx@AFA}A  I%ƀ@(Bk5@UJOshN?dBĢ?fRʮG5(Dx@Az]AvArp$@(Vצ@UVH?NY \?Vt @xDx@ASMAAP!R@)X6@UTzF?FE?_1T-wyb/?Dx@ApAA  1&@%9~@UOCt.?1zx?U^d:aٍLװ6LpDx@Aw6A}6Ann$F@'<@@UV!.?R +Nk?Vj?RDx@AP*A(An$$N@(> '!@UVBĀ?;?hs3|P+:Dx@AAkNA}# +!@*w"k@UQwV&?܎TY?M4lvh7zNx!HDx@A`|AA{B$v@&J{[@US D?X0@j?Z4W 9x daʼnDx@AAA  +X@*#$Ã@UM+z?踖| ?Nׁ$d;xs%pUDx@AAsA, +Q%@*>@ULSX?_W?] +*E<H ~Dx@As,kAxAj P-@*U @UR4mt?bM]("?Ƀv =N_A [(,Dx@AJAAw +Q%@*&6@UL ?Wq}?ӇmStؿ6uDx@AxA~UAp"?%@'G7@UJX??-Q=f;l@ Dx@AoAvAf$v@&FKjW@US284@%`Y?Ôx@ n=@ _cK͛Dx@AwAR,AhO +@&Cꎟ@US%Jܩ?U+_?@ziv1cr@ml-;Dx@AwpbA}0Ann  %@'cM@UJZ2Q?݈R?}<kAe:iDx@Aw+A}>AoF 8@%o5!7@UPO?e̍s?w]ѳF!ep )0Dx@AAAI % @%./5O@UNŀX?دm@?\ sm9-ϿxDx@A#rAAvv I%@(y$J@UJ;?T +?C_\@ϝDx@A ACA}%&! $@*'sM[@US"ܚ?+R̠\?~raWK)(f NDx@AmAA +i%k@*i(lR,@UN^_fy?n?AB5>Zq3Dx@AvA|;An. +(@*rgUjW@UR&Z?d[?ya87^B,B%Dx@A}AAty 9%ɀ@) x@UJ9kA?tS9(nT?,q#XDx@AiAoUAayz@&|+5@UL6~?*v?. +1ѿDx@AA"A6 1%̀@(6HJ@UJ_l!?q7r?C]kG+EDx@AnAA 1$@%ow@UOw?$7Z @<~.Dx@AAAs H@(+G@UJ/t' @Hy?W@3텼,Wb/d0ŌPACaAHA;*$B@'.ݼF@UVJz+@>'!=?V,@ID@Lt?0@>r˄tAD AJA;!$}@)#D@UUy>?k3?FH1@\%cf?Dx@ApA/eA=$n@&_XM@UT)b?Dp?2{E}Mn+bb7Dx@ApCMAuAh" +i @*i=F@UN8`?qTP?WDB +UwDx@AAqA$@(`M @UVZ@?^ ?R'MEx!Ŭ헗#Dx@AkAA-, %@)RqAE @UJ{*?g]z? ~vN?= +\w5Dx@AA }A`%@)Nt@UL.]?K?8BmTD޷WBDx@Ac=AkAXi $w@&.LP@USǝf?w?Cuk"sE긺{Dx@AmAsAe PV@'b &@UJF?>8?D=}zLb,pDx@AACZAz%@'݋@UJ@-z?ЇƟq?˧OAڻ8í?ٯW%Dx@AAA8  @&:JR@UU-bV5?[Z?2{Z,4Ly Dx@A,A#GjDx@Ay_AAH %-@&-WWA@UM?уZ?C߭rd G?:1Dx@AbAA|%n@&\ j@ULe +?߼Oh? 'o5<VyDx@Ar AxjHAjRa%@)>"s@UKh3?շH?y./@E(릱Dx@A^AAP %@%)@UNjL{?^ˤ?m3vJ?yyC/Dx@AyUA"Ap +a%|@*l@UM_?Ͷľ?šu5QDx@ALAA~ PT@(( +n@UI:>??׷fɲ!]䚙_Dx@AAA!I@*6 +$@UT_] ?&?,d@6E,U㽭Dx@A0A#UA-*$@(<@UVԷ?ǯ?¯.GR?ҽCH@VIDx@AA A3($@&ի|@UU`?i.-ă?9$<v8`߽H?Dx@AAiA&@&):|@UM?1$:Z?lCN +ev@n]hDx@AqAvZ7Aj!$Y@& @UTň?:^I_?-?1(3?G|TDx@Az+ADlA +%:@*g4@UO{?ep0J/?.f̿JY*ԙBDx@AޠAAW@'7I@UJ??|ľi>@A1Dx@A)A@A%@& +hs@UKWf?t?rV-(4v|ի*P`Dx@Ak2AsA`t:$$@@(L f@UVBH?dл?vXnҿ?EDx@Aq$ AvAh2%À@'\`@UJ;P?p#m?xSWk)Jb.pDx@AOA +mAf +%@*U@UP?|m?Qx@~|29Dx@A:mA*A~ +% @*o׎@UP^?Y;?3 jc*ٿDx@A1ACAyGd@'??!f@UV@_?ηC` ?̤Wnz-xS?6Dx@AXAAo +i%m@*$@UNj1?ۜ& f? 2GEc?liCDx@A5A4A{o $@%p @URUJ?Ś?Cvu̿cgNkDx@AM\AeA%Ȁ@' +@UIL?z#?q'mqW@ <+Dx@A7wA7hA +%3@*)@UOXk?g+-?>4=,%vDx@AANA HY@( j@UI?$IStH?ȡ|2t{䬓رDx@A#AA, %*@%g8@UM!?*]\EVDx@Au"}AyrAn;$@@'R @UVb?ߑa!:? +gLKA&|yDx@A~A Ax( +@*ʺo@UOR?m` ?2L fM\=gDx@AAAz6!a$l@)0 @UUǩ@ +v?DG@65Ds6vDx@A|FA-_At][!1$r@)Ɗ+@UUyM?Αb?m@Kg`]vxDx@AvHA{rAm%@&#F2@UJ1e? Dx@AAAAw I%Ӏ@(f{M@UIÌ/i?ؓ!?P OZkΦ-R=YaDx@A A>A +%K@*Ypc@UOW "?ܳYI1?ITysL Iڛ|50Dx@AKAjA%@)?'@UJř.o? +9?!A**4Dx@AA~A %@){'~]@UJWL"$?9xF?3s + +:rDx@A1CAA +i%|@*<鞔@UNIP?Q?9YֿKTDx@AkAq*oAbJ +`΀@*t1y@UM{ڼE?E?Iaނ7q/DDx@AecAAx@&&c@UT8?<В?AOvyd@F+Dx@AAyAe!0@)ņk@UUf9?b'?pN߽7p@`$mTDx@AnAEA#F +I%@*aAl@UM?1J!?,uKEY~`<:}JDx@A~APAt? I%@(P}@UIül?H޼?!n n @176@B6cDx@AlhAu+{Ab#v!1$q@)8@UU\ j?ctP?bQ8zUlmPDx@AA13Ayj +&Ѐ@*Kg@UPA?S ?MȨǙ9RH@\ts{Dx@AfAhA $$5@((F@UW\_7?t?8Y@ a1O@F51;nDx@A tA)A|{ +&@*س`6@UOݐ?ܥj%? S/vw +.Dx@AA.AA%J@%w4@UM ?ޯ~ #|?$ڇOt1qʿ_7Dx@AAA}g +@*Ȍ. @UP&ӊ?z?Hd5$@ [|M@ "Dx@AuAA|!q$F@) +Q@UVW?ݠKވ?H@ULaS?:猗?Z@3In McDx@A`x`x +&π@*Ƀx@UPv? 7+?Ã6R#@Kw@(l%6iZDx@A;J`x`x 7@%kZ@URBdp?6?:RPynӿ3ͳ8Dx@A,A+A%h@&Mj@ULbyC?gE=?Οn @A'9loDx@A=AA~#$$4@( +ẍ{@UW)?ҟ<?wItAP?L~IDx@AVAAtq +&@*oW̩@UPـ?~?^iTERDx@AnPAtGAe!!$@*6F.%@UTh ?H?-u=9YDx@AlArB7Ac $@%5A 4@UO6?@I>?OqޒշC~@Dx@AA~DA d@&f"p@UL` ?aw`?A|>,P'ffDx@AkAAz:uP@%,iq@ULGO?S ~S?s(lm!q + +Q@8dDx@AOA}An!p@(uܦ@UVn?I ?kۑQ~bIDx@A$AJAߴ%@&΂jsx@UJJ&?EY? 'gfG̞}Dx@ASAvgA!a$Q@)])@UVb?a`q>?6F>'._xCx@_*UDx@AWA]AN0!! @*7L:@UTh5?s"1?f?3py@O}Dx@A `x`x!a +@)]C@UV"DDx@Dx@Dx@Dx@Dx@A`x`x@&M@UT&4?适ᑒ?T#Ҙ0BX)3ȶDx@A~A,OA %@&慷F@UJ^?+?0U_F?T x-l48PDx@A!AbAq +i%@*`q@UMԪL?K?ewINH!Dx@A|AOAt  +@@*Hu|@ULHS?a)V?D2\j_#X60P8Dx@APA!Ak@'Uw,@UV|k?~7 ?ְ 1T?BDx@AdqA2CAc $o@%P<@USu?5 ~Ҹ ?OUBx)Dx@AlArAc0 +@&^ x@UUHkL?*i?|5asaHK=lKDx@AAAǥ! @*T@UUIaNI?,X?,8κ !?@ +NB +.\ALAXYA?š h@%~"x@UQ?*,8?AdQ$+Dx@A1A >A/" 2@%@URܻ?YZs ?R|nqg.#͞Dx@A>AA I$@%!@UOH?Dvϱ?h~3vIC\2Dx@A}AAt%Ҁ@)Q8@UJs{?VKb?#%?wߛ Y+Dx@AoAx Aed%b@&EȐ@UL| ??Z]D8<0ƟDx@An'(AvAcP Y&ɀ@*32@US>h??™?8PEUOt\Dx@AAAx@'=#@UV߯?|O?Ψ逗nAA簳^Dx@AAڮAV H/@*ӣU;@URx=?'qZ?tEvl !u nDx@AAA_@@'$Dd@UI`=?Ԝ"x?~uvKOgt\xDx@AsAAf$2@'6࠙@UVԁY?ɜ=?: J|>@,0@JDx@AA\A%Ѐ@)wWhV@UJ`ۘ?ނrB@US)w?)z{N?=W\S"xӤ&Dx@AlArKAc^$P@&2i}@UU(P?!ރ?`.=eh޿#{hDx@AlAoAeLG%@&\ݥ@UK@C?R?z- aweHnU6Dx@ADAIA]@% +i@UMe{:0?.ռP?GP<^o&j&Dx@AHA-PA!!a$S@)՘K@UV? 9?hϰH4ƽHOUDx@An=At6Af])$=@&)X̢@UV!4}?u\? aCEۿ)E<Dx@A~AAvek@&$@UKțJ?u/1?ʱP{jćA6ܖDx@ArA&"A @%TY:@US?o ?F-޿iaRrbvZDx@AsAA>@'f@Q@UI]q{?zQ`K?Ů- t_$@ ꍆJDx@AgACAe +@*缩"R@UP?ጥ0%?C.'# Dx@A[AIAՃ$(@')_a@UWJ_ G?F`{q??kA?7Dx@AAZAV@'EZշ0@UV^3?l [?HtVDܼ@nDx@AAA` %@%x@UN΀?1@?UhE`+2|RC Dx@AATA7 $@%eR*@UR?߼8_?[w.rhDx@Ak_ArrAbL$)@'s)Yg*@UW-$:?-#?yBOGRDx@AV!AA~ Y&@*y+@USpFa?cR?͑&BˤDx@A(AVAyx$ $3@(g2@UWmXqE?"ޘZ?PK?tl7\@D* =2Dx@AEA%A^r$ $1@({@UWp?0]?Aն @p- ^Dx@A}AyAty s@%rX{@UN.0k?o0?Y0u/vl\TаDx@AϟAqA }! k@*ZaU@UTRT>?Ѥd?C&6ɿ~uJC? ADT5Dx@AB^Ao*Ao%р@)Mz@UJ ِ?Bf?Cw@%׿-?=sDx@A|AUApx' H3@*e@UST,?z?LrT r,X|CMrDx@AAA}!J@&֯@UJQD.q?ᑤΡQ?"Cb +zI@ 7e[Dx@AޖAA%@)ל u@UJ@ Dr?Nce[@NjECf@8 Dx@A2`x`x $o@%ג>Q8@USվ~?hxh?ls'p^@qDx@AzA A{<@'mPW@UIrPa^?z%u?jW?zUK0@_r(!oDx@A56A?A%h@% @ULBs ?۳?K89וaiו1Dx@A{͛AgAs=5 a$À@%~@UPw&N?2js?ޮ-T#_ˣIDx@A~vA A +B%@&kC%@UJt?aWyH?NHӕr4ڑDx@AnAtAf,2 +A%@*Q@UK@79?ޮ,c-?YZoҙ)9i׶P +Dx@AmAsAe @)@*t'@UR k?n'j?ǥ\4N@7ZF@j EࣺDx@AA=A)x +A%@*]Oo@UKܟb?hOR?1 |s/ퟛDx@AlArAcq!q$8@(ߑȝ[@UW_q̱?MG@>ǫ?!ο[T?Dx@AAA~%@&`i@UJ?L?>VM?Bw`D2eu؃vDx@AA=KA1$?@&eO@UU?ܚˆg$?~bW> +[}Dx@AOAAP?@' FU}R@UI`?s6^b9?` 0N_fDx@A;AjA&:@'H#@UI,!*Z?""=f? dץ~;vUDx@AvA|ZAn0 B@%\&@f@URZ&?? +ZV?Ŕg2@ agq!ĞDx@AAA5 + p8@*x@USz?E?2+ .][cDx@AwAYAZ Q@)&|{K:@UI`mgY?a?'?v?gߏDx@A`A!Axy i$@%2γ@UQHlu?I`B?κs5{z@%Dx@A$A;A| %@(J@UIBu+?rWJ?QJ)?Ɠ?*Dx@Am:Ar02Ae%q@%I=F@ULC?݋ůl?W:)0S$osmPDx@A} AAt i$@%v +@UQP +}??N>@!{/T@vLDx@A>:A. Av%@&hJ@UJ.*?Q;X?s ˭>ϡ Z4C*Dx@AA$Ay@&a@UV[s?Ňrr?gE¢ODx@Ao7vAtgAg +%@)S~n@UJ`ٚs? (J?q5 K(k7CDx@AAxA/K@&C=9@UJoa ?z-3?$llYtiOLDx@A|A4 A{@@%Q@UTlNM?%N? O@r+.xD0SDx@A~A A1 +&Հ@+N@UOjJ?ߒ5V?i\پJ =@AGGDx@A>AxA{H%u@%גּ@UL==?(? 2w26`ܿ䷍kDx@AfA;A q&@*z5q@UTFa?,>#?:rdb'%?]TDx@Au9AA: I&@*C3W@URBP?wvt`?͉n)@hw\ >ɎDx@AkArgAbD%@)ƙQ@UJ??چ6?gy# +j^1f;IDZDx@AvTA|sAn!x@)'E@UWpBe?݃d qU?s'1Rv8*tϏ]fDx@AAşAZh%ŀ@*PR¾<@UKH[Yd?\[?WGa +3d^CjTDx@AiͅAoAaCG$!$&@(?N@UWL?8P^?c(*፳g":Dx@AA.hA6!)$k@*Ahx@UU 9?93?&#j1Dx@AnHjAvIyAc!%e@%n&@ULF8%;? v?9nowG\&Dx@AyA_AqC%@%}h@UN!n@?U9?10l?ݒ~]?Ȕ?Dx@AsA{Ai|%@&i@UJ.u??<=?'@XT'h+IsDx@ArAAY# A%@%qG@UNLwR?I(IT??9BD# +XWDx@AqAwAi I'@*+Pe@URRH8?_?MXNWEpȿY䌗Dx@AvOA{An[%^@%~9@UL?q3U?:oPZD:3oϳͼDx@A ]AAM  I$р@%[cĐ@UO_?myw ?E yy}XSDx@AumA{zKAm<%x@%&%Y@UK֏t?mϡ5?__χ?)UDx@Az^A+Ara8 A %@%b@\@UO=#V@qfx?f% +@DgUΔgDx@AAAoխ c@%?ԗ@UL8?Y.w?'m'Wd +Dx@AkAbAhI$G@&5nΎ@UUE1?޺ѳ?ʊE֏BaDx@A}mAAu# +߀@+z@UPid\?^X?jÑņ.cp_D3FAAAK(A6I +0@*Ԁ@UM1T_b?ju?)y¡3R~?~ +}ڄDx@AAA; +9&@*Pۙp@UM{V?է?ra@ib?|;a5Dx@Ae`AjaA^08@&Dǩ@UU9](?F%?bUA@g5T@. yDx@AAA2@'^"W@UHE4?I#{?f2͆kqT$5LѭDx@AAAA A$@%]Ɲv.@UO/A=@/)<?N-(H@E1T?WŽ?J@AmfAAKK%?@%[9=@UM:yi?~9?2?lX㥧q{}muDx@AnGAtAf +%@*܏g@UL`N/?]V?^iHaG@ԼDx@ATA,AA$L@%@UU"?f? JT!I@ GYDx@AAA(!y$3@)wʇ@UWIB?k8?~hf~ݿ7#}Dx@AAmA,d@)|W@UI2e?v?ͣ[+}J({u,Dx@AAkA a$@%PnL@UQ>??io?oDN0@d3Dx@AdaA"AN Hʀ@%Kt@UP>"w?Ԟ/6aOn?Y袰+?YUܫ@ P!Dx@AiACA;Z H@)/]@UIR9?䂁Z?ŝoP L@U;ڈVr;Dx@AA OA&$@'X.5J6@UW +ᦡ@&l ?{ `@'dUE YİDx@ABApRAqI@&O.(1@UJ|?o(,?>U.4uiliv0Dx@AaA +A~U +@+(yZ@UN%)L? QG?Yې7%@!ÂDx@A/AAW08@&58NS@UVF?Յ:?YlAXlI/Dx@Ax0A~zAp$@'\!s@UW*ñ@;u?i[a@& -GɳDx@AZAAA: y$@%VL[@UQ?9nuh?ʠdߔ#VDx@ApqAxAe{Q%8@%\.`@UM\uE?{ `< ?)!)3˗V +~5Dx@AAiA5Z$A$@'c@UX?_?{K]hP*M gDx@ATAtA M@)OK*Zo@UIS?=\?  T@p@+Dx@AAGAw$$@()Ea@UX?r7D?<ʿn/IDx@AAޅAp@)r +@UJ}1?<V?|SŶ +M<6?:Dx@A3A%A@!x@):c9^@UW%?4D?gѹd?m,X?xl_#Dx@A|AAz!9$M@)ޔ@UV##?YI_L?)7@z?뉷<;GDx@Aq@AvAhR +9&ـ@*5}@UM?+%?K@DY?Լ `Dx@AA]MA& i&ŀ@* @UTD!@>l?9ii@%1F"l;wc(bpEAK3APACV i&@*{ @UT!Q6?$b?a@#)@ UDx@AomAvAeJ $y@%j9\@US'(?Cv?*nSl!JXyDx@A,A{AW9$4@&?уV@UVN!?F2i? @d +:~NY3DDx@A~NAAt$!$"@(UwK@UXf?z4??eT@Au¿Dx@AYAAs`$@'c ki@UWEB?;@xKhN?&8R&v MYǼ Dx@AkAr Ab +0@*liA@ULg?69%x? Ah +&@+3$mC@UO*8wV?,VA?t 6?x(/.Dx@AV`x`x%@%K`*.!@UNRd?ެXυE?;Osm+s(Dx@AVNA^vAK q$@%6Ȥ@UQuC{? l?(lB>$87?ݥC} AJ'ASaA>9$*@&My$z@UV!&??jjaֲY@tDx@Ak̂AqfEAc%@(:@@UHFbT?'B;?jION6ʹh>Dx@AAEA~%ހ@'S|@UHvJ?hGI?jwGqw(#y3LDx@A~%AsAt i&@*ػa@UT`AL?Bj?r'5$w@eDx@AxA~~Ao Y$@%, {L@UP!?}TE? AY؍!][a?>LDx@AS|AXoAL4&@&\C~ֱ@UI;?"#|O'?;&ogR۸}V{Dx@AA _A.$1$@(h\ֳ! +@UXeOi"?k~ +?> ;T@/wsWcH^AIASA=h1%€@&wQyo<@UIIh)?vA?I VH+ءMSDx@Ar3Ax=AiV@@%BN|@UU,i @KM?7W]Z&gBTP@'50cAIANq1ABu!$Q$@'Qm0@UX@n6?2?_8z>H*Dx@A8ArA a'@+]@US+sVA?gg3?[6 \7HDx@AzAXYArLx &̀@+92S @UQ`RY?9T-}r0?uv`@!g %V@VApDx@AA%Ap +%@*ʳy@UKo?߲>{3?MLcqQZ8'쓨KžE=jAQFA[ ;AE9@%qO`@ULa- ?Rd?(jwc Dx@AAA|y +1%@*ʡr@ULjD@xPPe?>_ac+K߇?RHzDx@AA*SA*F &@+1EQS@URy6?D fk?v ˟?ܕGX6Dx@AoAwJ+AdfY +@&ԻA@UW +G?6Vl?`ҿaj7^׬Dx@AwwA#AJ%@({m!@UH/~?\?}m8NALOdtmDx@AGAAQ$H @'@UXsoEX?Ϊu?ůBe["F?@Dx@AArA_%@(mC|E@UH&Q.??Ow"JڛDx@AA%A$@%+@q<@UN0?⤪v?^e ˫ -Dx@A{@AAs%1%@(JԘ^@UHW?v +?䶉<0?,^Dx@AA>A%@'&|px<@UHn&?ԏ/IpW?x׈Z@9ߜdCDx@AAGA +0@*"ސ;@ULI]51?| ??ō?nU8lOX]Dx@AAjAU%+@%Jr@UM"M@YPk+?fXA)B` [ODx@AWAAu%@'\;^@UH?;cG?xpUMq?e?Dx@AQgAAB $X@%}3q@UTc[Z?r]?Db8v]8KP`Dx@AzAOAr%d@%T:8@UL*?߁Һd?܀cTfڿx$Dx@ASAsAvX$1$@(0?U@UX́?i[$:?M,Ï &=s?>y Dx@A߹AAb`D@& j5y@UVT$?iu?8}@ %CyDx@AAbXA^5%؀@*S 0@UJAGw?,5ܫA_Ar<$I$@(*}-@UX?r9?r >h۱ADx@ADA)Azd &@+Jֳ@URJx]?+øaC?JīV?i4gDx@AAP7A}T i&@+&`3A@US4#9?^߿^?i@d?L@)ADx@AikAo;Aa,@&S_zG@UJ(J88?೑A?3$:^UHKܕE/P8ɒA,A:Anw@*_r@UJ>]%s?8 ?ԀlT~1@Dx@A]AA$ @'<p 1@UXKv ?_һ? 2$#oͺ%Dx@A_0A0AO%R@%gw@ULe?||7?ҚVQ1+Jc3Dx@A AZA}|$1$@(FG@UX/e?rm ?3E鰾Q@yDx@An>At(VAe!6@)@UX~n&??RN=]?3Dx@A:A A]%@(wv5@UG?TRw?GeߚBH~ ǦNDx@AaAe5AY!&@*a@ZV@UVc—?̳,?2EN.x4Dx@AsA*A,%Ԁ@&9|s@UH.v?\j?(w,9_<Dx@AAAzD%@' i3@UG ?U`0^?ER&Df@jk9oszrDx@Ad| +AmXAY!@*V\G@UVP' +?οK)V?*J{??׀"?G;%؂V/fCDx@AAA"* &@+w1ٺ7@UQ +/LaL?O1?̾@#UŁ?IwE8Dx@AAA + %ǀ@*0?I~[Dx@AiAAq +%@*3=@UK1B(q?3y?ʊ :~'lD\dsBDx@ApAEAI +P@%wc@UU~,?\?_\[T0@v9Dx@AA6A| Y$@$~@UP៫?bm/?ċ'@{Rq/5Dx@AЛA4Aw@(kn4U@UG]Vy?9o?$?X 8 @XzDx@AAC#A;i%@)ql@UHR?SQ7 ?Tn=1eZp#PDx@AEpA:A  P@$S@UP$'s?ԍԻ6?_ȕR1crvDx@AA:iA{-%C@%0H@UL=?)߶? rQ6ʙNmDx@AvɽA|xYAn}!$)@)|rk@UX4>|?iM)^?<Gn\OMC.1Dx@AkAqAAc|E +@+_m@UM?@z7?; ؀wm@TVwBDx@A\AA %@'h~T@UGJ|w?ӯf)?.uߞ(=5Dx@AQA] AT`]@% \@UV\_?(mQ>T?'K̿$Dx@AOAYAi%@)3@UHܟT?=s"h?yC` ò@ 0c~vDx@AAAw`%@*#{@UJ@0??*@v:Dx@AA^rA^$ 0@)С@UGN_??Pi eZ4pڊDx@AIjAAa1!&@*S@UV4h?JҍQ?vo?8X&@zDDx@Az9ALAs!g!&@*S:@UW-9`.?Dx|q?ԛ-0X @ eBDx@AqAskAdv!@*UsF}@UW+}f%?u$?yV?5(+;_?T/7RnDx@Ay`x`x%@(=/@UG?`?oC/(olQc@s$7Dx@AAjA\$`@@(O@UY#E?j-=2?4=XV^xǿd^mDx@AvAEA%@'+!XJ)@UGڽ?"<:?.R;T?͓;lDx@AoAA}8D@%R@UJm|?n?= 8y2?$CDx@A.A8A)%@&+A@UIkv?ilB?T&Ѥc_r5Dx@AxaA~ڭAoFA +&@+x^]k@UNciM?݋5?: Y$Oד;8ODx@AtAzlAlw&@%_|Ce@UKr70?ӵ?57'FTg:a Dx@A AAX%@("@UG ?7?Smr#RtTEl"Dx@An|Av]fAdIh|@&J4t#@UW01L4?ơM*?veP?mH5@(vYDx@AZAFA  Ā@*ߛ+@@UU墍??|֎?Ŭ,3H=)VDx@AA0Ab@*Lu@UIh"@H^?Tܴ%I p&?$Dx@AAxAx%@'t`@UG?m(?z۲Nk<DhqDx@A2A +A; '@+`@UQd?T[?` <\Dx@AAA' +'c@+km#@UM<% ? 7Л?wė!Ŀ)m&Dx@A?AwAy !a@)ӯƱS@UXeFՙ?̴f?שIt>miDx@AA%A_!&@*bF~@UW7B??>2?;tQ?͑rMHݿ)~ Dx@AAS;A 9%݀@&t6@UH#{b??~RБ@9۳?3u#Dx@A]>AeARK*!$@)d\@UXΖ?{5?}ODC?ApTNDx@A/!AA~c $@$v@UQ9? ;u7l?b?+*3@Mj1Ͽc߉WDx@AAPAe@$% c@UN+E?5D*?d[V*SPDx@A?AA+ &@*<'[o_@UV_+X?ވ(HM]? WD"#,($Dx/FAI/AS_NA=K| +@'MZܦI@UGr#o?fl?ٚ"+^.>94@ +Mm"Dx@AٯATADQ&@%sI3GX@UU.d~?1CD?8@}bZ?S# ^Dx@AA3)@lh.2l)Dx@A A1/Ai%ۀ@&8.9@UH80 ?|;?YVt5 YɟDx@AG}AA[%@*qA$@UIRhL?'BNp?ӹ4'ޤ@ \Dx@A?A*AyMi%@)%Mu*@UHdb^?Ldu?$EƵhH$gDx@A{AǖAr!$$@)2@UXʾ?R?+`K/QX;Dx@A`AGA"@$ws@UQ!rq?+?5!E[?;\ X Dx@AAoOA{!$ @);z@UYGF'?v̖.q?*IFc%G~s46Dx@Aw&A|An +@*>Jx-@UJį}?cw?C&P:H4xxDx@AAfAK!$1@*iT@UX)Q?8D??{ ?Z@ɔ\Dx@A +A A @&AIÅ@UX?Π20?W4r?ew%?Q3*]T{J1WTAMAW+AB$Y#@' +z@UYe O@ we:?Y]@մѓ@R5)1Dx@AKAQAC +@+ x@UJ re?e?Bx:2/Dx@AAA7$j@$-mI@US|;?~3Bp?22~Kv)%!Dx@A"AA(7@%ZuEz@UJi?K?śo\?><$y]3Dx@A`AKA_&@+5Z>{@UOL0?׎'\?})V@˜Z@uuQDx@AAA$8@&sJ@UGTM?wT?يWx+lӿ1GDx@AA"Avvhn@%ƌ=ե@UWl/4:?ċlj_[??h&jEUDx@AAA%@$PMJy@UM,j?p|?0?ԁ2˕&D +0Dx@AqA)PAJ!H@*i/3@UX4x^?tnJ?<@"6@$J @USx?}I?P'0bwZ"jDx@Ao?Au1AgL!$@$="H@UQji?`U?ŠzD 2@9WDx@AAA3%a@%64 +@UL ?ࢂn?w@ ,}ۿZ`\9Dx@A'AŠAOh!@%)@UK/?өGz?)Xfiz JDx@AGAiA &ǀ@+":@US^'? +Է+d?T` $D:7OyDx@A~VA< +Au )&ʀ@+=v@UR].?v^=?*vE)@XDx@Av,A|EAmj(@'U@UG9b?hC3,?s{SjLLa} )Dx@A-A6bAM`$@( @UY#nm?,i_?eZ{?Dx@AKA?A-q!@).5|@UYc#@/f?@&@ɖ.5,pDx@AicAyAa&݀@&(kA@UGR#@'8'?N1j@sj??ܐeDx@Ai. ArA^)6$@$@L@UP\ ??Y G3wi +Dx@AdACtAj%@*rh@UIF@`?9L˲7 ]^p43o`ALASAD I_x@+rEks@ULh!n翯jpK?E ?H2?Qr$ ADx@AAhAd@&E+z@UX8?ǃ?`tl$4@>@7ZjDx@AAA#%@*r20@UHN(?C'@x`?o{;@*;( ωuԯDx@As[AzGAjxQ =@+C@UT.?Wd?y~aFR?#碼RDx@A^A&AR%@(v~@UFOR)?7_ƞ?Ҵ,?tzAvƒDx@A,AA$a#@'ӐB&@UY? Ч?0 b#v?⁠`$Dx@AJElANHqACa%@&cKi@UG"m?' u?nͪ>S$m4Dx@AA>AH@*'@UIwr1?2ff?;(=@@ѵ828 EAo#,Dx@AVAgAt@$}@UO-j@?Dz?B]*kBVNDx@A{ATAsY%@) 2@UG|I?ъth,'?L*@宾5?{~Dx@A0zAXAxV@$z@UPBP?B?I=k(A?wUDx@AAsA!}@)Z@UY +q3?ժ50P?&V31j;3T"!tWՔDx@AEhAAi&@(ͽpN@UFle??j`i6jDx@A"AgO0=U@Dx@As)AyqjAkj &Ȁ@+$gO@US)8?za?=f,J햝XDx@AoAAL.!$ +@)Otg`@UYzn ML?Ce 3?f%?2I ׿è>Dx@AAAyKiM@$+/%@UMW\:Dx@Dx@Dx@Dx@Dx@A!AQA$`@'wR@UY^?4Y?ÔINMӕCR`A AGHAQzOA<$@$oU@UQ3p2?7oMN?Pѻ?}2c@Dx@AHOAA"$K@$Hus@UT?L. ; ?qJfqh蜥gvHDx@A{7UAAAr($ +@%e%@UW-T@?p&'\P@OR$LKqAB=AGCA:xT!&@*SF@UX<ډH?4`?˾l@ۇr?#-Dx@AFAAi%y@%vC@UKYq ?(m5?+{@"`-GDx@AKAA" )&̀@+?OP@URkFN?րm?jR(,?ԗ2Dx@A!A(A}2E !&΀@+կxd @UQ)?cٍn6?Pz@;ΛPH`>(w9Dx@Ac GAh}AZ$<@%?M@UUVk*w?;?*^O^SlkDx@AA@US[R?\.I?##@9@f^ 2Dx@AEA_AI.!$ @*tLL@UXFQAٟAsyQ&@)Mߊ@UFJ{?w?c@7kjJa?o~(qDx@AkfAqAc$E@$|@UT7U?cl$?Md|)P{b$hDx@A/AURA,a%@%6i=R@UJ?Ize?ԟ'7sf%TDx@AA)Ap_Y[@+C\U#@UJwfr?ލ)|!??[<@#~U{@E_Dx@A1AAf_qV@+d_@UKY\?Ԣ~?lCXBԢgUӳժDx@AtjAҫAyܽ&@([X+I@UF`?4-\?o -uԘUo?bv!Dx@AxyA}ApéҀ@(`ؔXKp@UF{3S?shM?7jZ~%}D~Dx@AAA%@+"n@UIRL&?óQ?[N@$&0<@LADx@AoAiAuR2Af$̀@$z@UO;lg?` +#?+UE?Y=-ؿuK(Dx@AyAApZ% #@'=|<ݗ@UYx?u1l?} }@*RDfH^xDx@AAAvF@${I-@UOF0?М"q?^PC@OyvDx@AAA@$%@UT=?w9? I}S5 Dx@AڎA AT%#@&5-eB@UYCJ"?4?Fl +] #?Dx@A AOAG$W@$(~@UT +?ig?нJ}v?Pelt@>we~%Dx@AnlAs$lAd &@+*}@UV?(o ?aW?_fV,/?G}=Dx@AtA|YAk  $@$vx@UQi>͆? >? e<:scPfCT`bDx@AbAeA!$@*@UYDx@A7AA_T@+Ma@UO9Z?w!?Q${_'틁?qrDx@AAAh.@% i4 @UI5L?+?׈z8Orp$"[Dx@AAZAVy$@%XG@UWPq?3e ?-c?94?Կ吥6FDx@ARA2A&H(@)ԁE@UGC?? Lo?I7?$^mL@KBDx@ARAAϖ $@%:kf@UVj?=N?hh?̏mDx@AR=ABxA$ +0@%Pfߥ&@UV$?*N'??cbo{Ug?fsDx@AXA`A#F@$þ)@UM,91rV?]V ?vokH(5R@}Dx@AWGAYA@ %=@$բ@UL ΚT?ҏb?Br.~$?qޒDx@AA>A43 9@+ߥ@USR9@?A}?MO?a~?l:yDx@A'AA!@)A@UY1?S4C?Xxgw|B4&NDx@AHA|Ah$O@$?d@UT452?]%ܤ9?b*Gڮ?O\-pDx@AAA$̀@$e%@UO:b'?*jQ?H%{-`v?EDx@AuT=A{Am +$@$a0c@UOu"?45%?Vh@#>V@{ADx@AQAWtAIE&@(@5@UF;SZ?޾}[? or_ھt&FEDx@A$AŀAz;6!f@*@UXGY?a(?0F4`9?GniDx@AAA @(&cu&@UF%Zv?DP?V=kFs@))Dx@A$AkA|% #@'_Y@UZbyC?ԔTc1XDؿKDx@Ar3lAx>[Ai81$#@(@UZ`O?u?$gk "lh)Dx@AZOA_AQ!&@*K~y=@UXMbY?ݼpO?ZiQw[ QKDx@ArՄAxYAj$#@%C@UV6gIB?B]"+?e/s %~d;@qwDx@AA-kA_E@+_{@UL]?ӗyH?&5Aoc753:Dx@A'AIJAY]h@+)3.Y@UIN?2 !?0E + >g)[?̖Vc?H&LDx@AwAGAv!@& +'@UXe%o?f?®WniD +끣o&?ʏ-|^XDx@AAXA@$x_@UTJf?PL? մ@V@ҙa*Dx@AAAg &Ā@+1"2@UT%vT?}X?d9Ke@<#(VDx@AAA? @%gpr4@UIM6|(?ߧr9?8XۼWSҺL?p嫥Dx@A_!AoyAuXi@,/cs@UPU?R-L?(R0|O?ĿP3seDx@AA-A{#I@$hlF@UMGO?ۺ9-?6dnjDx@A#AA@(7u_@UF+??+#BҪ?Ƚ-M^Hgi/mT6PMDx@A(A8A87@*MjO~@UGB? -@?бK+B ?VA,Dx@A˽AA"=l@+ Fu@UIMT%?#EŒ?N. +b’B1l@'φDx@ALA[AP@$Q#@UT%%?q?qgJRMK%Dx@AA_A]%  @+UN@UVD@UZ7^Ҋ?x&?t2bj8&mi| R Dx@A AA +!&@*J*@UXR?bW?:$0F$nQ|rDx@A{AA Ag4uA!@,!=kۣ@UO(L?Dw?(c瀣jDx@AxA LApJa@*PF@UH2ho?N'a"?+p@sM29~Dx@AAxA&$x@'4m@UZJBi?툄n?m5.@ +K?"~Dx@A9A/A;p@%\@UW_d?4v"i?LzBzDx@AvADA- -@+6m.s@UW0ֿ?-襄i?ƅJQDUaᑜDx@AWAK@A$%@$64 @UV +?hԐ?"l# }@ + +=Dx@A(AvA} &@+B@UW?ОVa?s!~?顸)&9Dx@A݀AzfAµuy@,#],&@UQ'????v3/lbYDx@AAA@+ii@UI=zΖ?İ ?Xuc@2(,#ZtyDx@AOASA&@(Y;G5@UE]ֽ?[o+?l#NmGǑпkDx@Ax)PA~+Ao1$z@$V#@UR~ R"?Ԋ; ?-܅k@$ +=?Dx@ArCjAxAi@& K9Դ@UFCX?̩pOT?Yay0?#Dx@AAAuy@,'G@[@UQ(C?^;?N_%Q@"3޶Dx@AqAltA0; &@+û@UUҥ?Y?´@-YtMBDx@A6AwA!$@$Dy@UQ<* +?$UI?DŽD]LgsoLDx@A=AA9/_2@,ka@UN5 ?q +[?J@Lo&@Z9ƍDx@AAAg%@*W.@UH5Q??R/mc]EDx@AKAA:%@+ݮ@UITU?')[/]?ɉeh?nԼDx@A}A~Auku@@,-EjxE@UODK?9vطW(?0{y2) 1 ?Ƀ{B TDALAQEAEy+`~Ӏ@$H/"4@UJ8U?V[i ?(2mȓJɬSDx@ABCAX^AuA$@,/|b@UOjD??j]h59jt@ 9E;Dx@AnŒAtb7Af@% #@&Lj4@UZCbߤ?R'?-Dn[GDx@Ay A~Apx@'ò @UER?ԩ'9?ETQx3MDx@AA*AӟI%@&ipo@UFd?0c? r ?=)ה?..}PDx@AmAtAd1uq@,4/G#{@UP 9'?Ę_?q'.< ᤱDx@A} 5A'Au#I%@$Ƃ@UJw_ ?XQ%?3E GvrF.ukDx@AmGAt*Ac$@$9׮@UQ/rI?\5h!?HWh&0&qDx@AhAEAV0_Qg@+[Ηy9@UI?h?:'bV'Dx@AMAA@%H@UXUDx@Dx@Dx@Dx@Dx@AA|A}@%2?@UY ?}D\S?ᐖ?SE+RIGDx@AA.A{= @+a @UVd%?!BGz?S",T&zڐ#Dx@AUeAA #@%VAg@UX07?1̡ى?1|E+` ,܄#Dx@AlArEAc \_K@+KZ@ULXc?U 0~e? ~F@7i2%Dx@Aw!_ARvAk$#@(BQ@UZ Ƣ?/?/ 5 Dx@An{AtEAfX_Qe@+s=c{@UJ9)?ƾ?U5a"aU5h@9Dx@A~AAv>\u@,3f^@USH|"F?K ?K,e +pM󆦄4Dx@Aw'A|AnA^)%I@$DJ@ULR.*j?SW?k<,yd"`x8$eD@ܟ鱵j8JA5A?KbA*;Oy$@%[_j@UW?zj}??>Uz@BԊ|Dx@A!AOA!V$ʀ@$2w;@UOKao?V٨?D>2IvoDx@A:A~AU@$<mw@URF*?$?B-let~Dx@AAAx|H#@%T_>t@UX,8h?4P[?Y"Vgٿv )Dx@AAAPd@((H* +@UE?̪??ƞ +t ܿBG@UQހ?V?rrԤپtڵC7kDx@APANAM)%/@$` + {@UL',e?ʘ`?2R6&?3Dx@AxA|Ap#@&@UYolr?߼BW$f?\N1ſp¦Dx@A~wA?Av8%ـ@%+ثl@UG"?x?B?+^ 4_^]Dx@ATAAJI%@$N5E@UIn!?,C??O8 @i? OHDx@Af2FAkA^D!#@)*@UZ~?R?DeHϾDx@AxuA~Aoc]@&$i8@UF2L?мB??P L@Ϳe#ϻDx@AqAw9xAi!%S@$z<C@UKƁ܎?7&Vp?y OF@{%Dx@AzהABAo_iV@+@UK495'@K?@#ЮNDx@AiAiA$I%@$ؐjМ@UJ=@6?ͦ?F@lJ޿p-|Dx@AyA%AAp"43XAA2@ +z@$VߜR@UT.w@Ё??6^R`IѿƅK{0Dx@AmANA6 @+:U@UV1?'};?drT02#@?XrDx@AQAAZ@$T$ @UT5?Ox6?M0tC@1G5@ Dx@AGAyA!0M@$8X:9@USO&]?VZ ?j57@4[Z?!PtDx@AA_AV#@*C@UYND?Ӕ?cj?xbmat@NDx@AAVDA$uA1@,Lr@UNhX? 6?Y&29OBc@QKDx@Al&Au6A`]"A&@+'RR@UX'[=r?*'Q?AU )_,=[ܷDx@AݠAY AW$x@'p;@U[$=,?@-?˿%2#S?Ź@Fc>Dx@A,AץA[FuA-@,T@UNXjF?4\?ē:K \i?aWDx@AIAuA &€@+f5 @UUs's?%az?%M4Cud4Dx@A!8AAm '@$b^H@UL1F^l?S=xq?8{5S'z?[Oc?KDx@AAkA{X@$}(@UK)_a?┕0|E?r1x*q<^vNzPDx@AF1AANA& +@) T4@UFPp?Ј(?)?6 +ň?65Dx@AdA;Ax@ @)xY@UF&?7>?LG PDx@AA2A`A& @)9 G@UF7("?S9U-?(vkG@ '&hNDx@AAAOS A@,G]@UU?K4?+N6Q?(Ov!$k=wb+Dx@AA2A3#@*'K@UZH7y?b0?P@ I*v /5Dx@AA YAHjP@&!k@UF0j?kXF?m]r Ku_^eCDx@AfAAY^ @*AA@UFA?;ws?D:M|T eѷ>\Dx@A AGAg"A&@+B*@UX,f?Ұ ?,3?D;0ˋP?jiocDx@ABAVA}-@$@sH@UT\,?u ? QzYU!@'FDx@AA"A1P@%趧a@UGȚ[@ +?#CB@4p9l*!PadDx@AnA]3A^$A@$JA @UTv4?z(?fDyˈXDx@A"A,Aw{$:@'/]@U[\?ڋ0?Y0iHն:Dx@AAA@%oۂ@UG ?= ?yPџ@$RYd6rDx@AyASAq1&@*j/aE{@UFgX?PQuɦt?OcXF-D?Q8@\%Dx@AuA=AGA0@*PR 6r@UFkgu?Ȧ\$e@yu3HDx@AAA#@% +U@UY"^ U?ۛ@y '@ ' oDx@AUAAu1A%@&G* v@UF^X,?h{P?kc!:?g,ʴyDx@AAAf!$@$#@UWqWg?m(5x?a[I9$k(Dx@A5AA^@@$^"@UID.*a?Ҙ[?{^@[9Dx@AA7AL @+S@UVnaݾH?nم"?00@ av1;@qsDx@AFA^Ay&@*+@UG֯x?]-?RjO;PDx@AzRtAAqa& @(@UE?iG0D?yʁJPDx@A AA$#΀@'w@SV<Dx@Ax~AeA+w(π@%Mfv@UX?}UP?o[,@0~Dx@AbArYA!u@,wK{L@UQ/ѳ?5l?$񯂹?ab Dx@AAaAu$#ـ@("@U[~q?v?#?N1ۿ:VqDx@AxA~Ao:9&@(hD@UDJp?z9?lYr^@ t|Dx@A~NAAth$#@(AH]@U[1?S\?`_k6&tQAEpDx@Ay9A~Apu@,o[2@UR]?#v?q,sԿH[j?쾜{JSDx@A5fAA[s@( J@UE!U0?aN?R"{}$խοJ +Dx@A fAAv!%M@$A}@UL?DH9x?=T%knNK? Dx@AVAA%@& `@UFa@VL5WQ?@2m:?'1ӽ=?8Q(A**A/_A"8B@$!U@UM?]?R4?M ֿ !iiDx@AbAVA @%g8@UG]o?JvgE?n ?՗ +?ىgDx@AA,A+A$@#I@UQ&?]{ ?UAX Q9Z''Dx@A~ACAAu/T&@$u@UVo]?de?OZ?AF@%y[vDx@AOAerA^Ea&@(eȴ@UD)@Na?2X @&sU$UހDx@A]nAdlASS!%A@$/Z@ULjGW&@Mh ?Wl=0M[@E{y]fDx@A4AWAot %i@$\"x-0@UKUFu?6A? +IN8v@ 4;j-xvWDx@ANi0ARQdAH"Y&@+ Q[~G@UY ?]o+VϚ?Cq R؋>TfwDx@AfAdAhL(1@*RE @UG#$?+q?̒G} Dx@AeAAC"&@+jd@UVLK?"9h?^=WA`["f Dx@A_AA/_`@+Y̽0~@UJ{w? 0J?4J@4%@4q Dx@Ak>AA@$a>;H @UK/A?փ?0S]nRlظDx@A+AA# '@*4*@UZJLC?uj? d@O s_Dx@A]A5A%@%+@UFM ?ɩa1E?D$?eu8@ s Dx@AAA2# &@* 7$@UYŬ$%?)m ?fI.p !@ {M Dx@AAZA&@%zi@UZ/+?V:?ʴm{tf>#Dx@A WAX/A@(Pl@UD?Þ I;?͍! @4K^d@nyLCDx@ALjA5jA@%sB@UYQT?+? '#}"KDx@AALAL"Q@+']@UWb{?/̣ ?Z_@UD=9?//+Kѭ?'`6 ZסU/T%Dx@AAkAL}@#yr@UO/ʶ?⽹ >?Ȩ !eliy Dx@AAA{@%#A!ݩ@UFt?ؗR?J߹Eè?᝝UmDx@A:AśARo$q@(W@U[H??A?s#˦zZοh`PEAF#APA9#@%R5@UY *S?{Z?>~MHbȡP8Dx@AAA~2Q!#@%MK@UXe k/?ʦL+?xMۿ6>?rgSA>Dx@A'cAoA.#@*i@UY @UFTs?ˆvv?@? ǽDx@AzAbAG"Y&@+8o҄@UY0 ?[-l?Rg|RZr/F,@ +*327Dx@AQDAUAJ $@$>Z^@UW3?А?a6@ < 7n/]iDx@AaArA[]@+W9 @UG%v??u!9?f},t%KۧDx@AA/ Aΐu@,C%X@USl_?Ot?v$xD|fGGd4=Dx@AvA|An3R%)#€@'"ғ@U[?@hDx@A-A#A@')@UD)c?EA/?yP'j:ʿ)1Dx@AABA34&@(@UD}Y?lp}?)"ȿަNDx@AlvArAcu3@,r@UN1?V+lr?0}TUѮBۧYPDx@AcAA}]@+ak@UG? 8?';?0/l?p" Dx@A}tAbAtc_8@,.@UJ?Ymb?ÊդJK ̦r +pUADx@A#AA5a$P@#oa@USw?Я)A?+@y>r*Dx@AA A~#@*Z)N@UZ*kʏ?͝ &?wNvj@5,Yh@&!o +@nDx@AAA%A"X@*̛x@UYTW,?4b">?7?'@ ?TDx@A AA="I&@+S@UX_5E@ɎdiO?%4 @Jg| -$0Dx@Af[}ApL>AZw-$@#ѨVZ@UN= ?G?'x1P uȿ瑍,hDx@Ay?{@ ,"Dx@ASAXy~.mXDx@A)AKA{4_U@,i:0@UK:Bg?ݙ6?U ÿm߂P?^:/"Dx@AhAm0Aa_π@,QKV@UI¿?`i.?Ě"@'n/ 8ܚʮDx@A8AjA;u)y@,.t@US f?& c%?Tˁ@g4@:,Dx@AfAAHu@,썕o@UR:F؉?_a6?I`5$D3xDx@A~@AAun.&#@(E@U\S|2?{|?W ]?+#Vh +dwGDx@AyA +Awһ$@$}'>h@UW7ʧ?Iv DM?n݊@g @7`XDx@A{$AeRAq%@$GTN"M.@UJE!?=x?6HJ:?6/2(Dx@AQAAZ$@#@UOFG@T?\(uR@2Of@=z ~Dx@A(AyXA&@)2_#@UDΊFK?f8s?}#@ 倆Dx@AtGAz:\?Pn ?3xj]\R?rY{MDx@Ax0AA]@+R@UH Ǣ?Л,+(1?5'tʿwwDx@AAlA$#@'ߣ1@U\)ES?!9?5=NC {c+9Dx@Al9WArӬAc6%9#@&"@U\ި_?j?T\4!3$@ +Ym(Dx@A|gAAs& @&\&@UD2P?d ?GKaxDx@AhAqbA]# @*侰o~@UZo@h?i?^L`*3I@ yrDx@AAAz#ڀ@%@UY$c|?n@-|à?!㣮:ʽDx@A48AA) +@(n]@UD/\|q?8[j˔?hY+@l +@+o/Dx@AS\AvANi$>@#Ҏz:@UT? ["u@,f@UQ֘/"?cj>ת?_$5t}p~)Dx@A'AA}"8wQ@,hq曻@UU`9?ƘQl?{W浽sw?ҡDx@Ai%AgAhJ%9#@&Ղ"i@U\'I?>?~F@X)'@N}Dx@A+AAA%T@#;"v@UK#L?݈}wX ?Su ?;/Dx@AYAA|o$#@(M@U\B?tKv?ZWY\d6s_|Dx@A{uAeAQ#I#@)פtiŠ@U[?na7?Y@HKQ񚗭^VDx@AzM,A0Aq]y[@+yt@UF3}?Ў}{?nH?֫?4RDx@AhA>A@_@$Xvi,@UWv! qފ`O ?%sڿyh?Ī1Dx@AjAA4%a#@&i[X@U[yXS?W?b?!&oFiؿ-5Dx@AņAA'P@#yU @UO[`[d?ͺch ?iw@/yCX@.J=4`Dx@AjA1As @$xx@UJ~HLMn4?@U[>?kO?<-VY&yDx@AKAWAOҀ@#أ]@UOf❏G6M?ß&;ю?>.Ӭ?IoDx@AYA`A $K@' +cL@U\_o?Ԝ$(`?ȢdL@.[&l?@|$ +![Dx@A'AA\"a&@+X(Cd@UYDD3?$W*b?Wr p@O?PLDx@AouAsAN#0O@*;dk@U[z/L? >?튼/?-,޿r3Dx@AA{A|4:#1&@*XEh@U[u?,^?MX?oSV4)RDx@Ad ALcAs$$@#+ؒ{@UU32[@n?u@u@2Udmdqr>AJ/APXAB{wY:@,vI2@UV,?Š(k?*ۿ`)2Dx@A`AA#`f@)@$@U\-oq?~8$?l'f$= |r=Dx@AFALA #1B@*V 8@U[a?{KS?ҭ{VT*TNJ>4]MODx@Aiy`x`x@$ȱ^:@UHi?CgS>?ȷ4} &1|@"Dx@AA%AAu@,E@UTu@Xu?ۤ +?b*0FG' cBDx@AyoAA2Vx@#EoQ@UU2?*a?跺ldlDx@AAApo@#i@UT#=?ƅQH?wxU$;UR?U|j9?Dx@A+&AAP"x)@+EWL@UZ9?-v@? ;ņE:?-~Dx@AfAA%@%~.nrT@UED6?=?:n=Y@ W?rIDx@AA/A} p\@#mT3W@USZ?{E?Ƶ\dW@iUxK?Dx@ArA0Aq$D@#/@UT''??LAZ {J +)[feDx@A&A*A "a&@+n@UY8A?h=?/K}|_ӣ~ g7Dx@A(ASA~#Հ@$ P=?i9֒?N Fnr\j+?ܳجe}Dx@AA8A 'K@#hP.@UQ"&o;?/?`^ oioDx@AAXAx€@)2f&@UC̸.,?ck2 +N?xUݟ?g޿m_TDx@A6AAi"!&@,w@UX?|M}X??u'VGE'w{ۉDx@AAkAQ&@'}">@UCUg?p[5d?G zn0JQiDx@ArAaA<)@&zO|@UDt?o3?nOy J!濧2MDx@A%ASA_W@,ħ@UK??(Z~ar@YX:@Ol8"Dx@AAAv_L@,]@UL9?X&z!?@jo1@sح'd:Ȳ6Dx@A*A}APu@,>m@US/R?zN*y?] +k@bڄDx@A(AtHA($#@'-a@U] ?%]?P)ZuSd@i9Dx@A&AAI)&@(mͣ@UCgp?=j34?NӃ6 +$f{frEi/?Dx@A~';AFAu,u@, ;8@USb'?jqQ?5|/x,m`Dx@AhAA"_@,›c@UK6%?СB{?s N Zt8?M +_HDx@AA_Aa_@+K \*@UHaNn?Wjj?j,gi^*?(WG?/%Dx@AAOA"0@+u@UX8j? ݑ ?A^l}? +P~ஊ/RmDx@ACArAq$H@#z7u@USAf?ց F0?[%[]r Dx@A>AڜAx @$C^?@)܉SDx@AuA{~Ak/&@*t +@UD0Gkj?ҍl`c?涳P@zDx@AiAq3A_t&@% Nm@UE͚?ۓ@?woQ:=?vm, +w"Dx@AA,Aw#X@)oe@U\#$i?DߞV?|Ů/˟?B+oDx@A AiA%2H*@#@ULl#?T???I6ߋf'W챃_QDx@ASaAA~" F@,W@UW>Y?ڮI?MpBj@mW@}@l{Dx@AvAA]y\@+&@UFWJ?i?M.I?:p&Dx@AAA)&@(aEq,@UCyr7dZ?^Z g?JP?"z[@B$)Dx@ATfAaA _u@,<r@UIJ>`?~H???w'?-a +7Dx@ACATAx @(QOf +@UCkM?C*S?m3[ix  #Dx@A 5AA%& @&%@UD;>xw?ӄZ?VQ߇hZ?Ed.Dx@AABbA}#0m@*JE8@U\ ?-9? 9 vP@6$j9++Dx@A[AHAKu@-m@UQ'~?W"?Yޞ],N? Dx@AA!Aewq؀@,o^@UW\?.+?@fg?X{oNDx@A7A@AQ@%!ZS-@UE>st?͛XgC?Y+v;l;?PDx@A[iAAyP`#@$S*F@UWoUG?_,? IYB/P^LDx@AcAkAX*$y@((@U]Io)?9fHA?Ӎ񉃭ʿ)ݓ{Dx@AAaAx#9&@*lr:K@U[{?:0?|PaxR+GDx@AjcڬdaDx@AРA"bAx"i&@+ppk8Le@UZ^Io2?Vt.? +uՍ 7^@R/x1QDx@AWA Apr%{@#d]l@UJ?'ͺ]A;?iyㅇwd!gDx@AAzA#)C@*t;@U[g*b?nJZ ҂?T'?m@ㆍDx@AۡA@AUu!4@- Lni@UN  (? +qp5Dx@AzDAg@Ar\_z@,HAŢ0@UH +b?Z7;f?^-I阯@Dx@AA]A|Θq @#R@UNrj?/?5B%@)kUa jZyDx@A4AA&@'g@UC3R&d@Z'?Xb%@1&(iLG[Dx@A bA A q$;@#rΦ@UToq?bg%L?xK@,W@12Dx@A(NAAAh`Fǀ@$h'W@UYY?ș[5/?ʖ5P ?<}u?l`Dx@ATA, A&@%x^@UDy O?g5^:?|3q̜y]>F[Dx@AxAA}ժ%`@&T:,@U\$?ՏWj?.T2@ +'(?-i=FADx@AxKA:A__@,Ȯ4*n@UK+C?Яn?6qr]ܵ!a@.I,Dx@AAAv4A#@$2|@UWa?Y?ѱ>l8<¿2t Dx@AwAHA#8@*:i}@U\| +P?ˁCՕE?夿THs@:Dx@A)ArAզ%@#{#@UIԿl?&-vc5^?+ȝ,&!=;@PǼ+Dx@AbAA#ˀ@$*<@UZ/=(5A?8ڔ?3JM?܉  +fDx@A$A0A%Q#@%h=S@U[#Ҏs?v?q G,Dx@Aw$ A|An@(G'<@UC f?Ba_u?{E@4AcM@Dx@A9APAsu@-#xw@US:ߧ~?EE;F? +Z"?,jL?`WLDx@AZA^TAS%t@#F@UJg&#e?9,1?'ynοxz$|KDx@AAAm"9&@+3&w@UY?pfiI? &ѿ!!%N@D)Dx@AeAvAu+5"(@,&̔@UXUG`Û69?Ai`Z?tY)?GroEDx@A5AAOp@#kE@UT#/?M,?p?W;lk [Dx@AAA&#@(,@U]e@:n?rCC@Y}h@ ?vɱDx@AiA=A$#@'4wt@U]?,S?˺[b6Ի:`@RlBDx@AK A5A]@+.9W@UGlbBn?m@[6?Zj9@4^bw e Dx@A|AVA;D@#j'P@UWI܋Dx@Dx@Dx@Dx@Dx@AAؘA&#@(b@U]-T6?f,J?aݍ@"ڻP";|Dx@AAz;A*cy$@#1'TF@UOF ?Vޜ?9e*Dx@A|K)A0AsЊ&A#@(lP@U]b? .?8O7?K3ֱ9?jbDx@AgAn"A_@#-S @UOd?Sq?>H@%=C?7SDx@AAA3u@-EFv@UQ?6z +?dޡ?[.}?B4Dx@AA?A_d@,jAd@UJ +Bd?$?c?`qI IstLDx@AA[A^&@'t7ٴS@UCS ?P!?2 &:q^Dx@Ae)zAmQAZ-<%#@'`@U]Zl'H?^?}N@} Dx@A1A^AnA%5@#j8@UL7# ?s?? 2,&haDx@AAF[A}h%@$#@UFݰ@  + ?hE:$VQULO Dx@AbWA\Ave%@%Jť@UEk^'^?Љ^՟w?5b~"q^?Ũ/Dx@AUAAK]@+ꎈ9@UG?i䋥?]-S? +/ϓ?Ѳ0O0Dx@AAnAx&@%Xm@U[=x.I?g|;?OOZ$6)4+<Dx@A^A\XA`h@)dH&@UC9o=F?fĕr?Jқp?Jla?ggDx@AzAAo=$@%aH~@U[jDx@Dx@Dx@Dx@Dx@AAAz9=@#;^/a@USizs/*?v /?8.Dx@ALAAźuG@-8q\@UN +d=?^da?frr'@oH?O49(Dx@AAtAsu@-NS@UQo ?U(&2?Ƿ@TmL?l:pDx@AAA;pL@#6h1%@UMs?K?N8aMٿ£w(?9(Dx@AA.Aj&@(b&@U]?x䰿? @#%'4X^Dx@AMAAZ~%@$xK<@UFP?Pyq?Qܘ:?Q=^Dx@A5AA~'&@'O B@UCI!?eh/?q@ ն?cYDx@AJZAeAyo]i^@+K@UEX?еȁ?"c?V0?:}Dx@AOWACA'"x@+Ś\@U["LF?klK*^?@n28xvDx@AAKAС $I@#:NLρ@USM}]?d(^?5/l: k9rb?PőDx@AAA|]@,)ۛ%Z@UG,f?qߢ)=)?;޽VQ8Dx@AA:AјA%(@#T?<@UL_`y?cN?,yFL#Fۜ<.Dx@AAAx3%#@'o_LK@U] R? 3F?k;hx?ٗؔ?4bKDx@A A Au#@#䴙@UW`?;1g5? 2LDx@AATA|w]@+;C@UG6??aё?Ƽ.4Ѥ-q?Eü#Dx@ArAA]Q_@*볥@UD_?)7?ħSN:4Z&K?(Dx@AvA{+An@#m3@UO3?LjE?MT`e;?O[Dx@A=A/Au>]Q^@*~@UD(=?RsYz4?u@۳*?WZDx@A'AA]pT@#%x@UNTYh?;?DUl蝄(@ a{ozDx@AAwA0]P;@*ЮNW@UD?ƫf?{zuѰ2Dx@APLA0Al_(@,7Z@UI(Dx@Dx@Dx@Dx@Dx@AZ +A~A[y$@# &@UO9"P?)?. +5?ohg}Nl\z@%͒xDx@ASA3A~Չ$t@#̡2@UQe{?"]D?l!@ ;Dx@AUAAu(s@-\@UOZS?׿xv?ſsD*@/d Dx@AAAj#@%$餅bm@U[_q8?/dM~?s]R@EN*Dx@AKA9AJ_i@,΋[6p@UJ]mMԗ?/j a?*9+@ϵ3zDx@AδA|At@#LI@URe?PG}?6 $#M4@g(76@،tDx@AAHACIQ#@#@UX]o?ţin?'a (=4@@&Dx@AuA{cAl3ـ@*bM29{@UCV?=?FƳP-@)2FDx@A.AJFAu@-TQ@URp$gg?NĐa?5`dlZDx@AA!+A~Ks"D@+S@UZ?~?+?ga,9?NEalDx@AAZAu"&@+2hX@UZ؄ԑ?7nd?S3]L׿ .Dx@AxA}AqA%\@#t@UK>S$?2d?ä+R#Ӝ|@ގIDx@AAL{AY&%@'Sog@UBY?gf?7Rzd2@Vz3Dx@AAθAE#&A#@(Ҁ@U^{tv?#Fl?z"f+d_@t&52 Dx@AsqAxAkzwa@,%@UVڂ!;?1\?@T+@%6wDx@AuAz Al"&@,-F&@UYSw?Gg"?r? +@!EDx@An`AuLAd%@$P@3@UGyk?tS-?{@Tx@LDx@Al#AsAb u)'@-b`+@UO5D@>Zb?99lM@.9xi E*Dx@A} AAn'@#P @UPr}?:?ǻWt8 Dx@AQAA>I%@$2|@UECT?f?@>gߙDx@AVJA\9AM +@%*.@UD?@?],Ψ*@ ې3m'žDx@AzAA|5A%9@#N% @ULYs?޺Qb??쓘||NDx@A1_AA6Y#܀@$J.@UXe?Ұ:r%]]Dx@Ay +AAoDwy@,@UXN[ ?ٖWEI?NIE'E?E@Dx@AAWAwu@-hD=@URe?9\M$?ÍB%@q.D}GZaDx@AwAUA)$ @#GɷIr@UUtMN?0Nu?n臼nTLgTDx@Al6ArvAd?#@#E@UW8G?=9?Nu?FhO"Dx@Auy A|_^Al "&@+@U[6`?ߵu +J?sR a)|lDx@AljAsZAc^&!#@(>.m@U^$nN?Hm?}r"/we8@-뜂Dx@AAhAP$@#'WYi@ULX?stF?54@03Zc DrDx@AAZAwр@->84@UTT?T?g9[@YŇm?%~Dx@AAAPAAA]X@+ +j@UD9O?ٰ-=P?|Tp=7@fJ" *Dx@AqwbAx`Ags%@&r@U^D?kn?Di@h,z)}Dx@AAA|]Q`@*^ @UDOA^?N@;?OꉈEA S8 @Dx@ADbAA})_@,}_X@UH@|i7??E@C1@ l4Dx@AmA\A&(@)Q)PJ@U^1/?fjմ?P/Z?P~?ᙾDx@A#!AA ^xр@,)X@UIY*^NL?~l.-?{(ʏ>Tyjۿ">*Dx@AgA +/AE_@#6@UW5W[?;Z`?q)~cGDx@AjA9A,@$Sr]@U[!T?G6-A?,kj@oQѐ\?n /Dx@AA>A#0&(@)Րo@U^WE?7rv?_5w+L`UHąSDx@A"A4#A,]@+5Z@UEuS?ns?#U[#k{Dx@A~AAu0tq:@-2@UNGi*??ReP_2_^`)Dx@AsAypAk[(}@"\l@UO?ߐZK0?FAASu@-^꒑@UQ]?~? +Smz @ GDx@AފAUAIz@#zoy@UI,Y?9CX??΂Kd:J(@j1eDx@A)AA)p0@%M{@U\SQDx@Dx@Dx@Dx@Dx@A7`x`x%@#@UG閏t?ԭagZ? t1@ ;@ '?zYaDx@ArA|A~#@)7lF*@U^:`@ >f?~?P@Qkh@E_5Dx@A,A\Aq&1#@(0@U^A?CoJ?S3 9hDx@AkLJAt/A`Kt@-kF@UQw?q:?ž|+i R:Dx@A)A5Ad]i!l@+y4@UED8?fMд?"!G@!oڛ!EBDx@AQqAgA5#&@*@U]?WŁfU|?Z hnjN@ +Dx@AA"A6%#&@)2@U]ǭ?Pl?^/?Od?J(΁Dx@A,AAi%@$%@UEj=E*?ßIY? 6/d?V Dx@A!'AAu&1#@(gms@U^|\?쎶e?@&s@1#$Dx@A;ABAwn;%y#@&Ȏ@U]E?:? YJ5ntԧ^Dx@AuvA{1Am"x@%x}Pq@UCX\l?S@BLk?Q~Ó--PDx@AyAjAt+@-@jN@UOt?x-5?W9@(^QWDx@AA}Av";"@#\›@UV9??h@%iE?@ v`Dx@AxAAҼ!$@"BG@UN??hZ>tq?L3YD-&8ULDx@AALA!$@"䬍@UOq?i?C?ږS&#@c'Dx@AeAkA\at+@-yf.@UOYQ?ܰb?{;1@(]5Hd)u7Dx@AA6A%y#@&2?_@U]چ?ܔIV?T EjzUA^pDx@AqAw&Ai,%@&g aX@U^.Ѷ`O?<4?s+ʿZ\$?DMCDx@AoAQA^&.@(ˮ;@UAٟ4?|2X?7aq?_uw"@RDx@AZAAv:%q#@%H"@U]Ox0?ast?`NR?#PXDx@An[Au/1AeW]Q%@"GRz@ULٜ +?B7Û?2X:?sqI{?Fv[ٖ|鵭Dx@AAAAx8-@"'C@UR?VZ~?ީHA?2y0Dx@AAIAG6]a@+|K@UD|n?6;o?Ry#?(d%#͔Dx@AYA^(AQk]`B@+i|sȅ@UDH ?'hd? =?IJOjk)> Dx@A /ALAw9@-9C1,@UVW?o 6?%|:('?w>Dx@A_1Ac5AWɵty!@- +'@UO8R?:inq?@B!f ,Dx@A}lAA{&(@);@U^=?ato ?kFm@av@@QP'RDx@A$AXAf`0@%D@U]'X?ZML?Sf[?zDx@AhA$A &Y@'5DC@U^hkHDx@Dx@Dx@Dx@Dx@AXA,Ay}$"H@,AWh@UZe{?8?/ =^r?eDx@A}AYVA"*y#@$+]@UZPJ?%^?bq@=_i@=Rz&Dx@AlAqAd1@"Kt@UQD?Er~?qaAŸǯϿ'GqDx@AAA؇0@%GR@U\Zc?7?#s"c ȩ@ 5Dx@A~*AA"%@&t@U^oQ?ͱ0?_|@5<:@Dx@AzyAwhAEN&߀@&lV@UBml?-?NE"V3\i Dx@AAUAL^@-ki@UKZC?sf0?|"8% @%RDx@AMAAl0 #@%`Ee@U]MM?ޔnjw +?}HKRBUDx@ApAv@Aho`@$QG@UE+De? =?2W$`dJ+Dx@AA̡Aw0@-yz@UUv9M?D+?l"ύ?0?u>IDx@AߠA&A]^@-Eb@UJnW ?(? +pFN>[?՗WDx@AAAҧ0 #@%VVá@U]CZ?F3ɀ$;Ɨ? +&Dx@AA`FAyVYw@-#Cb@UWV?}L?$ Z@RUXKDx@AAA &]@,t5h@UG e?OO?Ȏ>V@6.3Í)Dx@A&A=A=4W@"CtI@E@UN* 4!'Q?Z  ?r;[Dx@AjAA^u@-&m@UIymο;,\?֡(߇?2V"eDx@AApA|xC@"q@US`T?=kV?6#8X?z!iDx@A='AA`@)z=R@UA"?n?߻×:?{:Dx@AmAA##@)M @U^@ +\A9?wG8@0$*X7v5Dx@AnAiAyQ"@+3w@U\7?UFM?S?DIc $Dx@ARAATp@$; >E@UF%S?BlY?,^ ǀ@%v;Dx@AqAAިi&@&}.@UBk?A/#=?~M4jӛ~@/?O][JDx@AAAt`K@-¾A@UM,?ߪ zà?Y[c{6bxDx@AkAtAu @%FLnm@UC`N?%Y?~fw91k?5Dx@A>AA0@%ʦ>@U\ֺ\?xV?;w\%?:FmR,>pDx@ARAA٨%ŀ@&LS@U^y?I4F^6?Ʈ{}ы?b?Ƃ>.Dx@AhAAT&)@&+6@UA,?3)9w?i.D ĪzӫS/F#ruDx@A]AA~þ&0@(5s@8@UAh-%C?o?hkB:@ xh%@4uDx@A_A1š?Dx@AAcA{#@#T7{xd@UXRNǨ?3IXT?' G Zf!ŹDx@AvIA| Anw>&`@(5,70D@U_fM?۬g?ȩ#t?]anp?!;Dx@AAKA"&X@'%0@U_aԋ?Ք@b(?:xZ7P-? =_Dx@A-AAJ h@'kxC@UA??kޮ?NQd?yae?KgDx@A¿ADvA(vP@-iϛ3@USc?43?1on;(@Qw Dx@A[(Aa:AS8AH@"a@UN%Y?}?Yo?YMkB@U[{K?Nj ?7l5͊?;q? '9F_giA.A=Aĸ v@%mz@UBTç?E5q?R$}j`@fhDx@AAeeA#@#2΢O*@UWtwDx@Dx@Dx@Dx@Dx@A +AAzׯ z@%gLvy@UC2:0v?cIn?*4y1C4Dx@AAE@ҠDx@AfAfAF]@,J v@UE`cr?8@?-n +@ 1ۨDx@AzAA9$@"m8@UPlq? #|%?b?n@S~ "KkDx@AA ]A!%@#B2O/@UF@?lP)?p(&N!Dx@AnlAnAAb@": E@UU>S?D#RI?P[p|? +?!5 Dx@A{AM4Aܠ]9!n@+@Ed@UD!%@#FA@UF{5ҥ?f}?CjWdpؠQ9GDx@AlhArYAcU`e@& `xk@UBǒC?޿]@=/?k](y@IwDx@AAAYW@*ίi@UB?Ldw?ɰ@"1@M%@ + +=Dx@A}ALA{#@#0@UX? 4??lv)Y + @[eDx@AAaAQ&5@)rѲ @UA]K?©l;9?Lw5AM"Yp=Dx@A%AA~Z &@%T ͌@UChD?'|H?Wǁ,R~ͼ$Dx@AlAjA#ۀ@#-P@UXe@#@?Ʌ@m)7Vz@.Dx@AvA2A\@,b@UF?5s3?CXWU9y#@࡛Dx@AAzIA)&-@& 9@UA=?z?n@x/|@jmQKDx@AUAAwZ6$z@"`gF@UQR]h?8b?X*u诿n@<[ Dx@AxAA~ApZ #@#}o@UY^ ?,}?KV9M)7䟿@3@s'0Dx@AueAhAj"#&@*?OLw@U^^?S\?N=%x1/uLuvDx@AAA #&@*v@U^Z?KlM?'%|@T:ߩ t]Dx@AA?A~1%@#mW*\@UGJ?+gu?Yܾ9?'P@_2Dx@A|AtAs%#@&8@U_yX?9.ш?h5ׂ@ נ4°Dx@A\#AbTIASY^Y@- AzO@UG? +u"%?Oc  "?yfDx@A\jAzyA"@,*@J$5@U[>?b:C??<CfxšNDx@A AhAR"@,ek׫@U[if?1?+@?aCzhc Dx@AAMA:Y%@$B]@UE +y]?NL7?MU,4BӸTDx@A`x`xq&@%噌1L@UB?Xϩ?$FDx@AAQA\@,y7o@UFF?@@Yp8?H|,_XT_gD(DyFDx@A6A@Aa^@-ޣy@UJuo?fM ?ȷB#?Ї۸@*LwDx@AA6A+ &@%g"@UBŠ?~?<^*1@(m @L]Dx@AAZA};]@,@ +_@UE7?/+/M?q[U?( š@ |bp5Dx@An]Au>AeZ#@$@U\!t>@f?*#K l@mhDx@A)A ACY@$A@UEyBG?(E/?-R@OV QjL46uDx@A2AfA"&@,Gˀz@U[ð=w?i?AM@?3/poDx@AY%Ad)ALV&1@'ee@U@'?C Z?caA@kDx@AAPAy#@$]0{]@U\C68UK?@n+Z?@Z@TrNCDx@AA;A0#&@)jу@U_U?߲ޑ:k?^ju,Q)Dx@ACAmAxq#@#U&E@UZgS?]I +?g$w`@¼D"bDx@AA]Ar*Y]Aa@+\5m@UC>̺gr?a?>h]?8`uHz07@;atQDx@Ayz~AAni"@,S7ݿ@U[|?v!?gl@Z~I?7Dx@AA*AAt@.z$@UPDr?f&?s,[(,_Uz,$Dx@A]AAGvQ@.:@URFw?̍I?Tz`??$y(5?hVY2b϶Dx@A-AJA~&I&@$_x@UD?I)?@AɰF@uljVDx@A yAzA/^@-pL&@UI3? 6? +H @s[ZّDx@ATA.A?%@&+Ն@@U_n,?e~?h@E@> +ۺDx@AKAtAa&)@&Ac<@UA`?Blrae?Cvi?LaDx@AAtA1$@"L:<@UO%?hx6? #}@!;u?l@&>Dx@A}=AْAqk^q@-:TP@UJ a@?z`3.?aP @-_a@lfsQQDx@AA?A~(@"rEr@UM9ՠ?s?9ṍIGr8?SgKDx@A(AaAGi@"ҙi1@UJKM4(?I-S?]naʽQyDx@AA'A~UI&@$@UD&&>@UGY?:MV[I2?R 7@0yDx@AJAA&7@)Q@U@$??*o+?&X";g@9W@@E/N!ݯDx@AiiAoA`A$*@"cta@UTU/ ?Qb?Ĉs[4@/lLDx@AAAw@-oND@UXiʆ#Qy*?ͺ@'bJ#-`Dx@A-NA&!A@" +@bS@UWp?jEL?gb 㦌w)lNK?y}(z@r?d5Dx@AAA=8@"ޣ@UVb?@?0v _ svDx@A}3AAt4%@&N +ڗ@U_ J?qE?R k7x??؂G?ɓ\?eXtDx@A)AFA #@#ݦ97@U[QN?Q1?1"@iχj1/l֙fWDx@AASAh&@%[@UB]1b?#9?-,tDA|*hz+@Gs]Dx@AAA@#[@UX +>?5D?8Y@ )Ն1?OZSDx@A AAG#@$rM@U\\~?(Ag(?O#M @4bDx@ATvA^XAH&7@(~@U@V;@"?u. +k +@5#Eӏ{Dx@AAOAxew@-|(d@UX|݁?dD?5۵@uʙ%yJ)Dx@AAA&9@)e3'@U@s\67?R n!X?tATF2ſ.,!eDx@AwAS{AG]!!o@+ض@UCo'?r7?%y1K:ssۿ˛Dx@A A"AxvI@.9>N@UR@:l?׸9?d2jth1?S1FDx@AAAՔW@+Tk<ԏ"@UB S?E_;?KʫR@?姩Dx@AkAO!Aa%@#s&@UHfIN5@Y?J+k?x@UVMC=ǿևH?hǿO.8?? QrDx@ASAA A&:@)OKFk@U@~@~_~mR??ϓR@@HlR1}Dx@A]vNAfARXY@%n?l@UAV?H!?Dz3ߴ@"Ā~Dx@AVAAdl@$#ws5@UBqVt*Dx@Dx@Dx@Dx@Dx@A^ AA|h^I@-;P@UGw9}/@8-%c@"'@UJt̩e?KY??QE! {MOMDx@ArAAEQ&@$bdq^@UC6{?f?<ȿ@ؿR +Dx@AAcAS@'ӳ@U@@2?kq0?ǧyAx 2sZ? Dx@AAA^`@-aL @UH)?Z i?5ٟXuFx?'Dx@AO:As7A}-Q%@$PA Dx@AgAݡAeW$m@";@UQŵֆ?"or?1͈On?IhDx@AAA"Wb@*#N@UA۶!?વcqW?:qV*ݵDx@Au$A{NAm~K]I@,Fqju@UD\{+?>?z9#vI<%Dx@A-AAv&]À@+h@UBy?֤y?-;!ٴ xU8M@4@Dx@AzAcAr$/@"5ČA@UT4.,?.9Z?B-\?knl? @(Dx@Am EAqOAe{#&@*fs@U_شo?AzOB?\@!<@nSmUDx@A A1AzUR@"1dsa@USnb?G"X??@#Hx~zzwDx@A?`A-AO@" @UJw,TjYP?&-d봿π8?kvJDx@A&AuAqh@"Ғ@UQ_T@g pd? n@"sTF؂;Dx@AaĮAjAVs`@"x@UH=?ڳE?Q4(5S3*ڿxuDx@AxAcA0P@&m@U@7h%?KkJM?ZY =?hU`?lDx@AiAOA#{@*Lm*@U_sO?M?)ݞi 4_Sּ8wDx@AgAA$9@"(0+@USp?LFE?HjKU4EDx@AmAyAv%#w@&y@U`>鄕?Nר?L}D +i@&=Dx@A|MAAp|t@.abAm@UQaS4n@ w?iʔ +'JK@@(n>Dx@A]A!}A&;@(J@U@s`@ujH??5L*4.@"؁Dx@AYsAcPAM~H~@" M@UOsd?k$?ǜڙO@ - tl@ %'JDx@AA +Av`@.S%h@USX +c?!t?ku|]?h)@i@?Dx@AtA{Ak};(&@,R3u&@U\$e?f4?B%9d70@aDx@A+A +A08@%P:M{@U^UC?@w4?m  +] wL?byDx@A9ALAqH@"F@UOk!?kw?^^{@ +-~%@SV[y\)vA9pAD&A-)'!#u@'|b@U` j@%oAw/~?Rƌ@Q~d= ǎDx@A@An'AjX\O@,oP[@UD}‘?|?R(@0^Կ|Ӻ=Dx@AJA=AWd@*'@UA@ zz6o?buAɼ@wg{@],A8RA +LDx@A/#AڑA<w@-(|֍@UZH?&hR?VP.@  MML=NDx@ArAyiAi1q%@"Ŝw@UG@[?J$?;r?@Uf@rc Dx@A#AA>t.@.kƳ@UO/?ѐ?G^@ޣY?LzTDx@A_AAAz/%V@"lljEZ@UJP:?^¦?Ot.׋2%Dx@A{nAAr(A&@+L@U]ٺ?BG?J ?ӟ yL?6i Dx@A.A>Az^a&@(ς@U`;,?Ay ?Q- ˲?+ǃDx@AAEAh@$9@UBq2a?V?uA@}e|?@XW*cDx@AAA]@+R1^@UB"?ln?S?J(?1@)/`C>;(|Dx@AAUA~w@-> @UZTq6?v($e?}y? <-m|Dx@ApKA~A:,(&@,x'B@U]bb}@SW?^(a*@7@%\ZEEDx@AA9@3$@"`=V@UMh?q)?%LGP?M0DNDx@AA A%@#wX4O@UE;?迉pb?nޠ@sD(JX@ϔ% +Dx@A}AQ9As(A&@+#w@U]v?unɵ? agoB.Si1Dx@AAAz#@$d6@U]PD\~?!?6x}`C.?FwкDx@A@A A}Q&@$!W?f@UDi?ò~?~ׂTK5*oDx@A{BAtyAst~!&3@&{@U@3r?ӷ3?q¤п >@zDx@A_uPAg{AT09#@%-BҌҿ@U^%?3}?~Zr}:_AVcDx@AnA +A1)%@"7Cv+@UIK҉X?+ Z?:L bU Dx@AyAX*Aw@-k䔉p@UY_y?Ϊ\\?AX(@y@, @U]n?I^?&>(vW @ubPDx@AnAR,AR^@*:@-#z֎@UFZH,?E:p@?(5 >H@@jDx@AAfAzh@!)o#@UQ]lY ?PR?GB$V,+{xX-UڠDx@APA.Ar)#@#@th@U[n?&{? @+ +?= +ODx@A~ՍA=UAq i&9@'&@U?t6q ?s?!+p@s {[}?ɃQzDx@ACA<A%ڀ@#M`x@UF?94h?M?$q@"p榺Dx@A~)AZAv3A$@".)ƅ@UU_u=?੟u6?׀%i@DF4?nÒDx@A +AA-\@,nv@UDs?~Nx?q,ت2bNDx@A,/A=A^y@-F@UIA?ҧ"(?dN@$$?0CDx@A~AMAv)#@#(=Z@U['7I?p?q?Y^@+1+DĚ;`Dx@A3Ax*A\@,~}@UDV?|:? L4*y?dYDx@AXJAAzWq%@"Wn@UHM8u'?Q? Xd?!$ BDx@A|`AAr^@-9kCv>@UHg? :?ɺJ@`?0)Dx@A?SAAVt@.#ҏ@UP%ׄ?2k{cr?Fh+߾M֯r>Dx@AqAAo$@"M<@UNZj?B"\?D[e5ӽe@4%Dx@AA-Ayy0#w@%<$Fp@U_]?⹥A?qd)|ں>zࣟd((Dx@AYAAY @$g@UBlj[?5ZU?Rv_x?XV Dx@AbA.A*)v@.-BjW@UV-Z"@%,Ւ8?*&PvW6uDx@AAWAwst@"'˜@UXB?ޔ3 \^?U~Q%$a@T|6Dx@APAHAa@$(nB$@UB@n?ҚF?:?.VB?WnDx@AjA6ZA%(@P@+Y^@U^Xϑ?[h?jC2D]%@ vQi3LDx@AxAAjk$V@!>i@URjca?њm _?u f@ "@"wDx@AfRAolA[%#p@&uVp/@U`j͘?ϦQ?!? " x@">~3Dx@A/A~Ap@"}@UHxPJRs ?cf?1?Di4`Dx@A&A3Ac@)F >c@U@c@?^T?(Jqw.?qPBLwDx@A4A.A^0@-PZ@UGL,m?7o?nRMѦ)?RDx@AcAmfA(P]@+@U^<3??2*?ax߸?J6@%E?K۶ @ v%IIDx@AA=GAz%/@")q6X@UK86>?O'ʙ?mAO@`q`? +q-Dx@AAA8 6@$$@UBZ?ڥI_W?V&@3cU!PI*AEAN47A:ɋa +@!vK@@UP@";Ţ?**@L$\cj-BIDx@AZ[AAPN@%Ĵo@U@z4w?|x??:Q?Mf/Dx@AZYAbA@@"lOU@UU#N?iP]?TW@%A @wDx@A A6A] !p@+^_w@UBꐅRпZ<:?o_w8?r-Dx@AAANd'1#m@'WD @U`*?׮xh7?qM6 Cln@̒-sDx@Aj6AqAaII}A@-NI6@UZޜn?ݶq?~[+Z>@P'QDx@A"zAHAzr5')#n@'M-@Ua*+}?T +I?k: @½F|1"vj zDx@ArAzAN}A@-8|j@U[A +>?GSpE?M@o_hNDx@Aw0A~jAmaH@'#&@U?zJ ?F*xVuT?Z/dDx@AAAvi$q@!"K@UQEF?ޠ3U?l?ѲG?ÙζDx@A~CAuAv#@#:>@U]?\ ?%?p?٦XИDx@AFAA &=@(Y)M@U?wj"@VFH?QHȦ@Bũ%rWDx@A !AAq0Hn@$ņe@U^٫T?#zNW?C^@)R6Ϛ@U?]!?Ё?Dj)ն\mI?Ų뒋Dx@AAADvw@. W=@UWOu#G@fkH?ǶD,@OW$>Dx@A AA3}@@-^@UZ%?AKYOY@"RX(Dx@A-AA~w@-CS.@UY ?s{?kF@ODx@AAADA$@!2/@UOp$2?z[?!n@ȫm?@``Dx@A~JAAu@#,am@U\MO?`^?i9@$+g/%RDx@A>Aj@Ao @*N22@U@SVy?:q+?W?.@R?-xHv3ل*AGsALA>6I#@"'=9@UVEwp? +?4Owٟ9{7IDx@AoAAM@%2[@UA>\v?zbAQ?YOS?1,I㢧qDx@A.AMA#&@) ϶@U`*?dL~z? +i?hhq\?JDDx@A/AAkv"@.O\@UQ)4?|XYhU?WFoU1@pIWDx@A$AlA56@!fP#@UMբy +?<[Xz?nԿQ0|zo?̻*sDx@AAƏA(!%@"zoG@UIiG?󘻟-?@! +0 W~iDx@A^AdMFAVv)@@*i\@U`?FL\?t/N@2nDx@AA=Aa&;@'nt@U?rѬ?e;u?'ߋbX?a Y"\U@ T~8AL;+AU0A@&&?@)84@U?҈K?!?u/OL)j[bDx@ArgsAx/Ai^@-{m@UHDz>?ғЋ7n?̏c+X g&hTDx@APA0_AeQ@(F @U?eЉS?H?0F2[e0?l(J7Dx@Aw{A?c8O޿b-Dx@A0[A?AyEuWd@+\<@UAV'o?$|%?F<%Dx@AlaAsAc'0@')^@UaXr?ɣ?+T}Z@ )Dx@AyA@A ^@-ʄ@UHB?}?X VGe2lDx@A[PA^jAIx@!_ϕ~@UR;/w?w?ǹd6@c !IRDx@AA^1A9%W@"#ffJL\@UJ|o??w74 {UeYdDx@AriAAxriAiɩ^A@-EM@UEL?Kaᮚ?nn@6$o@ ~tDx@AAȌAz@#Zxj7@UD/ M?9~%G?WUoPbٲADx@AQeAAh'I#c@& FH@Ua'l?Ĩǿ#?q+8g#KZ@ wDx@AuJAûA5&ŀ@(n@UavD?n~?\j$J @_ZDx@ArAA0`@$l;D@U^qRM?#LJ7?Ƕ݂;.@bo;4?N$nDx@A AAQ%@"w ٳ@UF(9?Ϩ7'?7WpZvX,zkDx@AmA QA'(@'Ø6@UaSW?&?ţ* fG ?q:cѵDx@A#vAA3< %@"pE@UHgl[?Y:?;޼@RC%tqR@Myc!A9ACA.NQ6@$wY +@UAlo?u?Dtmw +4p>XnXDx@AeA}Aw(&@,Gt2@U^ V?{ =?fG@䀪`D@ a)u$Dx@A{AEAGv@.mGuo@UV(ʖI7?2NT?ıt?wF?`Dx@AlAcA֘&#t@)/=@Uao6?ûOp?|V5@G?l[PFDx@ASA,AG@"mcF@UZqYI?+i1?0;p?k[Dx@A‘AA"&#i@(>z= +{@UaҶ?y?Dx f@י %s,? Dx@A.AkAy"@!,r@USorl?ÃKj?z{t^+sdE$J-Dx@AAJ*Aw &8@&iox@U?n&Ü?i?peHp +G`Dx@A|AAo*}X@- f`#@U\E*#?GvlRy?YP8%1@RDx@AA9CAov@.h-V@UV}&?S ?ŅJ%2@@?ƅ)Dx@AA{Af= &8@&nzVH@U?Zɳ2?WJC?^v5}@Cu@V#Dx@AEAA{&#g@(@+l@UaR? +?4_L9{x4ҕHDx@AJAA|8@@'6{ҵ@U>@?kVҾ?~]O lPM?OW[1Dx@A|AA.@#AW@UDSQ5?͵v'*?^"Ht| Kǩx?99Dx@A[+AAt\@,=m@UCֹ?濈h?"/@p4B?NDIK?i#Iiƣi{.@A HDx@ATdAA 6@%UE@UA;H@k_#|?B@Ju7>#@8a/tA0 +A.`A4A&Ā@#4<@UF Wz?ۆǪ5?@i?kfADx@AAtA$"@!UK@UTYㆢ?ŏ­?bi@.61?dx +Dx@Apb^Aw #Ag1Pi@!hYP@UOp+t?ԨC?D{շ?Dx@AA/A-&@("u;@Ua‘D +?ĉz͡?StO@r]6@Dx@AAAh'0@'L㸇i@UaߒWDx@Dx@Dx@Dx@Dx@A&APAANtp@.Y@UJuc[v?7}<Њ?fapg,m Dx@AyAAW@"rOd@UY?&H??]3:߿D'Dx@AkAAt&@.p(q@UP-D>?!0?I '{ԓӿ W,uDx@AXvAbtALA#@".%G@UZdd*?mƮZ?24b?$@`":7Dx@AWAk2A8=@&U@U?w^{n?ޅnq?&Nv@I'٢@LPDx@AJA)(A3N@!@UN&??:\?ezCOW@$KHƅDx@ALAAi@$*@U`+%]??"@  YJ?`E Dx@AA9A&'(@'Z@Uam?ЂΆK??NײE{Dx@AnYAaA:^@-߀r@UFEdM8?|uD9?;MEoi$VZ;q?L?c^d)Ft'Dx@AAAXvv@.mGF/@UVv+?ڵm0?zadiL}?QbDx@AAA]@,"s@UB\Q`B?vֲZ?Ƈ +LIe[?ZDx@A^AAp31 q@"D :@UIcDx@Dx@Dx@Dx@Dx@A{`x`x1%j@"@ @UI?TDx@Dx@Dx@Dx@Dx@AuBAz͆Aa6@#22@UC]Z)?s90?%䉄6Ci Dx@AnAu|Ad>@"Y\L@UG ]π@+ @UB38?s2K}?(y"O43Z-I9nDx@A4LAAyZ1%]@" py/@UJSÖ?3?>D 'nY?̽XDx@AAA &C@(.ӂ@U>"([?d3?O #Fk{-Dx@AyAApP݀@"Ჽ@UF-?Ēz~4?KCtQb_?Ǽ3Dx@AAA?W@+6;lO@U@5?ʑ|N?<| Ef?d[_S?|~wDx@AtjA%A$@!q|@UTw?8?>x )@nDx@AAAK &B@*84@U?$?,DJ)?]z`F@!ڬdʿ1ɹDx@AfqAk޼A]ʒ\@,W@UD1'5?FB?F9gi@۳.8zDx@AA&A:^@.HU@UI,M?MC2?ԍ?@ +Uٱ?$MRDx@AAAQ؀@"?F@UY-?9w?(ܭ@5L,Dx@A8AuArNWh@* ȭ/@U@= ?[1!՚?zO[|s*r?%*?,Du>yQDx@AiAoKAaui%5@!Z@UKCK?jq[y?0@%$d?9\bHDx@AAZA %@"X-w@UHfR??aw?0#8:Fb/Dx@A4A A-\@,Ǜ\H@UC Α?V>?%:U@ M @ h•a?>}1&AD͜AKA<'6m@"s۰z@UEɤ%?U`?wBz@ o_1@RDx@AwA~dIAn29@$2S%4/@UAέ/?,?(dπISN'ȿLIh&Et"&ARA\xAGry$M@!I݁@URoDD? J8?vp8,HlBdžD nAFA4@!(!@UL?B7Ff?ƿ-QN}?҆Dx@A"AAVWh@*ƶx0@U@~8A? %?3,DM~'??1qڧ?M4|J씺#Dx@AYA4A)@+ dj@U`J?/s?'e2 ?> X{cDx@A]+AA7@"b8W6Q0+RDx@A/AA)!&@+V +}ϱL@U`:H;"?g +'?X?ݬzzQH6msDx@AJAҵA$(v@.ʊ8;@UUU^ǚ? C@?mb <@ `EaBDx@AnAsAg(tG@.@UMWRx?Z+Ԍ?"!vP} z犏Dx@A@APoAgh@! 4i@UK1p!?lY? f@&lB?DȆDx@AA^Aq'q$^@!{Q-Z@UQS?Q2&F?cA?~ +?װDx@AA/AN4v !@.A@UQF٨F?s\){?-A0:4?1Y4)4Dx@A~A&Avm)&D@(,iǍ@U>v?Ԇ(5? {(Q & ?JDx@AA9Av^v@.wRCfw@UJ'?-t ?xv]m'Y?YDx@AOA)A1#@"g@U[t0*?1͙W?F2N?FѭHDx@AnGAOAzWXĀ@*P@@U?_7??埯8=?́5\?ƛ9-Dx@A`AxAۆ}@-JN^+@UY`h?:wH?b(d!#?vDx@AAiAXvW׀@+^W%@UA`?rt? w@#U=XDx@A:AYAx0h̀@$|@U_"̋?/ ?&YU?@2]Dx@AdSAA)&E@(s:WY@U>m?i˦m)?>~@A00@PTBDx@AxA}Ap0fX@!rHł@UP}? ++J?è]l~%?Z@JDx@ArA'AZ]\c@-Pv߆@UD?*'x?KoO@ݳŐ?rimNDx@A"8AVAxq6s@#$@UDr?с l?d^,=ɔlcDx@A(uALA6@&q @U?Nh0?{wf? i$&?T +#k0@؀]ADx@AA9kAb%v@.7s@UVj)r?)F?,w&@>/_Dx@AAEA6f@"5@UF{S?lE]V?6_V +@#*@ S \ +Dx@AVA\p>AN],#n@)T~"0@Ua?(_U?D%+c[@-q@,1N]HDx@A_AgAUm6k@"d@UEmCs@7 w?,Z|@6"Z@{!-&+@iA1@(ta@.+@UMek?d?2,{r듿Ԟu-Dx@AAAXP6@'mH@U>Ak?n`^?9 @; زX>@!4Dx@A AzuAX1S@#HuF@U^q?oՉ| ?2g@{^Dx@AqFA޳AرY#@!SZ/@UVC`?[MA?xۏN!-#Dx@Ap{Av;AhC^Ā@.HE@UH?Fך׽?S @~?תwDx@AsOA|:Ah,^@.jW;V@UIUhn?Gr$q?2^w@Z3ྵDx@AA*eA(`@+dр@U_|j]N?kBF?=FU ~F@TZ[Dx@AA7A"A}ǀ@.@UYPr_?N-;X?4t^X@ efi1vDx@A;ACA6@#~xt+@UCuNO?Μݣ?rqX5lx@-ۑDx@Aj_As#A^>2#[@&4@Uao9=?X +k ? +t@-=sx?Dx@AAAdW@+G'[5@U@T4%?{b? +N1Dx@AXA7Av9^@.{+=u@UIB#?xzPP?$Z?,[*Y?IAoDx@AAvAv9@.ۜx@US%2?!dh}?=< @ilkt?Pq,Dx@A AAt(@$u%@UA85_?2?u<@CarҴ@#w\,QDx@AbAiAv9@/eû@UR̈́#A?:+?~4@= +f%5٥Dx@A6^AXAv;6@%& @U@MUyC??ʡ6e2>@˓'Dx@AlAA^g@.mޖ@UIHB†?In?BE{?TDuY?e&^Dx@AAȒA$%@!~gC@US?jǺc?%, +m56 *LxUDx@A}]A=Ar^À@.2w0v@UHk(?O7? <"6u @ +@$]Dx@AݢAA#À@"%S1F[p@UYa?ޘ-0g?U>Ҩ|?q|bDx@AAA\ \iʀ@,1?@UBM?㟤W?=%?J*<@ SZkDx@A~+AkvAu7Wh@+<&`@U@6QG?Doϫ?PG2U?_`ph2[2Dx@AlAsgAcP}$@!~@UU8C?Յ)4?΋@ԛ?-Dx@A>AdA@" /=@UH_ː?GU_d? +xX4?DOGQ? unGDx@AH*AAI#@"pDx@U[٨?`8?mNCm@޷e*?6Dx@A]AASH5@'v$t@U>Xg|A?;9?c"N҇.u^bDx@A3AlA'HS@&?zn@Uaa)h?a30U?W*qQcȢ@@OcZDx@AoAy +Ad@!Bi@T@UIL^?3ƃ`Pt(?;Ct#Dx@A3AACt#@"c|M3@UZ32??ّ$'JK?j UDx@ALAA#{@#"O~@U^uS~e?ա?b%1?Dx@A}Ag~AF1&E@(Ղ@U>6Of)?Tj|?Sju~xꘀopDx@AoKbAuj Afqq]@.)'@UK0?B*ba?ZYhAP.$kDx@A8AA}3}0q#k@$lJ˯`d@U_w@?Y#!w? #ld C:Dx@At?AzAkdt8@/ HG5@UO?WF?@~" B??/.Dx@AwA}2Ao9X@!ZA@UP4? #?^`VnlF+U{Dx@A(AA^&#b@)2Se@UbN7? h*?4ov' @Τ@$ߧ Dx@AkAq Ac1(9@(jM"@U>(q?MB??`m lw\ 6xDx@ArAAW`΀@*@U?qr7?ކoXMV?K:`-a@G; Dx@AATAT6@#_֒@UC!?|@ ,|`'cLDx@ADAy=AI#@"$D@U[@%@͛pg?zd_@U3qǸFēDx@A]AoDA{$@!eZsE7@UN$)@URp6?DK?bZwMy?tE畏Dx@AK[AAy#@!ݸrĒ@UWx:w??ReU;Kߔ-amQDx@A,iA@A'$@!b@UNB~[? h-?dX?B1]@"KDx@Ayy1A$Aoj +}@%[.@U?Dx@Dx@Dx@Dx@Dx@ACALA5*\@-{@UCI3X?s1Q?ĥ﵊ @ˁ0Dx@AAAР@#sy!B@UBG?Ӛ?>A?#@*iɿ^-;Dx@AAAlQi#@"|o@U\\W6?D*?|nE@#hA?눮kdDx@A AixA(vր@.8@UX{T~?3D?<6} +v8ŤDx@A9SAU/Aht3@/v(M@UOq?ת?*0[E~/Ƿ +&7Dx@AA8A`N $k@!Trޛ@UQO`H +?Iid?h [u@ vwr(>D*Dx@AuAAk\@-ĴV@UC?,?Js@ Z=3Dx@A#v`x`xW@+i@U@Y?FȬ]?h=@4p@rB? Dx@A3A@A\X@,TӴi@UAL?uW?DH`ɘFDx@A?AuAt@/I@UO}?Wr? j)eoP(nDx@AAAp^ @- L1N@UFQ?ܤ.KG?cf7B]#a? %I݄Dx@AAA'Q#X@&1>42@Ua +b4?L?zO+X@tW?CAa Dx@AdAAuqYi@.ļyT@UK t?V{<?A˳I@ ꐫ,Dx@AAAt$@!kKG@UMTq?ٞW0?ٓCpGx?cr{8Dx@A ALA6@#@UBbZ?%ފ?T?7wKFS@ kDx@AAA:6s@"0H@UDh?W k?ZNn0 @'k?Dx@AxܚA~ApyI|Q@.oа@UXl5@],{?e4QL@!FSol@1U+Dx@AysAMAji05@%cݭlO@Ua$R6?5O,+?ɡt?$NA$?ĭzzDx@APAZAY^!@- S@UF+l?*t, ?R<@O@@]DDx@AMqAnA6#x@#O@U^{?0k7?"uU?Cq?\@jDx@A|A%As|&F@( [k.@U>-|?S ?Yf:Db+1DDKLDx@AKAmA{16@$^F'@UA;,u?2^7W?H?nK˓@ sDx@A'AIPAfi&H@)x>:#@U>JH?\?3.Z} 6Ryƿ/Dx@AwA[Am $h@!GS@UQY?ʢ5?׺(@1MDx@ArAA|؂\@-@EQP@UCk??# +?/ς@uQDx@AUAA|=W@+-@U@jo?xT?keQE\@^iDx@AS A" A<9W@++@U@\Dx@Dx@Dx@Dx@Dx@A`x`x@"q4o>@UEsRw?xO:-?r (zI X~ɹDx@AF7A2Aƻ`@!:k@UK4Md?蜕$?4;dƆ9@ + qBDx@A!A*AxWXÀ@*x)@@U??[Du? @(ǿSJ~SDx@AAAN>#~@#u@U^$@*N?ZZ?V| 60?Dx@AU9&A^AIfb[@.+7@UIyBU ?e;?4邯T@5C靖Dx@A{ AAqh'@'ٚ/}f@Ubm?៓[Z1 y?TdT?}2F ?)ADx@AAPA*q@&F@U>Ή(?+o$g?V~C2 +WMDx@A5AEA0tv@.v(@UVn3?[f?EtӸzQwDx@AVAV[Ag&F@'{4<@U=lʟ?ĕȳ?!? +?$XDx@A0AQA+\Ȁ@- ߘ7&@UCAg?\鿖?vK!@#[@ Dx@A^AAA&D@'X @U=aħ?M:x?LT?uR퉳ȍDx@AfAAx4T@"P No@UZJ?豊?H\#{@Yv?,s?bGm@  L8Dx@AUAAd9@$5^;@U@f.|??? ޿eMpDx@AqAA?@!s$@UHt !?Lt?bR,ݧhavF,Dx@A>A,tA 0Y#h@$+@U_d? o!?<(7_Etc:*yDx@AA.Ay$@!`'c@UL縷:?ޏh?9s觿ʆDx@Ani|AvhAdx +[@.t@UH.?Ƞȣ?OMہ)l?FݘDx@AApAsy%@!z| +U@UKs@?QQ?q]~?ꋘ >h^?PDx@ATA]AIpWX@* ~U~@U>0?XXç?]+s!  }xDx@AA#AL?qqe@.vm:@UKRy +/?f8? +n(@*6yY,Dx@AsA-Az 5qyZ@/~@ULan?gyt`?`3TG?(7Dx@A7rAAO)Y&@*(ݔW@Ub2y~)i5aDx@Dx@Dx@Dx@Dx@AbAgAZ@"'.@UD(? P?\} w?^P6oDx@A!ARCA\20#W@%oIA@Uax⨆}?ǑN?a9'1Qz_,a+Dx@AKAA*!$N@!5U P@UR%۰Ա?9?-s? 'H*=uDx@AkAA $f@!0똤m*@UQ]yU?~Ľ?;S/Um>Dx@A"0A:A@!0h@UQv?:e?S0j jijDx@A8A/A! @!10@UR ۟?4V!?s^\w^X?uDx@ARAA6@&'@U>Ҥ?fz?P(nrRj˿M2>ֳDx@AzbeA+ArE^ @.f@UFVyF?q?,Xl48 69?qwDx@AkA AE)0!@*Km@Ua|t?4٫.?ç=)gDV?ƍN+Dx@AAA&}h&@-:@U\' ?_eƭ?\V@31N? ֕ uDx@AdAuA \i@,s@UBh)?{Ú[d?F q#*' @_Dx@AXӑA^8AP]0pǀ@$R> @U`)\?n%ܔ?rP)ۿ܃?ĕ3Dx@AGAIA/#@#Lcŀ@U]jxg??^ +B?#IԻj?9BDx@A(AU6A|X5@.D9@UY/ ?M_@@?ˁR?H&Q:?˔,*Dx@AwrAzAO()'@,-bv@U^ +?ץpX ?C2@D{ V?ԞwɠDx@A}nAtAu;)q@*+EZQ@UbI1YY?u)?#5!h?Hy%Dx@ApVAіAq}1@-r!X@U[κ"?#k2?ܜ~@@@|nZDx@AAA{pAy&I@( +}.@U=P9"I?-?mGsswH?q$Dx@AuMxA{ AlNo}1@-۰|D:@U[?F!̆?b gHʿɭ0Dx@AdA +A}0"@-];@U\?YzZ?TwL@'=p@cϨDx@A[Aj=A'I)q&@*/@UbKU#=?@U^ڛ!?^O?&#_Vk5?DoDx@AFA%A" @!()@UQP%>?ZtPcq? Ym[enl,'Dx@A" A# AWP@*`S25O@U> y:?Y69?Džc@v@F.!Dx@AkA.A7d@&m`I]?@U>C  ?Eu)?. +@sd6Dx@A}AuYApU6@%ĝۼ)@U> ?Dbۋ?N/E@&`PDx@Aa|BAgAY]:q;@/E}1@UNXA?)o0?hR@Ky%Mz@ؚiv}Dx@AbAiHAY\<@-2@UC[Ԁ@.,s5@UHD*ST?5]cSq? [Ϳu嶭t? 4 Dx@AVAwBA]y'J@!d?@UK4.?8'?kL="YPD@s-WDx@AeAoGAZ5WX@*C kO@U>'=?0a?OdE]Pa*1@Q82Dx@AFA'Aiz&/@(}Y4 @Uc9?V +91?ũI \~@jSAe@ +Dx@AAdA>0@'(@U=# ?n8?D +HG#3zӏלDx@ACAA2|A@.@UW ?Lk+?va?Ks}Dx@AemAnAZx@#h@UA3?ҥђR?Ǥ+n@Ȳ8?VDx@AAA)sP@/S}Z@UP?6M;/?-]L`| @ +3Dx@AA+A))&@+R5!@Ua\)n@WTW(?M'C399+Hrq+l>ZAJiAPAAq_@/:X'#@UM ?2??H1wf-@~x?RDx@AAA@#>%j@UC$u?s^ ?o s zdDx@ASkA?APv,I@)`E@Ub_i?׉k?> @)[>=$cRDx@A]AIAUqYs@.%ad@UJ`o-Gk?["?0ڑ#+9@,H\rDx@A|AAqy_@/}@UK۪?$Ջ=?M~?i'$$Dx@A,ANA|Y@.t ^;@UY츒?6R NyZ?umXg@lDx@Afc;AkeA^Q.&G@'Hy@U=]⺣?"? :x/h3?=Dx@AsAYAsP@/U @UP3W?ke?q`Y͸?Y.Ȫ?fDx@AxA0AQ( @!$WB#@US(.@?l%?c?ɣ0!]t1 +?тyBZDx@A'ALA=@!3,@UT4ܸ?1? K@jB@V{Dx@AnABAܧ)$A@!3~.@URzn?_k?xs'?WLM@;Dx@AMAAP'#P@'Tq}@Uc*ph(?G[Ѥ?8NpgR@ Dx@AAA6A 6@%6#xY@U>~ږr?g%ɇ?]@;8@7Dx@Af*AkA]6t@">@UDv?TT?Ypp9JS% !;Dx@AfAnx_A\(@,Sc6@U_66??Ay&J@(W@U="$b?\@?,@ 6,93@T"sDx@AVAUA~^@&e h@U=˗ݗ?~ +s|?616$D@?FSDx@A"AAWP@*lX@U>f5 ? 2u?ˉK>ygW*^]镑E5/Dx@ALMA/A\O6@${|@U@#?Z?~v#08"zMMDx@AxA~ApQ)9&@*5fTM@Ua֋1?jOl̥?].0M@)rz@ =Dx@AAkA9 @!݋D@URD<c?Ԅe?OY,?.Dx@A AkZA%'i#M@&1L!@Ubࢻ?@h?].@W9R;@/vDx@AA/A$[@.J@UG@lO}?Vah@)D-6Dx@AAMuA*%[@.ϧ]r@UIu"r?C i?v@\@?v;Dx@AOAճA@!9{@UQ`x?2hfb?1 o?'elHgp+Dx@A#AA\b@%T@U>w'?T*9?f@mߒe`@,ODx@AlAl|A@$65V@U@H?bJ* /?yMkje@)%RFݽDx@AAHA@" |֪@UZStU +?^*W7?ֱa@! Xj@䃎Dx@AA:A( @&PzRx@U>zAUw)`6?gz$@^+/KDx@A/;AA \@-<_@UD|;^j?6kВ?,!AO2D腾ʄsDx@Auc6A{B Al+qYv@.T@UJ7RM4>?YDx@AA#A`)( @+;ų!@UaKh?m?s2@z@ 8vDx@AA΍A +}h*@-z!d@U]]"?\H?`̝N  Dz?pɾ uDx@AhAWAV@,:(@U@Ŭ=!n?I:+`?viӁ?ᵌuemDx@AAA(@!"@UR@;r?ǙPY@6Hܚڅ$Dx@AwA}-Ao/_W@+ mRE@U?5,vj?+sM5?f@[ޜ^?Ey ?Dx@AjAA{1#g@#E`@U_adے@ s?pyF{@9%@ [FDx@A=A~AB7\b@-7S@UDW??U􌵵?S1S%[G@?UXDx@A*4A-A[@.sr@UGP)XV?{N??3^<@bN?vX4'ASDx@ACA A}@-g3?@U^J?2}@?BٴD׀6\zHDx@AtaAzGAksX@/iGj@UPmh?1l{?$Ich?H}1bDx@AAA:̀@!cgX@UGgT?d^?XU*YI; ŝwŝDx@A\AJ'Ay@!e@UP4Dx@Dx@Dx@Dx@Dx@A$AA7z@!2@UP!?ٔ +z??PaC]?P,Dx@AAA +6a@!h"@UG mx`5?Ƀm_Ɣɿ 5r!Dx@A A*0A+@#5Dx@U^Rb?f&@?Q yya%^N@3Dx@AuAfA,A#T@(bj@UcQg)R?4@?L>LAEa*W*Dx@A~5A'.Au(&@,YmjTY@U_b9?ɕg?> %rc@P0Dx@AApA\@-\#U@UC>8?znew?䥃si?jz' +? |"+5NelDx@AiApƄA_f(&@,@U_?x1?cgO%~>σ`=@ȀJDx@Aj(AoAaͨ}9@. j6@U[Tx)?x?k? +z,?{WDx@A1AjAb2#K@%RR[@Ubzab?0IqS?ʄB@ EV19c4NDx@A]dAbAV6o@"tG@UE'j?){Z?e< x=ap=MDx@AAAA%:\8(@-۽@UBvI4I7?Cl +s?ũD>#?Xn @ H|Dx@AL AwA$@!qHR@UNyKt?rs?:+i -1RSb?D<^PDx@AAAm\-@-.>f@UB?! +??#W .Dx@AAsAjY6ˀ@&Cܷ=@U=d՗??$@ YMw?l .Dx@ANA~AY`@"zx@U\x3?Y5޹h?ڠu@H%7ڿ{^z4Dx@A AAl(&@+Z@U`$څ?Aj?`n@LKO@)٩>Dx@Ae`QAjS|A]$@!%] @UO?֞?#?V[z%?0 qf (dzɨDx@AXANA +XWIi@*oK@U>Pj$ ?S?#ݮN6o>xS?%s~mDx@A?A?A#@"V@UZ?ZFM?tU @ P?>YϿ=DBTA<2AHkHA._@@!ZZ 8_@UH?Ρ~? 앥w?W*Dx@A.A"AAn@'dfaQ@U=5YX?nK%?YIeQ?us1hJDx@AVAȩAy,h@).5)4@Uc_˼L?CK*?Y武@5U +@N +Dx@AydAcAqpv@/pf@US!¢? }Y?FRȣe:nE`׿DD_ AE=zAPPA8WӀ@+|$Q@U?I '?;D?u b}}1|)._Dx@ACzAÚA}$@ 1@UOnc?ϖ:?3cs ,̀?P+c$TDx@A̖AAw!W0@+y @U>ݽB?݆_?WdqbH?jdDx@AlADcA@# &=$@U^&ߚO?J?(.l^ܡ?IaDx@AM;AAay$@!!&,)@UL[?PT|?^Ig!iw6?0IDDx@AxAVAxV[@%qj@U>R?W@4?ϚJ ·I#~KeDx@AAbAnA%t@!~Zײ@UIW,b?cCM? Z䊘Dx@AtHeAy8Al+ (*@-!K@U^@n?.e9k@ ;:e@)Dx@A`x`xqak@// xl@UKab?毥?#?\@#m:(!H@ ݹDx@An>NAuwRAdJ}@-"tf?%2vn@  o=@Z &Dx@AfAoAZCp/@($v@U=tQ?tΰA^?"eChJ? fDx@AAEA̓}@--FB@U^?z0X?˸Ҥ&`s$a{?aoTDx@Aj\`x`x}@--cX@U^ң(k@~?ܜT!7f ?<@K/Dx@A_A`jAR\@@,PaV@U@ֱE?ݥ65?24(\,xg%꺤Dx@AAwA6@$T. @U?-?ژ?xFa 4>$O8PDx@A;)A;4A%PA'M@!mOk2@UI?:2';?aH< ܦxDx@AjAA.1@#p @U_^H I?x4h?p&ԟ$?~9Dx@A/A=AV&#J@(-ȋj@Uc?bV4?v:aK?fڗDx@AA~A?k@$ Ɇ@U?2R?SCo?!KC/30*w +Dx@AoAOANbL@&X]@U=HZē?nSU?x_#Rh@Z C5Dx@AitAlA+2@%V0D@UbsE?bt? +.62@k,E?"=Dx@AAA^Y%<@!@E@UJN?X&?kf>ĹY[[Dx@ACABA~|q@.3Q@UZI}_?@^}+?g{@0d+gA#Dx@AKøAPAE\A2@,H>\d@U@r7ol?p]c7E?šqƫ'?{;)Dx@AAAZqa@/uJ@UMky$%@LA?"g \'sT@'oD .Dx@AqAA" @!]T@UW]Dx@Dx@Dx@Dx@@A3BhA8A<+A0G)$@!k;"@ULJ>?6\@UK+Ƌ~?2j>W@ߗ?gj @FM6 x+ݵDx@AR|AZ{AHY#@"9H@U\–v.?o^?4HQ?AoNYAb96@$IT"@U?E\O?%Z ?& +@@ @n -Dx@AQALAr$}@ }-@UP0I,?}7F?Ua(@ sLdhDx@AxhAAos|q@.Uw@UZwq5|?4ZZX?kbyڿN:P@%(G gDx@AAˈA%'A@ ׶`@URA?]q?ܥ&:DDx@Ax AAN|qʀ@.r@UYx?aQ}?/ +&H@i;Dx@AaAAJ@'#I|@U<^?=Da?0D@Gh@#:$Dx@AAA}.@-A2s@U^' ?P^ +? a e$" U?Dx@A7}AA 96g@!Oq@UFIf`Q*bc?1w +&s?`Dx@Ay%(AڐAn,H@(ij@Uc1?ܨP ?y۫?37@-=vDx@AAlAG>+@( >X@U<Р6?P6@?Y,c@RPBDx@AgAQA)h@*Eh^@UbWHC?ܮI?b2ufS{8@ IDx@A$AAdVԀ@,0'2l@U?e@d?6mܿ J?]Ԓ@gXDx@AӾAMA{|I@.^ @UXߎ: ?:#?SJ9@ ҕD?9ADx@Af AlA^6|a΀@.;͇@UYD@?? M2?Be@$T {'ÐQDx@ACsABAbG@&|7N@U=>L?_) ?&QW?|#ιK1XQDx@AA[Av&0P@$GPr@Ub tSN?|y ?E ~y'+Ю*Dx@AfAm1A])&@*,@Ub/;?qԏ?`)?3wܬ?/Ԫs?Dx@AdAVAYsWH@*區 +D@U>mPb?*W7?Ñ߸+?iw7RcDx@AsAYA^9@!>k@UE#?T?i˃ﶄ#?)Dx@A.ArAu@!~OX`@UYS?@v ?-v;&:ceq@<PADx@AAVA2!$@!LNI@ULI?\P+?+[1?-j6 @TdDx@A|AUAzH(]@$:x%V@U>~ ?ϳԳ2?{1nh?b.BS-Dx@AAAn.W(@+y@U>Vg?p|?Rf ?_#ЅtUDx@AhA<A[2,1#O@)Pv@Ucj?م7Uc?Ea L?˻)MnDx@Ad+A`AzF@"@UC~?u)?@&,oo??[ Dx@AAhAF@'/l@U< |*@I"zx?!ߝ@Qm+DΪDx@ATA]A)@'4I/ "@Ud)J?]{aR?Zᱸ(_4-?iJDx@AjApsAb8\I@,jO@U@b'?`{؅?nAf?Ƈ -7?i~@z+Dx@AgAyAS@sx@/T@UQ7?50U?ž\/ +R?TsDx@AeaAA/|a@./C@UYyץWax?zb%AH&k?㭌D36 6ALVAPAAD$l$^@ I/@UQULז?v?y(h.ڬٍ@%%Dx@AYAـAX@"U4S@UDxJ5D@Zm?=U#fҿoCnΫDx@AADA)6@%D-~E@U>6?ZJ1?Z:|>?U.A?kDx@AsAzLAk\p@"Lؖd}@U\AA? r[?!WSj+![$Dx@AASAV@,1N@U?P??0 YRd@vDx@AoAفA@ iޮ4@UPZZ?oS{?<ᰘhԿ r>>'TDx@A+ACGA ހ@!?6?L@E@.?ʥODx@AoAAMx@#b@U@oE?o;?Ś,w߻@W7?.iVhDx@AA A8@ Ɓ(@USU dHòap?fnby?b&$?\K&Dx@AmAA6r@"@\7@UDП?B?@B=R@*3G;Dx@AtAkA|A0K@!Ev@UXTN?ԏJ?ݠ,ICN?}~KDx@A)AA@!{#]@UH"h?d)?`X|X? ŸDx@AAAv@/6@UTŋK@A ?E+- ?@3aDx@AkAa1Az0#K@$׵M@Ua_?@:%?%nYr@\@f|Dx@AR%ACA~c[x@. O@UF\K?QV(?¦;-4ce?P@'Dx@A:AA89&L@)K,!@U"@Ud>?$3͕AlU@*5@U=k]r?Qm-?,MU?{@$ 2$F@$&Dx@AA2A<&v@/;$ +@UU~^S?YU?Ȯ#lS/Xl@mnyDx@A -AA6@'>5@U<4? fS?l"\Zy\z~?痥7FDx@AwAAlN'#>@'Ӣُ@UdJFL?&n?|%>@]ҒDx@A֚AxAl}@-oeg @U]d'? a1?פL Y.?DT%E<?anvDx@A%A2rAm9ڀ@ -8$@UVO?!?ƹt: +V?hDx@AAAv[@.ʑB@UFR|AEUR?¢uw ?ADx@AAA[8$@ DzI@UM@B!{@?@%z 8@*xR@ -'Dx@A5A]A(&@+@Ub?e:?X?S@K3?Τ"ۛDx@AMAAw~6@''@U @UA ^?12o?@ g-7@/b?a$`Dx@AF3AAբ'&u@&m{@Ud-Ci?q!D?r3@zb?{"Dx@A` +Ahv!AUv| @/4HX@UV/]6?ӹmEc?AĺނB +??Dx@AMAByA`q#@"?ީm0?<:}$A~AV@ ;|&@UQWP\-?Uׯl"?v|inl@" kh{4Dx@AÜAA}1@%;@ ِՒ@UJͧN? O/f?%_ ptp)@8;Dx@AAs=Ahka6@$kǔ6@U>x?Ў_~?84 X}x@ +ȜDx@A{:A|IAwesh@/t%J@UQpb_? !6?Yz?HTvi0?3pDx@AAA3@)D~@U jtL@?# ~S??}Dx@AA +Av*p#]@#(Yk@U_#?zh?"/ɮ@|vM'Dx@AA8A#@!EEu@UZy~??u{+?9ϙ@Pp@u8=AFAKCAPCACL[@.#%@UF"?m*[?Z0Mf[\$?T#Dx@A ]AgAij|@..@U[?KRY?'o@(~^ +]ߔDx@AAEAI)6u@"EI@UCG?Aߠ?U&֖"r+@ 7Dx@AAAx|hK@/eh@UZ#@mN?bv&?w @";9|Dx@AJA0As[h@.!ތS@UF!u +?$^s?*@aK*A›Dx@A7A޴ApNV@,@U@?h9T?|T.7m+K~~SXDx@A~TVAJAuqM@/5@UL"t? G?v*1@r@ +*sMDx@AAA*`@"Ŗ3׷@UBlDFpa?[΍w?{G @SF@I14 +Dx@AAOA}is@/Cc^@UTXw?B?uZ25 4ĿҽCDx@A9AA41#@![<@UXv?`F[|?um?١5?vގDx@AgXnAk`A`4%+@ wu@UJB ?p?+$?[i-01,+@yюIDx@ALYAkAr11#R@#'v@U`$K?༨$?]N?ۏq-@SW Dx@AuQ=A{Alw s@/p@UROz?]Y?@ z`OC@$Dx@AAAu#W1j@+J|x@U=?6Sv?#zT:שINKE &Dx@At1AxAmX[P_@.2Ys@UD"N?,X?%k@,CO@ ^H<Dx@AAAsa)@/oa@UPcIRP?FCW?oL@<+"?p4JDx@A}AlWAtq@@/IT@UH>?Q:?2=@,Kq{@׻LIDx@A\AA0#A@$\@Ub.yO?&ܦ?@#@7˟Dx@AfkA`A*[@.ʦ@UFd}|?xNǥ?0LŀW#g׿$-D3yRA11A?A"]|a@/,E`@UY|c@kto?s)g>@E*:Ѩ3AstDx@AtA A16@$l@U>>? ?[ qoI??U!Dx@AA$A41#I@$#N_I@Ua(\? @[?z֛A@E٥QDx@A[:/AauAR|a@/1H~A@UYg?U慝?52j@ jJ;킂Dx@AXo{A\qgAR +%[@.kO@UFp\?R2?yd m? biDx@AIAVA{`@"az@UBvE1??QG7?B3@x,hDDx@AAJ,A\\'x0@&R&@Ud.z?Ұg2q?m7?0 b@ JDx@AA}Ax,(̀@)\@UdgY?yy?-ٚ/>OA:@6e&Dx@AA4VAL#a6@"Qn@UAb?fށN?DqRDy>xSDx@A} AcAt|@/7ح@UW"gM?]š_?[T@"\CwXDx@A%iAA:@ Y@UUߔ1.e?Г;~t?ŖOO(|@6d`Dx@AA{AFy6~@"T@UCb?eг?)nS6,f@2Dx@Aq=Ay~Afߘ|@/"8@UUI?'А?)|p^Ow}Lyڠ%Dx@A2LA +A*2 @%j>@UcD ?rrVv? )whO?Dx@A AA$U@* +ŧ@U<|?d!?^n +{9ZMΎ@ |*Dx@A+A%xA)H@ s@UR":W?)۝%?Ɏ'+A^=_%cI=3Dx@A.AAA'#8@'=m@Udo?ݞn?f@c\z3Dx@A`Af(AXH.W @+osp@U=6 a?AˈL?Jιf.(rP(?қ Dx@AAT@U>O?CI0?ȭHz FF$?%/4Dx@AA(A(@,I 78>@Ua^,?7G? K';@$$ϻr@בH!}Dx@A%AA1#@!H)@UYF=N?ȰNf?T6pm ?O?Dx@AcA`A|YQ@.( fl@UCpC@D)??̺p@2N^$V 9Dx@A<AA` @ K@USM?T,go?Le(<5 ?(>ܝDx@AvAAEs@/#Z@USWi;?t`? `"aLcrDx@AAAs!@/xA@UTཬ?y?0G?EZ@fׇCDx@A{A 'AqEqX@/?@ULU?αj?Y?Zx*taDx@AApAwx[`@.6.@UE1r`d?cg?TpJ\xUeΥDzDx@AцAA} y@#zD16-@U@E +*?9e޲X?àmK@z] ZhxDx@A'Ҕ?@M=*@eɲ?H(?yeJ?;by?N+[qDx@AAA;@ -@UU?F׈?8n@]-Jy Dx@A]AZAO}@-6p@U_ w@^k?_9E>@dU03KU0Dx@AOVATAF +@!ʝdj@UHl]L?tҰ?8CP?Q@c@8cRDx@AӴAA{|@.v-@U\I%?ט+?2?@ GD:Dx@AVAA3}B@-d\@U` +# +0?qWui7@:Dx@AA2A%W!l@+[LnD@U=;?-?ND~B@Ot ?O j +Dx@A20AA`6Z@!U@UHiBKc?O.?wQ3 Xg@1Dx@A `x`xs@/ۦR@UUjbuH?Ab?S?:&@'Dx@AAA-@'U:@Ud3E?cb1?Uʙ@vws@&%Dx@AIARAt' @&_] _@Ud b?ư)̵?F=?c5 @!]GXDx@A=AHUA}qQ@/+@UM. f?ɐcrq$?C*BI?ٻ+Dx@A`x`xqP@/u(@UM8)?-X?ۓzllmnZ-@٠:Dx@AqwAxbAg2|@/=4@UV/? +eP?`Dt@xỸ1@sDx@AhyAnA_si@0Ig@UQe?N0?<@^S2 "HJDx@AA}A@8@'g.6@U;zc?cw6?99 @!PXߒ?98aDx@Au/A~2Aios!@0o@UR+?{ɻ2?2?]jc@_1-7@!oՈMDx@AAe +Aq.@/=Uδ@UK#?rx?M.+s\@ Ҹ~@4M`Dx@AOA&A-tyQ!@/_$ @UUvٞ?ô?ä.?9`hKDx@Ax'eA~:Aov @#TdN@U@c}-uq?ָu?q?.V>,? %.(۩AJARA?;qJ@/la+j@ULeOw@?ڻUP?)sbRoTDx@A%AA)&@+wq@Uc2?uzc?FXP^TcW@G{Dx@A A=Aw<'#2@&R|@Ud6?R?֍?lnx=EWR_Dx@AƦAEA[I@.s#U@UD-?ЇE3@?_ev@L?(0UD8Dx@AAPAvs!@0mמ@UO3?4xۄ~? +$@ד@&otIDx@A}jACAtn`'@)VX@U;'m?d49?ŜQ7 |?&y$Dx@AGA Ax@ \5#@UQUK2B?s?H@jxD9?D) Dx@AAYA~[`y@.=5@UDg? #w$?poP@_@"^Dx@AACAU[Q!v@.JPu^@UCk~?I.c?(#yKy^m4(Dx@A_AhAT] 6@#@U??2ܗ?`f؆@ +D/'-Dx@A]Aw/A,}@.[v/@U]!?"Z?yKWT? @i;Dx@A AA%)@+t@Ucc36U8?\u?ށxW&(:90Dx@AMCAIAa?Um@*Ǘ(@U<ԯ?B?R zRR@Wh8>?IDx@AA ASY6@$3C@U>2R?ӄ[?/L9/K\@Dx@A*AhA{#@ j@UUhQ@j_?%`3R @,-V! +n/Dx@A=aAWAW[@b@.p:o!@UD Eῶ ?er1'L?RˇDx@AATAiI#@!$@UZ@}r;?,h@Z: sp@1=ƒ'Dx@AlA|hA]E1)#E@#C@Ua +>h@ + 7v?I-R7@'$!_oIDx@A}{vAAm8,@&M/K@U<*~?ތAg?@+}YU.-h?G$ZDx@AAA[@!N`@U\ΐ9?$us?Sw +TDЌ:3JDx@A{AA%%@ @UKh*Z?? ?N޿#f?YPVDx@AMAtAD{}@.QA@U]_<5?ܠ L?ƨ>s7?iDx@ABAA4)@*v̓@UdZX?ج*?ǒBNPKqj? }Sa%,Dx@AoAtAHiY)@-@UBuܷ?Yp?ɸoE?%ɿ̂KwDx@AAMAF@$w#w)@U>&Eה?Ef?j(iИ\?kK+Dx@AA\WA1$Ҁ@ {#)v@ULam?ؾ]?H +80$Ÿ<Nޯ+`AIASyA>(,9#=@)Waf@Ud}[?wB~8ٵDx@AAAs2@%T:N13@Uchjd?̌X0G?Fv?@{4d[ +Dx@AԨAUA~Un@*(Iu: @U.?=kD`?WP=?P@@LVA=AFMA2I#@ @kؾ@UXd??ꎆj&ik?#[QS?嗵j@@ o=# J@Dx@Az:!AwApY6@"1 @UB X + ?2 w?7j@e1f=潻Dx@A}AAu}@.3nq@U^r"avշxDx@A+KA A(&@,=})@Ua31k?%Y1?& ?Y'7Dx@A!AvA~W(@+CR@U=\8P?艙Y?t 1(KD:8Dx@AA$A5j@!d@U\kڈ??L?2ArrYaDx@A(AAp@"\G-`@UBzآ?1,?fh +@|^@S*Dx@Ae2AAy6@&4C@U;l~3?ÿHjc?\ +cE EDx@AuA{ Am<}@.p*@U]ᩎx?jy?_:Ε@7[9ac2+Dx@AAmA|vY@.Bu@UC fJ? +T͒?0Z@1sGdj2Dx@A~fAAr)&@)| N[=@U;Q !?z:?µɣ@9?@+Dx@AA@AOX}D@-H&-@U_.?䮣}?ۇQ?dQzfDDx@AAqA$I@ ?@UQzz?Ru\?zwQ.@ ӆ@dDx@AοAAN0&@)(L&~~@U;c#c ?0d%?7 U54#T}?f:nDx@AcA]A96p@!M a@UD7/?_-?e xDx@AANA[,Y@(e )X@Ueh*?p?l`fM?SxDx@A1;A3YbA-e|8?@/A6v)@UY46?i8ƴ?|sj[ȿ"ڹDx@AAvAIUql@/J@UK"3RB?P?r콠Q-* PZDx@A AA)&}@+!ߣ@Ud@n?yT8?9I n@)$RDx@A +sAA{Vy@+J@U=I?`|7a?3\S⹂Tv޿JDx@AtA0yA7yX@/翦@UVҚ&@ynB +?X@@5?lTJ,?c >uFkf@EkgDx@AfAkA_o@Uo@*F-Mm@Umw?”ߚf?T|?/$Dx@A7AA1H@# yBd@Ua3?d?u? + X?ô +l"Dx@A=ATAy|!׀@/4K@UX>N?8]?ʥp@u5]kJ+!Dx@AA +A_|]@/Cy9t@U[>.Vl_?}?AG$D q?b,Y Dx@A]dAJA")&v@* 6@Ue?w3䋹?id4t?O(]?toDx@AuAI;Avd)@*0@Ue #!?D[?Ɯ9>@9y'4LL֬Dx@A-@AxAp 6@"`ƽT@UBj@?nbMx?Mn!wT~6 $ipةDx@A}\A\AQA#ƀ@ }F@UWf?ឤı?c @@ &Dx@AuA{Am>#S@"bq@U`=j|X?H?ae9@2=@%}fnDx@AueAAf'@&I[2@Ue:a?:o?3>ܼ@ 3? ӋDx@AIABAα)&w@*![ j@Ue1,0?VVX?\#@m|@({3pDx@AuA}AkZ6P@ 觠G@UIR}? 1?S=Ѫ( eXi +Dx@AΩA8PARR1@$ QG@Ub?X V?Ïfbni 34?ﶲDDx@AAuAMs@0|@UN7~fC?(*@:B,@S'Dx@Ap+A]A_q$@ 9l@UT.m?/ b?H$w^#gFHhDx@AAAzA\s0@0$1@UO,?7[l?Ú:?0Gz;ҿ)=Dx@AmADAڪ,9#6@)<" HX@Ue)"?Π_L?+w +2b?9֚ Dx@A ArA 6S@ QT*@UH΁??pv@ -B??ИDx@Ar@AwAkdS[`v@. +@UD9?Ѐ?>gY=@ mg쀿 dfDx@A5A@U;Wj2?fup?@ޭ@Λpa@=7Dx@AA׬Aq>,@)d~:T@UeM7?RGՉ\?|k&J@4ln@B[6Dx@AA[AjVv@,9@U>Ppg?R?[^@C@$xt7Dx@AAAos@0'#C@UQۿVkt?ĕEe_Z?]oinWKDx@AkMArA[a@.DB@UD e?̐q;?ޅ?SR?T&Dx@AAGAAqW@+6 *z@U<- ?yIx?{Rӿ +?2&Dx@AAm Am((@)9@U;d3?n.|?7ƪyH#8m9Dx@A-@A2A2Dq$@ ,o@USA,ڋ?NW;?Ygg)ޙ[Dx@AGApQAsD@0!@UNFi?Ozm?Ͱ?/ +\@(Dx@AcrAl&AXq$@ -FC@US10?ck?T5?y2~d<Dx@Af4oAp>TAZ,$@ P7A@UL, ʇ?6_?Lbb^?%@?bDx@AyATA{@ qy9@UW.-_?(p]n??L?4dۏ 1Dx@ADA}A}=i#@  @UZ޿?'n?j?ߛ/W&IXDx@ADAwhAPYy@-o@U@M|?Dz? ):z#%_uA~Dx@Aa`AjrAV)UV@,h@U>u>?ER?,^#''@!t1Dx@AVA0A~s@0)]]@UR#?+R$?+@ +yC.+Hr?j"?aˬC?@ފ~QDx@A,A+A1|@/Dl +@U[cdDx@Dx@Dx@Dx@Dx@A.`AmAX#@%J5@-7@Ua5?r";?) +B@"cqk@ aMrDx@ABAdhA&!#l@!3)@U](vÀ?atvZA?-%Zg@y@0qyDx@AzAA';@ X^@UV7?K ?O(4#E?`@"CDx@A %AA}?5s @0( +pp@UT%#?w(#?2ԏ>50#vDx@AyAsAn#$e@ +o@UPLO?wݱC?:P}&?44BDx@A|AAs1a#B@#2Kr+@Ua)?Cn}?A'@qvDx@AAlA|!@/UM2@UY!?9/?/꠸@ R@g9yDx@ArAyRAh[Q9@"` %@UA#?+B:?L(GSDx@Am AsAdis؀@0-y@USN@Ǘ?mA?I@ަz?2SDx@AA +AڒU@+gC@U< o r?8nJ\@5?RDx@A-A )A| )&{@+2)&@Ud?jEB?+P@ ȸT@! Dx@A,N->@r[ADx@A$A)Ay@ 6}%@UUR/?}1V?u/@NN$z@UDK@ E?Ϫ@-8Dx@AiAsaOA^x|(6@/J(|@UX?tBc?ՍK7P?xqY,A?2 Dx@AA#A<s B@00|@@UNA>?q6?u%?5F DoAL,Dx@Ag|AAyA@0$wa5@UUA~ &?zv?2Ak(I8g@!EDx@AcApAP@"?qY@UAiF?ـg?v?fV?ݟG Dx@AdAfA#@ &CI@UUK[t?,DN(P"\Dx@A{AzAY6ـ@%3b;o@U<-u?V?pSaݿ8@, Dx@A]{AfAR19#;@#cǠG@Ub5#@.D?g՜1@'"0TVԨ,PDx@AxnAeAA6@"y@U@s9tf?M>D?5 qޅDx@AMAAVg#@!%@U\+;?ș &?_Ĝ@ 5cjN>Dx@AU*AYwAN;Vi@,2yDE@U=m ?g?Dr蹔S@hJDx@ANAxA}V@!=-@U]1 +?FrN ?-Z5z9?|I*?mJDx@AAnAQ9@"a99a@UAK̍?iG?%ۇ?jbצ@55Dx@ApAw"9Ah|@.%@U]3T?0wd?r3"d@ ܎Dx@AmA A~y$@ !q @UT@gi?b!@7c@A5!Dx@A[AdXAQr#@!@U[Ln?;:?Ev\֥x_M?eD RAKŦAT A@),>@*Hu@Ue%?>D?Ţ?BWJj4^!Dx@AA3AYLs@0<eݨ@UQ}fu? g?Ĵ`AZ*g +NtIDx@A[}A}A#1@$EA@Uc?\r1bL?H=lƃ@FO+#?IuQDx@AAVA4@o@"+SL@U@.+?F!{?7R@,'BabXDx@AQA-AA6@$P@U=R?[??(!΍4lDx@A}LAAt @&X\@U;6"?R?]rX&T@Bp:'!.zDx@AVAOA&@'AZ@U:et?L/c?j+ ?oʷc@NF)Dx@AjAckAP@">F3S@UAUX?/a[#?OR opsOXxDx@AAAe@"j/@UB}Y Dx@Dx@Dx@Dx@Dx@AmArAvYa#@ eIR9t@UYC7?K g?xQ> }\S@9?4Dx@AeAnA1#j@!9YX!@U]?BD?ī63?=]ҭ}?RnDx@APA,AcQ6@#zQ@U=?U?,ӡW }/@(eiDx@A>A6A|s @09m6@UOlY3?U ?ǔ"PR.@)йy=?;_Dx@A}YA|AVՀ@,( @U>t9?ںhh?ʎ^T]$k2?Mg Dx@AaAA7@' @U:st@y{P??mt@)کGC@ <p Dx@AQJAVAH@!C@UC2h?ۉ(?P?*t??*\:WDx@AOAv_AY@.I-V@UB\L?Jz?rp+Ky喷 pDx@Aq"AA9$@*Ң@UODx@Dx@Dx@Dx@Dx@A!YApA~eW p@+y@URͶ?Wpy?uILqK)tDx@A_AzAx'f@!((a@U\|P)?IH?W R|@ o-}Dx@AײAAZ@#ޤ_@UOGb?ky?o1@II1UVb Dx@AbAbA-@(pU)@U:Y]1?֨cV?0]m14_?LfDx@AAA_ +Z@ C9;'@UJT?\:)Nz?p/W?xz.@@0K_Dx@ApAAA!6@&Sʏ @U:t?Xd_?\lBa#cj+pN UDx@A Ap8ArKuY)@.GC P@UA?Z{T?̵ʛ +R ]U?ck8$Dx@A"AA_) 6@& +m@U:%UC?Z? ? \DM@Dx@AAl&AWq@+|3&O@U<:k?D?>=DG2R+?2ֿDx@AkCArGyAb=72PE@$e@Udu?0 ?G 0?ܱs3Dx@AZwbA`jAR 6K@ BG E@UJK?7x?OG"@'5 @.NDx@A2`x`xq3@08@UJ`B?-0cr?]Y]?Û(Dx@AG^ACA׆h4@쿏h{x@UN]?jw?|XEwR 'Dx@AxA1AY$@p_T@USwR?ʝZ(3?s` -#ʞ?sQڌ~Dx@A'ASAJ,&q@)y,@Uf#b%??ͫk?3g g}?a=wDx@Ab^AgAZq6e@!@UEҒJ?ߊ9tP?/NrIODx@AzA AiAqQ@$%[O^@U ;Dx@A-BAA[Ӏ@/r@UGg|eA?|?wo<? ⿏|Dx@A<:AA [@/c@UFj.?[!C?v4@ +2@)Cx3Dx@AadSAgwjAX4|@"&@U_٣Ӟ?k +]?b[@&x??EODx@AAI9A,HPO@-!=@UaSB?h@2?Řo6[?BV?i+CDx@AwUAAn)&z@+`{PӀ@Udհ@vy_?CI(@2$e@Z]V5Dx@A/A"A}|b@/@U[Q]R?+N? /\9AE5ÿ[jsKDx@AAA@"i~29@U`7G?FO?z։?[@ r _3VDx@A{A4Aoi@#@)35@U:`$eD?p.-?g^eDx@A*A~OA2I#!@% }Q@UdԸp6,?zK?gMMN?;?-bNDx@AeAjZA^ @&u>@U:8@ ~}?A ,l6@ ZŮDx@A AUA./#[@!=H%n>@U_2;?ijul?b0!2x"&?9Lm"@Dx@AQYA@`AuQ@-r@Ua$ N?ő)?A2{@nzGDx@AAnAr*P@,:v%@Ucf^?~M?y0*_mɯ?֓x1Dx@AZA/A`y@@0< | @UT;&z?E-?|t, ?TS\Dx@A A^:A܈A$Ԁ@ I$@UL1E#?i\?kr(L}4gD +ʎADQANA7|!@/@U[$?,3?r. U?ڿE+?Dx@A*dA!|AD1#4@#q7Hz@UbU-?k yH?ܤ@+.Y:8ֿDx@ApAvAh!|@/ ;@U]?j?H |0 +Dx@AeIXAiA^x @&e@U:c[?ucB?w×ћb#?am1{WDx@AAAl1;@ \+Q@U\v\?B?~V8 NX@>`Dx@A>AA2@%@@Ueͼ??\bz?;}P@gDx@AAAJ1a#:@#&~@Ub$`(?搝0A6@UaPc?Z ? Wn *=@LPpDx@AkeAs>A`ZPY@ W@UXuC?3|a?‹إqhц?g6LDx@AAA#H@"z@U``?lГ?¸0 dwi`mg.Dx@AbyAiA6 @$l r@Uv?m;Dx@A)A3AUq@+5YI@U;J]?P"?#yt +8Dx@AfAk'A] @(r@U:z?o?u9CdX)Dx@AcA=QAT6X@ |@UH( @4M0?`tsq@7F2r{3Dx@AA#Aq6H@ +6k@UK?Sk=?^p4?RG҆Dx@AAA~o|@/cL@U^x{?2p?(ȥ}` غ.@nj_Dx@AdEAiA\ +6X@ ~Uvj @UH-?4 ?"ߨfҿl#1R?NHDx@AAA2#@%oT0c@Ue۸T? ?bls@?`ü?MgtDx@Ad.cAjA[<A$@悒a@UL`)?ٌӭt?߶_@bI,?g&Dx@A~AOAvƀ΀@ u@UG?3j?WIOMb?cEq¿ӑ鍫hDx@AoyAA{7@(x.@U:/[!??kƬ\?AZv7?מEJDx@Al"dAvA_|:@.l{@U^*C?:^}?Ă#t ;@ +HkDx@A AD/AY@.p襠^#@UAܻ5? ˵|?U :.@w&wDx@A ALqAyGs @0QpV0@UOq?@bG#? -I@'ݫ@7gjDx@AA_*A.!6@&SoGT@U:̠1?j~\?6Gx(1$@!1 Dx@AGA^߯Kq?S)?e2\ ?v'?A5Dx@A'AG7A=Rs׀@0Q|=@US4r@j?"_@'?RiH&˿樼f@}^EDx@A$ +A@RAȶq6i@! S,@UE\UU`?0?6RFoK?A1Dx@AAAAp,@C[@UTEo[Θ?y"ۿ@t;Dx@AAQ6Dx@AأAA6@!Sy}P??pC?G=ֿͭ#'ox9Dx@AĖA AI6n@!@UD=7D?QΪ?h t?R8ȿ[eDx@Av A|AmEUs@*ek@U:MOq?xY?lSq@ Yj?]@{}īA@UN!?`9UV?Tۿ\ TpWDx@AALAns@0Z}B@US@ l-f?O+/3Q! W5@#YKpDx@ApA}aAa2#@&e!64@Ufc?ףDT,?8-'Dx@A}5dAӜAtKZ1i#1@#4@Ub?+"? +Pa@AZ!b 2s +Dx@A{ AAre@$KYe@U3y?͸^6y?"4(/,%?3W[Dx@A +AAVi!x@,N]J@U? >}#?Qur?鹽TKd?}gDx@AA,Ak@'*h@U94.?<D?k!{"G@ 5Dx@A.AABy`@0FOr@UV;;C?;ZQP?= uWtX e_@ IDx@A A1"AT,}@)z@Ufђ?( 5 ?W+'@Um#Dx@A::A/6A ' +@&/J@UfOܧ[?Y~,?l6ѿ}9@LDx@A;AAu-i7@'0SW@U9LGbo?Qg?-M@A$Qd;!Dx@AbAAy,#@)ɛ)@Uf)0@1U.,)?dM@<9_@7 <:Dx@A[;AcQAP)YX@-Eo@U?w?\i?Sa\@/4Dx@AS~AA2@&=#3@UfgpG(?9iz? ;?nDx@A@AjA~pd@0NO@UL]7?Þ?ݗ7@ #S?"7R*0Dx@AHAK@AUy@*@U:h +?`e?/}t Dx@AAGA*p;@ ŵG@UEɘ?X?v@ҿL??1Dx@AAAK#@ 1 @U[DW ?!'?o^ DY7z?^hDx@A}A}Ar_! +@ N}@UF +6g?毹 M?1+ 29^zDx@A=A* APe@ .J%@UY-e?V/?8wh o5^H/KDx@AVAAps@0f9~@UQƅ1?9p>?pz@#Z\?5 +A)Dx@AVAA[@/u޷@UF }?ٜa%*H?3/*V~1?Ս{ Dx@A}!uAZAt y6V@ I"u@UHNb,?ڸ?7ʅͿB? =!Dx@AAA)@*@tu@Ufqk8Y?|)CS?MGm@)ļ8?|uDx@AӱAA6@%$b=@U:m@$Sh? ]ދ@3/!@6pzy)Dx@AxAAgA6x@!bNH6@UCq4?/_^a?m%nU@*O^n@$.œDx@AgqAnbA^Ms!?@0c +q@UN W? 4?sC7L@8؅Dx@A9jAuA>7 @';g@U9D? Q(?,39Yş.@Y ODx@Ah%AmA_x*I&@,c/@Udj,[X? +H?.}*@|1j@XtDx@Ao~AuTAfy1#@$x@Ude>?g??*}D%B?C?lDx@AgAp=A]&hYY@-2^=@U>~>@ +!#?A3<@8pQAu\*$Dx@AA^Ays(@0f߅B@UOEx?OZ//A@uAPA0%s"@0n?Ș@UQ5{?>px?7 \"W@ Fmz'Dx@AlIAsiAb,z@(0n_@Ug,脃?a5 @UM@?UrOB?S[P14Dh̭=?f?,:L@CDǪI@saDx@AgAlA1#%@#|t܎-@Uc՗?ᰥQ|?Mo^q 4+K#Dx@AwGA}yAoep@0<\@UI?t!?a5 ,?袺'4VsWDx@AUpAZAM.1@#`}xo@Ud?Y?_ -&?I^&mDx@AMA ApX@0&d@UGAe?2 ?K?eYZ?w[wDx@ATJAA@!6c@ '@UF^e?W)??T +< g?\_?WDx@AbAAFy~@7@/p.+@U]A?ٷ0狿.?K f p-Y@8Dx@AAA@ m@UQO?þg+?@,O?U*@9̿u?qDx@AAA6@!@\@UA8Dx@AAdVA@y@0!eÊ~@UY\R9?l]8?,(*@,rW1Q@pNDx@Ae/AlʆA[Ry@0Ef1@UW,?Y|A?QUÓsGr,BHHANASAEvUv@*@U:Tn;X@Zb?о/?bF@M8GuDx@AAAA1#Y@!W?y@U_i%?l~O??MA0o?IDx@AcA$A|Ut@+>z ~/@U:Z$?T?]Ѯ@9{9?冝X Dx@AA%Ay0@0`-@UU?Fˍ?9QI^@xZ?P8Dx@A%A{ApI@0Xu +@UK +کOe?ՑmUB?pE_\?KJ Dx@A=AA|@/'-@U\sq&?蝸Y[? %@NS?Y Dx@A{kAAr!@)o> ;@U934?Ge?HN7 v[=?LDx@ABAzk?8x̒?;"Dx@At~AuAq @#ˤQ@U<8S?Uz??E}V!>@51FjcDx@AdAozA6z@!?N7e~@UB +:o?1R_?;ƣ4@ mkb I>Dx@AA\AV@-lU@P@U> &5?{=lxq?t%+/@U + z OyuL qDx@AtA{Ak9%*1&@,*@Ud5?杮4?܊ +^ TP Dx@ArAwvqAirYO@0nI3\@UM$;TL?a]?dRи1?Ď_!@&Dx@Ar:VA{JAfƙ3 #@$]IpK@UeE!gv? f9?6;5@^*[YDx@AA(A~f(~@=@/fRp@U^"Md?r@0"?Ǻߏ?>ŕ3?謨Dx@AluA:A+Y'@.Z@UADHXs?ߖR@x:m@ O=Dx@A ASAo6@"-F>Z@U>:+غ9?ܿQޜ?X_w?焜=Y?@<Dx@AGAA7Y@.MT@U@g? +d?8k`drc1K +QDx@AxbA~mAo6@%h[|@U:xY?܄aȈ?Hǖ h+l^1(Dx@AyA@Ao+6E@Lk@ULNu?ds?B TإDx@AoAuDAg0k|d@0 EM@U[0?n#]?ڞvb^IOitDx@AOAAYQ@-]N@U>]+_,?R,^?rMU;|r6x@)eކrb?6ADx@AiAcWAm% :@^|@UN 'u?'?*>?&B?G>0Dx@A&AA+ZUk@*崞a@U:P%j[?E `?uE?㔾C jDx@A2AdAz[@/88N@UD" @w"?-q)@1,4F:- |Dx@AAdAHpY@0h;<@UGs'n?Jc?zt? "*OgsDx@AAAt@%3.@U:|?u?.ݠiqz?Kgo?S@?6Dx@A{AAW,s@0f8qc@UQ՞?̘?V`{+{Y@/zYDx@AANA@&^W@U9ԯ$`?'w?jϊ~Dx@AAA-AF*1@,P@UdNm+?Q?\.*@ƥiwyDx@AAkAɅ2h@%-m\@Uf<"?8E|?p~|K`?L^jDx@APAIAW?h@!ܑ@U_ְ{l?Mג?‡Kz}l?ZDx@AABA@!hM@U`gI,?\G?(*@t8kS +Dx@AIANAZ"p^@-I@UbZ +?¾!L?Sܰ6?n($.@zYDx@AApA,@)gjB@Ugh?Crh?AٲA +u?'v{Dx@AhAEcAy0 @0p.d@UUVl '?+xRsv?|80-Dx@APA!AyQ6o@ #@UD\iV8?_?xn+6Fl/+Dx@A{gzAAs~A@/cЁ=@U]J?e) n?,3HbǛLDx@A8AuApx@0A$VX@UIDx@AʊAٕAmy@0J%}u@UXxx*Ej\Lm?mZ U{u?̃9FDx@AA wA66ۀ@$Z0ecx@U;ӳc?Ͻ?e?2ׅys=#asCDx@Al|ArAcBUk@*T @U:EPƇ#W?(b|g?:|`Dx@A(AQATZ1@#}q@Ucj ,@6߷H +n?]l <0U&FG:ʖDx@AJAgAnί|o@/d#@U\SbW?٭p?bD1'l@x~;Dx@A$A#bAQ`*@!3'Y@U_ 3碿So"D?p2D?uKP4Dx@A8 AA6@!E*A2M1#$@#@Uc%a?'I?'?JDx@A8,`x`x2@&!8$@Ug Ԩg?e&K?ŤcD?.@؉EUDx@A(A~JA[ ̀@/k8@UCl +tD@/8?co6Y{36@2ԕACVOADAIA<6F@0^:f#t@UL''3?T?/J?QM?쓫@ +KDx@AkvoAsSAa2!1@.I'hf@U`?P?:O'aY(Dx@AANA` pq!ŀ@03l@UHD'(e?G&? Zۛs/@lDx@A_AcAWy@0,K@@UZHL5?>`?gx|3d?ǻ#h@K7Dx@AAcAg+ &u@+{@Uf ?ឩ\8,?򘘷 S꺣@zsDx@A{kAQAs3d@$MM]=@Uex)=5? +*?z4l ?xywDx@AsAHA2@ {sM39@UE9?䶧?`4t:@ uRDx@AA.AwF,&m@)f?@UgNx?:6톅=?D?\͒?-xYDx@A~AAv-9#@'r(@Ug?瑟-|?<@CUz@ u8Dx@AARiA/Y@.t/Y@U@ co?݊!?(Oef?Kn9Dx@AAA~@/Xu6@U]؁)?WA?VC jS޴@=eDx@AuA@LA+׀@%c;fk@U:9j/^J?m'?WdҿP%B9"Dx@A2{AKA p@0J3 ,qF{?ĉ@үV@ygDx@AAAhS̀@-jo dS@U=9? +1d?t| #}?1_s"Dx@A#As"An@$IYO@U;р]?͑ ?iW z@0C5ԧO[Dx@AwA}An6@$n:d\@U;)nr? +p{(2?=]{ZY/Dx@A)AA{A*@#]瘳@U<6 9?Q,h?̜0@ va@#_Dx@AAAnAa7@&V#u@U9 ?)?Q[+?d&Dx@AS~AMAj2#@%Ng\@UfvZ?"?ri;@gﲿ~KDx@ApAvnAg~A@/܎ @U]|?YD.|?9yjZ"Y1(!3Aw\Dx@AA(A{rpw@0Ml}6@UM"?aņID?i@IE gwDx@AAqhAFy܀@0YJ@UXG%!?9h4?u@$J/j>?ӱ< Dx@Ar+AxOAio6E@= @ULD/?#,6? l!@Dx@AAA1,@#>k @Ue ?/p$M?LEL@@8S&cDx@AIArA2 @%21@Ug\Es+?_戂? ֓.sz + @-Dx@A%AfA`X@.RJl@Ua`??? CđDOĸ}+Ec=Dx@AANQA16\@ !m@@UGJ)?C^?Da@,YcohNm?YJʭ@X@(K|Dx@AXAAl1@# K,@Uc) + ?]94 @!XK@htDx@AA\AF97@'hQ@U89L'A?ɲu.?c>7b?w\? +Dx@A~v$A7yAt)[*q&y@,H/@Ueo.?F-?9|@]@aƏ\VEteDx@Aj Ao6AaxI e@&5D@U9h?ۅjUS?coB'UDx@AKA_A.~Uw@*dDx@A'"AHA}@(b:K@U8ԭ? ??P}ehVhL@ A>Dx@AΙA AUpx@0mFJ@UJ@ t?8݄?LmxXȿ;˹Dx@AhAVAS@-I^!}@U=u#Ү Vp?]y@$*?ynMDx@AMA`ACy@0dI@UXl _?GwL?-5o6@!a?wÌL=Dx@AviA}Amņ[ @/smU@UB?$o?LC*T?JHLgp@!tm@0Q:tAD'AJA=0@! ^@Ua%B"?Гt߲??kZ޿ꯠ?$D9XDx@AAAtY.@/Ե@UAh)N?]CB?us@3!f冤z |?Dx@AfAlbA#@ 0>DX@U[cm@9?gu^eM@pD7L(AFALMA?@T@UMKP@L? '?xS?6,y@"1AiDx@A-ATA9@ p @UB?-?%Ea@?[_?Ÿ7۟%Q=sDx@A`A{A5V9@,_&@U;.?qZ%ht?+3H@4Dx@AAAZ€@/CI1p@UDx?O=\?VM@;`?ΎXtDx@AA>tA6@!m@U?}?3?D=٪?kMj ;Aqm@ ^'ODx@A{A5At+؀@(v%@U8}?JF ڿ? v!?T>`om :p9Dx@AAA}p @%$_@U:@@?)l'_+m*R@1ݤfRB-=kA@AEA8ʭ41@"Әlf@UbM(??b:?yuDx@A7A58A76B@A@ULk?A~==?̓O̝?:Dx@AzA`A{9+H@*'@UgSȇ?:!?Ae3 GНoՈbHDx@A|A A @!)@U?$?`v?M{3!~V}{Dx@ANA1AI#U@ V%@U_?Z0?8?Zh@ç VDx@A;AA*@ *1@U[2?Z?<|j\D@iFDx@AA6CA@Pܬ@UQº?N7? d2aG`?4sF-Dx@AJAx2Ar,@0X@UPz m@Rh?[?%auż!FV;Dx@AAsAY9!{@.|G C@U?wPy?|R?ǿk?jD`Dx@A~RAiAup@0aQ@UI-@jan?y@A>@?PGDx@A"AsZA@@UL}4?C岊?Cfa?<2)9Dx@AA >AVr6@0FV@UPb?" ۻ?eu䩂@"k{Ts%Dx@AAqAxxH@';(p@U8~p?ܜa1?ڸ@"o.9@-JnDx@AZRAՏA%S@-2a@U=[2\b+JҜ?6@ǫ8|?QMdtDx@A8MAAZh6@"*4c-@U=]?UH`m-?\&ū #r@& 2GDx@A\ EAaY AT5xQ@0K@US|$?嫢7Z? @`? qDb@elmDx@A7[AZA}d@!2Ȁ@UAoH?v@R?Ą?=Ƚ?9=-W@̢:XDx@As]AHMARUax@*0@U9Zy?R'gD4?LƶDtYX +vDx@ArAyvAiY#V@ * o@U^t^?Àc^[?֬Wۦ?ќPDx@AxAAFhЀ@x"@UHt-9~?CD?MM,0(l6@=KkDx@A)VA {A6j@ oN8@UDG-?8F?xJ ?/̻|Jf7?欧`&?Ǩ~:B7z?@!Dx@AAߋA6@!ʿ<-@U? ?ܗA0S?޳?ʞ.$@SzDx@AcAA{ayĀ@0K8eL@UZ%??KG?6'_U?SiYDx@AAA!vZ@0XJ@UE?QĖ?- +hv?\$PDx@AFA$Ajp@!sP`F@U@M @. [ C?GĿ˾G?=>Dx@AAY/A"4@U9?i Q?ɗ7|?j-Dx@AiAA]2-Y"@&$@Uh3އ?f,?w0}Pՙ毜Dx@ASAA$!@&ly}@URhM?u (I?3SawFFDx@AtAYAhV@,o +9z-@U; %<)?/02?:@!@oG?izFj>Dx@A9AyA x1x@"x @UcfX???2?ov@$"EݗWDx@AFA~A*M*)&@-Q80&@Ud?qSc?ZTN4gq?OveAMAS;AF@!# h@UAf@ ç+?%@@iZ?,4Dx@A͊AApp&@0u:\k@UIYT/?.?ߜ)D?ˎv?қPXDx@AZ_A:AyZ@0&%U@UEHb?Kə}?~_:\ʼnDx@AAWAA{\{#z@ X@U\03?誕?̾ƿkWO?T6'Dx@AAbAu"@"K@!6v@UR$>?Әzm?xG?VRflaC.A +UlSDx@AAAy7*@(<{{@U8 ,U?|?[-@{=U($eDx@A|PAAv6k@ dH@UDX 4x? z?$ )R >,$ӧXDx@Ah AmA`. @)@UhQf?AlI@?q09@223@xJ=Dx@AߢAA(V@.;8I@Ua3zz?*H?N?.:@Dx@AAAJxUQy@*m@U8%S?̙Z?cAtQ\ +lDx@AiAoA`,@)8$ Y@Uhz x$?k'n?Ŵ[<4!?,5Dx@ADAKA4h1@#4@OS@Udj[x@e ?̊ك"7Jz D%"Dx@A&A[A,!4 ##@";@Uc)6ͦ@r$.,H? Vz@Bɂ@F{u! lEDx@AzA^Ak0I6\@olo@UG-O~?Ckz?@%!UQL@6(Dx@AFA3A4 @":z A@Uc*}@j=lx?՛Y%@B@E SDx@A`x`x@"KA@U=&Z?y +`?v%]i(@Dx@AhAAݩ6@$#H@U:Xk @qN? V ^*\@c^Dx@AASzAu V@-@U;S? MX?VAjN83~S@L T]NDx@AAA;V(@,~@U;8? +1?0_ ~I@ yK)Dx@AAAnx@-tz3@UclU@V?qWD=?j/X"I\AIAO_AApy@0w)3'@UXm/?$@#??oH?Ka?JDx@AAAn)7@%~@U9'#L?Fj?e\.O?*`5Dx@AA߿Ax Q#X@ QU߹b@U^ J+Q?"N,h&Dx@AADAx8*x@,pׂ@Uf*˓bi?Gh? 3y>`Х,Dx@AA-Ar~1@/KU@U^P%۠?FBH??OeS@$ZP9}ODx@AA*A~`K@/O%@U_%#0 ?{Hmv?̮h +V@RDx@A"AoA6ʀ@#6j@U<&xa+v?n̓?g20(pՀ*@'ydDx@A%A)Au`W@ @U_w?u?EaO? NDx@AnAtA~@03FJ;@U\P!?f$ϊ?*@0u@ FDx@AA:rAπ@$6.Kz@U:D?h'r>?e!8eFODx@AA38Aܩ6@$[>@U9ߵ +?G?DŽH\^y(ֆRDx@A_AA&3#@#p@Uf?ny=?J@⠥żbDx@A4AYAwt-i"@'?`Ua<@Uho ?7LO`_? $̡" mi"hDx@AiA A Y +@.mE@U?`D? } [?33n(@ J\uDx@A>DA0A6p@ w9Qͫ@UCE)z?B? ^/M@@IWJDx@AuA{Am{Q@0S2ն'@U[ 6?<=m?;ַ@<Dx@AAAa9+Y&k@*V ً0@Uh ZAl?ɣw>[H?Nt?g4&h@`7Dx@A.lA2A+0@+H@Ug1!?Z +l?(`S؎j?AL[Dx@AIAA6@$C}Γ@U9YD?떜Ͽ?A*+@_PIӄ.Dx@A{AoApdphŀ@0dͶY @UHq9^?֪?opϷ @)8Y`; HAIASA>3#@Sm@UZh a;@ +Ư#?w/G!X*?[KDx@A\AAoz@!C,@UA:嶇@`to;?Į@"@"@ +f&Dx@At!A|8[Aj@#Jm@U<6?I5?Z(-@ $^-޿7rsDx@AFAA~5@0$)Zj@U] [S?'{1?I1>?=+?p*(Dx@AAAI6`@~@UF?ݶZ?ï %ie;ߎDx@AA +A#?@!&ҽ@U`R@2?/@@&@ + kDx@A AAr{~2U@%bͭyD@Ug|i?/f?|- ?; _JDx@AFA8A>Y8@.AИs@U?յ@C?,x;դ0Pb@+cjDx@AuFAvAh(orHl@0y@UL~H88?\)a7?ˉ;d+@ +|5P}1Dx@AuAPXA-6@",p+`V@U>+4.?@ +U?vU[g5l?>'G#FJ4+bzDx@A;ͤ&?`0QS?AF0_t$?@UhCs6 ?7/3?&-|POp}?\LcBDx@AA(A6m@ PIQ@UD6o%?U~Zhu?Æiޓ@ djDx@AA`A;@uYh@UN?u?g?3$d xsñpDx@AmAA.uZ@0)z@UE*7{T?J;)?5@,a˞a=oDx@A!4AXA@(ǹֽ@U7ƭ?@i?=qWqា@Yl%Dx@AAv/A +Zŀ@0%4@UDW??wu?: =lDx@AsAxAk@ 0ŃkE@UDq!@m$ ?[eN`@ +pC +Dx@AAA.5V1&@,ùY@U;*G?Σ?;؜ hch<@ E!އDx@AAnATy(0@0:vA@UUz@G?GN#@&8 IBتVcgDx@A&AA-i"@'K +Z@Uh?8?402WP?t!cDx@A/AAAhA7@&[78@U8YO?[?s}/@YN@Fk H9Dx@AAA/,#@(@UhHG?Y3?M$Ew~sQSʲDx@AV A]ALr%@0ʗ,e@UQI<)?RnD,?s}W e޷NfbsDx@AA$A)~0>@0I A@U]??8ݡ?Fh [7cp?3VADx@AAA-@'~O@Uh.”?S?kHkLz=Q?À‚}Dx@AcA|AUP7@)q@U8&[+?i=?¼E?s+L?c +15Dx@AAA2^@%@UhNȋ=@<&f?މey*@I?gp!Dx@AegA/ A,@(ԪI@UhqmDx@Dx@Dx@Dx@Dx@AT6`x`x6̀@#.:Es@U;t;?D@,m?`]? +LƲ@kDx@Al~KArAcuZɀ@0ҋ4@UD#UfT?̌lR??@zs?-UDx@AA}Ay +i9X@"@U Dx@ANAbA=?:@!c@U>q + Q2^Z? B ?DDx@AA At*&x@,-@Ue)¢?#q?nmzʿǐDx@A!A@AZxd@/5)@UC!UA?e 5?a6@'<#@^:dUFDx@AA1tA6@$:ꐂ@U:8B?TjW<1W??@E2G?bsԈDx@AmD AtPAcñY@/.K/@U@{@?T5? +?D( Dx@A AA)`@.y@UaH?>rr^? q?=L?ߒ:Dx@AA=AY1@.gD@U>MX?A=ZW?k +[r?C"Dx@AYA"A|CxY@0f@@USr?t_m?$.@ڢVt?]Dx@AzAAoTo@.|r@Ub? l ?H8x)@I/ Dx@AZIA_BARj$r@Rt@UO9P?I?M?mtg{}MDx@AxAtA1@"I}@UdyX`5?wm_Լ?S_b'Θ@Y 0Dx@AAApT@!6'N@U? +j?x؜R$?zE@#Gr~xDx@AqASA!*@,eW@UfbN;?ͨV|?4vVI|(fjLDx@A7AA. $@*-f>@Uhb?ϡ&85NC?>RF?ӘGM5?Ƕ~Dx@AAAZ@0~:@UC-?ݣ1&ݛ?yx<e]ĿauoUDx@A^AuA|@4 #@"L@UcpB@Gf^?r1@r u@(bDx@AA;AmLP@ a@U^b>?Pw?DG ˗?³{rDx@AAA"r1[@0O@UL.@U?/ʓ~?5iF'u\%@nODx@Aj>AoAc @$ JI@U:J?A-9p=?Ƥ6?y K1@ VmDx@AaAFA~r5@0@UP>؋@g8?/@3 +ҫ?.pDx@AnWAzPAawp1@0oe@UGN?,p?ٷk#.yLgH@%,Dx@AvnA|iAn_@.Q6@Ub +?%?[F*@x"@goDx@AuA|Aj6@!ۋ6@U@7Կx*5X?I@!:b}ODx@AASAyk7,@'d-@U7гCs?cp J?RL} vWr=ǜDx@AРA6:AS3@#Q@Ufsx?ԾTZ>Dx@AA..A|Y@.Ƶw@U?~?Q6'{?Z![ȉ6p%Dx@A3AJA1#@"Ŏ@Udr?Z"ζ?yTZ?NE Dx@AKAAP@&VƠ0@U7-?eg?1b @Ŗ@O(ϧDx@A.AbAq{Y@0P m@U\A46?UDe?|@r?g1z@͛@Dx@AʷAA,"@(z@Ui+ O?¤!?^@v?m8G?Dx@AҀAAwÀ@ex@UZ:?$ ?"K[z@DK?P*AC2Dx@AAAy߀@0񏑬@UX+X?X/?|B?ۿ6fw^@g.+Dx@AADlAL~0E@0&@U^5z?[^M?^@/@"xDx@A}AAi"?X`"KDx@A A OA4-q"@&$<@UhAHq?yK|?f@"Fc?O Dx@AsAzqAjsj$+@3&@UQ'Q?߼?VW?J\oDDx@A +A3AY1!|@.VAS @U>Eb"?U:??9 h]\@ADx@AyA.A96@# |@U;uw?8= _?KVrU$@ +Q%DDx@A AYAwZ@0:Dq@UEDr?#u#K?P ȅ@G? `2r)AK AP|ADp@@0Wd@UF;m3?2s"95? k,X*?ROܗDx@AAA7V@,uS@U:eEIc?K}?ޞXE_'?ʮγDx@AA"A #\@ #I@U]'i?<9"l?I +hA/y@ ܦoVDx@A+AAJp0@0o4z@UGCi?QM?Z=@L44Z鸬0AkDx@AOA#AuEq72@(}h@U7_H?E|&F?d1K?P?LdHXDx@AA3AV\@/;@na@Ua?TM&?ág뉫 XW@UPDx@AA]A6?@ڛH@UMq+?h?xot?߬_]]eDx@A AA@ R$@U^$B?l.?fm0?#_Df.Dx@AAA~X@/eRs@Ua%?p陀?:_@VlRDx@AiAk=:J4Dx@A~AATp1@0v@UG7p?{s??L1=ُ@ˮDx@A.ALA@#;@ Ӆ@U`CV?]]?mgì?öapP@ C{Dx@A{nAAr{Y@0V-@U\RNcW?X" '?Q@7X要NDx@AqAy|Ah1#@# ֝h@Ue% ?[R?ŶcNprLO@(I&^Dx@AAA y.@04,2@UV=?ծ&q?M?o{R?з,=o@ 6Dx@A^AU!As8y@0_@UWr?-jbM?f&sR _OI?ՀK>Dx@AA:ARr`@0R@UL^Ȥ?ׇ'M?W7ywo4$@ ە[ Dx@ALAA92{@%jϳ/@Uh|ȯ>?Ďh]S_?C#,L(Vg"8@kL_*Dx@ABAAYxy@0Xi^@UU?KbS$?Yu ^hhzDx@AgAm7A_Vz@,j5@U: 2P?G)?*?$(g@n~Dx@AA<\A ^@%l@U8Y{? 8n?h-<{`E:ORDx@AAVA. :@*Ù@Uh(2?A;?A  ?xDx@AJ&A'AM 72@'̖մ@U7I) J?:N{e^?ّ*,jG@.I Dx@AAǤ??2' S@lK@pDx@A,AAM@@' =!+@U7t(?0^B?͸kv " h?JqDx@A0A}AA9@.Or"l@UJ}?ѩݠP?M x.X?sDx@Az_AApbh@"n3'@U<\?/1Ĺ?!@y^H[Dx@AAACg6h@̀]+;@UDqDx@Dx@Dx@Dx@Dx@AA&AQ8 ʀ@&>%%@Ui,KDx@Dx@Dx@Dx@Dx@AA A{A@0n@U[)9@QO-?k @E%t}Yd?%Dx@A~AdAp +9@nN@UL ?4e[?L@Vf/KL@ OZ.gDx@A}BA[?hH?{no'QP[Dx@A{AA#3@! W@UaY?#?Ѝx@Z @ _bjyDx@AxAA41#@"NLM@UcϜR@|??N@/GWPDx@A̫AA=Zu@-eF@UdQϺ@ @n?T_Ԛ.%@rDx@AAuA~ @@0.Up9@U^9.?h^ ?o4e)RnO?{ ],Dx@AAiA!Z̀@0' ;U@UCk/?Φ ?p@0P@UH?lم?و@5Yj;مDx@AtUAzcAlc8Yz@!f@U?VD&?*߾?Bjxo@ei&0RDx@AywAA@&%r@U7_zc$?_?b9@Xq0}(_YDx@AukAoA +xq @0 Ua@UTrlDn?S$?j!K=P!;~*1Dx@Ap0AuZ}AhKh@$@U9 ?@Uh?޿/p ^?v s`r2Dx@AAlA96@$k@U9`G?+2ۣ[?.! B $Dx@A8AcAmHy@0mv>@UV٣@\?t-*<;@?(@+GvyDx@A@AAA6_@$G@@UF?g?e]@8 D@ ~E +XDx@AAtAr1\@0̝@ULy/x?Լ15?o/~@"Q@c-Dx@A5AiA;9@+@UM1?ޮ͛}?yx{esty@ozIDx@AAzA@7@% @U8"u,?P?鵰@ _6gHb&Dx@AANAfOh@\ˢ@UQzo$?mF?X~@9?on@ C-EDx@AfA\ANg-"@(j}@UiLJ?W ?զ5`&s?PG+?JR?p\Fa?f.æ7<7Dx@ALA`A9@^]j@UMaov?紵W ? FFY@6ΰ` +l6Dx@AqA>AK7@&B"zvE@U7c6??ߞ?XN@"@/b0,vqC@Dx@AA +A= 6h@)@UDEL=?l=?QWx@ 4Y2oR-cYDx@AtAzUAk: ~8M@01Tޱ@U_ri?^Љ?B}K?Dx@AFA'hA&3H@#g< @Uf+?S+ȯx?s@10 p}yK?q夒Dx@A1AEAz@Q&S@UQE?Ag?%"&?7?qDx@A3APA;@.\Wؿ@Ud?޸#?2Ta|n~? Dx@AueA{U7Al)6J@"cm@UIBnS?IA?ي}K?yH@@2Dx@Am(AsKAd(@#b9-@U:Ħ?G? +-eD(@ ]T^Dx@ALA_GAN40@!{Ge@Uc*8u@Y59~?=@/pE*L[Dx@AyAAi^Y9#@Ǻ:*@UGu?L>,)?r(_5n, ٿUkKDx@ASA\lAHє3@@#{(@Uf??_u?83]=!~ F!?umDx@A/AOAS* &@,,N@Ug++Y?;Uq?~c~i?QfQ@ q"Dx@AcAEbA1@#E?M@UfB@= B? +-@1J*@(SDx@A2AA.@@}(@UUj?^"?LWb|N#\Q5IADʔANGA96-30@#-&@UgX?/'?SehzH@tyCј+Dx@AAA#%@!fWjg@Ubܖ?µ_?{krgX3Dx@A] AaAU3"@#[b[|~@UfWB@2=f%g? "hov`ByDx@AAA~.A&b@)@UiU?UL? Ȃ,%@7S&Dx@AA-`Ap@0rg@UFxNj"?j$ ?2@ & XTUTDx@AoA 3AzZ!ʀ@0KM=r@UDk?u v?#~t0b;xDx@AڽAl.A؈3A"@#|qP@Uf:yi?8?PUy D-D?$Dx@AA{AX@/@U@)?"u?TJ?{2@5Dx@AAlDx@AZR*A`M AQma#@0ޱ@UVj7z? 4  ?O1˖jd@jDx@A}AAAjr@0ms@UN?ሃ/e?#>5o)B@P Dx@A6AHAp@0^A"@UE?Sm?Q?Ĥ 6~(@02u}@U^Q@ \ O|? #g@&d0D'Q!Dx@AuAAI##*@!@Ub7@ GH?x PqY}vec!Dx@A; `x`x+&n@+3)4@Uhd~?KsQDmq?vEi@%_B ΏhDx@AxA0Aph@TMٟ@UVpUʽkn(?ͬ?T`h@ˆP=Dx@AAګA7@%RIE@U7?Жۺ?p5gke?:TDx@AKpAAL{I@0wZx3@U\ +4Q@n]N$?TL"Zj@rQDx@A>ADAp4@01cnK@UI(?o\ l?9(Y@@-oJDx@A6AQAv!6ހ@#VUn]@U:2?v}?N@0}s@ĄDx@AAA>S@.i@U<[l>?[Lm?c)[(@{*EDx@AAA$3I"@# +@Uf?R6?l8R\:7I@ )CǑF] >WAOYAXGAD@!cZ@Ub"Yul@ ^ + +"8?2 b|L +/Dx@A{]AAkB1#@+}Qy@U[f.?B?+n|R q;? Dx@AAXA~p@0vV}v3@UF6Z?:K?B;֏?+B?ܡ`uDx@A-fAi0A~V:@,k-@.@U9?^Q?7D[Fp@9eZ3H#nDx@AvAAlC~(H@0* +^d@U^8k?ǚ)?U'I @ˈ\MFIDx@AL>A3AYЀ@.d-@U=#u?J^$k?8?s8DƶX^__Dx@AGAAt. [@)?@Ui6?h?? ?/17eW?l8Dx@AHAGA g-"@'ty@Uit?B?+|_3s@BɿY @wDx@ApYAyOAeS6Ti@,Oc,@U9d|}?gre?ы-??}V~@RgYDx@A2ZAxA+th~@?e>@UQ (տtS?YC77=,16.Dx@A>AmA|Y @.Dx@AdAEA73@'8+@U6dj{?`?rX?噔D,@hDx@AAA{pu@0uR[AA@U\M#ݴ? +?uz?VQ&?K`?h?|S@!NW@vD\Dx@AAA#Zi@0BM@UB'͊?.M;uY?YWt @(Dx@A}iAbAu $@!_J*#@U=薟?MĠ_.?oX Dx@AA AAZ@0T?Uf@UD5F?M?/D^EZE_jDx@Ab'AgtAZ({8C@!@U\k?w?$ D Ϥ5rn6Dx@A A)A8!6؀@#8@U:)K?0? D q,?IiE}Dx@AhAAh+ O@+P@UhY$צ? O ?KLtMĦ!?dF%LDx@AAOAr@.Dۚ@Uc?ɃT?àB0@!]?^rNODx@AjAYAw}!6@!ȇ~Y@U=oE?T;# ?̣lCw0@&ӆ5Dx@AElARAa n@ q!@U`=b?Ċ4C?ƀ~$Cңf@Lbu\Dx@AAcAp@0{w\͇@UFBN?q]?3EC@X  d͞Dx@ASAoA#@튫#@UYhl`@C?/z@&%2q@I$\_Dx@AAAЩ- L@(˽Zd@Uin+?J7?[OJ $J bDx@A|?΢I%Uͅa@-M3 Dx@Af"AmRA\yҀ@0US@UY^ +V ?po ?ԣod?4U'Dx@AyNA)ApXp@0lzb@UEm-d>? o8C?B-;AX@Dx@A AAc1"@#@Ufdi.?mԋ?zuJ#Q@tRDx@AhAn@A`v#@N"4@UX9?Dx@Dx@Dx@Dx@Dx@A"A7Ay6@  +D@U@_P?{B?|qX@ !$hp$;BF͂Dx@A"8AA79a6@#j@U9lu*/?IYN?>@֗@2Nی?}$VލDx@AzA'CAs +yK@0S_Q@UX{U†l@GJ?o?3ih[@*-dDx@A݋AA@9iwz4@U]'d?nC??@h|@1qDx@AAN_AnTa@,<'k@U9G4@/f?.E?a@1:Xmg!Dx@AA@2Eu!@@jDx@AeAkXA[x&@0 r@UU?? }dWG?$c+ {@$'%Dx@A/AFAJ~@07&])@U`p?iOd?Zj@"k@(8Dx@ApA!A~ q6@#zh,@U:/Z?*bF?7WeKY2<@Dx@A=AA?`xA$@0i@UQB6_?,Yn?̟%;X?rDDx@AAAt@.`@Ud*?)BA+?e=tWd?m\kDx@A@A +AYa6@":G@U;?Vt@t?JwHב?"?tiDx@Ai7*AmjAb$U|@*7)e@U7aRQ@3?SWIJ@;YƉ?<ɿL Dx@ATA~Au76@'"~F @U6E[C?V`L +?<بK|b+?>Dx@A_AAy#`@ZAAwV@I_A i@ULk?mZ?>8ݮ@-Dx@A@A^Ai@.}@UdQ銘?Ed;?]g@,}e@%ÃDx@ApRAx`Aep9@0Yг[@UG?T=֐?N@/r`U +KDx@A|YAHA}6@ ar@UA?jmi?˄wUK(FD?tBrlDx@AqABA{I@0l5@U[nR?q9y6?o?Ī@8.8Dx@A!AȟAp2@0Ŀ@UIT.?[n?ŴEc4?鈗Dx@A^AA)C41#@!ʬI@UdD?v:]v?3ګE?Bf?U}ODx@AnqAtNAf}Z@0lE@UE&i]'?޳$~?@1m@UQ=Dx@A^ADA|#@&@UW? 'pN?P@!m48ֿX˔Dx@A,bArAyCa6t@  y~@UBcx6?/dK:? =\i@@V9NPDx@AAAy7 @$Zv%@U8)RY?X"?h)+x HKDx@AHAA8Y@/R +@U>}TqV?9?dž0${3~G⚑>ODx@ATDA"A{My#5@ -4@Ua/w?0?}.\w @Dx@AAAr o@0BE*@UK?٥J :?_ +QFjeo]dDx@AA3.A{P+x u@*Y֣@Uiq3`? b?ʁ2D@~[@\YDx@ALA«A @sqd@UI^87?_^ԪK?umeNZ'yDx@AàAAU2@*&K@U7E>||?/\q>z?'?&5 Dx@AAhAxY(@.c:(c@U>_7Y?#;V?BkF + ?ܟ?PT;o?^$|Dx@AAl]A)ZhW@0ő@UBG7?[1f?qkQn@;=G$Dx@AZA&A7&@&C o@U7⍃f?p[yQ?3K +ۡۿ!2fDx@AyOAIApY@.z@U@-z<@UMF͋?1 "-?C&hL(Dx@A AA>+ g@+@%@Uh9#?Cn?ue@^@l?{Dx@AFAaAC @*1V?@U6F%?a?jkݿ03;?8:3Dx@AAeFAg+y&e@*}@Ui,? e1Q?kK3r#0]w@^@UDx@AjAAqmA` +@ v00@UBBr@@1bfDx@AU]A] AKZk@09>@UBIS@eɒƥm? @KNW[.H<Dx@AA{AuTy|@+PaG@U7jK?ܑIN?SiFF?lSQEfDx@A9AA`2w@$F@UhcI?μ?c +*񯷥Dx@A0AAFZI@0k/@UA&~?-r^uU?./=̿FR@ϹDx@AAA- \@("S=@UjT')@]%0l?~9@Bw%(khU +Dx@A#A-A{78@&@U6+?\|-v6?7~daC'^TDx@AZAbMAQ"v* @-hA@Uf_nP\C?#>$4C?ǽkL?jW?%OƋ0!Dx@AAi}A7+@&9WR:@U6ҷu?"?Ʀ>@a|!K>Dx@AbAfwA#@o}@UT2?9 +)?+] m]D7=дDx@AA A50&@!fCK@U>xb?S?\?^5izga&TܲmDx@AT}A8APj6@"˛@U;?os?o@.Ji1BD|dDx@AW`A͏A p@(/8@UV9k?œf/?\Hjw +i?¶ Dx@AoA _A#a6@ 8ݻ@U?l2B2?Э>Bh?+x5fu(@ +Dx@AhAA3A"@#?1}@Ug3G?(bRY?IQEmR?8IDx@AeG{AmAZj#@GC?@UTt?ٍ+lk? T ?cDx@A{dLAAr7@%f@U79{}?Ug?z@$+.7e?^نGDx@AmKAu:Ab4@t@!RDЋ@Uc{c:@,:?,lKW`$pDx@A3AA8L@P}+@UJK8?ٸN?+:P(Zoɉ?6"Dx@A1AA|@3X@$cm!r@Uh?݆l?V?,?]+I5,˜Dx@A)A]A39"@$ &4U@Uh#Нv@왉?cyMs@H[ї,QxFDx@A`AAz0p!@0877@UFui]1?f+L?tn^?8+Q@ !kDx@AAAn@"UgC@U:P?Ȋ"72e?!d#6_Q?%6Dx@AAEzA<S,@-2rH@U:~?'? f@MNe@ᢴ!Dx@A|XAMAq4@"TF@Ue2a:?|?v+?z 7?V8Dx@AeA=Acy7@$mS@U7 !?7v7?PAJ@jDx@A-AA||X@!D`t@U<@T&?>?v@ Ӟr0ZDx@AIA%Al7&@%`5@U6J@<1?GEf@,ɳ@\ًDx@AieAsJA]r+&j@+n@Uh?űM?Əx@7 Q>AިDx@A2A(,A4l@"F~(@Uf:Կ%3N ?<>+@^$^?@;u~Dx@AtqA{0Ak21"@"ఊ@Uf?ykxL?Id@0ug@]_~mDx@AbAhtAZ:@.0@UeplK?(|D?'< %qJ?ַ3U(pDx@AiRyArA] 6߀@#W@U:a}@tWE?My@@Pn}F^ +WDx@A~A4AzI#@*H@U[T? 5?$=B?k3kBDx@A,A}RA X@/P@U>I?ݜ9?$/8,^K~%a# {Dx@A)AA,,!@/.@Uct)^?ߟ}?ʫλo_@GW}?#ZDx@A} AIAu*Zp@0J8Yz@UC!i? @;?7z; tH @Dk8Dx@A8|AAxI7@@'nj}@U63/.?e?Y?ml˝@# RR?ܘu}Dx@A8_A<|A2 {x@0~`@U]1W`?`er? f8^?ˮDx@Az/A^ A97K@(qU@U6*@#?(U?1[Nr@K@UDx@AvAAi7@%OR/\@U7^o? ?2@'ry 1#LDx@AB\A A~L@0MA4u@U_7?44?@-@au@Dx@ADA]A.4#@"h @Ue]L5?L&e?8dԉu#dC1Dx@AۗAFAw.` @)u=@UjQ +.??MP5d`?ISmDx@AgAAj#@ 8@Ublu?0U)i?$ J +?\6LDx@A\A%2A|@K@U]Ydj@Hs?xNݰu)Sֆ~3 Dx@AUAzA"@g"u@U_STJ?gGq?vB|@Yuա)?WEjDx@AALA|47)@%`@U6П4?%?m@/du?=ƁDx@AQ.A:AOX@/P{@U>?F\ ?ʪ漃ۿ㑬*?&FDx@AAA+ |@,ʎ@Uh??7xF>ie 8>5Dx@AAv7AW4"@"aӓˬ@Ue-?K5x? ,4w?+BY٢/l-Dx@ApAv1AgZy@0X:F=@UCpm ?ˡh6?Ⱦ7v@9C@)>Dx@A_JARAa6@#78@&[@U6_޺ʷ4[?')&o ]?QDx@AvA^ArL@0t@UJb3?%κ?#Nk@ +0z۬@ +>JßDx@A3A0lA%>@)rmg@U6xT?iI?HB'u?2YH?5ADx@AeAhAv{_@0PGٖ@UY%Xʘ !?Ų`:Iץ?37 b1Dx@A1AuAX8( @&M^kZ@Uj+9ؑ?ˣf?Ǟ`4Lp@l+_Dx@AgVApAp@0*,@UJO?܊]-:?N=bZ@ԯc,?zZ2Dx@AYA\Av7H߀@ +77Z@U[Vl?Y?1˚@0E~;DC4Dx@AAdAjY @#vA@U9dSLr@ b(ze?A +@X>@#"cDx@A`x`x@1p@UX "Z[?6b ? +RN@(hsMW)빏XDx@AmAUAK<@ l@Ub?r +`? +@76%8i@& iDx@A$A_WAH}I6@"Fr@U;?>??i!:9u +Dx@AaAf_AY#*@ @Uaɑ|?w ?'!,%?Ѝ'e*?.~uėDx@AfARUA~t1Z1@0&״a@UA +Dx@Dx@Dx@Dx@Dx@ARoAWE*AIx@1h@UU{Cƴ ?4&ƭ?0?@5U!.3./0Dx@A8`AA&'Sq8@-Xβ-@U: ?( T?\%~er8 VAXDx@As̠AzAj o@/a! @Uc4/4W?=s1?mUSW?׊Wx;]xDx@A_pAA]X@/}w@U>iex?e{?7jvr^?1FD'?IhLDx@A"AAiY6@# +T@U9[E?׳-%^? +A2K߿?ȆDx@AVA[9LAN0f@$s@@U8}G?Q3\?(Df@2?~Dx@ADAATy}@+*q@U7?a,'?P)Xp d:uκ%Dx@A AkAzM#@ w2@Ub[?9 +61?ZʀY&@M?cDx@A6`AAxy#@{g@UW| ?i?}@Bw@YAaDx@AgIAnA_KU@.|@Ud6{!?X L ? +@ ?۬=ۿVGDx@AA|Ar@ h$@U`]'?6g?QYE +?sDx@AAIAr)Y@1 Ɉ#M@UMYgZ ? a? o?Nj_Dx@A+A'A @.xzJ@UeT#:'?l ? u*)g@2']HA*A5AP3I"@#Us'Y@Ug.U?r8u?l+2@4څ濊Dx@AvA~Amx0@1A@UVr?lcf?zQ~9/e?ǰ Dx@AAA 6@!kgt@U?аVĮ?:.Ă@K@`_榩a@CAOChAX.AC{@ Z@UG3kVx?K_*G?&z%?ĀDx@AAg3An@.NCۜI@Ue0:?ډz ?o +@r@͇Dx@A?AAsa4I# +@!^@Ud^?I( ?0Fba@_@P6IDx@AA UARX@/@U?0 +?WVq?@g!@0̊Dx@AA@A2@$e@UiO/?\4 *n?\koN@[9=Dx@A AV$A>G@'+Fe@U6` +?)i*V?ϴ͞& +G[?ib8~Dx@A"AA<#M@Af@U^BU?i?G:[@'0@aDx@AjAtGA]@.X\'@UeZ]?[?5Yl?mv?{}>Dx@AAKA.>r n@06˄1_@UK:?? ;?mNZ>Z,#s`Dx@A}AQ5A.X @) :@Uj- ?N9TT?chO":P?96Dx@A#AA Z1@0 5@UAA?l8?=uH@׼Dx@AAA@UwY@UIXGL? +?BDx@AA>%A4@A@!B#C@Ud-E?ƟB?ClfRN)I ([M@a燩"AD!ALPA:@!' @U*0tY?t9?@K@ADx@AsAx%Alƥq6@ /z@U?k LJ?31p~b?wo'qkM@?Dx@AmAq@8Ag6=@tYƏ*@UN%'?_^ +?4Jv-?m]NDx@AAvAhz(k@ 4*@UA G>?(]Nh?Tq7h8˖`B!*vDx@AsASAmPxA@0Px@UW/WLsW?Kz-B`?c cDx@AOAOA eTJ@,& y`@U8 I#!@ OIl@Ub;ĺ??)TV4nk@78Dx@A?A^A@x"@1TP@UU,5?եc6?čHP<%??8@{dDx@AQOAI(A{`H'@! +*@U>2x)k?(ܖ?tSI*q:(Dx@AZUAAp!@0z۪@UFNMFDx@Dx@Dx@Dx@Dx@A3AwA Q3j@$&(@UhްG4? |B?ǑS@"c`?0ODx@A@eDxb@UN^J(?A~x?p?c5jBerDx@AgD!?(^?ي?J: sW/zDx@A|d,A%^ArFx@*MgU@UWda?J-?`jpVk/M ?V?wHDx@AlwAXA|Z@+@05@U@t*a??j)q#lY?)pDx@AIAAx9@1#U~@US2ҭ?Ժ[?'1A@ "y ?.;/Dx@A=2AA#@gR@UTҶo?ڔmuc?>~ʫ +?uʼ@kDx@A?[AakA67:@& +s@U6 +o?pF?f*EnC +< Dx@Ah8AoA_6@@ؖG@UL8/?m?vLVωDx@Ap|AvuAhx97U@)cs@U5j?X?sv3xtX?PlDx@AADA 6C@9E @UKę/?rH?_??0UDx@ARAAOpI@$@U76k?7X? OI,@p#r$ @\9Dx@A:AMAz{ @0K?gBtDx@A9:A:Av=@&h+_F@U6ҷ?f?ӻPi@ Nry gDx@A}AGA_4`@!@Ud\_#?@ A +?-)u!@8;`V@!jDx@AgKAA3P@"b[6b@Ug= ?i'W%?$@8$v86mQDx@A5A8AIY@.q5v@U<8h?=K?/¡Q*.]Dx@A_AAmd@.WaU3`@UfԢ8ʓܿ?m>*bq?F@Dx@AIA$QA$@7N@UR/[?T ?N2CnXQ?'Dx@AzsAAox1@1* @UR{c- .?:/"yV?ČSI??ՉS?c֒1xDx@AAyAfsp @0!ڇV@UHJNDx@Dx@Dx@Dx@Dx@AmAqmAdp%x@18-@UW؀%?1M?x)Ǚ&@$aʹq5QDx@AA֣Ax1!@1*c @URq?v?X[9m/7?-(Dx@A{IAEAs%@L 7w@UZS?0|P?yD?t?9Jr|Dx@AjAnWAiZ@0^5J K@UB.?GB?#3& g=.P'Dx@AdAA @ /X@U`sro?ԦX?^8 l?[SpDx@AAb3Aڵi6D@)_3@UK d5i@0 ?nϞ<>l'L Dx@AA~AzʹHP@(i{w5\@U5`N?ܟ@V?!]:@@Dx@AAߝAa6]@nV?X@UFd|+?M[?k_@Oa>ɿ 0L?YDx@AvA{pAo|Y!@.ɓ;@U;mB6U?}N Yp?j`07F"g@a Dx@AhrAn?.A_u4r(X@1b6@UL_?v)e?SW@'G?Dx@A&A8Adhz@sP3@UB^Xu??(k@ + +!z@Dx@A AAz8Y6@#!~Z@U8T@=OPw?ħFH餞ґ@ޔDx@AoALAK~@/E|{@UbM?~&?R2?4?%yF@hJ>,Dx@A$ADAY @.q@U<3?[a?HN@4jHE#.JNDx@A^ Ae=AUR\@hA9@UH ;?R@?ĘL{ق?a׶Dx@A|}A"AorS@1!B3;@UMI6?{_Ҵ?_=Ͽ\LU?c?Dx@A7AaAy+&a@*"V@Ujkf??\ ? ('@5&e +@ Dx@Am%AtAcKW3Q"@"xOmJ@Ugxg ?cU?lv@[i7jbDx@At5A|%Aip)@0W˄@UF?Co:?bP@Л?HV[Dx@AA AH\4"@"/W@UfM^?yV?o1޼<j=1Dx@AAA.@*jPC,@UjvD=?QV@UTaR F,??1!$@JVX?SKDx@Ai%AEA{9@03Ϡ=@U\Dܨ?[I1?Y[%@:1?ϵABDx@AZAdAO$w/ "@(Gt@Uk#;>ڢSo?ХJH > j#Dx@AAfZA}3@$Dkn@Ui<᷹@VO(td?ª>xxmCI]@AŐ4Dx@AϽA A +bH@!x_@U=V?G|%+?̌=D ZJ,?h8Dx@AACAx[ZZ@0Sn+@UB$O?vt?=W#žy~? &Dx@AsA7}A{U,@+1ֿ@U6BB?N9?)T +jN?\U?"-Dx@AwA˫A @@" :@U:\A(?ޗhG?:@j"|zDx@AmAA48@!!@Uez-Sg?8yxS?I(@c)Z@ 8eDx@AA[rA +zPS@1!@1@UX0}v? Xyk?U;f?n9UDx@A# AA}R- @( w@Uk3>??6+w@zD@PTDx@AA2AeP@")@U;? p0@qI-?ç2-u)Dx@AAA+7C@'<ĕ +@U5S^?vM/3?F ?ChR@?Dx@A{AfArZ6N@Fr_@UHTМE?ţ?s;_ f!Dx@AuA{iAmܖp!@0GV@UFhR?=Ks?߀@$v@Dx@Ar^AuߒAd %>@)d+@U5Ba@g@G?zwڨ@KCs@ +@o p7Dx@A'AAYڀ@. +j@U<*?# 8?G#@)@!I=wSAD[ANMFA83OZ0D@09E@`@UAO UKII +?mK?PJ?lXDx@A&AA@`~@/ˈ2@UcjS?;?o?UoMB@΀8FDx@A`AyPAyNKz@.c@Ue J +3@LbB+?A-n@b@|m{.iEmDx@AoA& A+&h@,c1@UiiR?Z7?4 %PI-^Dx@AhEAokA_ضx >@13 :@UQj9p@'o@șDx@AAAF{8z@0j +@U\v(=?=Z?LD?A?]:6:Dx@AdATArS@-i;@U:Xz#PjO:?C3۰I<Dx@AAMAh-Y$8@.~Ώ@UQ?)?G@Ӟ% 1\Dx@ALAMxALi6G@75U@UK/Mv`?ՁM(Y?[uځ"^?匮Dx@Ax\A~>mApw@J @U^#f?F6 ?ȯO"@ ցRH@Dx@AAA.p @)>@Uk0P_?F?ۙGb&@ ?g MDx@ASAvEA+&a@*vYTX@Ujj?+b^?DqT?NUi@,4oDx@Ai+AofA`Kx@1*ZMxu@UT˂r?ʠZ?%f(a2,l1Dx@A`t6Ag#AWPp3h<@#*+@Uh?!'?fφ+)L@Dx@AAA(E-"Ӏ@'#-@Uk$?A?;TCN?\@ qn@эNDx@A PAʩAA~Ȁ@ @UD$V?n>?7T VX +`2h?=X +pDx@ABAJAHk@.ix%@Ue+?_ko?fQr@ 㚡{-rDx@AggAoMA^G3"׀@$sAG@Ui .E?j-?kT"i? *]Dx@AkˑAqfAcW{h@0:w@U\,?uE?w?пFw~r?-5%`yDx@A3AA M@ ?d@U@%`?a|d?8,F @{SDx@A&A3A- @'$m"@UkO vh?ƃ_Fm{?Ee(@ ?ff]TDx@A ATA/~k@0k!@Ub)W?ya?Ŀ&?{n^9@ܒ Dx@AAK1Abt@8"@UXw? -?7 +@> +?opo3?Dx@AmaAsAd*89"@&_@Uj^?L?sф @z 'm@ ^Dx@AA JASx8@17@-s@US?Dq?[>־W@؇u}QV5 +ÎA;7AE3'A/* @,sԠ5@Uh~i?S%A?]ru@%f{>F?ղC~Dx@AAAp@0(m +X@UD{?)?ǿ&@e ?㪝M3Dx@A]AfAVTH@,;@U8eL#f%?L4[?)VQ1_3D-xyDx@AVA\ALo`4@%{@U6L3+noDx@AMAMA\8` @%惌@UjEk??Gb*?xv#Dx@AjA~A@/)[@UDĢ?L@?Álw >Q@* +Dx@AAA8"Ѐ@&`rE@Uko?ް[V%?plڸi5+(L@+`lDx@At}AyAlW@^@,c@UUdh5?֤|@?'TM{?3%A}Dx@AFA,A{@0X@U]mj]?۹2x?~xϰ}?ɘ>@MlDx@AA #Af88 8@%xl:@Ujn?Njg\?]^cph@(@rDx@A`Aw +ARq#@t ɱ{@UW.O?l!?֑@Df!~ ᚫDx@AAA59y#@uv@UXk"@?9@S^Y?lUʠDx@AfEAm A\'2/ @(QP@Ukv-x??gV6q @ a4 9Dx@AhdA+-A6"@"G)@@UgB?Z*(? Nۡb5h?3Dx@A|RAArm%?@*QaK"@U59?̸? ]сU2E@"IA[@,ih$Dx@AwfAA i6v@PU +=@UB|1?/P?@%9?씟Dx@A%A&|AL8@"(v@U9yT?2?)V?UDx@AA5AgY7!@$l<@U6+?Ͼg:s?KY1y*?hNvܮDx@AAZAy+Z1@09j@U@ͣ|O?f? x@c@@\pDx@A!A\ASPh@-$d g'@U8QM?Nꓶ?g ?̯oW@?KDx@AAVrA(JA{@.n;@Ue?:h#?^DvK2}̳p \Dx@AhAqҌA]{@0z@U^~ɴ$?_t +?Y?@%(#S^.Dx@Ay5|A.hAoz7M@'Dpo|@U5:ԇx?\}5 Z?IT].v@ `G4Dx@AVbA]'AM%TK@,U7wVz@U8-Zt?0 $$b?*LYt5a-?'@ ~Dx@A3AAdgYw@1Z0@UK#/]t?ZڕU?~=95@2IrEsFDx@AA܋A +6@"h]%@U9u?N,X0? :IWrE?[kXDx@AaAMA3vހ@ь1@UI[?)5?jfkȿ7d{0'Dx@AAA6Q$D@L@UPTD?Nrc ? vQv *b[Dx@A8A!AY6@ 3!@U>WX1?ݷg?b^@E?; ]dLDx@AlIArXgAcVz7G@&&@U5Q4@?yM~Z?V  Jϲ{䚙Dx@AAaAx@14!@UUF?s}9?:Um੡k:a@ HGQiDx@AcdA#A+ǀ@, ARA@Ui  +?-Z@-?fNu@8;3M&Dx@A}AhAx@1?ʍ<@US>p?l/? ƿ-D瓭::eDx@AApA@)$ @walW@UR~?ȫ ?CC#׿Ewn?ĎSDx@AtlAuAqSgQ@1# @UI3?%b?yD +I@2?go?HDx@A`cAj<3AU8@ 9n@Uah?}IEc?%{d72@gR@![Dx@AYA;AKq @%(E[@U6X\?;k b?ƃY#?PVµ@2oDx@A?g`x`x{L@03-@U^T|?ZU?g3"Ҁ@$l~'e@UiB?F0? +$|uB/^n@: +'Dx@A'AC4Aw>pZ@'@U]2`l?_גjѲ?i;PZl?rK(TDx@AKANAP@ qe@U>l7n?;?woq0@ _@eiDx@AAA"Aw@. ! @Ufw Dx@Dx@Dx@Dx@Dx@ArAw.Agz|~@0s@U` ?=[x{?A3ĔIv ]Dx@AxnARAp @!wo@U<X"IS?Yـ" /? d /+=HDx@A?AZ{Ad7@$)@U7TH?lX?H m3x?}DtьDx@A9AAx#Yr@1E@UOF?ݻ?k x@3 +2:Dx@At7A4.A!lXi@/oú16@U=N.p?;f?qf@j(֍Dx@ARA3Az{@0$H@U]2sQ?;xw~? T֏@/o@""GDx@AmA"A{7D@&ZqTW@U5JgϠ?ಀ`C?A +ˡ?=_Dx@AgAp*"A] Aw@.8@Uf{`a?Ky?>R4Q@0%hTfz6Dx@A~L^AFAp3"@$xv9@Uj O@ f?<ÃkD'iȜDx@AxyAAhWB@ @UVZ;?{">???:>PDx@ApAuAlAx@.7',@UfYhΖ?ge&0?2x4?@+Dx@ABASAQgR@1>Wcb@UMꝃ @|T?5 ?-ވN`?/Dx@AKA7A@$J@vN@UPJ?Ƕ|z??F{=?]gAZDx@AAApB#@>@UV|ȁ?A? @ ɚ-M-A +Dx@A~AaAv3t@"svƶ@U9R꿚g;-?GhsӇx?maN,Dx@AkA>A&TY~@+Np]@U69T??AI@RwDx@ArAzAhVSP]@-"@U8R?_?)b?f`?Lׂ#Dx@A +A?Ac&7U@'lG@U4Ĕ?VT`?0[f!K18KM@VzѬFDx@AnaNAtAe(5SXm@-[Ȕ8@U8}+r?̴Vx?–K1tb@]!Dx@A4ANA*T!@,E@U7On?䮃a>?yl@!#Dx@AAAu!B@NF@UV ?x?V>C>+snODx@A0AAe@0Yj@UGl<0x8?JMQ?C9WJ~@DDx@ASA Az/6[@R@UFܫI??=+zD;Ye ?|3Dx@A[PA A׃8@@1@Uaxy?I?.˒@q2ܿ&XDx@A$A]AS5@.sW6|@U:6}?_/.?, 0?Fl3@eDx@ArtA{2Ag 7@$D@U6y?.H ?ƶض@ [ oԉ/SDx@A(A`ABy6@@T @UL6_5VDx@Dx@Dx@Dx@@1Ad`x`xB!#@$sў@UW7r>Q?d?Ggo@.+T? x-^Dx@AQbAWAIy +A@@UL9 =@F ?ۛ7@2bZ-:'Dx@A[7A^AHޢ+Ҁ@+^pn@Uj@x?R5?Ǎp0>@=7ߐ N@~Dx@AeAAv@ $,@ѩG@UQ91H?s*?T)lq@؜?tačWDx@AjجAp2AbS@.jL @U;t +??ȠN@$G-Jޜ`Dx@ANACkAs6@!<d1(@UCAJ~ e@0AY@UGX?ykk?ᮣRYd??#gDx@AgA5A~@w+@Ua?\A?gjg(@1x@$3/Dx@APAfA 9@ $&@@UQeQ=[?)I? r&p2#IYiYDx@AdAA{{9@0 @U\cD?~]?a@ .q+)':NDx@A6AAy6A@:'@UKH+h?R M ?hR UA[,@$s&&Dx@A,PAoA+̀@+G~_@Uj3@?~#?'ƆN:r ۴1 Dx@AAA@#Ҁ@~W@UU}z~'?Y_?n}oWP?Օb!Dx@AgA[AZQeq@0J@UE/WP??V?Mj#?ن'6R@XDx@AyARAp58 |@&oc c@Uk2?dž(? -/h3?3jDx@At$ArA:6@"a +Bo@U99?_cQ?C-u@-d˯?׸~٘Dx@AOccATcAG&9 @$G@Ujo]?{uц{?o$hMU{?*vVDx@A3AJART8@,m\ج@U6c?f=5?ΤKנ-0@oʸԼlDx@AA Ap6@! c@U<ހe?6M9?̢*Ð&ݏdDx@AA!7AA(7@$D;c@U6u?֝~?emj~@l2Dx@A{;A!Ao@?@# +Ai@U7ID?(?T`3u@ , ]ODx@AAcmA`ZX@0p@UAl ]R?$?&HJ:@*7NCDx@A9A^AS8@-X@U9&?Sq?΂ba,^np1@DBqDx@AAyAx@1;4A@UV ]?y͂?~=qRU6%RN^Dx@AADA~jx (@1TQ@UQ(fr0?p?ZZxTu~Ҭ]XlDx@AAA{`~@0>|XY@Ua ? +?¸@DPT?C#;A8AAA,6~b@0fj$ )1@U`ۓ?)M??! awW?/# nDx@AAA~"zX^@1AC@UY0R߀!?],?›>@SFy?IDx@A^AAx @)JbB@U4㤃L=#a?Bش} #d Z@{@0º ~Vc@U]qx,?pD_?JI`?U@DW[@rDx@AmAsAfX@/NU,@U=`%?ָ,>&~?tw(?r?*Ӌ@ G. Dx@ABA\Aa&@/J:@Ud?R?W"?? <1@'5'"?"Dx@AA|}AL7@$[-V@U6??aڬ? +^@ +y]eDx@AA\Au)7?@%Ga0@U5]qH&?S? @$#q(Dx@Aw}A~Amc5S>@.5:r`@U9܊?BQx=?,Gh4@!^?;y1~lDx@A]FAA{ZA@0qÙ@UAtH?!+(?3]=C[㙭?ȁ֙Dx@A+A_AԡY7(@$VC@U64?BgQ~?r +?A6U?_DDx@A^xAJA 1@ @- F@Ui(t?Qoq?pB?R?#sNiDx@A5AA^u{@0v)@U\bL?飼[o?dl'@('4 e:UDx@AA~A~|"e@0z)@UF.E?e @i?3[xo@#"A??X*E~}3(AGAMA?A@@U`'?KV? ˾0a)iDx@AEAOAS+&_@*Z>@UkXpE?X? !_"kDx@AmAArQ@/ߠwF@Uc? ?kͿm 'ˬYDx@AgAoyA^l~f@0\fc@Ua^h/?TxH?pqaP+˃s?;ŽqDx@AAASP`@-H9 +@U8U:?]vu$?(y׎(-@ W/NDx@AHAX?Ax @)|n@U4Բ?iȭN?}}Z?C' Dx@AARAlSBg@c@UY4I?h2S?ǩu,}/]Fݾ?BIDx@A-}AKALOzA&@10\R@UXs ?D]?ZLIo7@dDx@Am5xArtAb+Ā@+@Uj@M +?tGV@Hό?Dx@AFAM;A=ep@0T@UEdX?⭶7\2?#K7w@Sfs!!fDx@A2jAoAzA'@11Q_Í@UXmL 6?KwR?,zP %$2 +// Dx@ApF`x`x @*?V}@U5 (? /?7\A +XUPGDx@AANAx@1O,@UU_e?І~!$?`>@tE?1>vBDx@AJ ANA&X @0b@U>٠?Ʒ<$? :Ƿ&=?5 BDx@A#AA~ @)۫lD@U4뿉?b?̝]H@S~>Dx@AAcA.x@),T@Ukޑ?@-@#@~ƭ +@UTh&~g?㔖%,;f?ǁH@ʷ~@ޙ[W@Dx@AWAA6@ M _@U?2?%͠?bIrٿe'{@֜^ДDx@AAYmAzф#<@[JK>@U_x?$ +?U)¿Px:@ LsDx@AX-AbAM3@$K1@UjRg9? }c?I+_??Yn%Dx@AA{Ay@.́pt@Ufe#?IR ?-@(B _cK "AKAO'AC=@i@NĤ@U`x‚?ґn?lϘ@۷.@]0_JDx@A AA6@c3T@U@C ?ңv?oQIBeY@1abDx@AsAyAiT:@,SۮQH@U6X?@^?Sp[*F@q&Dx@AAj\A7@!#O@U:(?A}?U?Xp?߉;Dx@AAA!@#@kP@US ը?x ?OU Lă@? Q2tDx@AzAAs 6@!K!XP@U:tք?czA?s4Q@_]Dx@A~AAs4"@!nE@Ug8, e?'{-1>?Bk@p?ExDx@Ax>AAzG.&^@*:P:@Uk60?Ӕ?##?LE!<@ /CiDx@A(AAydd@v@Zo-@UQ$˭?C.rW?wyi@5ykH#@6'TxDx@AWAAF@#h/ؤ@U7BE@ +-vZ?@[zh3 ъdxDx@AxAAl4e@!Vp@Ug0+;?qAb U#慳Dx@A)AEA)Z.@*^h@Uk0?i?aTML?wb?PDx@AoA+\A8Z@0|g਴@UAl??iI@% yeAC 0AK'APAB4M@!v@UfGE?D?Ͼ@%mԿ[*\r]Dx@AAAS_)7G@&21@U49ow[?)V; ?!顜@ߏ/Dx@AdA7A7Z)@0dqFλ@U@.b?t]?0@"R@) Dx@A^Ae.AU+/"ʀ@(NM`@Ul>5?>=1W?<@Ë +v ©P0Dx@Ad1Aj-A\7 @#>@U7MSf?h(x?:#R 4&Zt`wDx@AߤAçA@#@m&@UT?@tӂ?`$`vgss(Dx@AZ+A`E2AQ\.&]@*@Ukؿ?5??O"@-ҟ.>8Dx@Aw,AuAkR8i"Ā@%q%@Uk_?hIP*{?FݛL?N62Dx@A AٜAz!BA@r8@UY'g?yߡ?)%"I?lz FDx@A +jAnAgG@1^fD@UNa8?w*La?O䪿9t?TO)Dx@AAA]-ey@0dV)@UF0yN?Up?Kr@ϗ75~Dx@A3A{AU{@0,҆W@U^okke?ykU?IJI +F#;?{](:Dx@AUA+#A9zI݀@1;S|ˍ@UX{?ۼ}U?@Dp?6i(@aKIDx@AtA@A4Z @0>@U?x4?;?y=@6Yߎ}iHDx@APA`A'@#@PO5@USqipA?{X?L?7`?kg}Dx@AnAwAd.+&c@+ @Uj +i?mwx?ln(\#0V?Z>oDx@AAoCA7 @#r@U7PL?%?ŵ7@͉Dx@AAA @|i2@UDyI?ڀs?a?gZ?i)Dx@AA%A0@'-c.@U4[=?J?ӹv*R@?2Dx@A# +AVAI +@x@ @UDM1?[Mݵ?4k4߮ߏ9Dx@Dx@Dx@Dx@Dx@A`x`x@ b-z@U<&СV?ط,?1F]?_mCq?5.uDx@ATAA{bq6C@mm@UKcV)?6}?CֆB` o#ZJ)@Dx@ArAAT`-@+N@U6(n?`DU"?x@r;MJ;Dx@AHAuAE<@$@([@U4K]^?Uj?W@UlGp~>|@1/5?I(f7m| @m1mDx@A=AOA3ƀ@#ح_@Uj5Y?s=9?M >Rǰ ֔?Dx@A .AnAiy4"@" MO@Ug9?%w???c;{Dx@A^FA[Av/A"@'&5@Ul\[d@ ++?{@5Kty#I(yDx@AVW;A^9ALD%z@/1صV@Uf mzf?ؿ?h5JDx@AAJ]AGH @%BE@U5p}:@GPO?Ĕl `@)LzbDx@AVAA5@ Gl@UdrYMZ?ʒ?pc?b?EDx@A;A ADx@1jM @US"k8?vm?i3@ iM%?&VRߣDx@A_ꚝ^MXf?qhDx@ArAAUY@ &_@UczGV@ 8dDx@ApXA~A8ei@1'Bm@UF9"?&Qm)?l9衿뿦&@%PrDx@ArAA`e@1@% @UGTa?\M?c ?P5渿51YW6Dx@AcAXAwg@1`sL@UM;=r??h뇘@F? N yDx@A!AqArx@1j0<5f @UTJb.?۫j*pE?$L}M?'~q@E9Dx@A( AAp@ @,iB@UT%o?ׄ^X?1"`ʰs@ w2/Dx@AoAzǍT=@,3;35@U6 P?9}? @3-.;jpDx@AAAG "q@-ҴC@Uh$.r? u 8?zbq?%.=2%yDx@AVANA(x@1pX@US"u?K趩{?o)v@ s@j:Dx@A|VHAi%AsM +&_@+[+ @Uki~3?Ҋ>&?l.l:@y}Dx@AqA{΁Af\ @'ʕa@U4"3r:?))k?sdE@I9Ee'R6MDx@AQAOAfX@0BMs@U=IU0?nW?s<%Z?.q?:0'EgDx@AWAʰAzY6G@#{@UJcq?ЧBf? #r"@~9HDx@AļAAX*@/y@Ue~_?؏)<[R?@Bcu;e +GDx@AAAy&pJ@Я+K@UK<`t?Rش?>ta"db(K&Dx@A^AVA@bO@0?Y*c@UA;g?gbf?h´@-~m?ؽ0fDx@A'A +A] @*Q3I@U5 o?1Ln?d+xDy7mDx@AyAzArzỳ@1.I6;Ac@UZs"?'el?X+ P <;5s ^Dx@Az'AAq}rS@.8@U9p?[?ĞD@oo\K@.VDx@AAAM6^@݁TU@UE•?? pO@%%tXzDx@AA,Ayh=8 @&xx@Ul*Dx@Dx@Dx@Dx@Dx@AA1nAD@#Ӂ"@U7ο5n?ndq/@L(\rAIRXDx@ABA~Ax @&dډ@U4xe?B?C`?&;*@ (1Dx@AuVA{Akk6Ӏ@!K"̓@U:hpZ?%l[?6~pAj@t=ebDx@AxouA}Apm;S=@.@IN@U:0@7_?ޓ@F;eM<+F;Dx@AwrA/KA"eX@0k|t@UDY~?(w(u?<>y@.Ԍl@&jfDx@AԳAzAC@t@+@UQ +?Pz-?Ê`@ݦ%@$Dx@AZA`A>4@!5g!@Ug'Fy?ڌ.?FԿHu@{+Dx@AAA`/0@(=N@@Ul|!(?N(IV?Zb˿KdU,?>MDx@A)?Ao{A +{@1kb}y@U\ +T?=e?P4NZt@ cDx@AA A},R@.8g@U: P?*=?UFjJo @kſ/Dx@AAASIO@-@U8/O?Gg? 18,m\Dx@AxAo>AlA${@1׳@U\ҁN?3e?Q(6ġ@REDx@AqA]A6@"An1@U9,g?YpL?&=j16-Dx@AAWA"H#a@l!:C`@U\M/3k@B1n?|<@0zDx@AA+A{ 4h@&tqqh3@U4D<1?Ub5?م@71(@ +tGDx@A\KA'AgTH!@+A>@U5g§?6jAyd45@/t@UH2 U??wh}@1_U@!)\3Dx@Av A{1Ao*US@.KG@U9HDx@Dx@Dx@Dx@Dx@AhAlA\H>@$-@AE{@0s@U`7%@%e?^hA652?7 Dx@AAAvbQ"n@,[4@Uj?Q?M<.?J(?@XB }$Dx@A=AyA)Q4,@mln@UI&?y]?C +#\x?%LDx@AAAd@$@rF'@UR*9?z:?%9jN @XThsDx@AuApA1# @HP@Uc q?"Q"?͛ckm@ =mDx@AuD,A{AllJ{Z@0'0@U`c U?ΑPM?>K\Ԣ?O1 +.Dx@Az]A?A@(!C`]!r@U3Ԟ?v}?$ 526@ +U!@8l_Dx@AA4AIn@.J@UgtC?O/?y 9 +oL7I*Dx@AGVA'mA6@E@Kp@UUo;'X?בȑ?&t[(Jke@ >|ЌDx@AwA@AESAU@-p]@U75?60?u˭@2M@* Dx@A~A7wA})SIP@-q@U8T?"*?%Sc@jmu<@j Dx@AdxAAG/A"@'n)Y6z@UlBc?٘M& P? /@z)@aa|Dx@AAAo@,ms@UjO5?L4$?'˿ ^Ee<8Dx@ACOAsAX>@lFl@UKd꿏4"7?y;@n( W7uDx@A_0A,A6@"al@U7n{D?X?UNTJ8Ru@ =Dx@AA+MA^Oy@0@UAX?C7?8oSMܶ?/ 8r@iG~V`Dx@A|dA+AsJ6@/qID:F@Ufr:?K|Ly?6W@^,ĿOpDx@AAcPAz3@#8B@Uj'?!|?&^}1wLvkDx@AoCAYAHB@5oN@UVtGx?.W?=@(F:G4@s- Dx@AZ=AQAB8 @%OfEW@UlKZ?1It>?Ud.ȹDx@AZA}A%eIˀ@0)/@UDd[-?I.Te?eA/f?ߕ¡-GSDx@AnAyAbPgin@1eA Π@UKӃ?Ǣ,.?t3a? *hM]Dx@AjAAR3x@# +D@Ui5?:Z?ֿJ5?nSлDx@Al AAji%A@*ES@U45Q̳?^4>1?Gw +@"8@?Dx@AݡA*A(@@痪@UTQ"8N?V@l? Ucr\?txDx@AAAslO@0Q6,@UB3d?v&}?|@zc@ "&@ T)wDx@AAAI{@1{k@U]d?E*H?Zsu@)0P^?KOqYtDx@AA`A֛@0HH"@UcL&@ $AFw?A@F) (ODx@AlAAyT%A@+/fPz@U4Ī?r?)@NtصԭADx@AsAA_Q7;@%ƨ@U5aI?]+9"?(X%?Gl )R[?[Dx@Ad|AAR@!_Z@U:?Sz?qo?䛰ּDx@AAA{T@uԄ@U`Nx?̙?&`2s@u{@b#(% Dx@AqjA?AT1@,#@U5Q?n|?b$IXgwV@"`VDx@AlA3A,<@0DVa"@Uc˭?nN)?&aH(mG?'ss(Dx@A`x`x6@!?-@U:o.?DR\?E@?m?jh Dx@ApAtϰAhm@ @1ޫ@UOlI@5?86 3y5@.nB>4jnLkACEAIA;p@0CU8̘@Uc,!?ဴ?°,o%^?ٮ#*Dx@A5sAf_A|=z@1r@UVܪD?6iwշy?w+w +?_?撴~Dx@AwASxA9"@$fw@Ukd0a?$̡S?S_([/$@8mDx@AvA}WAmI"n@,pA@Ujpe?SmTb?S'%Ί2Jrj@W^Dx@AڰAA/T1@,rLP@U5?ݗz_maLX4bfDx@AnArXAg7@#ǯq@U6MR.??|?&ǻIq&?jDx@ApAA.'@)Elj?$~@Ulf? [@'?iė[qC(Dx@AzAFAy`4@"hA|@Uh_ "? X#?lf?d|ݑ9@%?G`?Dx@A}yAYAyh1r@/d>@Ug9ধrΐ?ҺV/r@#C?|ODx@AAlApԀ@J=*@@UEO0?=G@wDISRVDx@A1AjA={V@0ve@U_r#? ?IQZI2R@Dx@AnAA"z@1z%a7@UVl T?1?u[@)N"GAKDx@Ac$A?AxljX@0!f @U=N??64T5?f@3#ް+@??2jg?1N%7*@u%hyDx@AMA*A8"@%Ś-Ҏ@Ul~١d?d?bԿwUeIaDx@AoAvAf@0I%!ka@Uch?M/'d?; Ş޿Ӄ%2?TyDx@A AzA@9#@[XB@US1?Ҕ1R?-Կ䐤T5@Dx@A۰AAj8@&˶@Um Dt?+K?ӵ3@YȚ@  +b +Dx@A2AUgA3a@!K?@U99@ +v ?1f@=x^# YZc!Dx@AkUATA_@0va 7@Ub W]?ʃ 4?MDHSd@WƔ@ QC Dx@A AFAPH!#S@{,m@U]i ?|v?ɹ@MjlDx@A^FAIA{5"@ mr@UeT;?h?Uſ ˌpj?ʃܽUDx@AyA AS0e@-kj@U8 S+?I"Z?-\|B"4k!9?sDx@AA8A)Q6;@_"@UO?ѹ. ?Ǩ^ P ؇P?c&-SDx@A;aAYA6Ȁ@!!x@U:کO@?`a@DVE ۊ&Dx@AbAjBAX@N6@UGZ.?r?R"`FY֑h@qnDx@AyAIAoX$@/yژ@U_U?@+#,Dx@AvA}lAm%C@+E>HD@U48E?ܳ?d a@oW )Dx@A]ARAp@(@UGlRK?ӧl?sE)ټׇ1@ vDx@AOAɰA#z@1qN@UX!gZ?kV?"e餬?r`$kۦCDx@ALAyAYZ!@0\<͚@U>=Fۿ֦y c[?źc?EamDx@AA Ag@!;K@U9E8Wq?r?݁QOk?LoDx@AYAASW@-N~+@U7Q?D*"?giyGީ@ؚqDx@AsAy+ Ak74"@!PklT~@UhWkZG?}е?]UUZ@΍-?厯F(Dx@AiA=Az&@ @U;vy?ο:O?n> `d@zUc Dx@AAA&4"ـ@!^ܣ@@UhΉe?s>?Lߎuep7QkDx@A[iA Aǧ6@ -O}@U=^I_?c?ٔF0mb@@"Dx@Aye +A/Any@oL(z@UBV@h;j?ʄk +?'$U ~Dx@ASZAMASSK@.cJwXzQ@U8rM?$_n?? +ݖ!Dx@A'AA7g@'Q@U3WH9?aܧ?g+@8 XDx@A[\AalAR7<@$rܦ@U4/—?c)?s 1nX5@ o$cDx@AA4A @+GH@U4hyQR?`dF.?t=@ =nοل"Dx@AA`A]O!@0<[@U@πyx?RS?n;Q@ ml>r(Dx@A AA!8@@+dҽ{@Ul7Ld?po2?>L@*?V(Dx@AƃAAWO@0lb@UA7{?@1l)1?s ȣK" @@Dx@AAAA 46@T1@UH[?ߓ?Ӄ3 c\!FISDx@AhA;mA9 @$iŹ@Ul0)SM?o? ?!}ƿBnX?GDx@AA#9A6@"x@U8d' ?t08k?_KO@p:e9-5Dx@AvEpA|Am0\4Z@-(m@UF-D[ө?L?ˊ @S+Dx@Av[A{Anb@0LA@Ub&Ub?Gɡx?*ѿ0W@<~IDx@AAvA6@!@U9p\?Fj?-UK͟VDx@AeAmAҀ@c%%@UIT?K oT?C8*/_@{BDx@AˇAFA1o@/kgn@Ug +?O?}?\;?>ztDx@ARAi]A|g@1@UMryo:s?˖[.?!}Dx@AmAA`.73@$\~]@U5\h?<$ am6@ /1Dx@A:AA0(Oy@0_@U@6~4??n`?C±WF0Wdj{wŹ Dx@AAA|4'*@!LWq@Ug{L?Bn?y%@fU@ 1iGʚ?OO?_!s1I@ VNzDx@AA/Ap7n@)1[&%@U3J~ 8?7?IsHiLܲYP?jmtDx@A3AAy':"@&k&d$@UmN`?!Ȅ? ? @ .brDx@A{AAq)7f@'\?&_@U3=8?yM|d?$?T3UqnJGDx@AbRAk\AX=gv@1[=|֭@UHq@/zE?-G@9eed#imHZDx@AWAԷA{H #T@9=\@U]>D@?-?MK=@-no;}I/Dx@A|gAvAqYg1@1vԼഓ@UJo?BRx!?Qt?9ubDx@AuBAz2Aj!7N@%u$K@U4"Jv?ek" ?hȂ@M9˒06@L2,Dx@AovAuAgÞR?@/ ry@U9a-?b@*5b?0 =8L;"Dx@AG;AF0AlO/2@(ω-$m@Um|5%/E?ފpxx?zk^p@H>+`Dx@AOAA!4@EÚ@ULHካ?.(i?,J@*h\6PczDx@AuAAAtUmp@15s%@URk?9?,JuM!8(qכ4&Dx@AAA7i@' @U3%?Nyo?2#:!@wW5Dx@A +AʄAO@0x`|@UA(?l&_?NT֟^KlZlDx@A9AXA8y"@%Mo|@UlM?Τ(:7g?5ȷ!y׾?֫ubDx@AA/A9h@#;tv@U6q@`M?ڥR@;/؈Bd?1.TDTA283A6RA+]8@'tt@U3G?<є?`q /h-?[fJM*Dx@AA%jAuB@Ϊ@U[.!?OJ?a/@@ ?633Dx@AA͋AǖQ@0lK +@UalNu?WaeW ?{[4@t?{{iDx@A:A0Arj.&Y@*,nM(@Um#Y@tbf6?Ρq@,ϣj3@;ߛ:Dx@ApHAzAdRe@1*XJ@UE' n7?% ? `iS<>@RB HDx@AAAR@/ס]%@U9#?~]1?;]|ײۍI[Dx@A[MAA`8"@&kSoG@Um75[n?/.WA?B!2\ -b.#L9tDx@AAMuAi.&[@*)|b@Ul4?^zk@UF0 +kl?QU?f.*-? TPDx@ATAA6@!{ZA@U9~s?g7Ks??? !?IDx@AAAOq~@/=@Ue ?$y5?ѕh-?}y+1b]Dx@Ap,Ax,Ae+{@1&k@U]lu?$R?Q0¦$N@p wDx@AaAAz]@%|@U4.B3?i\w?-SʟH@(uF>o~Dx@AAYA0@IN@UJLE?ӎS?Z/? +㺆j)Dx@A^ AAe.@*`+@Umz7?s?MV`@zOԇm/Ա$aDx@AnXAtAe6/@;∻@UI Fy$??0!k?nЈ +TXQM?d'Dx@ALYAAX4@!)\JBy@UgzAL?Ԋ:\?%YsـX@:3;Dx@A$A%A<@0t%2@UbS9B?g ]CI?/qI?OJ3@^Dx@A#AA) .@'o`}@U3ڙ?puJn@ JfCDx@AAQAuH @ErE@U]@ U1o?Ĵ9^)ř7=@ʀDx@AAcAA @*u&@U4o?Ńx?s@ ?j#%YDx@AuAVA9H@ +a@UcvJ!?*9?\ ?)@@ .ٖ)Dx@AAQA @*\@U3־bG?ٖpe?ͫ?͂?(SDx@A^A*AgT@+pƍI@U4ƙ? :?$CaD\!$m?Ϧ_Dx@AcA6At7)7g@'n 8@U3FxDx@Dx@Dx@Dx@Dx@Ag`x`x{@1a@U^IpE?:?=R0٩@{&!Dx@AXAvA HT1@,)s}b-@U50r?t ?0;I@U@i +{Dx@AZAŁAXS]@-6ܛC@U78@3o +d?Ζ@C'l1@-#CEd + *AL;AT!AA z1ڀ@1|]-@UX118?Vo3?en?G}@ZS >Dx@Aq0hAvStAi{4@!ClG@Uh dBȞ:L?+~_Vgk?A_T@+u AU?PṿD@c:JDx@AACAk`/@01*:@Ue?“*?Ļ1i Zb@ɺ)q1Dx@ASA%Az8f@1~l@UY(8?m?H$b@""f@+ &@UlTB?]?4 +U`9?~o ~Dx@A}A|AFX@@/{+V@U:P?LQw?B:@@%Qyy5Dx@ATAAU/I"@'>A@UmHd'?*z?3"'A'?.\Z)):AQ;A[?AEC%C@*)o @U3M9/q?2 r?/@l?.5UDx@A9AA-0@pJ`@UDp,?ނ,?@+ξɨʇC=@Dx@ATA6@d@U?>QwE?#e?W@#|1dhDx@AW0Ap4A_0@@UD +S$@S?ޒ*'c_?i`+wCլn&Dx@A^A_TACX0@/SH2h@U;΀U?w[z?-?W ?\Dx@A)AAw3@`^@UP׆?+?Gi,@%5Q`p 5F)Dx@A/A<A@,1a +a@Ul?8om?`S>+.?'Q*iDx@A7yAA8@/fUj-i@Ug|9?7%&?٢z^ @m=2o@DDx@A/AY^A4N@Ab@UF)O?kz>~?hE@G'XD[MNDx@Ar;AA=Qd@-XW3h@U6j(%?Ļf?jI?Fsj@ kVj@Dx@A>AAX1/@/.#@U;yx?.Z????p6mDx@A,]`x`xS\@-7@U7O>3?6?8ċo%@Ģ %Dx@Am}AlA ma1@1\@UP8?̵%?PNO??(]9sDx@AN AA6@ҙܑ@UFù?M?􎥿9f:@>zDx@A A(Am${@1ܳm@U^[,?( +^?K48F}\F@;-sDx@A>A:A<@ @U:]i@ADN?+<w@$/@ [+`Dx@AAAl6@˲ @U=O?e"?*mDa`BmLDx@AAEAnE@@UABˆ?\R]?n8?ӹd/?{-Dx@A!bA(A۸7-@#)l3@U5T/x??aOl\2Q Dx@An +Au]`AdNp3 4@#d7Y@Ukپg?RS?PUW\.v ?i Dx@Ae#AA~X9@/iLO@U:bAm?Nx+?%ܑr?5,x@ zEDx@AANJA|$H @0,@Ua?p\Mgc?qՋG?|n@ H?6Dx@AXAJAIOX(@0}7@U>uj@ I9?R +@AÍM ++Dx@A}Az*AvY@0y0O8@Ua-?ô/ ?Qy#$@42scg){8Dx@AzmA. Am"Oy@0Nm@U?6sE } +?%/F}@ +ODx@AiAyAd@n@@UHu?c{W?4v(l@RDx@A{AAr•4"ˀ@!*'@Uhş?ѭ1,?26?*e?ӖDx@A@A^AzpX @)t؃@U2E?dޛ$?÷ui/L?ZdDx@Av@AIBALlA@9@%ù@U3:?y,ڡ?BXUdOFrh(Dx@AT(A[FAJx7q@(@ŭ@U2Ae8?{9?̴;3@" Rh r!eYnDx@AwAAj` z@1Ws>@U\:Q?ލ4!?p@ q.",IDx@A2WAAҲ4K@zNxPH@UF6,?!(?c:) ?E#Dx@Av%A|;Am_3e1@1&h^E0@UD{ծ?I@̓ ?5k0n@}7gDx@AYwAcAMe"d@+ti@Ulvh?eTy?-+Yx=*d@Ę8Dx@AvahA}qAlp@`M]@Ub:`?巙z?5 вI@p?ԘDx@A AAqC@A!R@}:@UQiw?Ҙ[?.*@k`aOYDx@AAAmI>@1|h@UOLK\$@=8?=u@$I؁W!Dx@A44AAx/8=@(~TI@Un?@os?¬V?,&#Iz.ƛDx@AAnA7 +@"W]@U6?w?o$"zro@}{YDx@AO?AR{AITX@0@" #@UbB,?1t?m=Q:|?dR?'6Dx@A^AA>oP@1iʞY@UUM?/?ĄeG 2@`sEDx@AAA"7B@$骲@U4UJsX@ۯM{پ?"@1W)!QBDx@AnAxAb6@ a @U;?9 ?^dhuӤ'7?xDx@AyANAp@(@+NYІh@Um +Y?&`u?OF&F12Dx@AAAY76@$ mQ@U4AcDx@Dx@Dx@Dx@Dx@ADAQ)Ar#@o0ū-@UaH**@!z F?lCR,F@i@2aWV7@Dx@A$AAyVX0@/ёL86@U;i?䐱Q?4@0?"H5R`9eDx@A'MAAaR)u@/]?@Ug*?~j??:uO@Y5?XDx@A2AZA] @$ +d2\N@U4~??iI?ۓ @ i^B˿ЅRDFzDx@AG`x`x@H@ 5%)@URa?jǧH?8!x޶?}Dx@AAA4"@!_O~@Uh8Y?wCz?IJQ3?9@r@:ZDx@A6AAGq"l@,Ԛ6@UkE?eW?ku٦@'A$PDx@AAzAl@ M\i@U: pa?{?^m9 ߿PiӃDx@AYAGQA61"@"_sT@Uj*l?H)?Fj (=6@3{\Dx@As Ay_Aj)6@ :Ǚ`@U:? [2?1[< û&k{FDx@AA@ABP@hҿ@UFs2Y??z[ @߮߿bJkDx@AGAA @^j@UO 1?EIe\?m*!P@ e=p?L|Dx@Ai݇Ap1Aa @T:!@UDw^?#Xj?$P[U[uDx@A!A=A~j2e@1/&@UCO?տcA?fR6?ph% +?~lDx@AobAu.Af@','@UOYi l?ŁuX?Vv^YS" 'ßDx@AAAxX@01dn@U{?|?¦?@TKCDx@AAkAag8$@1j4`@UJ/??x0X@#Tmp?tbDx@AAA/yh@/uK@UhxA@ O p?ő"@"^g@00]Dx@A{AsA-xOq @0A@U?ߏ1?|9?1aO*@1h1අDx@Ae.A*A)q@/f[z@Ugk;?72?|O@0A@@ +85Dx@AGAA4x@bQ7s@UCC(?ט&?Æ]!q@?sf#>FdpDx@AYAAk@@?0ש@UW=Hه@4 ?1gj$~3?N@hYDx@A1A AT)t@,u-}@U4)`8Z?NȜ@U`/q?aDaM?O(?gx9@<$yarDx@A[$A4vAi"7x@(os-@U2\G?dG? QE?hU= + 7KDx@AAYAw5!"@ ƹ&Z@Uf r?݇՝?З.I~ܿ(nDx@A&AsA{L49@ h@#99@@UlI'@V? +!)|?îUo@ wD'tuQ + Dx@AAMA=3@#CH@UP$^?h:ò?fsӣDx@A AUAS6@mܾ@U=ҿ^@`)?Uݧr5!WDx@AaLAjAW)z3"@#[@UkC8?f?n]"sA@G9 *Dx@A~A}EAri6@"@U7]Jm?.^?5}޴b9eDx@A}AAAskBI#@L٫?}@UXmߒN?<2^?7=Q@83@1llDx@Aw8AAkYq@0CQ,6@Uc?@ CeՁ?@JjxF:r&Es΢fAA$oAX97@"s C>@U6y%?1Dn?I2q@*M5:@ tAcDx@Ax/A}AqZ6@@U>Ŧ ?0_.i?7Jd:̜Zƍ%Dx@AmmAsonAd޻5!"܀@ x_@UfFr?Ņ2m?~˙\@*Zn3͟Dx@A +AAx/(13@@@UL൬?0bm?ہ) ?^[i`)Dx@A"A,\Ay|H@0;@Uas^x?ye/?O@cmr?,Dx@ArAAN71@#@U4׮V?tOU?s u 2?fMDx@Ak7AoПAc 1"d@,F +@Ul!`>GB3pȿ@ۛ)lDx@A0`x`x@gVB@UNq6? ?^h|@E_eDx@A6rAFA @+Z `@U3L?6թ?+Cu(L[p-?,ERTDx@A`Jh?-zFum@ +7UK? 44SDx@AȓAAAfx3@Pd?@UFgĿҬ?ˏ,E =9&ҔI/>Dx@APA:Am @1˪@UR6ȥ?ڧİ?W(-*@ǧԨeF=Dx@AXAbMAK#8"@%| n @Umɑ?cAE>?jC:[nZJB#Dx@A&Ad$AyY@#@[@UWm?JՈr?*RNܰX,@OMJDx@AHAmA/@1vвc@U`[?Ɉ3y?t6@)ʲn Ge b@UbTRz~?_.?fz@z Dx@AA`AM!H"@h|=ɗ@U_J?HU?}9W *6@SZDx@A%AFAQ'@, @U5( + F?yuN?ʃ?ֳ@ dDx@AAqiAb @*¼~E @Umy?uOJ?;{m@!@rpDx@A]AW@AՁp@/u@Ugx(d?g9@j?Ȝ[@)E6@B޼yDx@AAA~8z(c@1&@UXD?C^ ?uI" ҋ@:W9Dx@AAA3Ȁ@@UPY˖?ϫ"/&V?=?p@8zADx@AwAjAW!7o@'a7@U2I+k?l1 ]?ǰf@\Ӣ@zR}Dx@A'3AAmzԀ@14P@UY.U?LP{?R*rG2PV(@/3Dx@Al9/Aq AdH@+@_@U]?_?)@Dڛ2?5㔎Dx@AAzAF61"@">@Uja8?iGf?h5Dx@AAvAzv3̀@J@UP5{?6{?iǗ=@C-*|@U>?uF?ǃ}dۥ@SC,Dx@AA fAP @)i眲@U2U!?Q<>?uh~@L73%,lDx@AA2AoC@@-@UV-?૯(?]FLUuDx@A AAH#4@C@U_|s?@?x3@{M@ZV8Dx@AtbA{uAky@ \Z~>@U;%K!K?ᱰA?އz@w*2lDx@A vAAHK@@U`fK?q?5?,@٥ppDx@AA\A&@p'i@ULƗ*[?v r?]3 %U?hmDx@AA_Ay+/i@'hk+@Un~_Ŀ"ž%m?G. +տ"?)߾Dx@AX~Af5A|$9x@,bǏ@UlM_R?E=@)?5sidM?R #Dx@Ak-AA{X1<@/zd@U:5)?}j?&Nfp0@XziDx@A}gA.Asu8@%DS!8@Umդ@ +ǻw?M ?%lW!!MDx@AUAA @'N `3@U23 J? +R G??S?>X8*dDx@AMA&Afz!@1]Hh@UX!VX??hm?kg@%ٹ*?+Dx@AdA^NAg97 @"m̙os@U6n?@m3? :2?F?)V0TDx@APA&YA.&X@*ܤ8@Un667? +K$?,%C(@فYDx@A{AIApH##@,k@U`rl?`Nq?2iNg?EDx@A]AfVARt4)@nq @UIYx?ᚳ|6?/0 +BC?G:r5Dx@AmAqAe)6@!`aﷷ@U8G'4?Ś??q?~{1MRD?DJ +Dx@A^uAEMA4"@!R@Ui\y%?V?Rki+?N.4Pq*Qh-vAK`AQSwAC3"@#c^}Z@Ulr ?רYG?@g<2Z@~ Dx@A,AyJAni}@07C@Uf)Ǖq"x0?>M%'${kY?ƚb4Dx@AkrXAv0A^Qu@,ެT@U5֌?a?'P?/Lv@##ňDx@AAqAXC@/ +C@U9!f?ʗ2Mt@?oɍ@7 tO\Dx@A1AwA"V@*Qf>k@Un 6?Ĥxnq?8CJ CL@(Dx@AAAzO`W@0f6}@U?G +?ځz??@$}@@)%Dx@AmAVA7|@(ׇ@U2ORi?n +$iD?ìHp?֌UDx@Am+A~A*|I4k@2C@UDti%*?uP1ϋ?'`@?c$Dx@AeAA{g@1pSw@UHA? 8P`??2Ÿ +q@]gDx@A=A$Akm1<@1Ӡ[@UOw?)7?`ߎ8?q' +:?ɜIDx@AǍAfA@#@ɮ@UVx{I@rfWgH? @2( -y8Dx@A׬AaAs47@G]@UHNr?Ijp? ~CјS[Dx@ArAAQt@-&B@U5D7?Dܑx?' 8/7N@ t HDx@A:A&/AY"Y@+4Ͳg@Ume?? +'nH?q0,@ +3f_Dx@AUAA57}@(s@U2 +J?$Tn?^Ս]Z5"̀@ K@Uh[Sn@$o+?ыkp@DJDx@AAMAl|@@@{L$@UR`U?ЩO<#'?X(I"^ZLDx@A9AvAVz)@1Cӛ@UX+9?ac?ӷ?P̻uĚDx@AEwATA|lh@">41s@U6ԤDmc?Sf?^q-TZ +O|Dx@AmAŧAz!@1ZN3@UWgr?LJT?h`@^@ +Dx@A!AAbՀ@/ڹ@UhЀ?ձ!?-L?٠( ?p4Dx@AAiA%8@"x(@U6mL?ՐX[y?m~+ @ _񥧘? awDx@AM +AY A4 @'R @U2E?\?h0?xUS@UE2Dx@AA`qA*)6@!sVB`@U8Q*?W^?c@#sQ0~{ddDx@AgAkAzXG@/uɶ@U9$?z$~R? +@jsݓ @9oDx@A,AAE8"@&Ag@UnJc?8f? Z??30S ?a>GDx@ApAzfAd4@kl;@UL1Y#R?߮Jv$[?(@b'(?͟lDx@AAtA|]mi"k@-1<@Ukƫ'?ʪC?+ݥîlF?rSDx@Aw^AovA|4@h@p @UT) Q?$k;A?'q@ͯW?A&+Dx@AA.A/ @1 +#^@UaG +?DIa?QK:Љ?3`oDx@AfuAAƽ@Dx@Ak2ApyAcC mF@105@UO *Z8?⛾Uɼ?8BCn?j?.Ǥj@GHDx@AAAeA7L@$-@U3@ֿ2?)5~\]@%\Q,ó6A.ԑA4 A'd΀@)j٬@U2V?ה?;?-}λݤQб/b[HDx@AA2A T @,kܥ@U4Ss9:?F q?gFz`Dx@A ZA6A,@(Z2 w@U1oD@ +D0?˦5@$P{.rtDx@AAXA4@`@UJkr?4>:?J=aSlrW7f?4Dx@ACAZARU@/YZX@U8TDbZ?#]΋?* l2?7J%cDx@A|=EAAs2y"@15@Uc›l ?b)K?Gw=  +@Du Dx@AA1Aub@1&@U`X]/?H?ήD)i?h|& +Dx@AAUMArlЀ@)8r@U2 +vlK??˭ZrxhB?ɽBDx@AtA3Am8<@1{*@UPx?Y+jW?Dx@AAAX1@04#@U;~P?pؔ2@?Ay >0j?2YW 8ALWAV,A?yg;@1P52@UJ?~f?ozi=RDx@A9"AvMA|`@+ @Um}&?MSX?0 n+?'<:44cRAS+A]"3AG95$@ݣ;@UfI|? ?Rʁ9@X@rDx@Ai^A1ArRW@.ߊPq@U8-pO?9f5?C8^jtDx@AXA /AuQ9@-p ͣ@U5MM?]_?AU^@;?}!LtDx@AA >A$~6@d@!ґ@Ui0E?oƯ?pjX ?hV7s1|uDx@AAA.e@1hwR@UE*D?`=C?>zF@o?Pu\Dx@A6A;A:"@&?@Unk)5r,?$?f?u8АpbbDx@A APA} 4"@ҩI@UJo>t?L=D.? @ 7mDx@AA1Ax74@#E%@U4a?S9ϖ?h / ?y +_Dx@A6AwAi5X@6@UDj?cklJ?a@^?ۖ^Dx@A AA'@*K`,@U2@լsa@U?v?B!?[S.c@<:/ADx@AytAXAooY@1ҽ44@UV/i? vt?Ёj#?ڱR@ `/XDx@Ak1Aq&Aa7@(V +L@U1c|?^m'?>@ +85RDx@AGA Az p@3;Fp@UE\?1( ;"?ը70@ȼ)_z(Dx@AAkAg9(΀@$!S7@Umӥ|?Vx9@]? 3ރ #,@qmWtDx@ApAuAi@(ғ+@U1& +'?ۨLb?=o] ޿ftDx@A A~Aht6@;./@U<@;K?CX?L,Asm߮lDx@A)AAxmF77@#c@U48M?} ?Y:{@Q;M?4eDx@A8A{JAŏ5 @ [l@Uge?dTh?H@Z2Dx@AuAHAm&@1y@UM"XM?>b?> :?gؚ@U7?3?3YKS?^YI"R@ +kXL?dg0!Dx@A@0AWAxE@097%@Ufa?wU?S`GA1&H#(@iq@U`,h?!z?ѺGA 0Pr?v*Dx@AAAip2@Ć @UcX>?ZlS?B jS!?e~@ r[ۘDx@AAOA' @)FF@U1;?/$c0%?g%T_nE@* 6/Dx@A'$A7A@. @Uk ܲ?g[C?Eb4 hDx@A5AP@AHX3@0:yz@U;x%7?-<&?F IX0Dx@AvA}oAl @'B!@U1 ?۸,ٝ?-AۊBAh^B^Dx@AxAeAE1Qv@-B#ݦ)@U55ˡ?/0_J?;]3Pۿir'Dx@AfrAlNA^q4U@]1@UF#UQ@. ?#8Dx@AStAYyeAKR7@(&]@U19?4\?8@'66@@>§uf@UP,>6?+ߒ?۴ 'r6[r},rTDx@AbAA{)4@6.k@UBgdK? +Z?M FN17@6JDx@AAOACE@&EUSq@U254c?%`f?l&~ Ɍ?WɈlDx@AAIAH@ Y@Ua{db?8lԺ]?q|?DN?\: +Dx@AyJ}A~oAq]4@93h@UA1o8?4A?@@^@vnLDx@AA=A<y6Ā@ RKK@U:Iz?o?\6p.#)@""oDx@A`70AfuAWp<Rp@.)n;.@U71?$1q萒?â:l?䓮RDx@APAAy"e@,b=L @Ulٖ41@'%̧?Z@D'a@:9F5Dx@AjAauAd: "@&o@Unt?憙8ݮ?_@htw쫿XjxUDx@A|A +AsM R@0Cu@U;4?--?iA•[t1:$߰ŠDx@AqA:3At4/@-@@UHqP??@Dk?LHűDx@AtCAzAjv@%_4[)@U2%iZ ?dI?$BaF:?0ȇ~vDx@AF1AMA)oA @1V@UU6+x?foM?#YJm&?xDx@AAWA@%Ze@U2s1I?dZf?IfT?$O8c@ Dx@AAtATp@!(Y@U6k{?F?IE?ȘJn~@ +=iC=CDx@A'AA׏1[@1cCP@Uag9?K(y?#d,}?aX`?՝Dx@AנApAhY4l@@UD4ec]?TBf?Ϟg @"GpfU?*fEDDx@AA9Aygh@DV@UO C(W+?h$?ktbc(n@8ωDx@A`AA@Բ=Ѫ@UJߊ?M3; ?r>@i(],Dx@AAPAP@*m8@UHϕ^ ??ͻ~Ld@?9Dx@Az`x`x"m@-cj@Uk'? ?@&g?QxeDx@AAAe9Q'@#{NOr@Ul4z?zyK?L/N}' |o+[*Dx@AvA~Al/t@'Fo@Uo?eT?Rac=@&*]ok@ '?ʔDx@AAA)%E@*̔ I@U2SGU?tna?`KO@#򨄬@ ӓ[Dx@A`Af_SAXgloq@1F@UV{?^p\?/j'k%?:Dx@AA&AK,Qr@-MϺ@U5"? Ss?{-9+E?Ň)Dx@AgwgAn A^N1&@*MOO@U2F?9q?Wc)@P y@^;RDx@A}5AAshSk@. 1@U6Ň-?:bYr?K@FNnn@;Kg`Dx@A{+A!Aq63@=*^Y@UOW?U4?Jf@uMDx@AoAAt)Ag%q"W@+13vB@Un,7?(?Hv@#TN,@A2+Dx@AޔAAʁ!6@!7b@U7jz֊8*uDx@A AaAa"Z@+竢@Umy?'?#\"pa%Dx@Ar~Ay_Ah۷B#N@>vG@U]$g?#J+u?9)Y 8Dx@A7A AuIM @0}z @UAiaA[:@2@&$p7$@UnͿZA?&.d$|y?\Dx@A`AR.A3)7@">@U5t!?ݕAMr?R?۬Bx gxEr+%_2kAPA[ښACy@k@&@U1% ?>cd?8mS׋v? +Dx@AA$Aa$y70@#8+g@U4AJD?H7~$[?Lòcjz0c96USLDx@AvA{AnHH@3,[@U^e?˞wqiz?7RpRB]?#kDx@AبA~ARpZ@.r@U7?#g~!2?h].j3Şp? zƜDx@A"A|Aq6Ѐ@ P@U9ݧ?O?; <$«V H~IDx@AO[AUAG5op@1A;A@OH@0+Ы?@U>s?k?YF@=[@%_ivDx@ALAA.47@9ؖ@UHƢ?H3p?ѧ+u?;w[7?}?>`Dx@AAA@0 p *@Ugz,ہ9?8k֣?h5]@%qDx@AvA|AfsBy@,mF@UZF?|7^,?w+8!}ɦl@U0GDx@Apj`x`xh@1|(@UbHv0R?Ȑws?g/0Z%@ *_Dx@AA7pA .@!eJ"@U7?䌡&v?V:ȿ"HYϺ ֑({Dx@AbAeUAzbOՉh@/V@UhZC?NQ目?!AC??Q8@Dx@AZ*OA_gWQ@QVX&Dx@ACeAÜAm,RpR@.^G@U66@Wq?Oz&@3{`@h/Dx@A*^AKA*q @'/@U1YIJ@OCqkD?1i?lئ@/e @Dx@AAAsegW@1<;@UK]?Im?8@?rr\Dx@A @AΔAF@ 9@U?%E?F 4?„gW?v ?Dx@A [A^At4@yC*B@U?~?HL?Nl_VJTcބDx@AASA`!4S@n%JB@UF0mL?/v?Bv,cHH7o`D:qDx@ApAQAXa7@"2 +@U6EDx@Dx@Dx@Dx@Dx@A A_A6Q"@!H]}@UiEeh?pdϕ?tYsc?oqDx@AlArAd/@(Tp@UoUE7?[g/?z!e]A=@f'qDx@A=AaA4@)@UJ?X.?o6.{F ÓvDx@A^A+AT @,~HT@U3}5?շ`M0?:;\@ =WD[1LDx@A/WAA5@!L@B@UUiC @6b?D~@+3qI@Fb8Dx@AXA`7AOpX@/JF @U9>?2YK?"# ?4Dx@A6AYEAyE@$?Os@U3=X?,RY+?c$K֜ J?ilDx@AjA"AGc<@.*@UjmWn`@M&?8W@J `,+[)k5'[Dx@AzAAm@1X)@US O?صD)?!Q@!(~ؿwZDx@A?A5AE@}6S@UJj\uA?EW_?Nxj!IDx@AAgA!6@ LZ@U:sQL?⃃?*?qa?\ϿعKDx@A|AA @1NC[/@U`\8i?'&?O9>j@+؉]@KgsDx@A AAQx@, ܙ@U4{|0?ڣi?s@ +Ɋ @2hkUDx@AAAm @">~@U4R!R}`?Nu@>Δ?8<3CDx@A\AA6Y"@!݀AvAosX @0,7F@U:/?֭j(?7$9>@_CBYvDx@AAAW3Q~@-Pe۴Z@U4)?Ьv?,7"_h"),?sQWDx@A`x`xg @1P@UH5?ۂR5?\6@Chr@BDx@AAA 4Z@ MZ@UEV?*YkƘ? q@Lm%:!?xY?P%8=e?Dx@AApA@<@K7@UUIi?c<`?C_ {6L@Z钰Dx@AKAA6@! !t@U7Ty?'mJQ?6$_f]K6\Dx@Az̘AAq݄zz@1TH@UZG8ԿۻP}?lj֐@ pK s?]Dx@AAAc.@0h<8Z@Ud# D-?] ?ƏK7@@W ajDx@A9AA(/@'#@Uo!?;#9\c?Ƒ&TOT@I9jDx@ABA<Ak]oH@1ʭS!@UV'{?n?*(S TCDx@A?w,7Dx@A~cAFA2GՉh@/>>@UhnL?_zc?ď_mߊ?q;?Dx@AAAvRa@/[g@U7x%;N?+mha?0cݎe>?GdDx@AAA}# "R@*G@Uo3?:>?#=n @"X6 RoAq6@ AB 4@U9]>G?輂?$!vGus Dx@A{AA(LQY@,25 @U3V-5?1A?$8J@ byEUDx@A{#A /AwHh @)̯@U_z_e?"B?_}ގ$q[Dx@AwA|^YAj fY@1K*@UH6N?!L?2hLC?Cbp?Q*Dx@AzAaAe" @*Z@U1C?MJy?Gs8 @ۑ?- Dx@AA~AmHi@&Z`@U_u3rX?Wνg?qe&ޱ8flDx@A`x`xm0@2 @UQ lX?+DCI?W +FԿK(0@C)Dx@AA|Ay7w@&b@U1Q?4c?«V@ !Ҫ?bcmKDx@A|:MAAr??d@1S]@UF7dw?.p? "@#O?O(…oTKvARAXAHVt@0BR7@Ug~0?FJ!9=?ƣW't}gx1GDx@AA4Ak4@m2mt@U@ +iP +@F w/?45A@"̃W@rODx@AmAx'Aa/by3׀@=v@UO> ??ɨb}F?6)?X@G۪PJ@ugsDx@A}{AWAu^6|@i-n@UR<@!Ҙ?"V$*2ȒeCsDx@AAAՈg@/Ų@Uhɐʹ?L~9?:ƇLjNk@Dx@A 4AФAb6RR@/v@U8է?嫽?3[8vOQ͉Dx@AyA Aq>[9@14='@Uaw?먑JF??NM ;Z ?gmC~Dx@AZCA3A&@(D@U0+b?s4?W+UaRaz{c}Dx@AAKA}`e@1I&B2,V@UB+}Iy*@'?v3+; 8kؖ@uAOAY5"AC5Հ@ >=@UhRsx?صć?-]53?:Ik.Dx@A.uAevA#T9@$lP @UnRbN@&x?c;X.VEJO7%Dx@AAmAX@!q.@U6֗h? I ?iX)K?m+Dx@A$1AzA @"0i@U42O?5mV?J+(?rD6?Dx@AxeAxAnY6@"W@UlJ?^SP?ܸl{@C.r5[JYDx@A1|A1oA1+v @Y(u@UJRW?Α?ŌV,&;:7Dx@Ax>AoTABi5I"@n_r@Ug.?32W?U +ד@:bNDx@AAfAF"^@,;Cc@Umr"@}e'?5J@5XX-M.Dx@AcAm[EAXU#B#d@))@U[֤?ˠ?U0@ e?Dx@AMKA`A>7@(v.1@U0剆o?!?嬈]?{)?2dDx@Aug*A{Al%F@,?..y@U2e⿠ +1Oz?F&N@s@I&Dx@AR*A}Ay9X @#@@UmQp$@Mxz?.|S@:*@wJ- + Dx@APAm,AEBQ#@:Ɩ@UXފk?KDg??h.@)K@ `~ڳDx@AA'FAuԉ@0l@Uej@X?/:B}?<[ٚ5<@"C@} +܂ODx@AI/A&5AB@3׷o@U\)?kI(%?d8b+r|_?507Dx@AoAApQp +@,ߐ&U@U3V?FVgOd?=-!n 9A?J@Dx@AJ%ABARQ@/@W@U8r5?V?=(&?(KDx@A^AA{6P@!QpHS@Uj?N[D`?!W*?.s9b6Dx@AuAAmZ@2eV@UQsgԠ?Ai?7A+@EFcBj#Dx@AYAkA;f^@1V@UKc/f:?XBo?o.!■?ݻDx@A$AeA!6ǀ@ )@U:1^9?~qMX?Ƞ`@gC?&d Dx@AAA~g@P@8 @USD?[p .,?t\RG{aiDx@A1OA^Ap!4K@*Rz3@UF}@ +zkئ?#&Ң"@xΠOyغIAG4AMA>CBX6@H @M@UYV'm?If>?इBɩ?q>@v2ƙDx@AxAAX@0gYn@U9:?#zu?dDɞ @$`Dx@AXAA/&T@(Q@Uo̦? ?-W@?Dx@A\AdEAR-m!L@2 A@UN m?n&?;𞤍K ?^<-Dx@A_)AhmASe q@1di @UC 7I?ԭ:?!&-: +|@ d&hDx@AAA4@iH@UBM?Tb,?\@h @>2hdXDx@AOAA|:H^@&*[@Uoi?pat?cí?⯯ @PvDx@A%AAiht@(Eld@U0ܟ? r?#E$)xݲ*1{mDx@AA;AKc3Ā@٘O@UPI??bPrKdijpu?꼘`\Dx@AmAeAzZZ@Y@UPUá?Hn?#Ϳ.Qi@ڬDx@A3A_8A)oI@2 EJ@UUB0?X`'?.w3@ THiDx@AWЅA^AN\fX@1X@UH;a?DV?(^@/Iu?@Yq@Ufo}?r?k@#\w ?pmYӐDx@AXAhA @"ww@U4l ?6/?n!@!{yJϞ@4X@ 'Dx@AVA0AFe @1S{q[@UBA ?i ?a[?I=\guDx@AAA9@%ץ@U1v"!{Dx@Dx@Dx@Dx@Dx@A`x`x"]@,LKW@Um) +?BI?[5R&h?Dx@AtA(Az@1@U[`@`?t+?2 FI?ʹ:{Dx@AU+A,AelQQ@,[6m@U3Wš?¡?p|aq-@&Hܔ*Dx@Aa*AgZAXE  7@!57K@U6"?}O_?/ +?F! N?F\ODx@AIA A O05@0tCѳ@U>v)E?WdNoQ6?(/mZ@ETU@%KqDx@AAbA3ǀ@HY_@UPt9?E9?eaYb6^@ &KDx@A{.A}AAqA!!N@4?^s@UTdE?әjM??,AN_ @8y(Dx@A6ApA"H/@'l8Ŵ@Uo( @T&?V@@v!H<ɯDx@A>AcvA.X@%șzeH@U1sV ?`xP?' `b*9 ?0JvDx@AA(AH, \ No newline at end of file diff --git a/tutorials/notebooks/astropy-coordinates/requirements.txt b/tutorials/notebooks/astropy-coordinates/requirements.txt new file mode 100644 index 000000000..24050c7b2 --- /dev/null +++ b/tutorials/notebooks/astropy-coordinates/requirements.txt @@ -0,0 +1,5 @@ +astropy +numpy +matplotlib +astroquery + diff --git a/tutorials/notebooks/color-excess/color-excess.ipynb b/tutorials/notebooks/color-excess/color-excess.ipynb index 6b3c8fc4a..de38da67f 100644 --- a/tutorials/notebooks/color-excess/color-excess.ipynb +++ b/tutorials/notebooks/color-excess/color-excess.ipynb @@ -255,7 +255,7 @@ "obsTable_spec=obsTable[obsTable['dataproduct_type']=='spectrum']\n", "obsTable_spec.pprint()\n", "\n", - "obsids = ['3000022829']\n", + "obsids = obsTable_spec[39]['obsid']\n", "dataProductsByID = Observations.get_product_list(obsids)\n", "manifest = Observations.download_products(dataProductsByID)" ] diff --git a/tutorials/notebooks/quantities/quantities.ipynb b/tutorials/notebooks/quantities/quantities.ipynb index bdf6ffc38..58fc1affe 100755 --- a/tutorials/notebooks/quantities/quantities.ipynb +++ b/tutorials/notebooks/quantities/quantities.ipynb @@ -368,7 +368,7 @@ "metadata": {}, "outputs": [], "source": [ - "np.log10(M / u.Msun)" + "np.log10(M.to_value(u.Msun))" ] }, { @@ -1077,11 +1077,6 @@ "name": "", "published": true }, - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, "language_info": { "codemirror_mode": { "name": "ipython" @@ -1089,9 +1084,11 @@ "file_extension": ".py", "mimetype": "text/x-python", "name": "python", - "nbconvert_exporter": "python" + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.6" } }, "nbformat": 4, - "nbformat_minor": 2 -} + "nbformat_minor": 4 +} \ No newline at end of file diff --git a/tutorials/notebooks/quantities/requirements.txt b/tutorials/notebooks/quantities/requirements.txt index 8feb54034..1bbb40886 100644 --- a/tutorials/notebooks/quantities/requirements.txt +++ b/tutorials/notebooks/quantities/requirements.txt @@ -1,3 +1,3 @@ numpy -matplotlib==3.0.2 +matplotlib==3.1.3 astropy diff --git a/tutorials/notebooks/wcs-celestial-coords1/celestial_coords1.ipynb b/tutorials/notebooks/wcs-celestial-coords1/celestial_coords1.ipynb new file mode 100644 index 000000000..7c1f80a36 --- /dev/null +++ b/tutorials/notebooks/wcs-celestial-coords1/celestial_coords1.ipynb @@ -0,0 +1,627 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "UrWJ4QBTJRsv" + }, + "source": [ + "# Working with Celestial Coordinates in WCS 1: Specifying, reading, and plotting\n", + "\n", + "## Authors\n", + "\n", + "Kris Stern, Kelle Cruz, Lia Corrales, David Shupe, Adrian Price-Whelan\n", + "\n", + "## Learning Goals\n", + "\n", + "1. Demonstrate two ways to build a `astropy.wcs.WCS` object\n", + "2. Show an image of the Helix nebula with RA and Dec labeled\n", + "3. Plot a scale bar on an image with WCS information\n", + "\n", + "## Keywords\n", + "\n", + "WCS, coordinates, matplotlib\n", + "\n", + "## Companion Contents\n", + "1. \"An Introduction to Modern Astrophysics\" ([Carroll & Ostlie](https://ui.adsabs.harvard.edu/abs/2006ima..book.....C/abstract))\n", + "2. [FITS WCS page at GSFC](https://fits.gsfc.nasa.gov/fits_wcs.html)\n", + "\n", + "## Summary\n", + "\n", + "This tutorial series aims to show how the content of Chapter 1 of \"An Introduction to Modern Astrophysics\" by Carroll and Ostlie can be applied to real life astrophysics research situations, using tools in the Astropy ecosystem. We will introduce two different approaches to building a `astropy.wcs.WCS` object, which contains meta-data that (in this case) defines a mapping between image coordinates and sky coordinates. The `astropy.wcs` subpackage conforms to the standards of the FITS World Coordinate System (WCS) used extensively by the astronomy research community. We will created a 2D WCS for an image of the iconic the Helix nebula (a planetary nebula) and display an image of the nebula with sky coordinates (here, equatorial, ICRS RA and Dec.) labeled. Finally, we will over-plot a scale bar on the Helix nebula image using WCS to give the reader a sense of the angular size of the image." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "ApMUBsVVJRsw" + }, + "outputs": [], + "source": [ + "from astropy.wcs import WCS\n", + "from astropy.io import fits\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "AbDZ0uWTJRsz" + }, + "source": [ + "## Section 1: Two ways to create an `astropy.wcs.WCS` object\n", + "\n", + "*World coordinates* serve to locate a measurement in some multi-dimensional parameter space. A World Coordinate System (WCS) specifies the physical, or world, coordinates to be attached to each pixel or voxel of an N-dimensional image or array. An [elaborate set of standards and conventions](https://fits.gsfc.nasa.gov/fits_wcs.html) have been developed for the Flexible Image Transport System (FITS) format ([Wells et al. 1981](https://ui.adsabs.harvard.edu/abs/1981A&AS...44..363W/abstract)). A typical WCS example is to specify the Right Ascension (RA) and Declination (Dec) on the sky associated with a given the pixel or spaxel location in a 2-dimensional celestial image ([Greisen & Calabretta 2002](https://ui.adsabs.harvard.edu/abs/2002A&A...395.1061G/abstract); [Calabretta and Greisen 2002](https://ui.adsabs.harvard.edu/abs/2002A&A...395.1077C/abstract)).\n", + "\n", + "The [`astropy.wcs` subpackage](https://docs.astropy.org/en/stable/wcs/) implements FITS standards and conventions for World Coordinate Systems. Using the `astropy.wcs.WCS` object and `matplotlib`, we can generate images of the sky that have axes labeled with coordinates such as right ascension (RA) and declination (Dec). This requires selecting the proper projections for `matplotlib` and providing an `astropy.visualization.WCSAxes` object.\n", + "\n", + "There are two main ways to initialize a `WCS` object: with a Python dictionary (or dictionary-like object, like a FITS file header) or with Python lists. In this set of examples, we will initialize an `astropy.wcs.WCS` object with two dimensions, as would be needed to represent an image.\n", + "\n", + "The WCS standard defines a set of keywords that are used to represent the world coordinate system for a given set of data (e.g., image). Here is a list of the essential WCS keywords and their uses; In each case, the integer $n$ denotes the dimensional axis (starting with 1) to which the keyword is being applied. In our examples below, we will have two image dimensions (axes), so $n$ will either be 1 or 2.\n", + "\n", + "* **CRVALn**: the coordinate value at a reference point (e.g., RA and DEC value in degrees)\n", + "* **CRPIXn**: the pixel location of the reference point (e.g., CRPIX1=1, CRPIX2=1 describes the center of a corner pixel)\n", + "* **CDELTn**: the coordinate increment at the reference point (e.g., the difference in 'RA' value from the reference pixel to its neighbor along the RA axis)\n", + "* **CTYPEn**: an 8-character string describing the axis type (e.g., 'RA---TAN' and 'DEC---TAN' describe the typical tangent-plane sky projection that astronomers use)\n", + "* **CUNITn**: a string describing the unit for each axis (if not specified, the default unit is degrees.)\n", + "* **NAXISn**: an integer defining the number of pixels in each axis\n", + "\n", + "Some good references of the WCS standard can be found [here](https://fits.gsfc.nasa.gov/fits_wcs.html)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "A_uD9fzbUlet" + }, + "source": [ + "### Method 1: Building a WCS object with a dictionary\n", + "\n", + "One way to define an Astropy `WCS` object is to construct a dictionary containing all of the essential information (i.e., specifying values for the WCS keywords listed above) that map the pixel coordinate space to the world coordinate space. \n", + "\n", + "In this example, we define two coordinate axes with:\n", + "* A Gnomonic (tangent-plane) projection, which corresponds to the RA/Dec coordinate system\n", + "* A reference location of (RA,DEC) = (337.52, -20.83), as defined by the **CRVALn** keys\n", + "* The pixel at coordinate value (1,1) as the reference location (**CRPIXn** keys)\n", + "* Units of degrees (**CUNITn = 'deg'**)\n", + "* Pixel sizes of 1 x 1 arcsec (**CDELTn = 0.002778** in degrees)\n", + "* An image size of 1024 x 1024 pixels (**NAXISn** key)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "3fRBbYmbJRs0" + }, + "outputs": [], + "source": [ + "wcs_input_dict = {\n", + " 'CTYPE1': 'RA---TAN', \n", + " 'CUNIT1': 'deg', \n", + " 'CDELT1': -0.0002777777778, \n", + " 'CRPIX1': 1, \n", + " 'CRVAL1': 337.5202808, \n", + " 'NAXIS1': 1024,\n", + " 'CTYPE2': 'DEC--TAN', \n", + " 'CUNIT2': 'deg', \n", + " 'CDELT2': 0.0002777777778, \n", + " 'CRPIX2': 1, \n", + " 'CRVAL2': -20.833333059999998, \n", + " 'NAXIS2': 1024\n", + "}\n", + "wcs_helix_dict = WCS(wcs_input_dict)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "AA4wMjYqJRs2" + }, + "source": [ + "Now let's print the `WCS` object defined with a Python dictionary to check its content: " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 194 + }, + "colab_type": "code", + "id": "_3_wPImmJRs3", + "outputId": "7629004b-9897-4c94-e681-1217fa8dcfb5" + }, + "outputs": [], + "source": [ + "wcs_helix_dict # To check output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this demonstration (and below), we assume that we know all of the relevant WCS keyword values to specify. Typically, however, we will rely on software to produce these values for us. For example, WCS information is most often included automatically in FITS files produced by software used to take images with most instruments at astronomical observatories. In cases when the WCS information is provided for us in a FITS file, it is typically included in a FITS header, which, when read into Python, acts like a dictionary object. We demonstrate this later on in this tutorial." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "YlwK4xHQU6Un" + }, + "source": [ + "### Method 2: Create an empty WCS object before assigning values\n", + "\n", + "Alternatively, we could initialize the `astropy.wcs.WCS` object, and assign the keyword values with lists corresponding to each respective axis." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "bGI2DpWdJRs6" + }, + "outputs": [], + "source": [ + "wcs_helix_list = WCS(naxis=2)\n", + "wcs_helix_list.wcs.crpix = [1, 1]\n", + "wcs_helix_list.wcs.crval = [337.5202808, -20.833333059999998]\n", + "wcs_helix_list.wcs.cunit = [\"deg\", \"deg\"]\n", + "wcs_helix_list.wcs.ctype = [\"RA---TAN\", \"DEC--TAN\"]\n", + "wcs_helix_list.wcs.cdelt = [-0.0002777777778, 0.0002777777778]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "ZjCbtC-bAtMr" + }, + "source": [ + "Let's print the `WCS` object one more time to check how our values were assigned." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 194 + }, + "colab_type": "code", + "id": "iwx8iECxJRs8", + "outputId": "d8a4818f-13b0-433f-d17d-f660e207ba4c" + }, + "outputs": [], + "source": [ + "wcs_helix_list # To check output" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "rL7-Qut6AGDM" + }, + "source": [ + "Note that when we initialize the WCS object this way, the `NAXIS` values are set to 0. To assign coordinates to our image, we will need to fix the shape of the `WCS` object array so that it matches our image. We can do this by assigning a value to the `array_shape` attribute of the `WCS` object:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "6PnSCW0_-pQs" + }, + "outputs": [], + "source": [ + "wcs_helix_list.array_shape = [1024, 1024]" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "AszZGXxNBDoz" + }, + "source": [ + "Now when we print the `WCS` object, we can see that the `NAXIS` values have been updated from the default size of 0 to 1024." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 194 + }, + "colab_type": "code", + "id": "qdg6jLCa_Sck", + "outputId": "8285ba5c-10e8-457f-bded-15c3faff782c" + }, + "outputs": [], + "source": [ + "wcs_helix_list" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "qKvxquTdEOo5" + }, + "source": [ + "## Section 2: Show an image of the Helix nebula with RA and Dec labeled\n", + "\n", + "Most of the time we can obtain the required `astropy.wcs.WCS` object from the header of the FITS file from a telescope or astronomical database. This process is described below.\n", + "\n", + "### Step 1: Read in the FITS file\n", + "\n", + "We will read the FITS file containing an image of the Helix nebula from the `astropy-data` GitHub repository using the `astropy.io.fits` subpackage. The `astropy.io.fits.open()` function will load the contents of a FITS file into Python, and it accepts either a local file path or a URL (as is demonstrated here). This image (FITS file) was originally accessed from the [Digitized Sky Survey](https://archive.eso.org/dss/dss) but is provided in the `astropy-data` repository for convenience:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "MRVbLwvcE__Y" + }, + "outputs": [], + "source": [ + "header_data_unit_list = fits.open('https://github.com/astropy/astropy-data/raw/6d92878d18e970ce6497b70a9253f65c925978bf/tutorials/celestial-coords1/tailored_dss.22.29.38.50-20.50.13_60arcmin.fits')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "tTKAPz2pJzH0" + }, + "source": [ + "FITS files are a binary file format that is mainly used by astronomers and can contain information arranged in many \"extensions,\" which contain both header information (e.g., metadata) and data (e.g., image data). We can check how many extensions there are in a FITS file, as well as view a summary of the contents in each extension, by printing the FITS object information." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 70 + }, + "colab_type": "code", + "id": "n5T4-QCzJVKa", + "outputId": "f7cb2735-6c58-44b3-a965-bd297e2bfc10" + }, + "outputs": [], + "source": [ + "header_data_unit_list.info()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "we-RjJ8PJo1w" + }, + "source": [ + "This shows us that our FITS file contains only one extension, labeled 'PRIMARY' (or extension number 0). We will copy the image data from this extension to the variable `image`, and the header data to the variable `header`:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "w4W_HiR-Ji6g" + }, + "outputs": [], + "source": [ + "image = header_data_unit_list[0].data\n", + "header = header_data_unit_list[0].header" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "EUVTT2WdKCGd" + }, + "source": [ + "We can print the FITS image header to screen so that all of its contents can be checked or utilized. Note that the WCS information for this information can be found near the bottom of the printed header, below." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 1000 + }, + "colab_type": "code", + "id": "XcerK_cZJ30W", + "outputId": "f609c0ae-0116-45c6-fd89-921a208c9434" + }, + "outputs": [], + "source": [ + "header" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "g3FyYZ-bQ5b7" + }, + "source": [ + "Please note that the *original* header (as downloaded from the DSS) violates the FITS WCS standards (because it includes both CDELTn keywords and a matrix of CD values; including deprecated PC-matrix keywords). The header has been cleaned up to conform to the existing standards." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "FzAtb_LWLyWn" + }, + "source": [ + "### Step 2: Read in the FITS image coordinate system with astropy.wcs.WCS\n", + "\n", + "Because the header contains WCS information and acts like a Python dictionary, an Astropy `WCS` object can be created directly from the FITS header." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "3Wl5J0HBLoIp" + }, + "outputs": [], + "source": [ + "wcs_helix = WCS(header)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "Akv472vTZFLp" + }, + "source": [ + "Let's print the `WCS` object to see what values were drawn from the header." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 194 + }, + "colab_type": "code", + "id": "1C7y709IZNvl", + "outputId": "6aee1d99-9f6f-4990-ef55-aa601c33ff0d" + }, + "outputs": [], + "source": [ + "wcs_helix" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "O10H9rmtQEnM" + }, + "source": [ + "### Step 3: Plot the Helix nebula with sky coordinate axes (RA and Dec)\n", + "\n", + "The image data, `image`, is a 2D array of values, and by itself contains no information about the sky coordinates of the pixels. So, if we plotted the image by itself, the plot axes would show pixel values. (We will be using the `matplotlib` library for the plotting.)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "fig = plt.figure(figsize=(10, 10))\n", + "plt.imshow(image, origin='lower', cmap='cividis')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "All of the information that maps from these pixel values to sky coordinates comes from the WCS metadata, which we loaded into the `wcs_helix` object (from the FITS file header). This `WCS` object is built so that it can be provided to `matplotlib` with the `projection` keyword, as shown in the call to `matplotlib.pyplot.subplot` below, in order to produce axes that show sky coordinate information instead of pixel values. We will also overlay a coordinate grid in ICRS equatorial coordinates by passing the sky coordinate frame name (here, \"icrs\") to the `ax.get_coords_overlay()` method." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 607 + }, + "colab_type": "code", + "id": "fnv48KDbOkxB", + "outputId": "05775d9a-6663-4b01-a3d3-0d7c9440ea64" + }, + "outputs": [], + "source": [ + "fig = plt.figure(figsize=(10, 10))\n", + "ax = plt.subplot(projection=wcs_helix)\n", + "plt.imshow(image, origin='lower', cmap='cividis', aspect='equal')\n", + "plt.xlabel(r'RA')\n", + "plt.ylabel(r'Dec')\n", + "\n", + "overlay = ax.get_coords_overlay('icrs')\n", + "overlay.grid(color='white', ls='dotted')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "DVVT552iQYn4" + }, + "source": [ + "## Exercise\n", + "\n", + "Copy the code block above and instead overlay a coordinate grid in Galactic coordinates." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 610 + }, + "colab_type": "code", + "id": "XPA-2LOLQLnB", + "outputId": "7eb7e024-b8a7-4d16-b0c3-0a1aa7c71d39" + }, + "outputs": [], + "source": [ + "fig = plt.figure(figsize=(10, 10))\n", + "ax = plt.subplot(projection=wcs_helix)\n", + "plt.imshow(image, origin='lower', cmap='cividis', aspect='equal')\n", + "plt.xlabel(r'RA')\n", + "plt.ylabel(r'Dec')\n", + "\n", + "overlay = ax.get_coords_overlay('galactic')\n", + "overlay.grid(color='white', ls='dotted')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "FexGrb2hXj85" + }, + "source": [ + "## Section 3: Plot a scale marker on an image with WCS\n", + "\n", + "To add a scale marker (i.e., a line of a particular *angular* size) to the image of the Helix nebula, we will use the matplotlib `Axes.arrow` method to draw a line. \n", + "\n", + "First, we need to decide where to place the scale bar. In the example below, we define the center of the scale marker to be at `(RA, Dec) = (337 deg, -21.2 deg)`. \n", + "\n", + "We then use the `transform` attribute of `Axes.arrow` to draw our scale bars in degrees (instead of pixel coordinates). In this case, we draw a scale marker with a length of 0.1 degrees. The arrow method inputs are `ax.arrow(x, y, dx, dy, **kwargs)`, with `x` and `y` being the `RA` and `Dec` of the beginning of the line. We use `dx=0` so that there is no horizontal component in the bar, and `dy=0.1`, which gives the length of the arrow in the vertical direction. To ensure that the arrow is drawn in the J2000 ICRS coordinate frame, we pass `ax.get_transform('icrs')` to the `transform` keyword.\n", + "\n", + "Finally, we use `matplotlib.pyplot.text` to mark the length of the scale marker." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 607 + }, + "colab_type": "code", + "id": "OkH12BWESpGp", + "outputId": "adcffc9d-85fb-45f2-e38a-11f18db320d7" + }, + "outputs": [], + "source": [ + "fig = plt.figure(figsize=(10, 10), frameon=False)\n", + "ax = plt.subplot(projection=wcs_helix)\n", + "ax.arrow(337, -21.2, 0, 0.1, \n", + " head_width=0, head_length=0, \n", + " fc='white', ec='white', width=0.003, \n", + " transform=ax.get_transform('icrs'))\n", + "plt.text(337.05, -21.18, '0.1 deg', \n", + " color='white', rotation=90, \n", + " transform=ax.get_transform('icrs'))\n", + "plt.imshow(image, origin='lower', cmap='cividis', aspect='equal')\n", + "plt.xlabel(r'RA')\n", + "plt.ylabel(r'Dec')" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "colab_type": "text", + "id": "N_CWLccBPXvu" + }, + "source": [ + "## Exercise\n", + "\n", + "Make a horizontal bar with the same length. Keep in mind that 1 hour angle = 15 degrees." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": {}, + "colab_type": "code", + "id": "bIePbBar8uFv" + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.3" + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": true, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tutorials/notebooks/wcs-celestial-coords1/requirements.txt b/tutorials/notebooks/wcs-celestial-coords1/requirements.txt new file mode 100644 index 000000000..a6623541c --- /dev/null +++ b/tutorials/notebooks/wcs-celestial-coords1/requirements.txt @@ -0,0 +1,2 @@ +astropy +matplotlib