{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Parameter inference" ] }, { "cell_type": "raw", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "This example illustrates parameter inference for a single model.\n", "(Check also the `model selection `_ example if you're interested\n", "in comparing multiple models.)\n", "\n", "This notebook can be downloaded here:\n", ":download:`Parameter Inference `." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# install if not done yet\n", "!pip install pyabc --quiet" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's start by importing the necessary packages:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import os\n", "import tempfile\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "import pyabc\n", "\n", "pyabc.settings.set_figure_params('pyabc') # for beautified plots" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Problem definition" ] }, { "cell_type": "markdown", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Our model is about as simple as it gets. We assume a Gaussian model $\\mathcal{N}(\\mu, 0.5^2)$ with a single parameter $\\mu$ and fixed variance $0.5^2$." ] }, { "cell_type": "raw", "metadata": { "raw_mimetype": "text/restructuredtext", "tags": [] }, "source": [ "Parameters (:class:`Parameter `) that are passed to the model are essentially dictionaries with keys the parameter ids and float values, generated in pyABC from the prior or a proposal distribution. In this case, there is only a single key, `mu`.\n", "\n", "The model returns data in form of a dictionary, with keys denoting different outputs. In this case, there is just a single key `data`. Values can be e.g. floats, integers, strings, numpy arrays, or pandas data frames, see the :ref:`data store API documentation ` for details.\n", "It might look like overly complicated to return a whole dictionary, but as soon as heterogeneous data are used, this starts to make a lot of sense." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def model(parameter):\n", " return {\"data\": parameter[\"mu\"] + 0.5 * np.random.randn()}" ] }, { "cell_type": "raw", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "We then define the prior for the mean to be uniform over the interval :math:`[0, 5]`. A :class:`RV ` defines the prior for a single parameter, while a :class:`Distribution ` defines the prior over a possibly higher-dimensional parameter space. The ``RV`` class is a shallow wrapper around `scipy.stats `_ variables. In case of multiple independent priors, simply multiple RVs are passed to the distribution, while for non-independent or constrained priors, the ``Distribution`` class can be derived from." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "prior = pyabc.Distribution(mu=pyabc.RV(\"uniform\", 0, 5))" ] }, { "cell_type": "markdown", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "
\n", "Note: A common mistake is that the scipy uniform distribution takes arguments `lower_bound, width`, the second argument not being the upper bound. For example, `RV(\"uniform\", 1, 5)` is uniform over the interval $[1,6]$. Check the `scipy.stats` package for details of the definition.\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We also need to specify a distance function, measuring closeness of simulated and observed data.\n", "We just take the absolute value of the difference here." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def distance(x, x0):\n", " return abs(x[\"data\"] - x0[\"data\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ABC inference" ] }, { "cell_type": "raw", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Now we create the :class:`ABCSMC ` object, the main inference class. It defines an ABC-SMC algorithm, which sequentially generates particle populations of size :math:`N`, sampling in generation :math:`t` from a perturbation of accepted particles in generation :math:`t-1` via importance samling, thus from a successively improved posterior approximation, thus allowing to gradually reduce an acceptance threshold :math:`\\varepsilon` on the permitted distance, while maintaining high acceptance rates.\n", "\n", "We pass the model, the prior and the distance to the ``ABCSMC`` class, and use a population size of :math:`N=1000`." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ABC.Sampler INFO: Parallelize sampling on 4 processes.\n" ] } ], "source": [ "abc = pyabc.ABCSMC(model, prior, distance, population_size=1000)" ] }, { "cell_type": "raw", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "To get going, we have to specify where to log the ABC-SMC runs. pyABC uses an SQL database, see the :ref:`data store documentation `.\n", "We can later query the database with the help of the :class:`History ` class. \n", "Usually you would now have some measured data to base your analysis on. Here, we just assume that the measured data is 2.5." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ABC.History INFO: Start \n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "db_path = os.path.join(tempfile.gettempdir(), \"test.db\")\n", "observation = 2.5\n", "abc.new(\"sqlite:///\" + db_path, {\"data\": observation})" ] }, { "cell_type": "markdown", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Let's start the sampling now. We'll sample until the acceptance threshold epsilon drops below 0.1. We also specify that we want a maximum number of 10 populations.\n", "So whatever is reached first, `minimum_epsilon` or `max_nr_populations`, will stop further sampling.\n", "\n", "The acceptance thresholds are automatically calibrated and updated. This and further components such as proposal kernels and parallelization strategy (on Linux, per default multi-processing) can be modified via arguments to the ``ABCSMC` class, see the API documentation or further examples.\n", "\n", "For the simple model we defined above, this should only take a couple of seconds:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ABC INFO: Calibration sample t = -1.\n", "ABC INFO: t: 0, eps: 1.30729591e+00.\n", "ABC INFO: Accepted: 1000 / 1996 = 5.0100e-01, ESS: 1.0000e+03.\n", "ABC INFO: t: 1, eps: 6.49162964e-01.\n", "ABC INFO: Accepted: 1000 / 2318 = 4.3141e-01, ESS: 9.3941e+02.\n", "ABC INFO: t: 2, eps: 3.23197466e-01.\n", "ABC INFO: Accepted: 1000 / 3379 = 2.9595e-01, ESS: 5.6505e+02.\n", "ABC INFO: t: 3, eps: 1.61082773e-01.\n", "ABC INFO: Accepted: 1000 / 6010 = 1.6639e-01, ESS: 6.8310e+02.\n", "ABC INFO: t: 4, eps: 7.86792075e-02.\n", "ABC INFO: Accepted: 1000 / 11690 = 8.5543e-02, ESS: 7.3940e+02.\n", "ABC INFO: Stop: Minimum epsilon.\n", "ABC.History INFO: Done \n" ] } ], "source": [ "history = abc.run(minimum_epsilon=0.1, max_nr_populations=10)" ] }, { "cell_type": "markdown", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "The `History` object returned by `ABCSMC.run` can be used to query the database.\n", "This object is also available via `abc.History(\"sqlite:///\" + db_path)`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visualization and analysis of results" ] }, { "cell_type": "markdown", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Now, we can visualize the obtained Bayesian posterior approximation.\n", "The vertical line indicates the location of the observation, while the curves give the ABC posterior at different generations (usually, only the last one is of interest).\n", "Given our model, we expect the mean to be close to the observed data, with some uncertainty. For more-dimensional parameter vectors, pyABC also offers `plot_kde_2d` and `plot_kde_matrix` plots." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "for t in range(history.max_t + 1):\n", " df, w = history.get_distribution(m=0, t=t)\n", " pyabc.visualization.plot_kde_1d(\n", " df,\n", " w,\n", " xmin=0,\n", " xmax=5,\n", " x=\"mu\",\n", " xname=r\"$\\mu$\",\n", " ax=ax,\n", " label=f\"PDF t={t}\",\n", " )\n", "ax.axvline(observation, color=\"k\", linestyle=\"dashed\")\n", "ax.legend();" ] }, { "cell_type": "raw", "metadata": { "raw_mimetype": "text/restructuredtext", "tags": [] }, "source": [ "pyABC also offers various other visualization routines in order to analyze the parameter estimation run, see the `visualization API documentation <_api_documentation>` for a full list.\n", "In general, it is necessary after an ABC run to analyze the posterior estimation for e.g. convergence and stability, by assessing posterior approximations at different generations, as well as effective population sizes, possibly across multiple runs." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1gAAAEYCAYAAABBWFftAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8/fFQqAAAACXBIWXMAAAsTAAALEwEAmpwYAAB1mUlEQVR4nO3dd1yVdfvA8c/FUnGAiuDAFQ4wt7gzTaysNFvONDV32Xx6ysavx2xpWZnZk9scodl6srTMHLkHjizDhRMXTkRR5vf3x7lFVFDEAzccrvfrdV6e873XdSPny33d93eIMQallFJKKaWUUrfOze4AlFJKKaWUUspVaIKllFJKKaWUUk6iCZZSSimllFJKOYkmWEoppZRSSinlJJpgKaWUUkoppZSTaIKllFJKKaWUUk6iCZZyOhF5TUQmO3F/y0Skv7P252wi0kZEou2OQ6mCSEQeF5Hf0n02IlLNzpjS0/pBqVsjIu+IyAkROWp9flhEDorIORFp4MTjtBKRHc7aX16SE/WQK/+8nEETLBcmIvtE5IJVCR0VkS9FpFhOH9cY854xJs8mREope1xVJ116jbuVfRpjvjLG3OOsGJVSuet69YKIVAL+BdQyxpS1NhkNDDXGFDPGbL6F415xM8YYs8IYU/NWzqUg0Z/X9WmC5fo6GmOKAfWBBsCrdgYjIh52Hl8pZbuO1oXRpddQuwNSStkus3qhEnDSGBOTbt3KwLbcD1GprNMEq4AwxhwFFuJItAAQkWYislpEzojInyLSJt2yqiLyh4jEicgiERknIrOsZdc8arbuQLWz3g9Pt24V6y5RPxE5ACyxyp8UkUgROS0iC0Wkcrp93S0i20Uk1rqLJZmdl4g0EZEIETkrIsdE5ON0y76xntzFishyEbk93bIvReS/IvKLdbdslYiUFZExVkzb0zc9sM7vVRH5x1o+TUQKZxJTeRH5TkSOi8heEXk2K/EqVZCJSB/rezjO+s5uF5Gwq5bvseqkvSLyeLrylZns00dEZljfxf0i8oaIuKXfTkRGW9/pvSJyXyb7eUVEvr2q7FMRGWu972vVZ3FWjIOuc55X3DW36qJ30n3uICJbrHp5tYjUvSqOQ9ZxdqT/+SjlaqxrikVAeevv9GwROQe4A3+KSJS13vX+5rqLo9tClPW92SgiFUVkubXKn9a+u0q6a5ssfOd9RGSKiByxvpPviIh7JueRr65TMlj3fmufcda5vmSVp/95dZUrn0AmiMgya1khq549YJ3/eBEpktnxXIUmWAWEiAQC9wG7rc8VgPnAO0Ap4CXgOxEpY20SDmwE/IC3gd63GEJrIAS4V0Q6Aa8BjwBlgBXAbCsuP+B74A3r2FFAy+vs91PgU2NMCSAImJtu2S9AdcAf2AR8ddW2XdIdJwFYY63nB3wLXJ38PA7cax2nhrXtFayLt5+AP4EKQBjwvIjcm4V4lSromuL4zvsB/wG+F5FSIlIUGAvcZ4wpDrQAtmRhf58BPsBtOOqgJ4C+Vx1vh3W8D4ApIpLRDZ05wP0iUhwcF2046o9wa3kM0AEoYe3/ExFpmMVzTmNdLE0FBgGlgQnAPOsCpSYwFGhs/QzuBfbd7DGUyi+MMb/juG45bD3V6m61yAGoZ4wJysLf3BeB7sD9OL6fTwLxxpg70+2nmDHm66sOf6Pv/JdAMlANR+uge4DMukbkt+uUq00BBln1Tm2sG+XpGWO+vvT0ESgP7MG6rgNGWrHUx/HzqgC8mcmxXIcxRl8u+sLxx/ccEAcYYDHgay17BZh51foLcSRSlXBUHEXTLQsHZlnv2wDRGRyrnfV+eLp1q1jHvi3dur8A/dJ9dgPicTz2fwJYm26ZANFA/0zOcTnwFuB3g5+FrxWHj/X5S2BSuuXPAJHpPtcBzlx1foPTfb4fiLr654Hjgu3AVcd+FZh2M/HqS1+u+EpXJ51J9xpgLesDHAYk3frrgV5AUWvdR4EiV+2zD7Ay3WeD44+4O5CIo+/GpWWDgGXpttudbpm3tW3ZTGJfCTxhvb/70vc/k3X/Bzxnvb+ivrwUX7rPXwLvWO+/AN6+al87cCSH1XAkcu0AT7v/L/WlL2e9blAvXPH9scrSvkNZ+Ju7A+iUyXGv/i5e/V3N8DsPBOBIdoqkW7c7sDST4+Sr65QM4jpg1Z0lrirP6P/GDfgZ+ML6LMB5ICjdOs2BvXb/3uX0S59gub6HjOOuQxsgGMddD3AkM52tZihnROQMcAdQDsfdh9PGmPPp9rP/FuM4mO59ZeDTdMc9heNLWME6dtq6xvFtTL/t1frhuDOyXUQ2iEgHSGsWMNJqFnCWy3d6/dJteyzd+wsZfL56QJD0cey3Yr1aZRzNGdL/XF/DUSFnGq9SBchDxhjfdK9J6ZYdsr7zl+wHylt1UVdgMHBEROaLSPANjuMHeHJl3bUfRz1zydFLb4wx8dbbzAYCCsdxEQXQg8t3shGR+0RkrYicsr7z93NlXZNVlYF/XVV/VMTxM9gNPI/jBlaMiMwRkYzqIKXyo+vVC9dzo7+5FXE8Fc+OzL7zlXHULUfSHXMCjqdQGclv1ylXexRHnbZfHF1HmmeyHsC7QHHgUpPDMjhuXm1Md6xfrXKXpgMOFBDGmD9E5Esco+88hONLONMYM+DqdcXRH6qkiBRNl2RVwnFnBRx3I7zTre/Ojb8s6S+aDgLvGmOufhSOiFTHUSFe+izpP2dwXruA7tYj70eAb0WktPW+E467vftwNBM6zXX6c2VB+jgq4bjbfrWDOO7MVL+ZeK9KZpUqqCqIiKRLsioB8wCMMQuBhVbb/XeASUCr6+zrBJCE42Lin3T7O5TN2L4BPrKaWz+M4y4sIlII+A7H0/cfjTFJIvI/Mq9r4klXfwJlcTylh8t147sZbWiMCQfCRaQEjgu6UTie8ClVUF33b661PAj4Oxv7zvA7b+0zAccTqeQb7SS/XadczRizAegkIp44minPJYPrMhHphiMhbWyMSbKKT+BIBG83xmS37s2X9AlWwTIGuFtE6gGzgI4icq91F6Ww1WEx0BizH4gA3hIRLxG5A+iYbj87gcIi8oD1hXsDKHQTcYwHXhWrM6c4Oot2tpbNB24XkUfEMeLgszguQDIkIj1FpIwxJhVHswKAVBx3UBKAkzguZt67ifgy87SIBIpIKeB14Oo22+Bo0hQnjg6yRayfbW0RaXyDeJVSjjvAz4qIp1UnhAALRCRARDpZfbEScDQnuu73xhiTguNC4F0RKW7dOHoRR91304wxx4FlwDQcFyeR1iIvHPXfcSBZHANlXG/Y+C1AD6tuaI+j+d8lk4DBItJUHIpa9WxxEakpIm2thO4ijosWrTtUQXfdv7nAZOBtEalufafqWskNOJ4G3ZbZjjP7zhtjjgC/4Ui+SoiIm4gEiUjrjPaT365TrordSxxzDfpYSdNZMqh3xNF/9DMcTyKPXyq3znkSjn6p/ta6FSTz/l4uQxOsAsT6pZ8BvGmMOYjjzslrOC4MDgL/5vLvRA8c7XRP4ehsPiPdfmKBp3BUXIdwPNHK8gR2xpgfcNx5nWM9Fv8bR0dWjDEngM44OkWexNH5c9V1dtce2CaOkYU+BboZYy5Y8e634vsHWJvV+K4jHEelugdHk4N3rl7BuqjrgKMz514cd28m47gzdb14lSoofpIrR5v6Id2ydTi+8ydwNDV5zBhzEke99CKOu7GncCQlQ7JwrGdw1E97cPSnCMcxiER2heO425zWPNAYE4fjRtBcHHefe2A9dcvEczhuWJ3B0SH9f+n2FQEMAMZZ+9qNo68YOJK4kTh+NkdxJKO2TruhlBNdr17IVBb+5n6M47v5G47kYApwaQS74cB0q+lal0wOcc133vIEjpsr/+D4rn6Lo4tFRvLbdcrVegH7rOu1wTjqrat1AkoCK9P9H/5iLXsFR1221trH74DLz58lVzZ3VypjIjIcR2fQnnbHYgcR2YdjoI3f7Y5FKVckIn1wfMfusDsWpZTKb/Q6JW/RJ1hKKaWUUkop5SSaYCmllFJKKaWUk2gTQaWUUkoppZRyEn2CpZRSSimllFJOUuDmwWrfvr359ddf7Q5DqYLsVub4yBe0nlHKdlrPKKVyQ4Z1TYF7gnXixAm7Q1BKuTitZ5RSOU3rGaXyrgKXYCmllFJKKaVUTtEESymllFJKKaWcRBMspZRSSimllHKSAjfIhXIdSUlJREdHc/HiRbtDURkoXLgwgYGBeHp62h2KUkoppVSu0QRL5VvR0dEUL16cKlWqIOLyA0blK8YYTp48SXR0NFWrVrU7HKWUUkqpXKNNBFW+dfHiRUqXLq3JVR4kIpQuXVqfLmZg/B9RrI66cvSv1VEnGP9HlE0RKaWyS0SmikiMiPydrqyUiCwSkV3WvyWtchGRsSKyW0S2ikjDdNv0ttbfJSK9bzUurWeUspcmWCpf0+Qq79L/m4zVDfRhaPjmtIuf1VEnGBq+mbqBPjZHppTKhi+B9leVDQMWG2OqA4utzwD3AdWt10DgC3AkZMB/gKZAE+A/l5Ky7NJ6Ril7aRNBpZTKRS2C/BjXowFPzdpE46ql2Lj/NON6NKBFkJ/doSmlbpIxZrmIVLmquBPQxno/HVgGvGKVzzDGGGCtiPiKSDlr3UXGmFMAIrIIR9I2O7txXapnnv5qE7Ur+PD3oVg+f7yh1jNK5RJNsJTLqDJsvlP3t2/kAzdc59ixY7zwwgusXbuWkiVL4uXlxcsvv8zDDz/s1FiyatmyZXh5edGiRQsAxo8fj7e3N0888YRT9n/27Flq1arFQw89xLhx45yyz4KoRZAfFUt5s+ifY7Sq7qcXPUq5lgBjzBHr/VEgwHpfATiYbr1oqyyz8muIyEAcT7+oVKnSdYNoEeRHy2p+/Lz1CN5e7uw/GU+TKql4uGvjJaVymiZYmXD2xbpyvkkPliMp+kyO7X/rDfZtjOGJhzrS8bFuDPvgvwAcjj7AskW/EtQ45+JKTk7GwyPjr+7X837F27soxSrVAqBFh27Ajc8lq0b9Zxh1Q5tx4lzCNfusG+jrlGMUBKujThB9Op7byhRlxa4TvPr9Vt5/pK7dYSmlnMwYY0TEOHF/E4GJAKGhodfd7+qoE6yOOsmjjSrw4+bDvPr9X0xesYdX2gdzd60AbcatVA7SBEupbFq/ajmenp506fVkWln5wEr06DsQgJSUFD59fzgRa1aRmJhA19796dyzLxvWrGT8xyPxLVWa3TsiqVWnHu+NnYiI8M/WLYwe8Trx8efxLVmatz/+nDIBZenXuQM1b6/D5vVrad/pUSrfFsSksR+RlJSIb8lSvD92IhcvXuSbWdNwc3Nn/g9zGTZiFOtWLcfbuyi9Bz/D9m1/8c6rL3LxQjyBlasyYvQ4Svj60q9zB2o3aMSG1SuJOxvLWx+OpWHTFtec7z9bt3DyeAwt27Rj29bNufZzdjWX+kJ8/nhDGlcpRa8p65i9/iBJyYYPO9fVix6l8r9jIlLOGHPEagIYY5UfAiqmWy/QKjvE5SaFl8qX3UoAl+qZS82PH20QyMCZG4lPTGHgzI2EVi7Jq/cH06hyqVs5jFIqE/qcWKls2r1zOyG162W6/Ic5MylW3Ifw+UsI/3kJ34fPIPrAfgC2b9vKy8Pf44cla4k+sJ/NG9aSlJTEyDdfZvSE6cxZsIyHuj7OZx+8k7a/pMREZi9YSu9BQ2nYuDmz5i1i7q/Laf/gI0z7YiwVKlaic8++9Oo/hLkLV1yTJL3x/GCef3U43y5aRfXgWowfMyptWUpyCuE/L+bl4e8xfswH15xLamoqH739Bv/6v7dv9cdW4G2Njk276PF0d+Or/s1oVd2PbzdFM/q3HTi6Zyil8rF5wKWRAHsDP6Yrf8IaTbAZEGs1JVwI3CMiJa3BLe6xyrItfT0D0KKaHxOfaESvZpV59+Ha7D8Vz6NfrGHQzAh2x5y7lUMppTKgT7CUcpL3Xn+JzRvW4unpRfj8JaxZvpSdkdv4fYHjb2tc3FkO7I3C08uL2vUbEVDO0cS+Zq3aHI4+QPESPuzesZ3BPRz9t1JSUvDzL5u2/3s7PpL2/tiRQ/z7qSc5EXOUpKQkKlSsfN3Y4s7GEnc2ltDmLQF48LHuvDSkT9rysPs6AFCrTn0OHzxwzfZfz5jMHW3vTotZZd/g1kFXfHZ3E6b3bcJrP/zF50ujSEhK5fUHQvRJllL5gIjMxvH0yU9EonGMBjgSmCsi/YD9QBdr9QXA/cBuIB7oC2CMOSUibwMbrPVGXBrwIruurmfA0SfrUsL1cIMKTF6xlwl/RPF75HK6hFbkhXbV8S9R+FYOq5SyaIKlVDZVqxHM4gXz0j6/9u5oTp86SY8H7gIcfbSGjRhFyzZhV2y3Yc1KPL280j67ubuTkpwCxhBUI5iZP/6W4fGKeHunvR/55iv0GvAUbe65P63J4a3w8ip0OZaU5GuWb924gU3r1zB3xhTiz58nKSkJ76JFef7V4bd0XOXg5ia893AdCnm4MXnlXhJTUhne8Xbc3DTJUiovM8Z0z2RR2NUF1uiBT2eyn6nAVCeGdl3eXh48G1adHk0rMW7Jbmat3c//Nh+if6uqDLzzNooX9sytUJRySdpEUKlsatLyThISEpg7Y0pa2cUL8WnvW7Ruyzczp5KUlATAvj27iY8/n+n+qgRV5/TJE/y5cT0ASUlJ7N4RmeG6cXFn8S9bHoB531weyde7aDHOn7+2uUfxEj6U8PFl07rVAPz8/deENm2Z1VPl/c8msXDd3/yyZisvvvE2HR7tqsmVk7m5CcMfvJ0BraoyY81+XvvhL1JTtbmgUirn+BUrxPAHb2fxv1oTFuLPZ0t20/rDZXy5ai+Jyal2h6dUvqVPsJTLmDc06wmDM4gIYybP4sO3XmPa+LGULOVHEW9vnrMSj0e6P8Hhgwfodl9rjDGULO3HmMmzMt2fp5cXoydMZ9Sbr3Au7izJKSn07DeYajVDrll3yAvDeGlIH0r4+NKkRSsOH3T07Wp9d3teGtSbZb8tYNiIUVds8/YnX1we5KJSFUZ89LnzfhjKKUSE1+4PoZCHO+OW7iYxOZUPHqurwyorpXJU5dJFGdejIQNanWHkL9sZ/tM/TF21j5furUmHOuX0abpSN0kKWofq0NBQExERccP1dJj2vG/Sg+UIqHSb3WEoS0bDtEdGRhISck2C6PJ/qbNaz1zPZ4t38dGinXSoW45PutbHU5MspW6G1jPZZIxh2c7jjPplO9uPxlGngg+v3hdMi2o6X59SGciwrsmxv9giUlFElorIPyKyTUSes8qHi8ghEdlive5Pt82rIrJbRHaIyL3pyttbZbtFZFi68qoiss4q/1pEvFBKKRfwTFh1Xr0vmJ+3HuHprzaRkJxid0hKqQJARLirpj/zn23FR53rcfJcAj0mr6P31PVEHjlrd3hK5Qs5eUs0GfiXMaYW0Ax4WkRqWcs+McbUt14LAKxl3YDbgfbAf0XEXUTcgc+B+4BaQPd0+xll7asacBrol4Pno5RSuWpQ6yCGd6zFb/8cY/DMjVxM0iRLKZU73N2ERxsFsuSlNrx2fzBbDp7h/rEreHHuFqJPx994B0oVYDmWYBljjhhjNlnv44BI4HpjPHcC5hhjEowxe3EMY9rEeu02xuwxxiQCc4BO4hjDuC3wrbX9dOChHDkZpZSySZ+WVXnv4Tos23mc/tMjuJCoSZZSKvcU9nRn4J1BLP/3XQxsdRs/bz1C24/+4N35/3AmPtHu8JTKk3KlUb+IVAEaAOusoqEislVEplqT6oEj+TqYbrNoqyyz8tLAGWNM8lXlGR1/oIhEiEjE8ePHnXFKSimVa3o0rcQHj9ZlVdQJek9bz7mEa4fSV0qpnOTj7cmr94ew9KU2PFivPJNX7uXOD5Yy/o8ofbqu1FVyPMESkWLAd8DzxpizwBdAEFAfOAJ8lNMxGGMmGmNCjTGhZcqUyenDKaWU03UOrciYrvXZuP80T0xZx9mLSXaHpJQqgCr4FmF053r88lwrGlUuychftnPX6GV8E3GQFJ1aQikghxMsEfHEkVx9ZYz5HsAYc8wYk2KMSQUm4WgCCHAIqJhu80CrLLPyk4CviHhcVa6UUi6pU/0KjOvegK3RsfScvE6b5yilbBNctgTT+jYhfEBT/IsX4t/fbuWBsStYuj2GgjZCtVJXy7F5sKw+UlOASGPMx+nKyxljjlgfHwb+tt7PA8JF5GOgPFAdWI9j+MPqIlIVRwLVDehhjDEishR4DEe/rN7Ajzl1Pirvqzu5slP3t7X//huuc/J4DB++9RpbN0dQwscXT08v+gx+lrD7Ojg1lqzasGYlnp6e1A9tCsDcmVMpUsSbjo91u6X9Ho4+wAsDemFSU0lKTqZ7nwF06fWkM0JWN+m+OuUY7+7GU19tovukdczq14TSxQrZHZZSqoBqEeTH/55uyfy/jvDhwh30/XIDzW4rxav3hVCvoq/d4Slli5ycaLgl0Av4S0S2WGWv4RgFsD5ggH3AIABjzDYRmQv8g2MEwqeNMSkAIjIUWAi4A1ONMdus/b0CzBGRd4DNOBI6pXKFMYbn+/ek42PdGDluMuBIRJYt+jVHj5ucnIyHR8Zf3Yg1K/H2LpqWYDkrCSrjX5aZ//sNr0KFiD9/jkfbtaDN3ffhX7acU/afl4lIUeC/QCKwzBjzlc0h0a5WAJN6hzJwRgTdJ61lVv+m+BcvbHdYSqkCSkToULc899Qqy+z1Bxi7eBedPl/FA3XK8e97a1LFr6jdISqVq3IswTLGrCTjybcWXGebd4F3MyhfkNF2xpg9XG5iqFSuWr9qOZ6enlckMeUDK9Gj70AAUlJS+PT94USsWUViYgJde/enc8++bFizkvEfj8S3VGl274ikVp16vDd2IiLCP1u3MHrE68THn8e3ZGne/vhzygSUpV/nDtS8vQ6b16+lfadHqXxbEJPGfkRSUiK+JUvx/tiJXLx4kW9mTcPNzZ35P8xl2IhRrFu1HG/vovQe/Azbt/3FO6++yMUL8QRWrsqI0eMo4etLv84dqN2gERtWryTubCxvfTiWhk1bXHGunl6Xp5hLTEwkNTU1d37IOUREpgIdgBhjTO105e2BT3HczJlsjBkJPAJ8a4z5SUS+BmxPsABa1yjDtL6N6fdlBN0mrCV8QDPK+miSpZSyj5eHG71bVOGRhhWYtHwPk1bsZeG2o/RoWolnw6rjp0/bVQGRK6MIKuWKdu/cTkjtepku/2HOTIoV9yF8/hLCf17C9+EziD7gaHa4fdtWXh7+Hj8sWUv0gf1s3rCWpKQkRr75MqMnTGfOgmU81PVxPvvgnbT9JSUmMnvBUnoPGkrDxs2ZNW8Rc39dTvsHH2HaF2OpULESnXv2pVf/IcxduOKaJOmN5wfz/KvD+XbRKqoH12L8mFFpy1KSUwj/eTEvD3+P8WM+yPB8jh6O5rG7W3Jvk9r0HfJcfn969SWO+fbSXGfOvUAuj2Sap4bKahHkx4x+TYiJS6DLhDU6N41SKk8oXtiTF++pyR8vt6Fr44p8te4ArT9Yyqe/7+K8joKqCoCcbCKoVIHy3usvsXnDWjw9vQifv4Q1y5eyM3Ibvy9wdA2MizvLgb1ReHp5Ubt+IwLKOWYVqFmrNoejD1C8hA+7d2xncI+HAccTMD//smn7v7fjI2nvjx05xL+fepITMUdJSkqiQsXr9z+LOxtL3NlYQpu3BODBx7rz0pA+acsv9RmrVac+hw8eyHAfZcsH8u2iVcQcPcLz/Xty9wOdKF3G/yZ/SnmDMWa5NX1Eemlz7gGIyBwc8/NF40iytnCdm1IiMhAYCFCpUiXnB52JxlVKMat/U56Yso6uE9YSPqAplUtrcxyllP38ixfm3Yfr8OQdVfnw1x188vtOZq7dz3PtqtOtcUU83fU+v3JN+putVDZVqxFM5N9/pn1+7d3RTJzzI6dPnQAcfbSGjRjF3IUrmLtwBb+s/pMWrdsCVza5c3N3JyU5BYwhqEZw2vrf/b6aCeHfp61XxNs77f3IN1+he5/+fPf7av5v5CckJly8pXPx8ip0OZaU699d9C9bjmo1Q9i0fs0tHTMPymzOve+BR0XkC+CnzDa2czqI+hV9CR/QjPjEZLpMWEPU8XO5enyllLqeoDLFGN+rEd8NaUFVP2/+739/c+8ny/nlryM64qBySZpgKZVNTVreSUJCAnNnXB5b5eKFy020WrRuyzczp5KU5JivaN+e3cTHn890f1WCqnP65An+3LgegKSkJHbviMxw3bi4s/iXLQ/AvG9mp5V7Fy3G+fPXXlwXL+FDCR9fNq1bDcDP339NaNOWWT1Vjh05xMULFwA4e+YMmzespcpt1bK8fX5mjDlvjOlrjBmSFwa4yEztCj7MHtiMlFRD1wlr2XE0zu6QlFLqCo0ql2TuoOZMfiIUdzdhyFebeOSL1azfe8ru0JRyKm0iqFxGVoZVdyYRYczkWXz41mtMGz+WkqX8KOLtzXOvDgfgke5PcPjgAbrd1xpjDCVL+zFm8qxM9+fp5cXoCdMZ9eYrnIs7S3JKCj37DaZazZBr1h3ywjBeGtKHEj6+NGnRisMHHefe+u72vDSoN8t+W8CwEaOu2ObtT764PMhFpSqM+OjzLJ/rnl07+ejtNxARjDH0HjSU6iG3Z3n7fCKzOffyjeCyJZgzsDk9Jq2l28Q1zOzXlNoVfOwOSyml0ogI7WoF0KZmGb7bFM3Hi3bSZcIa2oX480r7YKoHFLc7RKVumRS0R7OhoaEmIiLihutVGTY/F6JRt2LSg+UIqHSb3WEoS91A32vKIiMjCQm5JkHMaHTRXGf1wfr50iiC1qTlO4EwHInVBhxz7m3LdCeZyGo9k1P2nThPj0lrOZeQzMx+TXUuGlUQ5Yl6JifZXc84y4XEFKau2sv4ZVGcT0zmsUaBvHB3Dcr5FLE7NKWyIsO6RpsIKqUKHBGZDawBaopItIj0M8YkA5fm3IsE5mYnucoLqvgV5etBzfHx9uTxyeuI2KfNb5RSeVMRL3eevqsaf7x8F31aVOWHzYdo8+EyRv26ndgLSXaHp1S2aIKllCpwjDHdjTHljDGexphAY8wUq3yBMaaGMSbImpcv36pYypu5g5pTpnghnpi6njVRJ+0OSSmlMlWqqBdvdqzFkn+1oX3tsnyxLIrWHy5l8oo9jFu6i9VRJ65Yf3XUCcb/EWVTtEpdnyZYSinlosr5FOHrgc2o4FuEvl+uZ8Wu43aHpJRS11WxlDefdmvAz8/cQe3yPrwzP5IvV+1jwIwIVu1yJFmro04wNHwzdQO1j6nKmzTBUkopJxGRjiIyMTY21u5Q0viXKMzsgc2oUroo/aZHsGT7MbtDUkqpG6pdwYdZ/Zsys18T/IsX5nxCCk9MW8+b//uboeGbGdejAS2C/OwOU6kMaYKllFJOYoz5yRgz0Mcnb91V9StWiNkDmlEzoDiDZm7k17+P2h2SUkplSavqZfj5mTsY07U+AsxYu5+eTStpcqXyNE2wlFKqAChZ1ItZ/R3Dtj8dvomf/jxsd0hKKZUlbm6Cf4lCiEBRL3dmrTtwTZ8spfISnQdLuYzHF7dy6v6+Cltxw3VOHo/hw7deY+vmCEr4+OLp6UWfwc8Sdl8Hp8aSVRvWrMTT05P6oU0BmDtzKkWKeNPxsW63tN/t2/7i3df+xblzcbi7udH/mX/R/sFHnBGyykU+RTyZ2a8pT07bwHNzNpOYnMqjjQLtDksppa7rUp+rvi2rMnH5Hl5/IESbCao8TRMspbLJGMPz/XvS8bFujBw3GYDD0QdYtujXHD1ucnIyHh4Zf3Uj1qzE27toWoLVpdeTTjlm4SJFeGfMF1SuGkTM0SN0f+AuWrQOo0QeawqnbqxYIQ++fLIxA2ZE8NK3f5KYkkr3JpXsDksppTK1NTqWcT0aUN2/OJNW7OHEuUTG9WjA1uhYTbBUnqQJllLZtH7Vcjw9Pa9IYsoHVqJH34EApKSk8On7w4lYs4rExAS69u5P55592bBmJeM/HolvqdLs3hFJrTr1eG/sRESEf7ZuYfSI14mPP49vydK8/fHnlAkoS7/OHah5ex02r19L+06PUvm2ICaN/YikpER8S5bi/bETuXjxIt/Mmoabmzvzf5jLsBGjWLdqOd7eRek9+Bm2b/uLd159kYsX4gmsXJURo8dRwteXfp07ULtBIzasXknc2Vje+nAsDZu2uOJcq9xWLe29f9lylCrtx+lTJzTByqe8vTyY0rsxg2dt5NXv/yIxOZXeLarYHZZSSmVocOugtPf1An1ZHHmMZ8Oqa3Kl8iztg6VUNu3euZ2Q2vUyXf7DnJkUK+5D+PwlhP+8hO/DZxB9YD8A27dt5eXh7/HDkrVEH9jP5g1rSUpKYuSbLzN6wnTmLFjGQ10f57MP3knbX1JiIrMXLKX3oKE0bNycWfMWMffX5bR/8BGmfTGWChUr0blnX3r1H8LchSuuSZLeeH4wz786nG8XraJ6cC3GjxmVtiwlOYXwnxfz8vD3GD/mg+ue91+bN5KUlETFylWz82NTeURhT3cm9GrE3bUC+M+8bUxavsfukJRS6obCgv35MzqWmLiLdoeiVKb0CZZSTvLe6y+xecNaPD29CJ+/hDXLl7Izchu/L/gRgLi4sxzYG4Wnlxe16zcioFwFAGrWqs3h6AMUL+HD7h3bGdzjYcDxBMzPv2za/u/teLnP07Ejh/j3U09yIuYoSUlJVKhY+bqxxZ2NJe5sLKHNWwLw4GPdeWlIn7Tll/qM1apTn8MHD2S6n+PHjvL684N555P/4uam92fyu0Ie7vz38YY8P2cL7y6IJCE5haFtq9sdllJKZSosJICPFu1k6fYYujbW5s0qb9IES6lsqlYjmMUL5qV9fu3d0Zw+dZIeD9wFOPpoDRsxipZtwq7YbsOalXh6eaV9dnN3JyU5BYwhqEYwM3/8LcPjFfH2Tns/8s1X6DXgKdrcc39ak8Nb4eVV6HIsKckZrnMu7ixD+3TlmZffoG7Dxrd0PFclIh2BjtWqVbvhunmFp7sbn3arj5eHG6N/20lCciov3l0DEbE7NKWUukZIueKU8ynM4khNsFTepbeglcqmJi3vJCEhgbkzpqSVXbwQn/a+Reu2fDNzKklJSQDs27Ob+Pjzme6vSlB1Tp88wZ8b1wOQlJTE7h2RGa4bF3cW/7LlAZj3zey0cu+ixTh//tw16xcv4UMJH182rVsNwM/ff01o05ZZPVWSEhN5YUAvOj7ajbsf6JTl7QqavDoP1o14uLsxunM9uoZW5LMluxn5y3aMMXaHpZRS1xAR2gb7s3L3CS4mpdgdjlIZ0idYymVkZVh1ZxIRxkyexYdvvca08WMpWcqPIt7ePPfqcAAe6f4Ehw8eoNt9rTHGULK0H2Mmz8p0f55eXoyeMJ1Rb77CubizJKek0LPfYKrVDLlm3SEvDOOlIX0o4eNLkxatOHzQ0ber9d3teWlQb5b9toBhI0Zdsc3bn3xxeZCLSlUY8dHnWT7XhT//wKZ1q4k9fYp534QDMOLj/xJ8e50s70Plbe5uwvuP1MHLw40Jy/eQkJzKfzrW0idZSqk8p11IAF+tO8DaPSdpU9Pf7nCUuoYUtLuUoaGhJiIi4obrVRk2PxeiUbdi0oPlCKh0m91hKEvdQN9ryiIjIwkJuSZBdPkr9qzWM3mRMYZ35kcyZeVeejStxDudauPm5vL/Zcr1uPwvbX6uZ27VxaQU6o/4jS6hFRnRqbbd4aiCLcO6RpsIKqWUSiMivPFACE+1CSJ83QFe/m4rKakF60acUipvK+zpzh3VyrA4MkabM6s8SRMspZRSVxAR/n1vTV5oV4NvN0bzwtdbSE5JtTsspZRKExbiz6EzF9hxLM7uUJS6hvbBUkopdQ0R4bl21fH0ED74dQdJKal82q0BXh56X04pZb+2wY6+V4sjYwguW8LmaJS6kv6lVEoplamn2lTj/zrU4pe/jzJk1kYdtUsplScElChMnQo+LI48ZncoSl1DEyyllFLX1e+Oqrz9UG0Wb49hwIwILiRqkqXUjYjIcyLyt4hsE5HnrbJSIrJIRHZZ/5a0ykVExorIbhHZKiINbQ0+n2gb7M/mg2c4eS7B7lCUuoImWEoppW6oV7PKfPBoXVbuPsGTX27gfELGE1IrpUBEagMDgCZAPaCDiFQDhgGLjTHVgcXWZ4D7gOrWayDwRa4HnQ+1CwnAGFi247jdoSh1Be2DpVyGZ7vmTt1f0u9rbrjOyeMxfPjWa2zdHEEJH188Pb3oM/hZwu7r4NRYsmrDmpV4enpSP7QpAHNnTqVIEW86Ptbtlvc9pOdj/LV5A/UbN2Pcl1/f8v5ckYh0BDpWq1bN7lByRJfGFfHycOPFuVvoPXU90/o2pnhhT7vDUiovCgHWGWPiAUTkD+ARoBPQxlpnOrAMeMUqn2EcQ+KtFRFfESlnjDmS24HnJ7eXL4F/8UIs3n6MRxsF2h2OUmn0CZZS2WSM4fn+PWnYtAULVm1hzoJljPp8MseOHs7R4yYnZ/7kIGLNSv6MWJ/2uUuvJ52SXAH0GfwM74wZ75R9uSpjzE/GmIE+Pj52h5JjHmpQgc+6N2TLwTP0nLKe2Pgku0NSKi/6G2glIqVFxBu4H6gIBKRLmo4CAdb7CsDBdNtHW2VXEJGBIhIhIhHHj+tTGzc3oW2wP8t3niAxWUc6VXmHPsFSKpvWr1qOp6cnXXo9mVZWPrASPfoOBCAlJYVP3x9OxJpVJCYm0LV3fzr37MuGNSsZ//FIfEuVZveOSGrVqcd7YyciIvyzdQujR7xOfPx5fEuW5u2PP6dMQFn6de5AzdvrsHn9Wtp3epTKtwUxaexHJCUl4luyFO+PncjFixf5ZtY03Nzcmf/DXIaNGMW6Vcvx9i5K78HPsH3bX7zz6otcvBBPYOWqjBg9jhK+vvTr3IHaDRqxYfVK4s7G8taHY2nYtMU159v0jtZsWLMy136+Ku96oG45vDzcGDxzI50+X8n3T7WkVFEvAFZHnWBrdCyDWwfZHKVS9jHGRIrIKOA34DywBUi5ah0jIjc1iZMxZiIwERwTDTsn2vwtLCSAORsOsmHfKVpW87M7HKWAHHyCJSIVRWSpiPxjdfB8ziq/6Q6eItLbWn+XiPROV95IRP6ythkrIi4/c7vKO3bv3E5I7XqZLv9hzkyKFfchfP4Swn9ewvfhM4g+sB+A7du28vLw9/hhyVqiD+xn84a1JCUlMfLNlxk9YTpzFizjoa6P89kH76TtLykxkdkLltJ70FAaNm7OrHmLmPvrcto/+AjTvhhLhYqV6NyzL736D2HuwhXXJElvPD+Y518dzreLVlE9uBbjx4xKW5aSnEL4z4t5efh7jB/zgZN/UsoV3V0rgJfurcG+k/F0GreS43EJrI46wdDwzdQNdN0neEpllTFmijGmkTHmTuA0sBM4JiLlAKx/Y6zVD+F4wnVJoFWmbqBltdJ4ebjxu44mqPKQnHyClQz8yxizSUSKAxtFZBHQB0cHz5EiMgxHB89XuLKDZ1McHTybikgp4D9AKGCs/cwzxpy21hkArAMWAO2BX3LwnJTK1Huvv8TmDWvx9PQifP4S1ixfys7Ibfy+4EcA4uLOcmBvFJ5eXtSu34iAco7WHzVr1eZw9AGKl/Bh947tDO7xMOB4AubnXzZt//d2fCTt/bEjh/j3U09yIuYoSUlJVKhY+bqxxZ2NJe5sLKHNWwLw4GPdeWlIn7Tll/qM1apTn8MHD9z6D0MVCEPaVMPdTXhvwXbu+eQPjIH/9mxIiyC9i6yUiPgbY2JEpBKO/lfNgKpAb2Ck9e+P1urzgKEiMgfHNVCs9r/KGm8vD1oElWZxZAxvdqiF3mtXeUGOJVhWxXDEeh8nIpE42hPfVAdPa91FxphTAFaS1l5ElgEljDFrrfIZwENogqVySbUawSxeMC/t82vvjub0qZP0eOAuwNFHa9iIUbRsE3bFdhvWrMTTyyvts5u7OynJKWAMQTWCmfnjbxker4i3d9r7kW++Qq8BT9HmnvvTmhzeCi+vQpdjSdHR4VTWDbwziB1H4/hu0yF8inhQqZT3jTdSqmD4TkRKA0nA08aYMyIyEpgrIv2A/UAXa90FOPpp7Qbigb52BJxfhYUEsGzH30QdP0c1/+J2h6NU7gxyISJVgAY4njTdbAfP65VHZ1Ce0fG1U6hyuiYt7yQhIYG5M6aklV28EJ/2vkXrtnwzcypJSY5BAPbt2U18/PlM91clqDqnT57gz42OQSqSkpLYvSMyw3Xj4s7iX7Y8APO+mZ1W7l20GOfPn7tm/eIlfCjh48umdasB+Pn7rwlt2jKrp6pUplZHnWDpjuN0Dg3k7IVkHhq3iv0nM/89V6qgMMa0MsbUMsbUM8YstspOGmPCjDHVjTHtLt08Ng5PG2OCjDF1jDER9kafv7QN9gdgcWTMDdZUKnfk+CAXIlIM+A543hhzNv2j2+x08MwO7RRaMGRlWHVnEhHGTJ7Fh2+9xrTxYylZyo8i3t489+pwAB7p/gSHDx6g232tMcZQsrQfYybPynR/nl5ejJ4wnVFvvsK5uLMkp6TQs99gqtUMuWbdIS8M46UhfSjh40uTFq04fNDRt6v13e15aVBvlv22gGEjRl2xzduffHF5kItKVRjx0ec3db59HrmPfVG7iD9/nrsb387wD8de83ROFSyX+lyN69GAFkF+NKjoy+s//M1Dn6/i2yEtCCpTzO4QlVIFQAXfIoSUK8Hi7TEM0gF2VB4gjhZ5ObRzEU/gZ2ChMeZjq2wH0MYYc8RqArjMGFNTRCZY72enX+/SyxgzyCqfgKNZ4TJgqTEm2Crvnn69zISGhpqIiBvfGKoybP5Nn6/KXZMeLEdApdvsDkNZ6gb6XlMWGRlJSMg1CaLLN5DPaj2T343/I4q6gT5X9Ln6esNB3vppG95eHnzVvyk1y2pzHWULrWcKmNELd/DFH1FsfKMdvt5eN95AKefIsK7JyVEEBZgCRF5KrizzcHTshGs7eD5hjSbYjMsdPBcC94hISWvEwXtwJGxHgLMi0sw61hPp9qWUUiqHDW4ddM2AFl0bV2Te0Dtwd4NuE9fw96FYm6JTShUkbUP8SUk1/LFTu4Io++VkH6yWQC+grYhssV734xg5524R2QW0sz6Do4PnHhwdPCcBTwFY7ZPfBjZYrxGX2ixb60y2tolCB7hQSinbVfMvxtxBzfH28qD7pLVsPnDa7pCUUi6ufqAvpYt6aT8slSfk5CiCK8n8Ef01HTes0QOfzmRfU4GpGZRHALVvIUyllHIaEekIdKxWrZrdodiucumifD2oGY9PXkfPyeuY1rcJTaqWsjsspZSLcnMT7gr257dtR0lKScXTPVfGcVMqQ/rbp5RSTmKM+ckYM9DHRyfaBQgs6c3XA5tT1qcwvaeuZ9XuE3aHpJRyYWHB/py9mMzG/frUXNlLEyyllFI5pqxPYeYMbE7l0t70/XIDS7dr8x2lVM5oVaMMnu7C4shjdoeiCjhNsJRSSuWoMsULMXtAM2oEFGPgzAh+/fuo3SEppVxQsUIeNLutNIv1Ro6yWY7Pg6VUblnxzian7q/VGw1vuM7J4zF8+NZrbN0cQQkfXzw9vegz+FnC7uvg1FiyasOalXh6elI/tCkAc2dOpUgRbzo+1u2W9z3vm9lMGjsagAHPvsSDnbvf8j5VwVGyqBdf9W9Gn2nreTp8E590rc+D9crbHZZSysWEBfsz/Kd/2HviPFX9itodjiqg9AmWUtlkjOH5/j1p2LQFC1ZtYc6CZYz6fDLHjh7O0eMmJydnuixizUr+jFif9rlLryedklzFnj7N+DGjmDXvd776aTHjx4zi7Jkzt7xfVbD4FPFkZr+mNKpckufnbObbjdF2h6SUcjFtgwMAtJmgspU+wVIqm9avWo6npyddej2ZVlY+sBI9+g4EICUlhU/fH07EmlUkJibQtXd/Ovfsy4Y1Kxn/8Uh8S5Vm945IatWpx3tjJyIi/LN1C6NHvE58/Hl8S5bm7Y8/p0xAWfp17kDN2+uwef1a2nd6lMq3BTFp7EckJSXiW7IU74+dyMWLF/lm1jTc3NyZ/8Ncho0YxbpVy/H2Lkrvwc+wfdtfvPPqi1y8EE9g5aqMGD2OEr6+9OvcgdoNGrFh9Urizsby1odjadi0xRXnuvqPxTRr1QafkiUBaNaqDauW/c59Dz2Wez9w5RKKFfJget8mDJgRwUvf/Elicio9mlayOyyllIuoVNqb6v7FWLI9hv6tbrM7HFVA6RMspbJp987thNSul+nyH+bMpFhxH8LnLyH85yV8Hz6D6AP7Adi+bSsvD3+PH5asJfrAfjZvWEtSUhIj33yZ0ROmM2fBMh7q+jifffBO2v6SEhOZvWApvQcNpWHj5syat4i5vy6n/YOPMO2LsVSoWInOPfvSq/8Q5i5ccU2S9Mbzg3n+1eF8u2gV1YNrMX7MqLRlKckphP+8mJeHv8f4MR9ccy4xR49Qtlxg2ueAshWIOXok2z87VbAV8XJncu9Q7qpZhtd++Itpq/baHZJSyoWEhQSwfu8pzl5MsjsUVUDpEyylnOS9119i84a1eHp6ET5/CWuWL2Vn5DZ+X/AjAHFxZzmwNwpPLy9q129EQLkKANSsVZvD0QcoXsKH3Tu2M7jHw4DjCZiff9m0/d/b8ZG098eOHOLfTz3JiZijJCUlUaFi5evGFnc2lrizsYQ2bwnAg49156UhfdKWX+ozVqtOfQ4fPHDrPwylbqCwpzsTeoXyzOxNvPXTP1xMSmVImyC7w1JKuYCwEH/G/xHF8p3H6VBX+3qq3KcJllLZVK1GMIsXzEv7/Nq7ozl96iQ9HrgLcPTRGjZiFC3bXDmv9oY1K/H08kr77ObuTkpyChhDUI1gZv74W4bHK+LtnfZ+5Juv0GvAU7S55/60Joe3wsur0OVYUq7t4+Vfthwb1q5M+3zs6CEaN7vjlo6plJeHG+N6NOTFuX8y6tftJCSn8FxYdUQym6NeKaVurEFFX3y9PVkSGaMJlrKFNhFUKpuatLyThIQE5s6YklZ28UJ82vsWrdvyzcypJCU5mijs27Ob+Pjzme6vSlB1Tp88wZ8bHYNUJCUlsXtHZIbrxsWdxb+s44/GvG9mp5V7Fy3G+fPnrlm/eAkfSvj4smndagB+/v5rQpu2zOqp0qJ1GGuWL+XsmTOcPXOGNcuX0qJ12I03VOoGPN3dGNO1Po81CmTM77sY9esOjDF2h6WUysc83N24q6Y/S3fEkJKq9YnKffoES7mMrAyr7kwiwpjJs/jwrdeYNn4sJUv5UcTbm+deHQ7AI92f4PDBA3S7rzXGGEqW9mPM5FmZ7s/Ty4vRE6Yz6s1XOBd3luSUFHr2G0y1miHXrDvkhWG8NKQPJXx8adKiFYcPOvp2tb67PS8N6s2y3xYwbMSoK7Z5+5MvLg9yUakKIz76PMvn6lOyJAOf/Tc9OrQFYNBzL6cNeKHUrXJ3Ez54tC6FPNwY/0cUF5NS+E/HWvokSymVbW2D/flh8yE2HzhNaJVSdoejChgpaHcKQ0NDTURExA3XqzJsfi5Eo27FpAfLEVBJRwjKK+oG+l5TFhkZSUjINQmiy181Z7WeUVcyxvD2z5FMXbWXHk0r8U6n2ri5ufyvi8oZLv+Lo/XM9cVeSKLR24sYcOdtvNI+2O5wlOvKsK7RJoJKKeUkItJRRCbGxsbaHUq+JCL8X4cQnmoTRPi6A/z7263avEcplS0+RTxpXKWUzoelbKEJllJKOYkx5idjzEAfHx+7Q8m3RIR/31uTF9rV4LtN0Tz/9RaSUlLtDksplQ+Fhfiz89g5Dp6Kv/HKSjmRJlhKKaXyFBHhuXbVGXZfMD/9eZih4ZtISE6xOyylVD4TFhIAwJLtMTZHogoaTbCUUkrlSYNbB/GfjrVYuO0Yg2du5GKSJllKqayr6leU2/yK8rs2E1S5TBMspZRSeVbfllV57+E6LNt5nH7TNxCfeO08bUoplZm2wf6s23OKcwlad6jcowmWUkqpPK1H00qMfqwea6JO0mfqBuIuJtkdklIqnwgLCSAxJZWVu47bHYoqQHQeLOUyFv2rp1P3d/dHmc9ZdcnJ4zF8+NZrbN0cQQkfXzw9vegz+FnC7uvg1FiyasOalXh6elI/tCkAc2dOpUgRbzo+1s2px9m4dhUfvPUauyK3MerzKdz9QCen7l+pqz3aKBAvDzee/3oLvaasZ/qTTfAp4ml3WEqpPC60SkmKF/ZgcWQM7WuXszscVUBogqVUNhljeL5/Tzo+1o2R4yYDcDj6AMsW/Zqjx01OTsbDI+OvbsSalXh7F01LsLr0ejJHYihboSJvf/w50yeMy5H9K5WRjvXK4+XhxtDwTfSYtJaZ/ZpSqqiX3WEppfIwT3c32tT0Z+mOGFJTjc6tp3KFJlhKZdP6Vcvx9PS8IokpH1iJHn0HApCSksKn7w8nYs0qEhMT6Nq7P5179mXDmpWM/3gkvqVKs3tHJLXq1OO9sRMREf7ZuoXRI14nPv48viVL8/bHn1MmoCz9Oneg5u112Lx+Le07PUrl24KYNPYjkpIS8S1ZivfHTuTixYt8M2sabm7uzP9hLsNGjGLdquV4exel9+Bn2L7tL9559UUuXognsHJVRoweRwlfX/p17kDtBo3YsHolcWdjeevDsTRs2uK6516hYiUA3ERbGavcde/tZZn4RCiDZ26k+8S1zOrflDLFC9kdllIqDwsL9uenPw/zZ/QZGlQqaXc4qgDQqyOlsmn3zu2E1K6X6fIf5sykWHEfwucvIfznJXwfPoPoA/sB2L5tKy8Pf48flqwl+sB+Nm9YS1JSEiPffJnRE6YzZ8EyHur6OJ998E7a/pISE5m9YCm9Bw2lYePmzJq3iLm/Lqf9g48w7YuxVKhYic49+9Kr/xDmLlxxTZL0xvODef7V4Xy7aBXVg2sxfsyotGUpySmE/7yYl4e/x/gxHzj5J6WUc91V05+pfRpz4FQ8XSeu4WjsRbtDUkrlYa1rlMFNdLh2lXv0CZZSTvLe6y+xecNaPD29CJ+/hDXLl7Izchu/L/gRgLi4sxzYG4Wnlxe16zcioFwFAGrWqs3h6AMUL+HD7h3bGdzjYcDxBMzPv2za/u/t+Eja+2NHDvHvp57kRMxRkpKSqFCx8nVjizsbS9zZWEKbtwTgwce689KQPmnLL/UZq1WnPocPHrj1H4ZSOaxlNT+mP9mEJ7/cQJcJawgf0JTAkt52h6WUyoNKFvUitHIpFkfG8K97atodjioANMFSKpuq1Qhm8YJ5aZ9fe3c0p0+dpMcDdwGOPlrDRoyiZZuwK7bbsGYlnl6X+424ubuTkpwCxhBUI5iZP/6W4fGKeF++eBz55iv0GvAUbe65P63J4a3w8ip0OZaUa4ey/WzU26xY4ohr7sIVt3QspZylSdVSzOzXhN5T19N1wlq+6t+UKn5F7Q5LKZUHtQ3xZ+Qv2zl85gLlfYvYHY5ycdpEUKlsatLyThISEpg7Y0pa2cUL8WnvW7Ruyzczp5KU5BhSet+e3cTHn890f1WCqnP65An+3LgegKSkJHbviMxw3bi4s/iXLQ/AvG9mp5V7Fy3G+fPnrlm/eAkfSvj4smndagB+/v5rQpu2zOqp8swr/8fchSs0uVJ5ToNKJQkf0Iz4xGS6TFjD7phrf/+VUios2B/QZoIqd2TpCZaIfAC8A1wAfgXqAi8YY248jrVSuSQrw6o7k4gwZvIsPnzrNaaNH0vJUn4U8fbmuVeHA/BI9yc4fPAA3e5rjTGGkqX9GDM58xg9vbwYPWE6o958hXNxZ0lOSaFnv8FUqxlyzbpDXhjGS0P6UMLHlyYtWnH4oKNvV+u72/PSoN4s+20Bw0aMumKbtz/54vIgF5WqMOKjz7N97n9v2cQLA3pxNvYMf/z+K//9eCRRmSSDSuW02hV8mDOwOY9PXke3iWuY1b8pwWVL2B2WUioPqeZfjEqlvFkceYyeza7frF6pWyXGmBuvJLLFGFNfRB4GOgAvAsuNMZn38M+jQkNDTURExA3XqzJsfi5Eo27FpAfLEVDpNrvDUJa6gb7XlEVGRhISck2C6PJj5Ga1nlHOFXX8HI9PWsfF5BRmPtmUOoE+doek7KP1jLrG8HnbCF9/gC1v3o23l/aSUU6RYV2T1SaCl34LHwC+McbEOiUkpZRyISLSUUQmxsZqFWmHoDLFmDuoOUW9POgxeS0b95+2OySlVB7SLiSAxORUVu8+aXcoysVlNcH6WUS2A42AxSJSBtBxcZVSKh1jzE/GmIE+PvrkxC6VSnszd3BzShf14okp61i3Ry+klFIOTaqWoqiXO4u3H7M7FOXispRgGWOGAS2AUGNMEhAPdMrJwJS6EYMhK01clT2c+X8jIo+IyC4RiRWRsyISJyJnnXYA5VIq+Bbh60HNKetTmN7T1rNi13G7Q1JK5QFeHm7cWaMMiyNj9PpB5agsJVgi4g08BXxhFZUHQnMqKKWyYv+ZJJLjz2olmQcZYzh58iSFCxd21i4/AB40xvgYY0oYY4obY3QUA5WpgBKF+XpQc6qULkq/6REsjtQ71kopCAsJICYugW2H9R6dyjlZ7eE3DdiI4ykWwCHgG+DnzDYQkak4BsSIMcbUtsqGAwOAS7cTXzPGLLCWvQr0A1KAZ40xC63y9sCngDsw2Rgz0iqvCswBSlux9TLGJGbxfJQL+GzdaZ4BKvueQFy/P3OeFxl35bwihQsXJjAw0Fm7P2aM0WEK1U3xK1aI2QOa8cTU9QyetZHPujegfe1ydoellLJRm5plEIHfI49Ru4I251Y5I6sJVpAxpquIdAcwxsSLyI2uaL8ExgEzrir/xBgzOn2BiNQCugG343g69ruI1LAWfw7cDUQDG0RknjHmH2CUta85IjIeR3L2BarAOJuQyrvLtX9FXrFv5AM5ufsIEfka+B+QcKnQGPN9Th5U5X8li3oxq39T+k5bz9Phm/m4Syqd6lewOyxVAIjIC0B/wAB/AX2BcmRwc1hECuG4XmoEnAS6GmP22RG3q/MrVoj6FX1Zsj2G59vVuPEGSmVDVge5SBSRIjgqCUQkiHQXORkxxiwHTmVx/52AOcaYBGPMXmA30MR67TbG7LGeTs0BOlnJXVvgW2v76cBDWTyWUir/KYGj7+c9QEfr1cHWiFS+4VPEkxn9mtKockme/3oL30QctDsk5eJEpALwLI6+67VxtMLpxuWbw9WA0zhuDmP9e9oq/8RaT+WQdiEBbI2O5dhZHa9N5YysJlj/wTHBcEUR+QpYDLyczWMOFZGtIjJVREpaZRWA9H/xoq2yzMpLA2eMMclXlWdIRAaKSISIRBw/rp2dlcpvjDF9M3g9aXdcKv8oVsiD6X2bcEc1P/797VZmrd1vd0jK9XkARUTEA/AGjpD5zeFO1mes5WFZaCmksqltsD8AS7fH2ByJclVZHUVwEfAI0AeYjeOOzLJsHO8LIAioj6Oi+Sgb+7hpxpiJxphQY0xomTJlcuOQSiknEpFAEflBRGKs13ci4rQOXqpgKOLlzqQnQgkL9ueN//3NlJV77Q5JuShjzCFgNHAAx/VOLI4mgZndHE67oWwtj8VxM/kKesPYOYLLFqeCbxEWa4Klcsh1+2CJSMOrio5Y/1YSkUrGmE03czBjTNowTiIyicuDZBwCKqZbNdAqI5Pyk4CviHhYFVH69Z1iX+EeztydUgVAjk6uOw0IBzpbn3taZXfn5EGV6yns6c4XPRvx7OzNvP3zP1xMSuHpu6rZHZbKQ0TEE6gNHDLGZOsK3Gqh0wmoCpzBMTBY+1uNzRgzEZgIEBoaqkPoZpOI0DbYn283RnMxKYXCnu52h6RczI2eYH10ndfo62yXIRFJP3zTw8Df1vt5QDcRKWSNDlgdWA9sAKqLSFUR8cLRfnmecYzLvRR4zNq+N/DjzcajlMo3yhhjphljkq3Xl4A+jlbZ4uXhxrgeDXiwXnk+XLiDjxft1OkeCjARGS8it1vvfYA/cQw4sfnS4F7Z0A7Ya4w5bs0f+j3QEuvmsLVO+pvDaTeareU+OG4mqxzSNsSfC0kprNHJyFUOuO4TLGPMXdndsYjMBtoAfiISjaMfVxsRqY9jsIx9wCDrONtEZC7wD5AMPG2MSbH2MxRYiKOD6FRjzDbrEK8Ac0TkHWAzMCW7sSql8ryTItITRxNlgO7oxYe6BR7ubnzStT6FPNwYu3gXCUkpDLsvGO32UiC1MsYMtt73BXYaYx4SkbLAL1yud27GAaCZNY/oBSAMiODyzeE5XHlzeJ71eY21fInRrD9HNb+tNEU83VkSGcNdNf3tDke5mCwN0y4ihXFMNHwHjuRoBTDeGJPp8CvGmIzu+mSaBBlj3gXezaB8AbAgg/I9OEYZVEq5vieBz3CMrmWA1TguhJTKNnc3YdSjdSnk6caE5XtISE7lzQ61cHPTJKuAST+H5t04mvNhjDma3YTbGLNORL4FNuG4cbwZR9O++WR8c3gKMFNEduMYgblbtg6ssqywpzt3VPdjceQxRnS6XW+uKKfK6jxYM4A4HBc4AD2AmVzuD6GUUjnGGLMfeNDuOJTrcXMT3u5Um0Ie7kxZuZcDp84z+YnGaUnW6qgTbI2OZXDrIJsjVTnojIh0wNFMryXW0OlWU70i19vweowx/8HReie9DG8OWzes9Zoql4UF+7Pon2NsPxpHSLkSdoejXEhWE6zaxpha6T4vFZF/ciIgpZS6REQ+w5p/LyPGmGdzMRzlokSENx4I4cS5BH7ccpjeU9czrW9j1u87xdDwzYzr0cDuEFXOGgSMBcoCzxtjjlrlYTieOCkXdWm49iXbYzTBUk6V1QRrk4g0M8asBRCRpjjaEiulVE7SekblChHh024N8HJ345uN0bT/dAUnzyXw+eMNaRHkZ3d4KgcZY3aSwQh/xpiFOPqAKxflX6IwdQN9+D3ymI4mqpwqqwlWI2C1iBywPlcCdojIX4AxxtTNkeiUUgWaMWb6jddSynk+7FyPw7EXWLX7JFX9itKockm7Q1I5TEQGAMuMMbusyX2nAo/iGIyrtzFms53xqZwVFhzAmMU7OXEuAb9ihewOR7mILE00jOPOTlWgtfWqapV1ADrmTGhKqYJORMZY//4kIvOuftkcnnJBq6NOEHkkjtY1yrD3xHk6j1/DxaQUu8NSOes5HMkUOEYorYvjOudFHE0HlQsLC/HHGFiqkw4rJ8rSEyxjzH5r0ryK6be52YmGlVLqJs20/r3pefeUulmro06k9blqEeTHu/P/YdKKvTzy39V8M7g5RQtltdGHymeSrbmqwHHjeIYx5iTwu4h8YGNcKhfcXr4EASUKsWR7DJ1DK9odjnIRWR2m/W2gDxDF5Q7nBmibM2EppRQYYzZa//5xqezSzR5jzFbbAlMuaWt0bFpyBfD6A7XwdHfji2VRPGENfFGisKfNUaockCoi5YDTOAa2SD9lTLZHEVT5g4jQNjiAeVsOkZicipdHVht3KZW5rP4WdQGCjDFtjDF3WS9NrpRSuUJElolICREphWNemUki8rHdcSnXMrh10DUDWrzcPpjPH2/InwfP0HPyOs7EJ2aytcrH3sQxoM4+YJ4xZhuAiLTGMay6cnFhwf6cT0xh3V6dv145R1YTrL8B3xyMQymlrsfHGHMWeARH852mQDubY7qGiHQUkYmxsbF2h6Kc6P465RjfsxHbj8TRfdI6Tp5LsDsk5UTGmJ+BykCIMWZAukURQFd7olK5qWU1Pwp5uLE4UvthKefIaoL1PrBZRBZqB3OllA08rCY8XYCf7Q4mM8aYn4wxA318fOwORTlZu1oBTO4dyt4T5+g6cS0xZy/aHZJyEhF52RiTbIw5LSJpk/0aY84Dr9kYmsolRbzcaVnNj8Xbj2FMplMvKpVlWU2wpgOjgJHAR+leSimVG0bgmI8myhizQURuA3bZHJMqYO6sUYYv+zbh8JkLdJmwhkNnLtgdknKObunev3rVsmvmx1KuqW2wPwdPXWB3zDm7Q1EuIKsJVrwxZqwxZqkx5o9LrxyNTCmlLMaYb4wxdY0xQ6zPe4wxj9odlyp4mt1Wmpn9mnDyXCJdxq/hwMl4u0NSt04yeZ/RZ+WiwkL8AVisw7UrJ8hqgrVCRN4XkeYi0vDSK0cjU0opi4jcZs2FdVxEYkTkR+spllK5rlHlUoQPaMb5xGS6TFhD1HG9453PmUzeZ/RZuahyPkWoVa4EiyOP2R2KcgFZTbAaAM2A97jcPFDnpVFK5ZZwYC5QDigPfAPMtjUiVaDVCfRh9oBmJKWk0nXCWnYcjbM7JJV99UTkrIjEAXWt95c+17E7OJV7wkL82bj/NKfP62ih6tZkKcFKNzT7XTpMu1LKBt7GmJlWR/RkY8wsoLDdQamCLaRcCb4e1Aw3gW4T1/D3IR09Mj8yxrgbY0oYY4obYzys95c+68RnBUhYSACpBv7YedzuUFQ+l+XZ1ETkARF5WUTevPTKycCUUiqdX0RkmIhUEZHKIvIysEBESllzYylli2r+xZk7qDneXh50n7SWzQdO2x2SUiqb6lbwwa+YF79rM0F1i7KUYInIeBxzQTyDo8NnZxxzRiilVG7oAgwClgLLgCE4Rv7aiGOuGqVsU8WvKF8Pakapol70nLyOdXt0slKl8iM3N+Gumv78sfM4SSmpdoej8rGsPsFqYYx5AjhtjHkLaA7UyLmwlFLqMmNM1eu8dLALZbvAkt58PbA5ZX0K03vaelbuOmF3SEqpbAgLCSDuYjIR+/RptMq+rCZYlyb7iBeR8kAyjs7mSimVY6ymgJfed75q2Xu5H5FSmSvrU5g5A5tTpXRRnpy+gSXbtZmRUvlNq+p+eLm76WiC6pZkNcH6WUR8gQ9wNMnZi47gpZTKeToBqMpXyhQvxOwBzagZUJxBMzfy699H7A5JKXUTihbyoFlQaZbofFjqFlw3wRKRxiJS1hjztjHmDFAM+AvHEMmf5EJ8SqmCTScAVflOyaJezOrflDoVfHg6fDM/bjlkd0hKqZsQFuzPnhPn2aNz3BUY4/+IYnXUlU27V0edYPwfUdna342eYE0AEgFE5E5gpFUWC0zM1hGVUirrdAJQlS/5FPFkRr+mhFYuyfNfb2FuxEG7Q1JKZVHbYH8AfYpVgNQN9GFo+GZWR50gMTmV1VEnGBq+mbqBPtnan8cNlrsbY05Z77sCE40x3wHficiWbB1RKaWyrp6InMXxtKqI9R7rs86DpfK0YoU8+LJvEwbOjODlb7eSkJxKr2Y6AK9SeV3FUt7UDCjO4sgY+rfScZQKghZBfrz3cG2e/HIDbiIU8nDj88cb0iLIL1v7u9ETLHcRuZSEhQFL0i27UXKmlFK3RCcAVfldES93Jj0RSrsQf/7vf38zecUeu0NSSmVB2xB/Nuw7ReyFJLtDUTns1PlERv6ynRfn/snFpFTiE1N4pEGFbCdXcOMEazbwh4j8iGMkwRUAIlINRzNBpZRSSl1HYU93/vt4I+6rXZZ35kcybskuu0NSSt1AWLA/yamG5TuP2x2KyiGnzyfywa/baTVqCROWR1G/oi8+RTx5tm01fthy+Jo+WTfjuk+hjDHvishiHEOy/2aMudTnwQ3HpMNKKaWUugEvDzc+696Al775k9G/7SQhOZUX766BiI7VolRe1KBSSUp6e7Jkewwd65W3OxzlRGfiE5m8Yi9frt7H+cRkHqhTjtY1yvD+L9v5oqejWWCzoNIMDd/MuB4NsvUk64bN/IwxazMo23nTR1JKKaUKMA93Nz7qUp/Cnu58tmQ3F5NSeO3+EE2ylMqD3N2Eu2r6s2RHDMkpqXi4Z3VmI5VXxV5IYsrKvUxbuZe4BEdi9WxYdWqWLc74P6KuSKZaBPkxrkcDtkbH5kyCpZRSSinncHcT3nu4Dl4ebkxasZeLSam89eDtuLlpkqVUXhMWEsD3mw+x+eAZGlcpZXc4KpvOXkxi6sq9TFm5l7iLybS/vSzPtatOSLkSaesMbh10zXYtgvyy3Q9LEyyllFIqF7m5CW89eDuFPd2ZuHwPCckpvP9IXdw1yVIqT2lVww8PN+H3yGOaYOVDcReTmLZqH5NX7OHsxWTuqRXAc+2qc3v57A29fjM0wVJKKaVymYjw6n3BFPZ0Z+ziXSQkp/JR53raDEmpPKREYU+aVC3FksgYXr0vxO5wVBadS0jmy1V7mbRiL7EXkmgXEsDz7apTu0LOJ1aX5FhNLiJTRSRGRP5OV1ZKRBaJyC7r35JWuYjIWBHZLSJbRaRhum16W+vvEpHe6cobichf1jZjRRuxK6WUykdEhBfvrsG/763Jj1sO88zszSQmp9odllIqnbCQAHbFnOPAyXi7Q1E3cC4hmc+X7uaOUUsY/dtOQiuX5KehdzC5d2iuJleQgwkW8CXQ/qqyYcBiY0x1YLH1GeA+oLr1Ggh8AY6EDPgP0BRoAvznUlJmrTMg3XZXH0sppZTK856+qxr/16EWv/x9lMGzNnIxKcXukJRSlrBgfwAWbz9mcyQqM+cTkvliWRStRi3hw4U7aFDRlx+fbsmUPo2pE5i7idUlOdZE0BizXESqXFXcCWhjvZ8OLANescpnWMPArxURXxEpZ627yBhzCkBEFgHtRWQZUOLSCIciMgN4CPglp85HKaWUyin97qhKIQ833vjf3wyYEcHEXqEU8XK3OyylCrwqfkW5rUxRlmyPoW/LqnaHo9KJT0xm5pr9TFi+h1PnE2ldowzPt6tOg0olb7xxDsvtPlgBxpgj1vujQID1vgJwMN160VbZ9cqjMyhXSiml8qWezSpTyMONV77bSu9p65napzHFCmlXaaXs1i4kgGmr9nIuIVm/k3nAhcQUvlq3n/F/RHHiXCKtqvvxfLsaNKpsf2J1iW29aa2nVeaGKzqBiAwUkQgRiTh+XGfkVkoplTd1Dq3ImG4N2Lj/NL2mrCP2QpLdISlV4LUN9icpxbBip15D2uliUgpTVu6l1QdLeWd+JMFlS/Dt4ObM7Nc0TyVXkPsJ1jGr6R/WvzFW+SGgYrr1Aq2y65UHZlCeIWPMRGNMqDEmtEyZMrd8EkoppVROebBeeT7v0ZC/D8Xy+OS1nD6faHdIShVooZVLUqKwB4u3x9x4ZeV0F5NSmLZqL3d+sJS3f/6HGgHFmDuoObP6NyU0jw6fn9sJ1jzg0kiAvYEf05U/YY0m2AyItZoSLgTuEZGS1uAW9wALrWVnRaSZNXrgE+n2pZRSSuVr7WuXZWKvUHYeO0e3iWs5Hpdgd0hKFVge7m60qenP0u0xpKTmSuMrhSOxmr56H60/XMpbP/3DbWWKMmdgM8IHNKNJ1byZWF2Sk8O0zwbWADVFJFpE+gEjgbtFZBfQzvoMsADYA+wGJgFPAViDW7wNbLBeIy4NeGGtM9naJgod4EIpZTMR6SgiE2NjY+0ORbmAu4L9mdanMQdOxdN14hqOxl60OySlCqywEH9Onk/kz+gzdofi8hKSU5i5Zh9tPlzGf+Zto3KpooQPaMqcgc1pdltpu8PLkpwcRbB7JovCMljXAE9nsp+pwNQMyiOA2rcSo1JKOZMx5ifgp9DQ0AF2x6JcQ8tqfkx/sglPfrmBLhPWED6gKYElve0OS92AiNQEvk5XdBvwJjDDKq8C7AO6GGNOW61xPgXuB+KBPsaYTbkZs7q+1jXK4O4mLImMoWEeGKXOFSUmpzI34iD/Xbqbw7EXCa1cko+61KNFUGny23S3OmW8UkoplYc1qVqKWf2bciY+kS7j17DvxHm7Q1I3YIzZYYypb4ypDzTCkTT9wE3OB6ryDl9vLxpVLsnvkToflrMlJqcSvu4Ad41exhv/+5uyPoWZ2a8J3wxuTstqfvkuuQJNsJRSSqk8r35FX8IHNONCUgpdJqxhd0yc3SGprAsDoowx+3HM+zndKp+OYw5PSDcfqDXH56X5QFUe0i7En+1H4zh05oLdobiEpJRU5qw/QNuPlvHaD39Rpnghpj/ZhO+GtKBV9TL5MrG6RBMspZRSKh+oXcGHrwc1J9VA1wlr+efwWbtDUlnTDZhtvb/Z+UCvoNPO2KttsOO/a4mOJnhLklJSmbvhIG0/Wsaw7/+idFEvpvVtzA9PtaB1jfydWF2iCZZSSimVT9QIKM7cQc3w8nCj+6S1bNUO93maiHgBDwLfXL0sO/OB6rQz9goqU5TKpb1ZrM0EsyU5JZVvIg7S7uM/ePm7rfgW8WJqn1D+93RL7qrp7xKJ1SWaYCmllFL5yG1lHHPAFC/sweOT1rFx/6kbb6Tsch+wyRhz6Yr8ZucDVXmIiBAWHMDqqJPEJybbHU6+kZySyvebomn38R/8+9utFCvkweQnQpk3tCVtgwNcKrG6JMdGEczv6lStZHcISuUrf9kdgFIFSMVS3swd1JzHJ6+j15T1TOndmOZB+WP44gKmO5ebB8Ll+UBHcu18oENFZA7QlMvzgao8JizEn6mr9rJy1wnuub2s3eHkaSmphp/+PMzYxbvYc+I8IeVKMLFXI+6u5ZpJVXr6BEsppZTKh8r7FuHrgc2o4FuEPtPW88dO7ZOTl4hIUeBu4Pt0xTc1H6jKexpXKUXxQh7aD+s6UlINP245xD2f/MHzX2/By8ON8T0bMv+ZO7jn9rIun1yBPsFSSiml8i3/EoWZM7AZvaasZ8D0CD5/vCF31wq48YYqxxljzgOlryo7yU3OB6ryFi8PN+6sUYYl22NITTW4ubl+spCZ8X9EUTfQhxZBfgCkpho++X0n4esOcPJ8IjUDivPfxxvS/vayBe7npE+wlFJKqXysdLFCzB7QjJDyJRgyayPzt2rLMqVyUttgf2LiEvj7cKzdodiqbqAPQ8M3s2rXCeZvPcKdHy7hsyW7KezpxrgeDfjluVbcX6dcgUuuQJ9gKaWUUvmej7cns/o14ckvN/DM7E0kJNfjkYaBdoellEu6K9gfEVgcGUPdQF+7w7FNiyA/Pu1Wnz5fricpxeAmMLRtNV5oVwP3AphUpadPsJRSSikXULywJ9OfbEKz20rz4tw/eWf+P1csXx11gvF/RNkUnVKuo1RRLxpWKlng+2GlpBq+iYgmKcUx28BTbarx0j01C3xyBZpgKaWUUi7D28uDqX0aU6+iD5NX7GX4vG2AI7kaGr6ZuoE+NkeolGtoG+zPX4diOXb2ot2h2MIYw+s//MW8Pw9TxNOdZ9tWI3z9AVZHnbA7tDxBEyyllFLKhRT2dGfuoOaEVi7Jl6v38fjktQwN38y4Hg3SOqMrpW5NuxDHYDIF8SmWMYZ35kcyZ8NBCnu6MaVPKC/eU5NxPRowNHyzJllogqWUUkq5nEIe7swe2Izq/sVYtfskwWWLa3KllBPVCChGBd8iLI48duOVXcyni3cxZeVeGlUuydTejdPqlhZBfozr0YCt0QV78A/QBEsppZRySRv2neLEuQSqBxRjddRJXvluq90hKeUyRISwEH9W7j7BxaQUu8PJNZNX7GHM77t4rFEg3wxqTotqV964aRHkx+DWQTZFl3dogqWUUkq5mEt9rj5/vCG/PNuKFkGl+XrDQV75VpMspZwlLCSAi0mprIk6aXcouWL2+gO8Mz+SB+qUY9SjdQvk8OtZpQmWUkop5WK2Rsem9bnycHdjZr+m3FHNj68jDvLZ4l12h6eUS2hatRTeXu78XgCaCf645RCv/fAXbWqW4ZOu9XWkwBvQebCUUkopF3N1Ex13N2H6k0349zd/8tGinaQaeK5ddZuiU8o1FPZ0p1V1P5Zsj8EYg4hrJh2L/jnGi3P/pEmVUozv2QgvD30+cyP6E1JKKaUKAHc34cPO9Xi0YSCf/L6TTxbttDskpfK9sOAAjsReJPJInN2h5IhVu0/wdPgmapcvweTeoRT2dLc7pHxBn2AppZRSBYS7m/DBY3VxE8dIYAZ4oV11l73zrlROaxNcBoDFkceoVb6EzdE418b9pxkwI4KqpYvyZd8mFC/saXdI+YY+wVJKKaUKEHc3YdSjdekSGsjYxbv4ZNFOjDF2h6VUvuRfvDD1Kvqy2MXmw9p2OJa+09bjX7wQM/s3oWRRL7tDylc0wVJKKaUKGDc3YeQjdenWuCJjl+zmo980yVIqu8KC/fkz+gzH4xLsDsUpdsec44kp6ylWyINZ/ZviX7yw3SHlO5pgKaWUUgWQm5vw3sN16N6kIuOW7ubDhTs0yVIqG9oG+2MMLN2R/59iHTwVT8/J6xCBWf2bEljS2+6Q8iXtg6WUUkoVUG5uwrsP1UFE+O+yKFINvNK+pvbJUuom3F6+BGVLFGZJZAxdQivaHU62HTt7kccnryM+MZmvBzXntjLF7A4p39IESymllCrA3NyEdzrVxk1g/B9RGAzD2gdrkqVUFokIbUP8+XHzIRKSUyjkkf9G2jt1PpGek9dx8lwCs/o3JaScaw3Ykdu0iaBSSilVwLm5CW93qk2vZpWZ8Mce3v9luzYXVOomtAvx53xiCuv2nLI7lJsWdzGJ3lPXc+BUPJN7N6ZBpZJ2h5Tv6RMspZRSSiEijOh0O24CE5fvITXV8PoDIfokS6ksaBHkR2FPN5Zsj+HOGmXsDifLLiSm0O/LCCKPnGXiE41oHlTa7pBcgj7BUkoppRTgSLKGP3g7fVpUYfLKvbz9c6Q+yVIqCwp7utMyyI/fI4/lm+9MQnIKA2dGELH/FGO61adtcIDdIbkMfYKllFJKqTQiwn861kIEpq7ai8HwZoda+iRLqRsICwlg8fYYdsWco0ZAcbvDua7klFSem72FFbtO8MGjdelQt7zdIbkUTbCUUkopdQUR4c0OtXATYcrKvRiDlXRpkqVUZtoG+wPwe+SxPJ1gpaYaXv5uK79uO8qbHWrRpXH+Hfkwr9ImgkoppZS6hojwxgMhDGhVlS9X7+M/87blm6ZPStmhrE9hbi9fgiWReXc+LGMMw3/axvebDvGvu2vw5B1V7Q7JJdmSYInIPhH5S0S2iEiEVVZKRBaJyC7r35JWuYjIWBHZLSJbRaRhuv30ttbfJSK97TgXpZRSylWJCK/dH8KgO29jxpr9/N+Pf5OaqkmWUpkJCwlg04HTnDqfaHcoGfpg4Q5mrNnPoDtvY2jbanaH47LsbCJ4lzHmRLrPw4DFxpiRIjLM+vwKcB9Q3Xo1Bb4AmopIKeA/QChggI0iMs8Yc9oZwc19P9kZu1Gq4NBbHEq5JBFh2H3BIDDhjz0YA293qo2bmzYXVOpqYcH+jF28i2U7YnikYaDd4Vzh86W7+WJZFI83rcSw+3Suu5yUl5oIdgKmW++nAw+lK59hHNYCviJSDrgXWGSMOWUlVYuA9rkcs1JKKeXyRIRh7YMZ0iaIr9Yd4PX/6ZMspTJSp4IPZYoXYvH2vNVMcPrqfXy4cAcP1S/P251qa3KVw+x6gmWA30TEABOMMROBAGPMEWv5UeDSWJEVgIPpto22yjIrv4aIDAQGAlSqVMlZ56CUUkoVGCLCy/fWxE3g86VRGGN47+E6+iRLqXTc3IS2Nf1Z8NcRklJS8XS3/1nGtxuj+c+8bdxdK4APO9fT72wusOt//Q5jTEMczf+eFpE70y80jl60Trs1ZoyZaIwJNcaElimTfyZ/U0oppfISEeGle2ryTNtqzNlwkFe//0ufZCl1lbYh/sQlJLNh7ym7Q+GXv47w8rd/0qq6H+N6NMgTCV9BYMtP2RhzyPo3BvgBaAIcs5r+Yf176dnqISD9+JGBVllm5UoppZTKISLCi3fX4Nmw6nwdcZBXvtuqSZZS6dxRzQ8vDzfbmwku3RHDs3M206BSSSb0akQhD3db4ylIcj3BEpGiIlL80nvgHuBvYB6Xu8n3Bn603s8DnrBGE2wGxFpNCRcC94hISWvEwXusMqWUUkrloEtJ1nNh1flmYzQvf7eVFE2ylAKgaCEPmt9WmiU2Jlhr95xk8MyN1AgoztQ+jfH20qlvc5MdP+0A4Aerc50HEG6M+VVENgBzRaQfsB/oYq2/ALgf2A3EA30BjDGnRORtYIO13ghjjP3PYpVSSqkC4oW7ayACY37fRaoxfPhYPdy1f4dShIX48+aP24g6fo6gMsVy9dh/HjxD/+kRBJYswownm+BTxDNXj69sSLCMMXuAehmUnwTCMig3wNOZ7GsqMNXZMSqllFIqa55vVwM3ET5etBMMfNhZkyyl2gY7EqwlkTG5mmDtOBpH72nrKVnUk6/6N6N0sUK5dmx1mfZ0U0oppdQteTasOi/dU4PvNx/iX3O3aHNBVeAFlvQmuGxxfo88lmvH3HfiPD2nrKOQhxtf9WtGWZ/CuXZsdSVtkKmUUkqpWza0bXVEhA8X7sAAH3Wuh4eOWKYKsLAQf8b/sYfY+CR8vHO2md7hMxd4fPI6UlIN4QObUam0d44eT12f1nxKKaWUcoqn76rGK+2D+XHLYV6Y+yfJKal2h6SUbdoGB5CSavhj1/EcPc7xuAR6Tl7H2QtJzHiyCdUDiufo8dSNaYKllFJKKacZ0iaIYfcF89Ofh3nu6y2aZKkCq35FX0oV9WJxDjYTjI1PoteUdRyJvci0vo2pXcEnx46lsk6bCCql1HWIyG3A64CPMeYxu+NRKj8Y3DoIN4H3FmwHA2O61dcJTlWB4+4m3FXTn98jj5Gckur0JrPnEpLpPW09e46fZ0qfUEKrlHLq/lX2aW2nlHJZIjJVRGJE5O+rytuLyA4R2S0iw663D2PMHmNMv5yNVCnXM/DOIN54IIT5fx3huTmbSSpgT7JExFdEvhWR7SISKSLNRaSUiCwSkV3WvyWtdUVExlp10lYRaWh3/Mo5wkL8ib2QxKYDZ5y634tJKQyYHsFfh2L5rEcDWlUv49T9q1ujCZZSypV9CbRPXyAi7sDnwH1ALaC7iNQSkToi8vNVL//cD1kp19G/1W38X4daLPjrKM+EF7gk61PgV2NMMI7paSKBYcBiY0x1YLH1GRz1UXXrNRD4IvfDVTmhVXU/PN3Fqc0Ek1JSefqrTazde5LRnety7+1lnbZv5RyaYCmlXJYxZjlw9QTkTYDd1pOpRGAO0MkY85cxpsNVr5isHktEBopIhIhEHD+esx2alcpP+t1Rlf90rMWv244yNHwTicmun2SJiA9wJzAFwBiTaIw5A3QCplurTQcest53AmYYh7WAr4iUy9WgVY4oXtiTplVLs3h7lv+cXFdKquGFr7eweHsMb3eqzcMNAp2yX+VcmmAppQqaCsDBdJ+jrbIMiUhpERkPNBCRVzNbzxgz0RgTaowJLVNGm2oolV7fllUZ3rEWC7cd4+mCkWRVBY4D00Rks4hMFpGiQIAx5oi1zlEgwHqfpXpJb+TkT22D/dkdc479J8/f0n6MMbz2/V/8vPUIr94XTM9mlZ0UoXI2TbCUUuo6jDEnjTGDjTFBxpj37Y5HqfyqT8uqjOh0O4v+OcZTX7l8kuUBNAS+MMY0AM5zuTkgAMYYA9zUjMx6Iyd/CgtxtDZfHJn9p1jGGN7+OZKvIw7yTNtqDGod5KzwVA7QUQQzsaTN53aHoFS+EmJ3AFl3CKiY7nOgVaaUymFPNK+CAP/34zae+mojnz/ekEIe7naHlROigWhjzDrr87c4EqxjIlLOGHPEagJ46Ypb6yUXVrl0Uar5F2PJ9hievKNqtvYx5vddTF21l74tq/Di3TWcHKFyNn2CpZQqaDYA1UWkqoh4Ad2AeTbHpFSB0at5Fd55qDa/R8YwZNYmEpJT7A7J6YwxR4GDIlLTKgoD/sFR1/S2ynoDP1rv5wFPWKMJNgNi0zUlVC4gLNifdXtPEncx6aa3nbR8D58u3kWX0ED+74FaiEgORKicSRMspZTLEpHZwBqgpohEi0g/Y0wyMBRYiGNUr7nGmG12xqlUQdOzWWXee7gOS7bHMHjmRi4muV6SBTwDfCUiW4H6wHvASOBuEdkFtLM+AywA9gC7gUnAU7kercpRYSEBJKUYVuw6cVPbha87wLsLInmgTjnef6Qubm6aXOUH2kRQKeWyjDHdMylfgOOCRillkx5NK+EmMOz7vxg0cyMTejWisKfrNBc0xmwBQjNYFJbBugZ4OqdjUvZpWMkXnyKeLI6M4f46WRsg8scth3j9f39xV80yfNK1Pu6aXOUb+gRLKaWcREQ6isjE2NhYu0NRKl/o1qQSox6tw/JdxxkwI8JVn2QphYe7G21qlmHpjhhSUm88tslv247y4tw/aVKlFF/0bISXh16y5yf6v6WUUk5ijPnJGDPQx8fH7lCUyje6Nq7EqEfqsnL3CU2ylEsLCwng1PlEthw8c931Vu46wdDwzdSu4MOUPo1d6sluQaEJllJKKaVs1aVxRT541JFk9Z8ewYVETbKU62ldvQzubsLiyGOZrrNx/ykGzIjgtjJFmd63McUKaW+e/EgTLKWUUkrZrnNoRUY/Vo9VUSfoP2ODJlnK5fh4e9K4SkmWbM94Pqy/D8XSZ9oGyvoUZka/Jvh6e+VyhMpZNMFSSimlVJ7waKNAPu5SjzVRJ3nyyw3EJybbHZJSThUWHMD2o3FEn46/onx3TBxPTF1P8UIezOrfFP/ihW2KUDmDJlhKKaWUyjMebhDIx13qs26vJlnK9bQN8Qe44inWwVPx9Jy8HjcRvhrQjAq+RewKTzmJJlhKKaWUylMealCBT7rWZ/3eU/SdpkmWch1BZYpR1a8oiyMdCdaxsxd5fPI6LiSlMKt/E6r6FbU5QuUMmmAppZRSKs/pVL8CY7o1YP3eUzzy39WcT7icZK2OOsH4P6JsjE6p7Bn/RxTBZYuzJuqk9eRqHTFnL9KpfnmCy5awOzzlJJpgKaWUUipPerBeeYa2rcb2o3E88t9VnEtIZnWUYwjruoE6HYLKf+oG+rBy9wkSU1Lp9Pkq9p04j6eHG+1rl7U7NOVEOvajUko5iYh0BDpWq1bN7lCUchn/uqcmbiJ8ungXd3/8BxeTUvj88Ya0CPKzOzSlblqLID/++3hDnpiyntPnEylayIMJvRrp77OL0SdYSinlJDrRsFI544W7a3B/7bIcib1Ir2aV9WJU5WutqpehQ91yGODJllX099kFaYKllFJKqTxtddQJ1u49xbNtqzFr3QFWR52wOySlsm111AlWRZ3U32cXpk0EM3Hx9Md2h6BUPtPW7gCUUi7oUp+rcT0a0CLIj2ZBpa/4rFR+or/PBYM+wVJKKaVUnrU1OvaKi88WQX6M69GArdGxNkem1M3T3+eCQZ9gKaWUUirPGtw66JqyFkF+erdf5Uv6+1ww6BMspZRSSimllHISTbCUUkoppZRSyknyfYIlIu1FZIeI7BaRYXbHo5RSSimllCq48nWCJSLuwOfAfUAtoLuI1LI3KqVUQSUiHUVkYmysdlZWSimlCqp8nWABTYDdxpg9xphEYA7QyeaYlFIFlE40rJRSSikxxtgdQ7aJyGNAe2NMf+tzL6CpMWboVesNBAZaH2sCO3I1UOVMfoDOyJe/nTDGtLc7iJwkIseB/VlY1ZV+n13pXMC1zqcgnovWM5e50v8/uNb56LnkTTdzLhnWNQVimHZjzERgot1xqFsnIhHGmFC741DqeowxZbKyniv9PrvSuYBrnY+ei2sqiPUMuNb56LnkTc44l/zeRPAQUDHd50CrTCmllFJKKaVyXX5PsDYA1UWkqoh4Ad2AeTbHpJRSSimllCqg8nUTQWNMsogMBRYC7sBUY8w2m8NSOUubeipX4kq/z650LuBa56PnUrC52s/Mlc5HzyVvuuVzydeDXCillFJKKaVUXpLfmwgqpZRSSimlVJ6hCZZSSimllFJKOYkmWEopZQMRaS8iO0Rkt4gMszue7BKRqSISIyJ/2x3LrRKRiiKyVET+EZFtIvKc3TFll4gUFpH1IvKndS5v2R3TrRIRdxHZLCI/2x1LfuEq9Qy4Tl3jSvUMaF2TGU2wlFIql4mIO/A5cB9QC+guIrXsjSrbvgRcZULXZOBfxphaQDPg6Xz8/5IAtDXG1APqA+1FpJm9Id2y54BIu4PIL1ysngHXqWtcqZ4BrWsypAmWUkrlvibAbmPMHmNMIjAH6GRzTNlijFkOnLI7Dmcwxhwxxmyy3sfh+ANbwd6ossc4nLM+elqvfDuqlYgEAg8Ak+2OJR9xmXoGXKeucaV6BrSuyYwmWEoplfsqAAfTfY4mH/+BdUUiUgVoAKyzOZRss5q5bAFigEXGmHx7LsAY4GUg1eY48hOtZ/I4V6hnQOuajGiCpfIUEUkRkS0i8reI/CQivnbHpJQqWESkGPAd8Lwx5qzd8WSXMSbFGFMfCASaiEhtm0PKFhHpAMQYYzbaHYtSzuIq9QxoXZMRTbBUXnPBGFPfGFMbR1OAp+0OSKkccAiomO5zoFWmbCYinjguer4yxnxvdzzOYIw5Aywl//ZfaQk8KCL7cDRzaysis+wNKV/QeiaPcsV6BrSuSU8TLJWXrcFqziAiy0Qk1HrvZ/3yIyJ9ROR7EflVRHaJyAf2hatUlm0AqotIVRHxAroB82yOqcATEQGmAJHGmI/tjudWiEiZSy0ARKQIcDew3dagsskY86oxJtAYUwXHd2WJMaanzWHlB1rP5EGuVM+A1jWZ0QRL5UnW6EdhZO2PQX2gK1AH6CoiFa+/ulL2MsYkA0OBhTg6OM81xmyzN6rsEZHZOG6G1BSRaBHpZ3dMt6Al0AvHXcst1ut+u4PKpnLAUhHZiuNCe5ExRoc3L0BcqZ4Bl6prXKmeAa1rMiTG5NuBPpQLEpEU4C8cT64igbuMMSkisgx4yRgTISJ+QIQxpoqI9AFaGmMGWNv/ArxrjFlpzxkopZRSSqmCTJ9gqbzmgtVRsjIgXO6Dlczl39fCV22TkO59CuCRkwEqpZRSSimVGU2wVJ5kjIkHngX+JSIewD6gkbX4MbviUkoppZRS6no0wVJ5ljFmM7AV6A6MBoaIyGbAz9bAlFJKKaWUyoT2wVJKKaWUUkopJ9EnWEoppZRSSinlJJpgKaWUylUikmINTfy3iHwjIt5O3n/avHnXWef59McVkQWX5nK5xWMPFpEnbnKbG8arlLo5Ws9cs43WM7lIEyyllFK57YIxpr4xpjaQCAy2IYbngbQLH2PM/caYM7e6U2PMeGPMjFvdj1Lqlmk9o2yjCZZSSik7rQCqiUgpEfmfiGwVkbUiUhdARIaLyEwRWSMiu0Tk0px3bUQkbTJLERlnzYt3BRH5QkQiRGSbiLxllT0LlMcxOeZSq2yfNcceIvKiddf7bxF53iqrIiKRIjLJ2tdvIlIkg+MNF5GXrPfLRGSUiKwXkZ0i0soqLyIic6z9/QAUSbf9Pda5brLuuhcTkcrWufuJiJuIrBCRe5zxw1eqgNB6RuuZXKUJllJKKVuIYwqG+3BMLv4WsNkYUxd4DUh/d7Yu0BZoDrwpIuVv4jCvG2NCrX20FpG6xpixwGEcE5nfdVVMjYC+QFOgGTBARBpYi6sDnxtjbgfOAI9m4fgexpgmOO5k/8cqGwLEG2NCrLJG1rH9gDeAdsaYhkAE8KIxZj8wCvgC+BfwjzHmt5v4GShVYGk9o/WMHXRCVqWUUrmtiIhssd6vAKYA67AuJIwxS0SktIiUsNb50RhzAbhg3QluguPCIyu6iMhAHH/vygG1cEz/kJk7gB+MMecBROR7oBUwD9hrjLkU90agShaO/30G698JjAUwxmwVkUvxNLPiWyUiAF7AGmu9ySLSGUczp/pZOK5SBZ3WM1rP2EYTLKWUUrntgjGmfvoC6w99Zq6eT8QAyVzZCqPw1RuJSFXgJaCxMea0iHyZ0Xo3ISHd+xTSNbnJwjYp3PhvrgCLjDHdr1ng6CgfaH0sBsRl4dhKFWRaz2RM65lcoE0ElVJK5QUrgMfB0e8BOGGMOWst6yQihUWkNNAG2ADsB2qJSCFxjMoVlsE+SwDngVgRCcDRTOiSOKB4JnE8JCLeIlIUeNgqc6blQA8AEamNo1kRwFqgpYhUs5YVFZEa1rJRwFfAm8AkJ8ejVEGh9YzWM7lCn2AppZTKC4YDU61mLPFA73TLtgJLAT/gbWPMYQARmQv8DewFNl+9Q2PMnyKyGdgOHARWpVs8EfhVRA6n7x9hjNlk3YFebxVNNsZsFpEqzjhJyxfANBGJBCJxNOvBGHPc6kA/W0QKWeu+ISLlgMZAS2NMiog8KiJ9jTHTnBiTUgXBcLSe0XomF4gxVz8RVUoppfIGERkOnDPGjLY7FqWUa9J6RjmbNhFUSimllFJKKSfRJ1hKKaWUUkop5ST6BEsppZRSSimlnEQTLKWUUkoppZRyEk2wlFJKKaWUUspJNMFSSimllFJKKSfRBEsppZRSSimlnOT/AZYUgP+a5YvpAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, arr_ax = plt.subplots(1, 3, figsize=(12, 4))\n", "\n", "pyabc.visualization.plot_sample_numbers(history, ax=arr_ax[0])\n", "pyabc.visualization.plot_epsilons(history, ax=arr_ax[1])\n", "pyabc.visualization.plot_effective_sample_sizes(history, ax=arr_ax[2])\n", "\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "That's it. Now you can go ahead and try more sophisticated models." ] } ], "metadata": { "celltoolbar": "Raw Cell Format", "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.9.7" } }, "nbformat": 4, "nbformat_minor": 4 }