diff --git a/README.md b/README.md index cee3b78..e523cdd 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,10 @@ This repository contains examples showing how to fit Myokit models to data using the PINTS optimisation & inference framework. -A part on fitting AP models is planned, but for now the repository contains: +Its contents are divided into: -- a [detailed tutorial](ion-currents-tutorial/README.md) showing how to fit kinetic parameters of ion current models. +- a [detailed tutorial](ion-currents-tutorial/README.md) showing how to fit kinetic parameters of ion current models; and +- a [set of recipes](action-potential-tutorial/README.md) for fitting maximum conductances and permeabilities in a model of the cardiac action potential (AP). NOTE: We're not entirely sure this is a good idea! ## General recommendations diff --git a/action-potential-tutorial/README.md b/action-potential-tutorial/README.md new file mode 100644 index 0000000..dfdfed0 --- /dev/null +++ b/action-potential-tutorial/README.md @@ -0,0 +1,21 @@ +[↩ back to index](../README.md) +# Estimating parameters of action potential models + +In this tutorial, we look at the problem of estimating the parameters (typically maximum conductances and permeabilities) of an action potential (AP) model. + +Many of the principles from the ion channel tutorial apply here, so that you may want to read these first. +In contrast to the ion channel tutorials, these tutorials take a "recipe" approach, and do not provide much background or details. + +The follow topics are covered: + +## [Fitting conductances to an AP trace](basic-fitting-ap.ipynb) + +A simple example of fitting to a single AP trace. + +## [Fitting conductances to an AP and CaT trace](basic-fitting-ap-cat.ipynb) + +Expands on the previous example to simultaneously fit to AP and calcium transient (CaT). + + + + diff --git a/action-potential-tutorial/basic-fitting-ap-cat.ipynb b/action-potential-tutorial/basic-fitting-ap-cat.ipynb new file mode 100644 index 0000000..568057e --- /dev/null +++ b/action-potential-tutorial/basic-fitting-ap-cat.ipynb @@ -0,0 +1,343 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Fitting to AP and calcium transient\n", + "\n", + "The previous tutorial showed how to fit to an action potential (AP) trace.\n", + "In this tutorial, we expand this to fit to both an AP and a calcium transient (CaT)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Fitting to an AP and CaT" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As before, we start by creating an implementation of `pints.ForwardModel` that wraps around a `myokit.Simulation`:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import pints\n", + "import myokit\n", + "import matplotlib.pyplot as plt\n", + "\n", + "\n", + "class APCaTModel(pints.ForwardModel):\n", + " \"\"\"\n", + " This is a pints model, i.e. a statistical model that takes parameters and\n", + " times as input, and returns simulated values.\n", + " \"\"\"\n", + " def __init__(self):\n", + " m, p, _ = myokit.load('resources/beeler-1977.mmt')\n", + " self.simulation = myokit.Simulation(m, p)\n", + "\n", + " def n_parameters(self):\n", + " return 5\n", + "\n", + " def n_outputs(self):\n", + " return 2\n", + "\n", + " def simulate(self, parameters, times):\n", + "\n", + " self.simulation.reset()\n", + " self.simulation.set_constant('ina.gNaBar', parameters[0])\n", + " self.simulation.set_constant('ina.gNaC', parameters[1])\n", + " self.simulation.set_constant('isi.gsBar', parameters[2])\n", + " self.simulation.set_constant('ik1.gK1', parameters[3])\n", + " self.simulation.set_constant('ix1.gx1', parameters[4])\n", + "\n", + " log = self.simulation.run(\n", + " times[-1] + 1,\n", + " log_times = times,\n", + " log = ['membrane.V', 'calcium.Cai'],\n", + " )\n", + " return np.vstack((log['membrane.V'], log['calcium.Cai'])).T\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note that this model implements the extra method `n_outputs`, to override the default setting of `1`.\n", + "\n", + "As before, we generate some synthetic data, but this time the generated data will be 2-dimensional array:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Create a model\n", + "model = APCaTModel()\n", + "\n", + "# Generate some 'experimental' data\n", + "x_true = np.array([4, 0.003, 0.09, 0.35, 0.8])\n", + "times = np.linspace(0, 600, 601)\n", + "values = model.simulate(x_true, times)\n", + "\n", + "# Add noise\n", + "noisy_values = np.array(values, copy=True)\n", + "noisy_values[:, 0] += np.random.normal(0, 1, values[:, 0].shape)\n", + "noisy_values[:, 1] += np.random.normal(0, 5e-7, values[:, 1].shape)\n", + "\n", + "# Show the initial data\n", + "fig = plt.figure(figsize=(16, 4))\n", + "\n", + "ax = fig.add_subplot(1, 2, 1)\n", + "ax.set_xlabel('Time (ms)')\n", + "ax.set_ylabel('Vm (mV)')\n", + "ax.plot(times, noisy_values[:, 0], label='Noisy data')\n", + "ax.plot(times, values[:, 0], label='True solution')\n", + "ax.legend()\n", + "\n", + "ax = fig.add_subplot(1, 2, 2)\n", + "ax.set_xlabel('Time (ms)')\n", + "ax.set_ylabel('[Ca]i (uM)')\n", + "ax.plot(times, noisy_values[:, 1] * 1e6)\n", + "ax.plot(times, values[:, 1] * 1e6) # Convert to micromolar\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And again we set up an optimisation problem, but this time we use a MultiOutputProblem.\n", + "Because the AP and CaT have very different scales, we also define weighting to use when calculating the goodness of fit:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Running...\n", + "Minimising error measure\n", + "Using Covariance Matrix Adaptation Evolution Strategy (CMA-ES)\n", + "Running in sequential mode.\n", + "Population size: 8\n", + "Iter. Eval. Best Time m:s\n", + "0 8 4404.403 0:00.2\n", + "1 16 4202.058 0:00.2\n", + "2 24 3308.951 0:00.2\n", + "3 32 2070.396 0:00.3\n", + "20 168 37.30053 0:00.9\n", + "40 328 32.38264 0:01.7\n", + "60 488 32.11463 0:02.5\n", + "80 648 31.64049 0:03.2\n", + "100 808 20.85263 0:03.9\n", + "120 968 9.997103 0:04.7\n", + "140 1128 8.567112 0:05.4\n", + "160 1288 8.376414 0:06.3\n", + "180 1448 8.371698 0:07.0\n", + "200 1608 8.369944 0:07.8\n", + "220 1768 8.369936 0:08.6\n", + "240 1928 8.369835 0:09.4\n", + "260 2088 8.369593 0:10.2\n", + "280 2248 8.369593 0:10.9\n", + "300 2408 8.369512 0:11.6\n", + "320 2568 8.369425 0:12.4\n", + "340 2728 8.369413 0:13.1\n", + "360 2888 8.369413 0:13.8\n", + "380 3048 8.369413 0:14.6\n", + "400 3208 8.369413 0:15.3\n", + "420 3368 8.369413 0:16.1\n", + "440 3528 8.369413 0:16.9\n", + "460 3688 8.369413 0:17.7\n", + "480 3848 8.369413 0:18.4\n", + "500 4008 8.369413 0:19.1\n", + "520 4168 8.369413 0:19.9\n", + "538 4304 8.369413 0:20.5\n", + "Halting: No significant change for 200 iterations.\n", + "Found solution: True parameters:\n", + " 4.02349238776465334e+00 4.00000000000000000e+00\n", + " 2.83431921529628175e-03 3.00000000000000006e-03\n", + " 8.61446079362040429e-02 8.99999999999999967e-02\n", + " 3.39306187855674179e-01 3.49999999999999978e-01\n", + " 7.67168765314024226e-01 8.00000000000000044e-01\n" + ] + } + ], + "source": [ + "# Create an object with links to the model and time series\n", + "problem = pints.MultiOutputProblem(model, times, noisy_values)\n", + "\n", + "# Create a score function\n", + "weights = [1 / 70, 1 / 0.000006]\n", + "score = pints.SumOfSquaresError(problem, weights=weights)\n", + "\n", + "# Select some boundaries\n", + "lower = x_true / 5\n", + "upper = x_true * 5\n", + "boundaries = pints.RectangularBoundaries(lower, upper)\n", + "\n", + "# Perform an optimization\n", + "x0 = x_true * 2**np.random.normal(0, 1, x_true.shape)\n", + "optimiser = pints.OptimisationController(\n", + " score, x0, boundaries=boundaries, method=pints.CMAES)\n", + "\n", + "print('Running...')\n", + "x_found, score_found = optimiser.run()\n", + "\n", + "# Compare parameters with original\n", + "print('Found solution: True parameters:' )\n", + "for k, x in enumerate(x_found):\n", + " print(pints.strfloat(x) + ' ' + pints.strfloat(x_true[k]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we inspect the results:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "initial = problem.evaluate(x0)\n", + "fitted = problem.evaluate(x_found)\n", + "\n", + "# Create figure\n", + "fig = plt.figure(figsize=(16, 4))\n", + "\n", + "ax = fig.add_subplot(1, 2, 1)\n", + "ax.set_xlabel('Time (ms)')\n", + "ax.set_ylabel('Vm (mV)')\n", + "ax.plot(times, noisy_values[:, 0], label='Noisy data')\n", + "ax.plot(times, initial[:, 0], label='Initial guess')\n", + "ax.plot(times, fitted[:, 0], label='True solution')\n", + "ax.legend()\n", + "\n", + "ax = fig.add_subplot(1, 2, 2)\n", + "ax.set_xlabel('Time (ms)')\n", + "ax.set_ylabel('[Ca]i (uM)')\n", + "ax.plot(times, noisy_values[:, 1] * 1e6)\n", + "ax.plot(times, initial[:, 1] * 1e6) # Convert to micromolar\n", + "ax.plot(times, fitted[:, 1] * 1e6) # Convert to micromolar\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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F154gZdeeol9923vZo/w8MMPM2bMGHbZZRcAzjjjjO3u40c/+hFPPPEE99xzDwBr1qzh6aefZtSoUVx00UWsX7+es846i+bmZv78z/+cZ599lk9/+tOcdtppjB49ukvvQ5JUfR4mqCNve9vbtkzvuOOObNiwocvrTp06lZUrVzJ//nxaW1vZZ599Or2Z0uZDEO3Zaaed2LRpE8CbtpGZ3HjjjbS2ttLa2spzzz3H6NGjOfbYY5k7dy77778/F1xwAXfccQd77LEHjz/+OMcffzw333wzEyZM6PJ7kSRVl2Ggj+nXrx/r16/fZvmaNWvYe++96devHz/96U95/vnnO93OMcccww9/+EPWrVvH2rVruf/++7e81tTUxPz58wG2jAIAnHLKKdxyyy1b9v+b3/yGV199leeff569996bj3/841x88cUsWLCAVatWsWnTJj70oQ9x7bXXsmDBgkq8fUlSL/AwQR8zceJEDj74YEaOHMnUqVO3LB87dixnnHEGLS0tNDc3M3z48E63M2rUKM4880wOOeQQ3vWud9HS0sLAgaWrKS677DI+8pGPcOedd3LCCSdsWWfChAksW7aMkSNHkpkMGjSI++67jzlz5jB58mT69evHgAEDuOOOO3jhhRe48MILt4wwfO1rX+uF3pAkVUJ0NlzcSFpaWnLzGfKbLVmyhPe+9701qqj21q5dy4ABA3jttdc49thjmTJlCiNHjqx1WR0q+s/rLan05bJ9WYUu9ZX6koiYn5kt22vnyECBTZw4kaeeeop169Yxbty4ug4CkqTeYxgosO9973u1LkGSVAc8gVCSpIIzDEiSVHCGAUmSCs4wIElSwRkGamzHHXekubl5y9eyZcuYN28en/nMZ4DSA4zaPpnwvvvu2/I44+6oxGOM2z7AqCNb1/elL32JWbNm9XjfkqTe49UEbYy4fURFt7do3KLtttlll122efBQU1MTLS2ly0LnzJnDgAEDOOqoo4DSh+3pp5/OgQceWNFaK2Xr+r7yla/UuCJJ0vY4MlCH5syZw+mnn86yZcv45je/yQ033EBzczM/+9nPmDFjBpdffjnNzc0sXbqUpUuXcuqpp3LYYYfx/ve/n1/96lcAPPfccxx55JGMGjWKL37xi+3u59VXX+W0007jkEMO4aCDDuLuu+8GYPbs2Rx66KGMGDGCiy66iDfeeGOb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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure(figsize=(8, 4))\n", + "\n", + "ax = fig.add_subplot(1, 1, 1)\n", + "p = ['gNaBar', 'gNaC', 'gsBar', 'gK1', 'gx1']\n", + "ax.set_xticklabels(p)\n", + "ax.set_ylabel('$^2\\log x / x_{true} $')\n", + "\n", + "x = np.arange(1, 1 + len(p))\n", + "ax.bar(x, 0 * x)\n", + "ax.bar(x, np.log2(x0 / x_true), label='Initial guess')\n", + "ax.bar(x, np.log2(x_found / x_true), label='Fitted solution')\n", + "ax.legend()\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Summary" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this tutorial, we extended the AP fitting example to simultaneously fit an AP and CaT." + ] + } + ], + "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.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/action-potential-tutorial/basic-fitting-ap.ipynb b/action-potential-tutorial/basic-fitting-ap.ipynb new file mode 100644 index 0000000..6cdc1e1 --- /dev/null +++ b/action-potential-tutorial/basic-fitting-ap.ipynb @@ -0,0 +1,299 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Fitting conductances of an action potential model\n", + "\n", + "This tutorial provides a very brief \"recipe\" to fit maximum conductances (and permeabilities) of action potential (AP) models to a recorded AP trace, using Myokit and PINTS." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## General approach\n", + "\n", + "\n", + "- [Models are written in Myokit's MMT syntax](https://myokit.readthedocs.io/syntax/index.html), usually by [downloading a CellML model](https://models.cellml.org/electrophysiology) and then [importing it](https://myokit.readthedocs.io/api_formats/cellml.html).\n", + "- [Simulations are run](https://myokit.readthedocs.io/api_simulations/Simulation.html) using the `Simulation` class, which uses CVODE to solve the ODEs.\n", + "- [A pints.ForwardModel](https://github.com/pints-team/pints/blob/master/examples/optimisation/first-example.ipynb) is wrapped around a Myokit simulation.\n", + "- [A pints.ErrorMeasure](https://pints.readthedocs.io/en/latest/error_measures.html) or [pints.LogLikelihood](https://pints.readthedocs.io/en/latest/log_likelihoods.html) is defined\n", + "- [Optimisation](https://nbviewer.jupyter.org/github/pints-team/pints/blob/master/examples/optimisation-first-example.ipynb) or [Bayesian inference](https://nbviewer.jupyter.org/github/pints-team/pints/blob/master/examples/sampling-first-example.ipynb) is run.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Fitting to an action potential" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We start by creating an implementation of `pints.ForwardModel` that wraps around a `myokit.Simulation`:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import pints\n", + "import myokit\n", + "import matplotlib.pyplot as plt\n", + "\n", + "\n", + "class APModel(pints.ForwardModel):\n", + " \"\"\"\n", + " This is a pints model, i.e., a statistical model that takes parameters and\n", + " times as input, and returns simulated values.\n", + " \"\"\"\n", + " def __init__(self):\n", + " m, p, _ = myokit.load('resources/beeler-1977.mmt')\n", + " self.simulation = myokit.Simulation(m, p)\n", + "\n", + " def n_parameters(self):\n", + " return 5\n", + "\n", + " def simulate(self, parameters, times):\n", + "\n", + " self.simulation.reset()\n", + " self.simulation.set_constant('ina.gNaBar', parameters[0])\n", + " self.simulation.set_constant('ina.gNaC', parameters[1])\n", + " self.simulation.set_constant('isi.gsBar', parameters[2])\n", + " self.simulation.set_constant('ik1.gK1', parameters[3])\n", + " self.simulation.set_constant('ix1.gx1', parameters[4])\n", + "\n", + " log = self.simulation.run(\n", + " times[-1] + 1,\n", + " log_times = times,\n", + " log = ['membrane.V']\n", + " ).npview()\n", + " return log['membrane.V']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can use this model to generate some toy data:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Create a model\n", + "model = APModel()\n", + "\n", + "# Generate some 'experimental' data\n", + "x_true = np.array([4, 0.003, 0.09, 0.35, 0.8])\n", + "times = np.linspace(0, 600, 601)\n", + "values = model.simulate(x_true, times)\n", + "\n", + "# Add noise\n", + "noisy_values = np.array(values, copy=True)\n", + "noisy_values += np.random.normal(0, 1, values.shape)\n", + "\n", + "plt.figure(figsize=(8, 4))\n", + "plt.xlabel('Time (ms)')\n", + "plt.ylabel('Vm (mV)')\n", + "plt.plot(times, noisy_values, label='Noisy data')\n", + "plt.plot(times, values, label='True solution')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And finally we can set up an optimisation problem and fit to the data:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Running...\n", + "Minimising error measure\n", + "Using Covariance Matrix Adaptation Evolution Strategy (CMA-ES)\n", + "Running in sequential mode.\n", + "Population size: 8\n", + "Iter. Eval. Best Time m:s\n", + "0 8 1888995 0:00.1\n", + "1 16 1855883 0:00.2\n", + "2 24 1829607 0:00.2\n", + "3 32 1804624 0:00.3\n", + "20 168 100186 0:01.0\n", + "40 328 17277.82 0:01.7\n", + "60 488 10404.46 0:02.4\n", + "80 648 3918.515 0:03.1\n", + "100 808 3173.403 0:03.9\n", + "120 968 2084.115 0:04.8\n", + "140 1128 1957.409 0:05.6\n", + "160 1288 1674.068 0:06.3\n", + "180 1448 963.2292 0:07.0\n", + "200 1608 790.5655 0:07.8\n", + "220 1768 649.9114 0:08.6\n", + "240 1928 646.8009 0:09.3\n", + "260 2088 646.6613 0:10.0\n", + "280 2248 646.6613 0:10.8\n", + "300 2408 646.6613 0:11.5\n", + "320 2568 646.6527 0:12.3\n", + "340 2728 646.6111 0:13.1\n", + "360 2888 646.6111 0:13.9\n", + "380 3048 646.6111 0:14.8\n", + "400 3208 646.6111 0:15.6\n", + "420 3368 646.6111 0:16.3\n", + "440 3528 646.6111 0:17.0\n", + "460 3688 646.6111 0:17.7\n", + "480 3848 646.6111 0:18.4\n", + "500 4008 646.6111 0:19.1\n", + "520 4168 646.6111 0:19.9\n", + "536 4288 646.6111 0:20.4\n", + "Halting: No significant change for 200 iterations.\n", + "Found solution: True parameters:\n", + " 4.05652839687537714e+00 4.00000000000000000e+00\n", + " 3.02744199339346955e-03 3.00000000000000006e-03\n", + " 9.21295722683932450e-02 8.99999999999999967e-02\n", + " 3.56962910556618884e-01 3.49999999999999978e-01\n", + " 8.09795272024570800e-01 8.00000000000000044e-01\n" + ] + } + ], + "source": [ + "# Create an object with links to the model and time series\n", + "problem = pints.SingleOutputProblem(model, times, noisy_values)\n", + "\n", + "# Create a score function\n", + "score = pints.SumOfSquaresError(problem)\n", + "\n", + "# Select some boundaries\n", + "lower = x_true / 5\n", + "upper = x_true * 5\n", + "boundaries = pints.RectangularBoundaries(lower, upper)\n", + "\n", + "# Perform an optimization\n", + "x0 = x_true * 2**np.random.normal(0, 1, x_true.shape)\n", + "optimiser = pints.OptimisationController(\n", + " score, x0, boundaries=boundaries, method=pints.CMAES)\n", + "\n", + "print('Running...')\n", + "x_found, score_found = optimiser.run()\n", + "\n", + "# Compare parameters with original\n", + "print('Found solution: True parameters:' )\n", + "for k, x in enumerate(x_found):\n", + " print(pints.strfloat(x) + ' ' + pints.strfloat(x_true[k]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we inspect the results:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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pk+fXuLnI3LWSvsc+sqilM71l7KjDq6ISBUWERHBTTfdxLRp0/Jv6969O++//z7g+0d6wSGZ4Du/dufOnVx22WX8/e9/58iRI6SkpAC+2WWHDRvGTTfdhJ+f3ynH69WrV37h+8UXX3D4sG9kSHJyMrVq1SI4OJjNmzfz7bff5j/G7XaTlZVV7HYiTij4+iwoOTmZOnXq4Ha7+eqrr9ixY8cZ99OzZ08+/fRT0tPTSUlJYe7cufn3RUdHs3r1agBmzpyZf3v//v2ZPHly/vF//vlnjh8/zo4dO6hTpw633XYbY8aMYc2aNSQmJuL1ern++uuZMGECa9asKY2nLyJS6aiDK4VkebNwu9xOxxCRUnT//ffz6quv5l9/+eWXGT16NM8//zxRUVG8+eabhbbPyclh2LBhJCcnY63lvvvuo2bNmgAMHjyYW2655bQd4aeffpohQ4YQHx/PpZdeSpMmTQAYMGAAU6ZMITY2losuuoiLL744/zFjx44lNjaW+Ph4pk+fftrtRJxQ8PVZcNTC0KFDGTRoEJ06dSIuLo6WLVuecT+dO3dm8ODBtG/fnqZNm9KpUyfCw30dsAceeICbbrqJd955hz59+uQ/5tZbbyUhIYH4+HistURFRTF79mwWL17M888/j9vtJjQ0lLfffpvdu3dzyy235HeCn3vuuTL4bYiIVHzmTENmKotOnTrZvNkH5dy0e6sdAJ9f9zmNazR2OI1I5bZp0yZatWrldIwysWrVKu677z6WLl3qdJRSU9TflzFmtbW2k0ORqoSiPpur8nujJFJSUggNDSU1NZVevXoxdepU4uPjnY51WtX970uKoSHKUs5K+tmsDq4UknBkpwpcESnSxIkTmTx58mnPvRWRMxs7diwbN24kPT2dkSNHVujiVkSkslKBK4X8uC+BSxp3dzqGiFRAjzzyCI888ojTMUQqrffee8/pCCIiVZ4mmRIAbI4HgK2H9jmcRERERERE5NyowBUATG4zf19KosNJREREREREzo0KXPExOQAkpSU5HEREREREROTcqMCVXL4C92jWYYdziIiIiIiInBsVuOKT28FNyznicBARKQ2hoaHFbnPrrbeyceNGAJ599tlC93XvXvxkcyU5hkhF4+fnR1xcXP5PQkICq1at4u677wZg8eLFrFixIn/72bNn579PzkZpvD969+5NccsgnpzvqaeeYsGCBed9bBGRykqzKAsAFi8GyDHHyPFa/FzG6UgiUsbeeOON/MvPPvssjz32WP71gv/AFykreWuwl5b1I9cXu01QUBDr1q0rdFt0dDSdOvmWVly8eDGhoaH5X/LMnj2bgQMH0rp161LNWlpOzvfMM884nEhExFnq4Ao53hyMsWAN+B1nT/JxpyOJSClZvHgxvXv35oYbbqBly5YMHToUay1wojv0yCOPkJaWRlxcHEOHDgVOdJ9SUlLo27cv8fHxtGvXjjlz5hR7zAkTJtCyZUuuuOIKhgwZwgsvvFDoeACJiYlER0cDkJOTw4MPPkjnzp2JjY3l9ddfB2Dv3r306tWLuLg42rZty9KlS8nJyWHUqFG0bduWdu3a8eKLL5bq70uqp8WLFzNw4EASEhKYMmUKL774InFxcXz99dd88sknPPjgg8TFxbFt2za2bdvGgAED6NixI5dccgmbN28GYPv27XTr1o3OnTvz5JNPFnmc48ePc9VVV9G+fXvatm3LBx98AMDChQvp0KED7dq1Y/To0WRkZJzy2IId4ZkzZzJq1ChWrFhxSr5Ro0Yxc+bMM+43Ojqap59+Ov99nfccRESqAnVwhSxvFgD+tibZrsNsPrCPxrUudDiVSBXxxSOwr/iu0lmp1w6unFjizdeuXcuGDRto0KABPXr0YPny5fTs2TP//okTJ/Lqq6+e0tUC8Hg8zJo1i7CwMBITE7n44osZPHgwxhQ9ymPVqlV89NFHrF27luzsbOLj4+nYseMZ802bNo3w8HC+//57MjIy6NGjB/369ePjjz+mf//+PP744+Tk5JCamsq6devYvXs3P/30EwBHjui0Cjk7eV/mAMTExDBr1qz8+6Kjoxk3bhyhoaE88MADAAwePJiBAwdyww03ANC3b1+mTJlC8+bNWblyJXfeeSeLFi3innvu4Y477mDEiBFMmjSpyGPPmzePBg0aMHfuXACSk5NJT09n1KhRLFy4kBYtWjBixAgmT57MvffeW+xz6d69+yn58hS339q1a7NmzRpee+01XnjhhUIjOkREKjN1cIX0bF+BG+IXCcAviXudjCMipaxLly40atQIl8uVf85hSVlreeyxx4iNjeXyyy9n9+7d7N+//7TbL1u2jKuvvpqgoCBq1KjBoEGDij3Gl19+ydtvv01cXBxdu3YlKSmJX375hc6dO/Pmm28yfvx41q9fT40aNWjWrBm//vord911F/PmzSMsLKzEz0UETgxRXrduXaHitiRSUlJYsWIFN954I3Fxcdx+++3s3ev7zFy+fDlDhgwBYPjw4UU+vl27dixYsICHH36YpUuXEh4ezpYtW4iJiaFFixYAjBw5kiVLlpzHM/Qpbr/XXXcdAB07djyr/yeIiFR06uAK6Vm+AjciMIrk9K0kHNnncCKRKuQsOq1lJTAwMP+yn58f2dnZJX7sjBkzOHjwIKtXr8btdhMdHU16evppt88b/lwUf39/vF4vQKF9WGt55ZVX6N+//ymPWbJkCXPnzmX48OE8+OCDjBgxgh9++IH58+czadIk/vvf/zJ9+vQSPx+R8+H1eqlZs2aRox2A045syNOiRQtWr17N559/zqOPPkq/fv0YPHhwiY5dcN9neg/mOdN7EU78f+Fs/58gIlLRqYMrpGVnAlAzMAqA/ccTnYwjIg5wu91k5X7ZVVBycjJ16tTB7Xbz1VdfsWPHjjPup2fPnnz66aekp6eTkpKSPxQTfMM/V69eDZB/jiBA//79mTx5cv7xf/75Z44fP86OHTuoU6cOt912G2PGjGHNmjUkJibi9Xq5/vrrmTBhAmvWrCmNpy+Sr0aNGhw7dqzI62FhYcTExPDhhx8CviLyhx9+AKBHjx68//77gO+LoaLs2bOH4OBghg0bxgMPPMCaNWto2bIlCQkJbN26FYB33nmHSy+99JTH1q1bl02bNuH1egt1nk/Om6ek+xURqWpU4ArpWb5JJ8LdtQFIydI5bSLVzdixY4mNjc2fZCrP0KFDWbVqFZ06dWLGjBm0bNnyjPvp3LkzgwcPpn379lx33XV06tSJ8PBwAB544AEmT55M9+7dSUw88UXarbfeSuvWrYmPj6dt27bcfvvtZGdns3jxYuLi4ujQoQMfffQR99xzD7t376Z3797ExcUxatQonnvuudL/ZUi1NmjQIGbNmkVcXBxLly7l5ptv5vnnn6dDhw5s27aNGTNmMG3aNNq3b0+bNm3yJ1576aWXmDRpEp07dyY5ObnIfa9fv54uXboQFxfHX//6V5544gk8Hg9vvvkmN954I+3atcPlcjFu3LhTHjtx4kQGDhxInz59qF+/fv7tJ+fLU9L9iohUNaa4ISyVQadOnWxx68TJ6a3ds5UR/7uWgfXv47M9r9DQ9GPeyL85HUuk0tq0aROtWrVyOoZjUlJSCA0NJTU1lV69ejF16lTi4+OdjnVaRf19GWNWW2s7ORSpSijqs7m6vzcqG/19yRmND3c6gTPGF/0FlpS9kn426xxcyZ9kyu3yx9+Gk2qTHE4kIpXZ2LFj2bhxI+np6YwcObJCF7ciIiJStajAFdJzz8EN9HcTSCTpKnBF5Dy89957TkcQERGRakrn4EqBDq6bIFdtMo0KXBERERERqXxU4AoZuQVugJ+bUL/a5JgjZHu1ZICIiJS+qjD3R3WgvycRqaxU4EqhAreGfx0wlgOpBxxOJSIiVY3H4yEpKUnFUwVnrSUpKQmPx+N0FBGRs6ZzcIVMr6/ADfR3UysgCjJg7/G9NAht4HAyERGpSho1asSuXbs4ePCg01GkGB6Ph0aNGjkdQ0TkrKnAlfwObqCfP5GeenAMdh/bQ8e6HR1OJiLnys/Pj3bt2uVfnz17NomJibz99tu8/PLLLF68mICAALp3755/f4sWLWjduvVZHSc0NJSUlJTzytq7d29eeOEFOnU6/cz/J+d76qmn6NWrF5dffvl5HVvKl9vtJiYmxukYIiJShanAFTJzcoco+wcQFVQTgF3H9jgZSUTOU1BQEOvWrSt0W3R0dH4RuXjxYkJDQwsVuAMHDjzrAre8nJzvmWeecTiRiIiIVEQ6B1fyO7gePzc1PSF4s0P45retDqcSkdK2ePFiBg4cSEJCAlOmTOHFF18kLi6Or7/+mk8++YQHH3yQuLg4tm3bxrZt2xgwYAAdO3bkkksuYfPmzQBs376dbt260blzZ5588skij3P8+HGuuuoq2rdvT9u2bfnggw8AWLhwIR06dKBdu3aMHj2ajIyMUx4bGhqaf3nmzJmMGjWKFStWnJJv1KhRzJw584z7jY6O5umnnyY+Pp527drlPwcRERGpuhzr4BpjGgNvA/UALzDVWvuSMSYC+ACIBhKAm6y1h53KWR3kdXAD/d0E+LuwWTVZtetXh1OJVA1/++5vbD5UuoVVy4iWPNzl4TNuk5aWRlxcHAAxMTHMmjUr/77o6GjGjRtHaGgoDzzwAACDBw9m4MCB3HDDDQD07duXKVOm0Lx5c1auXMmdd97JokWLuOeee7jjjjsYMWIEkyZNKvLY8+bNo0GDBsydOxeA5ORk0tPTGTVqFAsXLqRFixaMGDGCyZMnc++99xb7fLt3735KvjzF7bd27dqsWbOG1157jRdeeIE33nij2OOJiIhI5eVkBzcbuN9a2wq4GPijMaY18Aiw0FrbHFiYe13KUGbukkAe/wAC/F14s2rhCtBauCKVWd4Q5XXr1hUqbksiJSWFFStWcOONNxIXF8ftt9/O3r17AVi+fDlDhgwBYPjw4UU+vl27dixYsICHH36YpUuXEh4ezpYtW4iJiaFFixYAjBw5kiVLlpzHM/Qpbr/XXXcdAB07diQhIeG8jyciIiIVm2MdXGvtXmBv7uVjxphNQEPgaqB37mZvAYuBM7cq5LxkZmcC4PF3Myi2Aa+ujWG/awPJ6ccJ94Q4nE6kciuu01oReb1eataseco5vHmMMWd8fIsWLVi9ejWff/45jz76KP369WPw4MElOnbBfaenpxe7fXHLzQQGBgK+Sbeys7W+t4iISFVXIc7BNcZEAx2AlUDd3OI3rwiu41yy6iErt4Mb4O/G389F98ZtMMaybv8Wh5OJSFmpUaMGx44dK/J6WFgYMTExfPjhh4CviPzhhx8A6NGjB++//z4AM2bMKHLfe/bsITg4mGHDhvHAAw+wZs0aWrZsSUJCAlu3+s7vf+edd7j00ktPeWzdunXZtGkTXq+3UOf55Lx5SrpfERERqR4cL3CNMaHAR8C91tqjZ/G4scaYVcaYVVpP7/x4czsgfi5f56RFhG+o33oVuCJV1qBBg5g1axZxcXEsXbqUm2++meeff54OHTqwbds2ZsyYwbRp02jfvj1t2rRhzpw5ALz00ktMmjSJzp07k5ycXOS+169fT5cuXYiLi+Ovf/0rTzzxBB6PhzfffJMbb7yRdu3a4XK5GDdu3CmPnThxIgMHDqRPnz7Ur18///aT8+Up6X5FRESkejDFDe8q04Mb4wY+A+Zba/+Re9sWoLe1dq8xpj6w2Fp70Zn206lTJ7tq1aqyD1xFPTR/Kl/se4X/9J9L23pN+G77QUYv7kffBtfyUv+nnI4nUuls2rSJVq1aOR1DSqiovy9jzGpr7ekX5pVi6bNZpIobH+50AmeML/rLXSl7Jf1sdqyDa3wnWk0DNuUVt7k+AUbmXh4JzCnvbNWNpfCXHPXCQvBm1uHXo1oqSESkqjPGTDfGHDDG/HSa+3sbY5KNMetyf/TNp4iIVFhODlHuAQwH+hT40PwdMBG4whjzC3BF7nUpQ3ld/LzJXRrU9BBqGpNwdBuHj2ee834TUzJIzfSd33s0PYvjGScmeElOzWJVwqH86/uS0xn3zmp2HkoFIC0z55yPKyIiZ+XfwIBitllqrY3L/XmmHDKJiIicE8cKXGvtMmutsdbGFvjQ/Nxam2St7WutbZ7756Hi9ybnI6+D6/n1SwD8/VzcGNsZ/I/y2tK157TPrQdS6PSXBdz9H98srMOnfceI6d/lF9MPffQDN0z5hgNHfbOkjn1nFfM27GPxzweZsXIHrZ6ax/827j9lvxnZOcz7ad85ZRIRkVNZa5cA+qwVEZEqwbFlgqTiyDsNO3zBA9BtDAD9LriYt7e8ynd7VwNdz3qf//nuNwAWbNrPKwt/4cc9O3F59jFg2jIubxvOD0d34q7pYsr36bSMuJAfdx0GXPzti82k5HZ6X5i/hfrhHto2DCcz24sxMPGLzby5PIGZ47rRKTqiNJ6+SJmw1ha7nI44z8l5KCqZbsaYH4A9wAPW2g1OBxIRESmKClw5ocC/81pHtMZFAPszNwKQlePlnwt+5taezagVElDsrtbvSqZ2zePkhHzL5G3/ILTFAcD3L6O3twCh4AmFD3fNgl0Q2iKQ7NRmZBy/EJPTBptdky37jzHwlWVsemYAnf+6gEa1gqgd6lvT8liG1rOUisvj8ZCUlERkZKSK3ArMWktSUhIej8fpKBXdGqCptTYl91Si2UDzojY0xowFxgI0adKk/BKKiIjkUoErgPeUW9x+bmr7t+SAn6/Anb9hH5O+2saR1Cz+em270+5p95E0jufsY0P2JFz1f8TPuKjpvZCudQdxSZM4/vZpIvuTfSPjWzcMYEviDlyBB3B5duEfshV3jU1Q71OyU6PJTu5AVnIHvks4REpGNpv3HaNLjBuArGwvGdk5+LtcHDyWwWc/7mFMzxgVE1IhNGrUiF27dqElzCo+j8dDo0aNnI5RoRVcws9a+7kx5jVjTG1rbWIR204FpoJvFuVyjCkiIgKowBVOlLcnl4bNQ7twIPsNbnl3Lh7q+bY96Z8rB49lkJyWxYV1QknPyqDPtIdxRyzBhPjRLfI6nrlsHPVC6uVv37LmUX738lIAhsS34ck5hpy0aKALGYBxJxLT9Bf2+X2Dp/4sAut8wb83XYnxb4HNrsX6Xb6p2Y+kZXHRE/O47KIo9ians3nfMQbGNqBeuDox4jy3201MTIzTMURKhTGmHrDfWmuNMV3wzd+R5HAsERGRIqnAlROzKJ90e5e6vVh2eBrL931JZmI/AEIC/Aptc+VLS0lMySCi5mH8671HQO2dZB3pQMbBKxnR8wrqhdQutH3LejXyLw9u35An5/hO43pnTBcMhpXbk7i/30hG//s7vk74HnfEclb5zSHkQshKjic9sQ8QQVKKb3bnr7ac6JAdS89SgSsicpaMMf8BegO1jTG7gKcBN4C1dgpwA3CHMSYbSANutjp5WUREKigVuJLPAGRngr/vHNtWUU3IWd0cd81VZCZdBtbN2p1HSE7NIjzYN1Q4MSUdd82VZNb9jIycQNL3jiAnpTUA9WueWmy6XIYH+1/EsfTs/H0A9LywNsYYejb3FcQv3dyB3w5dxJ/ea8OR3QdIDVqIu+Z3uMPXkHWkI39f0AeoVWjfR9KySv+XIiJSxVlrhxRz/6vAq+UUR0RE5Lw4uQ6uVBCFvojPTMm/eHGzCO7sMAaX+yjuWt8AsHrHYQa+6htivOPIXoIavYWn/mxyUmPI2nFffnEL0CA8qMjj/fGyC3nkypYAPP67Vlwf3+iUc2dreNy0aRBO3bBADh8NIWP/YOomjyfrcFfc4WsIueD/CIiaD66M/Mckp6rAFRERERGpztTBlfx1cA1AxlEI9i2/Y4zhT92uZEva53zjWsCR9PrkpDZn5+Fj3D77ZZYfehe/kCzS9w3k8obXMWFkLDuSUrl+8goAgk4azlyU23o1O+P9Y3s147vth/BamD3udyzf2pU73l9IYJ35BNb+CnfNVWQc6E92cjz7jqZz4Gg6dcI0TFlEREREpDpSgSuFz8HNSCl0nzGGZ3o8w+h5o8lsOo2cjChc7iOsSM4iJyOaOM9tPDb0UprXDcXj9stfxqe09GlZl1+fu4rjGdmEBPozoG09bHZN0vf8nsxD3fDU/YygBjPJqfUNT827hidmN2bu3T15ddFW7u/XgqaRIbj9NFBBRERERKQ6UIEr+R1csJBx7JT7IzwRvHfVe8T98ylcQTvJOd6C7GOt+L9B13NNh1OX11j60GVk5py69ND5CAk88VJ97Hct2bDnKIkpkSzf2hj/sB8IrPM5wdGvkXX4Yq56NR28HpZvTeRoejaf3dWTtg3DSzWPiIiIiIhUPCpwJZ+vg3tqgQsQ7A7mzWsf4Yuf9vLut78B0CwqtMhtG0cEl1FCn7G9LgBgzW+HWb41iQmXD+fR2S0JjPoSd61v8K/xExn7B3H0WDvA8O2vSSpwRURERESqAY3dlJMmmSq6wAXocWFt/nJNu/zrTSNDyjJWseKb1GLNk1cwpEsT8HrI2D+Y1IQ/YrPDCGr0HkGN3sL4J5OR7eXAsXRNQiUiIiIiUsWpgyv5jAWyM4rdLk94kLv4jcpYRIhvSaPrOjQkM8dLDU8ToiP7MGnNW/jV/JyQZi+yePdwnp/fDDDENa7J7D/2cDa0iIiIiIiUCRW4UngW5RIUuF1jIth9JK1sQ52lf/w+rtD19btwmyfvAAAgAElEQVSvY+6mFnjqz2Sz378IatSS9H3Xsm4nJKdlFSrOf9qdzL9XJPC362Pxc5mTdy0iIiIiIpWEhihL4QI3J7PY7T+4vRvLHu5TtqHOk8fth82KJO2320jfNwi/kG2ENHsR//DVfLMtsdC2Y976npmrd7GnghXtIiIiIiJydtTBlXwl7eBWBvf0bU7XmAgs8NBMF9kpF+FpMJOgBh9y3+Kf+HLz3ew46GLmuG6kZuYAkJiSUeYTZImIiIiISNlRgSuFJ5mqIgVu44hgGkcEc+BYOgDh7voc2TEWd8RyAqPmMz/5AdKTbiQxpSNZuUsaHThWNZ67iIiIiEh1pQJXCqyDC+RUrSKvTg0PSx68jNo1AvjXku2MueRKYv/aAk/D/xDc+N88880R0rM7Am4VuCIiIiIilZzOwRXyGrhVaYhyQU0igwkO8Oeey5sTGujPW8MHcXfLV8hM6snivbMJjnkFV+AeDqrAFRERERGp1FTgSr6STjJV2V3SPIpR3ZuTeXAgqb+NxvilERw9iZVJs/Bar9PxRERERETkHKnAFSwFiroq2MEtisftR4PwIHKOt+DaqH8Q6m3Dxox3uWPBHSSlJTkdT0REREREzoEKXCkwRNlWiw5unqaRvhmTL4qqxy0X/pn0vdfw/b5V3PDpjXy/73uH04mIiIiIyNlSgSuQtw6updp0cAHim9QCoHZoIIPaNyTryMUc2XoHx9P8GD1vDH9e+hIHjqVx13/WMu+nffT82yJ+2p0MQI7Xkpa7vJCIiIiIiFQMmkVZ8mdR9k0yle5olvJ0V98LaRIZTL829fBzGTxuF+kZ9Tmw5Q489T5m5q9vsGj7t/y25Rq+3LCPjGwvf5+/hVeGdOAvn23kw9W72P7c7zDGOP1UREREREQEdXDlZNVoiHKgvx83dWqMn8tXoM4c1913hzeQ9D0309o9hsPezQTHvER2wFYAlvx8kPZ//pIPV+8C4Li6uCIiIiIiFYYKXMHaAuvgVqMhyidr2zCc/m3q5l4zHNwTh//+e8EbSFCTfxEQuQgoPMtyUkr1/X2JiIiIiFQ0KnCl8BDlatTBLUpESCAAMbVD+DXxOIcO1+Z4wl1kH40lsM6XBDV6G1xp+dsnqsAVEREREakwVOBKgVmUqdYdXIBHrmzJhGvaMnV4x/zbwgNDSd9zM2Na3Y9f6M+ExLyKK3AfAMu3JvF9wiGn4oqIiIiISAGaZErUwS0gPMjN8IubAtD7oigWbznIE1e1omtMJE0ig2kW1pwnVjxEcPQk0vfcwD/+B/wPXro5jqvjGjobXkRERESkmlMHV/Kpg1tYv9b1AGgaGUKT3DVzB7fswT2tXiMnvQFBjf5DYJ25QA73vL+ONb8ddjCtiIiIiIiowBVNMnUaQ7o0ZsH/60WXmIhCt4/p1p55v38PknsQELmUoCbTMH4pXPfaCub+uLfQ77PQ71ZERERERMqUhigLFBqirAI3jzGGC+vUKPK+phFhNMj5A9v2NMBTbxbBMa+QtnMks9fVZf6GfazcnkTTiBC+SzjEZ3f1pG3D8HJOLyIiIiJS/aiDK/nn4ALq4J6F2jUCyE7uSOqOOwAIjp7M17sW8ckPe9h/NIPvciefmvTVVidjioiIiIhUGypwBQCTN5S2mk8ydTaC3H4AeNMbkrr9T0QFRhPY8B0CIr9i3KXN8rfbvO+YUxFFRERERKoVFbiiDu45CswtcAEa1KjDnOvfJSC9I4F15rMvcDqYLAASj+l3KiIiIiJSHlTgCtbmnn8LYHPAm+NknEqjQbgn//IfujYhLDCY72+bzt0d7mbhznmENP0Xxu8YxzKySc/S71REREREpKxpkikBvCcKXPB1cQOCnQpTadx3RQsiQwMZ0a1p/nBll8vFbbG3ERMew2PLHqNm66ns/XkI2xOP06p+mMOJRURERESqNnVwhfyVbEzuyyE73bEslUlwgD/jLr2A4AB/jCn0FQGXN72ctwa8hcsFwdFTGPjGGySlaKiyiIiIiEhZUoErQO4QZf8g3xVNNFUqWkW24tmu/8KbGUlQ47fo+spzrPw1CWstXq8lJSObrByv0zFFRERERKoMDVGWE5NM+QdC1nFNNFWKWtRuSOqOcQQ1fJegBh9x97xUAo8PIMzj5qfdRwF49MqW3H7pBQ4nFRERERGp/NTBFSzW18F1q4Nb2uqGeXjppq4sHfkOF0cNIDXkC/YHvMNPuw/nb/PcF5sdTCgiIiIiUnVU2ALXGDPAGLPFGLPVGPOI03mqMovFWHwdXFAHt5RdHdeQ2qEhTL3y7wQdH0BAzVUENX4LXPo9i4iIiIiUpgpZ4Bpj/IBJwJVAa2CIMaa1s6mqsLxlgvxzl73JUeFVFowx1MwYSPqe6/EL2Upwk6kYvxQAvF5bzKNFRERERKQ4FbLABboAW621v1prM4H3gasdzlTF2RMFbraGKJcVt5+LrOTOpO0cgSvwAEFNX8f4H+FYRrbT0UREREREKr2KWuA2BHYWuL4r9zYpA/nn4KqDW+bu6dscgJzjLUn7bQyBgSkER09h44FtDicTEREREan8KmqBa4q4rdAYTmPMWGPMKmPMqoMHD5ZTrKqp0CzKoHNwy1C/NvVImHgVADlp0dzY8FkwWTywfCybD2myKRERERGR81FRC9xdQOMC1xsBewpuYK2daq3tZK3tFBUVVa7hqhprT+rgqsAtN10btiN1xziOZ1iGzR3F2gNrnY4kIiIiIlJpVdQC93uguTEmxhgTANwMfOJwpirNt0xQ3hBlnYNbXppEBGMzo0jedjtpaUGMmX8bS3ctdzqWiIiIiEilVCELXGttNvAnYD6wCfivtXaDs6mqAXVwy81/bruY2y9tRt1wD34ug82uReqO20lPrcWfFt7F8t3LSc/KYekvB7FWMyyLiIiIiJSEv9MBTsda+znwudM5qgNrvZpkqpx1uyCSbhdEArD0ocv47Mc9PPv5ZtJ+uw2avMEdC/5EC+5i1aa6AEwd3pF+beo5GVlEREREpMKrkB1cKV+nzKKsZYLKVYOaQYzqHsNTA1sz/+4r6RT4KNnpUWz2voxfyBYA7vtgHT/tTnY4qYiIiIhIxaYCV8BajOXELMrq4Ja7AH8Xo3vG0KJuDaYPv5TUHbfhzaxLaJN38AvZzPHMHAa+sszpmCIiIiIiFZoKXCF/BSadg1sh+Pu5wBtM6o5baRzajJDG7+Z3crcdTHE4nYiIiIhIxaUCV8gvcP38wbhU4FYU3mBeunQyF9S8kBpNZuAX/CtfbT7gdCoRERERkQpLBa74hihjfcWtX6CGKFcA/dv4JpdqFhnFtAGv0zS8ESGN32b+1u8dTiYiIiIiUnGpwJUTk0xhwD9Ak0xVAK8MiWftk1dgjCHCE8HUK6bi8avBJu8/mLjwK7xeLR0kIiIiInIyFbgCeQWuMergVhAB/i5qhQTkX68bUperosZjrT/vJDzOom0bC22vgldERERERAWuABTq4Aaqg1tBtYiMJu23MUAOT393N/uO7wPgnW8SaPbY5xzPyHY0n4iIiIiI01TgCtjc7p9xgV+AOrgVVL0wD97MuqTtHMPx7KPcufBOjmUe461vdgCwUBNQiYiIiEg1pwJXTpyDa/I6uCpwK6K6Yb5lnLzpDQlMGs32I9u576v7iArzA+DrLQedjCciIiIi4jh/pwNIRZB3/qbxdXBV4FZI9cI9+Zf3H2hCU89QVtq3yErNAH7PgWPpzoUTEREREakA1MEVLGAsuR1cj4YoV1C1gt0M6dKYCVe3AWDHb63IONAfd/g6AqLmk5iic6dFREREpHpTB1dOnIOrZYIqNGMMz10XC0CXmEjCgvz5v/kN+XTPEQJrL2bf4SjgEmdDioiIiIg4SB1cQcsEVT4X1atB/fAgXrgpjuW3vkzDgHiyan7Et3tWYq2WDBIRERGR6kkFruArcK1vFmUtE1Tp1A4N5ppGD+HNrM39X9/PwMlzGP/Jhvz7j2dkq+gVERERkWpBBa5gbYF1cLVMUKXUIKwWaTtHkpGVw3b/V/j3t5sBOHA0nTZPz2f68gRnA4qIiIiIlAMVuOLr3oKWCarE6oV5sFmRhB0bgysgkaAG75OamUlCUioAc3/c43BCEamojDHTjTEHjDE/neZ+Y4x52Riz1RjzozEmvrwzioiIlJQKXMFSYPiqlgmqlNo3Dic00J9fd9YnY/8g/Gts5tlvXuRoWhYAgf5+DicUkQrs38CAM9x/JdA892csMLkcMomIiJwTFbgCtsAkU1omqFIK9PfjspZ1APBP6UHm4a7MSXiXpXsWARDgr7e6iBTNWrsEOHSGTa4G3rY+3wI1jTH1yyediIjI2dG/egWbP4uyS8sEVWLdmkUCUC88iIz9g6gT0JxP9/wT407E32UcTicilVhDYGeB67tybxMREalwVOAK+csEoWWCKrMuMbUA8HMZaoeEkL1vGJlZENToXY5mHHc4nYhUYkV9Q1bk1OzGmLHGmFXGmFUHDx4s41giIiKnUoErABjLiUmmrBdysp2OJGfpgqhQxl16Af/8fRxNI4PZsT+QtD2/xxW4nx1mhpYKEpFztQtoXOB6I6DImeustVOttZ2stZ2ioqLKJZyIiEhBKnCFE1/E5y4TBOriVkLGGB65siVtG4bTNCIYgId6XU2tzCtJC/yWWVtnAZCd4yU7x+tkVBGpXD4BRuTOpnwxkGyt3et0KBERkaL4Ox1AKoKCk0wF+m7KzoCAECdDyXkY0rUJTSKDGdurGYkpI3jvt194buVzxNWJ4/4Ze8nI8vL5PZc4HVNEKgBjzH+A3kBtY8wu4GnADWCtnQJ8DvwO2AqkArc4k1RERKR4KnDlxDJBxnWig6ulgiq1ztERdI6OAKB+eDCpu2+kVpvXePDrh1i7czhYf77++SCXttAQQpHqzlo7pJj7LfDHcoojIiJyXjREWXKXCbJA7jJBoCHKVUjbhuHY7DD2bhvMz4e3EBg1H4AnZq93OJmIiIiISOlSgSsnFBqirKWCqoo2DcIAyElpTeahiwmIXErHlgfYeyRdE0+JiIiISJWiAlcAb4FlgvKGKKc7mEdKU0igP/3b1CUyJICMA1eRk1GHnX7TyTHHyMjWZFMiIiIiUnWowBVsoUmm8oYoq4Nblbw+vBNLH74MrJv+UfeT6U0hsN4crn51Ob8lpTodT0RERESkVKjAFYATHVx3boGbleZgGikLwQH+/Di+H/+45kp61RmKO2w921KXc+vb3zsdTURERESkVKjAFQCMxTeLsn+Q7wYNUa6SwjxujDH0a3gzOWkNCaw3h61J+3QuroiIiIhUCSpwBWzueZiFJplSgVuVhXkCSd97I8aVTkDdOew67OvY7z6SRqbOyxURERGRSkoFrlCod+fO7eBmqcCtykIC/fFm1CMz8XLcYev5z4ZPSc3MpsfERVo+SEREREQqLRW4krsOLoUnmcrWObhVWWigPwCZSb3ISWvIhwkvs+XgfgDmrNvjZDQRERERkXOmAlfA2BOTTOUXuBkOBpKyFhLol3vJj9rpw0n3pvD6j68AkJWjIcoiIiIiUjmpwBUADNY3yZRmUa4W8jq4AM3Cm5OZ1JPlB+biF5SAV/NNiYiIiEglpQJXIG8GXWM0i3I1EVKgwO3Xuh4ZB/vizQonsN4sIIe5P+7lmU83OhdQREREROQcqMAVLAWGKPv5g/FTgVvFuf18b/0gtx9/6NqED267lIx9g/Hz7McdsYw/vreG6cu341U7V0REREQqERW4Qv48ysZX5uIO0izK1cCUYR2Zd+8lAHRtFsmjvW8kNKc9gVELMP6HATiUmulkRBE5S8aYScaYf+de7udwHBERkXKnAlegYAcXfBNNaRblKm9A23o0jQzJvz6mZwyv/+4vAATW+xSA/Uf1RYdIJZMJ/Jp7uY+TQURERJzgSIFrjHneGLPZGPOjMWaWMaZmgfseNcZsNcZsMcb0dyJftWVyXw7+Hs2iXE21rdOUzMQ+uGtsxC94KweO6nUgUsmkAuHGGDfQxOkwIiIi5e2sClxjTIgxxq/4LYv1P6CttTYW+Bl4NHf/rYGbgTbAAOC1UjqenIHFYiwFhih7NItyNeVyGTIP9cSbGUFg3c/Ym3zc6UgicnaeBrYBrwHvOZxFRESk3J2xwDXGuIwxfzDGzDXGHAA2A3uNMRtyu7DNz+Wg1tovrbXZuVe/BRrlXr4aeN9am2Gt3Q5sBbqcyzHkLNiThygHaZKpamzePX14uMv9+Hn2sWTfXKfjiMjZ8bfWvmatvc1a+5nTYURERMpbcR3cr4AL8HVY61lrG1tr6wCX4CtMJxpjhp1nhtHAF7mXGwI7C9y3K/c2KVO5BW5eB9c/UAVuNdayXhjDYwfhyriA7468x9HMo05HEpGS+z9jzHRjzDRjzINOhxERESlvxRW4l1trJ1hrf7TWevNutNYestZ+ZK29HvigqAcaYxYYY34q4ufqAts8DmQDM/JuKmJXRa5TYowZa4xZZYxZdfDgwWKehhSnUAdXsyhXe8YYWgUMI8um8PoPrzsdR0RKyFr7R2vtaOBeoGZx24uIiFQ1xRW4s3KHKIecbgNrbdZpbr/cWtu2iJ85AMaYkcBAYKi1Nq+I3QU0LrCbRsCe0+x/qrW2k7W2U1RUVDFPQ87spGWCNIuyAJ3qtyPzSCfe2TiDf3y1zOk4IlICxpjHjTF9AQ/g73QeERGR8lZcgfsvYBCw3RjzgTHmGmNMwPke1BgzAHgYGGytTS1w1yfAzcaYQGNMDNAc+O58jyclVGiIsmbPre56tYgi82A/vDl+TP3pNQ4e02tCpBIwQH3gQWCLw1lERETK3RkLXGvtHGvtEKAp8DEwEvgt9/yeK87juK8CNYD/GWPWGWOm5B5vA/BfYCMwD/ijtTbnPI4jJWCxGCyFhyirg1vddYmJYMKgbmQeugR32Ho+2/Kt05FEpHhX4huaPM1aO93pMCIiIuWtRMsEWWvTrLUfWGuvBfoBHfAVoOfEWnth7oRVcbk/4wrc91dr7QXW2oustV+caT9SWjTJlBStbcNwMg/1wpsdwvtbp7J6x2Hu+2Ad2Tne4h8sIk64Dt8KBNcaY95wOoyIiEh5K1GBa4ypa4y5yxizHJgNfAl0LNNkUq60TJAUpX2jcP52bSfcx65gT8aP3PTWW8xau5udh9XhF6mghlpr51lrJwIvOB1GRESkvBW3Du5txphFwBqgBfCQtbaZtfZha+26ckkoZc+eNMmU26NZlAXwzab8+85NaB3aH5tVk8A68wHLbhW4IhWKMaamMeZN4AZjzJ3GmB745roQERGpVoqbYbE7MBFYUHCZIKlaLBZjAZP7fUfeLMrWnih6pVprXDOM7365gqAGH+Jf4yd2HY51OpKIFGCtPQLcYozpDyQCsfjmzhAREalWzljgWmtvybtsjIkFogs+xlqrD88qovAQZY/vz5xM3/m4Uu01rBVEdnIHAuotxxs1n0c+bk2flnWoE+ZxOppItWaM+SdwX95ye9ba+bl3rXYulYiIiHNKeg7udGA6cD2+ZYMG4VvDVqqEk4coB/n+1EzKkqthzSDAxWV1RuAKTMQ/fB0LNh1wOpaIQArwSd569caYfrnzZYiIiFRLJV0E/mJrbesyTSIVQIFZlEETTUm+uCY1qR/u4c4uV7Pqfx9wMPIrElNucjqWSLVnrX3CGPMHYLExJgM4DjzicCwRERHHlKiDC3xjjFGBW2WdvExQbgdXBa7kuiAqlG8e7UuzqFCe7HEPrsBEvk/8yulYItWeMaYvcBu+wjYKuNtau9TZVCIiIs4paYH7Fr4id4sx5kdjzHpjzI9lGUzKj80vcHNfDu7c8yo1k7IU4bIml+HObsia5P8ybdlWp+OIVHePA09Za3sDNwAfGGP6OBtJRETEOSUtcKcDw4EBnDj/dlBZhZLyZ7CcMsmUOrhSBJdxcXTfZbgCE3ll5UxW7zhMZrYmWRcpT8aYbsYYY63tk9extdauB64E/uJsOhEREeeUtMD9zVr7ibV2u7V2R95PmSaTcnTyEGUVuHJmd3QaTE56PbLDvuT6yct4aeHPTkcSqW5GAquNMe8bY0YZY+oBWGv3An2djSYiIuKckk4ytdkY8x7wKZCRd6OWCapqNIuylMz9/Vvx3bs3sDHnVfzDfuTn/fWdjiRSrVhrxwEYY1ri69r+2xgTDnwFzDPGLLfW5jiZUURExAkl7eAG4Sts+6Flgqqgk5YJyp9FOaPozUWA9hE9yUmvS0DtRbjyXkMiUq6stZuttS9aawcAfYBlwI3ASmeTiYiIOKNEHVxr7S1lHUScY7EYSxGzKKuDK6dXO9RDZtJlBDV8n59TvgM6Ox1JpNoxxvwTuM/6pAGf5/6IiIhUS2fs4BpjnjDGRJzh/j7GGHVyqwBT4L+aRVlK4vJWdenb6AoCqU2i3xd4vZpoSsQBKcAnxpgQAGNMP2PMcocziYiIOKa4Du564FNjTDqwBjgIeIDmQBywAHi2TBNKOdAkU3L2mkWF8vqILtwz93oWJb7OooSVXN6sm9OxRKoVa+0Txpg/AIuNMRn41sN9xOFYIiIijjljB9daO8da2wMYB2wA/ICjwLtAF2vtfdbag2UfU8pU/umTKnDl7F174TV4s0N46utXSM3MdjqOSLVijOkL3IavsI0C7s5bNkhERKQ6KtEkU9baX6y1/7bWPmet/ae1dn7uuT5SJZzUwdUsynIW2jSIIutQd4651vPk5/9zOo5IdfM48KS1tjdwA/CBMaaPs5FEREScU9JZlKUKs3kFbl4H10+zKEvJ1Q4NIPNwN2xOAIv2fuB0HJFqxVrbx1q7LPfyenxLBv3F2VQiIiLOUYErJ5jcl4PL5StyNYuylIAxhi/vGUDz4MvJClrL3xesoMfERfyy/5jT0USqHWvtXqCv0zlEREScUqJlgqSayBuiDL6ZlDWLspRQi7o1uLbZEP6+cT7T1r9FxpHBrN15hOZ1azgdTaRKM8b8vyJuTjbGrLbWriv3QCIiIg4rUYFrjIkB7gKiCz7GWju4bGJJ+bIYLPlDlME30ZQmmZKz0L5+NNnfxuIOX0XGwX4cz9CEUyLloFPuz6e5168CvgfGGWM+tNb+3bFkIiIiDihpB3c2MA3fB6gWu6xi7MmTTIEKXDlrMVEhZB7qiTt8LQG1vmP34VbkeC1+LlP8g0XkXEUC8dbaFABjzNPATKAXsBpQgSsiItVKSQvcdGvty2WaRBxlLBTq4LqDNIuynJUwj5sv7/wDE1avYE32N7yxrAcpGdlMvD7W6WgiVVkTILPA9SygqbU2LXddXKmOxoc7ncAZ45OdTiAiFUBJJ5l6yRjztDGmmzEmPu+nTJNJufJ1cAu8HPwDNYuynLUL64Qyos1w8D+Mf40NvP/9TqcjiVR17wHf5n5GjweWA/8xxoQAGx1NJiIi4oCSdnDbAcOBPpwYomxzr0ulZ31/FBqiHKRZlOWc9G7UG29mBAERy8g+Fou1FmM0TFmkLFhrJxhjPgd64vuucpy1dlXu3UOdSyYiIuKMkha41wLNrLWZxW4pldhJsyhnpjoXRSotP5cfmYd64Kn3KS7Pb+w8lEaTyGCnY4lUZdn4vny2+IYoi4iIVFslHaL8A1CzLIOIkzTJlJSuwLSu2JxAAiKW8WtiitNxRKosY8w9wAygNlAHeNcYc5ezqURERJxT0g5uXWCzMeZ7IP/ETC0TVDWctECQjwpcOQ9z77qc575dyzLXLNbv20Hvi+o4HUmkqhoDdLXWHgcwxvwN+AZ4xdFUIiIiDilpgft0maYQx506yZQHslTgyrlpGhnC45eM4cqPP2bJvs+4i85ORxKpqgyQU+B6DkV8ZykiIlJdnLHANca8Crxnrf26nPKII4qYZMqtDq6cn8ZhjQnObsPWtIUcSn2YiGCdhytSBt4EVhpjZuVevwbfuvUiIiLVUnHn4P4C/J8xJsEY8zdjTFx5hJLylnsOLifPoqwCV85Px4iryDbJdHnxJbxe63QckSrHWvsPYDRwCDgM3GLt/2/vzuPkqOv8j78+3dNzT+7JfZILAjlIQgwCCggKIkYRBQ9EFkV3PVZX1wVdXdT1J7quICvoIh7gqgh4AXITLjkTIAc5CEnIRa7JNckcmZnu/vz+qJrJJJkzc1RP9/v5ePSju6qrqz/fmpru/tT38huijUpERCQ6bSa47v5jdz8VeDvBl+evzGyVmX3TzKb0SoTS4xww9yMGmSqABk0TJF3zmVPeTbp+IImBz7O3RoOwi/QEd3/J3W8Mv7NfiToeERGRKHVoFGV33+ju33f3k4GPEEwbtKpHI5MING+iXATpBkinWt9cpB0zxwxi1oDzyCtZz8vbXos6HJGsYWYHzGx/eDvqcdTxiYiIRKVDCa6ZJczsQjP7LfAAsAb4QI9GJr2ohT64eYXBvWpxpYuunHkJno7z1/V3Rx2KSNZw9zJ37xfejnocdXwiIiJRaTPBNbNzzeyXwBbgKuB+YKK7X+Luf+mNAKV3BKMoxw+tSBQF9+qHK100afAIkgem8/S2B7n+0eVRhyPS54XfzT83s5nh8lVRxyQiIpIp2qvB/RrBfHonuPuF7v7bxrn2JJv40dMENSa4qsGVLhrar4CGvfNJWy03L76bvdXqiyvSRf8E/CtwmZmdDWgASBERkVB7g0yd5e4/d/c9vRWQRKGFBDdPNbjSPQoTcYp9IqmDw0kMfJ7HVu+MOiSRvq7C3fe5+1eAd0LXJ5o2s/PM7DUzW2tmV7fw/CfMrMLMloS3T3b1PUVERHpCh/rgSvY7uga3sQ9uTRThSJYZNaCYhn3ziBduZfFWNVMW6aK/NT5w96uB27uyMzOLAzcB5wPTgA+b2bQWNv2Du88Kb7d25T1FRER6ihJcwRsHmYq11ERZNbjSdSP6F9JQOQtPx1lW+WjU4Yj0ae7+105ULK0AACAASURBVCOW/6eLu5wHrHX39e5eD9wBLOjiPkVERCKhBFeAFmpwm5ooqw+udF1JQR6ki0lWTWNr8lkaUg1RhyQih4wCNjdb3hKuO9IHzGyZmd1tZmN6JzQREZHOiTTBNbOvmJmb2ZBw2czsxrAP0DIzmx1lfLmjcZogDTIlPaMoEYzQ3bBvLimr4qLbfs7OA2odIJIhrIV1fsTyvcB4d58BPArc1uKOzK4ys8VmtriioqKbwxQREWlfZAluePX3XGBTs9XnA5PD21XATyMILSeZuxJc6TEnjeoPQPzgVNIN/Vhb8zhfuWtZxFGJSGgL0LxGdjSwtfkG7r7b3evCxZ8Dc1rakbvf4u5z3X1ueXl5jwQrIiLSlihrcK8HvsrhV4kXALd74HlggJmNiCS6XHRYE+VwkCmNoizd4LL54/j9p+bz0fnjaaicTV7pazy/4Q3S6SMriUQkAouAyWY2wczygUuBe5pvcMR38XuBVb0Yn4iISIdFkuCa2XuBN9196RFPdbQfkHSrlubBLQ7uNYqydINYzDh14mC++q7jufE9nwJzKH2JPTWaE1ckau6eBD4HPESQuN7p7ivM7Nvh9zXAF8xshZktBb4AfCKaaEVERNqW11M7NrNHgeEtPPV14GsEc/cd9bIW1rVYxWNmVxE0Y2bs2LHHGKU0an2aINXgSvcpyo9z3tQZ3PTqiayrW8zWvbUMKS2IOiyRnOfu9wP3H7Hum80eXwNc09txiYiIdFaP1eC6+znuftKRN2A9MAFYamYbCPr6vGxmw+lAP6Bm+1c/n27i1kINrkZRlh70jlHnEy+o4IkNS/jxo6+zq6qu/ReJiIiIiLSj15sou/tydx/q7uPdfTxBUjvb3bcT9Pn5eDia8nyg0t239XaMucYa68ibJ7jxBFhcg0xJj7hw8nm4x7hp0V1c/+gavvs3decTERERka7LtHlw7yeo4V1LMErjP0UbTm5oagNuzVqImwUjKauJsvSA4wYNJVU9mbx+y4A0Dal01CGJiIiISBaIPMENa3J3hY/d3T/r7hPdfbq7L446vpxgTovdnxNFaqIsPcLM+NfTLiWW2Ee8aBNlhYmoQxIRERGRLBB5giuZoaXRvcgrUhNl6TEfmnYens4jr99SUmnV4IqIiIhI1ynBFZzWanALleBKjynNLyVZdQJ5/Zazp1pN4UVERESk65TgCtBKDW6iCJJKPKTnfPHUDxHLq2Jr3fKoQxERERGRLKAEVwDwllLcvCJoqOn9YCRnXHHy+cQoZJe624uIiIhIN1CCK7SS3oZNlFWDKz2nIF7AsLyZ1CaW8bMnXue6B1ZHHZKIiIiI9GFKcCXUUh/cYvXBlR43qWQ+xA/wgycf4WdPros6HBERERHpw5TgyqF5cI+UV6hpgqTHnTH6DNzjJMpWRB2KiIiIiPRxSnAFWh1FuVhNlKXHzR49klT1RPLKVtDG5RYRERERkXYpwZVQa9MEaZAp6VnHlZeQPHAisfzdxAp2UJdMRR2SiIiIiPRRSnAFaGWaoLxCTRMkPS4Rj3HNmRcDRl7Zq1TXKcEVERERkWOjBFfwNpso14Kr2aj0rH+YP4MxxSeQV7aSqoPJqMMRERERkT5KCa60LlEIOCTroo5EcsD0gacSL9zK+r1bow5FRERERPooJbgSaqEGN68ouNdIytILZpefCsAn7/o/aupViysiIiIinacEV0ItNVEOE1yNpCy9YOrAKaQb+pFXuoat+3RRRUREREQ6Twmu4OZYS6NMNSW4GklZel5pYYJk1VTyStawcfeBqMMRERERkT5ICa6EWmqiXBjcayRl6QUlBXFS1VOxeB2Lti+JOhwRERER6YOU4ErrEsXBvZooSy8YXFLAsMR03GM8suFx/vjSlqhDEhEREZE+RgmuhFrqgxvW4KqJsvSC/LwYz3z13eTVT2Rb/RK+fNdS9lbXRx2WiIiIiPQhSnCFYJbbVubBBTVRll41suBk4oXbsbxKHl65PepwRERERKQPUYIrBCluG31wGzSirfSeWYPfAkC8ZA0rtu6POBoRERER6UuU4ArQYnrbbBRlJbjSexZMm0M6WUpeyTq27lPrARERERHpOCW4ggPe1jy4SSW40nvectxgzp1wGsX93uDNfer/LSIiIiIdpwRXALCWJsJVE2WJyNvHnEaDVbKtZkPUoYiIiIhIH6IEV8JBplqgJsoSkbeMCPrhVsdWU1ufijgaEREREekrlOAKANbWIFMaRVl62cjSkQzKH0G8ZC3bKnWBRUREREQ6Rgmu0OooymaQV6R5cCUSJw2aS17xejbvrY46FBERERHpI5TgSitDKIcSRdCgGlzpfW8dOR+L1/Hy9mVRhyIiIiIifYQSXAn74LaS5SaKNIqyROIdE04FYOnuxRFHIiIiIiJ9hRJcCRLclkZRhqAfrgaZkggMLy2H+pG8uvslUulWh0ITEREREWmiBFdCrdXgFquJskSmKDWFg/H1/PmVjVGHIiIiIiJ9gBJcAVoZRRkgUagmyhKZT887F4s18OTGV6IORURERET6ACW40nYfXDVRlgi9f9rpAKzYowRXRERERNqnBFfalihWgiuRGVQ4iLLYKHbWryKZSkcdjoiIiIhkOCW40s4oyoWQVB9cic7xA2dC4Rssf3Nv1KGIiIiISIZTgiuB1kZRThRDQ03vxiLSzDuPeysWr+Pe1S9HHYqIiIiIZDgluBJqYx7ceiW4Ep0zx70FgCU7leCKiIiISNuU4Apu0PY0QUpwJTrDS4aT70PYWrci6lBEREREJMMpwRXAW58mKL8kSHDTGuBHojM0cQLV9jruHnUoIiIiIpLBlOBKO4NMFQf3GmhKIjSp3wyIV7Fi19qoQxERERGRDKYEVwKtDTKVXxLcq5myRGjusLkA/POf/xhxJCIiIiKSyZTgSsdqcOureykakaN9cOYsPFnGzoZVUYciIiIiIhkssgTXzD5vZq+Z2Qoz+0Gz9deY2drwuXdFFV/uaa0GN0xwVYMrESouyGNSvxmkC9ZRVZeMOhwRERERyVCRJLhmdhawAJjh7icCPwzXTwMuBU4EzgNuNrN4FDHmEodW81sSYRNlTRUkEZs2cCaxRCWvbF0fdSgiIiIikqGiqsH9R+A6d68DcPed4foFwB3uXufubwBrgXkRxZgz3Axr7VRoqsFVE2WJ1ltGngLAM5sXRRyJiIiIiGSqqBLcKcAZZvaCmT1pZqeE60cBm5tttyVcJz2uvT64qsGVaM0fMw1PFbJs98tRhyIiIiIiGSqvp3ZsZo8Cw1t46uvh+w4E5gOnAHea2XG0nGW1OPGlmV0FXAUwduzY7gg5x7WT4KoGVyI2tLQIPzieDdWvRh2KiIiIiGSoHktw3f2c1p4zs38E/uTuDrxoZmlgCEGN7Zhmm44Gtray/1uAWwDmzp3bYhIs7Uul0sGDVqcJUg2uZAYzox9TOJC6hz0H9zCocFDUIYmIiIhIhomqifJfgLMBzGwKkA/sAu4BLjWzAjObAEwGXowoxpxQnw5GpI21diokNA+uZI5RRdMAeGXHKxFHIiIiIiKZKKoE95fAcWb2KnAHcLkHVgB3AiuBB4HPunsqohhzQiod1ODG2q3BVRNlid7UgdPwdB6Ld7wUdSgiIiIikoEiSXDdvd7dP+buJ7n7bHdf2Oy577r7RHef6u4PRBFfLmlIBdcPWq3BzSsETDW4khFmjhpCqnYM9615JupQRERERCQDRVWDKxmiIR0kuNZaDa4Z5JeoD65khIvnjKY4PZl9yTeo1sBnIiIiInIEJbg5LuXt1OBCMJKykgnJALGYMbn/DDBn6c6lUYcjIiIiIhlGCW6OSzY2UbY2ToX8YtXgSsaYUDYN3Hhpp/rhioiIiMjhlODmuPr2+uBCMJKy+uBKhhhZNoDUwZEs3q4EV0REREQOpwQ3xzWNohxrrwZXTZQlMwwpKyBVM55Xd71Kfao+6nBEREREJIPkRR2ARCvZ1Ae3lUGmIOyDqxpcyQzlpQWkaidQn36GVytWMHv4yVGHJCIifdz026ZHHUIkll++POoQRLqdEtwc15BKAu31wS2Bmj29FJFI24b3LyRVMx6AHz71AL/7kBJcka4ys/OAHwNx4FZ3v+6I5wuA24E5wG7gEnff0NtxikjmmD5hbNQhREKXBDKfEtwc19RE2eKtb6QaXMkgE4aU4KlSUnXlvFL1ctThiPR5ZhYHbgLOBbYAi8zsHndf2WyzK4G97j7JzC4Fvg9c0lsx5mLtmmrWRESOjRLcHHdoFOU2mijnK8GVzFFSEHxspWomkOi3jFQ6RTzWxgUaEWnPPGCtu68HMLM7gAVA8wR3AXBt+Phu4CdmZu7uvRmodIxq1kQyUy5erIPev2CnQaZyXEOqAWiniXKiRNMEScZJ1YzH4gf5+t8eiToUkb5uFLC52fKWcF2L27h7EqgEBvdKdCIiIp2gGtwclwxHoY231UQ5vxgaNIqyZI7/uHAa334w6Bf+x5VPc92F50UckUif1lITniNrZjuyDWZ2FXAVwNix3VeLuPyNTd22r1yg5s2dp3Os83SedZ7Os96hGtwcl04HNbhmbVzrSBRDOglJTckimeGK0yaw/OuXQnIARWUbow5HpK/bAoxptjwa2NraNhZ8YfQHjhp90N1vcfe57j63vLy8h8IVERFpnRLcHJdKhk2U2+rDmCgO7lWLKxmktDDBxLLppArWc7AhGXU4In3ZImCymU0ws3zgUuCeI7a5B7g8fHwxsFD9b0VEJBMpwc1xDWET5RhtNVEuCe7rleBKZpnSfwaxvAMs3b4u6lBE+qywT+3ngIeAVcCd7r7CzL5tZu8NN/sFMNjM1gL/AlwdTbQiIiJtUx/cHOfpYBTlNkehLSgL7uuqeiEikY6bPWw2D2wP5sO95oyhzB47MOqQRPokd78fuP+Idd9s9vgg8MHejktERKSzVIOb45JNoyi3leD2C+7rDvRCRCIdN2vY8aSTpSzfvZiLbn426nBEREREJGJKcHNcMt2BPrhNNbj7eyEikY4bPaiYVPUk4iVrgXTU4YiIiIhIxJTg5jhPB4PzdCzBVQ2uZJbSgjyS1ZOI5VUTK9gRdTgiIiIiEjEluDkumQoTXEu0vpESXMlgqerJAMRLXieV1qCuIiIiIrlMCW6OS4UJbjzWxqlQUBrcK8GVDOTJ/qTqyskrWcvOAwejDkdEREREIqQEN8elm/rgtjGgdr5qcCVzXXHa+KAfbvEbrK3YF3U4IiIiIhIhJbg5LtWRBDeeB4liDTIlGemb75nGd8/7ABZr4MmNL0YdjoiIiIhESAlujkunwnlw25omCIJ+uPWaB1cyj5lx/sTTIZ3H4opnog5HRERERCKkBDfHpT2owY3H26jBhSDBVRNlyVAl+SUUp6eysXYxDclU1OGIiIiISESU4Oa4VDpIBtpsogxBgntQTZQlc50+8u0kYxX873PPRx2KiIiIiERECW6OSzXNg9tOgls4AA5qAB/JXF8+fQEAT735ZMSRiIiIiEhUlODmOA9rcPPaS3CLBkLt3l6ISOTYjCwbSUF6NBtqFkUdioiIiIhERAlujmuswY3HE21vqARX+oBxRadQG1vH7trdUYciIiIiIhFQgpvj0h4muO3W4A6A2n3g3gtRiRybc8aeC+b8bPGfow5FRERERCKgBDfHNdXgdqSJsqc0krJktCtOORWrH8YDbzwYdSgiIiIiEgEluDmusQ9uPN7OPLhFA4N7NVOWDFaYyGNY/FQq/TW2V2+POhwRERER6WVKcHNcyhsT3Py2N1SCK33ECf3OAODetfdHHImIiIiI9DYluDku3TiKckcGmQIluJLxpg4+jlTtaK5//g5cfcZFREREcooS3Bzn3jhNUAcT3BqNTiuZrbysgIbKOcQLt3HPqheU5IqIiIjkECW4OS7d1ES5nUGmSoYG99W7ejgika6ZMbo/DZUn46l8bn75diZccz9PramIOiwRERER6QVKcHNc0zRBHWmiHEtA1Y5eiErk2B0/vB+vfft9WPUc3mx4DuLVPLNWF2ZEREREcoES3ByXTqeBDvTBjcWgdChU7eyFqES6piAvTlnD27BYkkT/lyjOb6eFgoiIiIhkBSW4Oa6pD25eOwkuhAmuanClbxicGE+yegL5g56hoqoq6nBEREREpBeoWiPHNfXBjXXgVCgdBvu39nBEIt1jQHGC+q1nUzz2F6ysehQ4OeqQRORYXVsZdQQiItJHqAY3xzUmuIlEQfsbqwZX+pCCvDip6kkka8axIXkPL23cyfPrNQq4iIiISDaLJME1s1lm9ryZLTGzxWY2L1xvZnajma01s2VmNjuK+HJJ2oM+uO2OogxQNjLog5us7+GoRLoumU4DRn3FuTTYPi694wYuveV5quuSUYcmIiIiIj0kqhrcHwDfcvdZwDfDZYDzgcnh7Srgp9GElzsOzYOb3/7GA8cDDpWbezQmke7QkAou3qRqJpKsmkRB+SNY/AAPvLo94shEREREpKdEleA60C983B9o7Ni5ALjdA88DA8xsRBQB5gonSAI61ER54Ljgfu8bPRiRSPdoSDoAJ48dyMEdC8hPpCkYdh9v7q2NODIRERER6SlRJbhfBP7LzDYDPwSuCdePAppXD24J10kPaeyDm9eRJsoDxwf3ezf0WDwi3eXSeWMA+N+PzWHlv1/Gp2Z8kkT/pfx6yf0s2rAn4uhEREREpCf0WIJrZo+a2ast3BYA/wh8yd3HAF8CftH4shZ25a3s/6qw/+7iioqKnilEDjjUB7cj0wQNh3gB7FENrmS+i2aPZsN1FzC0XyFF+XGuPOlK4slRNAz6Ld958O899r7uzsub9uLe4keXiIiIiPSgHktw3f0cdz+phdtfgcuBP4Wb3gXMCx9vAcY0281oDjVfPnL/t7j7XHefW15e3lPFaNcdL27ik7ctjuz9u8o9TdwdYvH2N47FoHwK7FzZ84GJdLP8eD7Daq8CnHV2E7urDzQ9153J6F+WvMlFNz/Lfcu2dds+RURERKRjomqivBV4e/j4bOD18PE9wMfD0ZTnA5XuntG/Eq/+03IeXdV3p85JkwqqzTsyDy7A8JmwbRmodkr6oHT9YGq3XoIVbOMzj3yBulQdNz72Ouf/+Olue481O6oA2LCrutv2KSIiIiId08Gsptt9CvixmeUBBwlGTAa4H3g3sBaoAa6IJrzOO9iQojDRgVrQDOPuxHGwDsY+fDos+T84sB36afwv6Vtq6lOkqk7g4LYPsNru5p8e+WeeefZ8Dtbnddv/cDq8+BOLtdTjApZu3seQsgJGDSjq8nuJiIiIyOEiqcF197+7+xx3n+nub3H3l8L17u6fdfeJ7j7d3Xu17e/q7fu58bHXj6m54v7ahh6IqOelPRWcBB1pogwwem5wv+nZngpJpMccbAgGVRseO4OD297Pi9ufJTbqJixvLw+v3MFX717K6d9f2KW5ctPpMMG1lhPcBTc9w2nXLTzm/We6FVsrmfXth9m5/2DUoYiIiEgOiqqJckb6+C9e5EePrKHyGJLVY3lNJnDSwUlgHTwVRsyCgv6w/okejEqkZ1x/ySzmTRjEdxacxKSic6nZfDmJgn2UHHcj/3L/rdy5eDNb9tbyuxc2HfN7hPkt8S5+uj60Yjunf39hU1LeGRUH6rr25p3k7uyqCt7zlqfWs6+mgadf33XYNvXJNMlwbuKOqkumeGD5tqNet6e6nvFX/407Xjz2v5OIiIhkp6iaKGekumTwI2rL3loGFOd36rX7DwYJ7r1LtzJ+cAnTR/fv9vgg+JF4z9KtXHTyqBabQL6yaS/D+xdSXlpAXju/sN2d/bX1xIqBVmqbjhLPg4lnwmsPQqoBOjL6skiGeNuUct42JRiU7u1TyqmoOoVlO97FFx69mqKRd5Hsv5j6infx3fvh1ImDOWlU5/+PG5soN6SObgnSmQTvi3csobYhxfqKaqaN7Nf+C0IPrdjOp3/zEndcNZ/5xw3u8Ou64n+fWs91D6zm3s+dzt/DxDY/79Dnz8LVO/iHXy/mlPEDueszbz3q9am0s/zNSp5aU8HH5o9jUEnw+Xv5L1/k+fV7+M2V8zhjcjnptNOQTrNhd9C/+bbnNnLpvLG9UEIRyXrXVkYdgYh0EyW4zZTkx6msbWDL3lpWbK3k9MnlLfaTS6edWMwO+7FaWduAu/P5378CwIbrLmj3/W5+Yi0j+hdy4sj+jBxQxIZd1Ty5poLPnjXpsO0276mhvKyAwkScm59Yyw2Pvk5RIs4FMw7vA+vuvP/moOnwkNICFv/7OW2+/0MrtlOXShFreSam1s24BFb+FV5/GI5vv5wimSgWM4b1K2Qmk6jd+GkSA16kZNhC8sb/jGTNeG58cRMn9X8bl54ykcdW7WR4v0KmDC9j1IAiXtm0lzf31fKeGSP5xl9e5TfPb2TDdRfwyqa9/OqZDQDU1B/dzPnAwfabPn/q9sX0K0xQG9bcbtpT0+EEN5V2nlwTTJv2t2XbWLl1P1ecNh5rdgHrYEOK/HiMnQfqeHTVDj42f1yH9t2oui7JHYs284m3jiceXmS7c3EwffmFPzk0/VJjol9dl+Qffh30Nlm0Ye9h+3pk5Q5G9C9k9fYDfOWupQCM6F/IB+cGg+k/vz6Yr3jrvloArr13Bbc/t5GZPXQBUURERPo+JbjNFOUH/VCXbN7Hz55cx0mj+nHf5884bJvV2/fz3p88w32fP53BJYdqeStrG9ixv+PNAg82pPjBg68F75uIc8kpY7hr8Waq61Ncduo4Nu6q4bcvbORzZ0/ijB88zrnThrG/toF9NUFNcWON8e6qOgaV5GNm7GzWLHFXVR1VdUlKC/J4bt1uPnnbIt4/exT/+b7pfO3Py6k4UMfbp5QDaeKd7XI8+Z3Qfyw89V8w5byO998VyUBBbWGMhn3zefbL13D3mrv57+dv47n9N/Psvlu5Y8MJVFSMJ1UzgXRdORuue2/ThaT3zBjJb57fCMAL63dzyS3PN+23pv5Q0+In11QwaWgpqWa1uo0Xyv7yypvct2wbP//4HJJp55GVh4/KvmlPx0ZjPtiQ4q3XLWRPdT1AU1xnHT+UCUNKgOAi2PHfeJAPzhnNqu37efXN/Rw4mGTTnhq+d9H0w/a3p7qe/kWJpiR2V1Ud77/5GWrr0+yqqmPKsFLOmFzO9+5fxfqKo2N84Y09nHfScNZVVLUYb2VtA5+6fTH5eTE+9pZDSXZV2P+5odkFxKVbKqlPbuD25zY2LTeWZ31FFYNLCnj8tZ287+RRHTpWIiIikr2U4DbTOLbUE6/tBGDjrhp+svB1ahtSJOIxlm7ex9hBxdQn0zz5WgVnHT+06bWVNQ2sb/ZDbm91PU+uqaB/cYKzpg7lSL9v1nestiHFwyu2Ux3+IP63u5fxwKvbAdgeDtRy5I/ePdX1rNhayQU3BjUm15x/PN97YPVh2zy9poJzpg3j72srqK5PcceLm/n6u6c19S+cPXYgmNPBxsmHxBPwjm/Anz4FT/0Qzvy3zu5BJGPkxWPMHjuA0yeXU5wo5uMnfpxnXprGo2+8QF6/JVSWrqFweFC76OkEH7rn9xSMKMTrB/G3dRAr2ognS7nk1ieAAgj/o2rqgv/nbZW1XP7LFzlhRD/+6+IZTe+7t6aelDtf/MMSAFZvP3BYs97LTx3HX5duZePuGtbsOMB37lvJglmjeM+MEU2jPafSwf9vLGYs3rC3Kblt7vUdB5gwpITa+hTX/GkZAHe9tKXpvX725Drqk2n+5dwpvO+mZ/jSuVM4YUQZF938LN9530l8KKxNffK1CjbvqW3ab11DmjU7DvC/T61v8bj+7oVNpFLO/ImDAJg1ZgBLNu+jLpmiIC/OA8u3NZVhw+5qpgwr5fWdVewNL+K9+Maew/bVktXbD3D2fz/ZtDxzzICmZF5ERERykx3LiMGZZu7cub54cdcGXK6u3MLnfvVpVjWMYg/9wS1suGvBzRvTwGD5hOH9mDysjHuWbgXgjEnlPL22oml/l80f11SDct6JwzmuvIQR/YPmzs+t3839yzs+vW8iZjSkD/87jR1UzPHDy3h4Zdtz8A4szqd/UaKpz9qCmSP5axjzzNED2H/gTpKJKhZeubLD8QDB1YA/fwaW/QHe+z8w+7LOvV4kg/3uhU187c/LwyXHEruJF20mXriFSWMq2bB/I7G8A0e9zj2Gp4rxVDH9CoqZMGgg+2qcN3Y2gCc4a8ooFq7aA8QYP6iUN3YdpCiRR22DM6xfEXkW5829dQwsLuQTb53AH17cQjINibixZW8tYMwY1Z9EXoy8WIzNe2roV5TgA7NH88y6XTzx2q6jYnrH8UOZf9wQfv3sG7y5N7hgVlaYFzaXPnR567yThvNgeGGt0Yj+hbz/5FEMKsnnb8u38cqmfU3PfWD2KMyMu1/awpDS/KZBpo40eVgZ63ZWccHMEdy7ZCsDihPMmzCYnfsPsmTzPvoXJUjEYwzrV8D6XdXMHN2f0ycP4YcPrWlxf0PK8tl14OhEHuCyU8dxxex3MaZsTIvPd4aZveTuc7u8oxzWHd/NIiJZ5doc7WLTTX3cO/rdrAQ3tHXHCt714KXdFFHfMr0+ye8+tarzL6yvhj98DNYthJMvg3OuhZIh3R2eSK+rOFDHKd99lKFlBYc1/Qc4+/ihLFy9E6yeWGIvltiL5VVj8WosXnPoFmsAazjsvqzIqaqvBdJgHt6nAces738WZ4Lrz7yec8a1Pf5ARyjB7ToluCIiR1CC2yUd/W5WE+VQfvFEfrR2ADMKtnFG9feoJw/wsILDGVySzw8uPokrb1+ENRuU6dJ5Y5g9ZgBf/WNQ2/Pi197BFbctYsWb+w/b/9B+Bdz/hTNYsnkfn7xtMe+ePpy54wbx7ftWcubUcioOHGTF1qNrhACe+Ncz2bK3lsdX72T5m5Xsq2lgwL4q/AAAE9dJREFUzY5g2wtmjOALZ0/mty9uZM7YgcwaO5CS/Dhb99WycPVObnj0dQA+e9ZE6pPOz58+vDnht4r+wIfzlx7jQSuBj9wJC78Dz/4Elt8FMz4EMz8Mo+cFIy6L9EHlZQXc9/nTGTWgiHfe8BQHDjZw00dm88Ibe7ilsUmu55OuHwb1w9rd3zknDOPRVTs448ThPLhme1Nz3UZnTB7C069XAGnOOaGcGz8yk7Sn+fFjrzX9z/7n+07iXScO5/sPrWbcoCLuWLS5afClMCAunjOau1/a0rTmm++Zxm9f2Mi6iioKEjGe/upZ3P7cRn6ycG2YYB/urClDKSmM8/qOKnZV1bH7iCbPd376VMYNKuat1y1k6vAyVm7bT2lBHgu/fCa3Pr0eMFLu/OLpNw573bXvncbU4f34cLM+ygAjBhSybV9Qq/z9i2dw27NvsG1fHXtrDr3vNy+cRm19ioaUU5Qf46LZo/E0PLhiG9/86woAbrh0Fl+8I2jqPfScme3+PURERCR7KQMJxWIxtky6nHPf+DLL5z3Nujlf46fPbONb7z2R6rokYwYV4+7E0iuZNWYAL4dN9U6bMJ73zBjJ8LJyEvEY5SWDuWT2NL6x6VXy4zHePX04j63aSWVVmrLEQK785fNAKRMHDWf8oIF4ahOnjB3LpaeM5eEV27lw5khO/I+HAPjtJ9/CwOJ8xg3ox7gBwXtBMDjLtspalmzax3tmjqS0II9vXXD4iMqDi2D6iNFc/1DQFPrCk6ayr6aeW54I+hefOy34wT1v2AASlV0YJCqegHO/DbM+Cs/dBMvuhJdvD+bKHTkLhk+H8qnQbyT0GwUlQ6GgDPI6Nw2TSG9rnCLo2avPprK2gSGlBUwdXnYowQ1976LpXPOn5S3tgt9cOY+XNu7lg3PH8OiqHby4IehX+vULTuCDP3uuabvZYweG88bG+faCWRQngu4Mxw0uh/R2zp02jI/NOwGAH150KgD/9LaZ1CVTTPtm8Hnx1fOmcuGMkdz1YvDZdPbxQ7ni1OmUJAbw1buXQSxGeXE5o8pq8dQO5k0YxOpt+9nfbGTn//7AGQwMB88790dPsqvy0LgCi//9HIaUFgAwoGAIKzbXAf2YOGIA5cXlXPOu8qZtb33iUFPpH186iwWzRuHu3PDBBKMHFrFhVw2v7TjACSPK+NIfggtsZ0+eyN9eqWLF5gqCvsyBj8496bC+yY0mDzE8FfTNXTD9eB5fUcvLm/ZxoLbTowqIiIhIFlET5SM9/A149kaIJWDwRMgvhUQRxIJrAY1Ha/HGvdTWp3jLcYMpyIvRvC+bE8ylO7i0gOL8ONsqD7J6++G1s1OHlzG4pICXN+1l+qj+lBYcutbweDjIVUuDU3XWG7ur2bm/jnkTBpF256k1FSTiMU6fFDYl3rky6E/75WNootySg5Ww/glY+xhsWwo7V0Gqhb558fwg0c0vCR7H8sJbPLxPBPfN5+c9bK5e69y6w9brB7AcuxVb97PzQFDraGacOaWcxRv3Mrg0n2TKGT2wiOfX7wbg7VPLiYXn23Prd3OwIUU8ZpwxuZx9NfVNtbgnjuzPiq1B850zpw5tOkMrqup49c1KxgwqZlJ5aYvxNH5evG1KOe6ENcGHPj+q65NNAzadNXUodak063ZWMWloKcu2VILBgdqGw17TPN7ysgLisWDcgUYvbthDdV2SIaUFTB5WSmHe4RfJGmMqSMR5y4RBxFuZZ7u2IcXijXspzo8zZ+xAFm3YQ1VdkpEDihjRv5CSgrw2X9t4nA/7rHzbV2Ds/BZf0xlqotx1aqIsInIENVHuEjVRPlbv/E4w9c3rD8PutdBQAw21kAyStOCnljNneB71yRgFqWpIHn6RwHDGFBEkdrXQnyQD7fAEtySZpqA+wanDgVQl1Bx67q0jgmZ+1OzucnEmFAU3anYTB+aUOwV5zfZdOgwmnNHWLjqnsD9MWxDcAFJJqNwMB7bB/q1QvQvqD0BdFdRXBf14Uw2QTh5+a1rXOFVIs2PcdFGmo+uarc+CCzoSrRMGwMj8NDX1yaC2s2Y3c8sBgqSXhjqmD0pRXZckVnNoJOCxhbXsSdUzelAxVrObgcDJQ9LUJdMMiVU1fUZYzaFkcUgMThqYZHBxHdS0PIjTnHKnui5JvHYPDoc+a8L9FAODrIoR/QuhZjcFwLT+QN1eZg52cGfFwcNfAzA4VkWNJZlSZuTHY4d9Hg2yKvItyeQyo7B+Hxwx5lN5vIpk2pk1fADU7qE1RcDpIw1IQ81u+vkBEpbiuBIjka6H2lZfSoEfXVYAUi0PQCUiIiK5QQluS8afFtzaEAMKO7i7WEOK933jQQBOmzSYj8wbx8zpw4+oaTykoMW13aNf+5t0r3geDJoQ3ESyQAwYGN5aMyS8NTcqvDU3oNnj39y5lJr6JD/92JymdQaU07Z+HPq/NuCDX7+f9588ilkXz2xa11qv1ER4//u7l/GemSNg8qF3K9lXyzMrtjPzreOP+qz6zV9fZc2OKn5/Vcs1peMONpBMOZS03xWh+Z4LdlWzftt+Zk0f0er2jWLA+67+GwAbrrqg3e1FREQkN6iJci8Z3/hD7Dr9EBORvi+ddmKxaJv7/+WVNxkzqIg54wZ1+77VRLnr+sJ3s4hIr1IT5S5RE+UM86MPzSSZ7vsXE0REgMiTW4D3nXxknbiIiEgG66ZET9qmBLeXXDR7dNQhiIiIiIiIZLWj514QERERERER6YOU4IqIiIiIiEhWUIIrIiIiIiIiWUEJroiIiIiIiGQFJbgiIiIiIiKSFZTgioiIiIiISFZQgisiIiIiIiJZQQmuiIiIiIiIZAUluCIiIiIiIpIVlOCKiIiIiIhIVlCCKyIiIiIiIllBCa6IiIiIiIhkBSW4IiIiIiIikhXM3aOOocvMrALY2E27GwLs6qZ99RW5WGbIzXLnYpkhN8udi2WG7iv3OHcv74b95Kxu/m6OSq7+H3WFjlnn6Zh1no5Z52XDMevQd3NWJLjdycwWu/vcqOPoTblYZsjNcudimSE3y52LZYbcLbf0DJ1Pnadj1nk6Zp2nY9Z5uXTM1ERZREREREREsoISXBEREREREckKSnCPdkvUAUQgF8sMuVnuXCwz5Ga5c7HMkLvllp6h86nzdMw6T8es83TMOi9njpn64IqIiIiIiEhWUA2uiIiIiIiIZAUluCEzO8/MXjOztWZ2ddTxdCcz+6WZ7TSzV5utG2Rmj5jZ6+H9wHC9mdmN4XFYZmazo4v82JnZGDN73MxWmdkKM/vncH3WltvMCs3sRTNbGpb5W+H6CWb2QljmP5hZfri+IFxeGz4/Psr4u8rM4mb2ipndFy5ndbnNbIOZLTezJWa2OFyXted3IzMbYGZ3m9nq8P/71Fwot/QcM/u1mb1pZgXh8hAz29CB1w03szvMbJ2ZrTSz+81sSo8HnIHM7BNmVhF+Hq0I/0eLo44rk4Xn3cXh40Hh99cV4fKDZrav8ftM2mZmnws/593MhkQdj0RPCS7BD2PgJuB8YBrwYTObFm1U3erXwHlHrLsaeMzdJwOPhcsQHIPJ4e0q4Ke9FGN3SwJfdvcTgPnAZ8O/aTaXuw44291nArOA88xsPvB94PqwzHuBK8PtrwT2uvsk4Ppwu77sn4FVzZZzodxnufusZsP+Z/P53ejHwIPufjwwk+Bvngvllp6VAv6hoxubmQF/Bp5w94nuPg34GjCsh+LrC/4Qfh6dCNQDl3T0hWaW13NhZTYz6w88BNzi7r8KV/8XcFl0UfU5zwDn0Pfn3ZZuogQ3MA9Y6+7r3b0euANYEHFM3cbdnwL2HLF6AXBb+Pg24H3N1t/ugeeBAWY2onci7T7uvs3dXw4fHyD4ETyKLC53GHtVuJgIbw6cDdwdrj+yzI3H4m7gHeGPtj7HzEYDFwC3hstGDpS7BVl7fgOYWT/gbcAvANy93t33keXllu5jZt8Ia/8fMbPfm9lXwqduAL50ZKJlZqVm9piZvRy2mGj8bXAW0ODuP2vc1t2XuPvTvVOS3tHS8TKzL4Q11svM7I4WXpMHlBBcWMTMLgxby7xiZo+a2bBw/bVmdouZPQzc3qsF62VtnHelwAPA79y96QKcuz8GHIgi1kzRyrm3yMzODJ//npl9F8DdX3H3DVHGK5lFCW5gFLC52fKWcF02G+bu2yBIBoGh4fqsOxZhE9STgRfI8nJb0Ex3CbATeARYB+xz92S4SfNyNZU5fL4SGNy7EXebG4CvAulweTDZX24HHjazl8zsqnBdVp/fwHFABfCr8MfyrWZWQvaXW7qBmc0FPkDwfXARMLfZ05uAv3N0rdlB4P3uPpsgqf3v8ILYScBLPR50hNo4XlcDJ7v7DOAzzV5ySfj98yYwCLg3XP93YL67n0xQgfDVZq+ZAyxw94/0WEEi1s559yPg7+5+fRSxZao2jtkngJ+a2bkELRO/FUmAkvGU4AZaqr3J1eGls+pYmFkp8Efgi+6+v61NW1jX58rt7il3nwWMJmiZcEJLm4X3WVFmM3sPsNPdm//YbKtsWVFu4LTwR/f5BE3w39bGttlS5jxgNvDT8MdyNYeaI7ckW8ot3eN04K/uXhu27Ln3iOf/H/CvHP7byID/Z2bLgEcJLpDkSjPk1o7XMuC3ZvYxgu5Ajf4Qfv8MB5YTHEsIvo8eMrPGdSc2e8097l7bk4XIAG2ddwuBBWY2tOWX5qwWj5m7rwB+Ey7/Q9jqUuQoSnADW4AxzZZHA1sjiqW37Ghsqhfe7wzXZ82xMLMEQXL7W3f/U7g668sNEDbbfIKg//GAZs3umperqczh8/05uil7X3Aa8N5wUJg7CJom30CWl9vdt4b3Own6As4j+8/vLcAWd38hXL6bIOHN9nJL92izK4K7rwWWAB9qtvqjQDkwJ0zedgCFwAqC2sds1trxuoBg3JI5wEtHNuv2YP7Jewm6EwD8D/ATd58OfJrg+DWq7taIM1Nb590dBGMD3G9mZb0UT1/Q1jGbDuwjdy40yTFQghtYBEy2YNTVfOBS4J6IY+pp9wCXh48vB/7abP3HLTAfqGxs+teXhE3IfgGscvcfNXsqa8ttZuVmNiB8XEQw4MIq4HHg4nCzI8vceCwuBhZ6H5wY292vcffR7j6e4H93obt/lCwut5mVNP4YCpvovhN4lSw+vwHcfTuw2cymhqveAawky8st3ebvwIUWjDhfSpCoHem7wFeaLfcnaCHSYGZnAePC9QuBAjP7VOOGZnaKmb29h2KPQkvHKwaMcffHCZoaDyDoR3qk0wm6yEBwDN8MH1/ewrbZrs3zzt1vIBgc78/hb1Bp5ZiZ2UUEXYreBtzY+JtH5Eg5O2pdc+6eNLPPEYxiFwd+GTaDyApm9nvgTGCImW0B/gO4DrjTzK4k6Hv0wXDz+4F3A2uBGuCKXg+4e5xG0JdqedgnCIIRLrO53COA2ywYFTwG3Onu95nZSuAOM/tP4BXCAXrC+9+Y2VqCGsxLowi6B/0b2VvuYQQ/hiD4HP+duz9oZovI3vO70ecJmkfmA+sJyhIj+8stXeTui8zsHmApwWiriwn64DffZoWZvUzQMgDgt8C9FkzFtQRYHW7nZvZ+4AYLphY8CGwAvtgbZekNrRyvvcD/WTDyrxGMVL8v/Cy6xMxOJ/h/3ELQXxLgWuAuM3sTeB6Y0JvliFoHz7t/M7NfEXw3fRh4EjgeKA1/t13p7g/1cuiRaeWYGcFvuHe4+2Yz+wnBqPqXm9kXCC64DAeWmdn97v7JiMKXDGB9rOJCRERE5JiYWam7V1kwR+tTwFWNI+7L0XS8uoeOY+fpmElXqAZXREREcsUtFsyJXgjcph/M7dLx6h46jp2nYybHTDW4IiIiIiIikhU0yJSIiIiIiIhkBSW4IiIiIiIikhWU4IqIiIiIiEhW0CBTIhnCzAYTzIUHwVD3KaAiXK5x97f2wHueDHy2q8Pph9NsVbv7r7onMhERERGRztMgUyIZyMyuBarc/Yc9/D53Af/p7ku7uJ9i4Bl3P7l7IhMRERER6Tw1URbpA8ysKrw/08yeNLM7zWyNmV1nZh81sxfNbLmZTQy3KzezP5rZovB2Wgv7LANmNCa3Znatmd1mZg+b2QYzu8jMfhDu90EzS4TbXWdmK81smZn9EMDda4ANZjavt46JiIiIiMiRlOCK9D0zgX8GpgOXAVPcfR5wK/D5cJsfA9e7+ynAB8LnjjQXePWIdROBC4AFwP8Bj7v7dKAWuMDMBgHvB0509xnAfzZ77WLgjK4XT0RERETk2KgPrkjfs8jdtwGY2Trg4XD9cuCs8PE5wDQza3xNPzMrc/cDzfYzgkN9fBs94O4NZrYciAMPNtv3eOA+4CBwq5n9LVxutBM4votlExERERE5ZkpwRfqeumaP082W0xz6n44Bp7p7bRv7qQUKW9q3u6fNrMEPddJPA3nungybIb8DuBT4HHB2uE1huE8RERERkUioibJIdnqYIPkEwMxmtbDNKmBSZ3ZqZqVAf3e/H/gi0Hy/Uzi6ybOIiIiISK9RgiuSnb4AzA0HgloJfObIDdx9NdA/HGyqo8qA+8xsGfAk8KVmz50GPNqFmEVEREREukTTBInkMDP7EnDA3VsahKoz+zkZ+Bd3v6x7IhMRERER6TzV4Irktp9yeJ/eYzUE+EY37EdERERE5JipBldERERERESygmpwRUREREREJCsowRUREREREZGsoARXREREREREsoISXBEREREREckKSnBFREREREQkKyjBFRERERERkazw/wHUandsdQLQdQAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure(figsize=(16, 6))\n", + "\n", + "ax = fig.add_subplot(1, 2, 1)\n", + "ax.set_xlabel('Time (ms)')\n", + "ax.set_ylabel('Vm (mV)')\n", + "ax.plot(times, noisy_values, label='Noisy data')\n", + "ax.plot(times, problem.evaluate(x0), label='Initial guess')\n", + "ax.plot(times, problem.evaluate(x_found), label='Fitted solution')\n", + "ax.legend()\n", + "\n", + "ax = fig.add_subplot(1, 2, 2)\n", + "p = ['gNaBar', 'gNaC', 'gsBar', 'gK1', 'gx1']\n", + "ax.set_xticklabels(p)\n", + "ax.set_ylabel('$^2\\log x / x_{true} $')\n", + "\n", + "x = np.arange(1, 1 + len(p))\n", + "ax.bar(x, 0 * x)\n", + "ax.bar(x, np.log2(x0 / x_true), label='Initial guess')\n", + "ax.bar(x, np.log2(x_found / x_true), label='Fitted solution')\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Summary\n", + "\n", + "In this tutorial, we saw how to wrap a myokit simulation in a PINTS forward model, and use it to set up a synthetic data problem and fit to an AP trace.\n", + "\n", + "In the next tutorial, we'll expand this to also look at the calcium transient." + ] + } + ], + "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.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/action-potential-tutorial/resources/beeler-1977.mmt b/action-potential-tutorial/resources/beeler-1977.mmt new file mode 100644 index 0000000..9356487 --- /dev/null +++ b/action-potential-tutorial/resources/beeler-1977.mmt @@ -0,0 +1,127 @@ +[[model]] +name: beeler-1977 +author: Michael Clerx +desc: """ + The 1997 Beeler Reuter model of the AP in ventricular myocytes + + Reference: + + Beeler, Reuter (1976) Reconstruction of the action potential of ventricular + myocardial fibres + """ +# Initial values: +membrane.V = -84.622 +calcium.Cai = 2e-7 +ina.m = 0.01 +ina.h = 0.99 +ina.j = 0.98 +isi.d = 0.003 +isi.f = 0.99 +ix1.x1 = 0.0004 + + +[engine] +time = 0 in [ms] bind time +pace = 0 bind pace + +[membrane] +C = 1 [uF/cm^2] : The membrane capacitance +dot(V) = -(1/C) * (i_ion + i_stim) + in [mV] + label membrane_potential + desc: Membrane potential +i_ion = ik1.IK1 + ix1.Ix1 + ina.INa + isi.Isi + label cellular_current + in [uA/cm^2] +i_stim = engine.pace * amplitude + amplitude = -25 [uA/cm^2] + +[ina] +use membrane.V as V +gNaBar = 4 [mS/cm^2] +gNaC = 0.003 [mS/cm^2] +ENa = 50 [mV] +INa = (gNaBar * m^3 * h * j + gNaC) * (V - ENa) + in [uA/cm^2] + desc: The excitatory inward sodium current +dot(m) = alpha * (1 - m) - beta * m + alpha = (V + 47) / (1 - exp(-0.1 * (V + 47))) + beta = 40 * exp(-0.056 * (V + 72)) + desc: The activation parameter +dot(h) = alpha * (1 - h) - beta * h + alpha = 0.126 * exp(-0.25 * (V + 77)) + beta = 1.7 / (1 + exp(-0.082 * (V + 22.5))) + desc: An inactivation parameter +dot(j) = alpha * (1 - j) - beta * j + alpha = 0.055 * exp(-0.25 * (V + 78)) / (1 + exp(-0.2 * (V + 78))) + beta = 0.3 / (1 + exp(-0.1 * (V + 32))) + desc: An inactivation parameter + +[isi] +use membrane.V as V +gsBar = 0.09 +Es = -82.3 - 13.0287 * log(calcium.Cai) + in [mV] +Isi = gsBar * d * f * (V - Es) + in [uA/cm^2] + desc: """ + The slow inward current, primarily carried by calcium ions. Called either + "iCa" or "is" in the paper. + """ +dot(d) = alpha * (1 - d) - beta * d + alpha = 0.095 * exp(-0.01 * (V + -5)) / (exp(-0.072 * (V + -5)) + 1) + beta = 0.07 * exp(-0.017 * (V + 44)) / (exp(0.05 * (V + 44)) + 1) +dot(f) = alpha * (1 - f) - beta * f + alpha = 0.012 * exp(-0.008 * (V + 28)) / (exp(0.15 * (V + 28)) + 1) + beta = 0.0065 * exp(-0.02 * (V + 30)) / (exp(-0.2 * (V + 30)) + 1) + +[calcium] +dot(Cai) = -1e-7 * isi.Isi + 0.07 * (1e-7 - Cai) + desc: The intracellular Calcium concentration + in [mol/L] + +[ik1] +use membrane.V as V +gK1 = 0.35 +IK1 = gK1 * ( + 4 * (exp(0.04 * (V + 85)) - 1) + / (exp(0.08 * (V + 53)) + exp(0.04 * (V + 53))) + + 0.2 * (V + 23) + / (1 - exp(-0.04 * (V + 23))) + ) + in [uA/cm^2] + desc: """A time-independent outward potassium current exhibiting + inward-going rectification""" + +[ix1] +use membrane.V as V +gx1 = 0.8 +Ix1 = x1 * gx1 * (exp(0.04 * (V + 77)) - 1) / exp(0.04 * (V + 35)) + in [uA/cm^2] + desc: """A voltage- and time-dependent outward current, primarily carried + by potassium ions""" +dot(x1) = alpha * (1 - x1) - beta * x1 + alpha = 0.0005 * exp(0.083 * (V + 50)) / (exp(0.057 * (V + 50)) + 1) + beta = 0.0013 * exp(-0.06 * (V + 20)) / (exp(-0.04 * (V + 333)) + 1) + +[[protocol]] +# Level Start Length Period Multiplier +1.0 100 2 1000 0 + +[[script]] +import matplotlib.pyplot as pl +import myokit + +# Get model and protocol, create simulation +m = get_model() +p = get_protocol() +s = myokit.Simulation(m, p) + +# Run simulation +d = s.run(1000) + +# Display the result +pl.figure() +pl.plot(d['engine.time'], d['membrane.V']) +pl.show() +