{ "cells": [ { "cell_type": "markdown", "metadata": { "toc": "true" }, "source": [ "# Table of Contents\n", "

1  Runge-Kutta methods for ODE integration in Python
1.1  Preliminary
1.2  Runge-Kutta method of order 1, or the Euler method
1.3  Runge-Kutta method of order 2
1.4  Runge-Kutta method of order 4, \"RK4\"
1.5  Comparisons
1.6  Comparisons on another integration problem
1.7  Small benchmark
1.8  Conclusion
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Runge-Kutta methods for ODE integration in Python\n", "\n", "- I want to implement and illustrate the [Runge-Kutta method](https://en.wikipedia.org/wiki/Runge%E2%80%93Kutta_methods) (actually, different variants), in the [Python programming language](https://www.python.org/).\n", "\n", "- The Runge-Kutta methods are a family of numerical iterative algorithms to approximate solutions of [Ordinary Differential Equations](https://en.wikipedia.org/wiki/Ordinary_differential_equation). I will simply implement them, for the mathematical descriptions, I let the interested reader refer to the Wikipedia page, or [any](https://en.wikipedia.org/wiki/Runge%E2%80%93Kutta_methods#References) [good](https://www.directtextbook.com/isbn/9780521007948) [book](https://www.decitre.fr/livres/analyse-numerique-et-equations-differentielles-9782868838919.html) or [course](https://courses.maths.ox.ac.uk/node/4294) on numerical integration of ODE.\n", "- I will start with the order 1 method, then the order 2 and the most famous order 4.\n", "- They will be compared on different ODE." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Preliminary" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2017-11-23T19:18:23+01:00\n", "\n", "CPython 3.6.3\n", "IPython 6.2.1\n", "\n", "compiler : GCC 7.2.0\n", "system : Linux\n", "release : 4.13.0-16-generic\n", "machine : x86_64\n", "processor : x86_64\n", "CPU cores : 4\n", "interpreter: 64bit\n" ] } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "%load_ext watermark\n", "%watermark" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from scipy.integrate import odeint # for comparison" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I will use as a first example the one included in [the scipy documentation for this `odeint` function](https://docs.scipy.org/doc/scipy/reference/generated/scipy.integrate.odeint.html).\n", "\n", "$$\\theta''(t) + b \\theta'(t) + c \\sin(\\theta(t)) = 0.$$\n", "\n", "If $\\omega(t) = \\theta'(t)$, this gives\n", "$$ \\begin{cases}\n", "\\theta'(t) = \\omega(t) \\\\\n", "\\omega'(t) = -b \\omega(t) - c \\sin(\\theta(t))\n", "\\end{cases} $$\n", "\n", "Vectorially, if $y(t) = [\\theta(t), \\omega(t)]$, then the equation is $y' = f(t, y)$ where $f(t, y) = [y_2(t), -b y_2(t) - c \\sin(y_1(t))]$." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def pend(y, t, b, c):\n", " return np.array([y[1], -b*y[1] - c*np.sin(y[0])])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We assume the values of $b$ and $c$ to be known, and the starting point to be also fixed:" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [], "source": [ "b = 0.25\n", "c = 5.0\n", "y0 = np.array([np.pi - 0.1, 0.0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `odeint` function will be used to solve this ODE on the interval $t \\in [0, 10]$, with $101$ points." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "t = np.linspace(0, 10, 101)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It is used like this, and our implementations will follow this signature." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "sol = odeint(pend, y0, t, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "Text(0.5,0,'t')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t, sol[:, 0], 'b', label=r'$\\theta(t)$')\n", "plt.plot(t, sol[:, 1], 'g', label=r'$\\omega(t)$')\n", "plt.legend(loc='best')\n", "plt.xlabel('t')\n", "plt.grid()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "----\n", "## Runge-Kutta method of order 1, or the Euler method" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The approximation is computed using this update:\n", "$$y_{n+1} = y_n + (t_{n+1} - t_n) f(y_n, t_n).$$\n", "\n", "The math behind this formula are the following: if $g$ is a solution to the ODE, and so far the approximation is correct, $y_n \\simeq g(t_n)$, then a small step $h = t_{n+1} - t_n$ satisfy $g(t_n + h) \\simeq g(t_n) + h g'(t_n) \\simeq y_n + h f(g(t_n), t_n) + \\simeq y_n + h f(y_n, t_n)$." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "def rungekutta1(f, y0, t, args=()):\n", " n = len(t)\n", " y = np.zeros((n, len(y0)))\n", " y[0] = y0\n", " for i in range(n - 1):\n", " y[i+1] = y[i] + (t[i+1] - t[i]) * f(y[i], t[i], *args)\n", " return y" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "sol = rungekutta1(pend, y0, t, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "Text(0.5,0,'t')" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t, sol[:, 0], 'b', label=r'$\\theta(t)$')\n", "plt.plot(t, sol[:, 1], 'g', label=r'$\\omega(t)$')\n", "plt.legend(loc='best')\n", "plt.xlabel('t')\n", "plt.grid()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With the same number of points, the Euler method (*i.e.* the Runge-Kutta method of order 1) is less precise than the reference `odeint` method. With more points, it can give a satisfactory approximation of the solution:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "t2 = np.linspace(0, 10, 1001)\n", "sol2 = rungekutta1(pend, y0, t2, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "t3 = np.linspace(0, 10, 10001)\n", "sol3 = rungekutta1(pend, y0, t3, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "Text(0.5,0,'t')" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t, sol[:, 0], label=r'$\\theta(t)$ with 101 points')\n", "plt.plot(t2, sol2[:, 0], label=r'$\\theta(t)$ with 1001 points')\n", "plt.plot(t3, sol3[:, 0], label=r'$\\theta(t)$ with 10001 points')\n", "plt.legend(loc='best')\n", "plt.xlabel('t')\n", "plt.grid()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "----\n", "## Runge-Kutta method of order 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The order 2 Runge-Method uses this update:\n", "$$ y_{n+1} = y_n + h f(t + \\frac{h}{2}, y_n + \\frac{h}{2} f(t, y_n)),$$\n", "if $h = t_{n+1} - t_n$." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "def rungekutta2(f, y0, t, args=()):\n", " n = len(t)\n", " y = np.zeros((n, len(y0)))\n", " y[0] = y0\n", " for i in range(n - 1):\n", " h = t[i+1] - t[i]\n", " y[i+1] = y[i] + h * f(y[i] + f(y[i], t[i], *args) * h / 2., t[i] + h / 2., *args)\n", " return y" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For our simple ODE example, this method is already quite efficient." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "t4 = np.linspace(0, 10, 21)\n", "sol4 = rungekutta2(pend, y0, t4, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "t = np.linspace(0, 10, 101)\n", "sol = rungekutta2(pend, y0, t, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "t2 = np.linspace(0, 10, 1001)\n", "sol2 = rungekutta2(pend, y0, t2, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "t3 = np.linspace(0, 10, 10001)\n", "sol3 = rungekutta2(pend, y0, t3, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "Text(0.5,0,'t')" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t4, sol4[:, 0], label='with 11 points')\n", "plt.plot(t, sol[:, 0], label='with 101 points')\n", "plt.plot(t2, sol2[:, 0], label='with 1001 points')\n", "plt.plot(t3, sol3[:, 0], label='with 10001 points')\n", "plt.legend(loc='best')\n", "plt.xlabel('t')\n", "plt.grid()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "----\n", "## Runge-Kutta method of order 4, *\"RK4\"*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The order 4 Runge-Method uses this update:\n", "$$ y_{n+1} = y_n + \\frac{h}{6} (k_1 + 2 k_2 + 2 k_3 + k_4),$$\n", "if $h = t_{n+1} - t_n$, and\n", "$$\\begin{cases}\n", "k_1 &= f(y_n, t_n), \\\\\n", "k_2 &= f(y_n + \\frac{h}{2} k_1, t_n + \\frac{h}{2}), \\\\\n", "k_3 &= f(y_n + \\frac{h}{2} k_2, t_n + \\frac{h}{2}), \\\\\n", "k_4 &= f(y_n + h k_3, t_n + h).\n", "\\end{cases}$$" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "def rungekutta4(f, y0, t, args=()):\n", " n = len(t)\n", " y = np.zeros((n, len(y0)))\n", " y[0] = y0\n", " for i in range(n - 1):\n", " h = t[i+1] - t[i]\n", " k1 = f(y[i], t[i], *args)\n", " k2 = f(y[i] + k1 * h / 2., t[i] + h / 2., *args)\n", " k3 = f(y[i] + k2 * h / 2., t[i] + h / 2., *args)\n", " k4 = f(y[i] + k3 * h, t[i] + h, *args)\n", " y[i+1] = y[i] + (h / 6.) * (k1 + 2*k2 + 2*k3 + k4)\n", " return y" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For our simple ODE example, this method is even more efficient." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "t4 = np.linspace(0, 10, 21)\n", "sol4 = rungekutta4(pend, y0, t4, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "t = np.linspace(0, 10, 101)\n", "sol = rungekutta4(pend, y0, t, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "t2 = np.linspace(0, 10, 1001)\n", "sol2 = rungekutta4(pend, y0, t2, args=(b, c))" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "Text(0.5,0,'t')" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXYAAAEKCAYAAAAGvn7fAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3Xd8VFX+//HXvTPpvZCEJEB6gBQS\nCF0gAZQmdrEr69pdcdf9uuru/lZ3XVfXiqy6LiuChaYoVYqiRHoJLSShp5EEAklIrzNzfn+grCgl\nZWbuzOQ8Hw8eQDL3nvdhyCcn9557jiKEQJIkSXIcqtYBJEmSJPOShV2SJMnByMIuSZLkYGRhlyRJ\ncjCysEuSJDkYWdglSZIcjCzskiRJDkYWdkmSJAcjC7skSZKD0WvRaGBgoIiIiOjUsQ0NDXh4eJg3\nkI2Tfe4eZJ+7h670effu3RVCiB5Xep0mhT0iIoKsrKxOHZuZmUl6erp5A9k42efuQfa5e+hKnxVF\nKWrP6+SlGEmSJAcjC7skSZKDkYVdkiTJwWhyjV2SpK5ra2ujpKSE5uZmraN0mo+PDwcPHtQ6hlW1\np8+urq6Eh4fj5OTUqTZkYZckO1VSUoKXlxcREREoiqJ1nE6pq6vDy8tL6xhWdaU+CyGorKykpKSE\nyMjITrUhL8VIkp1qbm4mICDAbou6dHGKohAQENCln8S6XNgVRXFVFGWnoij7FUXJVRTlr109pyRJ\n7SOLumPq6vtqjksxLcBYIUS9oihOwGZFUdYIIbab4dwXmLfybxwo2cquU//F390DP3cfAr3CCfaL\nIrhHIr5+nfuxRZIkyZF0ubCLc5um1v/wV6cffllkI9U9pzLZ4H4GWkrPfTs5e+Hn/YyCWNWVOPee\npIQOY3C/afgHxFoiiiRJ7TB58mQWLFgAwIIFC3jssceAcw/pvP766yxcuPCyxz/99NOsXLkSZ2dn\noqOjmTt3Lr6+vlRWVnLLLbewa9cupk+fzjvvvGOWvO+//z7u7u7ce++9l3zNvn37KCsrY/LkyWZp\n0xLMcvNUURQdsBuIAd4VQuwwx3l/btaD37Fy3TcERERxuOwURaeKKa86Rk1DMapSDi4VVLjUs18U\n8OnxQji+iEgDDPOI5doB00mKvxZFlbcVJMlaVq9eDUBhYSHvvffe+cLeXldffTUvv/wyer2eZ555\nhpdffpl//vOfuLq68uKLL5KTk0NOTo7Z8j7yyCNXfM2+ffvIysqy6cKunBtwm+lkiuILLAWeEELk\n/OxzDwEPAQQHBw9atGhRp9qor6/H09Pzgo8JITjbIiipM1FSZ6K0rgmad6LT76PRvZRjbgaMikJY\nq2C4Esew3nfi4hzYqfa1cLE+OzrZ5yvz8fEhJibGgoku7+2338bZ2ZlHH32UZ599lpycHFatWsX3\n33/Pxx9/zJw5c0hMTOT777/n97//PatXryY2NpaMjAwmTJjAyy+/jL+/PwcPHiQlJYUPPvjgsteW\nV65cybJly5gzZ875j82fP589e/bwxhtvXPSYxMREbrzxRr755htcXV2ZM2cO0dHRFBUV8fjjj1NZ\nWUlgYCDvvfcevXr14h//+Aeenp7MmDGDyZMnk5aWxsaNG6mpqeHdd98lLS2NlJQUmpqaCA0N5amn\nniI4OJhnnnkGOHdtfM2aNZed9WI0GtHpdFf89z127Bg1NTUXfCwjI2O3ECLtSseadbqjEKJaUZQN\nwEQg52efmw3MBkhLSxOdXSuh/essXI/BaKKwsoHsY9nkHJ3LftMulrgeZVXpC1zv1puHMv5JUHBS\np3JYk1xPo3voaJ8PHjx4voD8dWUueWW1Zs3TP9Sb56cmXPLz48eP54033uAPf/gD2dnZtLS04Orq\nyu7duxk3bhxeXl4oioKnpydvvPEGhw8fJjs7GzjX1+zsbHbs2EFcXBwjR44kOzubq6666pLtLVy4\nkNtuu+2Counq6oqzs/MlC6miKPTo0YPc3Fw+/vhj/vznP7Nq1Sqee+457r//fu677z4+/PBD/vjH\nP7Js2TJcXFxwcXHBy8sLnU6Hqqrs3r2b1atX89prr7F+/XpefPFFsrKyzl/+mTp1Kv/+978ZOXIk\n9fX1uLq6otdfurS2d4qnq6srqampV3zdxZhjVkyPH0bqKIriBlwNHOrqec1Br1OJCfLiphEj+ct9\nH/DR9N3coDxA33ovvmguZvLqO3jjy1uorS3VOqok2Z1Bgwaxe/duamtrcXFxYfjw4WRlZbFp0yZG\njRp1xeOHDBlCWFgYqqqSkpJCYWHhJV/70ksvodfrueuuuzqc84477jj/+7Zt2wDYtm0bd955JwD3\n3HMPmzdvvuixN910E3Cur5fKN3LkSJ566ilmzZpFdXX1ZYu6tZgjQU/gox+us6vAZ0KIVWY4r9l5\nuuh58d4nWX1gGjOXL6Gn76d8rBxi1ZIJPBt3B9eM/KOcPibZpcuNrC3FycmJyMhI5s2bx4gRI0hO\nTmbDhg0cO3aMfv36XfF4FxeX83/W6XQYDIaLvm7evHmsWrWKb7/9tlNfnz89pqPH/5jxcvmeffZZ\npkyZwurVqxk5ciTr1q2jb9++Hc5pTl0esQshsoUQqUKIZCFEohDib+YIZkmTk3ry0RMP0Or8NiGF\nN+JjVPm/44v47YJ0aqqLtY4nSXZj1KhRvP7664wePZpRo0bx/vvvk5qa+osC6uXlRV1dXYfPv3bt\nWl599VVWrFiBu7t7pzIuXrz4/O/Dhw8HYMSIEfx4n2/+/Pnt+gnjRz/vy/Hjx0lKSuKZZ55h8ODB\nHDqk/QWLbjtFpKePG58+MJQbM6ZzuPCvXHW2NxvbKrn1y8nsz1usdTxJsgujRo3i5MmTDB8+nODg\nYFxdXS9aJAMCAhg5ciSJiYk8/fTT7T7/b37zG+rq6rj66qtJSUm5YNZKREQETz31FPPmzSM8PJy8\nvLyLnuPs2bMkJyfz9ttv89ZbbwHwr3/9i7lz55KcnMwnn3zC22+/3e5MGRkZ5OXlkZKSwuLFi5k5\ncyaJiYkkJyfj5OTEpEmT2n0uSzHrrJj2SktLE7a00caBkhqeXLwXp4ZvEWFLqdDBSzF3MOmqP5m1\nnc6SNxK7h87cPG3PJQ9bZum1Yn7c1Ccw0HZmwbW3zxd7fxVFadesmG47Yv+ppHAfVj1xFYOSplF5\n/HfEtqj84fgi5nz1AGjwjU+SJKkrZGH/gbuznn/cmMTLd02h6NRfSa13ZWbFDt5b3vG78JIk2YbC\nwkKbGq1biyzsP3NNQggrfjcJ4TKTlFpP/l1zgH8tv1/rWJIkSe0mC/tFBHm78tH9IxiTPJdBda7M\nrt7Fv758QutYkiRJ7SIL+yWoqsIDY/ry9HUrSWrSM6d2Ax9/9YrWsSRJkq5IFvYrSOgdwqzbvyKs\nTeHfpz8h/8Q2rSNJkiRdlizs7RDoG8q90X9HFfB/3zxKa2uD1pEkyS5MnjyZ6upqqquree+9985/\nPDMzk2uvvfaKx3/++eckJCSgqio/nyL98ssvExMTQ3x8POvWrTv/8fvvv5+goCASExPN1o+srCxm\nzJhx2df8vI9akoW9nW4eM5Wk6tEc1Rl5c/mdWseRJLuwevVqfH19O130EhMT+fLLLxk9evQFH8/L\ny2PRokXk5uaydu1aHnvsMYxGIwDTp09n7dq1Zsn/o7S0NGbNmnXZ18jCbof0OpWrx/yJQWf9mN+Y\nz8Yd7X9STZIc0WuvvXa+2P3ud79j7NixAHz33XfnF+uKiIigoqKCZ599luPHj5OSknL+ydP6+nru\nuece+vbty1133cXFHpbs168f8fHxv/j48uXLuf3223FxcSEyMpKYmBh27twJwOjRo/H3979s9unT\np/PII4+QlpZGXFwcq1adW96qubmZX/3qVyQlJZGamsqGDRuAC3/CeOGFF7j//vtJT08nKirq/L/B\nz/t48uRJRo8eTUpKComJiWzatKlj/8BdoP0yZHbk+pRQ3vv2Wfq0PsPfcv/LssQ78PQI0jqWJMGa\nZ+HUAfOeMyQJJl16wsCoUaN44403mDFjBllZWbS0tNDW1samTZt+McJ+5ZVXyMnJYd++fcC5Qrl3\n794Llu3dsmXLZZft/anS0lKGDRt2/u/h4eGUlnZsldbCwkJ27tzJ8ePHycjI4NixY7z77rsoisKB\nAwc4dOgQ11xzDUeOHPnFsYcOHWLDhg3U1dURHx/Po48++os+vvHGG0yYMIE//elPGI1GGhsbO5Sv\nK+SIvQP0OpWHxyahlE3mtAoz1zyodSRJ0ow1l+21hGnTpqGqKrGxsURFRXHo0CE2b97M3XffDUDf\nvn3p06fPRQv7lClTcHFxITAwkKCgIMrLy3/xmsGDBzN37lxeeOEFDhw4YNGlE35Ojtg76MbUMP71\n3QRGNWxlsZLP1MPLGRB/vdaxpO7uMiNrS7HWsr0XExYWxokTJ87/vaSkhLCwsA7l//kKlB1Z0rc9\n2UePHs3GjRv56quvmD59Ok899dRl91I1Jzli7yAnncrj6TFsLf01gUYTr277G8Jk0jqWJGnC0sv2\nXsp1113HokWLaGlpoaCggKNHjzJkyJAOnePzzz/HZDJx/Phx8vPziY+PZ9SoUcyfPx+AI0eOUFxc\nfNFr/Bfz8z4WFRURHBzMgw8+yAMPPMCePXs6lK8rZGHvhJsGhuPu3ZuEhjSylVbWbHxe60iSpAlL\nL9u7dOlSwsPD2bZtG1OmTGHChAkAJCQkMG3aNPr378/EiRN59913z+8jescddzB8+HAOHz5MeHj4\nBXuk/lTv3r0ZMmQIkyZN4v3338fV1ZXHHnsMk8lEUlISt912G/PmzbtgdH45P+9jZmYmAwYMIDU1\nlcWLF/Pkk0+2u99dJoSw+q9BgwaJztqwYUOnjzWnT7cXiohnlombPkgW4z9MFM0t9RZry1b6bE2y\nz1eWl5dnmSBWVFtbq0m79913n/j88881abu9fb7Y+wtkiXbUWDli76RbBoUT4uNJeOPVnFJhyfd/\n1jqSJEkSIC/FdJqLXsdj6dEsLx1DikHHnJL1NLeY7xqiJEmWM2/ePG655RatY1iMLOxdMG1wL0K8\n3QlsmsAZOWqXJMlGyMLeBS56HY+MiWJpySgGGvTMKf2O1pZ6rWNJktTNycLeRbcP6U2Qlyu+LeOp\nUGH15r9pHUmSpG5OFvYucnXS8fCYaJYXjybaqPBx8To5r12SJE3Jwm4Gdw7pTaCnG5HNqRxVTWzL\nnqd1JEmyCVos27t27Vri4+OJiYnhlVf+90TuO++8Q0xMDIqiUFFRYYbenTNixIgrvmbmzJlyrRh7\n4+as4+HRUaw9MZlAo4lPcj7UOpIk2QRrL9trNBp5/PHHWbNmDXl5eSxcuJC8vDwARo4cyfr16+nT\np49Z+vajrVu3XvE1srDbqbuG9cbd3Z+U5lC2GKopKzfzSnuSZGNscdnenTt3EhMTQ1RUFM7Oztx+\n++0sX74cgNTUVCIiIi7bp3nz5nH99deTnp5ObGwsf/3rX89/7s033yQxMZHExERmzpx5/uOenp7A\nuZ9C0tPTueWWWy7o06xZsygrKyMjI4OMjAyMRiPTp08nMTGRpKQk3nrrrfb+k7ebXATMTNyd9Tw4\nOopF6ydA9Dy+3P5PfnP9p1rHkrqJf+78J4eqDpn1nH39+/LMkGcu+XlbXba3V69eF3x8x44d7e4z\nwM6dO8nJycHd3Z3BgwczZcoUFEVh7ty57NixAyEEQ4cOZcyYMaSmpl5w7N69e8nNzSU0NPR8n2bM\nmMGbb77Jhg0bCAwMZOPGjZSWlpKTkwOc26DD3OSI3YzuGdaHWucBpLQ4s7RqHwZDi9aRJMli7H3Z\n3ku5+uqrCQgIwM3NjZtuuonNmzezefNmbrzxRjw8PPD09OSmm2666MYZQ4YMITw8/LJ9ioiIID8/\nnyeeeIK1a9fi7e1t9j7IEbsZebjoeWBUJBu2DuJ02Ha+3/k240b8QetYUjdwuZG1pdjqsr22vpyv\nn58f+/fvZ926dbz//vt89tlnfPihee/LyRG7md07PILjbdcTYDCx4vhyreNIkkXZ2rK9gwcP5ujR\noxQUFNDa2sqiRYu47rrrOnTub775hqqqKpqamli2bBkjR45k1KhRLFu2jMbGRhoaGli6dGm7fir5\n0U/7X1lZiclk4uabb+bvf/+7RZbzlYXdzDxd9Nw/Kp4+dYFsNNZQU3PiygdJkp2ytWV79Xo977zz\nDhMmTKBfv35MmzaNhIQEAGbNmkV4eDglJSUkJyfzwAMPXLTNIUOGcPPNN5OcnMzNN99MWloaAwcO\nZPr06QwZMoShQ4fywAMP/OL6+uU89NBDTJw4kYyMDMrKykhPTyclJYW7776bl19+ud3nabf2LAF5\nuV9AL2ADkAfkAk9e6RhHWLb3cmqaWsWNL/1FJM5LFIvX/1+Xz2cPfTY32ecrk8v2mt/cuXPF448/\nbtE27GXZXgPweyFEf2AY8LiiKP3NcF675e3qxOi0O+nVamJFcabWcSRJ6ma6XNiFECeFEHt++HMd\ncBDo2N0KB/SrUVGE14ezX22m9HSO1nEkSWqH6dOn884772gdo8vMeo1dUZQIIBXo2MRRB+Tj5kRS\nn3O7nS/ZOvMKr5akzhEXeahHsn9dfV8Vc/3HUBTFE/geeEkI8eVFPv8Q8BBAcHDwoEWLFnWqnfr6\n+vNPetm6+hYTHxTNQEXHjLi3O38eO+qzucg+X5mnpyfBwcH4+Ph0aEqeLTEajef3Ku0urtRnIQQ1\nNTWUl5dTX3/hMuAZGRm7hRBpV2rDLPPYFUVxAr4A5l+sqP8QdjYwGyAtLU2kp6d3qq0fH9u1F9s/\njGO57ijuPZwZknDlxYIuxt76bA6yz1fW1tZGSUnJ+Scu7VFzczOurq5ax7Cq9vTZ1dWVAQMG4OTk\n1Kk2ulzYlXNDhTnAQSHEm109n6OZNuIxlu/4HSu3vdPpwi5JF/PjA0L2LDMzs0PTBh2BNfpsjmvs\nI4F7gLGKouz74ddkM5zXIST3HU+vNjhqzNM6iiRJ3USXR+xCiM2AfV7gs5JktQ9r9YWUnD5OeFC0\n1nEkSXJw8slTKxjW5waMisKKbe9rHUWSpG5AFnYrGDvsToIMRvZUXHlBfkmSpK6Shd0KvD3ciW72\nIVetwWBo1TqOJEkOThZ2Kwl3S6NeVdh7cInWUSRJcnCysFtJQvzd6IVgfd5Fp/lLkiSZjSzsVjK4\nbxLRzSo7649qHUWSJAcnC7uV9PJ3w6+5N8f0Js6cOah1HEmSHJgs7FaiKAo+nuMB2HLgI43TSJLk\nyGRht6K4mGvxN5jYVCqnPUqSZDmysFvRoMgAwps8yWqrQphMWseRJMlBycJuRYlh3qiNkVTpFPKL\nMrWOI0mSg5KF3Ypc9Dqc3ccCsOPIMo3TSJLkqGRht7KYyKsIaTOx8/ReraNIkuSgZGG3soER/vRs\n8mKX4Swmk1HrOJIkOSBZ2K1sYG8/TA1R1KoKh/O/0TqOJEkOSBZ2K+vh5UKLbgwAO4+t1DiN46to\nqiC3MpeSuhK58bPUbZhlz1OpY3r1HkJ9rYmdZ/Zzn9ZhHNTWoyt4d9vfyRZN5z8WZlK4N/YWpo34\nI3pV/teXHJf8362BQRH+VO3wYq++GpPJiKp2r13aLclgaOXV1fez8Ox+wgxGnvTpT6SLP5WGBr6q\nyubl45+zpuhrXp/8McF+UVrHlSSLkIVdA4P6+LE6M5I6nxzyCzcQEzVe60gOwWg08Mzia/jaUMm9\n+PDk9XNxDow9//lprY18tfpR/nY2i18tvZ45UxfRs0eChoklyTLkNXYNxAZ5Ud46FIC98jq72by+\n+n6+NlRym4jjyTu/v6CoA+DszpQbPuK/g56lWjHx2Op7aGip1SasJFmQLOwa0KkKIT2H4mcU7D29\nT+s4DuHbfR/wadVexte6MufQdG5+fxsFFQ0XfW1y8j28GX0HBaKVPy27Vd5UlRyOLOwaGRwRSGiT\nG3tbK7WOYvcqqwt5fu/b9G8zsaH0SW4a2JviqkamzNrE51knLlq4h43+M0+6R/NtcxmrtrykQWpJ\nshxZ2DUyqI8fuqZQSnQKFadztY5j12atfpAGRdBf9yBGlx68eEMCa387iqQwH55eks2MRfuoaWr7\nxXH3Xr+AFJOeV44u5MyZQxoklyTLkIVdIwN6+VDVeO7G3d4jyzVOY79yjq1haetJbnOLYv7xeG4c\nGIa7s56ePm4seHAYT0+IZ/WBk0x+exO7i6ouOFbn4sGL6W/RpCjM+u53GvVAksxPFnaNeLk6ofdO\nx8Uk2HNqh9Zx7NbM7S/hbxL08H+aVoOJO4f2Pv85narweEYMnz8yHFWFaf/Zztvrj2Iw/m/J5IjI\ndO5y7c3yphMcKtygRRckyexkYddQSkQoES0q++pPaB3FLu05soIdxhru901m/n4jg/r40TfE+xev\nG9jbj69mjOLa5J68tf4Id/x3O6XV/3tw6cFxb+FtEryx+S/WjC9JFiMLu4YG9fHDqymAQ7TS1Fyj\ndRy785+dr+JvNBEV8yz5FQ3cOaT3JV/r7erE27en8ua0AeSV1TJp5kZWHzh57nM94nnQN4ntxmr2\nHZLLKUv2TxZ2DQ3q40dTYwwGRSHn2Cqt49iVQ8e/Zquxhvt8E1mUY8THzYkpyT2veNxNA8NZ/eQo\nInt48tj8PTyzJJvGVgO3jn8DX6OJ/+581QrpJcmyZGHXULifGzXKMAByizdqnMa+LNjxKm4mwdgh\nf2Vd7iluHhiOq1P7lmboE+DBkkeG81h6NJ/tPsG1szaTX+fJ3QED2SjqOHREfpOV7Jss7BpSFIU+\nvVLo2WbiQJWcbtde1TXFrG45xbVu4aw55kSbUXDn0F4dOoeTTuUPE/sy/9dDaWg1cON7W1A9HsbN\nZOKTPbMslFySrEMWdo2lRfjRo9mdA/JBpXZbuu2ftKgKtw14hIU7ixka6U9MkFenzjUiJpC1T44m\nPT6Il9bXMLjZn7XNZZytlTe0JftllsKuKMqHiqKcVhQlxxzn604G9vFDberJSZ1ChXxI5oqEECw9\ntYWBBpVydQTFVY0XTHHsDD8PZ2bfM4inJ8STf2ocrYrCl/JpVMmOmWvEPg+YaKZzdSsJod5Ut/QH\nIPeoXBDsSnKPr6FAMXJdzxEs2HkCfw9nJiaGdPm8iqLw66siKRJDSW5R+ezUVoxGgxkSS5L1maWw\nCyE2AlVXfKH0Cy56He7+GeiE4MDJnVrHsXkr9s3GWQgGJjzBNwfLuXVQOC5686xn7+qkIyM+GI/a\nAZSpgi3755jlvJJkbfIauw1IiexNWKvCgbpCraPYtLa2ZtbUHWOs6sOqY04YTYI7LjN3vTMmJoaw\nqWIKvkYTyw8uMOu5JclarLbRhqIoDwEPAQQHB5OZmdmp89TX13f6WFvlUmvAt9mHHP1ZNnz3LcrP\ndlRyxD5fycX6nF++lGpVIckphbc3HSUhQKUwZxeFZmxXbxAYVE+SmgPZoFby9drFOLsGm7GFS3O0\n97lNtCGEwFl1vuRrHK3P7WGNPlutsAshZgOzAdLS0kR6enqnzpOZmUlnj7VVifUt7Hw3nFqfGqKi\n9fTpM+aCzztin6/kYn1e8+kL+JpMhCY9TeX+XF68OZX0pCs/lNRR6WVZnDo5kTaPBZxVtnBbunWm\nPzrC+3yqtpiPMp/ju8psyn64HhBigrG+/bh3zD8I84+54PWO0OeOskaf5aUYGxDo6QL6gQAcKPhW\n4zS2qbWljo1tZ8hwDWPR7jMEerpwdX/LjKQnJYaw52wiMQaFFSe3WKQNRyNMJuav/z3XfjmFRVX7\niVNcecKlDzNcepOgurOkOo+pK27gv2sewWT85RLKknmZZcSuKMpCIB0IVBSlBHheCCHvPHVAWFg6\n+U0fceD0Xq7VOowN2pE9j3pVZUjoeGasPc2j6dE46SwzLhnXLxgnnY4k4liqHKaobBd9QgdbpC1H\nYBImXvjiOpY2FjHapOe5Ic8RnnArKMr515w6/BWvb32BWae3kL1wHK9NW4urs7uGqR2buWbF3CGE\n6CmEcBJChMui3nGDIkPo3aLjQEOp1lFs0rfHv8LDZOJI41gEcPtg8940/SkfNydGRAeSV5kBwNd7\n3rdYW/bOJEw8v/QWljYW8ZBbFO/cl0V44rQLijpASPwUXrtvB8/5D+Z7QxVPfD6RNkOrRqkdn7wU\nYyMG9fHDs9mPw0orbYZmrePYFKPRwHdNJYzS+7F4bzWjY3vQy9+yo71JiSFkVUWQbNCx7swei7Zl\nz+asfZxldUd5xCmUJ25ZiqK79NRTRVW5c+qH/M1/CNsNZ3l+yVSEyXTJ10udJwu7jYgN8kS09qFV\nUcgv+l7rODZlz8HPOasqxHsMpby2hbu6+KRpe1zdPxhVgVi1H4dVAwUnNlu8TXuzZfe/+Vf5JiYr\nXjw2bSWo7SsnN0ydw+Me8axsKSOr5B0Lp+yeZGG3Eaqq4O1zbqXHg0WZ2oaxMd8dWYKzEOyuTCfE\n25WxfYMs3maApwtDIwPIrRoLwNd7Z1u8TXtS01DO/8t+jz4GCOoxk093lbE25yRZhVUUVTbQ0HKZ\np3YVhYdv+ozxijcLTEfIPbbGesG7CatNd5SuLDZqDDtL3iXn9AFu0DqMDdlUc4w0XFibr/LE2F7o\nLXTT9OcmJYXwl+WVXOWnZ13lfh62Sqv24fXVD1ClCLxLp/DO8TMIceYXr3F31hHo6UIPLxcCPZ1/\n+N3l/O93DprFge338Ozm51jSZwwuTvJmqrnIwm5DBkUGk3lcR56QN1B/dKJ0B0WqiTRTHApw++CO\nLc/bFRMSQnh+RS6xukSWsI/8gu+IihxrtfZt1e5DX7KssZDR1b7o429nya0DqGps5UxdCxX1P/7e\ncsHvBRUN7Cyo4mzjhVMdH+ozmoXuW5iz5lEeu+4jjXrkeGRhtyEDevni2ezLIZdKjIZWdPpLP7HX\nXWw68DEAWaeGMbZvEKG+blZrO9jblUG9/cirHgu++8jM+bTbF3aT0cDr2/9OkNHElvKHWDAtGr1O\nJcjLlSAv1yse32Y0UVnfSkV9C6+sOcT8omuZEpvDB1W7mVyQSURkuuU70Q3Ia+w2xNNFj7saTZOq\nUiR3VAJgc3kWYUbIqYnp8vID93gkAAAgAElEQVS8nTExMYQdJ4OIN6pkVu63evu2Zs2mv5KjtNGn\nZiDJsX3pH/rLzcMvx0mnEuLjSmKYD09PiKehTaFX4F9wFfDypmctlLr7kYXdxoQEjgQgp+A7jZNo\nr6W5ml2mBvq09iDM140xcZa/afpzPy4J3FeJYh8tVFYetXoGW9HW1sKsgmXEGhS+O30rj4yO6tL5\nBvTyZUAPHR/sggf8B7NVNLBtr3wExhxkYbcxyX3H4WIS7D+1T+somtudu5BmVeF0ZV9uH9wLnapc\n+SAzC/dzJznch5P1wxCKwsZ9H1g9g61YueXvlKkQVDOKpDB/hkcHdPmcN8Q4UdPURpPbE4QaBW/t\nfxeTyWiGtN2bLOw2ZnBEMGGtOg43ndQ6iuY2FXyNsxAcaxzFNCveNP25iYkhfFvanxCjILOse85n\nNxjbmFOwgr5t8PXpCTw8JgpF6fo32kgfHeP7BTF7WwUPh13DQaWNtdtfM0Pi7k0WdhsT7ueGb5sv\nx3St3X6xpG11BcQ16xjZN45g7yvfmLOUSYk9AZUBhLDNUENzU7VmWbSybvvrFKsmwpuGE+7vxcSE\nru9a9aPfjo+jpqmNUuXXxBjh/cMLMcndq7pEFnYboygKgc7RNKgqpSe2aR1HM43NZRxXjbjWh2py\n0/SnIgM96BviRXPTQJpUhR3Z8zTNY23CZOLDo58RZRCsLJ3Eg6MizfosQWKYD+P7BfPfrSVMj7iR\nAtXE+i3/MNv5uyNZ2G1QZPBwAHYd+0bjJNopOXtuWQUDQ7kqJlDjNOcux3xTMgQPk4kNBd3rScms\n/XM5ohiIaxuIt4cntwwy/2Wx346PpbbZQL7hdiJMCrOPfyHXkekCWdht0JCkSeiFYP/J7nsD9WBD\nHp5GEyNSb0XV4Kbpz01K7EmLcGOgyZvvm0q71aWChTlz8TEJVhRdy33DI3BzNs8esz+VGObDNf2D\n+XDrCe4Nm8hh1cTGLLmOTGfJwm6DUnqH0qtVIb+5TOsomjnIWSKaXbh1aMyVX2wFccGeRPXwwKml\nPxWqwuEjK7WOZBWnTu3nO2M1g9vCUfXe3Du8j8XaenJ8LHXNBkrFXYQZBXMOfmyxthydLOw2yFmv\nEmz0pUDX3C1/HC08sYtSJ4Uwfdy53aVsgKIoTEoMYcvJc5fJNh/5UuNE1rF4+ysIYG/pRG4b3As/\nD8s9DZ0Q6sOEhGDmbDvFbQFD2UsLOYe6x7+zucnCbqNCXaOo0akUle3WOorVLdt6bqQ2pv9NGie5\n0KTEnlS09STOoLK5KlfrOBbX1tbMF2cPMKTNlRNtcfz6qkiLt/nkuDjqmg1U63+Fh0nwyW7r7Dfr\naGRht1H9wkYAsOnAao2TWF9OVRa+RhOTh9tWYU8I9Sbcz42ebWHsV1qprS7SOpJFfZ/1DmdVhebK\nNKYk9bT45iYA/UO9mZgQwoc7G7jOPYqv2yooP7nX4u06GlnYbdSolGtRheBgeff6T13X1Eq+cy2x\nrR7odLa1Rt2Pl2MKKgZgVBS2HXDs1QiXHv2CHkYT26on8FAXlw/oiCfHx1LXYsDZ5T5MwKItL1qt\nbUchC7uNCgsKo1cbnGjtXkv4frfna87oVaL01iskHTExsScH64fiZRJsPuG4O12dPrWfzaY6IutD\nGR4bSmKYj9Xa7tfTm0mJIczb68kY1ZfP6w7T1FhltfYdgSzsNixMeHNC14gQQusoVrP72DIA+gUO\n0zjJxaX28qWHtyd9Wz3Z0lyOMDrmuiYrd7yBSVHIq5jMw6Ojrd7+k+NjqW8x0Mt5KjWqyqqtL1k9\ngz2Thd2GRbhHUqlXOVHdfUbtxY15BBhM+Hsnax3lolRVYWJCCC010ZzRKRw+tkrrSGYnTCaWVu4l\nvllHQI80RsZ0fbGvjuob4s2UpJ58dDCZOKPC4hPfdssZYp0lC7sNG9Dr3Ki1sLJ7zIypbW7jhFMN\n8SYvlHZujKyFiYk9OVQzBoDNhx1vOt7+vMUU6cCpuh8Pj442y2JfnTFjXCwNrSaSdYM4rBrJPvi5\nJjnske1+9UiMSJoKwJnmYxonsY7v923itJNKgm9/raNc1pBIf3CNJLpVYXNVjtZxzG5Z7se4mUxU\nKjczKdF8i311VHyIF5OTerIyfwLuJsFn+/6jWRZ7Iwu7DfP1jyC0zUSVWq51FKvYe+Tc9fUx/adq\nnOTydKrCNQkh+DYEs48W6mpKtI5kNm2tjXzTeIL4eg/uHpVmtY3DL+XJcbFUtnox1BjMutbT1JzN\n1zSPvZCF3cZF4Em5cyM1jY6/hO+J+v24m0wkxk/ROsoVTUoM4XRtKkZFYfuBeVrHMZtte/9Drapg\nahrMrRZY7Kuj4oK9mJLUk8OnxtOiKizfLG+itocs7DYu1iOCcieFrUeOaB3Fomqa2ijTVxJvdLOL\nTbyHRwdw0jQaT5PJoaY9rjy8FC+jibQBD1tksa/OeHJcLEcakunbpufzMzsddiaSOcnCbuMG9UoD\nYO9hx14qdmvOPk44Q4JXrNZR2sVJpzK2fy+im9zZ3HTSIWZstDScYZOxksgGP+67qq/Wcc6LDfZi\nanIo+qpkCnWwc+9srSPZPFnYbVxSzDUAlFZmaZzEsvYcXIJQFEbFXqN1lHablBiCqIvmtE7haIH9\nr52/bstMGlSVKL/J+Ftwsa/OmDEuhj3V1+JtNPHZwflax7F5srDbuMDgZHoYTJw1FdNmtP9R4aWU\n1mahF4JUG1v463Kuig2krPmHaY8OMBVvTeHX+BgFv57wuNZRfiEmyIuJyTHE1AXznbGaM6cdfxG2\nrpCF3dYpChFGZ6pc6jh4slbrNBZR09hGuf40MUYn3Fyt9+h6V7k66UiMG0ZEi2BTZbbWcbrk9OkC\nspwaSTD0JKKHbb4HT4yNpaBqEgZF4cttr2gdx6bJwm4H+ugCOekk2H7McabV/dS2Q0cpcBUkullu\nEwdLmZQYQkBDD/aJRhoazmgdp9M+/fo1mlWVSQl3aR3lkmKCPBnYbzx9G3UsqdyL0dCqdSSbZZbC\nrijKREVRDiuKckxRlGfNcU7pfyJcIzApCgfzv9U6ikXsyfuSNkVhRORoraN0WHp8DxobUzAoCtsP\nfKp1nE5pMRjZV7sNf6Ng6rC7tY5zWTPGxaJWD+SUTmHT7ve0jtNh1pq23OXCriiKDngXmAT0B+5Q\nFMW2Hx20Mz28zq2bUlGz0yEXBCs5ux2Awf1v0ThJx7k76+kRfhMeJhObi9ZrHadTlm3dQa5bG6Nc\nom1uqeSfi+rhSXjEgwQYTCw8tFjrOB1y4MQZHn/3PvaePGvxtswxYh8CHBNC5AshWoFFwPVmOK/0\nA3ePfvgYTbTpTlBa3aR1HLOqbmylSldKH4OCr09vreN0yjUDoohpdGFTQ7HdfeM1mQSb9rxLq6pw\ny6DpWsdpl8fHJxFZ05Ntoo4SO9lhzGQS/GfFn9kfdAB309cWb88c357DgBM/+XsJMPTnL1IU5SHg\nIYDg4GAyMzM71Vh9fX2nj7VX9U3NRBt0VLjU8MmarQwPte1RVUdknWyi0K2V4YaAC95Xe3qfnQ0C\n54YIyj2P8uVX7xHgmdCp82jR572nDVQ55xBsEJw96UvmKeu239k+u+lvQuE9/r3mj1wd/Zz5g5nZ\nphPNFDhtpU+boKffBIu/z1arEEKI2cBsgLS0NJGent6p82RmZtLZY+1VZmYmyd7hzG8upsEtgPT0\nVK0jmc3mBe/RoKqkx4y+4H21t/f5m/x8YCZ1+jxuTu/cdEEt+rzgP59z0N3IXd79ycjIsGrb0Pk+\nJwwazm8/+YCNrqU8P2Iwzs4e5g9nJjVNbXyw67cUB8Hfe03FW/W1+PtsjksxpcBPF5UI/+Fjkhn1\nC0ygTVE4UrxF6yhmVVp57nH8tHj7vno3LPVq+rSayDxlPw+SHT9TT2v1IgyKwqTkX2kdp0N6eLkw\n2P9aqnUKH637h9ZxLuvNdYeo895EmFEwZdRfrNKmOQr7LiBWUZRIRVGcgduBFWY4r/QT/XqdmzHS\n1pxFfYtB4zTmUdXQSo2ST5BREBoySOs4XTIhoSfBjQFk00Bjk+VvjpnD/O3FNHsfo5dJoX/0RK3j\ndNhDNzxHaJuJtWWrMdjow3t5ZbXsy5lDvqvg/vBx6J3crNJulwu7EMIA/AZYBxwEPhNCyMfCzKxP\nRAZuJhPOrifYV1ytdRyz2JFfwUm3RhJ1vja9sUZ7+Lg7EeZ5FW2Kwpb9n2gd54qaWo1k7t3MQTcj\nE/0SNdtMoyvcXd0Y55bEEVcDc76xvSd/hRA8vyIHp8BMehgFN4y23qbcZvlqEkKsFkLECSGihRBy\nXU0LUF08iTfpaXKpIqvIMTb23Zm3mQq9ypCgAVpHMYtJIx/AzWRi3eGvtI5yRSv3l9HLdQ0mRWFi\n8q+1jtNpD1zzPE5CsOXo+9Q02dbS1kv3llJ/egWH3YxMDx6Bs6u31dq272FSN9PPrQenXNrIKqrU\nOopZlJ46N+0rLXqCxknMY1h8JPHNLuwzlNr8tMdPdxTR5JNPtEklNnKs1nE6zb9HPzIUX454nuad\nr3dqHee82uY2/rH6EP7B3+BnEtySbt3xrizsdqSfX1+aVIXCk3sxmmy7cFxJZX0LjcohPEwmYiId\no7ArikKCZxLleoVN2ba72uP+E9WcPrWPQy5GJgQk2+VlmJ+6O/VhGlSVQ0fepqCiQes4ALz1zREC\njBvJdm3l7oCBuHv0sGr7srDbkX69RgLgr9vH4VN1Gqfpmh0FVVS61ZCEOzonF63jmM0NQ+8HYM3u\njzVOcmmfbi+ir996hKIwccCDWsfpspTEu4gxqdT45PHSV9rf3jt0qpaPtxXRM3Qt3ibBnRn/tHoG\nWdjtSHTkNTgJgYdrIbvt/Dr79sN5lDjDIL84raOYVd/Y0fRuExxryaO5zfZ2+qlpbGNldhkN3gX0\nNemI7GN/6/P8nKKq3NV7AgUuChXFC9hyrEKzLEII/rIsl/5ee9jt3MQ9fgPw9Opp9RyysNsRJ48A\nYkwqbW6V7C6yjyl1l1JScu4G46De6doGMTdFIc2lF/murazYc1jrNL+wZE8J/soRDjmbmBCYonUc\ns5l61Z/xMwncAzfx4qo8zS5VLttXys7CKoKDv8LLZOIuDUbrIAu73envEsgp5xZ22fGI/UxdC60i\nG70QJMbfqHUcs7smfjKtqsL3WR9qHeUCQgjmby8iJTgTgEmpj2gbyIxcXLy5wy+ZA+6tNJzdzuJd\nJ658kJnV/XDDdEzYIXbo6rnHNwkvn3Cr5wBZ2O1OX784anQKTXVHKK9t1jpOp+woqKTR7QzxJj1u\nHoFaxzG7tOR7cDUJ6gw7OFpuO/dCth6vJL+igTLXfAaY9ISFD9M6klndNuoFXEyC+JCveOPrw9Q2\nW3f648z1R6mob8HDa4mmo3WQhd3u9AsbAUBv92y7vRyz9WgJRS5GBnra52qOV+Li6ssQnTelHlUs\n2F6odZzzPt1eRH/vgxzXm5gU/It1+uyef0AcU117stetEqWlgHe+O2a1tg+fqmPe1kKm9z/GJqWe\nu/wG4O2r3cYxsrDbmbjoCahC4O1WQFahfRb24uI1tKoKg0Ida8T4U+PDR3PaSWV/3pc2cRP1VE0z\nX+eVkxi8EVUIJqQ9oXUki7hnxJ9pVRQyei9l7pYCCq0w/VEIwf9bnoOXq55S43y8TYJ7xr1u8XYv\nRxZ2O+PmGUykScHkXsnuYvsr7KdrmxHGc2topzjg9fUfjUl9CFUIvFw2sy73lNZxWLSrGKPJSK5S\nwGDcCAzq3NLCti6qzxjG6v3Y4lRMkFMF/1h90OJtrthfxs6CKh5O3sc2pYkHg4bj7RVq8XYvRxZ2\nO9TPOYAypyZyS2toatV+NNgR2wuqMLiV0dsIAT36aR3HYvz9okjFlSqvUyzYUaxpljajiYU7i7ku\n8jDFOpgUZv9THC/nkaF/pE5VGdd7CV/nlbPVgtMf65rbeOmrgySFebHx7EKCjYI7NB6tgyzsdqmv\nbwxndApeShn7S+xrQbCtR89Q4tZEqkuQ1lEsbmxQGoXOUFq6jeNn6jXL8e3BcsprW/Bx34BeCMYP\neVKzLNbQL2YiY3W+rFeOE+dbx98sOP3x7fVHOVPfwm0x68lRDTzeeyIurj4WaasjZGG3Q/3Dzl2b\njnDbb3c3UPOLvqdWpzIo2HHmUF9KxoBza5xHeWeyaKd2o/ZPtxcT5uPEtrYirlK98bHTLQg74tGh\nz1KnqowO/5xDp+r4LMv80x+PlNcxd2shd6T68unJL4k2qVw3xjbWQJSF3Q7F/7B2dpB3oV0V9vLa\nZlTDVgBSo6/VOI3l9QobSpxJpcW7mCW7S2gxWP+yWf6ZejYfq+CW6H2U6xQm9rna6hm00Dd2Cler\nvqxsO0xG72peX2fe6Y9CCP6yPAdPFz2hulmU6hSeTZlhM8tjyMJuh7y9w+llBIPraXYXncVkJwuC\nbc+vROdehJ/RRJ8+Y7SOYxVj/RI45GxAaSliXW651dufv6MYvapQ0fYNbiZBRtpvrJ5BK79N/yet\nCgR7zKaqsZV3N5hv+uOK/WVsz6/id8Ma+Kg2l6t1/gxLtZ3lj2Vht1NJzv4U6BuoaWojv0K767cd\nsT2/kjNudaTqfex+Y432Gtv/DkyKwqAeG6x+Oaa5zciS3SVM7ufOt60nmeASbPVVBrXUu9cI7vbu\nx2pRyfT4XOZuLqSosuvTH+tbDPxj9UESQj3Zd+pVAJ6++l9dPq85dY+vLgeU7N+PMzqFHvpiu5nP\nnnt8LyedFAb6O+5smJ/rGzOFXiZo9jzE1uOVVl1WduX+Mmqa2hjgvYoGVeG6/ndZrW1b8dA17+In\n4JhxPi46g1mmP8769ijltS3cFvM131LPI0HD6BmcbIa05iMLu51K+mHxrDiffWTZwXX2kzVNuLad\n27g6JfIajdNYj6KqTPZLIlvfSqhTMYt2WW/U/un2ImKDPNl+9nvCjDAo+T6rtW0rvDyD+G3UTezT\nm7g15gvW5Zaz9XjHpj8aTYLiykY2HD7N7I3H+XBzAfclNTK7fBlJJj33XWNbo3UAvdYBpM7pGzsF\np6y/4+9VyB47KOzb8ytx9TiCm0nQP+46reNY1eTUh/lP5m8YGfYdS7Ji+P3V8TjrLTumyi6pZn9J\nDc+nG3jrVBOPBqSgqjqLtmmrbhj1AusK17LSmEWaXyovrvJm1RNXoVP/t8GIEIKqhlYKKhrIP9NA\nfkUD+WfqKahooKiykdafbJYdE+BEecsrNKkKf89422obVHeELOx2ytnFi77CiSr9afIrGqisbyHA\n0zbuyF/M9uNVVLpXk6p64GSDXwiWFNVnDPFCT4nTESobWvkmr5wpyZZdo/vT7UW4OelobvwUoShM\nHfw7i7ZnyxRV5YUJs7lxzd04B3zAwWN/5pU1B/Fxc/qhgDdQUNFwwZ6pTjqFPgEeRAV6MLZfENGB\nnkT2OPf3z76+l/fqWvlz72uJstH17GVht2NJHuEsbchHRxu7i85yTUKI1pEu6UD+AU4EK9zo132u\nr//UpKAhzDyzlSF+R1i4M9Cihb2msY0V+8u4cUAQK6sPkKZzJzx0kMXaswchISk83//XPH3oQ8b3\nmsl/N/0JUOjp40pkoAdTB/QkMtCTqB+Kd5ivG3rdL3+q+n7b6/y7NpepLiFMS3/Z+h1pJ1nY7VhS\ncCoLCguJdctmd3G8zRb20uomPAwbAEiL6j7X139qUtoTzFyzlX49NvDRkTiKKxvpHeBukba+2FNC\nc5uJwX6ZrGpQeCLK8Z8ZaI+JQ3/HgZM7+Zgcnhn8Bfde+188XNpfAvfs/Be/PzSPfjjx/67/zKb3\nipU3T+1YctQkAGIDDrPbhmfGbD9eiZvHEVxNgoS4G7SOo4nQoEQGK+7sIh+dYrDYTVQhBJ/uKCK1\nty8byr7E32hi/JCnLNKWPfrd1I8Zp/rwXn0Wq9bcDybTlQ8Ctm59jcdy36enouffNy7Fzd3fwkm7\nRhZ2O9YrbCi+JgEuxWSX1mjyZGN7bM+vpMrtLCmqO07Olhml2oObek/ghE7hhsg9fJZVQpuxfUWl\nI7YdryT/TAO39qtmo7GGm3364eTiafZ27JVe58Srt61jtFMAf6/Zyz8XjKOt6dLrLZlaG5i/8tc8\nfuQjQhVn/nvdEvx9I6wXuJNkYbdjiqqSqPPihFpNq8FETmmt1pEuKjs/lyIXSPON1zqKpsYPeRIv\nkwmD03dU1Lfw7UHzP4n66Y4ifN2dOFPxXwBuGfFHs7dh75ydPXj7tm+42zeJT40V3LJwFF+vnUFb\n9f9+ijK01LNl0z+47+OhvFK1kxE6bz66eQ0h/jEaJm8/eY3dziX7xrClai8+agW7i6oY1MdP60gX\nOFHViJfx3PX1wRHdY52SS3F1D+Bajyi+aCwgwecMC3aeYGKi+W6iltc2sy63nIeG+vBl5VFGOwcQ\n2nOg2c7vSPQ6J565fgHDds7in3kf8vvyDbgt/ZZooUM1tlGgU6nTqQTpVf4Wdxc3DPuDTV9T/zk5\nYrdzSWEjEYpCWkC2TT6Buj2/Enf3I7iYBIl9HXdjjfa6echTtCoKw4KXs+noGU5UNZrt3It2nsBo\nEgSJeVTpVO5NcZzNqi1lzJAZrLx3N+8M/hM3eMfj7eSBm0cQ1/jG82bsXay+awc3Dn/Groo6yBG7\n3UuOux7lwDv4eR0ls/gsQgib+k+4Pb+Ks+5VDFDccHbx0jqO5uIjMkjb6MEmcQQ3Gvks6wS/v6br\nl6gMP2ymMSbWl8+rtpGkupCWcIcZEjs+napjTP/bGdP/dq2jmI0csds5b6+exAodZ3RlVNS3UlRp\nvhFgVwkhOJCfS5GzIM03Tus4NuPe/vdwUq9yXe+1LN51AoMZbqKuP3iaU7XNXBWwkhM6hV/FTbOp\nb/CSdcnC7gAGuoVyUG1Gpc2m1o0pOduEr2k9QlEYHiPnUv9ozMBH6GNSyXfexem6Jr47dLrL55y/\no4gwbx1fV62hjxHGyimO3Zos7A5gUM+hNKkKid77bGrjjW35lbh4HsLTJEh04I2rO0pVddzT62oO\n6gVXBXzPwi4u51tQ0cCmoxVc32slh3QmHom+CZ3eyUxpJXvUpcKuKMqtiqLkKopiUhQlzVyhpI4Z\n2O8WAKL9cthdVKVxmv/ZdvQMJ91rGKL3Re/kqnUcm3LDqL8QZBS0+X3D90dOUVrd1KHjhRCcqGrk\nq+yTvLAiFy+1kczW74kVeiaP+ouFUkv2oqs3T3OAm4D/mCGL1ElBQYmEm6BeX8yR8npqGtvwcdd2\nxCaEoKh4I+UhKg8Ed+91Si7GxcWbR/pM4W8lqxnl9QWLd/Vl4CXeMiEEp2qbyS6p4UBJDftLqjlQ\nWkN147lFq5x1KtNjPmehTuFfSY9021Ucpf/pUmEXQhwE5E0aGzDQrScbG0vRYWDPibNkxAdpmqe4\nqhEPZSMAw/vdpmkWW3VD+ovM/WQdVT12sWpXHgOGndvdvqK+heyS6vOFPLu0hjN1LQDoVIX4YC8m\nJoSQFO7DgHBfAnUl3LwmlzTVmzGpD2nZJclGKEJ0fb9MRVEygf8TQmRd5jUPAQ8BBAcHD1q0aFGn\n2qqvr8fTs3s9It2ePh8o+4jZbVn0KriZ6NAR3BznbKV0F/d9SRuHa57hjGsrf4z6V4e/+XeX9/lY\nxTrebljFiIoQjrc8SVWrSlXzua9JBejpqRDprSPCRyXSR6W3l4qz7sJ/y+XHniNTX8dfAh7BzytR\ng150Xnd5n3+qK33OyMjYLYS44mXvK47YFUVZD1xs2cA/CSGWtzeQEGI2MBsgLS1NpKent/fQC2Rm\nZtLZY+1Ve/occdKL2V9PJy4gh1NMID19uHXCXcLy+VvJd29hglsvMjIyOnx8d3mf00kne/42tvmX\nEVp2mH7xYxkQ7kNSmA8JYT54XmH1wW83/In1TvU85J3IjVPtb6Pq7vI+/5Q1+nzFwi6EGG/RBJJZ\n9AkZSJAJGl2K2H+ihjajCaeLrCdtDUIIzpSuoiFYZXivMZpksCfPXf0vbv7qDpyD5/HG1Htw9mzf\nZbSyo+v4f4XLSFDdeOTaeZYNKdkVOd3RQSiKwjC3UPL0jbS1NXHwpHYLgm06WoFevxNFCIYl3q1Z\nDnvRMyiJFxMe4JATvLzkekTrlWfI1J0t4ImNv8ekqLw2aS5OctaR9BNdne54o6IoJcBw4CtFUdaZ\nJ5bUGcNDR1CjU4l1y9Js3RghBG+tP0KVZzkDcMHXp5cmOezNuCG/5XpdPEuUet76fCrCeOklmGtO\nZfPYspvI18Gbg/5Ar6AkKyaV7EGXCrsQYqkQIlwI4SKECBZCTDBXMKnjhv2wNkiYbza7i7Up7BuP\nVlBclkOBC4zxS9Akg70aF/Y4t3r3Y66hnP/7dCRn8zMvfIEQ7N/yGnevup1cpY1X4+5hRNI9mmSV\nbJtcBMyBBAbEEWtSaXArI6fQ+guCCSF465sjpARkshNIT7jTam07AkVR+H83LCZ89cPMOrOVbZmP\nM3GzH/18YmhqqmRrUxlb1FZC9M78d9Q/GBQ9WevIko2S19gdzHCP3hx2buFsXUWHn2bsqswjZ9h3\nohq8jxFmhOhuur9pVyiKwv1TZvPF5AVc5RPNKmM1f6vezWstheQrRh7zH8jS27+XRV26LDlidzDD\nI67h44Oz6e+xkd1FVxHuZ52t6IQQzPzmCLG+zexXm7jFMxpFleOGzooOSubVm1fQ1tpEVctZnJxc\n8Xe17X02Jdshv/IczMDke3ASgkCvbKsuCLbh8Gn2l9RwU9QOWlSFMXFy0S9zcHJ2I9grVBZ1qUPk\niN3BuLv6MljnTbFHFaUFFVZpUwjBzPVHCfdzo6x1Bx4mQVp/ucmDJGlFjtgdUHrPEZQ4qVC9kfoW\ng8Xb++7QabJLanhidAgbWitId+2Jk5OLxduVJOniZGF3QBkpDwDQ02sL+4qrLdrWj6P13v7u9GQt\nNTqVCdFyUw1J0pIs7OdvAcYAAAquSURBVA4oJLAvfYUTNR6lZFl4ffb1B09zoLSG34yNYX3BajxN\nghEpv7Zom5IkXZ4s7A4qIyCZI65w7PhOi7VxbrR+hN7+7lyb6M+3LafIcO6Bi3P3Wq1PkmyNLOwO\nKiPxboSi0FS7jNN1zRZp45u8cnLLanlibAy7982mVlW4JmqKRdqSJKn9ZGF3UH0jxhFuVKj1PMaD\nH2XR1HrptUc648dr6xEB7tyYGsaKo1/gYxKMGPSoWduRJKnjZGF3UIqicK1vXw67GSg9lcdvF+/F\naOr6pio/WpdbTt7JWp4YG0tD9XG+M1Yz2SsaZ2cPs7UhSVLnyMLuwCalPoJQFG6My2Rdbjkvrz5o\nlvOaTOeurUcGenB9Sihrtr1Kq6JwQ+pjZjm/JEldIwu7A4uKHEs/4UROWw73DevNB5sL+GRbYZfP\nuy73FIdO1fHE2Bj0qsKy8h3ECyf6ybVhJMkmyMLu4KaEjSZHL7g35jDj+gbx/IpcNhw63enznRut\nHyUq0IPrBoRyJPdzcvWCG8LGyE3NJclGyMLu4KYM+T16Ifgyezaz7kilX09vfrNgD7llNZ0639rc\nUxwur2PGuFj0OpUF2bNxNQmuHfYHMyeXJKmzZGF3cIE+vRjrEsKy5lJ0rRV8OH0w3m5O/HpeFidr\nOras7/9v796Do6rPMI5/392gIInFFk2AULGSAUHxtmFQWi6CTrh3tK3WWhHRzFTBeJk6XscytiNV\np4qVaauiMICiRaYKRVFQ2tGqYwSsBoog3oBgQhUhMAjJvv1jV0IdJIHN2eOefT7/ZHOym/O8Q3hy\ncs7ub5NJZ9rSdZx4bEfGnNqVbds+ZNGXWxjdoRudiroENIGIHCoVex64sN9EtsdjLHnt9xQf3Z4Z\n48vZsXsvE2dWH9JaMovfrd13tB6PGfOX38qXMePiM68NML2IHCoVex4o73MRJyRjzN30Ep5M0qfr\n0Uz/xRms/XQHkx9fQWNTssXv0ZQ+Wu95XCGj+3Vl945a5n62igGxIsrKRmRhChFpLRV7HjAzxpcO\nZ00syb/e/CMAQ3odx5SxfXl5bT1TFq7G/eDPcf/7O7Wsq2toPlpfdiNb4zEqE9dnYwQROQQq9jwx\ndvCdFCfhoZpHoSl1+uWSAcdTOegHzH79I2a88sE3PrYp6TywbB1lxxUy6pQu7N6+mRmfraA8VkT5\nST/J1ggi0koq9jzR7oijmNBjFCviSd549a5922+q6E1F3xJ+t3gNS2q2HPCxi/69mfV1DVQNTx2t\nz156HVvjMX6VuCFb8UXkEKjY88gFP7yDrh7j7nVP0rh7OwCxmHHfhafRr7QTVfNW8vYn/79++1dH\n672Kixh5che2fPo2D39Rw7D4MZSfdEEYY4hIC1TseaR9uw7c0PcK3iswnl7afG68wxFxHrk0QefC\nI5k4q5qNn+/a97WFb2/m/fqdVA0vI0aSe5+rJGnw68FTwxhBRFpBxZ5nzk1Motw6Mq3+NTZvfH3f\n9mOLjuSxy8r5srGJy2e+yfbde2lsSvLAsnX0Limiom8Jzz03mSW2i8qSwXTrfnaIU4jIwajY84yZ\nMWXofTRh3LKkkr0NzcsLlBUX8ZdLzmRD/U6umrOCBSs3sWHrTqqGlfHR2r9xZ90/6Bcr5PJz7w9x\nAhFpiYo9D3Xvfha39b2Ctwqc3/51DL6n+RWoZ/fszF3nn8Ir67dy84J36F1SRKJzHZNeu512xLh7\n5EwK4u1CTC8iLVGx56kx/a+lsmQQC2K7mPLUCBp3N68d89NEdyaf05OmpFPVu4YJiy+m3mBa/9vo\n9r1eIaYWkdYoCDuAhGfSeQ/iCy/l4c9XsXrOWVz//VH0H3Q7MU9yZa+tdNw2iztqayiIx3ho4FRO\nK9Pb3onkAhV7HjMzrhk7m97V05la8zBX1j5P0eOLOTqZZEtBnCYzBh7Zmd+MnEVJpx5hxxWRVlKx\nC+clruZHp13O8lUzqP5gCQ3xAkYWlTKsRwV9dZQuknMyKnYzuwcYA+wB3gcmuPu2gz9Kvo06FHRg\nRGISIxKTwo4iIhnK9OLpi8DJ7t4PeA+4OfNIIiKSiYyK3d1fcPevFvR+HSjNPJKIiGTCWlqutdXf\nyGwh8KS7z/mGr1cClQDFxcVnzps377D209DQQGFh4WHnzEWaOT9o5vyQycxDhw59y90TLd2vxWI3\ns6VAyQG+dKu7P5O+z61AAjjfW/GbIpFIeHV1dUt3O6Dly5czZMiQw3psrtLM+UEz54dMZjazVhV7\nixdP3X14Czu6DBgNDGtNqYuISLAyfVZMBXAjMNjdd7V0fxERCV6mz4p5ECgCXjSzVWb25zbIJCIi\nGcjoiN3de7ZVEBERaRtt9qyYQ9qpWT3w0WE+vDOwtQ3j5ALNnB80c37IZObj3f3Ylu4USrFnwsyq\nW3NVOEo0c37QzPkhGzNr2V4RkYhRsYuIREwuFvtDYQcIgWbOD5o5PwQ+c86dYxcRkYPLxSN2ERE5\niJwqdjOrMLO1ZrbezG4KO0/QzKy7mb1sZqvNrMbMqsLOlA1mFjezlWa2KOws2WBmncxsvpn9x8zW\nmNlZYWcKmpldl/6ZftfMnjCz9mFnamtm9qiZ1ZnZu/tt+66ZvWhm69Ifjwli3zlT7GYWB6YDI4A+\nwM/NrE+4qQLXCNzg7n2AAcDVeTAzQBWwJuwQWTQNeN7dewOnEvHZzawbcA2QcPeTgThwUbipAjET\nqPjatpuAZe5eBixLf97mcqbYgf7Aenff4O57gHnAuJAzBcrda919Rfr2DlL/4buFmypYZlYKjAIe\nCTtLNpjZd4BBwAwAd9+TJ+9CVgB0MLMC4Chgc8h52py7/xP47GubxwGz0rdnAT8OYt+5VOzdgE/2\n+3wjES+5/ZlZD+B04I1wkwTuflILyyXDDpIlJwD1wGPp00+PmFnHsEMFyd03AfcCHwO1wBfu/kK4\nqbKm2N1r07e3AMVB7CSXij1vmVkh8DRwrbtvDztPUMxsNFDn7m+FnSWLCoAzgD+5++nATgL68/zb\nIn1eeRypX2pdgY5mdkm4qbIvvcx5IE9LzKVi3wR03+/z0vS2SDOzdqRKfa67Lwg7T8AGAmPN7ENS\np9rOMbMDviNXhGwENrr7V3+JzSdV9FE2HPjA3evdfS+wADg75EzZ8qmZdQFIf6wLYie5VOxvAmVm\ndoKZHUHqYsuzIWcKlJkZqXOva9z9D2HnCZq73+zupe7eg9S/70vuHukjOXffAnxiZr3Sm4YBq0OM\nlA0fAwPM7Kj0z/gwIn7BeD/PAuPTt8cDzwSxk4yW7c0md280s0nAElJX0R9195qQYwVtIPBL4B0z\nW5Xedou7Lw4xk7S9ycDc9AHLBmBCyHkC5e5vmNl8YAWpZ36tJIKvQDWzJ4AhQGcz2wjcAUwFnjKz\niaRWuP1ZIPvWK09FRKIll07FiIhIK6jYRUQiRsUuIhIxKnYRkYhRsYuIRIyKXSQtvcriVWHnEMmU\nil2kWSdAxS45T8Uu0mwqcKKZrTKze8IOI3K49AIlkbT0CpqL0muEi+QsHbGLiESMil1EJGJU7CLN\ndgBFYYcQyZSKXSTN3f8LvJp+g2VdPJWcpYunIiIRoyN2EZGIUbGLiESMil1EJGJU7CIiEaNiFxGJ\nGBW7iEjEqNhFRCJGxS4iEjH/A5e8WP3/rwRlAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t4, sol4[:, 0], label='with 21 points')\n", "plt.plot(t, sol[:, 0], label='with 101 points')\n", "plt.plot(t2, sol2[:, 0], label='with 1001 points')\n", "plt.legend(loc='best')\n", "plt.xlabel('t')\n", "plt.grid()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I also want to try to speed this function up by using [numba](http://numba.pydata.org/)." ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [], "source": [ "from numba import jit" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "@jit\n", "def rungekutta4_jit(f, y0, t, args=()):\n", " n = len(t)\n", " y = np.zeros((n, len(y0)))\n", " y[0] = y0\n", " for i in range(n - 1):\n", " h = t[i+1] - t[i]\n", " k1 = f(y[i], t[i], *args)\n", " k2 = f(y[i] + k1 * h / 2., t[i] + h / 2., *args)\n", " k3 = f(y[i] + k2 * h / 2., t[i] + h / 2., *args)\n", " k4 = f(y[i] + k3 * h, t[i] + h, *args)\n", " y[i+1] = y[i] + (h / 6.) * (k1 + 2*k2 + 2*k3 + k4)\n", " return y" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Both versions compute the same thing." ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.0" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t2 = np.linspace(0, 10, 1001)\n", "sol2 = rungekutta4(pend, y0, t2, args=(b, c))\n", "sol2_jit = rungekutta4_jit(pend, y0, t2, args=(b, c))\n", "np.linalg.norm(sol2 - sol2_jit)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "----\n", "## Comparisons" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "methods = [odeint, rungekutta1, rungekutta2, rungekutta4]\n", "markers = ['+', 'o', 's', '>']" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "def test_1(n=101):\n", " t = np.linspace(0, 10, n)\n", " for method, m in zip(methods, markers):\n", " sol = method(pend, y0, t, args=(b, c))\n", " plt.plot(t, sol[:, 0], label=method.__name__, marker=m)\n", " plt.legend(loc='best')\n", " plt.title(\"Comparison of different ODE integration methods for $n={}$ points\".format(n))\n", " plt.xlabel(\"$t = [0, 10]$\")\n", " plt.grid()\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAEcCAYAAACBPmBXAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3Xd4FNX6wPHv2U3vkN5IaKFD6CDF\nAIk0karYr3q9XC8oCpYryk8RUbGLouK1ca2IKFxBUAkQEEEkNBGC9JhCh1RSd8/vj1nCpm/K7qac\nz/PMs7tT3zPt3Zk5MyOklCiKoiiKrensHYCiKIrSPKkEpCiKotiFSkCKoiiKXagEpCiKotiFSkCK\noiiKXagEpCiKotiFSkCKoiiKXagEpCiKothFk09AQogDQogYe8dxhRCigxBirxAiWwgx04L+lwoh\nFpi+l5SlovHUdNzNRUNbB2qiscYuhDgphIitp3GVbAM1HE5tDzVk6/XN4gQkhLhVCJEohMgRQpwS\nQqwTQgy2ZnD1QUrZRUqZYO84zDwGbJJSekop36zJgGXKUtF4aj3uurJ0hyOEuEsIsV8IcVkIcVoI\n8a4QwqfMePJMO40MIcQ2IcR9QghdBf3kmDWLK5tmTdaB+txx1kbZ6TfA9bdC9p5vlbDb9lBTQoj7\nTfvXAiHE0jLdWgohVgohcoUQyUKIW60Vh623FYsSkBBiNvAG8DwQCLQC3gHG12Xi1iSEcLB3DJWI\nAA5YaTy1Gret5pUQ4mHgReBRwBsYgBbzeiGEk1mv46SUnqZuC4F/Ax+WGd04KaWHWXO/9UtQew14\nfWzKar2t2WF5pQMLgI8q6PY2UIi2770NeFcI0cWGsVmPlLLKBm1HkQPcWEU/nYAEIANtgd9g1u0k\n2g7ndyAXbUcSCKwDsoF4oEWZ/ucAB4FLwMeAi1n3x4FjpmEPAhPLDPtv07QKAAdTu1hT938DaaZh\n/wRGVBe/2XgfMY03E/jKPKYazIuNgAHIN83TqAqG7wnsNsX4FbAMWGAWR2xF46mkXQjwDXAOOAHM\nrGZeVdp/VfMB+BQwAnmmaT9WQbm8TN1uKtPewzS9e8zLWKaffqbxd62sn2rWYfN1oNJlWVE5LJgn\nvYA9puX1tWl8C6qYx1WtvxVNv1RZqX5bs2g9rem2WdV8qCLuSmOpphyVbgNVbcdlylbR9mDJdl5q\neZXp/k9gLVpCOI+WNOIsXQ8tXFcXAEvNfrujJZ8os3afAgurWa4V7kMtnAe13VaqXS7lYrVghowC\nissuDLPujsBR4AnACRhuCqCDWSF+RVuxQ4GzppWrJ9rOayPwdJkZ8AcQDrQEfimz8t2ItjHogKlo\nG06w2bB7TcO6ltlpdwBSgBBT+0igbXXxm43jN9N0WwJJwH01nRemfhKAeyuZl05AMjDLNK4pQBFl\nElBl4zFvZ5o/u4CnTONtAxwHRlY0r6rrv7r5QDVJgSrWI+C/wJdVjQf4C/iXJdOqZIOMra4MFfRb\n3Ty8srweNC2vSWg7C/PlVXZ9rHT9rahsZeKxZFurdj0tM+5qt80arBtl465sXam0HFS/DVS4HVdS\nvgSubg+WbuellleZ8b0DXARGmubJ00B8Bf2tQdvBV9SsqWZdLZuAegKXy/TzCLC6muVabh9ag3lQ\nm23F4uVi3lhyCs4XOC+lLK6k+wC0f7ELpZSFUsqNpgVwi1k/b0kpz0gp04CfgR1Syj1SynxgpWkm\nm1sspUyRUl4EnjMfl5TyayllupTSKKX8CjiC9g/5ijdNw+aVGacBcAY6CyEcpZQnpZTHLIz/ynjT\nTTGtBqJrOS+qMgBtJXlDSlkkpVwB7LRw2LL6Av5SyvmmWI4D7wM3lynTlXllSf9XhqluPlTEj8rX\no1Om7lVJR9sIrlhlukZ0pfmHhXGA5WWobp4MQDuqedO0vL5F22DLTqtkfbRg/a2KJetXTZePJdum\npetGWZXFUlU5qtsGKtuOq1OT7byi/QdAd9PwP0opjWhHGOVIKa+XUvpU0lxvQazmPICsMu0yAc9q\nhqtoH1qb/ZOl61Otlosl5zkvAH5CCIdKdh4hQIppgVyRjPaP6oozZt/zKvjtUWacKWXGFXLlhxDi\nTmA2WobFNKz5zst82BJSyqNCiIeAeUAXIcSPpvFYEj/AabPvl81jMmPpuCoTAqRJ018Is+FrIwII\nEUJkmLXTo+1krkipYf9g2XyoyHkqX4+CTd2rEor27/OKCVLKeAunXZalZahunlS0vMquf6V+W7D+\nVsWS9aumy8eSbdPSdaOsymKpqhxVbgOVbcdSyvRqYrF026xw/yGEEEA3wPyPTlcqSUL1KAft9LU5\nL7Qjl6pUtA+tzf7JovWptsvFkiOg7WjnQydU0j0dCDevpYRWSSHNgnFXJrzMuNIBhBARaP+87gd8\npZQ+aIeawqz/Sl9wJKX8Qko5GG2DkmgXxOsz/rqO6xQQalrZzYevjRTgRJl/X55SyjFm/ZTdcVbX\nf1Wqe7HUlfVoknlLIYQHMBrYUNmAQoi+aBvJVgtjqYuazJOKlpf5ultqfHVdf7HOtmaJmq5L1amq\nHNVuA5Vsx3WZZqnRVzJ8JNof9j/N2vVEO2VXiqmGcE4lzToLYjV3GHAQQrQ3a9eD6itXVLQPre/1\np9S8qs1yqTYBSSkz0c79vi2EmCCEcBNCOAohRgshXgJ2oGXGx0ztY4BxaBcOa2uGECJMCNESeBLt\n4hdoF+Qk2oVQhBB3o/0LqZbpnoDhQghntAuTeWgX0eoz/rqOazvadZKZpuEnYfnpmbJ+A7KFEP8W\nQrgKIfRCiK6mnXl99F/WGbRrAxUyrUfPAG8JIUaZyhcJLAdS0S5qliKE8BJCXI82/z6TUu63MJa6\nMC9HdfNkO9qph/uFEA5CiPFUvbwsWX+rmo/W2NYsYcm6UeXyL6OqclS5DVSxHddlmpboDuwvc/TQ\nE9hXtkcp5WhZuoameTO6opGb1h8XtCNLvRDCxXS2IBf4FpgvhHAXQgxCq31cbnspo6J9aH2vPyXL\nvLbLxaJq2FLKV9FOG8xF23hS0P7FrZJSFqIVYjTaaZR3gDullIdqXJyrvgB+QrvQeQztAhpSyoPA\nq2gr6Rm0Q+JfLBynM1qV3vNoh5UBwJz6jL+u4zINPwm4C+1001S0la/GpJQG4Hq0c7YnTPF8gFar\nsc79V+AFYK7peswjlUzjJbQLoK+gndfegbYujZBSFpj1uloIkW3q9iTwGnB3mdGtLvPPcqWFcVpc\nDrQL4ZXOE7Pl9Xe0C8y3o51TLyg/WovX30rno5W2tWpZuG5Uu/zNxldpOSzYBircji0oQ13nXXfM\njnaEEH5AENoRbH2Yi7bTfhxtPcoztQOYjlZR6CzwJVplnOqOgMrtQ62w/phvK1OpxXIRpU+12p8Q\n4iRazZXant9XFLsRQuwAlkgpP7Z3LErz1Jj2oU3+UTyKYk1CiGuFEEGmUyh/Q/un/IO941KUxkDd\nna0oddMB7TqWO9rpjilSylP2DUlRGocGdwpOURRFaR7UKThFURTFLlQCUhRFUeyiUVwD8vPzk5GR\nkbUaNjc3F3d39/oNqIFTZW4eVJmbh7qUedeuXeellP71HFK9aRQJKDIyksTExFoNm5CQQExMTP0G\n1MCpMjcPqszNQ13KLISo7aO8bEKdglMURVHsQiUgRVEUxS5UAlIURVHsQiUgRVEUxS4aRSWEmvop\nphsHgw18M1hHhofQ3rcJ+Lr4kjA1wbbB/L4cNsyHzFTwDoMRT0H3m2wbg6IoSgPUJBNQ+Oligs7B\nsP0GNnUTJYnoQv4F2wby+3JYPROKTC9XzEzRfoNKQoqiNHtNMgEBOBq0zxH7JMN/N/BrB1g+WMel\nfV/i6eCCg9BbPYaYxGe4EFa+Cr7vrvkkqASkKEoz12QT0BUOplciDTkIQw4a+evD+WS5Q7YbXHaF\nfDdJoYuk2FWCixFcjOicJU7OBpydDbjrjHgZjXgYJR7GK9+NuElZ7QW0xzaGcDhUXj0VaHJBJ+C9\noeAdrjU+4drpOe9w8GkFbr5Q6oWQiqIoTU+TT0DFOpACksLgzzBBG2NbHHJycc7Jw+NyAUHni/C8\nbMDJINFeRljaZSfIcoMUN8h0F2S5YWoEeR5OFHq6IL3c0LXwxNHHEzdnDzwd3fBwcCNu2QrCLshy\npwIB8AiEC8fgeAIU5pSeqIOrlpBKElOr0knKKwT0jjWbEepalKIoDUyTTUBFejAK2NRd8M0gHZmm\nHf/+v60u16/BYOTihUwupp0hI+0MOWfOkXPmNAXnT2O4dA5d5iWccjIJvJhD27TLeOUV4CCNaG+e\nzUd7GaYm20WQ5SbIdNeeMm5+KtA8ERmnf4VO6EBKyM+AjBTtGlFmKmT8dfX76T8g92zpgIUOPIMr\nPnryDkNfnFe6f3UtSlGUBqhJJqCUIAcOhBhKJR7QasFVRK/X4R/QAv+AFtCzY5XjllKSm1/E+dPn\nuZh6hqzT58g9c46Cc+cpvnARmXEJfeYlHHMygSMlwzkYASPE7ZGEnzcQ5x/HiIgRxEXE0SugF/rg\n7hDcveKJFuVDVtrVxJRhSk6ZKZDyGxxYCcbikt6HAOxqcfXo6cTmq8mnZJx52hGRSkCKothJk0xA\n1yXs5zpgFvX/7CghBB6uTni0DiGydUiV/SZ17FTyvViAXoIEjoQIevh0YeWRlXx56EtaurRkRCst\nGfUJ6oOjrszpNUcX8G2rNRUxGiDnTMlR1LE9m2nb0lFLUpdOlD/Fd0VmCuxfASE9oWUbdd1JURSb\napIJqCExPxW4oYdgwq+S8Tsk5w7v5565z5LeRcf65PWsOb6Grw9/jbezN8PDhxMXEceA4AE4WnKt\nR6fXrgt5hQD9SbngR1vzpPt6Vy3ZVOSbv2ufLj5aIgrtBSG9tO9eISopKYpiNSoBWZFzx4749OyJ\n//R/sWnvJdbERWE0StZ9/C3u776O/uFZiL4xzHv5GfSDnmVb+jbWJ69nffJ6Vh5diaejJzHhMcRF\nxHFN6DU4651rF8iIp0pfAwJwdIWxr0NgF0jfDWm7tc+tb4A0XbjyCNSSkXlScq/4NKaiKEpNqQRk\nRW1WrSz5PitOux9IpxOM/ftkzo2P5acnXqTbz9+RdN1o5LQZDJt+F8NbDafQUMivp37lp5M/sSll\nE6uPr8bNwY1rw68lLiKOwaGDcXVwtTyQK9d5KqsFF9wdet+lfS/K0yo+mCelwz+gnTxEq+hQKilF\ng7Nn3WaUoijNkkpAduLv581t/3me7ZsmcfaZ+UQtfpmE//2Pji89R3DPrgwNG8rQsKEUGYvYeWon\nPyX/xMa/NrLuxDpcHVwZHDqYuIg4hoYNxd3RgpdVdb/JsgoHjq4Q3ldrrsjPglP7Sielg6tMHQX4\nRZU+fRfUTbtuVZEGVh389fWHmRUXZbfpK0pzphKQnQ0c1oe8Qd/y3UsfELH8Ay7cOpU/R09m8Px/\n4+DhjqPOkWtCr+Ga0GuYO2Auu8/s5qfkn9jw1wbWJ6/HSefEoNBBxEXEcW34tXg5edV/kC5e0HqI\n1lyRex7S92hN2m44vgl+X6Z10zlAQOfSSSmgk1Zbr4FVB1+04YhKQIpiJyoBNQCuTg5MnXsfR6Ze\nz445z9J77dfs/HkDLeY8ScdJY0r6c9A50C+4H/2C+zGn3xz2ndtXcs1oU8omHHQODAweSKv8VkTn\nR+Pj4mO9oN39oH2c1oB2P1NWutlR0h7tKGm36UmwDi4gjWAoLD0eO1UHl1Jy6HS2TaepKEppKgE1\nIO3bh9Hu6yWs+/JHHBa9iM8TD7Nx2XL6vrIAz1ZhpfrV6/T0CuxFr8BePNr3Ufaf3098cjzrk9fz\nc87PLFu+jH5B/YiLjOOt3W9xqeBSuenV69PBhQDvUK3pNE5rJyVcPH71KOnXtyseNjO1fmKw0GMr\n9rE88eo0Ix//HoC7B0Xy9LguNo1FKU+dFm0+1PuAGhghBGNuHUXvH9ew87pbaXFgN0fHjGXHS28h\ni4srHEYndPTw78HDfR5m3aR1PBr0KHd3vZu0nDTmb59fYfIBrP90cCG0e5e6TYFRz2tPa6iId1jF\n7etZysXL3P/Fboa+NJuHD6zimUGBALTx066hffzLSUa+voWXfjjEruSLGIzSJnEppS3acKT6npQm\nQSWgBsrXx5073/w/ij74gqPBUXh99A4/jxhL2radVQ4nhKCVcyse7PUgayauYcW4FTaK2AIjntIq\nOZQioN80q042M6+I59cmMeLVzcQnnaFtVjqxJ3fQf+69zNj7DT/e2ZmND1/L3LGdaOnuxHtbjjP5\n3e30fS6e2cv38v3vp8jOL7JqjAocPZvDm6bksyv5kvoD0AyoU3ANXL+BXem+9ktWvfk5oZ+9S8Y9\nf+PosDEMfOH/cPLxrnJYIQQdWnawUaQWKFsd3CMACi/DL4ugzbUQ3KNeJ1dYbOTzHcks2nCEzLwi\npvQK4+HrOnDpa6CoCAmM+es3jsXG4TnyOu745z/5+8A+ZBVJthw+x8ZDZ9l46Czf7k7DUS/o17ol\nIzoGMqJTABG+FtQ8rMLxCRNxjY7Gb/q/cAwIqJfyNkbHz+Xw/e+nWLrtJBdyr14fnPzuNgA6BXvy\n4Ij2DGnvj7uz2l01NWqJNgIujg7c/PDfOHHjaDbPeZ4+m9ayd/jPuM96mM6334hoTE8rKFsd/PxR\n+GQ8LB0Hty2HVgPqPAkpJT8eOMOLPxzixPlcBrXz5YkxnegS4o00GDA/IakzGpCFBrJWryFr9Rqt\nnZsbHT096ezpwUwPT3IcXThlcCT5oCDlf3oWO7ri1sKLtq2D6dI+hKg2QTj5eKPz9ETv6Ylwc6t2\nmRQcOkTBsWNkrlyJ98SJzSoRnTyfy/f7T7Hm91MkncoCoG9kCx4Y3o7R3YLp//wGFt0czYaksyT8\neZb7PtuNk17HgLa+tNIX0T4jj1CfGtwHpzRYKgE1Iq1bBRD52ev8uGozxa+8QNvnnmbz8m+IfvV5\nfKIqeU5cQ+fXDu75AT6dAJ9MgJs/g3axtR7dvpQMnlubxG8nLtIuwIOP7+pLTAd/MBrJXL2G8++8\nU3oAvR50Otx69cKtfz+QEmNWNoacbIzZORiys/DIzqFNdhaR2TkYsrLgyrW4X7SPclUo9Hp0Hh7o\nPT1LkpLO0xO9hwc6Ly/0nh5af6ajsIyvvybz22/xnjAev/vvb5KJKPmClnS+//0UB9K1pNOrlQ//\nd31nxnQLIti7dEIZHx3K+OhQigxGEk9eIj7pDBuSzrDlQiGfJW2kU7AXsZ0CGNEpkO6h3uh0jehP\nmFLCLglICDEKWIT2Ap4PpJQL7RFHYySEYNTEGDJiB7Dy2bfpuvYz/powgT9vvJ2+T85C5+RUbhhf\nF99KKxzEJ8cTG1H7HX698AmHu3+AzybCFzfD5A+gy4QajeJ8npEHl+3hf3vT8fNw4rmJXZnaJxw9\nkqw133P+nXcoPHEC5yhT7SpHR4ROh/ekSfhP/xcO/uXfXFsRKSWyoABjdjZZFy6x52Aq+w6lcuT4\nKWRODh7F+bR3g3buEOZowLkoH2N2NkWpqRRkZ2PIzsaYU+bhsAYD0mAgY/nXZKxchWuP7jiFhuEY\nGopjWBiOYaE4hYbiEBSE0Fv/Tb71JeXi5ZKksz8tE4DocB/mju3E6G7BpY5izE9JPjiifUl7R72O\ngW19GdjWl7ljO/Hl95vI9oxgQ9JZ3t50lLc2HsXf05nhHQIY0SmAwe39cHOq/W6toZwaNY9j5ZFC\n6vF5yg2KkNK2F/qEEHrgMBCH9udxJ3CLlPJgZcP06dNHJiYm1mp69f007IZm1+4jJD31LL2P7uRi\nyyDCn53Hcb2stsz5xfn8/ae/c/jiYT4e9TFd/braJuCq5GXAF1Mh9TcY9yb0uqPaQbLyi3hn0zE+\n+PkYep2Ofwxpwz+vbYOHo46stetKJR6/GTPwjIvlxKTJuJqe0Wdp4qmOwSjZm5LBxkNn2JB0tuQe\no9Z+7gzvqO0c+0a2xFGvQxqNHOpsVt1brwchcO7YEafQUIovnKcoLZ3i06e1quxXODjgGBSkJaXQ\nENKKiogaPNj0OxQHf3+Ezr71ilIvXWatKensS9WSTo8wb8Z2D2Z012DCW7pVOFxSx05X/xRUcUrS\nfHu+lFtIwuGzxCedZcuf58guKMbZQcc1bX0Z0Um7Vlf2yKo6lsZhbeZxrA7uxUOfLKxVHEKIXVLK\nPlYIsV7YIwENBOZJKUeafs8BkFK+UNkwKgFVrchg5Jv3viHgw0UE517geJc+xL77Gs4BVe9cz+ed\n5/a1t1NgKOCLMV8Q7BFso4irUJgLX90OxzbCyOdh4IwKeysyGPnyt794I/4IF3MLGRTiwMt3DiXY\n06nSxGPLnXPqpctsPHSWDUln2X7sAoUGI57ODgzt4E9spwA63hJXsoM52Xc4sS/MKZcMZWEhRadP\nU5SaSmFaGkWpaRSlpZl+p2I4d75U/8LJCceQkKtHTqGhOIWFlvzWt2xZ7tpUffzjT8/I05LO/lPs\n+Ut7OWO3UC3pjOnkR6gzGHNzMV6+XPrT7PvZV141K4gAIXCKjMSla1f0Hu6g0yP0OlLS0gmPaIXQ\n6UGvK/k0oiM1q4Aj53I5fO4yF/OKMQodgS3c6BDsTcdQH0J93RGm8VDBJzpB6n3/uhqH6fSsx+DB\neN8wDr23VulHSlnyaETtD4K8+t20Py3Zr5r3y9XuSFm6n5LORnLyi8l6/NGSMIqEHicnh1olRJWA\nyk5QiCnAKCnlvabfdwD9pZT3l+lvGjANIDAwsPeyZctqNb2cnBw8PDzqFnQjcT4jn1NfrePavRso\ndHTizPXjcY8dAlXseE8VnuK106/R0qEls4Jm4aKr5BluNiSMRXQ++Cr+57dzMmIqJyNvKXkthJSS\nvecMfPVnIadzJR1b6ri5gxN+Ihe/Q4dw/34tDmfOUBQaSu7YMRRER1dZflvIL5YcuGBg3zkDe88a\nyCqULN74GunBrUkdMYpP0l15L9YNZ4eaXcfIvXQJr4IC9BcuoD9/Hv2Fi6bPC+gvXEBX5lSfdHLC\n4OtbqvH89luk6Qgs75qB5MbFIZ2d0RUUIAoKEPn55T51+QUU5OZz7lIemZn5FF3Ox9VQgI8spAUF\neBgKcSgw9V/JvWuWkAB6PdLF9BQNowSjESG1z5LvzYQRwemwNujnPmLxMMOGDVMJqNQELUxA5tQR\nkOWklLy7+HMCVyyn85kjnI+IIlAU4jlgAH7T/8XifRnl7jL/Je0XZmyYwTUh1/Dm8Ddx0DWAuimG\nYljzIOz5DPrfByNfYH96Ns+tPcivxy/Sxt+dJ0Z3YniUL9nrfuCvV17B4cwZux3xWMpolOxPy2RD\n0hk2HDpbckEewMfNkWBvV0J9XAj2diXEx5UQHxdCfFwJ9nYh0MsFR/3VMlW3bhtycilKL33kVJSe\nRqHptzErq9Jhq1Mk9OQ5OFPs7IKTpweeLb1x8/ZA5+6Ozs2t6s8K2v3Zq/fVkVdxfa5smeWVZGQw\naN8NBuSV36bPi9l5bDtyjm2Hz7Hz+DkKCotx1UOfcG8GRLagf4QPLVwdwWjg5E1Try4rnR69Xof7\n0KH4TJyA3sfn6vuxhACufNeuzUoJuYUGzuYUcC6nkPM5BZzN1r6fzSngXFYBF/OKkNL0ZwqQQtDC\nzRF/LxcCPJ0J8HLB39OFHk9PLzWvnZwcany9UguzYR8B2WNPkwaY3xIfZmqn1AMhBJ27hdHz3hV8\ns/ADOq38CENhLpeS/yJz5UqKg3tR1KP0+eRBoYOY028OC3Ys4JXEV3i83+N2LIGJ3gFuWAzO3vDr\n2/x26CS3nLkNb3dXnh3fham9Q8n78UdOPKydapOhoYQuWtRgE88VOp2gR7gPG8skH4CMy0W0cHUk\nLSOfnScvkZlX+uZXnYAATxdCfFwI9nHFkFXICccTWqLy1pJVS3enktNseg939FFRuERV/FgbQ1YW\nh/v1L99BCBwjIwmYPYss4ciO03lsSs5h59l8LuudaRXqx6jocMZ0D6atfz2eXahFxRAhhHaqTK+n\nsuPHAD+Y0DqcCddBQbGBHccvsiHpDPFJZ/kqMRcSc+kR5s2IToHEmcXxfXBvZn+6sCSOYoOR01n5\npGfkk5Zx2fSZR3pGHmmXtM/cQkOpaTs5OBLq40VImAuRPq5c46P9sQgzfQZ5u+DiWL5iSdLTV+P4\noUwcTYk9EtBOoL0QojVa4rkZuNUOcTRp3q5O3PPMdPbeNBYmj0JII7KggFEnd3A0Ng6fSRPxmz69\nJBFN7TiVk1kn+SzpMyK8Iril4y12LgHkFBp4lztwMpzlwcyvWRucT9Bdn8CWn0kZP73kGk/ookXs\ndnSg+/Dh9g7ZYrPiokqORCMf/56TC8eW6ye3oJhTmXmkZ+STnpFHeqbpMyOPg+lZpFws4oeTpevu\nODvoSo6YQkw7uZCS79qR1ZUbOvVepZ+cXij0ODs54DRuPDsGT+B/J/LZceIiUkL7gABuHRfC2O5B\ntAuo//c/OXfsWO8VQyqcjoOeoVH+DI3yZ94Nkj/PZLMh6SzxSWd4Pf4wbbxCSA5uy6Upd/DBgSxS\n41NJzzhCekYep7PyKftwhpbuToT6uNLG353B7f0I9XEl9Mp893HFz8OpVvfpmc+PtFV7mmTyATsk\nICllsRDifuBHtGrYH0kpD9g6juYiuksESWa/HTBCYSGXln1F6so1pIy+Cc9+fYjo35MHe84mJTuF\nhb8tJNwznMGhg+0Sc7HByLKdKbwRf5jzOYVMiJ7BJf+uBH26kPNfDaHwYlFJ4ik54klIsEus1uTu\n7EC7AM9Kd/ibNm2ie99rtASVqSWmU5nav/JTGXlsPXKes9nld5rero4liekRwKB3QOh1/BjShyOj\nbmLDmWKMCem09XfngeHtub57MFGB1n3poPnLG21FCEHHIC86BnkxY1g7zmUXMKdjAPFJZ+GAdnT6\n3b50ADoGeTKld1hJYgltoR11ujpZp1q8+fyY2L78rRVNhV1O9ksp1wJr7THt5q5I6NHrBBk+ARgL\nCui06mNY9THZDs582zKCyIh2ZEf58vAPs3gg+i2ubd2dsBauNnnagpSSTX+e5fm1hzh6Nod+kS35\n8PYoIvdv5/wrP1F4ogXO3pe3y8IZAAAgAElEQVQJvSEQz6c/QjSR14Ob3/dSE0IIfD2c8fVwpltY\nxY9lKjIYOZOVz6mSo6d8U6LKIy0jn+PeIRxoEcmXHWO55OIFp7VKA7f1b8WCCV0b11M26sjf05kP\n/qa9iLHYYKTdk+sqPDJV6k8DuNqs2EQl55Nz0k/zV8I2Cn79jTZ/7CN65zrG7pQU6eFo0D/4yKM/\nRwK7UNypK5GtAukQ5EmHQE+igjzx83Cut/AOpGfy/Nokfjl6gdZ+7rx3azT9k3dz4V/Pkm52qs0z\n9DJi5T/gkxvg9m/BM7DeYrAXa756wFGvI6yFG2EtKr7/hgc3MKywmEkZ+cS+tpkTL4xpVkmnMg76\nhnsdsSlRCagZMD+f7Lj3UqnzyR4hQXS+dRLcOgkAQ2Yml3fv5njCOhy2fs/kI7+g//MXjD8Lkn1C\n2deiNfG+rfnDrzWOvr5EBXoSFehJxyAtKUUFeuJhwUMjr7zz5XRmPq/89Cff7E7Fx9WReWM7cMPF\ng1z69z84ZZ54zCsXuHrBstvg41Fw5//Ap5VV5ltz4ebkQLsArTKBSj5X1fbIVLGcSkDNgPn55Flx\nVV/M1Ht74zlsGD2GDeP8XyO5+8eHmGroxZ1FffDYtYvWe3Yy4fjPAGT6hXAosB073MNY6xPJWbeW\nAIS1cKVDoKd2tGRKSm39PXByuPqvctGGI0gp+c/PxzEaYdqgCO4qPMrl52dyprLEc0Xb4XDHKvji\nRvholPZdqTO1wy1NvRTP+lQCUio1otUIpg+czWu7XsOpX29mPrAUWVhI/sGDXE5MxCNxFy1276Z/\n1hYAiv0CON+6E4eK2rE9N4z//OlJsekCuINO8O7m17kU2YHUcVoNuzc3HuWGbkE8pD+JfPsxMqpL\nPOZa9Ye7vodPJ8LHo/Do9CQQY90Z0sSpHa5iayoBKVW6q8tdJGcl8/7+94nwimB8u/G4RkfjGh2N\n7733Io1GCo4c4fLORC7vSsQ5MZGgnZuJAXQtWmDs0p1zbTpzyL8NYd+mEnDxFFF7NmNs1YcTXsFc\nH7+Vgpxzlicec0Hd4J4f4ZPxRO+dC907QcQ11pwdiqLUI5WAlCoJIXhywJOkZqcyb/s8Qj1C6RN0\n9cZqodPh0qEDLh060PL225BSUpSczOVdu0xJaRf+Wzdz5cSfkzSAhDEnf0UAOm9vAubPx2fK5Nrd\nQOrbFu75gcIl1+Hw6SSY+hm0t/PTvRVFsYiq6qFUy1HnyKsxrxLmEcZDCQ+RnJVcab/C9BBJn8mT\nCVn4Au3W/0S7zQmEvPpK6f5Mn8asLDK/+65uTy/wDmNPz+e1dwt9eTMcsP09JYqi1JxKQIpFvJ29\neWfEOwgEMzbMILMg0+JhHQMD8R5b+n4Kg94B4eyMz803E/b6a3WOr8jJB/62BkJ7w4p7YNd/6zxO\nRVGsSyUgxWLhXuEsGraI9Jx0ZiXMoshQVP1AZTk6Ipyd8b3pRtrFryf46afq7zEjrj5wx0qtltzq\nmbDtrfoZr6IoVqESkFIjvQJ7MX/QfHae3sn8X+dTk6epO3fsiM+UKfWfeMw5ucHNX0LnCfDTXNi4\noPRL3RRFaTBUJQSlxq5vcz3JWcks2beECK8I7u12r0XD2ex5Xw5OMOUjWO0JW16G/EwY9aLd3wuk\nKEppKgEptTK9x3SSs5JZtHsRrTxbcV3kdfYOqTSdHm54C1y8YftiyM+C8W9rr3lQFKVBUFujUitC\nCJ4d9CzpOek8sfUJgt2D6ebfzd5hlSYEXLcAXHxg0wIozIHJH4Kj/d/6qiiKugak1IGz3plFwxbh\n5+rHAxsf4FTOKXuHVJ4QcO2jMPolOLQGvrgJCnKqH05RFKtTCUipE19XX94e8TYFhgJmbJxBTmED\n3bn3/ydMWAInt8In4yHxI3i9K8zz0T5/X27vCBWl2VEJSKmztj5teTXmVY5nHOfRLY9SbCy2d0gV\ni74FbvoE0vfAmtmQmQJI7XP1TJWEFMXGVAJS6sU1IdfwRP8n2Jq2lZd3vmzvcCrX6XpwawmUqZpd\nlAcb5tslJEVprlQlBKXe3NThJpKzkvnk4CdEeEVwa6db7R1SxXLPV9w+M9W2cShKM6eOgJR6Nbv3\nbGLCY3hx54tsSd1i73Aq5h1Ws/aKoliFSkBKvdLr9Lw45EWiWkTx2JbHOHzpsL1DKm/EU+DoWrqd\no6vWXlEUm1EJSKl3bo5uvDX8Ldwd3Ll/w/2cz6vklJe9dL8Jxr0J3uFX2w28X2uvKIrNqASkWEWQ\nexBvjXiLjIIMZm6cSV5xnr1DKq37TTDrD3jiFHiGwPEE9cw4RbExlYAUq+ns25kXhrzAH+f/4Mmt\nT2KURnuHVJ6TGwybA6k7tRtVFUWxGVULTrGqEa1GMLv3bF7d9SqL9yxmZq+Z9g6pvB63wrbFEP8M\nRI1Wz4uzg5ivYriQf6Fce18XXxKmJtg+IMUmbLqlCSHmAf8AzplaPSGlXGvLGBTb+1uXv3Ey6yTv\n73+f9/e/X6673XcyegeIfRqW3Qp7PoU+d9svlmaqouRTVXulabDHKbjXpZTRpkYln2ZACMGTA56s\ntHuD2Ml0GAPh/SFhIRTm2jsaRWkW1DUgxSYcdY72DqFqQkDcfMg5Db++a+9omg2jNLLn7B57h6HY\niajJGy3rPDHtFNxdQBaQCDwspbxUSb/TgGkAgYGBvZctW1araebk5ODh4VGrYRurhlrmB5IfqLRb\niGMIfg5++Dv64+fgV9K0cGiBXuirHXd9lbnr/ufxydjPjv7vUeTkVefxWVNDXc7VMUgDR/OPsu/y\nPvbl7SPLkFVl/29FXH21emMtc13UpczDhg3bJaXsU88h1Zt6T0BCiHggqIJOTwK/AufRHsT1LBAs\npbynunH26dNHJiYm1iqehIQEYmJiajVsY9VQy9ztv5W/L2ho2FBSslNIy06j0FhY0t5BOBDsEUy4\nZ3hJE+YZpn16hOHm6AbUY5nPHoJ3B0L/+2DUC3UfnxU11OVckSJDEb+e+pX4v+LZ9NcmLhVcwkXv\nwuDQwcRGxPL4z49XOuzaSWsJ99Tu2WpMZa4vdSmzEKJBJ6B6r4QgpYy1pD8hxPuAqveqAPD2iLcB\n7ZTM2ctnSclOKdfsP7+f7MLsUsP5ufoR7hmOY64jSfuSSiWqFs4tEEKUm1a1Na563g6/va+9wqFF\npDWK2yzkF+fzS/ovxCfHszllM9lF2bg7ujM0bChxEXEMChlU8gfi5Z0vV7hMBIKpa6aycMhChoYN\ntXURFCuzdS24YCnllbeWTQT+sOX0FfvydfGtdMd/hU7oCHIPIsg9iL5Bfcv1m1mQWWFyOpx/mN/2\n/laqXw9Hj1JHTFeaamtcxczRXs2w6XmY9J86lLj5uVx0mS2pW1ifvJ6f034mrzgPLycvhrcaTlxE\nHANCBuCsdy43XGW1IFOyUpiVMIsZG2ZwX4/76CQ7WbkEii3Z+oaHl4QQ0Win4E4C/7Tx9BU7qo+q\n1t7O3ng7e9PVr2vpcSckMGDwANJy0solpyOXjrApZZPl7ynyCoEB/4Ktb2iP6AnuXue4m7LMgkw2\np25mffJ6tqVto9BYSEuXllzf5npiI2LpG9S31pVQwr3C+XTMpyz4dQFL9i2hk0sneuX3wsfFp55L\nodiDTROQlPIOW05PaV5cHFxo69OWtj5ty3UzGA2cuXyGlOwU7v3p3krHUWgoxEnvBIMegl1LIX4e\n3PGt9YJupC7mX2TjXxuJT45nx6kdFMtiAt0CubHDjcS2iqVnQE/0uuorj1jC1cGVBYMW0MO/By/8\n+gJT10zltWGv0cW3S72MX7Efdcu30izodXpCPEII8Qipsr8RX49gXNtxTG4/mbZDHoGfntSeE9cm\nxhZhNmhnL59lw18biE+OJ/FMIkZpJMwjjDs630FsRCxd/bqiE9a5s0MIwU0dbuLyyct8nv05d669\nkyf6P8HkqMlWmZ5iGyoBKYqZfkH9+PLQl3x68FOi/boz2T+ckeufwvUfCaBrerfNVVchIy0njfjk\neOKT49l7bi8AbbzbcG+3e4mLiKNDiw4VVvSwlkjnSJZfu5zHtjzGvO3z2HduH0/0fwIXBxebxaDU\nH5WAlGanqsoQr8a8yoW8C6w+tppvjnzD/3kIXjReYOwPf2dy/8fo5Nu0LoJXVSFj6pqpHLxwEICO\nLTtyf/T9xEXE0canjS1DLKeFSwuWxC7h7b1v8/7+9zl08RCvxbxGmKd6oWBjoxKQ0uxUVxnC19WX\nu7rexd+6/I1dp3fyzdr7WHU2ka/W3ERn385Mbj+ZMa3H4OHUtG+IdBAOzO49m9hWsYR7hVc/gA3p\ndXpm9ppJd//uPPHzEyVVtYeEDbF3aEoNNL1zCopST4QQ9AnuxwtDX2TDXyk8HngtRcYinv31WYZ/\nPZynfnmKfef2YcunidSHzIJMtqRu4Y1db1TZ3+djP+furnc3uORjLiY8hmXXLyPIPYgZG2bw7t53\nG+ZrP5QKqSMgRalOu1i8Ww3mtt/XcevMPfyRncw3R75h7Ym1rDy6knY+7ZjcfjLj2o7D29nb3tGW\nIqUkLSeNPWf3lDRHM44C2hFOU9DKqxWfjfmMZ7c/yzv73uH387+zcMjCBrcslPKaxhqoKNYkBMQ+\nAx8MR2x/m27D5tDNvxuP9n2UdSfW8c3hb3hx54u8vut1YiNimRI1hT6BfWx6cf6KYmMxf176kz1n\nriacc3na2088HD3oEdCD0a1H0zOgJ139utLv8342j9EaXB1ceW7wc/Tw78HCnQu1qtoxr9HZt7O9\nQ1OqoBKQolgirDd0ngDb3oK+fwePANwd3ZkSNYUpUVP48+KfrDi8gu+Pf8/aE2uJ8IpgUvtJ3ND2\nBvxc/awWVm5RLvvO7StJNr+f+73k9ech7iH0DepLr4BeRAdE086nXbl7cyx5OkVjIYRgasepdPLt\nxOyE2dyx9g7mDpjLxPYT7R2aUgmVgBTFUiOegqTVsPklGPtKqU4dWnbgyQFP8nCfh1mfvJ4Vh1fw\n+q7XeWv3W8SExzA5ajIDgwfW+ebMM7lnSpLNllNbSP8yHaM0ohM6olpEMaHdhJKEE+Re0TOBS2uK\nbxvt7t+d5eO0qtpPbdOu083pP6fCRwAp9qUSkKJYyrct9L4Ldn2sParHt/wTF1wcXBjXdhzj2o7j\neOZxvj38Ld8d+474v+IJcQ9hQvsJTGw3kZvX3FztK6iN0sjRjKPa6bRze9hzZg/puemAdsop3CGc\nad2n0dO/J939uzf5Wnk10dKlJe/FvsfivYv5YP8HJF1M4rWY1wj1CLV3aIoZlYAUpSau/TfsWwYb\nn4Ubl1bZaxvvNjzS9xFm9prJxpSNfHP4G97Z+w5L9i2ptKbWhfwL/Of3/7Dn7B72nd1HdpH29G8/\nVz96BvTkjs530DOgJ1Eto/hlyy/ERMfUcwGbDr1Oz4O9HqSbXzee3PpkSVXtwaGD7R2aYqISkKLU\nhGcgXHM/bH4RrnkAQntXO4iT3olRkaMYFTmKlOwUVh5Zyfv736+0/7f2vEVb77aMbD2SngE96RnQ\nkzCPMLtUamgKhrcazrLrlzErYRbT46czPXo607pPs9pjgxTLqSWgKDU18H5w84P1T0MN7wEK9wxn\nZq+ZVfaz9eatrJqwiqcHPs0NbW8g3DNcJZ86ivCK4LPRnzG2zVje3vs2D2x8gMyCTHuH1eypBKQo\nNeXiBdc+Bid/hqMb6n306v4V63BzdOP5wc/zRP8n2Ja+jalrppJ0IcneYTVrKgEpSm30vlt7W2r8\n02BUd943FkIIbul4C0tHLaXIWMQd6+5g5ZGV9g6r2VIJSFFqw8EJhv8fnPkD9n9d48Eru8+mMd5/\n0xj18O/B8uuXE+0fzVPbnuKZ7c9QYCiwd1jNjqqEoCi11WWSdmPqxgXQeTw4Wv5KgKZ4/01j4+vq\ny5K4JSzes5gP//iQpAtaVe3q3hml1B+VgBSltnQ6iHsGPhkPiR/CwBn2jkipIQedAw/1fohu/t2Y\nu3Uuo74ZhaR8xRLz+7OU+qNOwSlKXbSJgbbDYcvLkK9qVTVWI1qN4MuxX1aYfKDy9yYpdaMSkKLU\nVew8yLsEvyyydyRKHUR6R9o7hGZHJSBFqavgHtDtRtj+DmSl2zsaxUqKDEX2DqHJUQlIUerD8Llg\nLIaEhfaORLGS0d+O5pMDn3C56LK9Q2kyVAJSlPrQIhL63gt7PoVzh+0djWIF4Z7hvJz4MnEr4nh7\n79tcyr9k75AaPZWAFKW+DH0EHN1hwzP2jkSpparuz/p41Md8OvpTegf2Zsm+JYz8ZiQv/vYip3JO\n2TjKpsMq1bCFEDcC84BOQD8pZaJZtznA3wEDMFNK+aM1YlAUm3P3g8EPavcF/bUDWvW3d0RKDVVX\n1To6IJo3h7/JsYxjfPTHRyw7tIxlh5Yxps0Y7ul6D219yr+iQ6mctY6A/gAmAVvMWwohOgM3A12A\nUcA7Qoi6vaFLURqSAdPBI1B7RE8NH1SqNB5tfdry3ODnWDtpLTd3vJn1yeuZ8L8JzNw4k33n9tk7\nvEbDKglISpkkpfyzgk7jgWVSygIp5QngKNA0XkqvKABO7hDzOPy1HQ7/YO9oFCsL9gjm3/3+zY+T\nf+RfPf7F7rO7uX3t7dz9w91sTduKVH9CqiSsOYOEEAnAI1dOwQkhFgO/Sik/M/3+EFgnpVxRwbDT\ngGkAgYGBvZctW1arGHJycvDwaF5vilRlti9hLKbvzgeQQk9in0XIOr6GuzINqcy20tDLXGAsYFvO\nNjZmbSTDkEGoYyhx3nFEu0Wjr+XJnrqUediwYbuklH1qNbAtSClr1QDxaKfayjbjzfpJAPqY/V4M\n3G72+0NgSnXT6t27t6ytTZs21XrYxkqVuQE48D8pn/aSctcnVptEgyuzDTSWMhcWF8qVR1bKcSvH\nya5Lu8pRK0bJrw59JfOL82s8rrqUGUiUtdzH26Kp9Sk4KWWslLJrBc3/qhgsDQg3+x1maqcoTUun\ncRDaBzY9D0V59o5GsTFHvSMT2k1g1fhVvDHsDVq4tODZX59l5IqRfLD/A7ILs+0dYoNg62rY3wE3\nCyGchRCtgfbAbzaOQVGsTwiImw/Z6bDjPXtHo9iJTugY0WoEn4/5nI9GfkTHlh1ZtHsR1624jtd3\nvc75vPP2DtGurJKAhBAThRCpwEDgeyHEjwBSygPAcuAg8AMwQ0ppsEYMimJ3kYMgahRsfQ0uX7R3\nNIodCSHoG9SXJXFLWH79cgaFDmLpgaWMXDGS+dvn81fWX/YO0S6sVQtupZQyTErpLKUMlFKONOv2\nnJSyrZSyg5RynTWmrygNxoinIT9LS0KKAnTy7cQr177CdxO+44Z2N7Dq6CrGrRrHo5sfbXavCFfv\nA1IUawrsDNG3wo7/QL9/gk949cMozUKEVwRPD3ya6T2m82nSpyz/czk/nPyBQSGD2H9+P1mFWVd7\n/q/20dTeS6QexaMo1hYzR/tMeMG+cSgNkr+bP7N7z+anKT/xYK8HSbqYVDr5mGlq7yVSCUhRrM0n\nHPr/E/Z+AWcO2DsapYHycvLi3m738uPk5vN0MpWAFMUWBs8CFy+IVw8qVarm4uBi7xBsRiUgRbEF\nt5YweDYc+RFObrV3NIrSIKgEpCi20v+f4BUK69WDShUFVAJSFNtxdIVhT0BaIiR9Z+9olAasqvcS\nNSWqGrai2FKPW2DbYtgwHzqMAb2jvSNSGiDzqtYJCQnExMTYLRZrUkdAimJLOj3EPg0Xjmqv71aU\nZkwlIEWxtahR0OoaSFgIhbn2jkZR7EYlIEWxNSEg7hnIOQPb37F3NIpiNyoBKYo9hPeD4GjY9BzM\n84HXu8Lvy+0dlaLYlKqEoCj28PtyOHcIMFXHzkyB1TO1791vsltYimJL6ghIUexhw3wozi/drihP\na68ozYRKQIpiD5mpNWuvKE2QSkCKYg/eYTVrryhNkEpAimIPI57SnoxQitCelKAozYRKQIpiD91v\ngnFvgnc4IMDND5BwuWm970VRqqJqwSmKvXS/qXSNty+mQsKL0O0m8Ay0X1yKYiPqCEhRGoqRz4Oh\nADaodwYpzYNKQIrSUPi2hYEzYO/nkJpo72gUxepUAlKUhmTII+AZDGsfBaPR3tEoilWpBKQoDYmz\nB8TNh/TdsO8Le0ejKFalEpCiNDTdboTw/hA/D/Iz7R2NoliNVRKQEOJGIcQBIYRRCNHHrH2kECJP\nCLHX1CyxxvQVpVETAka/BLnnYfNL9o5GUazGWkdAfwCTgC0VdDsmpYw2NfdZafqK0riFREOvO2HH\nEjj3p72jURSrsEoCklImSSnVVqModTHiKXB0hx8eByntHY2i1DshrbhiCyESgEeklImm35HAAeAw\nkAXMlVL+XMmw04BpAIGBgb2XLVtWqxhycnLw8PCo1bCNlSpz0xGaupr2Rz9gf9cnuODXv1S3plrm\nqqgy18ywYcN2SSn7VN+nnUgpa9UA8Win2so24836SQD6mP12BnxN33sDKYBXddPq3bu3rK1NmzbV\netjGSpW5CSkulHJxfylf7yZlYV6pTk22zFVQZa4ZIFHWch9vi6bWp+CklLFSyq4VNP+rYpgCKeUF\n0/ddwDEgqrYxKEqTp3eE0QshIxm2v2XvaBSlXtm0GrYQwl8IoTd9bwO0B47bMgZFaXTaxECnG+Dn\n1yAzzd7RKEq9sVY17IlCiFRgIPC9EOJHU6ehwO9CiL3ACuA+KeVFa8SgKE3KdQtAGmH9U/aORFHq\njbVqwa2UUoZJKZ2llIFSypGm9t9IKbtIrQp2LynlamtMX1GanBYRMOgh+GMFJG+zdzSKUi/UkxAU\npbEY9KD2/qC1j4HRYO9oFKXOVAJSlMbCyU07FXdmP+xaau9oFKXOVAJSlMak83iIHAIbn8WhKNve\n0ShKnagEpCiNiRAw+kXIz6T1CfW0bKVxUwlIURqbwC7Q915C0n+A03/YOxpFqTWVgBSlMYqZQ7GD\nO6z7t3pOnNJoqQSkKI2RW0uOt7kdkrfCgZX2jkZRakUlIEVppE4Fx0FQN/jp/6Aw197hKEqNqQSk\nKI2V0MPolyErFba+Ye9oFKXGVAJSlMYsYqD2Cu9fFsGlk/aORlFqRCUgRWns4uaDzgF+mmvvSBSl\nRlQCUpTGzisEhj4MSavh2CZ7R6MoFlMJSFGaggEzoEVr7fXdhiJ7R6MoFlEJSFGaAkcXGPUCnDsE\nOz+wdzSKYhGVgBSlqYgaBW1HwKYXIOecvaNRlGo52DuA2ioqKiI1NZX8/Pwq+/P29iYpKclGUTUM\ntiqzi4sLYWFhODo6Wn1aigWEgFEL4d2BsHE+3KBe4a00bI02AaWmpuLp6UlkZCRCiEr7y87OxtPT\n04aR2Z8tyiyl5MKFC6SmptK6dWurTkupAf8o6H8fbH8bet8Nob3sHZGiVKrRnoLLz8/H19e3yuSj\nWI8QAl9f32qPQBU7uPbf4O6vPSfOaLR3NIpSqUabgACVfOxMzf8GysULYudB6m+wf7m9o1GUSjXq\nBKQoSiV63AKhvWH9U1CgXlynNEzNLgG9vv6wTac3b948XnnllSr7WbJkCZ988kmV/ezdu5e1a9fW\nZ2hKU6bTac+JyzkDW162dzSKUqFml4AWbThi7xDKue+++7jzzjur7EclIKXGwnpD9O2w/R04f9Te\n0ShKOY22Fpy5Z1Yf4GB6VoXdDAYDer2+VLup722vdpydQ7x4elyXavt77bXX+OijjwC49957eeih\nh3juuef473//S0BAAOHh4fTu3RuAY8eOMWPGDM6dO4ebmxvvv/8+HTt2ZN68eXh4ePDII48QExND\n//792bRpExkZGXz44Yf079+fp556iry8PLZu3cqcOXOYOnVqtbEpCrFPQ9J38OMcuO1re0ejKKU0\niQRUndRLl0nLuFpba8eJiwCE+rgQ1sKt1uPdtWsXH3/8MTt27EBKSf/+/RkyZAjLli1j7969FBcX\n06tXr5IENG3aNJYsWUL79u3ZsWMH06dPZ+PGjeXGW1xczG+//cbatWt55plniI+PZ/78+SQmJrJ4\n8eJax6s0Qx4BWq24n56Ewz9C1Eh7R6QoJaySgIQQLwPjgELgGHC3lDLD1G0O8HfAAMyUUv5Y1+lV\ndaRS9p6YyMe/5+TCsXWdJABbt25l4sSJuLu7AzBp0iS+//57Jk6ciJublthuuOEGAHJycti2bRs3\n3nhjyfAFBQUVjnfSpEkA9O7dm5MnT9ZLrEoz1m8a7P4v/DAH2sSAg7O9I1IUwHrXgNYDXaWU3YHD\nwBwAIURn4GagCzAKeEcIoa90LE2I0WjEx8eHvXv3ljSVPa3A2VnbQej1eoqLi20ZptIUOThpz4m7\neAx+fdfe0ShKCaskICnlT1LKK3vOX4Ew0/fxwDIpZYGU8gRwFOhnjRgq8+CI9vU2riFDhrBq1Sou\nX75Mbm4uK1euZOzYsaxatYq8vDyys7NZvXo1AF5eXrRu3Zqvv9bOw0sp2bdvn8XT8vT0JDtbVadV\naqldLHQYo9WIyzpl72gUBbDNNaB7gK9M30PREtIVqaZ25QghpgHTAAIDA0lISCjV3dvb26IdssFg\nKNXfvQOC621H3r59e2655Rb69OkDwJ133klUVBQTJkygW7du+Pv7Ex0dTUFBAdnZ2bz33nvMmjWL\n+fPnU1RUxOTJk2nTpg0FBQU4OjqSnZ2NwWAgNzeX7OxscnJykFKSnZ1Nnz59eO655+jevTuzZ89m\n8uTJFpfZmvLz88stG3vIyclpEHHYUk3L7OJzA/2KfuLs5/dxqNMs6wVmRWo5NzFSylo1QDzwRwXN\neLN+ngRWAsL0ezFwu1n3D4Ep1U2rd+/esqyDBw+Wa1eRrKwsi/prSmxZZkuXg7Vt2rTJ3iHYXK3K\nHP+MlE97SZn8a73HYwtqOdcMkChruY+3RVPrIyApZWxV3YUQdwHXAyNMMwIgDQg36y3M1E5RFFsY\nPBv2fgnrHoN/bARds5BCyxEAABXwSURBVLgEqzRQVrkGJIQYBTwG3CClvGzW6TvgZiGEsxCiNdAe\n+M0aMSiKUgFnD7juWTi1F/Z8Zu9olGbOWrXgFgOewHohxF4hxBIAKeUBYDlwEPgBmCGlNFgpBkVR\nKtJ1MrQaCBuegbwMe0ejNGPWqgXXTkoZLqWMNjX3mXV7TkrZVkrZQUq5zhrTVxSlCkLA6Jcg7xIk\nLLR3NEoz1uyeBacoChDcHXrfBb/9B842rzcGKw2HSkCK0lwNmwvOntqL60rqCSmK7TSfBPT7cni9\nK8zz0T5/b5wv6oqJiSExMdHi/letWsXBgwdLfi9dupT09PRqh/v666/p0qULOp2uRtNTGhF3Xxg+\nF05shqTV9o5GaYaaRwL6fTmsngmZKYDUPlfPrNckJKXE2ABff1zbBNS1a1e+/fZbhg4das3wFHvr\nfTd4hsLXdzX6P2dK49M0noa97nE4vb/CTq6GYji1BwxlHvxZlAf/ux92/bficQZ1g9FVX6A9efIk\nI0eOpH///uzatYuDBw9eucGWFStWsGbNGpYuXcpdd92Fl5cXiYmJnD59mpdeeokpU6ZgNBq5//77\n2bhxI+Hh4Tg6OnLPPfcwZcoUdu3axezZs8nJycHPz4+lS5cSHBxcMm2j0cg999xDWFgYCxYswMPD\ng5ycHEBLOhs2bGDatGl89913bN68mQULFnDLLbeQmJjIbbfdhqurK9u3b+fll1/m/9u79/ioyjOB\n478nCSQgGhUwUQMmiFxCCIRGGkKBsCmiNYBUTFVMUVgKZZEqaqGyKmWtF9B266fd1V5QiqxiAwFM\nq6WmpIhSFSGFcLFcREnlEsISw5KEXN7948yEJE7uM3MyZ57v5zOfJCdzzvucST7zzPue97zPm2++\nSXl5Oampqbz00kuICIMHD27li68C2t71cP40uCejuj+cASRm2heXCgrB0QNqnHxa2t4GBw8eZN68\neezdu7duVWxPjh8/zrZt28jNzWXx4sUArF+/nqNHj7Jv3z5Wr17N9u1WnaKqqiruv/9+srOz+fjj\nj5k5cyZLliypO1Z1dTXTp0/nhhtu4Mknn2yyzdTUVCZPnsyKFSsoKChg0aJFJCcns2bNGgoKCujW\nrRvz58/no48+orCwkPLycnJzczv8mqgAkrfM84ezvGX2xKOCijN6QM30VMrLyrj0N6Ncw2+NRPaB\n+/7Qoaavu+46UlJSWnzebbfdRkhICPHx8Zw8eRKwyjnccccdhISEEB0dzfjx4wH45JNPKCwsZMKE\nCYC1tlv93s+cOXPIzMxskJTaa8uWLSxfvpzz589z5swZhgwZwqRJkzp8XBUgSovatl0pLwqOHlD6\n49ClW8NtXbpZ2zuofq9HROq+r6ioaPA8d4kFANPCjCNjDEOGDKkr27Bnzx42b95c9/vU1FS2bNnS\noI3m2m5KRUUF8+bNIzs7mz179jB79uxW76scIjLG83YJgWMf+TcWFXSCIwElZsKkF6weD2J9nfSC\n18e4o6Ki2L9/P7W1teTk5LT4/NGjR7Nu3Tpqa2s5efJk3Yq3AwcOpLi4uMGQ3N69e+v2mzVrFt/6\n1rfIzMysqxdUv+36w2iNyzjU/9mdbHr16sW5c+fIzs7u2AugAo+nD2dh4RBxObx8M2z/pU7RVj4T\nHAkIrGTzYCEsPWt99cEF1meeeYaMjAxSU1MbDJk15fbbbycmJob4+HjuueceRowYQWRkJF27diU7\nO5tFixYxbNgwhg8fzvvvv99g34ULF5KUlERWVha1tbUN2o6Kiqp73p133smKFStISkri8OHD3Hvv\nvcydO5fhw4cTHh7O7NmzSUhIYOLEidx44411++Xk5BATE8P27du59dZbmThRSzk7kqcPZ5N/AQt2\nwoCb4U+PwuvTrVUTlPI2u5fjbs3DyeUYysrKjDHGnD592vTr188cP368w8fUcgzBwefnXFtrzPu/\nNObHVxrzswRjinb4tr1W0L9z29DJyzEETw+ok8rIyGD48OGMGTOGxx57jOjoaLtDUsoiAqPmwcw/\nWcNwv50If3tRh+SU1zhjFlwAc2ylQ+UcMckwZytsmAdvL4LP3oMpv4CISLsjUwFOe0BKqZZ1vxLu\neg0m/Acc+AO8NBa+KLA7KhXgNAEppVpHBEYvgPvegpoq+O0E+PDXOiSn2k0TkFKqbfp+Hea8C3Hj\n4I8PQ/ZMqPjS7qhUANIEpJRqu0t6wt1vQPoTsG8j/CqtyfUYlWpKUCSgtLVpDF019CuPtLVpdofW\nZv4qx/DII48waNAgEhMTmTp1KmfPaulm1UhICIxZCPfmQtV5+HU67HhZh+RUqwVFAiqpKGnT9vYw\nDivHMGHCBAoLC9m9ezcDBgzg6aef9mWYKpBdl2oNycWOhtwHYP1sqDxnd1QqADhiGvazHz7LgTMH\nPP6upqam2X3ve/s+j9sHXTmIRSMXNbuvk8sx3HTTTXVtpaSk6DI9qnk9esP0dfDu85D/lDVDLnMV\nRA2xOzLViQVFD8iXgqEcw8qVK7nlllva+xKpYBESAuMege9uhMovrSG5nat1SE41yRE9oOZ6KmVl\nZaSuT23y9y/f/HKH2nZ6OYaf/OQnhIWFMX369A63pYJE3FiYuw3W/Stsmm/duHrr89C16Q9oKjg5\nIgHZyZflGNw9osbc5RgeeughIiIiWmy7Ke5yDDt27KBPnz4sXbq0wb6vvPIKubm55OXlNTi+Ui3q\ncRVk5cDWFZD/DHyxC+5YBVcNsjsy1Yn4ZAhORFaIyAER2S0iOSJyuWt7rIiUi0iB6/GiL9pvrGdE\nzzZtby8nlWN4++23Wb58OZs2baJ79+7tfEVUUAsJhbTFViI6XwK/Hg8Fr9kdlepEfNUD+jPwI2NM\ntYg8C/wIcI+THTbGDPdRux7lfyffL+24SyL07t2b5OTkukkBTbn99tvJy8sjPj6ePn36fKUcw4IF\nCygtLaW6upoHHniAIUMuXtBduHAhpaWlZGVlsWbNmgZtJyYmcuHCBcAqxzB79mxeeOEFsrOz68ox\nuCchuMsxREdHNyjHMH/+fCorK+uGAVNSUnjxRb98XlBOc/14a0guexZsmAufbYNbVkBX/WDTrN1v\nQN4yxpUWwa4Yq3aTD8rI2ElaGg7qcAMiU4FpxpjpIhIL5BpjEtpyjOTkZNP43pf9+/czePDgFvct\nKyvj0ksvbUtzfnXu3Dl69OhBSUkJI0eO5L333uvwitj+POfW/h18LT8/n7S0NLvD8KuAO+eaash/\n2popd9Vga0iu94A2HSLgzrm9dr8Bby6AqvKL27p0a3MhTRH52BiT7IMIvcIfs+BmAm/V+zlORHaJ\nyF9FZIwf2u/UtByDChqhYZD+GNyTDedOWqsn7P693VF1Tnk/bph8wPo5b5k98fhIu3tAIvIO4Ond\ncokxZqPrOUuAZODbxhgjIuFAD2NMiYh8DdgADDHGfGUhKRH5HvA9gKioqK+9/vrrDX4fGRlJ//79\nW4yzpqaG0NDQtp1cgPPnOR86dIjS0lK/tNUcd08ymATyOXetLCF+33NcXrqPL66eyKH+s6gNDW9x\nv0A+59YIrzhF9Im/EHv0NTxN+zEIf03b0OrjjR8/vlP3gHw2BCci9wJzgHRjzPkmnpMPPGyMaXZt\nGScPwfmCDsEFh4A/55pq2PIkbPsZRA2FYd+BD16C0iKI9HzNI+DP2ZOqCjiQC7tehSP51rawrlBd\n+dXnRvaBBwtbfejOPgTnk0kIInIz8ENgXP3kIyK9gTPGmBoR6QfcABzxRQxKqU4uNAy+uRT6psLv\nZ8Dmf7/4u9Jj1jUQcNyF9zrHd8Ou1db1noqzENnXmjU4/G74/G+erwGlP25fvD7gq1lwvwDCgT+7\n7h/5mzFmLjAWWCYiVUAtMNcYc8ZHMSilAsGAm6zqqlWNBkrc1zyclIDK/xf2ZMPO38GJ3RAaDoMz\nICnLKm8R4rosf3lf62veMkxpEdJEjzDQ+SQBGWM8XpwxxqwD1vmiTaVUACs74Xl76TH44w+hXxrE\nfsOfEXlPbS0c3WotS7T/TaiphOhEayr60GlWtVlPEjMhMZO/OnHY0SUo1oI7cttUji/9MVWnTtkd\nSof5qxyD2/PPP4+IcPr06TbFqVSbRMZ43h4WYfUWXr8LlseRtHOxtbLC5x9Y15A6s7PHIP9ZeGEY\n/G4KHHoHvjYD5myFue/C17/XdPIJEkGxFE/lgQNUHj5MaU4OkVOn0mve9+ly1VVebcMYgzGGkJDO\nldM3bNhARkYG8fHxgJWAEhISuOaaa1rc99ixY2zevJm+ffv6OkwV7NIfb/q+l/gpcOwDOLwF+fsm\nKwHlPw3hl0HsGKt3dP146NnfKhtup+pKa0LBztWuCQXGii/9CRiUAV0i7I2vk3FEAjrx1FNU7vdc\njqHaXY6hqgoDnF27lrNr1xLaqxddr7kG6drV437hgwcR/eijzbbr5HIMAA8++CDLly9nypQpbflz\nKNV27msbecs8z4KLGwtxY9kZNo60kYnw6VY4sgUOb4FP/mA957IYuD4N+o233vQv6eW/+E/ssZLO\nnjes6zyRfWDcImtCwRXX+S+OAOOIBNQmrgRRU1xMZXk5ER2cQnzw4EFWrVpFSkpKs/cnuMsxHDhw\ngMmTJzNt2rQG5RhOnTrF4MGDmTlzZl05ho0bN9K7d2/Wrl3LkiVLWLlyJXCxHENCQkKzK2K7yzFk\nZGQwbdo0AN566y2ee+45kpOtmZnz58/n8cetmTVZWVnk5uYyadIkNm7cyLXXXsuwYcM69Poo1Wqu\nax4t6n4lDLnNegCcOWIloiNbrGssu161tkcnWj2jfmnQd5TVo/Im94SCXavh+N8htCsMngRJ90Bc\n2sUJBapJjkhAzfVUysrKKLpx5MUNXbogISFEfvvb9J73fcJ69+5Q204sx5Cens5TTz3F5s2bO3x8\npXzuyn7W48ZZUFtjrbx9ZAsczoft/wXv/dy6ltQ3xeodXT/euu+oPQnCPaFg16tWsquugOihLU8o\nUB45IgG1ipcTj5sTyzEcPnyYTz/9tK73U1RUxIgRI/jwww91qSDVuYWEQkyy9Rj7iFUa/LP3Lw7X\nvfOE9ejeC/qNs3pH/cbD5X0uHsO1CGiDocC+o6Dgf6DgVTj7uTVtPCkLRmTB1TpK0F5BkYDCBw2i\nW1KSVxOPJ+6SCAMHDiQnJ6fF1QhGjx7NqlWrmDFjBsXFxeTn53P33Xc3KMcwatQoqqqq+Mc//lG3\nGvasWbPYunUrmZmZrF+/nrCwsAZt5+bmcsUVVwBtL8cwbdo0hg4dyql6MwZjY2PZsWMHvXr5cUxd\nKW8I72HdZzTAVWL+y+PW5IAj+VZSKnTdFdKzv5WIQrvAjpeh2jUZovQY5MwBU2v9HDfONaHgVu8P\n6QWhoEhA/Ta0XJvHG5xUjkEpR7rsahh+l/UwBk7tv9g7Kljz1ZthwUo+4ZdZJSV0QoFX+bwcgzc4\neS04LcfgHY5cI6wFes5eVl0JT0YBnt4TBZae9U27LejIOQflWnCq9TIyMjh79iwXLlzQcgxK2Sks\n3LrmU3rsq79r6kZZ1SGagGzmLsOtlOoEmroh1mGLgHYWAT1RPRCGD51MX3/lOImZ1uoLkX0Asb62\nsQqpar2A7QFFRERQUlJCz549G0xBVv5hjKGkpKRuGrhSjtHaG2JVhwVsAoqJiaGoqIji4uJmn1dR\nURF0b5L+OueIiAhiYnRsXCnVPgGbgLp06UJcXFyLz8vPzycpKckPEXUewXjOSqnAE9DXgJRSSgUu\nTUBKKaVsoQlIKaWULQJiJQQRKQY+a+fuvYBgK+ep5xwc9JyDQ0fO+TpjjO8WwOyggEhAHSEiOzrz\nUhS+oOccHPScg4OTz1mH4JRSStlCE5BSSilbBEMC+pXdAdhAzzk46DkHB8ees+OvASmllOqcgqEH\npJRSqhPSBKSUUsoWjk5AInKziHwiIodEZLHd8fiaiPQRkS0isk9E9orID+yOyR9EJFREdolIrt2x\n+IOIXC4i2SJyQET2i8gou2PyNRF50PU/XSgir4mI41YYFpGVInJKRArrbbtSRP4sIgddX6+wM0Zv\nc2wCEpFQ4JfALUA8cJeIxNsblc9VAw8ZY+KBFODfguCcAX4A7Lc7CD/6OfC2MWYQMAyHn7uIXAss\nAJKNMQlAKHCnvVH5xCvAzY22LQbyjDE3AHmunx3DsQkIGAkcMsYcMcZcAF4Hptgck08ZY44bY3a6\nvi/DemO61t6ofEtEYoBbgd/YHYs/iEgkMBb4LYAx5oIx5qy9UflFGNBNRMKA7sAXNsfjdcaYrcCZ\nRpunAKtc368CbvNrUD7m5AR0LVC/uHsRDn8zrk9EYoEk4AN7I/G5/wR+CNTaHYifxAHFwMuuYcff\niMgldgflS8aYfwLPAZ8Dx4FSY8xme6PymyhjzHHX9yeAKDuD8TYnJ6CgJSI9gHXAA8aYL+2Ox1dE\nJAM4ZYz52O5Y/CgMGAH8tzEmCfg/HDYs05jruscUrOR7DXCJiNxjb1T+Z6x7Zhx134yTE9A/gT71\nfo5xbXM0EemClXzWGGPW2x2Pj40GJovIUawh1n8RkVftDcnnioAiY4y7Z5uNlZCc7JvAp8aYYmNM\nFbAeSLU5Jn85KSJXA7i+nrI5Hq9ycgL6CLhBROJEpCvWRctNNsfkUyIiWNcG9htjfmp3PL5mjPmR\nMSbGGBOL9ff9izHG0Z+MjTEngGMiMtC1KR3YZ2NI/vA5kCIi3V3/4+k4fOJFPZuAGa7vZwAbbYzF\n6wK2JHdLjDHVIjIf+BPWrJmVxpi9Nofla6OBLGCPiBS4tj1qjPmjjTEp77sfWOP6YHUEuM/meHzK\nGPOBiGQDO7Fmeu7CgcvTiMhrQBrQS0SKgCeAZ4A3RGQWVkmaTPsi9D5dikcppZQtnDwEp5RSqhPT\nBKSUUsoWmoCUUkrZQhOQUkopW2gCUkopZQtNQEoppWyhCUgFBRGJEZHvtHPfWBEpr3dvVZtKfXha\nZr+5Y4hINxEpEJELItKrPTErFQg0AalgkU7Hlqw5bIwZDu0q9fEKjZbZb+4YxphyV1uOW/FZqfo0\nASnHE5FvAD8Fprl6Fv06eMg2lfpoYpn9oCsXolRjjl2KRyk3Y8w2EfkIeNgYU7/a5LvApR52edgY\n804zh/RU6uPrbQzLG8dQKqBpAlLBYiBwoP4GY8wYm2JRSqEJSAUB14X8UmNMdaPt7e0BeaPUR1CW\nC1GqPk1AKhjE4uGCfgd6QHWlPrCSxp3A3QAikgd811XFs13HUCpY6CQEFQwOYC1xXygiHS5k5upJ\nuUt97AfeMMbsFZEQoD+NJhy4ltnfDgwUkSIRmdXUMToam1KBRMsxKNUCEYkFco0xCS08LwGYaYxZ\n6KV2jwLJxpjT3jieUp2N9oCUalkNEFn/RlRPjDGF3kg+7htRgS5AbUePp1RnpT0gpZRSttAekFJK\nKVtoAlJKKWULTUBKKaVsoQlIKaWULTQBKaWUsoUmIKWUUrbQBKSUUsoWmoCUUkrZ4v8BV4C44m0a\nkFsAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_1(10)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nhBKQiIgE8X81yCbuX+qZkwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_1(20)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nWFWToIB3A39x93Xuvg+YB1yccEyxcvfN7v5M/vPXCP5wjU82qniZ2QTgQuB7ScdSDmY2CngvcCeA\nu+9z9+3JRlUWtUC9mdUCBwMvJhxP5Nx9MfBK0eGLgbvzn98NzChrUGVWTQlqPLCx4PEmKvyPdSEz\nOwY4GfhDspHE7j+BzwMdSQdSJhOBLcD/5Ic1v2dmI5IOKk7u/gLwH8DzwGZgh7s/nGxUZTPO3Tfn\nP38JGJdkMHGrpgRVtczsEOCnwA3uvjPpeOJiZh8AWt396aRjKaNa4J3AXHc/GXidCh/2yc+7XEyQ\nnI8GRpjZx5ONqvw8WCNU0euEqilBvQA0FDyekD9W0cysjiA5/dDdFyQdT8zOAD5oZusJhnDPNbMf\nJBtS7DYBm9w9vDO+lyBhVbLzgOfcfYu77wcWAO9JOKZyednMjgLIf2xNOJ5YVVOCehJ4m5lNNLOD\nCCZVf5ZwTLEyMyOYm1jp7rclHU/c3P1md5/g7scQ/H5/4+4V/c7a3V8CNprZpPyhZuDPCYZUDs8D\np5nZwflrvJkKLwwp8DPgivznVwAPJBhL7GqTDqBc3L3NzK4DHiKo+rnL3VckHFbczgA+ASwzsyX5\nY190918lGJNE73PAD/NvvNYBn0o4nli5+x/M7F7gGYJK1T9RgS2AzOzHQBNwuJltAr4M/Bsw38yu\nJNhyaGZyEcZPrY5ERCSVqmmIT0REMkQJSkREUkkJSkREUkkJSkREUkkJSkREUkkJSkREUkkJSqqS\nmU0ws8sH+b3HmNnugrVlA9rKpdQ2Cr2dw8zqzWyJme0zs8MHE7NIFilBSbVqZmgtgZ5195NgUFu5\nfJ+ibRR6O4e7784/V8V17BbpjRKUVB0zOxO4Dbgsf2dy7BBPOaCtXHrYRqHqtoMR6UvVtDoSCbn7\nY2b2JHCTuxfuVvpb4NAS33KTu/+6l1OW2srl1AGGFcU5RCqKEpRUq0nAqsID7n5WQrGISAlKUFJ1\n8oUGO9y9rej4YO+gotjKpSq3gxHpjRKUVKNjKFFwMIQ7qANbuRAklY8Afw1gZouAT+Z3gR3UOUSq\nlYokpBqtItjCYLmZDXmju/ydWLiVy0pgvruvMLMa4DiKCiLy2yg8Dkwys01mdmVP5xhqbCJZpu02\nRAbIzI4BfuHuU/r4d1OAT7v730f0vOuBae6+NYrziaSd7qBEBq4dGFW4ULcUd18eRXIKF+oCdUDH\nUM8nkhW6gxIRkVTSHZSIiKSSEpSIiKSSEpSIiKSSEpSIiKSSEpSIiKSSEpSIiKSSEpSIiKSSEpSI\niKTS/wN1WPSxj1oQuQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_1(100)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_1(200)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Comparisons on another integration problem" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Consider the following ODE on $t\\in[0, 1]$:\n", "$$\n", "\\begin{cases}\n", " y'''(t) = 12 y(t)^{4/5} + \\cos(y'(t))^3 - \\sin(y''(t)) \\\\\n", " y(0) = 0, y'(0) = 1, y''(0) = 0.1\n", "\\end{cases}\n", "$$\n", "\n", "It can be written in a vectorial form like the first one:" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "def f(y, t):\n", " return np.array([y[1], y[2], 12 * y[0] ** (4/5.) + np.cos(y[1])**3 - np.sin(y[2])])" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "def test_2(n=101):\n", " t = np.linspace(0, 1, n)\n", " y0 = np.array([0, 1, 0.1])\n", " for method, m in zip(methods, markers):\n", " sol = method(f, y0, t)\n", " plt.plot(t, sol[:, 0], label=method.__name__, marker=m)\n", " plt.legend(loc='best')\n", " plt.title(\"Comparison of different ODE integration methods for $n={}$ points\".format(n))\n", " plt.xlabel(\"$t = [0, 1]$\")\n", " plt.grid()\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n7wAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_2(10)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAEcCAYAAACBPmBXAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3Xl8VNX5+PHPkyEQlshuQIKCVfZV\nEVBB48LivqGiVqW14lKkatuvbe0PKVWrdrN+sVq/itrWKnVDtLiCqQu4oCI7qIgSQFbBBBKSzDy/\nP+6d5M5kJjOZLJOZed6vV17JzD333nNm7syTe+5zzxFVxRhjjGlqWcmugDHGmMxkAcgYY0xSWAAy\nxhiTFBaAjDHGJIUFIGOMMUlhAcgYY0xSWAAyxhiTFBaAjDHGJEXaByARWSUiBcmuR5CI9BWRZSJS\nLCLT4yj/mIjc7v5d1ZZI26nrtjNFczsG6iJV6y4iG0Xk1AbaVtVnoI7r2eehjpr6eIs7AInIpSKy\nVERKRGSriLwsImMas3INQVUHqmphsuvh8T/Am6qaq6r31WXFsLZE2k7C266veL9wRGSKiKwQkf0i\n8o2IPCAiHcK2U+p+aewRkcUicq2IZEUoU+L5mR1tn3U5BhryizMR4ftvhsdvRMl+3aJI2uehrkSk\nUETKPMfzOs+yTiLyvIjsE5GvROTSxqpHU39W4gpAInIzcC9wJ5AHHAr8FTinPjtvTCLSItl1iOIw\nYFUjbSehbTfVayUiPwXuBn4OtAdG49T5dRFp6Sl6lqrmusvuAm4BHgnb3Fmq2s7zM63xW5C4Znw8\nprOEP2tJer+meY7nvp7n7wfKcb57LwMeEJGBSahfw1PVWn9wvihKgAtrKdMfKAT24LzhZ3uWbcT5\nwlkO7MP5IskDXgaKgTeAjmHlfwmsBr4FHgVyPMt/AXzhrrsaOC9s3VvcfR0AWrjPneouvwXY7K67\nDjglVv092/2Zu929wFxvnerwWiwC/ECZ+5r2ibD+cOBjt45zgaeA2z31ODXSdqI8dwjwLLAD+BKY\nHuO1ilq+ttcB+AcQAErdff9PhHYd5C67KOz5du7+fuhtY1iZke72B0UrE+MY9h4DUd/LSO2I4zU5\nCvjEfb+edrd3ey2vcW3Hb6T9h7SV2J+1uI7Tun42a3sdaql31LrEaEfUz0Btn+OwtkX6PMTzOQ95\nv8KWXwMswAkIO4EtwLh4j8MYx2gh8KMIz7fFCT59PM/9A7grxvsa8Ts0ztcg0c9KzPelRl3jeGEm\nApXhb4ZneTbwOfAroCVwsluBvp5GvIdzYPcAtrsH13CcL69FwG1hL8BKoCfQCXg37OC7EOfDkAVc\njPPB6e5Zd5m7buuwL+2+wCbgEPf5XsD3YtXfs40P3P12AtYA19b1tajtQHOXtQS+Am5ytzUJqCAs\nAEXbjvc59/X5CJjhbvdwYAMwIdJrFat8rNeBGEGBWo4j4HHgydq2A3wNXBfPvqJ8IE+N1YYIZWO9\nhsH36yfu+3U+zpeF9/0KPx6jHr+R2hZWn3g+azGP07Btx/xs1uHYCK93tGMlajuI/RmI+DmO9aUe\n67WL9n6Fbe+vwG5ggvua3Aa8EaHcSzhf8JF+XqqlrjtwAtu7QIH7/HBgf1jZnwEvxnhfa3yH1uE1\nSOSzEvf74v2JpwuuM7BTVSujLB+N81/sXaparqqL3DfgEk+Z/1XVbaq6GXgbeF9VP1HVMuB590X2\nmq2qm1R1N3CHd1uq+rSqblHVgKrOBT7D+Q856D533dKwbfqBVsAAEclW1Y2q+kWc9Q9ud4tbpxeB\nYQm+FrUZjXOQ3KuqFar6DPBhnOuGOwboqqqz3LpsAP4PmBzWpuBrFU/54DqxXodIuhD9ONrqLq/N\nFpwPQdA89xpR8OfqOOsB8bch1msyGues5j73/XoO5wMbvq+q4zGO47c28RxfdX1/4vlsxntshItW\nl9raEeszEO1zHEtdPueRvj8Ahrjrv6qqAZwzjBpU9UxV7RDl58wo9bsFJ7D3AB4CXhSR77l1/i6s\n7F4gN0Z7I32HJvL9FO/xlND7Ek8/5y6gi4i0iPLlcQiwyX1Dgr7CeSGDtnn+Lo3wuF3YNjeFbeuQ\n4AMRuQK4GSfC4q7r/fLyrltFVT8XkRuBmcBAEXnV3U489Qf4xvP3fm+dPOLdVjSHAJvV/RfCs34i\nDgMOEZE9nud8OF8yQZvqWB7iex0i2Un046i7u7w2PXD++ww6V1XfiHPf4eJtQ6zXJNL7FX78hTyO\n4/itTTzHV13fn3g+m/EeG+Gi1aW2dtT6GYj2OVbVLTHqEu9nM+L3h4gIMBjw/qMziChBqK5U9X3P\nw8dF5BLgdOAdnO5rr4NwzlxqE+k7NJHvp7iOp0Tfl3jOgJbg9IeeG2X5FqCnN0sJJ0lhcxzbjqZn\n2La2AIjIYTj/eU0DOqtqB5xTTfGUjzrBkar+S1XH4HygFOeCeEPWv77b2gr0cA927/qJ2AR8Gfbf\nV66qnu4pE/7FGat8bWJNLBU8js73Piki7YDTgIXRVhSRY3A+JO/EWZf6qMtrEun98h67Idur7/FL\n43zW4lHXYymW2toR8zMQ5XNcn32GbD7K+r1w/mFf53luOE6XXQg3Q7gkys/LcdQ1WA8B1gMtRORI\nz7KhxE6uiPQd2tDHT8hrlcj7EjMAqepenL7f+0XkXBFpIyLZInKaiNwDvI8TGf/Hfb4AOAvnwmGi\nfiwi+SLSCbgV5+IXOBfkFKevFBH5Ac5/ITG59wScLCKtcC5MluJcRGvI+td3W0twrpNMd9c/n/i7\nZ8J9ABSLyC0i0lpEfCIyyP0yb4jy4bbhdCFE5B5HvwH+V0Qmuu3rBfwbKMK5qBlCRA4SkTNxXr9/\nquqKOOtSH952xHpNluB0PUwTkRYicg61v1/xHL+1vY6N8VmLRzzHRq3vf5ja2lHrZ6CWz3F99hmP\nIcCKsLOH4cCn4QVV9TQNzdD0/pwWXl5EOojIBBHJcY+jy4ATgFdUdR/wHDBLRNqKyPE42cc1Pi9h\nIn2HNvTxU/WeJ/q+xJWGrap/xOk2+DXOh2cTzn9x81S1HKcRp+F0o/wVuEJV19a5OdX+BbyGc6Hz\nC5wLaKjqauCPOAfpNpxT4nfj3GYrnJTenTinlQcDv2zI+td3W+765wNTcLqbLsY5+OpMVf3AmTh9\ntl+69XkYJ6ux3uUj+B3wa/d6zM+i7OMenAugf8Dp134f51g6RVUPeIq+KCLF7rJbgT8BPwjb3Ith\n/1k+H2c9424HzoXwqK+J5/26CucC8/dx+tQP1Nxs3Mdv1NexkT5rMcV5bMR8/z3bi9qOOD4DET/H\ncbShvq/dEDxnOyLSBeiGcwZbX9k433HBJIQbcLqY17vLr8dJFNoOPImTjBPrDKjGd2gjHD/ez8rF\nJPC+SGhXa/KJyEaczJVE+/eNSRoReR94UFUfTXZdTGZKpe/QtB+Kx5jGJCInikg3t+vkSpz/lF9J\ndr2MSQV2d7Yx9dMX5zpWW5zujkmqujW5VTImNTS7LjhjjDGZwbrgjDHGJIUFIGOMMUmREteAunTp\nor169Upo3X379tG2bduGrVAzZ23ODNbmzFCfNn/00Uc7VbVrA1epwaREAOrVqxdLly5NaN3CwkIK\nCgoatkLNnLU5M1ibM0N92iwiiQ7l1SSsC84YY0xSWAAyxhiTFBaAjDHGJEVKXAOKpKKigqKiIsrK\nymot1759e9asWdNEtWoemqrNOTk55Ofnk52d3ej7Msakn5QNQEVFReTm5tKrVy9CR24PVVxcTG5u\nrLmb0ktTtFlV2bVrF0VFRfTu3btR92VMptlw7nm0HjaMLtdfx/OflZOueRcpG4DKyspiBh/TeESE\nzp07s2PHjmRXxZi0c2DtWko+W8v2Z56i92BhbHkWe9oJnXM6U3hxYbKr12BSNgABFnySzF5/YxpP\ntt/5ffJy5aQVft4cLDw7JtbEwanFkhAa2cyZM/nDH/5Qa5kHH3yQv//977WWWbZsGQsWLGjIqhlj\nUkC2H1pWwrhlyo3z/MmuToPKuAD059fXxy7UxK699lquuOKKWstYADImM1X44EALeG248Odzfcmu\nToPKuAD0l4WfNej2/vSnPzFo0CAGDRrEvffeC8Add9xBnz59GDNmDOvWVU8h/8UXXzBx4kSOPvpo\nxo4dy9q1zkSE3rOkgoICbrnlFkaOHEmfPn14++23KS8vZ8aMGcydO5dhw4Yxd+7cmhUxxqSF8jJn\nQl0Fyn2wcKgw7Tofcyb42Nsuvbq9U/oaUNBvXlzF6i3fRVzm9/vx+UL/a7j4b0tibnPAIQdx21kD\nay3z0Ucf8eijj/L++++jqowaNYqxY8fy1FNPsWzZMiorKznqqKM4+uijAZg6dSoPPvggRx55JO+/\n/z7XX389ixYtqrHdyspKPvjgAxYsWMBvfvMb3njjDWbNmsXSpUuZPXt2zLobY1LXP2/8AccCy3vB\n7LPSL+h4pUUAiqXo2/1s3lN9v9D7X+4GoEeHHPI7tkl4u++88w7nnXde1UCB559/Pv/5z38477zz\naNPG2e7ZZ58NQElJCYsXL+bCCy+sWv/AgQMRt3v++ecDcPTRR7Nx48aE62eMSS0v/uMRRhV+wqIh\nPh48o2bg6ZzTOQm1ajxpEYBqO1MJvyem1y/+w8a7zmiKaoUIBAJ06NCBZcuWxSzbqlUrAHw+H5WV\nlY1dNWNMM7Dx8y/ofO+f2NrJx7mzF/Djgw8F0nsA1oy7BtSQxo4dy7x589i/fz/79u3j+eef54wz\nzmDevHmUlpZSXFzMiy++CMBBBx1E7969efrppwHnRs5PP/007n3l5uZSXFzcKO0wxjS91woGc+8l\nAxh7/yCGPDaIxdPPom1ZgAcntaGHG3zSXcYFoJ+ccmSDbeuoo45iypQpjBw5klGjRvGjH/2Io48+\nmosvvpihQ4dy2mmnccwxx1SVf+KJJ3jkkUcYOnQoAwcO5IUXXoh7XyeddBKrV6+2JARj0kTPbyo5\nebky+wE/s/7uZ/gG5fFTs1jXudQpsPzf8OdBnFh4Lvx5kPM4zYiqJrsOMY0YMULD5wNas2YN/fv3\nj7muDcXTuOJ9HxpbOndTRGNtTm1r+lV/bhRQgdeHwbNjfLw9dga8OB0qSqtXyG4NZ90HQy6Kex8i\n8pGqjmjAajeotLgGZIwxqUwAURi3DHru9EP5rNDgA87jhbPqFICau4zrgjPGmOamMivsZtO9RZEL\nRns+RdkZkDHGJFFlFrwxTHj2+Kzqe352twR/hNs02uc3beUamQUgY4xpYvMefZA+wJZOMPPSLPbm\nVndGdc5q5QQfX0vwl1evlN0aTpnR9JVtRBaAjDGmCa1ZsYzu993Hpq4+Bj/3Ku907VG9cPnT8NyP\nYNS10ONoWDgL3VuEtM93gk8aXf8BC0DGGNOoXisYzOrufp4dk0Vxa/jNP/3k++GBi9oxb+u78M9Z\nzrWddgfDvt1w6HEw/nbwZcOQi/hvGmX+hbMkhBRTUFBAeEp6bebNm8fq1aurHj/22GNs2bIl5npP\nP/00AwcOJCsrq077M8aE8t7vc9ccP322wANnZPHFQfucVOu9mwCFkm2gFTDofCf4ZICEApCIzBGR\n7SKyMsryAhHZKyLL3J8ZnmUTRWSdiHwuIr9ItOJ15t7UxcwOjXJTl6oSCAQadJsNIdEANGjQIJ57\n7jlOOOGExqyeMRkhOKfPYTvBLzBoo9KhRGumWgO8+5emr2CSJHoG9BgwMUaZt1V1mPszC0BEfMD9\nwGnAAOASERmQYB3it/zfof9p7N3kPK5nENq4cSN9+/bliiuuYNCgQSGjbj/zzDNMmTIFgClTpjB9\n+nSOO+44Dj/8cJ555hnAGR/u+uuvp1+/fowbN47TTz+9atlHH33EiSeeyNFHH82ECRPYunVryL4D\ngQBTpkzh17/+NQDt2rWrWjZv3jymTJnC4sWLmT9/Pj//+c8ZNmwYd999N0uXLuWyyy5j2LBhlJaW\nMmvWLI455hgGDRrE1KlTCd6Y3L9/f/r27Vuv18cYU5NPY0wul2ap1rVJ6BqQqr4lIr0SWHUk8Lmq\nbgAQkaeAc4DVta4Vy8u/gG9WRFzU2l8JWz+pmdJYUQovTIOPHo+8zW6D4bS7Yu76s88+4/HHH2f0\n6NEhQSDc1q1beeedd1i7di1nn302kyZN4rnnnmPjxo2sXr2a7du3079/f374wx9SUVHBDTfcwAsv\nvEDXrl2ZO3cut956K3PmzAGc6Rouu+wyBg0axK233hp1n8cddxxnn302Z555JpMmTQLg5Zdf5g9/\n+AMjRjg3R0+bNo0ZM5wT1Msvv5yXXnqJs846K2a7jTF1V5EFgSx4c4iTdn3BjgiF0izVujaNmYRw\nrIh8CmwBfqaqq4AewCZPmSJgVCPWwREpn7625+vgsMMOY/To0THLnXvuuWRlZTFgwAC2bdsGONM5\nXHjhhWRlZdGtWzdOOukkANatW8fKlSsZN26cU02/n+7du1dt65prruGiiy6qNfjE68033+See+5h\n//797N69m4EDB1oAMqaBeCeXq/DBoqFh9/uEB6A0TLWuTWMFoI+Bw1S1REROB+YBdRoFVESmAlMB\n8vLyKCwsDFnevn376tGhx0T/Ivb7/Rz0yHFkFW+usSyQ24N9k56KXokYo0+XlJTQunXrqnqISNXf\n3377LRUVFRQXF1NRUUEgEKhapqoUFxdTXl5OWVlZ1fOVlZWUlpZSUlJCv379WLhwYVh1ivH7/Rxz\nzDG88cYbTJ06lZycnBr73r9/f8i+gyNzB1+Pffv2UVxcTFlZGddddx3//e9/yc/P584772Tv3r0h\no257y0dSVlZW471JhpKSkmZRj6ZkbW7+1v7fHzgRWHkY3Hd26ORynf0BylscRMCXTasDuznQqgsb\nDr+c7bsPBk8bU63NddEoAUhVv/P8vUBE/ioiXYDNQE9P0Xz3uUjbeAh4CJzBSMPTENesWRPXgJvF\nxcVkjZsZcWC/rHEz6zVoZ7t27cjKyqraRl5eHkVFRfTt25dXXnmF3NxccnNzyc7OpnXr1iH7ys3N\n5aSTTuLxxx/nmmuuYceOHbzzzjtcccUVHHXUUezevZuVK1dy7LHHUlFRwfr16xk4cCA+n49rr72W\nt956i6uuuornnnuOFi1ahOx7wYIFdOzYkdzcXDp16kRlZWXVvjt06EAgECA3Nxe/34+I0KtXL/x+\nPy+++CKTJk0KqafP56Nt27ZRX6ecnByGDx+e8GvYUNJpkMp4WZubtyfuuY0TP/qCt4/pztV/X8hF\n4gaf8n0wZyLs/hKmvgEH9wMgB+fCePhF8VRqc101SgASkW7ANlVVERmJk+ywC9gDHCkivXECz2Tg\n0saoQ4jgzVsL3Xz7Rrqp66677uLMM8+ka9eujBgxgpKSklrLX3DBBSxcuJABAwbQs2dPjjrqKNq3\nb0/Lli155plnmD59Onv37qWyspIbb7yRgQOrJ967+eab2bt3L5dffjlPPPFEyL6HDBlCeblzB/Xk\nyZO5+uqrue+++6oSI6699lpat27NkiVLuPrqqxk0aBDdunULmTri+eef54YbbmDHjh2cccYZDBs2\njFdffbVBXy9j0on3fp+OJfDbf/hZ3ROePK2SqSuerv7+aZEDlaVw6dNVwSdTJTQdg4g8CRQAXYBt\nwG1ANoCqPigi04DrgEqgFLhZVRe7654O3Av4gDmqekes/aXzdAwlJSW0a9eOXbt2MXLkSN599126\ndetWr23adAyZwdrcvKzp158Kn3O9x58F+1vBLT/08V1bYUXRjtAemKxsOPevcf0TXJ82p+V0DKp6\nSYzls4HZUZYtABYkst90dOaZZ7Jnzx7Ky8v5f//v/9U7+BhjkifbzaxWP7QIwIVvB3h2TFbN+30C\nFWk3tUIibCieJEvXi4vGZDLBCUbjlqkzv8/xEQpl0P0+0dhQPMYY08AqfGHz+0SSQff7RGNnQMYY\nU09PP/BnBgEBoKJF9Y2mdr9P7SwAGWNMPbz12gKO+OtDlLWAtwfCv08Iv9/HDyf8D3z6ZKNm4aYi\nC0DGGFMH3nRrBX73uJ99OXDn1R1ZMPpGpi+cBV9ucs5yKvbDBY/A4Elwcv1HLkk3dg0oxTTVdAw/\n//nP6devH0OGDOG8885jz549CdXXmHRTNb3CX/38/hE/7fbDPZN8bGpVHDroccV+J91am98o+c1F\nRgSggrkFDH58cI2fgrkFDbaPdJuOYdy4caxcuZLly5fTp08ffve73zVmNY1JKdl+aOmHDvvBF4CT\nlwUiT68QTLc2EWVEANpVtqtOz8crnadjGD9+PC1aOD20o0ePpqjIUkaNiSQ7YNMrJCotrgHd/cHd\nrN29NuIyvz/KQeH6wSs/iPh8v079uGXkLTH3nQnTMcyZM4eLL7445mthTKap8EFAbHqFRKVFAEqm\ndJ+O4Y477qBFixZcdtll9d6XManumb/dy0BqS7cWnMF4XJZuXau0CEC1nakUFxdz3HPHRV3+6MRH\n67Xvtm3bVv0tUp16WVZWFlKuVatWVX/HGn9PVRk4cCBLliyJuPy4447jzTff5Kc//WnIdAzR9h1N\nWVkZ119/PUuXLqVnz57MnDkzZN3HHnuMl156iYULF4Zs35hMtPCl5/ne7L9xwE23nlsj3Vphwh3w\n3gOWbh2njLgG1FTy8vJYs2YNgUCA559/Pmb5448/nmeffZZAIMC2bduqhuXp27cvO3bsqApAFRUV\nrFq1qmq9q666itNPP52LLrqIysrKGvt+6aWXqsrm5uaGzOXjfRwMNl26dKGkpKTq+hPAK6+8wj33\n3MP8+fNp06ZNgq+IManrtYLB3HvJAMbeP4iT/zKINjN+xXdt4Fc/6cQNt/6Gd8phxZebWPHVFlZ8\nvY3C056AY38MN62EmXuc3xZ8apURAahzTuc6PZ+o4JQIxx13XEiXWTQXXHAB+fn5DBgwgO9///s1\npmO45ZZbGDp0KMOGDWPx4sUh6958880MHz6cyy+/nEAgELLvvLy8qnKTJ0/m97//PcOHD+eLL76o\nmo5h2LBhtGrVqmo6hgkTJoRMxzBt2jSKi4sZN24cw4YN49prr224F8qYFOBNt757jp9sP/zuIh+b\nWn4Xmm4dcP4JZMe6pNY3FSU0HUNTs+kY6samY8gM1ubGtaZf9XGtQKUPFg0Rnh2Txds7NtVcoX1P\n56yngdl0DKbR2HQMxjR/Nrp147AAlGQ2HYMxzU/4TeWWbt04LAAZY0yYx665mGMBvzhdbzXSrXe1\nqL72A5ZunSALQMYY4/Hoz6Zy7Nsr+a41LO4Hz44JS7eWlnDuA84QO5ZuXS8WgIwxGcs7svWedsKJ\nywP8+D8BFvfP4pInP2TU+pe4aeEs+PJrZ4X8UfDDVyArywJOA7AAZIzJWD2/qaTbDjhphZ+Vh8LQ\nDbC8lzD7TOGq9S856dbeAUa3LYeVz1jwaSAZcR9QOmmq6RiC/vjHPyIi7Ny5s071NCZVZPuhZSUM\n3+Bku21vr7Qrw+liCx/duqLURrduQAkFIBGZIyLbRSRi0ruIXCYiy0VkhYgsFpGhnmUb3eeXiUj8\n36T1sOHc89g68zdUbN/eaPtIt+kYADZt2sRrr73GoYce2ljVM6bZEJwvxJOX44xsvTfCvT5g6dYN\nKNEzoMeAibUs/xI4UVUHA78FHgpbfpKqDmuqG6QOrF3Lnmef5Ytx4xs0EKXzdAwAN910E/fcc4+N\nA2cyQkUWHGgBrw0X/nyuL3pBS7duMAldA1LVt0SkVy3LvePGvAc06jv2zZ13cmBN5OkYKoPTMVRU\noMCeuXPZM3cuvi5daHnIIUjLlhHXa9W/H91+9auY+07X6RheeOEFevTowdChQ6Nu35hUtuS/b9AB\nZ5SDCh8sGhqWal15OBRvhUpPN5ylWzeopkhCuAp42fNYgddERIG/qWr42REAIjIVmArOQJvhN2y2\nb9++alDNivKK6kATLnyoIfexf8cOykpLye7TJ+JqWeUVIYN4RlJSUsKhhx7KwIEDq8oGf5eWllJR\n4WyjoqKCCRMmsG/fPnr27Mm2bdsoLi5m0aJFnHXWWezbt4+2bdsyduxYSktL+fjjj1m5ciWnnHKK\nU1e/n7y8PIqLi/H7/Vx99dWcd955TJ8+PaSOwb8DgUDIvktLS6uW+f1+9u3bV/V4wYIF3HvvvZSW\nlvLtt99yxBFHMHLkSH77298yb948iouLUVVKSkpCRvQOKisraxY305aUlDSLejQla3P8Ot1+BxWH\nH86+M07n2e2tGZH1Fd/7671UZjmp1v84JTTVulMA3h54O513LeXwDf+g1YGdHGjVhQ2HX8723QdD\nE77u6fw+N2oAEpGTcALQGM/TY1R1s4gcDLwuImtV9a3wdd3A9BA4Y8GFj4W0Zs2aqvHOcmfeFrUO\nxcXFFB0zsvqJ7GwkK4v2559P1+uvo0XXrgm2zun2ateuXVU9RCTk7+zsbHJzc8nOzqZDhw5Vy1SV\n3NxcWrZsSU5OTtXzLVq0oHXr1rRp0ybqdAw+n48xY8awePFisrOzQ6ZjCG6nvLw8ZN+tW7euWubz\n+Wjbti25ubmUlZXx05/+NGQ6BlVl+/btfP3114wZ47xtmzdv5oQTTuCDDz6oMVRQTk4Ow4cPT/g1\nbCg2LlpmSLTNa669DrYW0X7xW/TvC72/cqbSnvmjNjxbuplrdpRCcHQDETjjXhhxBnAG4Hy/5AAD\n3J+mlM7vc6NlwYnIEOBh4BxVrZr7WlU3u7+3A88DIyNvoYFlZyOtWtFh0iSOeON1ut82o17BJ5J0\nmY5h8ODBbN++nY0bN7Jx40by8/P5+OOPbZw6k9KC2W4nrIJOJbDyMNje6kDNTDdVePsPyalkhmmU\nMyARORR4DrhcVdd7nm8LZKlqsfv3eKDRcxpb9etH6+HD633GE0twSoSuXbsyYsQISkpKai1/wQUX\nsHDhQgYMGEDPnj1rTMcwffp09u7dS2VlJTfeeCMDBw6sWvfmm29m7969XH755TzxxBMh+x4yZAjl\n5eWAMx3D1VdfzX333VeVGHHttdfSunVrlixZUjUdQ7du3UKmYzAmXQU72kavgw77bGDRZEpoOgYR\neRIoALoA23DOUbMBVPVBEXnCByvZAAAch0lEQVQYuAD4yl2lUlVHiMjhOGc94AS/f6nqHbH2Z9Mx\n1I1Nx5AZrM3x806tUJkF/qzq8d3eacKpFRJh0zGEUdVLYiz/EfCjCM9vACytysOmYzCmca1b43Rf\nB+f0WRie7bYzC9RzD59lujUZG4onydI1u8WY5mDdmlUU/XAy3YAP+8DDE0Kz3QA46y/w33tsYNEk\nsABkjEkb3sFFReG2J/x03AczLvexPr/mDdWdW7SFo65wfkyTS+kApKp2l34SpcJ07iazVA0uutxP\nuQ+yFO6Y7ASfFcERrb3a92z6SpoqKTsYaU5ODrt27bIvwSRRVXbt2lV1H5IxzUW2H1r6oW05ZAdg\n7MoAHUqifE9YtltSpewZUH5+PkVFRezYEWlu3GplZWUZ9yXZVG3OyckhP9/GxTLNk+AEo3HLlJ47\no6Rb27huSZWyASg7O5vevXvHLFdYWNgs7tRvSpnYZmPeffN1OnkeV/ggINXp1hfYNNrNTsoGIGOM\nCVq04AXa3vpLoOZ9PlVZb2NtGu3mxgKQMSbleLPdDt4Dv/q3n5Ic+K4NrDwsLPDgZrsNucgCTjNj\nAcgYk3KC2W4nL/cjAdh1EMy8zMeu9k622007qB5cFCzbrZlK2Sw4Y0xmy/Y7Pz6FjiVw7hLLdks1\ndgZkjElpgpN2bdluqcfOgIwxKUMDAR65+aqQ5yp8YVNptwi7BcGy3ZotOwMyxjRb3mSDvW3h+4sC\nnPWB080WnmZdne32v5btliIsABljmq2qoXVW+NlxEPTYDS8fLfTbpKzLj5DtFlDLdkshFoCMMc1a\ntt/53WO3c49PVkD53cU+3t6xqWa2GzY2ZCqxAGSMSRktAjBuGZZskCYsCcEY0yx9sPitkMc1kg18\nLUNXsGSDlGNnQMaYZuflZ/5J59vvBGobWud+SzZIcRaAjDFJ5c1029NOGLU2wA3zA+w8CIrbCcsP\nxYbWSVMWgIwxSeXNdNuQB302w/oe8PtJPhaXKafsLbKhddKUBSBjTNIFM936bXbu7dnUBXwBog+h\nY0PrpIWEkhBEZI6IbBeRlVGWi4jcJyKfi8hyETnKs+xKEfnM/bky0YobY9JTlsIpy+HGef7ohSzb\nLS0kmgX3GDCxluWnAUe6P1OBBwBEpBNwGzAKGAncJiIdE6yDMSbFLfvwvZDHNTLdjr/JyW7zsmy3\ntJFQF5yqviUivWopcg7wd1VV4D0R6SAi3YEC4HVV3Q0gIq/jBLInE6mHMSZ1hCcb9Nuk/OxZP62o\nJdNt3EzIG1CV7VbWqgs5Z9xpyQdporGuAfUANnkeF7nPRXu+BhGZinP2RF5eHoWFhQlVpKSkJOF1\nU5W1OTOkWpu9yQbrDoH+m2B7x+iTyHXyq9u+g2H4bMBpc7vd7SCF2l1fqfY+10WzTUJQ1YeAhwBG\njBihBQUFCW2nsLCQRNdNVdbmzJBqbV5DdbLB4K+dZIM1PWBuQS3D6vywIGQbqdbmhpDObW6sALQZ\n8OZJ5rvPbcbphvM+X9hIdTDGNGNZCiethO57bFidTNVYQ/HMB65ws+FGA3tVdSvwKjBeRDq6yQfj\n3eeMMWlsSeEbIY9tDh8DCZ4BiciTOGcyXUSkCCezLRtAVR8EFgCnA58D+4EfuMt2i8hvgQ/dTc0K\nJiQYY9JDeLLBiPUBbngxANQ2rI7N4ZOJEs2CuyTGcgV+HGXZHGBOIvs1xjR/3mSDr7vAEd/A592h\nVQWsOtTm8DHVmm0SgjEmdQWTDY74BvwCX+bB02NtDh8TygKQMaZR+RRO+RR67LJkAxPK5gMyxjSY\nf9z965DHNZINbFQD42FnQMaYhHiTDUpy4MqFASZ8rABUZEEgYrLBfZZsYKpYADLGJKQq2WC5n/2t\noMN+mD9KGPylsi4/QrJBpd+SDUwIC0DGmIQFkw2y9ztnPa3K4XcXR0k2sDl8TBgLQMaYOisrLQ15\nLEB2AMYtU3ru9MMJLcFfXl3ArvWYCCwAGWOiCr+pFKDzd8pP5gXo5ylX4XPGdgte87lg7P12rcfE\nZAHIGBOV96bSNwcLnx0CVy5UZ7ZSagaeqms+dq3HxMECkDGmVsHrPKcuUyZ8Antbw90XZXHNqwFW\n9YySbGBMHCwAGWPi4nMyrMkthUv/G2D8KVsYD5ZsYBJmN6IaYyIKBAIhjyuz3JtKj3JvKh15jd1Y\naurFzoCMMTWSDdqWKlNfCXAsEAAqfbBoaFh32+n3QP4ISzYwCbMAZIwJSTZY1hu+txXa74fdbeHD\nPvDMGF/k6zyWbGDqwQKQMQaoTjY45jPn9/t9Yc5456bSG+06j2kEFoCMMSGC5zkj18NB+/0wtgUE\nKqsL2HUe00AsABmTQcKv9Ygqp3+oXOkpU/Om0gfsOo9pFBaAjMkg3ms9S/pC3h7ot9lZFnUEa7vO\nYxqJBSBjMkzwWs8Jq5zfKw51Eg5WR5su25hGYgHImAwVDDMDN8HafLip3zZu2lFZnWyQ3RrOui9Z\n1TMZwAKQMWmoxiCiqpy4Qvmxp4xd6zHJllAAEpGJwF8AH/Cwqt4VtvzPwEnuwzbAwarawV3mB1a4\ny75W1bMTqYMxJjrvtZ7F/aBjMQz9yllm13pMc1HnACQiPuB+YBxQBHwoIvNVdXWwjKre5Cl/AzDc\ns4lSVR2WeJWNMfEIXus5caXze00PaHsgyrUeG0DUJEEiZ0Ajgc9VdQOAiDwFnAOsjlL+EuC2xKpn\njKmvYJjpu8W91tNnsw0gapqFRAJQD2CT53ERMCpSQRE5DOgNLPI8nSMiS4FK4C5VnRdl3anAVIC8\nvDwKCwsTqCqUlJQkvG6qsjZnhpKSEl49cRBrDglU39cTUE5bqkzxlAu/1nPurlb4AgeqlvuzWrHu\nkAvZngKvX6a+z+na5sZOQpgMPKOq3vP7w1R1s4gcDiwSkRWq+kX4iqr6EPAQwIgRI7SgoCChChQW\nFpLouqnK2pwZCgsLydvmp/tO51rPh0dAt2/he9uc5dGu9fjGzg5JNvCdMoMBQy5iQBLbEq9MfZ/T\ntc2JBKDNgPd8Pd99LpLJEJJ4g6pudn9vEJFCnOtDNQKQMSY+wWs9x611fn/aCzqW1HJfjyUbmGYi\nkQD0IXCkiPTGCTyTgUvDC4lIP6AjsMTzXEdgv6oeEJEuwPHAPYlU3BgTKhhmBn/lXusZsJObdhyw\n+3pMs1XnAKSqlSIyDXgVJw17jqquEpFZwFJVne8WnQw8pareW6n7A38TkQDOZHh3ebPnjDE11bin\nB8jdr1z5BuR5ytW8r2e23ddjmrWErgGp6gJgQdhzM8Iez4yw3mJgcCL7NCZTee/peXMwfNNRuGCx\nklPuLA8PPHZfj0kVNhKCMSkgeJ1n3CeQhbK7Lfz+kix+9FqAVT1tDDeTmiwAGZNCstzfHfbBxW8F\nGP/Tkxm/6llu2lFq13pMyrEAZEwzEWn8tuNXKz/xlAlPrb7g3Pvh8BPtWo9JSRaAjGkmvNd6PjgS\nunxXPVdPZRb4I43fBnatx6QsC0DGNCPBaz3Hr3F+r+oJuaWR7+np5LfrPCa1WQAyphmorKgMeRwM\nM/2Lgvf07K5xnWf1Edc1aR2NaWgWgIxpYuHXeo7crPzgdT9HeMrUvKfnvhrXebbvPjglhs8xJhoL\nQMY0saprPcv97GgPPXbD7nbOsjrd05OmA1SazGEByJgkCF7rOWQ3+AU+/h702VzL+G3GpCELQMY0\nknjSqgXwKZy83L3WM7DmtR67p8ekKwtAxjQSb1r1x4dD173VUyUExXOtx1KsTbqyAGRMIwp2tY1e\nDwqsOBQGf23jtxkDFoCMqbdIo1W3LVUeDSsnwMBNUJoN/x0c4VpPi7ZNV2ljmgELQMbUk7er7b+D\nYG8bYeLHoYkD4Wc874ydwU0LZ8GXm6yrzWQsC0DGNIBgV9upy0BQdhwE7cqsq82Y2lgAMqYeAoFA\nyONgh1rnYutqMyYWC0DGxCHSdZ4jNyuXvRkIGY3AutqMiZ8FIGPiED5SddsDMHwD7GnjLLeuNmPq\nzgKQMXEKH6n6s+7wl7OzuOX5AKvybQQDY+rKApAxHpG62joWK3/zlAmGmO99A9cvCDB+9m8Y/+J0\nG8HAmDpKOACJyETgL4APeFhV7wpbPgX4PeBOqcVsVX3YXXYl8Gv3+dtV9fFE62FMQ/J2tb3THyp9\nULAytEyN0QuCXWw2goExdZJQABIRH3A/MA4oAj4Ukfmqujqs6FxVnRa2bifgNmAEzs3hH7nrfptI\nXYxpaMGutpNWOL+3dHJGrI56nQfsWo8xCUj0DGgk8LmqbgAQkaeAc4DwABTJBOB1Vd3trvs6MBF4\nMsG6GFNnkbraWpcp3lPxYHjp/q2lVBvTGBINQD2ATZ7HRcCoCOUuEJETgPXATaq6Kcq6PRKshzEJ\n8Xa1vT0AilsLp35qoxcY05QaMwnhReBJVT0gItcAjwMnx7uyiEwFpgLk5eVRmODkWyUlJQmvm6qs\nzbHlUd3VdvJyZ/SC7TFGLyjcfTAMn129kd0kdVI4e58zQzq3OdEAtBno6XmcT3WyAQCqusvz8GHg\nHs+6BWHrFobvQFUfAh4CGDFihBYUFIQXiUthYSGJrpuqrM3V6tLV1iXG6AXN7TW19zkzpHObEw1A\nHwJHikhvnIAyGbjUW0BEuqvqVvfh2YB79wSvAneKSEf38XjglwnWw5hahXe17csRTl5uXW3GNAcJ\nBSBVrRSRaTjBxAfMUdVVIjILWKqq84HpInI2UInTWTHFXXe3iPwWJ4gBzAomJBjTGMK72ra1t4FC\njWkOEr4GpKoLgAVhz83w/P1LopzZqOocYE6i+zYm3IHbpnHvIYGQrrb2Jcr/ecoEO9S6fmdZbcY0\nBzYSgkkLh27z032n09W2pB/4s2BM2E0B1tVmTPNiAcikjWBX2wnuyAWbO0P+LutqM6a5sgBkUkak\njDaAATvbMNNTLrjkkN3W1WZMc2YByKQMb0bbm4Nhee8sTl2mDN/wXUg562ozJjVYADIpJdjNNu4T\nmPBJgAM+eG60cP57al1txqQYC0Cm2YnU1ebza8hggVnu72w/9NusfH2wsDof62ozJoVYADLNTvjN\no9/mCifHGKft9oGzuanTdutqMyaFWAAyzVL4zaO72jmPbUoEY9KHBSCTNJG62nruUP7oKRMMLx33\nWUabMenGApBJGm9X26e9IKccBn8dWibejLZ0HS3YmHRmAcgkVbCr7ZjPnelxP+sOR261m0eNyQQW\ngEyjC+9qa1uqnLpMuSysnADf+8a62ozJFBaATKOr6mpb7uebjnDwHsipDC1jN48ak3ksAJkGEW2Y\nnM6tOvEA1V1tPXc6gebdfnD8WutqMyaTWQAyDSJ0mBxh/mhhwNdwxofbQ8oJ4FM4dl0tXW05nZu4\n9saYZLAAZBpM8Czn1GXK+E8UAYo6hZap0dX245Xc1OQ1NcY0BxaATJ1E62r7t6eMzx20IAB81xbY\nHeMGUmNMRrIAZOrE29VWOAg25gknrAwbJicLAlnVwWbG08KqQ/zW1WaMCWEByNRZ1YjUy5xhcva1\ndB5HO8sZX7iC8WBdbcaYEBaATESRutp6b1Xu9pQJnsu0Lrd7d4wxdWcByETk7Wpbkw9ty+CIb0LL\n2L07xpj6SCgAichE4C+AD3hYVe8KW34z8COgEtgB/FBVv3KX+YEVbtGvVfXsBOtuGkBtSQXBrrah\nG51hctb0gP6b7d4dY0zDqHMAEhEfcD8wDigCPhSR+aq62lPsE2CEqu4XkeuAe4CL3WWlqjqsnvU2\nDSTSNNdjVmuNcgL03WL37hhjGk4iZ0Ajgc9VdQOAiDwFnANUBSBVfdNT/j3g+/WppGlcwTOd8e40\n1+W+0OV2744xpjEkEoB6AJs8j4uAUbWUvwp42fM4R0SW4nTP3aWq8yKtJCJTgakAeXl5CQ+3X1JS\nknFD9Udq84HbprHmkEBIV1uPncqfPWWC5zMt3IAUrautOb6e9j5nBmtzemnUJAQR+T4wAjjR8/Rh\nqrpZRA4HFonIClX9InxdVX0IeAhgxIgRWlBQkFAdCgsLSXTdVBWpzWu2+em+0+lqW90TWpU713O8\nvAFnwNfK6kMjd7U1x9fT3ufMYG1OL4kEoM1AT8/jfPe5ECJyKnArcKKqHgg+r6qb3d8bRKQQGA7U\nCECm7kISCr4KDRreAUGHfekkFazvDn1qmXtnxZUrrKvNGNNoEglAHwJHikhvnMAzGbjUW0BEhgN/\nAyaq6nbP8x2B/ap6QES6AMfjJCiYBhA+IOizxwv5u2D8x9trlBWctGpLKjDGJEudA5CqVorINOBV\nnDTsOaq6SkRmAUtVdT7we6Ad8LSIQHW6dX/gbyISALJwrgGtjrgjk5BIA4KWtAotY0kFxpjmIKFr\nQKq6AFgQ9twMz9+nRllvMTA4kX2aahHv3VGNOCCoApu6Qv8iGxDUGNO82EgIKcjb1fbWQNjaUTh+\nTei9O5VZ4LcBQY0xzZgFoGYsnlEKTvnUGRD0uxznsQ0IaoxJFRaAmrEas4yOEgZsCi0TDEvtymxA\nUGNMarEA1MxFSirwijQg6HX/+RU5O3bagKDGmGbNAlAzEKmrLbtSecJTxjvLaBa1Dwj63u6D0/bG\nNWNM+rAA1Ax4u9o+OBJKW8LodaFlvLOM1jZKgTHGpAoLQE0onqSCMWuc1OltHSC3zEYpMMakLwtA\nTSg8qeDdgcIx6yNPfXDwXksqMMakNwtATSx4pjPuE2XCJ0ogbLnNMmqMyRQWgBpYtG62Pt+25nZP\nuayw9WyWUWNMprEA1MDCRyn4uqtw3FqlX1FxSLl4pz4wxph0ZQEoQXUZpaCkJTxzvDDpXbWkAmOM\ncVkASlB4QsGLI4WBUUYpaFMOA75WNnVrYeOxGWOMywJQPVSNUvBJnKMU/NjGYzPGmCALQDFE6mpr\nXaY87injc3/HHKXAGGNMFQtAMXi72j453Jni4OjPQ8tYQoExxtSdBSBXPEkFo9Y7oxQUdYaeu2yU\nAmOMqQ8LQK7QpAJYfagwcn3NcgL02F3LKAV2pmOMMXGxAOQRPNMZ/wlM+EQp94Uur5lUsNLOdIwx\nJkEZF4DCu9qyAsrwL5RbPGWC5zMt3IBkSQXGGNPwMi4AVXW1LfezqQt0KoaO+0PLWFKBMcY0voQD\nkIhMBP6Ck4X8sKreFba8FfB34GhgF3Cxqm50l/0SuArwA9NV9dVE6xFJjYQCN2f64KwOzKa6q+3w\nbaACn/SG4V9aUoExxjSlhAKQiPiA+4FxQBHwoYjMV9XVnmJXAd+q6hEiMhm4G7hYRAYAk4GBwCHA\nGyLSR1X99WmIV/goBUv6O9MenLByZ2g7AFEYutGSCowxpqklegY0EvhcVTcAiMhTwDmANwCdA8x0\n/34GmC0i4j7/lKoeAL4Ukc/d7S1JsC4RhU974Ac+OgJGeu7hsaQCY4xJnkQDUA/AO/JZETAqWhlV\nrRSRvUBn9/n3wtbtEb4DEZkKTAXIy8ujsLAw7srlef4OTnsgQLsDzt/Rutrqso/mrKSkJG3aEi9r\nc2awNqeXZpuEoKoPAQ8BjBgxQgsKCuJed43n7/BgM+NpiTogaF320ZwVFhamTVviZW3ODNbm9JJo\nANoM9PQ8znefi1SmSERaAO1xkhHiWbfeop3ljC+0AUGNMaY5SDQAfQgcKSK9cYLHZODSsDLzgStx\nru1MAhapqorIfOBfIvInnCSEI4EPEqxHRDbtgTHGNH8JBSD3ms404FWcNOw5qrpKRGYBS1V1PvAI\n8A83yWA3TpDCLfdvnISFSuDHDZkBB6FnOel8+mqMMaks4WtAqroAWBD23AzP32XAhVHWvQO4I9F9\nG2OMSX1ZsYsYY4wxDc8CkDHGmKSwAGSMMSYpLAAZY4xJClHVZNchJhHZAXyV4OpdgJ0xS6UXa3Nm\nsDZnhvq0+TBV7dqQlWlIKRGA6kNElqrqiGTXoylZmzODtTkzpHObrQvOGGNMUlgAMsYYkxSZEIAe\nSnYFksDanBmszZkhbduc9teAjDHGNE+ZcAZkjDGmGbIAZIwxJinSJgCJyEQRWScin4vILyIsbyUi\nc93l74tIr6avZcOKo803i8hqEVkuIgtF5LBk1LMhxWqzp9wFIqIikvLpq/G0WUQuct/rVSLyr6au\nY0OL49g+VETeFJFP3OP79GTUs6GIyBwR2S4iK6MsFxG5z309lovIUU1dx0ahqin/gzMlxBfA4UBL\n4FNgQFiZ64EH3b8nA3OTXe8maPNJQBv37+syoc1uuVzgLZyp30cku95N8D4fCXwCdHQfH5zsejdB\nmx8CrnP/HgBsTHa969nmE4CjgJVRlp8OvAwIMBp4P9l1boifdDkDGgl8rqobVLUceAo4J6zMOcDj\n7t/PAKeIiJC6YrZZVd9U1f3uw/dwZp9NZfG8zwC/Be4Gypqyco0knjZfDdyvqt8CqOr2Jq5jQ4un\nzQoc5P7dHtjShPVrcKr6Fs68adGcA/xdHe8BHUSke9PUrvGkSwDqAWzyPC5yn4tYRlUrgb1AKk+R\nGk+bva7C+Q8qlcVss9s10VNV/9OUFWtE8bzPfYA+IvKuiLwnIhObrHaNI542zwS+LyJFOPOS3dA0\nVUuaun7eU0LCE9KZ1CEi3wdGACcmuy6NSUSygD8BU5JclabWAqcbrgDnLPctERmsqnuSWqvGdQnw\nmKr+UUSOxZl9eZCqBpJdMRO/dDkD2gz09DzOd5+LWEZEWuCctu9qkto1jnjajIicCtwKnK2qB5qo\nbo0lVptzgUFAoYhsxOkrn5/iiQjxvM9FwHxVrVDVL4H1OAEpVcXT5quAfwOo6hIgB2fQznQV1+c9\n1aRLAPoQOFJEeotIS5wkg/lhZeYDV7p/TwIWqXt1L0XFbLOIDAf+hhN8Uv26AMRos6ruVdUuqtpL\nVXvhXPc6W1WXJqe6DSKeY3seztkPItIFp0tuQ1NWsoHF0+avgVMARKQ/TgDa0aS1bFrzgSvcbLjR\nwF5V3ZrsStVXWnTBqWqliEwDXsXJoJmjqqtEZBawVFXnA4/gnKZ/jnOxb3Lyalx/cbb590A74Gk3\n3+JrVT07aZWupzjbnFbibPOrwHgRWQ34gZ+rasqe3cfZ5p8C/yciN+EkJExJ5X8oReRJnH8iurjX\ntW4DsgFU9UGc61ynA58D+4EfJKemDcuG4jHGGJMU6dIFZ4wxJsVYADLGGJMUFoCMMcYkhQUgY4wx\nSWEByBhjTFJYADLGGJMUFoBMxhGRfBG5OMF1e4lIqYgs8zwX1xQRbtkaw+6LSGsRWSYi5e6NpMZk\nBAtAJhOdgjP0faK+UNVhACLiA+4HTsOZFuASERlQy7qPASGDhapqqbu9lB7R2Zi6sgBkMoqIjMEZ\nsHSSe9ZxeD03Ge8UEUBcw+4bkzHSYigeY+Klqu+IyIfAz1TV2w32Ns5gpuF+pqpv1LLJSMPkj2qQ\nyhqT5iwAmUzUF1jrfUJVxyapLsZkLAtAJqO4F/n3upMSep9P9AwoLYfJN6YpWAAymaYXES721+MM\nqGrqAJzAMxm4FEBEFgJXqKoFJGMisCQEk2nW4gx5v1JEjqvvxtwzqeDUAWuAf7tTB2QBRxCWcOAO\nu78E6CsiRSJyVX3rYEyqsjMgk1FUtQQnc60ht7kAZ74WrwHAs6paGlb2kobctzGpzM6AjKkbP9De\neyNqJKq6UlVvjmeDwRtRcSYgCzRAHY1JCTYhnTHGmKSwMyBjjDFJYQHIGGNMUlgAMsYYkxQWgIwx\nxiSFBSBjjDFJYQHIGGNMUlgAMsYYkxQWgIwxxiTF/weBKw3vbSVjPAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_2(50)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Consider the following ODE on $t\\in[0, 3]$:\n", "$$\n", "\\begin{cases}\n", " y''''(t) = y(t)^{-5/3} \\\\\n", " y(0) = 10, y'(0) = -3, y''(0) = 1, y'''(0) = 1\n", "\\end{cases}\n", "$$\n", "\n", "It can be written in a vectorial form like the first one:" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "code_folding": [] }, "outputs": [], "source": [ "def f(y, t):\n", " return np.array([y[1], y[2], y[3], y[0]**(-5/3.)])" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "def test_3(n=101):\n", " t = np.linspace(0, 3, n)\n", " y0 = np.array([10, -3, 1, 1])\n", " for method, m in zip(methods, markers):\n", " sol = method(f, y0, t)\n", " plt.plot(t, sol[:, 0], label=method.__name__, marker=m)\n", " plt.legend(loc='best')\n", " plt.title(\"Comparison of different ODE integration methods for $n={}$ points\".format(n))\n", " plt.xlabel(\"$t = [0, 1]$\")\n", " plt.grid()\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nP0JR0pGujOJQAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_3(10)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "test_3(50)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our hand-written Runge-Kutta method of order 4 seems to be as efficient as the `odeint` method from `scipy`... and that's because `odeint` basically uses a Runge-Kutta method of order 4 (with smart variants)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Small benchmark\n", "We can also compare their speed:" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "\n", "Time of solving this ODE for 20 points with odeint method...\n", "212 µs ± 20.5 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 20 points with rungekutta1 method...\n", "114 µs ± 5.37 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)\n", "Time of solving this ODE for 20 points with rungekutta2 method...\n", "223 µs ± 12.8 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 20 points with rungekutta4 method...\n", "482 µs ± 26.2 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 20 points with rungekutta4_jit method...\n", "896 µs ± 61.2 µs per loop (mean ± std. dev. of 7 runs, 1 loop each)\n", "\n", "\n", "Time of solving this ODE for 100 points with odeint method...\n", "222 µs ± 15 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 100 points with rungekutta1 method...\n", "548 µs ± 18.2 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 100 points with rungekutta2 method...\n", "1.16 ms ± 82.3 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 100 points with rungekutta4 method...\n", "2.81 ms ± 349 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "Time of solving this ODE for 100 points with rungekutta4_jit method...\n", "2.58 ms ± 140 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "\n", "\n", "Time of solving this ODE for 1000 points with odeint method...\n", "224 µs ± 15.8 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)\n", "Time of solving this ODE for 1000 points with rungekutta1 method...\n", "5.87 ms ± 466 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "Time of solving this ODE for 1000 points with rungekutta2 method...\n", "11.8 ms ± 652 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "Time of solving this ODE for 1000 points with rungekutta4 method...\n", "27.5 ms ± 1.4 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n", "Time of solving this ODE for 1000 points with rungekutta4_jit method...\n", "29.2 ms ± 2.88 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" ] } ], "source": [ "methods = [odeint, rungekutta1, rungekutta2, rungekutta4, rungekutta4_jit]\n", "\n", "y0 = np.array([10, -3, 1, 1])\n", "for n in [20, 100, 1000]:\n", " print(\"\\n\")\n", " t = np.linspace(0, 3, n)\n", " for method in methods:\n", " print(\"Time of solving this ODE for {} points with {} method...\".format(n, method.__name__))\n", " %timeit sol = method(f, y0, t)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Well, that's disappointing, the Numba Jit version was NOT faster than the manual implementation...\n", "- The order 1 method is simpler and so faster than the order 2, which itself is simpler and faster than the order 4 method.\n", "- And we can check that the SciPy implementation is much faster than our manual implentations!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusion\n", "\n", "> *That's it for today, folks!* See my other notebooks, [available on GitHub](https://github.com/Naereen/notebooks/)." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.3" }, "toc": { "colors": { "hover_highlight": "#DAA520", "running_highlight": "#FF0000", "selected_highlight": "#FFD700" }, "moveMenuLeft": true, "nav_menu": { "height": "193px", "width": "251px" }, "navigate_menu": true, "number_sections": true, "sideBar": true, "threshold": 4, "toc_cell": true, "toc_section_display": "block", "toc_window_display": true } }, "nbformat": 4, "nbformat_minor": 2 }