{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# How does the SFF method work?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Vanderburg and Johnson (2014) introduced a method for \"Self Flat Fielding\" by tracking how the lightcurve changes with motion of the spacecraft:\n", "\n", "[A Technique for Extracting Highly Precise Photometry for the Two-Wheeled Kepler Mission](http://adsabs.harvard.edu/abs/2014PASP..126..948V)\n", "\n", "In this notebook we replicate the K2SFF method following the same example source, #60021426, as that in the publication. We aim to demystify the technique, which is extremely popular within the K2 community. We have focused on reproducibility, so that we achieve the same result at the publication.\n", "\n", "The Vanderburg & Johnson 2014 paper uses data from the Kepler two-wheel \"Concept Engineering Test\", predating campaign 0, and sometimes called campaign *\"eng\"* or abbreviated CET. This vestigal \"campaign\" lacks some of the standardization of later K2 campaigns--- it was much shorter, only about 9 days long, it lacks some of the standard quality flags, targets have non-traditional EPIC IDs, and other quirks." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from astropy.io import fits\n", "import pandas as pd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Retrieve the K2SFF data for ENG test source `60021426`" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we will retrieve data and inspect the mask used in the paper." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "path = 'http://archive.stsci.edu/hlsps/k2sff/cet/060000000/21426/hlsp_k2sff_k2_lightcurve_060021426-cet_kepler_v1_llc.fits'\n", "vdb_fits = fits.open(path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `BESTAPER` keyword explains which aperture was chosen as the \"best\" by Vanderburg & Johnson 2014. The FITS header for that slice contains the metadata needed to reproduce the mask." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "MASKTYPE : PRF FIT\n", "MASKINDE : 4\n", "NPIXSAP : 29.0\n" ] } ], "source": [ "keys = ['MASKTYPE', 'MASKINDE', 'NPIXSAP']\n", "_ = [print(key, ' : ', vdb_fits['BESTAPER'].header[key]) for key in keys]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We want the *exact same* mask as Vanderburg & Johnson 2014, but the publication version and MAST version differ!\n", "\n", "Publication version:\n", "![img](https://www.cfa.harvard.edu/~avanderb/k2/ep60021426image.png)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "MAST Version:\n", "![MAST Version](http://archive.stsci.edu/hlsps/k2sff/cet/060000000/21426/hlsp_k2sff_k2_lightcurve_060021426-cet_kepler_v1_image.png)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Aperture 7 should yield a bigger mask, more similar to what was used in the paper." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "53" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "VDB_J_mask = vdb_fits['PRF_APER_TBL'].data[7,:, :] == True\n", "VDB_J_mask.sum()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Save the mask for easy use in our next notebook." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "np.save('VDB_J_2014_mask.npy', VDB_J_mask)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Manually reproduce with the Vanderburg-provided diagnostic data\n", "Retrieve the Vanderburg-provided diagnostic data for the Kepler ENG testing. \n", "Uncomment the line below to retrieve the data programmatically, or manually get the linked file in a browser and save it to this directory." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "#! wget https://www.cfa.harvard.edu/~avanderb/k2/ep60021426alldiagnostics.csv" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
BJD - 2454833Raw FluxCorrected FluxX-centroidY-centroidarclengthCorrectionThrusters On
01862.5023680.9951190.99598525.13509724.6610742.3274800.9991301.0
11862.5228010.9973130.99676725.28975224.4186891.1753221.0005481.0
21862.5432350.9967130.99613625.28805224.4294061.2146271.0005800.0
31862.5636680.9969300.99627725.27521624.4484051.3066171.0006560.0
41862.5841020.9968620.99622825.25386424.4801841.4602591.0006360.0
\n", "
" ], "text/plain": [ " BJD - 2454833 Raw Flux Corrected Flux X-centroid Y-centroid \\\n", "0 1862.502368 0.995119 0.995985 25.135097 24.661074 \n", "1 1862.522801 0.997313 0.996767 25.289752 24.418689 \n", "2 1862.543235 0.996713 0.996136 25.288052 24.429406 \n", "3 1862.563668 0.996930 0.996277 25.275216 24.448405 \n", "4 1862.584102 0.996862 0.996228 25.253864 24.480184 \n", "\n", " arclength Correction Thrusters On \n", "0 2.327480 0.999130 1.0 \n", "1 1.175322 1.000548 1.0 \n", "2 1.214627 1.000580 0.0 \n", "3 1.306617 1.000656 0.0 \n", "4 1.460259 1.000636 0.0 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv('ep60021426alldiagnostics.csv',index_col=False)\n", "df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can mean-subtract the provided $x-y$ centroids, assigning them column and row identifiers, then rotate the coordinates into their major and minor axes." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "col = df[' X-centroid'].values\n", "col = col - np.mean(col)\n", "row = df[' Y-centroid'].values \n", "row = row - np.mean(row)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "def _get_eigen_vectors(centroid_col, centroid_row):\n", " '''get the eigenvalues and eigenvectors given centroid x, y positions'''\n", " centroids = np.array([centroid_col, centroid_row])\n", " eig_val, eig_vec = np.linalg.eigh(np.cov(centroids))\n", " return eig_val, eig_vec" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def _rotate(eig_vec, centroid_col, centroid_row):\n", " '''rotate the centroids into their predominant linear axis'''\n", " centroids = np.array([centroid_col, centroid_row])\n", " return np.dot(eig_vec, centroids)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "eig_val, eig_vec = _get_eigen_vectors(col, row)\n", "v1, v2 = eig_vec" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The major axis is the latter." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "platescale = 4.0 # The Kepler plate scale; has units of arcseconds / pixel" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(5, 6))\n", "plt.plot(col * platescale, row * platescale, 'ko', ms=4)\n", "plt.plot(col * platescale, row * platescale, 'ro', ms=1)\n", "plt.xticks([-2, -1,0, 1, 2])\n", "plt.yticks([-2, -1,0, 1, 2])\n", "plt.xlabel('X position [arcseconds]')\n", "plt.ylabel('Y position [arcseconds]')\n", "plt.xlim(-2, 2)\n", "plt.ylim(-2, 2)\n", "plt.plot([0, v1[0]], [0, v1[1]], color='blue', lw=3)\n", "plt.plot([0, v2[0]], [0, v2[1]], color='blue', lw=3);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Following the form of **Figure 2** of Vanderburg & Johsnon 2014." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "rot_colp, rot_rowp = _rotate(eig_vec, col, row) #units in pixels" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can rotate into the new reference frame." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(5, 6))\n", "plt.plot(rot_rowp * platescale, rot_colp * platescale, 'ko', ms=4)\n", "plt.plot(rot_rowp * platescale, rot_colp * platescale, 'ro', ms=1)\n", "plt.xticks([-2, -1,0, 1, 2])\n", "plt.yticks([-2, -1,0, 1, 2])\n", "plt.xlabel(\"X' position [arcseconds]\")\n", "plt.ylabel(\"Y' position [arcseconds]\")\n", "plt.xlim(-2, 2)\n", "plt.ylim(-2, 2)\n", "plt.plot([0, 1], [0, 0], color='blue')\n", "plt.plot([0, 0], [0, 1], color='blue');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We need to calculate the arclength using:\n", "\\begin{equation}s= \\int_{x'_0}^{x'_1}\\sqrt{1+\\left( \\frac{dy'_p}{dx'}\\right)^2} dx'\\end{equation}\n", "\n", "where $x^\\prime_0$ is the transformed $x$ coordinate of the point with the smallest $x^\\prime$ position, and $y^\\prime_p$ is the best--fit polynomial function." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Fit a $5^{th}$ order polynomial to the rotated coordinates." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "z = np.polyfit(rot_rowp, rot_colp, 5)\n", "p5 = np.poly1d(z)\n", "p5_deriv = p5.deriv()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "x0_prime = np.min(rot_rowp)\n", "xmax_prime = np.max(rot_rowp)\n", "x_dense = np.linspace(x0_prime, xmax_prime, 2000)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(rot_rowp, rot_colp, '.')\n", "plt.plot(x_dense, p5(x_dense))\n", "plt.ylabel('Position along minor axis (pixels)')\n", "plt.xlabel('Position along major axis (pixels)')\n", "plt.title('Performance of polynomial regression')\n", "plt.ylim(-0.1, 0.1);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see evidence for a [bias-variance tradeoff](https://en.wikipedia.org/wiki/Bias%E2%80%93variance_tradeoff), suggesting some modest opportunity for improvement." ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "@np.vectorize\n", "def arclength(x):\n", " '''Input x1_prime, get out arclength'''\n", " gi = x_dense " ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "aspect_ratio = plt.figaspect(1)\n", "plt.figure(figsize=aspect_ratio)\n", "plt.plot(df[' arclength'], arclength(rot_rowp)*4.0, '.')\n", "plt.xlabel('$s$ (Vanderburg & Johnson 2014)')\n", "plt.ylabel('$s$ (This work)')\n", "plt.plot([0, 4], [0, 4], 'k--');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Yes, we compute arclength correctly." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we apply a **high-pass filter** to the raw lightcurve data. We follow the original paper by using *BSplines* with 1.5 day breakpoints. You can also apply data exclusion at this stage." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "from scipy.interpolate import BSpline\n", "from scipy import interpolate" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "times, raw_fluxes = df['BJD - 2454833'].values, df[' Raw Flux'].values" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We find the weighted least square spline for a given set of knots, $t$. We supply interior knots as knots on the ends are added automatically, as stated in the `interpolate.splrep()` docstring." ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "interior_knots = np.arange(times[0]+1.5, times[0]+6, 1.5)\n", "t,c,k = interpolate.splrep(times, raw_fluxes, s=0, task=-1, t=interior_knots)\n", "bspl = BSpline(t,c,k)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(times, raw_fluxes, '.')\n", "plt.plot(times, bspl(times))\n", "plt.xlabel('$t$ (days)')\n", "plt.ylabel('Raw Flux');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The Spline fit looks good, so we can normalize the flux by the long-term trend. \n", "Plot the normalized flux versus arclength to see the position-dependent flux." ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "fluxes = raw_fluxes/bspl(times)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Mask the data by keeping only the good samples." ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "bi = df[' Thrusters On'].values == 1.0\n", "gi = df[' Thrusters On'].values == 0.0\n", "clean_fluxes = fluxes[gi]\n", "al = arclength(rot_rowp[gi]) * platescale" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "sorted_inds = np.argsort(al)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will follow the paper by interpolating **flux versus arclength position** in 15 bins of means, which is a *piecewise linear fit*." ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "knots = np.array([np.min(al)]+ \n", " [np.median(splt) for splt in np.array_split(al[sorted_inds], 15)]+\n", " [np.max(al)])" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "bin_means = np.array([clean_fluxes[sorted_inds][0]]+\n", " [np.mean(splt) for splt in np.array_split(clean_fluxes[sorted_inds], 15)]+\n", " [clean_fluxes[sorted_inds][-1]])" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "zz = np.polyfit(al, clean_fluxes,6)\n", "sff = np.poly1d(zz)\n", "al_dense = np.linspace(0, 4, 1000)\n", "interp_func = interpolate.interp1d(knots, bin_means)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(5, 6))\n", "plt.plot(arclength(rot_rowp)*4.0, fluxes, 'ko', ms=4)\n", "plt.plot(arclength(rot_rowp)*4.0, fluxes, 'o', color='#3498db', ms=3)\n", "plt.plot(arclength(rot_rowp[bi])*4.0, fluxes[bi], 'o', color='r', ms=3)\n", "plt.plot(np.sort(al), interp_func(np.sort(al)), '-', color='#e67e22')\n", "\n", "plt.xticks([0, 1,2, 3, 4])\n", "plt.minorticks_on()\n", "plt.xlabel('Arclength [arcseconds]')\n", "plt.ylabel('Relative Brightness')\n", "plt.title('EPIC 60021426, Kp =10.3')\n", "plt.xlim(0,4)\n", "plt.ylim(0.997, 1.002);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Following **Figure 4** of Vanderburg & Johnson 2014." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Apply the Self Flat Field (SFF) correction:" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "corr_fluxes = clean_fluxes / interp_func(al)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnoAAAF3CAYAAAAy3OZPAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzde5hcdZXw++/aVd1NLt3ptGSaJAhOjQiZGCPQyiUmwGQITMATaEMA0ReCxFcRzQwnMjgmZELQ4c1keMThqAcYENDhqgMqzIHIoDAoasfhIgOCb83LSIBwaZM0JOnu2rXOH3tXdVV1XXZV7bp1r8/z5CFdl12/qg7plfX7rbVEVTHGGGOMMROP0+gFGGOMMcaY2rBAzxhjjDFmgrJAzxhjjDFmgrJAzxhjjDFmgrJAzxhjjDFmgrJAzxhjjDFmgqppoCciN4nI6yLymwL3i4h8XUR+JyJPi8hRGfedLyIv+r/Oz7j9XBF5xn/8/yciB9byPRhjjDHGtCqpZR89EVkCvA3cqqrvz3P/cuDzwHLgGOBaVT1GRHqAAaAPUGA7cDQwBLwC/KmqvikiW4C9qvq3NXsTxhhjjDEtqqYZPVV9FBgs8pAVeEGgquoTQLeIzAZOAbap6qCq/gHYBpwKiP9rmogI0IUX+BljjDHGmBzRBr/+XOD3GV+/7N+W93ZVHRWRzwLPAO8ALwKfq9NajTHGGGNaSqMDPclzmxa6XUTagM8CRwJx4B+BLwFXjbuwyKeBTwNMmzbt6COOOCKsNRtjjDHG1Mz27dvfVNVZYVyr0YHey8C7M74+GG8r9mXgxJzbfwJ8EEBV/zeAiNwFXJ7vwqp6PXA9QF9fnw4MDIS7cmOMMcaYGhCRl8K6VqPbq/wA+B9+9e2xwG5VfRV4EFgmIjNFZCawzL9tB/CnIpKKck8GnmvEwo0xxhhjml1NM3oicjteZu5AEXkZ2Ai0Aajqt4AH8CpufwfsBVb79w2KyGbgV/6lrlTVQf+am4BHRWQUeAm4oJbvwRhjjDGmVdW0vUqzsK1bY4wxxrQKEdmuqn1hXKvRW7fGGGOMMaZGLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjjJmgLNAzxhhjJpF4PM4n+k7g7w4/lk/0nUA8Hm/0kkwNRRu9AGOMMcbUzxWrVnPj078kmhghEW3nolWr+c7ATxu9LFMjFugZY4wxk8j8oWGiiRGimgR3lPlDw41ekqkhC/SMMcaYSeTZzg4S0XZwR0lE2ni2s6PRSzI1ZIGeMcYYM4lcedfNXLRqNfOHhnm2s4Mr77q50UsyNWSBnjHGGDOJxGIxO5M3iVjVrTHGmEnNqlDNRGaBnjHGmEktVYX6xRd/xY1P/5IrVq2uyetMhoAyHo+zYGk/c5dfzIKl/RPyPbYa27o1xhjTEPF4nCtyzorFYrG6r6NeVagTqa1Joe/dijXraD9jE7MjbSSTLietv42unU9x3w1bG/K9NRboGWOMaZBmCXzqVYU6kdqaFPreDXYcxOxIGxKJ4jgRZi0+F030s2LNOp55+PuNXvakZIGeMcaYhmiWwKdeVagTqa1Joe9dz/BrqDsKIiAO4jgQaWOw46AGr3jyskDPGGNMQzRL4FOvKtRmbGsSj8dZsWYdgx0H0TP8WuAt1kLfu/tu2MqKNevY07uQA49fCU4EdUfpGX6t1m/FFCCq2ug11FxfX58ODAw0ehnGGGMyNMsZvckqHo+z6MINzDlrPeI4aGKEkXs3BtpiLfW9qzSANB4R2a6qfaFcywI9Y4wx5ZqMQVozvOdCa6gksFqwtJ/2/q8gkSgigrou77z0NHt//59MeXmAB7597YT/njYrC/TKZIGeMcaE6xN9J2Qfxv/Ah1u2gjSoerznUgFboTUsWNpP+xmbkEgbqsord1/F4zdtLhqozV1+MbNP/wISiZIbC2hihJF/2VBWAYVl8cITZqBnZ/SMMcaUrVkKKeqplu85FSTt6V3IgWduZrZ/ti23WrXQGjKrXVFlzlnrS1a6pgsnAEUQEa94AiASLbuAIrO1irqjLL9gLW1tbRb4NZgFesYYY8rWLIUU9VTL95wKkmZF271qVRGAccFW7hqemhJlwdJ+or0LUQBV77nilAzUUoUTgx0Hkdy7m9kr/wZH2gFQN1F2AUVWsAnsO7iPacf1pwM/a7HSGBboGWOMKVszVpDWWi3fczpIciKoKpp081ar5q7hyaldTDtjE7MibSQ1iSS97Jy6IyUDtVgslg684vE4yy9Yy76Dvd3C1Bm9cmRlCP3/SkbgZy1WGsMCPWOMMWWrV0uSZiiASKnle84MkpJJl7d+dk96okSxNcxdfjHTUw2K3QRv/PudJHbtTG+VBhWLxXj+0R9WtPbUtvNbHb3o967GmTqDnuHXmDI6irr9ANZipYEs0DPGGNO0mmV6Ri3F43FGR0fZ83Mvuzbl5QEe+fa1xGIbSz43N4vWtfOpum+Pprad5/hbtKkWLfmKM0z9WaBnjDGmaU2Goo8Va9Yx7ayvMt0PlN65eyBQ9Wq+ALHc7dYw5J7NS23RZm4Nm8axQM8YY0zTasaij7DbiFRSxJBudnz2Fqanmx0/VXFPvWreW25W0bZom4sFesYYY5pWMxZ95LYRqbaatJIihhVr1jHnrLFmx0Ta04/LWp8qiy7cULKnXqXvrVRW0XrrNZ4FesYYY5pWvYo+ypGVgRNhT+9C4vF4xQFMZpuToEUMgx0HMVu83neqimoy/bhKeurlfW+UrpTN3XZOZRUz7w8zKDbls0DPGGOMKUPP8Gskky6OEwFxOPD4lRUFMFnZLuCx69YV3HrNt4Z0FjA9CWPr2H2qZfXUy3vdANuwpQLDcgNHEz6nVhcWkZtE5HUR+U2B+0VEvi4ivxORp0XkqIz7zheRF/1f52fc3i4i14vICyLyvIh8rFbrN8YY01zi8TgLlvYzd/nFLFjaTzweD/y8T/SdwN8dfiyf6Dsh8PMKue+Grbz1s3vSgZQ4kYoCmHS26/Qv0H7GJlasWQeMFTHseOAbPPPw9/NmCu+7YSsj927k1R99nZHvfzlra/a+G7byyt1XoW4Cdd1APfXyXvfejSUrZVOBofda4wPDUveb2qtlRu/bwHXArQXu/wvgMP/XMcA3gWNEpAfYCPQBCmwXkR+o6h+ALwOvq+r7RMQBemq4fmOMmZCaqTddOSrdBgy7RUssFqNr51Nooh/8tVQSwJTKdhU731asojUWi/H4TZsram1SbqVs7rZz7uuUut/UXs0CPVV9VETeU+QhK4Bb1Zuk/ISIdIvIbOBEYJuqDgKIyDbgVOB24ELgCP/6SeDNWq3fGGMmqlbtTVfp2bhatGgJI4AptU1azfm2erU2KfU61mKl8Wq2dRvAXOD3GV+/7N+W93YR6fa/3iwivxaRu0Wkt9DFReTTIjIgIgNvvPFG2Gs3xpiWlRn4RFuoN13qbJyqZp2NKyXVoiXhRIq2aClnazgVwDx23TpGR0c5af1tHPrxTRyx5KOBt4ZLbZMOdhyUrr6VSFtLn2+rdNvdVK+RxRiS5zYtcnsUOBh4XFUvFZFLga3AJ/NdXFWvB64H6Ovr01BWbIwxE0Az9qYL4r4btnLS+tuYtfhcxHEg4Nm4oC1aKsmgrVizjqmrrmZ6tB0ATQQvzCiV7ZpI/ems+rZxGhnovQy8O+Prg4FX/NtPzLn9J8BbwF7gX/zb7wY+VetFGmNMKwly/q4Ze9MVk3lWLbl3N5oYLutsXNAWLZVUiHrP8XvZAUSioWXeJtL5Nqu+bZxGBno/AC4RkTvwijF2q+qrIvIg8FURmek/bhnwJVVVEfkhXhD4b8BS4D8bsG5jjGlaQc7fNWNvumJys0GvfO9qnKkzQg9+Ksmg9Qy/RtJN4IjjPy8R6HlBGgk38nxb2I2OJ1J2stXULNATkdvxgrIDReRlvEraNgBV/RbwALAc+B1epm61f9+giGwGfuVf6spUYQbw18BtIvI14I3Uc4wxxnjqPRu2HpMPcrNBztQZ7HjgG6G+BlSWQbvvhq0sv2At+w7uA4LPmw26ldmoyRJhb7VOpOxkq6ll1e25Je5X4HMF7rsJuCnP7S8BS0JZoDHGTEDlnr+rNpAIIyAotYZ6ZYMqyaDFYjGef/SHZT0nHo+zp3chs6Id3llDCm9lNupsW9hbrVZ92zg2GcMYYyaQcs/fVRtIhBEQlFrDRMsGrVizjneduRlS48uSbsHgtVFn22yrdeKwQM8YY1pIqWKLcs/fVRtIhBEQlFrDRMsGDXYcxGwn4s2pTbq8+bN7eKRA8Frt51tpxnaiBdeTmQV6xhjTQsJudlxtIDHujNroaKAmxmGuoVkEDapy32/XzqeIxTbmvWa1AVelGdtaB9eNOns4GVmgZ4wxLSTsYotqA4lYLEZbWxvTjutHIm2o21/29u9EyR4FDarKeb+xWCzr8SvWrCsrKGrWtibWV69+LNAzxpgWElaz46yMCvDYdesqzqhUG0xMlK3ZoJ9Due+3mqCombKlmX/mor0LmdWEAehEZIGeMca0kLCaHYeZUWmmYKKRavU55AaQw/NPZ8HS/kCZvWqypWFvr2b+mUsmXTTpApP7z0w9WKBnjDEtJKxmx2Fu6U2UrVeoLrip1eeQGUDiROiatwg97EOBgvNqsqVhb69m/plzgDf+/U4Su3a2/J+ZZmeBnjHGNIkg48vCkpt9Su7dzdzlF1eUuQlj67VZDudXE9zUags6FUAOzz+drnmLECcCkbbAwXmln201mcR8Mv/MJf1snhVi1J54fYsntr6+Ph0YGGj0MowxpqhP9J2QXVH7gQ/XbFRZ7vzYOR+7HPG31N762T107Xyqrj+AFyztp/2MTX5Bxygj925syLm9ucsvZvbpX0AiUdRN8OqPvl6TKRyVqPQzCuN5OBHQJJoYqfh7k/ozt6d3IQcevxJxIg39XjczEdmuqn1hXMsJ4yLGGGOql1lRG63x+LJU9mnHA9/AmToDSW2pRduZtfhc2s/YxIo16wJfLx6Ps2BpP3OXX8yCpf3E4/Gy1jPYcVB6DVIiW5V6rTnLP8vsE8+r+DXzSWWd1E003dmx+27Yysi9G3n1R19n5N6Ngbc7y/ls873enud/BppEnAgSbWdP78KKPuvUn7nErp3etcpcj6mMbd0aY0yTCKuiFsrbrktvqYmAON5YrjJ/AFd7nqucQobUa83JyTSF0aKj2nN2tdyCrnRruNIikdTrLVjaT/J9x+CIA+Jw4PErrXinhVigZ4xpavU8t9ZoYVXUQk7gpcqiCzfw+E2b8352qeAmtaWGv6VWzg/gaos7ygmwMl9LVcs+s1ZMtefsmrE/XLXB6303bOWk9bcxa/G53j8CnIgV77QQC/SMMU0t7EkQzSysilrICbxUmXPW+oJBRyq4yZeNCqraLE05AVZuFaq6btNkhrI+d5H0Nmcj/3FSbdPlWCxG186n0EQ/+AFsNZ/1ROmb2Cos0DPGNLWwJ0FMFj3Dr6GqoIr4W7KlsjDV/ACuZ5Ym9VpvdfSie/fgTJ3RNJmhnuHXSCZdHCcSyjZnWKrNNFoWrnVZoGeMaWphnlubKIKcA7vvhq0sunADc85aD+Kg7khNM165WcHFl2ytWeuMoAFp5ufU+fbvARia/u6atvQIe5szLDa9ZPKyQM8Y09TCPLfWaPF4nOUXrGXfwV7XhCkvD/DAt68tO+AIkp2JxWI8ftPmumdhqs0chVnMkDuJQYDp/vnDWmXZwt7mDIsVQExeFugZY5pamOfWGm3FmnVMXXU106PtAGiism29Ws1UDUO1maMwixmyJjGIAOJl2QKsqxknZFSjGddk6sMCPWOMqRMv8Ih6Z+YAItGKtvWaOTtT7drCHM2WO4lBADRYRXEzTsioRjOuydSHBXrGGFMnPcOvkXQTXj8yQN1ERUFaLbMz1W6dVru2MIPYzLXkO6NXTJgB50TTLOPqTDA2As0YY0JU7IdgWGf0aqnRo8iaJYho9OfQzOyzqb0wR6BZRs8YM+HVs+lysS2/WCzG84/+sCavG5ZGZ7KaZYvRzrTlF4/H2dO7kFnRjsDnHU1j2axbY8yEl2q6/MUXf8WNT/+SK1atDuW6+ea7VjpXtNLXP2LJRzn045s49OObOGLJR6ue99oMs16rnZsbhlST4Z7h19JNhhuxjrBV+9muWLOOdx2/EkRQVTTpNtUZUTOeZfSMMRNerZou58ve9cDYGTNVknt3lz0ZIej2ZVhVvJmaIZPVLGPEwmgV02xb9dW+p8GOg5jtRBARNOny5s/u4RHLdjY1C/SMMRNerZou525z7uldyOiu13AevoXekz+FOA5zPnY5iy7ckDW9odQP+qA/jMOq4s3UDFunYWwfh3HWL4xWMWEH4tWq9j3lFst07XyKWGxj6Os04bFAz5hJqJ5n1ppBrZou57bvOPD4lYgTQVURx0GcCETamHPWei8DEjCDEvSHcdAq3mYpcAgqjMrbMLKC4bSKCTcQr1a176kZMr6mPBboGTMJpc6sRRMjJKLtXLRq9YRpSpxPsabLYTTGfaujl6mHvJ/uhSd7B9TdBJpMgmp20EewDErQH8b33bA179ZgrmbZCg0qjGCiULBczvc7jFYxYbTTCVO176kZMr6mPBboGTMJ1erMWqZWyRqG0Rh3wdJ+2t5/SdYB9Vfu+SrO1Bkk9+5mzscuL2scVtAfxkGreLOCHhH29C4s+9xgPYURTBQKlsv5fle7jqCBeD1ZoDb5WKBnzCQUxpm1UoFcq2QNwzgPlu+A+uM3bSYWi+XNIJUS9g/jnuHXSCZdHCcC4nDg8Y0/K1ZrhYLleraPaYV2Ombis0DPmEkojDNrpQK5emQNwxDGebBCB9Sr2RYO81zdfTds5aT1tzFr8bne1rITafhZsbDeX+Z18k2/yL1m1vdKFfedXRyx5KNFn9NqZxyNyWSBnjGTULEza0GVCuTCrnSt1Q/bMM6DFbpGNdvCYZ6ri8VidO18Ck30B95CrnVwE9b7y7xOap7tdCdS8Jr33bCVRRdu8ApkHIc5Z3255HPCWKsFi6ZRLNAzxlSkVCAXdqVrrQoKwtgmLXSNarYJw95iLDegrXUBR1jvL/M6jggg6YkNw/NPZ8HS/qygKhaL4UydgYggTsSbGiBOujI23zrCWGurFcSYicMCPWNMRUoFcmFkDVNadexSNdvC5T63VMao3IC2muAmSPYqjC3z3OukMnpoBJwIXfMWoYd9aFxQlfkc/GroYlMewlhro0fLmcnLAj1jTEXCDORKWbFmHe86c/NYVasmiXb3jsvW1FOQYKaabeHM56bOns1dfnHB1wqaMQq6hVhNcBNkLWH1Y8v3OSU/eCZd8xal+xjmBlWp5wzPPz39uGJTHsJYa1iBrTHlElVt9Bpqrq+vTwcGBhq9DGNMheYuv5jZp38BiUTRpAv+31vqjjJy78aGbIEtWNpP+xmbED+YKbaOas9nBXmtrM/ITfDqj77Ojge+UfG6q1lz0LXUStD3WM73sFp2Rs+UQ0S2q2pfGNeyjJ4xpm4qnf2ZWylZbgPiWihnKy6U+aIlXitoxijoumOxWFYma8WadYGDk0Znr4Jm4Oo55cH615lGsUDPGFM3lc7+zPyBXEkD4looJ5gJe75ovtcKGrSUs+6sAFWVRRduSPcHLKbYWoJmtsrNgFWSMbPgy0wGFugZY+qm0tmfmT+QK2lAXAvlZIPqMV80aNBSzrqzAlRV5py1PlBgXmwtQbOb5WZBrarVmPxqGuiJyE3A6cDrqvr+PPcLcC2wHNgLXKCqv/bvOx9Y7z/0KlW9Jee5PwBi+a5rjGlOYcz+bIYsTLnZo3zBVTnXCPM9l3OtnuHXUFVQ9YJzcRjsOKisrFzuVv3Q9HcHym6WmwW1qlZj8qt1Ru/bwHXArQXu/wvgMP/XMcA3gWNEpAfYCPQBCmwXkR+o6h8ARKQfeLu2SzemObXKDNlMqcDgrY5eknd/hY65hwMwvOO3RKYd1NDq2UqUmz3KF1ylCgHCzECFfeA/s7kw4qDuCD3Dr5WVlcvdqn/7xzd7waPrFs1ulpsFbfS5QGOaVU0DPVV9VETeU+QhK4Bb1Sv9fUJEukVkNnAisE1VBwFEZBtwKnC7iEwHLgU+DdxVw+Ub05RaZYZsplRgMCejuhGgfeVYxWM5gU6jKxhDm49b5jVKve+wty9jsRiP37R53GsuvmRrGVm57K363pM/5c0E1iSvfO9qHr8pnEKJehZWGNNKGn1Gby7w+4yvX/ZvK3Q7wGbgH/C2eo2ZdFplhmymQkFNpcFStQFNtYFiLebjBrlGqfddi+3LfOcjo70LvTY3JdY+bqs+s2LaTeBMnRHadnUzbOkb04waHehJntu00O0i8kHgvar6VyUyhYjIp/GyfhxyyCFVLtOY5hH2DNlai8fjJPfuzrtdV2mwVG1AU22gWMv5uMWUet+13L6Mx+P+Nu5XmOU4JN0Eb/77nXTtfKpo+5LMM3rDO37L3JVfanjFtDGTSaMDvZeBd2d8fTDwin/7iTm3/wQ4DjhaRP4P3tr/SER+oqqZjwVAVa8HrgevYXL4SzcmW73OzoU9Q7bWVqxZx5yPbcq7XVdpsFRtQFNtoBjWfNwgfeoys4/JvbuLvu9abl+uWLOOOWd9BfG3Yh2FxK6dJc8mPv/oD9PvY/kFa3nz597jUz0UjTG11ehA7wfAJSJyB14xxm5VfVVEHgS+KiIz/cctA77kn9n7JoCf0ftRviDPmEao19m5sEePVdrEOKisoCpnu67SYKnagKbSQDHss4FBMou5j3nle1fjTJ2R933XcvtysOMgZov4Abs3hq7csWjTzvoq09PnNJ9qmeIbY1pZrdur3I6XmTtQRF7Gq6RtA1DVbwEP4LVW+R3embvV/n2DIrIZ+JV/qStThRnGNKtWOzuXClr29C7kwLP/F9MjbUDwJsZB1WI7sdqAptJAMexihyCZxdzHOFNn1HWcWErudJJX7r6qYCFFPtb+xJjGqHXV7bkl7lfgcwXuuwm4qchz/w9gPfRM02i1s3OpoGVWtB3EKbuJcVDNWA1ZaaAYdrCSGwQn9+5m7vKLs7KFzdI2JPf7+PhN9S9gMcaUr9Fbt8ZMGK12di4dtDgRfyvOO8paSRPjYiZSNWTYwUoqeHqroxenfRpzzlqPOA6aGElnC5slUG5UFtUYUx1J/eU+kfX19enAwECjl2FMU0k17JVIG8mky+7f/ITEnjdDP6PXTKo9Y1er/n0LlvbT3j9W6KCuy6s/urYhW7TGmMYTke2q2hfGtSyjZ8wklZth2dZCkylSyg28qj1jV6vsZLWFDsYYU4gFesZMUhNhS7XcwK1ZCwKqLXQwxphCLNAzpoU1ehRYtapdf6nALff6naOjTVkQUG2hgzHGFGKBnjEtKKs1ypmbme1EQmn3UW/VbqWWKo7Ivf7o3X/DyL0bm64gYCJkV40xzckCPWNaUKHWKPXeiqx1Rq6UUpWcudcfmv5uK3AwxkwqFugZ04LGtUZJug3Ziqx1Rq6UUpkw691mjJnsLNAzpgVlBjDJpMtbP7un6HD5Wql1Rq5a1rvNGDPZWaBnTBMqtSWaG8A8csNWYrGNdV9nrTNy1cq8fqsXrhhjTCWsYbIxTSIzEEnu3c2cj12OpAfAbywYEIUdwJRzvTBeu14BWGaD6FKfqTHGNJI1TDZmAso674YgAuJEgOJbotWek6vmemFk5MJefyHVbjNbRtAY04os0DOmwVIBxPD80+mItnvBXXrubOkii7CbANe7qXCtXi/sHnr1CkiNMSZMFugZ02CpAKIj0gbioKrpead7nn+cjmd/VLSIIOzK0npXqlb7eoUybWH30GvWqRrGGFOMBXrGNFhmAKFuAkTQJKg7QsezPyqZNQq7srTelarVvl6hTFvYPfSsVYsxphVZoGdMg+UGEK9872qcqTMCBz1hV67We0pDta9XKNMWdmBmrVqMMa3IAj1j8qjnwXubc1qdQgFd2IGZjSkzxrQiC/SMyaNeB+/DCigbXRHayNfPDej+ccMXWLC03/saeOy6dXVrN2OMMc2mZB89EVkL3AwMATcCRwKXq+pDtV9eOKyPXuuKx+NcsWo184eGebazgyvvurnmP2Tj8Tgnrb+NWYvPRRwHdRO8+qOv12RGarHebuUEGI3uERfG64fVk2/RhRuYc9Z673uXGKn6s2j0Z2uMmXzC7KPnBHjMhaq6B1gGzAJWA1eH8eLGlHLFqtXc+PQv+eKLv+LGp3/JFatW1/w1V6xZx7uOX+kVRfhzZGt18H6w4yDEP18mkbasSs50VvH0L9B+xiZWrFkX+DrD809nwdJ+4vF4ReuKx+MsWNrP3OUXB7pOsfcRVDnvt9CaF124gTmrrvDW4USQSHso7WaqfW/GGNMoQbZuxf/vcuBmVX1KRKTYE4wJy/yhYaKJEaKaBHeU+UPDNX/NwY6DmO1EvBYnSZc3f3YPj9To4H2xgoFy2nlkXgcnQte8RehhH6p4yzlz6zqZdDlp/W3pWbr5smxhFD5U275kxZp1zDnrK4jjeN87VVSTLdduxhhjwhQk0NsuIg8Bfwx8SUQ6gWRtl2WM59nODhLRdnBHSUTaeLazo+avmfuDvWvnUzWbI1usYKCcACN1neH5p9M1b5HXdLmK7FNm0OU4EWYtPhdN9BcMHMMofKg2oBrsOIjZImNBXjLJK3dfxeM3tVa7GWOMCVOQQO9TwAeBuKruFZEevO1bY2ruyrtu5qKcM3q1Vs8f7MUqOctZR+o6C5b2o4d9CPzzZJVmn9JBlzeHDXGcooFjGBWp1X7uWYGiqh/kba76TKdV2xpjWlmQYoxFwJOq+o6IfAI4CrhWVV+qxwLDYMUYZrIIu4p3T+9CDjx+JeJEmr4QoRbVsVZxa4xphDCLMYIEek8DC4EPALcB/wT0q+oJYSygHizQM0HYD/Xx6v2ZpF7vrY5edO+erMbRjfheWMWtMaYRwgz0gmzdJlRVRWG9B7gAACAASURBVGQFXibvn0Tk/DBe3JhmUs+h9UEDqEYHn/Xetkx9D+ZE2sCJgCbRxEhNvxfF2HxbY0yrCxLoDYnIl4BPAotFJAK01XZZxtRfvh/q8Xic5ResZd/B3j+sprw8wAPfvrbqYCtoUFnP4LNaYWTjsub+qlZdVFItq7g1xrS6IIHe2cDH8frpvSYihwB/X9tlGVN/+X6or1izjqmrrmZ6tN27PbEylGAraKaolTJKYWTjctvEqOs2NMCyiltjTKsrGej5wd33gMP8m94E/qWmqzKmzuLxOKOjo+z5uReQpDJ3iy/ZyuxIlHTryEg0lGAraKaolTJKYWTjUoFVvqxgPWVtmVP9GDVjjGmUkoGeiKwBPg30AH8CzAW+BSyt7dKMqZ8Va9Yx7ayvMj196P4pYrEYPcOvkXQTOOINkVE3UXWwVSiozGd84HMQC5b21/WsXtBzgmFk45qllUkrbZkbY0wxQbZuPwd8GPgFgKq+KCJ/VNNVGVNELQoUCm2R3nfD1rxn9KpRKKjMJ7M/XvvHxqo/6xl4BA16MoPS5Du76Zh7OABTRkeJx+MtlRFrpS1zY1pRPB7nsvNPY67sZIf2suWW+1vq74hWEiTQG1bVkdTWlYhEgeI9WYypoVpkWwptkcZiMZ5/9IdVrzlTJUFEWIFHJUFy7msPzz+d2SeeN67YIjMbt2BpP+3H9fuBaeGJGs2qlbbMjWlFl51/GlsW76ct0s2ou5/Lzj+Nex57rtHLmpCCBHo/FZG/AaaIyMnAxUC4P/mMKUMtsi31PHRfSRARVuBRSZCcb45u158uLlps0eoZMSvCMKa25spO2iLdRB1B1fva1EaQQO9yvDFozwD/E3gAuLGWizITQzwe54qc8WVhpOZrkW0pdTYszO3iSoKIcp5TbK2VBGD55uiOFVu0571Gq2fEmuWsoDET1Q7tZdTdjyokksoO7W30kiaskpMxJgKbjNEYn+g7gRuf/iXRxAiJaDsXfeDDfGfgp1VfN8zedkEDuFaakFBsrdW8jwVL+2nv/wriVyGrKuomGPn+l8ddo9GNno0xzc3O6BVX18kY/qzbvwUO9R8vgKqqfUdMUfOHhokmRohqEtxR5g8NV3W9zOAh6XQxJ4QzYEG3MltpKzLfmbpUpW41W5L33bCVRRduYM5Z60EcVJO8cvdVPH7T+GtYRswYU0wsFrMzeXUSZOv2n4C/ArYDbm2XYyaSZzs7SETbwR0lEWnj2c6Oqq6XFZSpIo7jbR9SeeAVNIBrpa3IfGfq9LAPpYPYSgOwWCzG4zdtzgoUH7/JMnXGGNPMggR6u1X1X2u+EjPhXHnXzVyUc0avGllBmZtAk0lQrSrwChrAtdLh/Hxn6oi2s6d3YdVtTixTZ8zkE4/HufS8ZRw7czeI8sRgN9d89yFisZhtwbaAkmf0RORqIAJ8H0jvvanqr0s87ybgdOB1VX1/nvsFuBZYDuwFLkhdU0TOB9b7D71KVW8RkanA3XhNm13gh6p6eZA3aWf0mk8lZ7hyz5e98r2rK5qnWu06qlHN65X73AVL+2k7czNOanxb0uWVuzbz+E2b7S9iY8w4hYK2lYvnsXXJftojXpu1EVdZ9+gB3PPYc6xcPM9vkyKMusqlj0SIRtvGXSPz2i+N9gBwaNugBYcFhHlGL0ig90iem1VV/6zE85YAbwO3Fgj0lgOfxwv0jgGuVdVjRKQHGAD68Pr1bQeOxgsyj1HVR0SkHXgY+GqQbKMFetlqVQ1bjkqKAlr5gH9q7Xt6F3Lg8Su9ytVKiiHK+Mzi8Tgnrb+NWYvPRRynaPGEMcbkBm2XPeYFc2uX9PDFE7qJOF6g5yaVv//pLq59dJC1S3pYd4LXJsVNKr94aT8fOuQAHPGqae94coiBPbNIJEa55iSXtoj3OICIk/06ZkxdizGAT6lqPGcBJX+6quqjIvKeIg9ZgRcEKvCEiHSLyGzgRGCbqg76r7UNOFVVbwce8a89IiK/Bg4OsH6T44pVq7OrYVetDqUaNqh4PM6e3oXMinYgjjdaLLNgoNSUiFaUOl84K9oO4qRn55ZztrDcgpBYLEbXzqfQ5CoQ8V5TnKYuJDHGhCPIlmruYwr1ttuhvSSS+/HjvKx2KDu0Fze5n4iAI3Dcew4AQERwBD55VBcf1/1se2EvbZFpRB1B8Ko6HeuhVxdOgMfck+e2u0N47bnA7zO+ftm/rdDtaSLSDXwUL6uXl4h8WkQGRGTgjTfeCGG5E0dmNWw0hGrYcq1Ys453Hb8S/BYdqYKB9jM2sWLNusDXicfjLFjaz9zlF7NgaT/xeLz0k0J8fjkGOw5CIm3p4hFNlj8HNnWeUN1E4Ofed8NWXrn7Kv85Lslkgmh3b83fbyur558LY8oRj8dZuXgea5f0cMZx7+WM497L2iU9rFw8b9yf09TkiXUndLNlsTd5IlfmY645YT/T2mDUVUZdzQrmttxyP3/5bxFuHRji1u17+Mt/i7DllvvT993x5BCqpP8Bm2q/BF4wF3WEUw6fRlJJX3s0Of51TG0UzOiJyBHAfGCGiPRn3NUFHBDCa0ue27TI7al1RYHbga/nZhqznqB6PXA9eFu31S11Ygm7GrZcgx0HMduJeH8ZJJMg+M1328rKNlU7Cq2S51e6fZxZ9JFMurz1s3vo2vlU2e1Nyi0IyayUTW0bz/rI2S05lqxeajFiz5hMlRYwZI4Nc5NeE4yIk3+EWJDJE7mP+cxx3Wx48A90TxFeGu0hkdjH1ctngSjQzarrfjFunbFYjIE9s1jl7qdNIeJ4GT8/8iOCetk9FFV46IV3eOMdl+ded+meIun3b2qn2Nbt4XjFFKnsWcoQsCaE134ZeHfG1wcDr/i3n5hz+08yvr4eeFFVvxbCGialsKthy5Ub9AiAf2atUJYqX4BVbW+7Sp6f2+Jl0YUbAhU35AZpj9ywlVhsY1nrrXTrOvW8ucsvRpxIS/QCbKRW6ploWlOlc14zA7NS259BJk/s0F5U96ezcSLKKe87gAdf2M+xs3Zz7pHTaYt0AnCO67KuwDq33HI/l51/GnPYye79mg4UZyTe4iunzsTxgz1EOfl90xDBzubVUcFAT1XvA+4TkeNU9ec1eO0fAJeIyB14xRi7VfVVEXkQ+KqIzPQftwz4EoCIXAXMAC6qwXomjVgsVtczebkyg57Ot71d+qHp7y6apcqXZemBqnrbVdIbLysIUGXOWesDZXya4XxhK/UCbCT7nEytFcu2Fcv2ZQZvydTWqP/72Z0O539oZkY2LsFdT76T0Q5lfNZsyy33s+Hso9l8ykxElIjAktgUTvyTKamEXHo7NuoUPktXqPlxPB7nyxnXV1UcESJ2Nq+ughRj/E5E/gZ4T+bjVfXCYk8SkdvxMnMHisjLwEagzX/ut/Bm5i4HfofXXmW1f9+giGwGfuVf6kr/toOBLwPPA7/2//Bdp6o2d7fFVBL05MuyPHbduop728XjcUZHR9nzc28dqTFqpfQMv+adPVFtueKGVuoF2Ej2OZlay5dtSwV4fZ1vsnXJ9Kwt2cyM2aZtmhXMnfmefSw7fCqfOKoLR8DbNXVJ4uBIJ6Ou8ty2t7jrkmPG9cCLxWJsvHM7l55/Gv2H7GJJbIofhKmfKdT0WbvMrGDQrefM68+Vnezap2w8uZuozbetqyDtVX4GPEbOZAxV/V5tlxYea6/S+sKYNZvZVubxqV28euE/lH29eDyeHgMm4qDuSFPPvTXGNJ98DYgBrjnJpT3iVauKeK1H/uHRXV4wlaftycrF87jmhP3eVq5fAJFZCCEiJNxUKxPvtd2ksv7BXWy8c3tWcJZureIIEQdc9R778It7eeMdNytALNSGJcj7tubKwdS7vcpUVf3rMF7MtKZm6F8XRpYls63MX0Xb+ex/P8tv3uv9fxQ0K5dZ3PBWRy+6dw/O1INKtoYxxpiUWCxGNNrGqg9Opy0ifFxdfvX7YToiB6QzaW5yrCK10FbvXNmJSHdWcJcZ7LlJRVEiqfZKeAHf5lNmcmnOebt85+y8YOzhrL/X4vE4fV1v0BHpKrs9is23bYwggd6PRGS5qj5Q89WYptQMVYjFtnuDBqKZbWVwRzn6t7/gmT/+YNnnsFJrWbC0n/aPjWUZrTrTGAPBMle5wdtxh3rNLFS9tiM/9jNpiUSEl+hh1HXHFVaktoBRUJR7f/M2Z7y/ExEvyLvjySGee91l07Ju2v1+Fqmii9zgLGgQdtn5p7F1SSci3lqTaluwza5Ye5Uhxtqd/I2IDAOj/teqql31WaJplFQANTz/dDqi7ekecM12Ji1oIJrbVuahXTt59UdfrzhDaNWZE08zTI0xravYObvcICq34jWViXOTyo9f2MdJh02lLSKck3S548khNm0b344klYVLBZSXbL6ZSzd8NiPA9FrN/uV5y/jowW+z7PCp4AeBszsdbwu2zO3TubKTiNOdXusd//F2+nVMcypWddtZz4WY5pMKoDoibSAO6pbf5LceggZcV951Mys/9hlOffd8th9+DDsOmU9PFefrrDpz4mn01BjTGgpl7FJtU9ojnelzdqrQ1/kma5f0ZD02X8Vrwm8i/MbeBG0Rr9FwxJ8u4aqy4cFdbLlzLDDLl4U7MU9W7t6f/454PM5f+UHoOUdO57yjulhVRmuXlNxCkoGhA7nc/jHU1Epu3YrIUXlu3g28pKqJ8JdkmkVmAKVugndeeoa9v/9PpoyOEo/HmybTUSzgyt3WHZz9Xl479X8ikSjiJqrKwll15sSTu71f76kxprmUCujaIt2o7mfD2UezO/ouVsXeoT0yVrnqJr2tzXOOnO7PdR0LrDIrUnPPxSUSEVa5Xo9RR7xeeaL5z9YFlQoK1y7pIeJPq6ikxUluFtGaHTe/IGf0vgEcBTzjf70AeAp4l4h8RlUfqtXiTGPlNjae+u4/ZdqhC0KfqpAKxsaKG2aUVfRRLODK3dZNfu/q0LJwzdAbz4Sr0VNjTHMp1Ng493zdVafMBJKITMHxM3OpM3KzpkU49fBpeQsXivWfS20Bn3fUdCJO4bN15QrSSLkYK6hoPUECvf8DfEpVnwUQkT8FvghsBr4PWKDXRMKskM0MoKLdvcz6yNk1OY+WCsbmRNrAiYAm0cRI4GCyWMCVu60rU7sYuXejZeFMXo2eGmPKE3a7jty2J31d0BbpIuoIKPQfsouVi+eRSPSg6qbP10WcjHYmSeWpV4b5zWvDPPe6yznLyi9cSAVT8Xic9Rnbu6Nu9YUPlpGbfIIEekekgjwAVf1PETlSVeOpcm3TPMKskM0MoBYs7Uddb+Rx2OfRsraIVSuae1tI7rbuu4Z3hpqFa4bWMyY8jZ4aY8qTm3G79LxlRKNteQO/IEHhZeefxtf+zKXdH/uVcBX8zFfE8aZGHHvofi59JMKGB3ex+ZSZOKIZ5/G8x7//oHYWzulIT4KotHAht+FwGIGZZeQmnyCB3m9F5JvAHf7XZwMviEgHXhWuCageFX21qgSt5Xm0zGDMm3kbXtFHrc/RNUPrGWMmq9wt1GNn7vZ7040P/HbtU7ac3J2+b9PZR2dVscZiMebKTqJ+RSlANALqty5Jqje6K6pwaNsga7/rBWCp4oaIeI/b9sJelh0+jagjJFxvUkXS9XriPfdGgmsv6Csr+2iBmalWkEDvAuBi4C/xWqv8O7AOL8g7qWYrm4BqWdGXyixFexeiSW+ASTXBUr5MVTUBTLHMVyoYy3dGr1q1PkdnLVaMqZ/crdVd+7ztzNR5M0TT1aq5gV/mnFUUvnKqN059JOPs3Q7tJZHcj5OxWeX4AZsyFrDt0N6s7dV1GRm3RCLCSe8d63m3adsuuqdIevyXN02i/GpXYypVMtBT1X3AP/i/cr0d+oomsFpW9KUyS7MibSSTLm/++5107Xyq4mCpUKaq0q3KYpmvVi5qCNJixbZ3jalOZnHCtX82nTZ/a3XEVTY+tGtctWoqyJo13aEjIulgLamgrqbHgYkIbYydvbtk8zf5yy9dxLEzdzNrusPSw6amiytSAVvu9mluxm3cFrE/amztkp6sILTaogpjgirWMPkuVV0lIs/g/WMmi6p+oKYrm4BqWdGXmVny/w5jT+9CTlp/G1NeHuCBb19bVnBRKFNV6VZlrTNfjQqmgmwN2/auMdXJ158OIOpA9xTh2kcHgewga9c+ZdOy7nQhhKteUHjK+w5gSWysBUpEvLN3H/nj/Wz44plc4wdmuZm6LTmzYQsptNVabbWrMZUqltFb6//39HosZDIIUtFXyTm+eDxOcu9u7yCw65JMuhy46Cwk0gaAJlaWHVwUylRVGrDVurlwo4KpINlI2941pjy5WbHUWbxUcJaa65obMGVup971+Q/T5mQXQmy8czuXnX8axx66nzYFEW/4U8QRnJw+dWGfjbNqV9MoxSZjvCoiEeCfVPXP67imCStIRV8l5/hWrFnHnI9t8qu+kuz5zU/oXvjn6X/1EomWHVwUylRVGrDVuiiimYMpm6BhTHG5gV0iMco1J7ljhRPbxs7iJVV5+MW9AOlZsLkN3HPnsWZOcMgMuHbtUzaf0o2j4fWpK8SKKkyjFD2jp6quiOwVkRmqurtei5rMKjnHlxXkuAlG97xJ0k3giLeJq26i7OCiUKaq0oCt1ufw8gVTzXI2ziZomMmkkt52uW1S7npqKN2/ThVmHCBc9tgBWQUPXiAorHLdcRW0xeaxZgZc8Xg8awxZGH3qjGk2Qapu9wPPiMg24J3Ujar6hZqtahKr5BxfbpAz5eUB9t41wL6D+wDSZ/SCKhYgxWKxrMBlxZp1TVFckC+Yapazca1cbGJMuQpNkygmt03KrKnR9Fm2RFJ5hd6sa3iFDd3pRsZeoAZucj93fP7D46pxC81jrUWfOmOaTZBA737/l6mDSjrz5wY55RZe5CoVIDVLAJUpXzDVzNu5xkwUhc7TlaouzS2cGPWbEwvKnx8+Nb3tumnbLrbcuT3ruZmFDTDWNiUi8Mmjuhh2C1fJ5rItVTPRBWmvcks9FjLZFMqaVdKZP+yMUakAqdwAqlFbqHY2zpjSSm21lro/M4OH7ueXv+/ATY5l014a7WHl4nnjnp+d+VNu/MVuPnNcNxHxAjYRYdT1qmpz/77IPWe38eRu2gFHvL53Uc2uxjVmMivWXuUw4MvAIHANcAOwGPjfeLNvB+qywgkqjKxYrQKoUgFS5v3JpEu0u5cFS/sLvn6jMoB2Ns6Y0kpttZa6PzeDd9yhUxh1lX/+jz0M7JkFjGY9P3Werq/LyTqH9/6DOhA/UFNV3KQWbEOSe87usowJFam+d3bWzhhPsYzezcCtQBfwC7zJGGfiBXv/D3BMzVc3geVmxYbnn140WMqnVgFUqQApdf+e3oUcePxKZn3kbNTtL/j6jdpCtbNxxpSWG6j1db7J2iU97NBeLtn8Tfq63qAj0oXjn4dLNRdOZeZ2aC+q3jZqqtI/4gAqzJWdzO4ZC+gyz9OhSlJh1J828eAL+zn20APSlbV3PDnEc6+7zJ0iWa+Xq9CECjtrZ4ynWKA3XVWvBxCRz6jq3f7t20Tk72u/tIktd75r17xF6GEfKitYq1UAVSpASt0/d/nFiBMp+fq2hWpM88o875ZU9ea2Ot6Yrk1fPDOr6XDEGWsu/K01fbwzColEDxse3MVVp8wk4nj97dzk2HXcpKa3cgX1etaJF1SShO/6mb9L/v5fuGzDZ7Mra092A48Ms7N2xuRXLNBLZvx+T5H7TAVSWbHh+afTNW8R4kQg0lZWsNboACro65e7hdosbVGMaRaVtCwJes057GTTNqV7ijC70+G8o8a2U8/6wNR00+FkUkFINxe+ZFE3SYUR1+XSR97F5x8mPYMWSF8HhadeHWbnUII/P2wqEbygUURAlFeHkukA7cQClbU2MsyYyhUL9I4QkacBAf7E/z3+1/ZTtwqZgUzy6YfpPOxD4G+/lhOshX0GrdwAK+jrl7uFWs2WdDweZ/kFa8e1lrFA0bSySlqWlHdNr0p19nQvA5eqfv3A7I6spsOOgDj4zdm97FxU4dC2wazCh5WL57HK3Q/qbeN+cE4HSW3HEUk/N6nF+9bZyDBjwlEs0JtXt1VMMrmBzCvfuxpn6oyyg7Wwz6CVG2DV6gxcNVvSK9asY+qqq5kebQcqG/8WFstMmrBknqPLd06ukMxM4EujPQAcEh1k936l/30H0B7xZr5mnp1LJr2MnBeUkW46fPt/vM1zbyTSzYUjMtbnLjcIS1XF9h+ya2yurAtJhaSr6TN4A3tmFTxLZyPDjAlHsRFoL9VzIZNJbiDjTJ3Bjge+0eBVNU/fuWq2pL33EK1q/FtYmrHfoGmsSrdgU9mtVIZsSWwKxx46PrNXbJSYm3QBiDjdRMQLulIVqprRi87F27bJrH4dcb2mw1vuvJ9L/e3e3fu1YJ+61Hm5lYvnceyh+4n6Wbns3nYP521inHsNY0x1gjRMNiHLDWQ63/49C5b2Nzzz0+gzfympLeG3OnrRvXtwph4UuCK5Z/i1qse/haVZAmfTPCrdgs2XIYvmnFuLx+NsOvtorjllJo50M5IzSkzIDuAijpBwlcf+ax8PvrCfjSd3E/ULMgCcjOrXVOat3OBrXFbuzu2W1TamzizQa4Dcs21AU2R+mqXvXGpLeMHSfto/tgkp43O574atec/oNUKzBM6meWRuwQpeK5N4PF4y+CmUIduhvVl95K46pZuIf4aujexRYq6/JRvxs4KJpDKaVL7/391sufP+cVu8h7YNBsq8BVm3MaZxAgV6IjIFOERVf1vj9UwKuWfb5i6/mOllZn5qcf4rzDN3YayvkoxYLBbj+Ud/WNGaw9YsgbNpHju0Fze5n4h426bnHDmddX5WL8i2bipDlto6nXOAcOOaPq45oZuIdKbP1Kl6BRVL3zclXUxx/RO76eqIgCjPve5mbbtaQGbMxFUy0BORjwJbgXbgj0Xkg8CVqvp/1Xpxk0UlmZ9mOf9VKKALY32tnBGzQgyTz5Zb7ueOz3+YTx7lNSB2ZGz7Nci2bmZmb8vJ+2mLeOPCYCzAc5NescO2F/ay7PBpRB0h4cJnjvP64Y26ymWPHcAtj1pgZ8xkECSj97fAh4GfAKjqkyLynpqtaBKqJPNTTrarlkFHoYAujPNprZwRa5ZA3DSXWCzGwJ5ZrHKzt19h/ISKYn3jsh+rGUHeWAPiRCLCSe91vcbEGcUW1pPOmMklSKCXUNXd6SpGE7pKtkzLyXbVMugoFNCFkY1r5RFmVohhUnK3ZC/Z/M2sCRCpitVy+sblVuEmkoqqsuHBXWy8czuXx2JZr7trn6aLLawnnTGTS5BA7zci8nEgIiKHAV8AflbbZZlSysl21TLoyAroVEnu3U08Hm/pbFwYWnnb2QQX5FzduC3ZDZ8dtyUbj8dJJEa568m3QZQnBru55ruF+8blntVLn7fLqGrNPHeXb53GmMlB1C+lL/gAkanAl4Fl/k0PAlep6v4ary00fX19OjAw0OhlNMyCpf20nzFWvTpy78ZQiy4WXbiBOWetRxwHTYyEev1WZWf0JoeVi+f5QZykz77lBnFrl/Sw7gRvm9VNKt/ZPsSq636R9ech9zqXPhIhGm0LdeSZMaZ1iMh2Ve0L41pBMnqHq+qX8YI904JqmV2LxWI4U2cgIhXN652oWnnb2QQX5FxdsUrbQtc5duZuVn1wOm2RblT3s+Hso9loPeiMMRVwAjzmGhF5XkQ2i8j8mq/IhC4VdOx44Bs88/D38/6wiMfjLFjaz9zlF7NgaT/xeDzw9VPblOomJv02ZTwe5xN9J/B3hx/LJ/pOKOtzNK3HOyvnzWwtdPZtyy33c8eTQ6h6lbGOyLiAMPc6iNIWEaKO92vzKTO57PzT6vW2jDETSMmMnqqeJCIHAauA60WkC7hTVa+q+erMOLXaEqymYCNzkkXynd10zF3IoR/flG5WPJmyEFesWs2NT/+SaGKERLSdi1at5jsDP230skyFSp3BCzKPtVilbaHrJBIRPq5uOjgUUauUNcZUJFDDZFV9Dfi6iDwCXAZcAVig1wDVBGTFgsRqCjYyJ1m0nbUZJ9oOgCZWTrq2IvOHhokmRohqEtxR5g8NN3pJpgq5hRSXnrcsfXZu/ASJwufoSgWEuQ2L4/E4G84+ms2nzETEy/RZpawxphJBGibPA84GVgJvAXcA/3eN12UKqCYgKxYkhlEl6q0tSroVTyQ66c7rPdvZQSLaDu4oiUgbz3Z2NHpJpgrFzs4lky6OCOLPlb0sY8LFpect49iZu7OmUEAva789ECjDHYvF2Hjndi7NqKydO0W8og0rzDDGlCFIRu9m4HZgmaq+Us7FReQm4HTgdVV9f577BbgWWA7sBS5Q1V/7950PrPcfepWq3uLffjTwbWAK8ACwVkuVDk8g1QRkxYLEMAo2eoZfI+kmcMTx15eYdOf1rrzrZi5atZr5Q8M829nBlXfd3OglmQqMzY+NeDNi/abDs6Y76bNzmjGRog1vbu3aJT3s2qd8bVk37ZHO9PWSSlYwmPkahbaF803BKDQxwxhjCglyRu/YKq7/beA64NYC9/8FcJj/6xjgm8AxItIDbAT68P6K3S4iP1DVP/iP+TTwBF6gdyrwr1WssaVUE5AVCxLDqBK974atLL9gLfsO9irCU2f0JpNYLGZn8iaAsS3bTpJJ79+RjghLD5uKm1QEr4I2c67sOUdO9ydPKBGRdGZbVYk4QjSnKjdzW7hYZW05EzOMMSZXwUBPRO5S1VUi8gz+v2dTdwGqqh8odXFVfbTEuLQVwK1+Ru4JEekWkdnAicA2VR3017INOFVEfgJ0qerP/dtvBc5gEgV61QRk4wKx0VHi8Xho20CxWIznH/1hKNcyppggjYrzPSdzS9VrSvxQ3udlBlcu3l96jiMkFf7510OAH9gJKNlzZd2kl8GTTIi2OgAAIABJREFUjI2GRHJ8VW5uALf5lJlcmidbV87EDGOMyVUso7fW/+/pNXz9ucDvM75+2b+t2O0v57l9HBH5NF7mj0MOOSS8FbewWCxGW1sb047r95sn90+6YgkzMYybNhFgO/Oy80/ja3/mprdUz3Hdcf3sUjKDq6QfsDl+oDUwdCBbbrmfdTlVsksPc9O98kaTykPP7+WNd9z0Gb3cIowd2ovq/pKVtUEqe40xppCCgZ6qvur/9mJV/evM+0TkfwF/Pf5ZZcs3QFcruH38jarXA9eDNxmj0gU2kzBaq9gMVjMRZGbDUOg/ZFfJQoW5spOo053eUo063m35soOZwVWquvaQ6GC6KOKy80/Leq14PM4dn/8wnzyqC8cRRODp10a59tHBgu9hyy33B6qsza3INcaYcgQpxjiZ8UHdX+S5rRIvA+/O+Ppg4BX/9hNzbv+Jf/vBeR4/KVTTWiXFZrCaVhePx9m1T9NbmREHlsSm8JE/9s657Y6+K93y5JLN3+S6DZ9lruxk1z5v+9Tx/7mY2gYtlB3MDa6KFUUE6ZWXK7Oy1rJ1xphaKXZG77PAxUBMRJ7OuKsTeDyk1/8BcImI3IFXjLFbVV8VkQeBr4rITP9xy4AvqeqgiAyJyLHAL4D/AfxjSGtpemFk42o5Ds2Yerjs/NPYcnI3IiAoSRUijuAoXHXKTFx1iThe0Lbpi2ey5eRuP4hTNj60i3mzoum2J3OnCLM7HdoiXSWLHUoVRVSyxWrZOmNMrRXL6P0zXpHD3wGXZ9w+lCqSKEVEbsfLzB0oIi/jVdK2Aajqt/CqZpcDv8Nrr7Lav29QRDYDv/IvdWXGa36WsfYq/8okKsQIIxuXW8yRGtmV2Q7EenSZZpYZcCVcEPEqW1Pn3Nocb8yYKpz1gal0RATHD866pwiXP/BGVnbOTSpucixD+NJoDysXzxtX6FGqKMKCNmNMMyp2Rm83sBs4F0BE/gg4AJguItNV9b9LXVxVzy1xvwKfK3DfTcBNeW4fAMb15JsMapGNs5FdptXkBlw3/mI3nzmuGxEl4m/LqiqC8oHZHelAMKljwVludu6ffz3Eq2+7/v2jebdyrSjCGNOKgkzG+ChwDTAHeB04FHgOmF/bpZlcYfS6y2Uju0yrSBVNzGEnm7ZpupL1ks03c+mGz9J/yC6WxKake9k5jiB4Fa1uUrnjP95myy0PA+ODxYGhA9PZuLVLevJu0VrGzhjTioIUY1wFHAv8WFWPFJGT8LN8pvXZyC7TjHIrYS/Z/E1u/uKZXHPKTBzpZsRVLnvsgHTgdaI/QeLYQ/fTjtfixPGbGbtJZcT1grnL/WMJxbJz1rfOGDORBAn0RlX1LRFxRMRR1Uf89ipmArCRXaZZZAZ3u/ZpRhGFV1Sx+ZRuos7YyLFCxRB9nW9yzpHTccTrgXfHk0MM7JmVFcwVy87ZFq0xZiIJEujtEpHpwKPAd0XkdSBR22WZerGRXabW8mXnUi1PMr/u63yTrUumE3G6va1XEX8bFk553wF+sYWXpVOlYDFEPB7Pama85ZaH05m8IGyL1hgzkYhq8V7CIjIN2I/XrPg8YAbwXVV9q/bLC0dfX58ODAw0ehnGTEorF8/zixuEUXeseMIRb2v04Rf3svSwqUQdSc+PTVXBKt5jNm3bxcaTu2lzBEXZ8OCuvHNhjTFmIhCR7araF8a1Smb0VPWdjC9vCeNFTfnCmIphTD3kZvAyK1wFuPj47nRA5wicevg0rydeOlun6TFit/vbrpf8/b9wWUYWcIsFecYYE0ixhslDZI8XE8bGkKmqdtV4bSZDGFMxjKmH3EkTm7Z5BRGpObAwFtQBfo87TRdOOH4fPBF4dSiZVXBhjDGmPE6hO1S1U1W7Mn51Zv63nos03hQM8adiSKTNZtSauojH46xcPI+1S7wmwvF4vORzvAyeEHW8XzMOEO54cghV0nNmU02KXR1rdpxUeOi3+xhOeHNfreLVGGOqF6QYAxH5CHCYqt4sIgcCnar6X7VdmslkM2pNIxSaA1tMqj2Jtx+g7N6v/Heim1WuS1THKmGfGOxmRuItNp8yExEvuPvhy9P519farOLVGGNCEqRh8kagDzgcuBloB74DLKrt0kwmm1FrGqHUfNfMJsa793tNjBOJHjZt28XmU2biiLDx5G4ufQQue+yAcZWw8XicSzPO813z3fvt7J0xxoQoSEbvTOBI4NcAqvqKiHTWdFVmnFpMxTCmlNzmwbv2KVcvnwWiPDHYDcA1J7m0RbqJCCQVkuqy7YV2RCDiCFGFQ9sGufbR8SOyrZWJMcbUVpBAb0RVVUQU0u1WjDGTQGbz4F37lE3Lumn3B8qe47rc8eQQbZEuP+OnRBzBUVj2vmnpFil21s4YYxqnYDFGhrtE5P8FukVkDfBj4MbaLsukxONxFiztZ+7yi1mwtD/QYXhjylWo6CIWi7HllvvZob2c8r4DaHMk3bi4zRFmTY16hROuV0GbKqxA4I7/eJt/eHQXlz12gJ21M8aYBinZMBlARE4GluG1VnlQVbfVemFhaoaGyfF4nCtyRo0FOYu0YGk/7WdsQvy2KiP3brQtXBOK3JFjG0/uTjc13rRtF91ThB3aSyIx6m/PCn4yL23EVTY+tIsZBwjT2+Ezx3UjAqM5s2iNMcYEV9eGyQB+YLfNf/GIiJynqt8NYwGTxRWrVnPj078kmhghEW3nolWrA40eG+w4iNl+W5XU18aEIbOiFh3rX4fiV8KC6n62vbCXtsg0oo6QcJWdbyeY3RXF8Rsed08Rrn10cFxhhWXxjDGm8Yo1TO4CPgfMBX6AF+h9Dvgi8CRggV4Z5g8NE02MENUkuKPMHxoO9Dxrq2LClJnF6+tyMs7Xefd7Gf7sObO55+3+8fEhNp7cTdTJPn9nhRXGGNN8imX0bgP+APwcuAgvwGsHVqjqk3VY24TybGcHiWg7uKMkIm0829kR6HnWVsVUK3eLdsvJ3bRFutNNiwWyZsw+9Nt9nHz4FJxUg2NR7vj127z6tssO7R0/jswyd8YY07QKntETkWdUdYH/+wjwJnCIqg7VcX2haOUzesaUI3fObKpq1tuiFX+OrJetG3WVf/6197/zOUdOxxEhkVQufSSS0cjYztsZY0y91euM3mjqN6rqish/tWKQ1yxisVigM3mZ4vH4uGyeBYemmNxJFpeet4xje3bREenCcYSE6/e680eMDQwdyJZb7mddTtNiwM7bGWPMBFAs0FsoInv83wswxf9aALV5t7W3Ys062s/YxGy/4nbFmnVWcWuKyp1kcezM3ZzzwU6/sEJJqvLjF/fyxjsuTwx2pydR5MvWWQbPGGNaX8FAT1Uj9VyIGc8qbk0puVu1iUQPo66bnjN72Ky2dO87N+lt2y47fBqjrjLwWJtliI0xZoIL1F7FNIZV3JpSsluk7OehF/Zy4y9G+cxx3TgiHHfoAYCXzUs1M44UmFtrjDFm4rFAr4lZxe3klZupu2TzN7kuo9I19XX/Ibtoj0xJB29/cYTXCiU1ZzYV3KWqaU86bApRG0tmjDGTRqDJGK2uGapuzeSWrxq22LbpysXz0pWyqUkVqckVqsq3fr6bi46ZkTWtQsT7jZtUkuodpo044KpXOXvpIxGi0bbAazDGGNMYdZ+MYYypTm417GXnn1a02CGzqEKAzy/qpD0ytu168fHdgJe1S7heBs/xDuaRSI6NJdu9X9OjzFKFF8YYYyYPC/SMqYPcati+zjdZu6Qn77bsllvuZ4f24ib3ExGvmfGcLu9/1dRWrHfmbqxNyqZtu5g3KwqiXjXtndstqDPGGGOBnjH1sEN7GXX3o+oFa+cd5bU8Sep+7v3aWVxzQieOdJNI7ufhy4+jr8vl4RcjnHr4NBxnbEsWvOentnNT2botFtgZY4zJwwI9Y+ogNaGir/NNzjtqOhHHO1PnKKz8QCfgfy1eQQV45+oSSaXNP4OX2pK14M4YY0xQFugZUweppsRrl/SASHr7Nfe/MFZUEXHgO9v9YTS2JWuMMaYCFugZU0epLVzUr4hNKo542TpUUYSoM1ZUMTB0oE2oMMYYUzEL9IypULktU2BsC3cOO9m9X7MqY18a7SGRSPCRWe+MZfC+azNmjTHGVM4CPWMqVKxlSmYQ+NJoDwCHtg1a/zpjjDF1ZYFeE4rH41yxajXzh4Z5trODK++62QKDOguSrcttmZI5UiwzCHSTLgARJ1gPPWOMMSYsFug1oStWrebGp39JNDFCItrORatW852BnzZ6WZNKkAbHmS1TckeKZQaBDoCAIzZj1hhjTH1ZoNeE5g8NE02MENUkuKPMHxpu9JImlXg8Tl/XG3REunDyNDhOZfdS5+0ys34pmQ2PJaM9is2YNcYYU08W6DWhZzs7SETbwR0lEWnj2c6ORi9pUrns/NPYusRraOxNoFDOOXI6EUcYdfdz6XnL0jNjoZe13x4Yt6275Zb7uePzH+aTR3nBYsJVHvuvfXz/v7uzAkJjjDGmlizQa0JX3nUzF+Wc0TO1lXkmr6/r/2/v/qOkqu/7jz9fM7sIhB+LghpFjNTfxyLCRo2p+KsKShOrSdREc6D9+vXU6jdqjtLYxFikHhUtaVpzknqsrX7rzxhN/dYoWJMo5xtNXUQUxRqzMYqg+CP8UhB25t0/7p3ZYRhkl+zs7Fxej3P27J17P/fO/XycHd98PvfzeefI50YgiUIxeOGtTRy+1y7lZ/GOHrWGsyYOKw/rzj57cvcixmlv3/jx4+lYO4azChtpSYd2H3i9zc/mmZlZv6proCdpGvBdIA/cGhHXVx3fF7gNGAO8D5wXEcvTYzcA09OicyLi3nT/ScCNQA5YD8yMiFfrWY/+Nn78eD+T18+2nDwRFIpRfvbuh89/yKF7DIIACMYMy9GaFy05QcCcqaOQ2OpZvo8b2jUzM+sPdQv0JOWB7wEnA8uBZyQ9FBEvVRS7CbgjIm6XdCJwHfBVSdOBScBEYBfgCUmPRMRa4PvA6RGxTNJfAt8CZtarHpYt1bNpL57zfW6+6kLOHLeaQfkh5HNCwPyXP+T5tzclZW58kNlXnMGcqaPISfzxAUMhDQKDICeRrzHztpQNw8zMrFHq2aN3JPBqRHQCSLoHOB2oDPQOBS5Lt38G/Lhi/xMR0QV0SVoCTAPuI+lXGZGWGwmsqGMdrMlVB3ZdXZuZd0KhPOx665wzmXdcGzkNIZc+k5cTnHTgEB55a1S5V+7MAweTE+RzSstBIYIfPLWG848aWR6e9UQLMzMbSOoZ6O0NvFHxejlwVFWZJcAXSIZ3zwCGS9ot3X+1pHnAUOAEugPE84GfSNoArAWOrlsNrOlVL5Ny35J1tOZHlIdd//KYNnKi/Dye0mVQckp657rPTwLBUsqyXE4UCrB+E8xaONjDs2ZmNiDVM9BTjX1R9fpy4GZJM4EngTeBrohYIOnTwC+Ad4CngK70nMuA0yLil5KuAOaRBH9bvrl0AXABwLhx437/2lhTql7UmBCbC8nzdyKQhKR0dm3SK1fKPftm7LHF+V2FYMnKjzhsz0HlMivYw8OzZmY2YNUz0FsO7FPxeixVw6wRsQI4E0DSMOALEbEmPXYtcG167C7gV5LGAIdHxC/TS9wLPFrrzSPiFuAWgPb29uoA03YS1YsaP/27kXQsbKV9+Lt8+Yhh5EmGawvF4FvzV7OmZbctUpXNmjF9i/NvfWkILa+0ugfPzMyaQj0DvWeAAyTtR9JTdw7wlcoCkkYD70dEEbiSZAZuaSJHW0S8J2kCMAFYkJ42UtKBEfEKyUQPd6fYNlOWVc98nXdnsv+SKbuSy6k8ZHvns+u5+t5FNdfDq3W+mZlZM6hboBcRXZIuBuaTLK9yW0S8KOkaoCMiHgKOB66TFCRDtxelp7cCC5WkFFhLsuxKF4Ck/w38SFIR+B3w5/WqgzWPWinLai1vUgrSqnv6OtaN5hs1AjjPnDUzs2amiOyPara3t0dHR0ejb8PqpLOzk/sqslBsLgR/9+TqJLg7diOt+WTfrIWDy0HbtnoAzczMGk3Sooho74trOTOGNYVagRkkPXnJ83bdKcuKsfVECq9xZ2ZmOyMHetYUqodmZ589mUPGtHDTlGG05IZvsUTKPYvX09WV55Oj8ltkuPAad2ZmtrNxoGdNobJ3rpR2LCfKAV5p5uymQrDsnS7mnVygNT+cQjG4a/FaOtaO8QxZMzPb6TjQs6ZQmjxBgBSIUtqxICLYXAjufm4dHWvHsPcQlXPRRsDKdUUP05qZ2U4p1+gbMOuJubc/zOzHVqcrbqucrkwSxYC7F6/nrH/8L+be/jCrN3QP13rI1szMdmbu0bMBpzTxYi/eZs3GoG2IkskVQ4TSfLNdhShPvthc6F4e5YvHHsLck9vKx2Y/tpq59y5qdJXMzMwawoGe1V1PlzIplWsf/i43TRlGPtdGXlAM2FTYyOzHopy+rKuYBHGlILD0/F3ls3ybC9A2RF42xczMdloO9Kzuai1mXOuZuVK5QfnhW0yyyOdES8DIwWLWwsHdAWONTBbVCyF72NbMzHZmDvSs7mqtZ1dreLZ9RI7W/IjyJItCMcip+1m7Feyx3UkVtbJhmJmZ7awc6Fnd1eplq+zlKw3PdhWjvO5dMYJ7nlvHslWFrYZnP44XQjYzM+vmQM/qbu7tD/P1c0/h6FFrQMHGjcEf7b6eXfJJyrLS8CzA/Jc/5Pm3N6WB3eN+vs7MzOz34EDP6qJ6AgbAWROH0ZoX5xQD0Z2yDJLfOcFJBw7hkbdGuVfOzMysDzjQs7qonoBx35J1tOZH0JITguQnTVn26jubOWBMK7lcsj5eZU5aMzMz23FeMNl2WGdnJ1889hAumbIrXzz2EDo7O8vHkgkYSXaKJG2Z2FxIlkfpKgabi8n2pkLwL4vW81HFMc+UNTMz6xvu0bMdVtlrVyhu5J7/cyTLVhU4ZEwLE/ZsLU+s6CoGT/9uJB0LW9lbb/PbzbsCsG/r+7wZe3DxjQ8y66oLPVPWzMysjznQs7KeLmxcUrlsSl7w1UkjkLqPby4Edy1eS8faMcy78+OvdbyfyTMzM+tzDvSs7OMWNq617t3qDclwq4CcKM+gVRrt5XOwcl3REyvMzMwaxIGeAUkg1z7inYolT7onRXR2djL77MnMmzqKnNrIldOSBbf+cg0XfqYNqmbQgjNTmJmZNZoDPQOS3rybpnQveRIRTNizleunj2bZqgJzprbRktsyLdkg4JhPDQF1z6Cd//KHvPNBARQ8/X4b8+7083ZmZmaN4kDPgKT3Lp9rKwdsOYlTD/4EkGSpAJWDPOhe9+4P9xy0xaQLr4FnZmY2cDjQM2DLNGUQ5KXys3alNXi6iklP3zNvfMTR4waTywkJ7n52HSvXFzxj1szMbIBxoGdAkqasNON29YZg9iltDEpn0Eqiqxgs7NzAA6+30dWV54i9C7SkvXgd60a7F8/MzGwAcqBnAIwfP36LGbaXnnsKnxu7nlMOGgpKZtc+8Hob9y9cVnMZFjMzMxt4VHrmKsva29ujo6Oj0bfRryqDseoFire3Pl6ta/TmPDMzM9txkhZFRHufXMuBXraUgrP24e9yzhHDyOeSyRVAefue59bRsXaMAzczM7MBqC8DPee6zZjSosfnTR7OoIpcs63p70F58dVJI5h33EZmnz15i/y0ZmZmli0O9DKgs7OTP/3M/lx/2hhmHriWQXmRzyUzKQrFoKsYbC5GuWcvlwZ9c6aOYtaM6Y28dTMzM6sjT8ZoMrWem5s1Yzp/f2KBQfnh5XJdxYAIFrzyIQ/+ZggtLS0cPWoN504aRj5d+FiKcvYLMzMzyx4Hek2mOh/t7LMnc+aBg2nNDSmve1coJvlnkThh/6E8snJwebbst86ezJypo1A6k9YpyszMzLLLgV4Tqc5HS8C100YBlFOXQfJbSoZvWypy1o4fP56r713E1700ipmZ2U7BgV6T6OzsZPbZk/nbqaPKQV0+fcKytKDxkhUfsfStj1i2qsDVJ7eVFzSu7LWrXC/PzMzMss2BXpOYNWM686a2lZ+vKxYDBLk0/2wE/OsrI7ygsZmZmZU50GsSe+ttpDaUBnbFSJ7FywuC4Kr5q5l77yLAvXZmZmaWcKA3gHV2dvL1c0/h6FFrmLBna7I8SnQHdmtaduvOdnHvIi9+bGZmZltwoNcgPUkvVr1syuZCcOfitUlWCwd2ZmZmth0O9Bqk1jIpbUO0RdC3t96mJddWXjYln4OV64oeljUzM7MecaDXIHvrbVrzbbSky6TMSWfTbi5sZNaM6dy/cBlvxh50FTeSJrnYagatmZmZ2cdxoNcAnZ2drN6QzJTtKgYQ5HNKZ9B2r3s39/aHuTR9Rg8FT7/fxrw7PYPWzMzMeqaugZ6kacB3gTxwa0RcX3V8X+A2YAzwPnBeRCxPj90AlBKxzomIe9P9Av4W+BJQAL4fEf9Qz3r0tVkzpjP35DYkIIJAJJtBMbp77caPH8+Pn3q1ofdqZmZmzatugZ6kPPA94GRgOfCMpIci4qWKYjcBd0TE7ZJOBK4DvippOjAJmAjsAjwh6ZGIWAvMBPYBDo6IoqTd61WHeqkcti0UIUeyNl6hGNyzeD1zb3+80bdoZmZmGZCr47WPBF6NiM6I2ATcA5xeVeZQoBTV/Kzi+KHAExHRFREfAEuAaemxC4FrIqIIEBGr6liHungz9mBzIck121UMNheT7U2FoGPdaM+mNTMzsz5Rz6HbvYE3Kl4vB46qKrME+ALJ8O4ZwHBJu6X7r5Y0DxgKnACUegL/ADhb0hnAO8DXIuJX1W8u6QLgAoBx48b1VZ36xNzbHy4vrfLbzbsCdK+H5ywWZmZm1kfqGeipxr6oen05cLOkmcCTwJtAV0QskPRp4BckwdxTQFd6zi7Axohol3QmyTN+x271RhG3ALcAtLe3V79vQzlzhZmZmfWHeg7dLid5lq5kLLCiskBErIiIMyPiCOCb6b416e9rI2JiRJxMEjSWeu2WAz9Ktx8EJtSvCmZmZmbNq56B3jPAAZL2kzQIOAd4qLKApNGSSvdwJUnvHJLy6RAukiaQBHML0nI/Bk5Mt48DXqljHczMzMyaVt2GbiOiS9LFwHyS5VVui4gXJV0DdETEQ8DxwHWSgmTo9qL09FZgYZoRYi3JsiulodvrgTslXQasB86vVx3MzMzMmpkiBtTja3XR3t4eHR0djb4NMzMzs+2StCgi2vviWvUcujUzMzOzBnKgZ2ZmZpZRDvTMzMzMMsqBnpmZmVlGOdAzMzMzyygHemZmZmYZ5UDPzMzMLKMc6JmZmZlllAM9MzMzs4xyoGdmZmaWUQ70zMzMzDLKgZ6ZmZlZRjnQMzMzM8soB3pmZmZmGeVAz8zMzCyjHOiZmZmZZZQDPTMzM7OMcqBnZmZmllEO9MzMzMwyyoGemZmZWUY50DMzMzPLKAd6ZmZmZhnlQM/MzMwsoxzomZmZmWWUAz0zMzOzjHKgZ2ZmZpZRDvTMzMzMMsqBnpmZmVlGOdAzMzMzyygHemZmZmYZ5UDPzMzMLKMc6JmZmZlllAM9MzMzs4xyoGdmZmaWUQ70zMzMzDLKgZ6ZmZlZRjnQMzMzM8uougZ6kqZJ+m9Jr0r6Ro3j+0p6XNLzkn4uaWzFsRskLU1/zq5x7j9KWl/P+zczMzNrZnUL9CTlge8BpwKHAl+WdGhVsZuAOyJiAnANcF167nRgEjAROAq4QtKIimu3A231unczMzOzLKhnj96RwKsR0RkRm4B7gNOryhwKPJ5u/6zi+KHAExHRFREfAEuAaVAOIG8EZtXx3s3MzMyaXj0Dvb2BNypeL0/3VVoCfCHdPgMYLmm3dP+pkoZKGg2cAOyTlrsYeCgiVtbtzs3MzMwyoKWO11aNfVH1+nLgZkkzgSeBN4GuiFgg6dPAL4B3gKeALkl7AV8Cjt/um0sXABekLz+StHRHKpFxo4F3G30TA4zbpDa3S21ul9rcLltzm9TmdqntoL66kCKqY68+urD0GeBvImJq+vpKgIi4bhvlhwEvR8TYGsfuAv6NJHj8Z2Bjemgc0BkR+2/nXjoion1H65JVbpetuU1qc7vU5napze2yNbdJbW6X2vqyXerZo/cMcICk/Uh66s4BvlJZIB2WfT8iisCVwG3p/jzQFhHvSZoATAAWREQXsGfF+eu3F+SZmZmZ7azqFuhFRJeki4H5QB64LSJelHQN0BERD5EMwV4nKUiGbi9KT28FFkoCWAuclwZ5ZmZmZtZD9ezRIyJ+Avykat+3K7bvB+6vcd5Gkpm327v+sB7eyi09LLezcbtszW1Sm9ulNrdLbW6XrblNanO71NZn7VK3Z/TMzMzMrLGcAs3MzMwso5oy0JN0m6RVlUumSJoo6WlJz0nqkHRkxbHj0/0vSnoi3bePpJ9JWpbuv6QRdelLfdQugyX9l6Ql6f7ZjahLX+qLdqk4lpe0WNJ/9Gcd6qGv2kXSa5JeKJ3T3/XoS33YJm2S7pf0cvod85n+rktf6qPvloPSfaWftZIubUR9+koffl4uS/ctlXS3pMH9XZe+1IftcknaJi/uTJ8VSVdU/J0slVSQtGt67GNTy9YUEU33A0whSZG2tGLfAuDUdPs04OfpdhvwEjAufb17+vuTwKR0ezjwCnBoo+s2ANpFwLB0uxX4JXB0o+vW6HapOO/rwF3AfzS6XgOlXYDXgNGNrs8Aa5PbgfPT7UEkqwg0vH6NbpeKc/PAW8C+ja5bo9uFJJHAb4Ah6ev7gJmNrtsAaJfDgKXAUJL5BP8JHNDouvVHm1Sd9zngp+l2Hvg1MD79XllCD+KWpuzRi4gngferdwOlfLgjgRXp9leAByLi9fTcVenvlRHxbLq9DljG1pk7mkoftUtExPq0TGv609QPcvZFuwBIGgtMB26t6w33k75qlyzpizZRkpd7Csman0TEpohYXeeuEJE6AAAHZ0lEQVRbr6s6fFZOAn4dEb+tw+32mz5slxZgiKQWksBmBU2sj9rlEODpiPgwklU3niDJoNWUetkmlb4M3J1u9yS17FbqOuu2n10KzJd0E8mQ9DHp/gOBVkk/J+m5+25E3FF5oqRPAUeQ9F5lTa/bRck6houA/YHvRYTbJfH3JDmWh/fzvfanHWmXABYoWSbpnyIia7Poetsm40ky+vyLpMNJ/pYuiSRvd5bs8Hcuybqqd5NNvWqXiHgzLfs6sIFkzdgFDbjveuvt52UpcK2StKgbSHq8mvrRkBq21SYASBoKTCNJ/Qq1U8setb03acoevW24ELgsIvYBLiP91zRJMDuZpCdmKnCVpANLJynJyPEj4NKIWNu/t9wvet0uEVGIiInAWOBISYf1/23XXa/aRdKfAKsiYlFD7rb/7Mjf0WcjYhJwKnCRpCn9fM/11ts2aSEZovl+RBwBfAD07Fma5rKj37mDgM8DP+zf2+03vf1uGUXSK7MfsBfwCUnn9f9t112v2iUilgE3AI8Bj5IMU2ZtPd1ttUnJ54D/HxGlnsCepJbdSpYCvRnAA+n2D0m6OCGJeB+NiA8i4l2ShZkPB5DUShLk3RkRD5BNvW6XknS46eck/6LImt62y2eBz0t6jaS7/ERJ/9a/t9wvev15iYgV6e9VwIMV52RFb9tkObC8oif8fpLAL2t29LvlVODZiHi73+60f/W2Xf4Y+E1EvBMRm9NzjyF7duS75Z8jYlJETCEZ9vxVP99zvW2rTUqqe76XA/tUvB5LD4b5sxTorQCOS7dPpPsD8e/AsZJa0m7Qo4Blkkp5c5dFxLx+v9v+09t2GSOpDUDSEJIvoZf7+Z77Q6/aJSKujIixEfEpkj++n0ZEFv/V3dvPyyckDQeQ9AngFJIhlyzp7WflLeANSaWk5CeRPGyeNb1ql4rzKp85yqLetsvrwNGShqb/XzqJLdsrK3r9eZG0e/p7HHAm2fvcbKtNkDQyPfbvFeXLqWXTnvFzgIe2+y7bm60xEH9I/mOvBDaTRLj/C/gjkmdhlpA8aze5ovwVJF+0S0mGaEnLB/A88Fz6c1qj6zYA2mUCsDhtl6XAtxtdr4HQLlXXO55szLrti8/L+LTsEuBF4JuNrlej2yTdP5HkeaLngR8DoxpdtwHSLkOB94CRja7TAGuX2ST/oF4K/F9gl0bXbYC0y8J0/xLgpEbXq5/bZCZwT43rnEaySsive/p968wYZmZmZhmVpaFbMzMzM6vgQM/MzMwsoxzomZmZmWWUAz0zMzOzjHKgZ2ZmZpZRDvTMrKlIKkh6TtISSc9KOibd/ylJS9Pt4yWtkbRY0n9LejLNbtLb97pR0suSnpf0YGmNyYrj4yStl3R5xb7XJL2Q3uNWKZskXS4pJI1OX4+U9P/S+rwo6c/S/ftKWpRe50VJf1FxjUcryv8gTVtoZrYVB3pm1mw2RMTEiDgcuBK4bhvlFkbEERFxEPA14GZJJ/XyvR4DDouICSRrV11Zdfw7wCM1zjshvcf2yp2S9gFOJlkkt+Qi4KW0PscDf5cuhroSOCaSdIRHAd+QtFd6zllp+cOAMcCXelkvM9tJONAzs2Y2Avjd9gpFxHPANXQnB++RiFgQEaX8mk+TpBwCQNKfAp0kC0X31HeAWWyZnzKA4WlWhGEkqZ66ImJTRHyUltmFiu/r6M7L3QIMogf5Ls1s5+RAz8yazZB0OPNl4FZgTg/PexY4+Pd43z8n7b1L0739FUlGg2oBLEiHXS8o7ZT0eeDNiFhSVf5m4BCSdEgvAJdERDE9Zx9JzwNvADdEmlc4PTYfWAWsI8mna2a2FQd6ZtZsSkO3BwPTgDvS3rDt6UmZ2idK3wS6gDvTXbOB70TE+hrFPxsRk4BTgYskTUlzeH4T+HaN8lNJUjDuRZI67WZJIwAi4o102Hh/YIakPUonRcRU4JMkvX0n7mjdzCzbHOiZWdOKiKeA0STPqW3PEdRIFi9pftpDeGutkyTNAP4EODe6c0YeBcyV9BpwKfDXki5O72lF+nsV8CBwJPAHwH7AkvScscCzkvYE/gx4IBKvAr+hqucxveaLwLFV+zeSJDU/vQf1N7OdUEujb8DMbEdJOhjIA+8BQz+m3ATgKuD86mNpz9i2zptGMkR7XER8WHHOsRVl/gZYHxE3p0O6uYhYl26fAlwTES8Au1ec8xrQHhHvSnodOAlYmPbYHQR0ShoLvBcRGySNAj4LzJM0DBgeESsltZAkOV/4sQ1lZjstB3pm1myGSHou3RYwIyIKadDzUUW5YyUtJgkAVwFfi4jHe/leN5MMjT6Wjg4/HRF/8THl9wAeTMu2AHdFxKPbeY85wL9KeiGtz1+lAeDJJDNwI91/U0S8kAaDD0nahSTI/Snwg17Wy8x2EuoeiTAza16STicZXj2r0fdiZjZQuEfPzJqepGtInlOb2eBbMTMbUNyjZ2ZmZpZRnnVrZmZmllEO9MzMzMwyyoGemZmZWUY50DMzMzPLKAd6ZmZmZhnlQM/MzMwso/4HEunbWLn+qrgAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(10,6))\n", "\n", "dy = 0.004\n", "plt.plot(df['BJD - 2454833'], df[' Raw Flux']+dy, 'ko', ms=4)\n", "plt.plot(df['BJD - 2454833'], df[' Raw Flux']+dy, 'o', color='#3498db', ms=3)\n", "plt.plot(df['BJD - 2454833'][bi], df[' Raw Flux'][bi]+dy, 'o', color='r', ms=3)\n", "plt.plot(df['BJD - 2454833'][gi], corr_fluxes*bspl(times[gi]), 'o', color='k', ms = 4)\n", "plt.plot(df['BJD - 2454833'][gi], corr_fluxes*bspl(times[gi]), 'o', color='#e67e22', ms = 3)\n", "\n", "plt.xlabel('BJD - 2454833')\n", "plt.ylabel('Relative Brightness')\n", "\n", "plt.xlim(1862, 1870)\n", "plt.ylim(0.994, 1.008);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Following **Figure 5** of Vanderburg & Johnson 2015." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*The end.*" ] } ], "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.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }