From 58658aa7c148864d2caae7cec4bf5b0fdea8a959 Mon Sep 17 00:00:00 2001 From: rasbt Date: Tue, 6 May 2014 01:08:11 -0400 Subject: [PATCH] conclusion section --- .../cython_least_squares-checkpoint.ipynb | 208 +++++++++++++++++- benchmarks/cython_least_squares.ipynb | 208 +++++++++++++++++- 2 files changed, 406 insertions(+), 10 deletions(-) diff --git a/benchmarks/.ipynb_checkpoints/cython_least_squares-checkpoint.ipynb b/benchmarks/.ipynb_checkpoints/cython_least_squares-checkpoint.ipynb index fafb461..2e97429 100644 --- a/benchmarks/.ipynb_checkpoints/cython_least_squares-checkpoint.ipynb +++ b/benchmarks/.ipynb_checkpoints/cython_least_squares-checkpoint.ipynb @@ -1,7 +1,7 @@ { "metadata": { "name": "", - "signature": "sha256:caecd42da39e4b55b4dc50c985b30a04ee3eac4a88d143732c4441ecc28fc1e0" + "signature": "sha256:b8a2adab4cfa8ac1064656d4b3e3121a2acc1060e034c98ce29986312939c9ac" }, "nbformat": 3, "nbformat_minor": 0, @@ -13,7 +13,7 @@ "metadata": {}, "source": [ "[Sebastian Raschka](http://www.sebastianraschka.com) \n", - "last updated: 05/04/2014\n", + "last updated: 05/06/2014\n", "\n", "- [Link to this IPython Notebook on GitHub](https://github.com/rasbt/python_reference/blob/master/benchmarks/cython_least_squares.ipynb) \n", "- [Link to the GitHub repository](https://github.com/rasbt/python_reference)" @@ -73,7 +73,8 @@ "- [Bonus: How to use Cython without the IPython magic](#cython_bonus)\n", "- [Appendix I: Cython vs. Numba](#numba)\n", "- [Appendix II: Cython with and without type declarations](#type_declarations)\n", - "- [Appendix III: Cython performance after replacing list comprehensions by explicit for loops](#explicit_loops)" + "- [Appendix III: Cython performance after replacing list comprehensions by explicit for loops](#explicit_loops)\n", + "- [Final Comparison: Cython vs. NumPy vs. SciPy for least squares fitting](#showdown)" ] }, { @@ -1005,8 +1006,7 @@ "\n", "funcs = ['cy_classic_lstsqr', \n", " 'lin_lstsqr_mat', 'numpy_lstsqr', 'scipy_lstsqr']\n", - "labels = ['classic approach (cython)', 'matrix approach', \n", - " 'numpy function', 'scipy function']\n", + "\n", "orders_n = [10**n for n in range(1, 7)]\n", "times_n = {f:[] for f in funcs}\n", "\n", @@ -1057,6 +1057,15 @@ ], "prompt_number": 34 }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
\n", + "In this performance comparison for different sample sizes, we see that our Cython approach is actually not so fast anymore. However, this is just the simplest approach to using Cython. There are a lot of tweaks that can be made. In a [later section](#showdown) we will come back to this comparison and see how the Cython version of our simple least squares implementation holds up against the other approaches\n", + "
" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -2193,6 +2202,195 @@ } ], "prompt_number": 88 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
\n", + "
\n", + "
" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Final Comparison: Cython vs. NumPy vs. SciPy for least squares fitting" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To wrap it up, let us compare the Cython code of our simple least squares fit implementation to the Numpy and Scipy functions - after we made some improvements by adding static type declarations and explicit for loops." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "%load_ext cythonmagic" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 1 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "%%cython\n", + "\n", + "def cy_lstsqr(x, y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " cdef double x_avg, y_avg, temp, var_x, cov_xy, slope, y_interc, x_i, y_i\n", + " x_avg = sum(x)/len(x)\n", + " y_avg = sum(y)/len(y)\n", + " var_x = 0\n", + " for x_i, y_i in zip(x,y):\n", + " temp = (x_i - x_avg)\n", + " var_x += temp**2\n", + " cov_xy += temp*(y_i - y_avg)\n", + " slope = cov_xy / var_x\n", + " y_interc = y_avg - slope*x_avg\n", + " return (slope, y_interc)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 2 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import numpy as np\n", + "import scipy.stats" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 3 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "def lin_lstsqr_mat(x, y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " X = np.vstack([x, np.ones(len(x))]).T\n", + " return (np.linalg.inv(X.T.dot(X)).dot(X.T)).dot(y)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 4 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "def numpy_lstsqr(x, y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " X = np.vstack([x, np.ones(len(x))]).T\n", + " return np.linalg.lstsq(X,y)[0]" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 5 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "def scipy_lstsqr(x,y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " return scipy.stats.linregress(x, y)[0:2]" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 6 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import timeit\n", + "import random\n", + "random.seed(12345)\n", + "\n", + "funcs = ['cy_lstsqr', 'lin_lstsqr_mat',\n", + " 'numpy_lstsqr', 'scipy_lstsqr'] \n", + "\n", + "orders_n = [10**n for n in range(1, 6)]\n", + "times_n = {f:[] for f in funcs}\n", + "\n", + "for n in orders_n:\n", + " x = [x_i*random.randrange(8,12)/10 for x_i in range(n)]\n", + " y = [y_i*random.randrange(10,14)/10 for y_i in range(n)]\n", + " for f in funcs:\n", + " times_n[f].append(min(timeit.Timer('%s(x,y)' %f, \n", + " 'from __main__ import %s, x, y' %f)\n", + " .repeat(repeat=3, number=1000)))" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 26 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#%pylab inline\n", + "#import matplotlib.pyplot as plt\n", + "\n", + "labels = [('cy_lstsqr', 'Cython implementation'), \n", + " ('lin_lstsqr_mat', 'numpy matrix equation'),\n", + " ('numpy_lstsqr', 'numpy.linalg.lstsq()'), \n", + " ('scipy_lstsqr', 'scipy.stats.linregress()')] \n", + "\n", + "matplotlib.rcParams.update({'font.size': 12})\n", + "\n", + "fig = plt.figure(figsize=(10,8))\n", + "for lb in labels:\n", + " plt.plot(orders_n, times_n[lb[0]], alpha=0.5, label=lb[1], marker='o', lw=3)\n", + "plt.xlabel('sample size n')\n", + "plt.ylabel('performance gain relative to the slowest approach')\n", + "plt.xlim([1,max(orders_n) + max(orders_n) * 10])\n", + "plt.legend(loc=2)\n", + "plt.grid()\n", + "plt.xscale('log')\n", + "plt.yscale('log')\n", + "plt.title('Performance of least square fit implementations for different sample sizes')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n44cFB3d5aZCuuOaFCxf49NNPuffee/H39ycvL4+9e/cSHR3N3Llzefvtt7n33nt5++23CQ4OJj09\nneLiYh544IHrXvPLL78kPDycoUOHsnbtWg4dOsRHH32k85zHH3+c+fPno1areeSRRwDYsmULL7/8\nMvHx8fj4+PDFF18gSRLDhg3DxcWFXbt2UVlZqZ3DGBQUREFBAYcOHSI0NBR7e3sCAgKwtrbmX//6\nF88++yyZmZksWbJE5/+ru7s7Dg4O/Prrr0RERGBtbY1SqeTPf/4z99xzD3379qWuro7NmzfTu3dv\nbZmMl19+mSNHjrBz585OxVyfXs5Vq1Zx11138dxzz7FgwQIcHR05f/48mzZt4sMPP8TGxobnnnuO\n5cuXEx4ezrBhw/jpp5/YsWPHTf8YGj9+PBMnTmTmzJm8/fbbDBgwgNLSUn7//XdsbW155JFHbhr7\nm8VqzJgx11yFLEkShw8f5u233+5A5ATh1pRWksY3Sd+0SuIuMy3XgTpbR9Z4eVHi4QH9+4OFBZNd\nXRnh7GziFgvdnqSHffv2Sd7e3pJSqZTkcrmkVColCwsLKSgoSJ9vv6bNmzdLP/zwg/Q///M/Umxs\nrM5jc+bMkebMmSNVV1dL+/fvl5ydnaXk5GSd58TGxkpJSUnXvf6NXpqeL9vs5OfnSzNnzpT8/f0l\na2trydfXV3rsscekiooKSZIkqaCgQHrooYckd3d3ycbGRoqIiJC+/vprSZIkKSMjQ5LL5dKBAwe0\nxzKZTFq7dq00duxYycbGRgoODpY2bNhw1X0bGxslT09PaerUqdpzX331lSSXy6WsrCxJkjT/P0eN\nGiUplUrJzs5OGjBggPTll1/qXGPevHmSq6urJJPJpJUrV0qSJEmbNm2S+vTpI9nY2EhRUVHSnj17\nJIVCoW23JEnS6tWrpaCgIEmhUGjfc0899ZTUt29fydbWVnJzc5OmTp0qpaSkaL8nNjZW5/0ZHx8v\nyeVyKTc397rxaH3cLDQ0VNtWSZIkmUwmrVu37qoY7du3T5o4caLk6Ogo2dvbSxEREdIzzzwjNTU1\nSZIkSWq1Wnr55Zcld3d3ycHBQZo7d670xhtvSI6OjtprrFixQurTp89V166trZWWLFkiBQUFSVZW\nVpK3t7c0ZcoUKT4+Xq/Y3yxWRUVFko2NjXTs2DGd++7fv1+yt7eXKisrr2pTe3XXnzlBaI9zReek\nVQmrpOXxy6Xlu5dJGz96Sqp55UWp8LXXpH9+9pm0/IcfpOVpadLKjAzpZBf8XAk9S0c/J6+712pr\n0dHRzJs3j2effRalUklpaSmrVq3C1taWF154oVOJ5NKlS8nJydH2yFVXV+Pq6kpycjKhoaEALFy4\nEF9fX958800A7r77bk6dOkVAQACPP/64tpZXa2Kv1RvLzMwkODiY/fv3M2rUqBs+t7i4mF69evHt\nt98ybdo0I7Ww51u0aBGJiYkcOXLE1E3hsccew8LCgo8//lh7bvHixdja2vLhhx92+vriZ07o6c4V\nn+PbpG9RSSqQJPonFzG1wJFiOyfWenlR6+4O/fujsLDgPg8PwtvMhxWEjn5O6jW0ev78ef72t78B\nLUNNS5YsITAwsNOJXNtGnzt3DoVCoU3iAAYNGqQzlvzzzz/rde3Y2FgCAwMBzYTuwYMHi1U57dDU\n1ERRURErVqzA399fJHGdkJ+fz+bNmxk3bhwWFhZs27aNNWvWXDWMbSorV66kf//+/P3vf8fPz4+M\njAy2bt3apbUiW9dMav557k7HJ0+e1H4OmkN7boXj5nPm0p7rHa/Zuob4jHh6D+4NkoRsy0mcSu3J\nj+zFBk9PzuXng40NfRUK5np6kvXHHxSYUfu7W7x7yvHJkycpKyu77hxlfenVI9e7d29OnTqFUqmk\nX79+bNy4EXd3d/r27Ut5eXmnGtC2R27fvn088MAD5Ofna5/z2WefsX79euLj4/W+ruiRu7HMzExC\nQkLYt2/fdXvkEhISGD9+PMHBwaxZs+aqUiWC/i5dusTs2bM5ffo0dXV19OnTh7/85S8mKeFjCj3h\nZy5BFEs1uu4Q89SiVL5L/k7bEzco8TJTLjmR6eTKRg8PVG5uEBmJnaUl87288DPjfVO7Q7x7krbx\nNmiP3IwZM/j555+ZP38+ixYtYvz48SgUCm3h1M5o22gHBwcqKip0zpWXl1+3zpXQMYGBgddcCdra\n2LFjryq9IXSMp6dnu/4QEcyP+AVnfOYe87NFZ9mYvLEliTt9iSmXnTnr4s5WNzckd3fo1w8nKysW\neHnhYWWYfZm7irnHu6fpqnjrlci9//772n8///zzDB8+nMrKSiZPntzpBrRdedq3b1+amppIS0vT\nDq+eOnWK/v37d/pegiAIgtAVzhad5bvk71BLapAkhpy6xKQiZ066erLd1RWuJHGuVlY85OWFi+X1\nys0LQue0qxBcdnY2Bw8eJCAggLvvvrtTdeRUKhV1dXU0NTWhUqmor69HpVJhb2/PzJkzWbZsGTU1\nNezfv59t27Z1aK/HFStW6Iz9C4IgdJT4LDE+c435mctndJO4k4VMKnLhoLu3ThLnbW3NIm/vbpPE\nmWu8e6rmeCckJLBixYoOX0evTCw/P58xY8YQGhrKzJkzCQ0NJSYmhry8vA7f+NVXX8XOzo633nqL\ntWvXYmtrq61l9e9//5va2lo8PT158MEH+eSTT4iIiGj3PVasWCG6igVBEIQuk3I5hY0pG7VJXNTJ\nQiYVK9nt6cMeFxfw8IB+/ehta0ustzcOCr3LtQq3qLFjx3YqkdNrscP06dMJCAjgzTffxN7enurq\nal555RUyMjL48ccfO3xzQxKLHQTBfIifOaEnSL6UzPdnvtcmcUOPFzCh1JXt3n6cdnDQJHEREYTa\n2THbxPumCt1PRz8n9Urk3NzcyM/P19mHsr6+Hl9fX4qLi9t9U2O4UUBcXV0pLS01cosE4dalVCop\nKSkxdTMEocOuSuKO5TOu3J0fffw5Z2cHnp4QHk5/BwdmeHhgYQZbbgndS0cTOb3+XHB1dSUlJUXn\n3NmzZ81+M+3rzZFr3s9TfHXtV3x8vMnbcCt9dad494QkTswfMj5ziXnSpSSdJG7Y0XxiKjzY6Ndb\nk8R5eUF4ONFOTszsxkmcucT7VtFVc+T0Grx/8cUXufPOO1m8eDEBAQFkZmby1Vdf8eqrr3b4xsbQ\nmcAIgiAIQmJhIpvPbEZCQqaWiD6Wx6gqb77x8yff2lqTxIWFcYdSyXgXF4PtAS70XGPHjmXs2LGs\nXLmyQ9+v19AqwO7du1m3bh35+fn4+voyd+5cJkyY0KGbGoOYkyMIgiB0RtskbtjRfIbVePOtXy+K\nLC3B2xv69uVONzdGOzuburlCN2ewOXJNTU2EhYWRkpKCtRlXpG5LJHKCIAhCR50uPM2WM1u0Sdxt\nh3MZ1ODHt769KFcowMcHWd++THN3J0oUrBe6gMHmyCkUCuRyObW1tR1qmHDrEPMrjEvE27hEvI3P\nVDE/VXBKJ4kbfjiXfo3+rPPrrU3iLMLCuN/Ts0clceI9blxdFW+95sg988wzzJ49m5dffplevXrp\nzAEIDg7ukoYIgiAIgqmdLDjJ1rNbNUmcSs2Iw/kEq3uz3s+ferkcfH2x7NuXOV5ehNjamrq5gqDf\nHLnr7eAgk8luul+nqchkMpYvX66dRCgIgiAIN9I2iRv5Rx6+BPKDjx9NMhn4+WHTty/zvbzoZWNj\n6uZ2mdTULHbuvEBjoxxLSzUTJ4YQFhZg6mbdMhISEkhISGDlypWGmSPXXYk5coIgCIK+TuSf4MfU\nH7VJ3KhDubhZhPJfL2/UV5I4h7AwFnh749Wqpmp3l5qaRVxcGjU1E5DLwdkZ6ut3ERsbKpI5IzNo\nHblmubm5HDlyhNzc3HbfSOj5xPwK4xLxNi4Rb+MzVsyP5x/XJnFylZrRh3JxsOzLtuYkzt8fZXg4\ni3x8elQSB7Bz5wVqaiaQmAh79iRQVgbW1hPYteuCqZvW43XV+1uvRC47O5s77riDgIAA7rnnHgIC\nArjjjjvIysrqkkYIgiAIgikcyzumk8SNOpiL3CacXz29kGQy6NULzytJnKulpamb2+UKC+UkJoJa\nrfk6dw4kCRoaxPZi3YVe/6ceeughhg4dSnl5OZcuXaKsrIzo6GgWLlxo6PYJ3YiYi2hcIt7GJeJt\nfIaO+bG8Y2w7tw1Ak8T9nkO9fSR73Tw0T+jdG7+ICGJ9fHBU6LU2sFvJzoaTJ9Wo1ZpjT8+x9O8P\nMhlYWalN27hbQFe9v/WaI+fk5ERRUZHOXqsNDQ24ublRWVnZJQ3pamKxgyAIgnA9R/OO8t9z/wVA\n3qRi1MFcyp0GkujsonlCQADB4eHM8fLC6joL/rqzixdhzRrIy8vi5Mk07OwmMHgw2NmJOXLG1tnF\nDnq9O0eMGMHhw4d1zh05coSRI0e2+4bGtGLFCpHEGZGYQ2RcIt7GJeJtfIaK+ZHcI7pJ3O95FLoM\n1kniIvr1Y14PTeJyc2HtWmhoAHf3AEaODGXChN3U1Pw/PD13iyTOSJrf32PHjjX8XqvBwcHcfffd\nTJ06FX9/fy5evMjPP//MvHnzWLp0KaDpAVu1alWHGyIIgiAIhnY49zA/n/8Z0CRxI37P46J7FFl2\n9ponBAYypH9/prm5Ie+B+6bm5Wl64urrNcd2dvDkkwF4egaQkCAXnR/dkF5Dq7GxsS3f0Gp5bHNh\nYEmSkMlkfPXVV4ZpZQeI8iOCIAhCa62TOItGFcMO5pPpGUWBjZ3mCYGBjBw4kLuUSp3C9z1Ffj6s\nXg3NGzXZ2cHCheDlZdp2CRoG22u1uxKJnCAIgtDsj5w/+CXtF0CTxEUfKiDNcyjF1lcK+wYFMX7Q\nIO5wdu6RSVxBAXz9dUsSZ2urSeK8vU3bLqGFwevInTt3jtdee42nnnqK119/nXPnzrX7ZkLPmrOD\nTwAAIABJREFUJuYQGZeIt3GJeBtfV8X8UM6hliSuoYkhhy6R4hWtTeJkwcHcM2QIMS4uPTKJu3RJ\ntyfOxgYeeujqJE68x43LqHXk1q9fT1RUFImJidjb23P69GmioqJYt25dlzRCEARBEAzh4MWDbE/b\nDmiSuIF/FJHiPZRKK2sA5CEhzIyKYpiTkymbaTCXL2t64mpqNMfNSZyPj2nbJXQdvYZWg4KC+Prr\nr4mJidGe27dvHwsWLCAzM9OQ7eswMbQqCIJwa/v94u/8duE3ABQNTUQcKSHVewgNFprCvoqQEB4Y\nOpS+dnambKbBFBVBXBxUVWmOra1hwQLw9zdps4Tr6Gjeoteq1aqqqqtKjYwYMYLq6up239CYmsuP\niFU4giAIt5a2SVzo0TJSvKNQWWh+7VmHhjIvOpoAGxtTNtNgios1PXHNSZyVFTz4oEjizFFzHbmO\n0mto9dlnn+Xll1+m9soAe01NDa+88grPPPNMh29sDKKOnHGJ+RXGJeJtXCLextfRmB/IPtCSxNU3\nEnCsklTvIdokzr5PH2KHDeuxSVxJiSaJa67X35zE9ep14+8T73HjMmoduY8++ojCwkLef/99lEol\npaWlAHh7e/Pxxx8Dmi7B7OzsDjdEEARBEDprf/Z+dqbvBDRJnN/JWtK8BiG7UtjXuW9fHho2DLce\nuG8qQGmpJomrqNAcW1rCvHnQu7dp2yUYjl5z5PTN0s2p90vMkRMEQbi17Mvax66MXQBY1jXifrqB\nXI8I5DJNEuceFsaCYcNw7oH7pgKUlWnmxJWVaY4VCpg/H4KCTNosQU+ijlwbIpETBEG4dezN2svu\njN0AKGobcEpWU+TWV5vE+YSH8+CwYdhbWJiymQZTXq5J4q4MmKFQwNy5EBJi0mYJ7WDQxQ4AJ06c\nYN++fRQXF+vcSGzLJTRLSEgwq17Znk7E27hEvI1P35jvydxDfGY8ABa1DdickekkcQEREcwbNgzr\nHrhvKmiGUb/+uiWJs7CAOXPan8SJ97hxdVW89XpXf/rpp9x+++3Ex8fzj3/8g8TERN555x3S0tI6\n3QBBEARB6KiEzARtEqeobcAiVUGFMkSbxPWNjOTBHpzEVVZqkriSEs2xhQXMng2hoaZtl2A8eg2t\nhoSE8NVXXxETE6Nd7PDLL7+wYcMGVq9ebYx2tpsYWhUEQejZEjITSMhMAMCithHVeSvUjr20SdzA\n/v2ZPnQoFj1wtwbQlBaJi9PUiwOQyzVJXFiYSZsldJBB58g5OTlRcWUJjJubG5cuXUIul+Pq6qpd\nwWpuZDIZy5cvF3XkBEEQehhJkkjITGBP1h4AZDWNNKbbILf30yRxMhm3DRjAlCFDeuSWWwDV1Zok\n7vJlzbFcDvffDxERJm2W0AHNdeRWrlxpuL1W/f39ycjIAKBPnz5s3bqVffv2YW1t3e4bGpOoI2dc\nogaRcYl4G5eIt/FdK+aSJBGfGa9N4qhuojbDDgt7f20SN2bgwB6fxH39tW4SN2tW55M48R43LqPW\nkXvhhRc4c+YMQUFBLF++nFmzZtHQ0MC//vWvDt9YEARBENpDkiR2Z+xmX/Y+ANRVTdRkO2Bv56VJ\n2mQyJg8ezIhBg0zcUsOpqYHVq+HSJc2xTAYzZ0JkpGnbJZhOh8qP1NfX09DQgKOjoyHa1CXEHDlB\nEISeQ5IkdmXsYn/2fgAaq1TUXHTAycYTmUyGDJgeFcXggQNN21ADqq3V9MQVFGiOZTKYMQN68Eu+\npYg6cm2IRE4QBKFnaJvE1VdLVF10wNXaHZlMhgVw/7BhhPfgbqm6Ok1PXF6e5lgmg+nTYfBg07ZL\n6DodzVt65npswSTE/ArjEvE2LhFv40tISECSJHam79QmcTVVUJnjqE3irID5t93W45O4NWtakjiA\ne+/t+iROvMeNq6vi3TP3KREEQRC6PUmS2JG+g98v/g5AZZWc2lx7PKxckclk2EoSD44ciV94uIlb\najj19bB2LeTmtpybNg2GDDFdmwTzIoZWBUEQBLOSmpbKjqM7SLycyMXyiwQHB2Ph5E1Dri2eV5I4\nR0nioVGj8OjBRdMaGjRJXHZ2y7l77oFhw0zXJsFwDDq06urqes3znp6e7b6hIAiCIFxPaloqcfFx\nHLI6RKpjKjX+NRy7UEh5uoU2iXNVqVh8++09Polbt043iZsyRSRxwtX0SuQaGxuveU6lUnV5g4Tu\nS8yvMC4Rb+MS8TaO347+RpZrFjkVOZSeLaNR7Y+XfTCKOhUymQwvlYpFY8bg0qePqZtqMI2NsGED\nZGW1nJs0CYYPN+x9xXvcuIwyR+6OO+4AoLa2VvvvZjk5OYwcObJLGiEIgiAIdU11/JH7B+fJorTE\nhspcN7zqrPFwagAH6NXYyLzx47Ft727w3UhzEnelBj8Ad90F4tetcD03nCMXFxcHwBNPPMF//vMf\n7ditTCbDy8uLCRMmYGlpaZSGtpfYoksQBKH7KKsrY33ier75bjPpKhtkETFYyhxQyCyQJ59molri\n3adfwCooyNRNNZimJvjmG0hLazk3cSLcfrvp2iQYXme36NJrscPZs2cJ72argsRiB0EQhO4hpyKH\nDYkbqG6sZtu2VIqCo/G0skWODJlMRmNZOXeUV/D/Xn3d1E01mKYm+PZbOH++5dz48RATY7o2CcZl\n0MUOx48fJyUlBYDU1FRiYmIYN24cZ8+ebfcNhZ5LzK8wLhFv4xLxNoykS0nEnYyjpLGOs5Ib5ZIS\nP2snFJIFlWfP41VWwQSFFQ2NPXdOtkoFGzfqJnFjxxo/iRPvcePqqnjrlcj9/e9/x83NDYDnnnuO\n2267jZiYGJ588skuaYQgCIJwa5Ekib1Ze/ku5XvS1XYcbfKG7AZcatVYKSyxsbSid30Dgx2dsXNR\nYtXQYOomG0RzEpea2nIuJgbGjDFdm4TuRa+hVScnJyoqKqitrcXX15eCggIsLS1xc3OjtLTUGO1s\nNzG0KgiCYJ6a1E38eHYb8ZfOkYYr6moVvhfL8bV0JTn1PFJpKeGhodgqlWBlRf3x44R5ehL797+b\nuuldSqWC77+HKwNegGY+3IQJmi24hFtLR/MWvXZ28PDw4Pz58yQmJjJs2DCsra2prq4WiZIgCILQ\nLjWNNXx+eiMJlTWUSJ44F5bjXVSPp5073k0qJslkpBcUUCOX02BpiVVTE3YKBePuv9/UTe9SajVs\n2aKbxI0aJZI4of30GlpdunQp0dHRLF68mOeffx6AnTt3Mljs1iu0IuZXGJeIt3GJeHdeTtUlnjvy\nDVsq1ZQ3WOJ1oZBeJU0E2rpzT1k5T5SUEBMby7h//pPwQYMACB84kHF/+QsBPaj4b3MSl5TUcm7E\nCLjzTtMmceI9blxG3Ws1NjaW+++/H5lMhp2dHQAjR45kuKGrEwqCIAjdniRJ/JR/jn+n/UGNWo5t\neQ3u2UV4WDoxtknOhKJc7P39YdYscHYmAAgIC0OekNDjykep1bB1KyQmtpy77TZNwV/REyd0hN57\nrRYXF/PTTz9RUFDAiy++SG5uLpIk4e/vb+g2doiYIycIgmB6F+vq+E/GKQ4UngW1GmV+Kc6XKxks\ns+OB6kZ8GhtbZvfL9Rok6rYkCX78EU6caDk3bBjcfbdI4oSO5y16JXJ79uxh1qxZREdHc+DAASor\nK0lISOCdd95h27ZtHWqwoYlEThAEwXQqmprYUVLC1pwksiuyUdQ14pF1GY/KGubXK7itEWROTjBz\nJgQGmrq5BidJsG0bHD/ecm7oUJg6VSRxgoZB68g9/fTTfPPNN2zfvh2FQjMaO2LECP74449231Do\nucT8CuMS8TYuEW/9NKnV7Csr4/2L2XyTeYTs8iwcSqrodTaHmIvZvFauYngjyMLC4IknbpjE9ZSY\nSxL89JNuEjdkiPklcT0l3t2FUefIZWVlMXHiRJ1zlpaWqFQ9t0CjIAiCoD9JkkitqeHX0lIK6qpJ\nupREVW057heLiczM5K6SEoa7hKCwtNZsHnrbbeaVxRiIJMEvv8DRoy3nBg2CadNuiZcvGIFeQ6uj\nRo1i2bJlTJ48GaVSSWlpKb/99htvvPGG2WbwYmhVEATBOC43NLC9pIQLtbVUNVSTeCkRqaKCPuey\nuP1CCsPkDoQoQ5B5eMB994G3t6mbbBSSBL/+CocOtZwbMABmzOjx0wGFDjBoHbl3332XqVOncvfd\nd1NXV8djjz3Gtm3b2Lp1a7tvKAiCIPQMtSoVCWVlHKmsRC1JFNeWkHIpGWVBEeOPHSP8ch5hrqH4\nOflpxhKnTAErK1M32ygkCXbs0E3i+vcXSZzQ9fR6O40YMYJTp04RGRnJww8/THBwMEeOHOG2224z\ndPuEbsRce2d7KhFv4xLxbqGWJI5WVPBBbi5/VFSgliRyKnJJyT3BiBMneWTHLwwoKmCw1wD8PII1\nvXDTp7c7ieuuMZck2LULfv+95Vy/fpp1HeacxHXXeHdXRp0jV1ZWhp+fHy+99FKX3FQQBEHonrLq\n6viluJiCK3ufSkiklVxAyj7FY3sO4FVWirWFNQN9BmMf1FeTxCmVJm618UgSxMfD/v0t5yIiNCXy\nzDmJE7ovvebI2djYEBERwZgxYxgzZgwxMTG4ubkZo30dJpPJWL58OWPHju1xBSUFQRCMrfxKOZGk\n6mrtuSa1iqzLifQ7upsRRxORAY5WjgzwGoDVmPEwbhxYWJiu0SaQkKD5ahYWBg88cMuFQWiHhIQE\nEhISWLlypeHqyNXW1nLw4EH27NnD3r17OXz4MMHBwcTExPDRRx91qOGGJhY7CIIgdF6jWs3vFRXs\nLy+nUa3WnlepG6jPTGDE9p9xvVwOgIedB+GB0VjMug9CQkzVZJPZuxd272457tMHZs8GhV5jX8Kt\nzqAFgZtVV1dz4MABtm/fzueff46trS2FhYXtvqkxiETO+BJ64HY65kzE27hutXhLksSZmhp+Kymh\nrKlJ5zEfeT2q/XH0TTiColFThirAOYDA6InIZswAB4cuaUN3ivn+/bBzZ8txaCjMmdO9krjuFO+e\noG28Dbpq9cUXX2Tv3r3k5uYyatQoxowZw6FDh4iIiGj3DQVBEATzVnilnEhGba3OeW8rK0IbCylZ\n9w6e53IBkCGjr2c4Pn9aACNH3pLF0Q4c0E3igoNFT5xgPHr1yNnb2+Pj48PixYsZM2YMw4YNw9LS\n0hjt6zDRIycIgtA+tSoV8VfKibT+/LSzsGCciwuNZ3dTtu5T7MprAFDIFUSEjcbtwcfAz89UzTap\ngwc1teKaBQXBvHlg5r8iBTNk0KHVxsZGjhw5wr59+9i7dy8nTpwgMjKSmJgYli5d2qEGG5pI5ARB\nEPSjliSOVVayu6yM2lY79shlMoY5OnKHowPHtryP6tdfkKs1n6u2Clv6TZiD48w5YG1tqqab1B9/\naHZtaBYYqEnibpFSeUIXM8ocuZKSEvbs2cOuXbtYvXo1dXV1NFxZgm5uRCJnfGJ+hXGJeBtXT413\nZm0tv5SUUNjmszzY1pbJrq441lZy+N//i5R6VvuYo6M7kQ89j030cIMOpZpzzI8c0eyf2qx3b3jw\nwe6dxJlzvHsio86R++tf/0pCQgLnz58nOjqaMWPG8P333zNy5Mh231AQBEEwvbLGRn4rLSWlVTkR\nAKWlJZOUSsLs7Cg7e5Kjn6xCKi/VPu4SFMGAJ1di4eFp7CabjWPHdJO4Xr1g/vzuncQJ3ZdePXLN\n9dhGjBiBra2tMdrVaaJHThAE4WqNajX7y8s5UF5OU6vPSEu5nBhnZ0Y6OaEACn76lrQfvqRJ1ah9\njvv4aUTO/SuyW3gC2IkT0Hp3Sn9/WLDglh1dFrqQUYZWs7Ozyc3Nxc/Pj969e7f7ZsYkEjlBEIQW\nkiSRXF3NjtJSytuUExno4MBEpRInhQLKy8n+8j0yTu1BQvMZqrKxJiD2aUJH3G2KppuNkyc1SVzz\nrxZfX3joIbCxMW27hJ6ho3mLXhuG5OfnM2bMGEJDQ5k5cyahoaHExMSQl5fX7hsKPZfYp8+4RLyN\nqzvHu6C+nriCAjZdvqyTxPlYW7PIx4eZHh44KRRIKSmkvfE86acStElcrb83EUv/ZZIkzpxifvq0\nbhLn46PpietJSZw5xftW0FXx1iuRe+KJJxg0aBClpaXk5+dTWlrKkCFDeOKJJ7qkEYIgCELXq1Gp\n+G9REf/Jzyerrk573t7Cgnvd3XnUx4feNjbQ2EjTj1tJ+XA5OYXnAZBkMspGRjHylX/j6xdmqpdg\nFpKSYMuWliTO21uTxHWTmUZCD6fX0Kqbmxv5+flYtZrJWV9fj6+vL8XFxQZtYEeJoVVBEG5VKkni\naGUl8aWl1LXaVksukzHcyYkxzs7YNG/+eekSdd+sIyU5nor6CgDq7K2pnX4Pd49/HGvFrT35KzkZ\nvv8emsPo5QULF4KdnWnbJfQ8Bl216urqSkpKCoMHD9aeO3v2LEqlst03FARBEAwn/Uo5kcttyomE\nXikn4t78B7kkwfHjVP24iaTcE9Q1aXrsLgd44HjfPKb3n45cptegTY915oxuEufhoZkTJ5I4wZzo\n9VP64osvcuedd7JkyRI+/vhjXnrpJe68805eeOEFQ7dP6EbE/ArjEvE2LnOPd2ljI98UFrK6oEAn\niXO1tGSulxfzvbxakri6Oti0iZLvvuZE9mHqmupQW8g5NzKM3o88x+QBM8wiiTNlzM+ehY0bW5I4\nd3dNT5y9vcmaZHDm/h7vaboq3nr1yD366KOEhISwbt06Tp8+ja+vLxs2bGDChAld0ghBEAShYxrU\navaVl3OwTTkRqyvlREY4OaGQt0rKLl6E778nNzuZ8yWa+XDVLvacHz+Ie0Y/TB+3PsZ+CWbn3Dnd\nJM7NTZPEOTiYtl2CcC3tKj/SnYg5coIg9GSSJJF4pZxIZZtyIoOulBNxbL1ru1oNBw6g3r2b9OLz\n5FTkAJAX5svl26OYM2QBXg5exnwJZiktDTZsgOadylxdITYWnJxM2izhFtDlc+SWLl161UVlrbZi\nkSQJmUzGqlWr2n1TQRAEoePy6uv5paSEi61WogL4WVszxdUV/7Y1MSorYfNmmi6c58zlMxTXFtNk\npSB1VBhWAwazqP8cHK0djfgKzNOFC/DNNy1JnFKp6YkTSZxgzq6byF28eFEncWurOZEThGZinz7j\nEvE2LnOId7VKxa7SUk5UVen8ke1gYcFEpZJBDg5Xfy6fOwc//EBdRQmJhYlUN1ZT7ulMSkwEIUFR\nzAifgaWFee7UYMyYZ2RoeuKaOzddXDRJnLOzUW5vFszhPX4r6ap4XzeRi4uL6/TFBUEQhM5TSRKH\nKypIKCujvlU5EQuZjBFOTsS4uGAtb7M4oakJdu6EQ4eorK8k8VIi9eoGsgYFkDUokNGBdzAhaIL4\ngxzIzIT161uSOGdnTRLn4mLSZgmCXvSaI5eSkoKrqyve3t5UVlbyf//3f1hYWPDCCy9gZ4J12C+9\n9BIHDx4kMDCQL7/8EoXi6nxUzJETBKEnSKupYXtJCUWNjTrn+9rZMcnVFbdr7XtaXAybNkF+Pper\nL3Om6Ay1tgrOxPSjwseVaX2nMcRniJFegXnLyoJ166B5oa+Tk2ZOnKurSZsl3IIMukXXnDlzKC8v\nB+D5559n3759HDp0iMcff7zdN+ysU6dOkZeXx969ewkPD2fTpk1Gb4MgCIKhlTQ2sr6wkLWFhTpJ\nnJulJfO9vJjn5XXtJO7UKfjPf5Dy8sguzyb5cjKX/JUcvXcY9f4+LBi4QCRxV1y8qJvEOTpqeuJE\nEid0J3olcllZWYSFhaFWq9m8eTPfffcdmzZtYvv27YZu31UOHjzIpEmTAJg8eTIHDhwwehuEaxM1\niIxLxNu4jBXverWaHSUlfJSby7maGu15a7mcu1xdedLPjz7XGgmpr4fNm2HLFtT1dZwrPkdaeQbn\nbwslaXx/HJVeLI5aTJAyyCivoysYMuY5ObB2bUsS5+CgSeLc3Ax2S7MnPlOMy6h15GxsbKioqODM\nmTMEBATg4eFBY2MjdW1WTBlDaWkpPj4+ADg5OVFSUmL0NgiCIHQ1SZI4VVXFztJSqpqXTaIZbhns\n4MAEFxccrjGNBIC8PM1QakkJjapGki8nk2fdQMrUoVS5OhDgHMDs/rOxsxRbEgDk5sKaNZrcFzRF\nfhcu1BT9FYTuRq8euXnz5jF+/HgeeughFi5cCMDx48cJDg7u8I0//PBDoqOjsbGx4eGHH9Z5rKSk\nhBkzZuDg4EBgYCAbNmzQPubi4kJFhWY/wPLyclxFH7jZEKudjEvE27gMGe/c+nq+yM/nh6IinSSu\nl40Nj/r4MN3d/dpJnCTB77/DF19ASQm1jbWcKDjBGX8bjl1J4gZ5DWLBoAXdMokzRMzz83WTODs7\nTRLn4dHlt+p2xGeKcXVVvPXqkXvvvff49ddfsbKyYty4cQBYWFjw3nvvdfjGfn5+LF26lF9//ZXa\n2lqdx5566ilsbGy4dOkSJ06c4J577mHQoEH069ePUaNG8e6777JgwQJ+/fVXbr/99g63QRAEwZSq\nmprYWVrKyaoqnfOOCgV3KpUMsLe//qrS6mrYskVTwRYoqyvjVFkqySMDuRSsKew7Pmg8d/S+Q6xM\nvaKgAFav1uxQBi1JnKenadslCJ1h8p0dli5dSk5ODl999RUA1dXVuLq6kpycTGhoKAALFy7E19eX\nN998E9Ds/Xro0CECAgL46quvxKpVMyFqEBmXiLdxdWW8VZLEoYoK9l6jnMgoZ2fucHbGqm05kdbS\n0zXz4a4kgIVVhRyR5ZF8Rzi1TrYo5ApmhM8g0jOyS9prKl0Z88JC+PpraJ52aGurSeK8vbvk8j2C\n+Ewxrrbx7vKdHYylbaPPnTuHQqHQJnEAgwYN0pkU+Pbbb+t17djYWAIDAwHNkOzgwYO1QWu+njju\nuuOTJ0+aVXt6+rGId/eM97maGj786ScqmpoIHDECgMxDh+htbc1fp03D1dLy+t9/xx0QH0/C2rUA\njAkIILMsk08b8sgP9SHQyRZ7S3sCywK5nHIZrvQ0mUP8OnLcrLPX27IlgV9/BW9vzXFeXgKTJrUc\nm8vrNfVxM3NpT08/PnnyJAkJCWRmZtIZZtcjt2/fPh544AHy8/O1z/nss89Yv3498fHxel9X9MgJ\ngmBOihoa+LW0lPOtVqICeFhZMdnVlRBb2xtfoLQUvv9es9wSUEtqkqoziB+ipNRPM1fY096TeQPm\n4WIjKtk2u3wZ4uI0I9EA1tbw0EPg52fSZgnCVXpMj5yDg4N2MUOz8vJyHB3FPoCCIHQ/dSoVe8vL\nOVRRgbrV552NXM5YFxeGOTlhcbM5bElJsG2bdoZ+g6qBg1aXODChFw22VgCEuoZyX7/7sFHY3OhK\nt5SiIs1wauskbsECkcQJPYtc3yc2NDSwd+9evv32WwCqqqqoajNBtyPaTsLt27cvTU1NpF2ZwAua\nIsD9+/fv9L0Ew2rbPS8Yloi3cbU33pIkcaKykg9yc/m9vFybxMlkMoY6OvIXf39GODvfOIlraIAf\nf9SUFrmSxFU11bLFv4r42/20Sdww32HMGzCvxyVxnXmPFxdrkrjmX1NWVvDgg+Dv3zVt64nEZ4px\ndVW89eqRS0xM5N5778Xa2pqcnBxmz57Nnj17WL16tTaxay+VSkVjYyNNTU2oVCrq6+tRKBTY29sz\nc+ZMli1bxueff87x48fZtm0bBw8ebPc9VqxYwdixY7Xj0oIgCMZwsa6OX0pKyGuucXFFbxsbpri6\n4mNtffOLFBRoEriiIu2pImsVGwbKKL5SdkmGjMmhk7nN7zaxMrWVkhJNEldZqTm2tIT586FXL9O2\nSxCuJSEhoVNJnV5z5EaPHs3jjz/OQw89hFKppLS0lOrqavr06UNeXl6HbrxixQpWrVp11blly5ZR\nWlrKokWL2LFjB+7u7vzjH/9gzpw57bq+mCMnCIKxVTY1saO0lNNtRiucFAruUiqJvFE5kWaSBEeO\nwG+/teziDqT52fFtYBWNlpqBFCsLK+7rdx993fp2+evozkpLNXPiruwqqU3irqx7EwSz1dG8Ra9E\nTqlUUlJSgkwm0yZykiTh6upKaWlphxpsaCKREwTBWJrUag5WVLCvvJyGVuVEFDIZo52dGX2zciLN\namo0Q6lnz2pPqRUKDg105TfHQriSBDpZOzFvwDy8HUTtjNbKyjRJXFmZ5lihgHnzoBO16wXBaDqa\nt+g1Ry4gIICjR4/qnDty5Ah9+vRp9w2FnkvMrzAuEW/jula8JUnibHU1H+Xlsau0VCeJ62dvz5/9\n/BinVOqXxGVlwSef6CRxTZ7ubInx4DenS9okztfRl0ejHr0lkrj2vMfLyzXDqa2TuLlzRRLXHuIz\nxbiMOkfutddeY+rUqTz++OM0NDTwxhtv8Mknn/DZZ591SSMEQRC6m8sNDWwvKeFCm51pPK2smOLq\nStDNyok0U6th717Ys0czrHpF9dCBrPXIJ7+upRRThHsEMyJmYGVh1SWvoaeoqNAkcc0DRBYWMHs2\nhISYtl2CYAx615E7ceIEn376KVlZWfTu3ZtHH32UoUOHGrp9HSaTyVi+fLlY7CAIQpeqU6lIKCvj\ncGWlTjkRWwsLxrm4EO3oiFzfhQfl5ZodGrKyWs7Z2VE4cSRr6w5T2VCpPT2612gmBk8UixraqKzU\nDKcWF2uOm5O4vmLqoNBNNC92WLlypeHmyHVHYo6cIAhdITU9nZ3JydQDhfX1qLy9cWhViEwmkxHt\n6Mg4FxfsLCz0v/CZM5r5cK179AIDOTemPxsv/kqjuhEAuUzO1L5TifKJ6qJX1HNUVWmSuOaFvXI5\nPPAAhIebtFmC0CEGLQhcX19PXFwcJ0+epKqqSnszmUzG6tWr231ToWdKSEgQvZ9GJOJteElpaXx6\n7BiNgwdzcv9+rKOiaDp6lMFqNe69ehFoY8MUNze8rNox1NnYqFmReuRIyzm5HGnMGA6+4KiHAAAg\nAElEQVQGWrAj4yckNB/mNgobZkfOJkgZ1MWvrHu40Xu8uloznNo6ibv/fpHEdYb4TDGuroq3Xonc\nwoULOX36NNOmTcPLy0t7XnTxC4LQ3UmSRI1aTVFj41Vfvx04QPXAgVBTQ61ajTWgiI4mPzGRJ4cO\nJcLOrn2fg5cva2rDFRa2nHN2RjXjT/xUn8jxjOPa0662rswbMA93O/eue7E9RE0NrF6tCSdokrhZ\nsyAiwrTtEgRT0Gto1cXFhYyMDJRKpTHa1CXE0KogCK2pJYmypiaKGhu53CZhq1Wprvk9h/bupW7g\nQO2xXCajt7U1A86f57l779X/5pIEx4/D9u2aHrlm/fpRO3kiGzP+S3ppuvZ0b+fezOk/BztLu3a/\nzp6utlbTE1dQoDmWyWDmTBgwwLTtEoTOMujQakBAAPVtKpR3B2JnB0G49TRcp3etuLERVTs/JC0A\nW7kcOwsLHCws8LGywkYux7Y9vXB1dZp9UpOTW84pFDB5MiX9gliftJ6impbdGwZ6DeTesHtRyE2+\nFbbZqa3V9MS1TuJmzBBJnNC9GWxnh127dmmHDE6cOMHGjRv561//ire3bu2i8ePHd/jmhiR65IxP\nzK8wrls53pIkUaVSXbN3raLVbgj6spLLcbe0vOrrcnY2a0+exHroUDIPHSJwxAjqjx0jNiqKMH0K\nlF28CN9/31LcDMDTE+67j2zrOr5J+oaaxhrtQ+MCxxETECOmrVzR+j1eV6dJ4po3E5LJYPp0GDzY\ndO3raW7lzxRTaBvvLu+RW7x4sc6HiSRJ/O///u9Vz8vIyGj3TQVBEPShkiRKrtG7VtTYSH2r4rv6\nclQo8LhGwuZoYXHN5MkzNJRYuZxdSUkUZWTg6eDABH2SOEmC/fshPl5TJ65ZdDRMmsTpkjNsPbkV\nlaQZ0lXIFfwp/E/09+zf7td0K6ivh7VrW5I4gGnTRBInCCDKjwiCYAZqVSqKr9G7VtrUpFOrTR8W\nMhmu10jW3C0tsdZnh4XOqqyELVsgvWXOGzY2cO+9SBER7MnaQ0JmgvYhe0t75vSfQy9nsaP7tTQn\ncRcvtpybNg3MuIypIHSIQefITZ8+na1bt151fubMmWzevLndNxUE4dYjSRLlVxYbtP2qus5igxux\nkcvxsLK6KllzUSiwMNXQ5PnzmiSupmW4lF69YNYsmpwc2HpmM4mXErUPedh5MG/APJS23WchmTE1\nNMC6dbpJ3D33iCROEFrTq0fO0dGRysrKq84rlUpKm/dEMTOiR874xPwK4zLXeDeq1ZQ0NXG5oUF3\nsUFTE40dGA51USiu2btmf53hUEO5YbybmmDXLjh4sOWcTAZ33AFjx1LdVMs3Sd9wsaIlIwlRhnB/\n5P3YKGwM2/BuKDU1i+3bL/Djj6exth5IcHAI7u4BTJkCw4ebunU9l7l+pvRUBp8jB7B06VIAGhoa\nWLZsmc4N0tPTCQwMbPcNjUmsWhUEw7hR7bWypqZ2fxgpZDLcLC2vmr/mZmmJpTGGQzujuFhTGy6/\nZU9UHB01NTGCgrhcfZn1iesprWv5ozfaN5opoVOwkLdjJ4hbRGpqFl9+mUZq6gSKi+W4uIzl5Mld\n/PnPMHx4gKmbJwhdzmCrVgFiY2MBWL9+PfPnz2/5JpkMLy8vFi9eTGhoaIdvbkiiR04QOq8jtddu\nxN7C4pq9a84Khf77k5qTU6fgp580Y4DN+vaFP/0J7OxIL03nu+TvqGuqA0CGjLtC7mKE/wixMvU6\n3n9/NwkJ42k92BMSAkOH7ubJJ82zSoIgdAWD9MjFxcUBMGrUKB577LEONUwQBPPXlbXXZDIZymus\nDnWztGzfXqTmrL5ek8CdPt1yzsIC7roLbrsNZDKO5R3jp/M/oZY0w8lWFlbMiphFmHuYiRpt/urr\n4eBBuU4SFxysmWbY0GDmPbOCYCJ6LXYQSZygDzG/wrjaG29j1V5zVShQmPtwaAdo452XpxlKLSlp\nedDNDe67D3x8UEtqdl7Ywe8Xf9c+7GTtxNz+c/Fx9DF+w7uJ2lrN6tSKipZ5lDY2CfTuPRYAK6v2\nz68U2kd8hhuXUfdaFQSh+zB17bWeJis1lQs7d3I6JQX1tm2ENDYS4Ora8oTBg+Huu8HKigZVA5vP\nbOZs0Vntwz4OPswdMBcnaycTtL57qK6GNWs0OzYEB4dw8uQuwsIm0Dx6X1+/iwkTzHMajyCYmqgj\nJwjdTGp6OjuTk6lRq6lXqYjs0wcHP7/uXXvNTGWlppIWF8cEmQzOnoWSEnY1NRE6eDABfn4wdap2\nf6iK+go2JG4gv6pl0UO4ezgzI2ZiZWFlqpdg9iorNTs2XL7ccq5//ywuXbpAQ4McKys1EyaEEBYm\nFjoIPVtH8xaRyAlCK5IkoZIk1Gh6tlSShKr1v2/ymArNAgFDPZafnc3hs2eRDx2qnbvWdPQog8PC\ncO9184KyZll7zRypVJCTw+5332V8ZiZUVGh2a7hit48P4z/6CK70zOVX5rM+cT2VDS1lmkb1GsXE\n4InIZbduInwz5eXw9dcto9Ri2y3hVmbQgsAA8fHxrF69mtzcXPz9/XnwwQfNdp/VZqL8iHE09xCd\nSUwkYsAAJkZGEhYcjNQ26elEgmSsx9rbk2VsiefPI0VFoZIkyo4exSU6GkV0NBmnTukkcuZSe63b\nkCS4dEmzG0N6OmRlQUMD8tRUzSafQEJZGWNdXKBXL+SDB2uTuNSiVDalbKJR3QiAXCbnnj73MNRX\nVK29kdJSTRLXvA2tXK6p2NK/1S5lYs6WcYl4G1dzvDtbfkSvRO7zzz/nlVde4ZFHHmH48OFkZ2cz\nb948Vq1aZdYLIVasWGHqJvR4qenp/DkhAfnQoRQVFnK2Vy++i49nUG4urv7+pm5ej6NulYTJ0JTz\nsJfL8bSz4z4Pj+5Te80clJe3JG4ZGVBVddVT1K3jaGsLAweCqytqW1skSeJQziF+u/AbEpo/AGwU\nNjwQ+QDBypvsxXqLKyrSJHHNdeYtLOD++yE83LTtEgRTaO5wWrlyZYe+X6+h1T59+rBp0yYGDRqk\nPXf69GlmzpxJWlpah25saGJo1Tg+2raN7/39aTuF3v7UKYaNGWOSNnWWhUzW8gXIW/3b1I998fPP\nFA8YgPzKY81pnWdSEk9Om2b0WHUrdXWahK05eSsuvvHzXVzIsrYm7fhxJnh4gJVmntuu+nqCHlpA\nikU6R/OOap+utFEyb8A8POw9DPkqur3CQs2cuOpqzbFCAXPmgJmWJBUEozHo0GpJSQkRERE658LC\nwsx2ey7BeBrRvPlo8+ZTXek5ulZSIufqBKX1sc7jRn5M3vx6zNTUAQOIO34cRavNJuuPHWNCVJQJ\nW2Wmmpo0m3Q2J255eVe9T3XY2mqKljV/KZUEAKSmsnvXLuQNDaitrPAfczsHGo5xofSC9lt7OfVi\nTv852FvZG/xldWd5eZrVqbW1mmMrK5g7F4KCTNsuQejO9ErkRo8ezbPPPstbb72Fvb09VVVVvPzy\ny4waNcrQ7RPMnCUQ7eiIDLh46BCBI0ciBzyVSv4cGGjWSVF3FBYcTCywKymJlMRE+g0YwISoKMKC\nxVAekqSpX9GcuGVnQ2Pj9Z+vUEBAQEvi5u2tmW3fRkBYGAFhYSQkJDBk+CDWJ67nck3LEssBngOY\nHj4dhVxUc7qRixc1deLq6zXH1tYwfz707n397xFztoxLxNu4jFpH7pNPPmHOnDk4Ozvj6upKSUkJ\no0aNYsOGDZ1ugNC9TYyMJO74cayHDsVSLsdSJqP+2DHuiooSSZyBhAUHExYcTIKjo/jQLS3VnedW\nU3P958pk4Ovbkrj16qVJ5m4iNS2Vncd2cvj4YSoOVuAX4Ie7rzsAYwPHMiZgjHiv30RmJqxf37KT\nma0tLFig+d8hCELntKv8yMWLF8nLy8PX15deepQ6MCUxR854UtPT2ZWcTANgBUy4smpVELpcTY3u\nPLebTe9wc2tJ3AIDNRlEO6SmpfJV/Ff/v707j4+qvvoH/pnJvi9kI7uQEIggYSesgaiAsggIAkIA\neYSK2GJtbRWV8CDlsa3Y/kSl0goEJCDuAiqaEII2EFBA1kBYAmEJS/aFZJKZ3x/XmcmQBGYmM9/Z\nPu/XK69y7yz35HQ6Pbn33PNFWVgZzpSegVKlRGNhI3rf3xv/M/J/8EDoA8b/Lg6isBDYskW60g0A\nXl5AWhoQGmrZuIisjVnnyPXq1QuHDh1qsb9v3744ePBgK6+wPBZyRHZAoZAukaoLt2vX7t7n5uWl\nLdzuuw/w9zf60PWN9Vjy7yU45n1Ms+g9ALjIXTBcNRyvzH7F6Pd2FAUFwEcfQbNCg48PMHs2EBRk\n2biIrJFZb3Zo7c5UlUqFc+fOGXxAkThHTiz2V4hll/lWKoGrV7WF26VL2lM5rXFxkc60qYu3kJBW\n+9wMUXG7AvmX8/HT1Z9w7OYx3HaXirjyU+UI7xGOHiE94H3Lu13HcATHjwOffCL9VwoAfn5SEdd8\ndbN7scvPuBVjvsUSMkdu1qxZAID6+nqkpaXpVIoXLlzA/fffb/SBReAcOSIrp1JJY/2b97ndvt32\n8+VyICJCW7hFRkpDyEzgStUV5F3Kw/Ebx6FUSdWHHNIcOWe5M0K8QtC7Y284y53hKueSW3dz5Ajw\n+efak6eBgVIR5+dn2biIrJFZ58ipC6GVK1fi5Zdf1hRycrkcoaGhmDJlCgIN+fNKIF5aJbJS1dW6\nfW4VFXd/fnCwtnCLiQHc3U0WilKlxOlbp5F3KQ9FFUUtHleUKnD5wmVEJUXBSS4VjPVn6jFnxBwk\nxCWYLA57cvAgsH27djs4WOqJ8/GxXExEtsCsPXLffPMNRo8ebVRglsJCjshKNDRIS16pC7eSkrs/\n38dHt8/N19f0ITU14PC1w9hXvA+ldaUtHo/1j0VyZDK6dOiC02dPI+vnLDQoG+Aqd0Vq71QWcW3Y\ntw/45hvtdmioVMR5cbwe0T2ZtZCzRSzkxGN/hVhWm2+lErh8WVu4FRdru91b4+am2+cWFNTuPre2\nVNZXIv9yPg5eOahzAwMgrZHaI6QHBkYOREefji1ea7X5thJ79wJZWdrt8HBpxIiBNwrrYM7FYr7F\nujPfZr3ZgYioTSqVtHimunC7cEE79bU1Tk5Sb5u6cAsPN1mfW1ta639T83D2QN/wvugX0Q++bqY/\n+2fvVCogJwfYs0e7LzoamDHDpFfBiagNPCNHRIarqtIWbufOaVc/b0toqG6fm6v5bxa4V/9boEcg\nkiOT0TOsJ1ydePOCMVQq4LvvgP/+V7vvvvukZbcE/FdMZFd4Ro6IzKe+XjrTpi7cbty4+/P9/HT7\n3LzFjevQt/8tvkM85DK5sLjsjUoF7NwJHDig3RcfD0ydKk2FISIx9CrklEol/v3vf2PLli24ceMG\njh49itzcXFy7dg1Tp041d4xkI9hfIZZZ893UJPW2qQu3y5e1A8Fa4+4uFWzq4i0w0Gx9bm1R97/9\ndOUn1DXW6Twml8nRPaQ7BkYORLiPcetC8fOtpVQCX30FNJ8T360bMHmyXque6Y05F4v5FkvoWqtL\nly7Frl27sHjxYvzmN78BAERERGDx4sUs5IjsgUoFXL+uLdyKirQLY7bGyUlqhFIXbh07SjPeLOBq\n1VXkFefh2PVjLfrf3J3d0Te8L/pH9Gf/m4k0NUkz4o4e1e7r0QN47DGztzoSUSv06pGLjIzEoUOH\nEBwcjICAAJSVlUGpVCIwMBDl5eUi4jQYe+SI7qGiQrfPraam7efKZEBYmLZwi4626PUzlUol9b8V\n5+FC+YUWjwd6BGJg5EAkhSWx/82EmpqAjz8GTp7U7uvVCxg3zmJ1PJHdMGuPnFKphPcdPS41NTXw\n4YRHIttRV6fb53br1t2fHxCg2+fm6SkkzLtpaGrAkWtHsK94H27VtYw/xi8GyVHS/Df2v5mWQiGt\nm3rmjHZfv37AI48Iv4pORM3oVciNGTMGv//97/HWW28BkAq7V199FePGjTNrcO3FtVbFYn+FWPfM\nd2OjtFapunC7cuXuC857eur2uQUEmDxmY1XVV2nmv7XW/3Z/8P0YGDkQEb4RZovBkT/fDQ1AZqa0\nIIdacjLw8MPmLeIcOeeWwHyLJWStVbVVq1Zhzpw58Pf3h0KhgLe3Nx5++GFkZGQYfWARuNYqORSV\nCrh2TbfP7W4Lzjs7S6NA1IVbWJjVnVq5Vn0NeZek/rcmle5QYXdnd/Tp2Af9I/rDz52LeJpLfT3w\n4YfAxYvafcOGASNGWN3HhcgmmXWt1TuVlJSgqKgIUVFR6Nix5eRza8IeObJXRQUFOPv995ArFFA2\nNKBz586IUSql0yW1tW2/UCaThu+qC7eoKNPeYmgiKpUKZ0rPIO9SHs6Xn2/xeIB7gKb/zc3ZzQIR\nOo66OmDTJummZbXUVGDoUMvFRGSvzLpE1+9+9zs8+eST6N+/v1HBWQILObJqKpXUdHS3n4aGFvuK\nzp1D4a5dSJXJgMpK4PZtZDU2Ii4pCTFBQS2P06GDtnCLjW3feklmpmhS4EiJ1P92s/Zmi8ej/aKR\nHJmMhKAE9r8JUFMDbNwoneRVGz0aGDjQcjER2TOzDwR+7LHH4OnpiSeffBIzZsxAQgIXjSZddtNf\noVRKlyTbKKYMKbzafN7dLnnexdn8fKT+etYtp7wcKf7+SHV2Rvb581Ih5+WlLdw6dZIG81q56oZq\nTf9brUL3jKJcJkdicCIGRg5EpG+khSKU2M3nWw9VVUBGhu7c57Fjgb59xcbhSDm3Bsy3WELnyP3z\nn//EqlWrkJ2djc2bN2PgwIHo1KkTZsyYgRdeeKHdQRDpTak0XTHV1mNGFlkiyO8cyuvkBPj5QR4V\nBTzzDBASYjONSyXVJcgrzsPRkqMt+t/cnNzQJ1zqf/N397dQhI6pogLYsAEo/XVRDJkMmDABSEqy\nbFxE1Dqj1lq9fPky5syZg6ysLCjvNu3dgnhpVRxNz1Z9PZRyOToPHYqY++4z7Rks9b+bmu4dkK1w\ncbn3j6urznb2F19gZFWVNLTLwwPw8QHkcmSHhGDkwoWW/o3uSaVSobC0EHnFeThXdq7F4/7u/hgY\nORC9wnqx/80CSkulM3Hq8aByOTBpEtC9u2XjInIEZr+0Wl1djc8++wyZmZma04HWftcqmV/RqVMo\n/M1vpJ6tXz+AWR9/DLTVs2UrWimiDCm47vlcZ2ejzpx1Dg1F1vr1SHXTFjlZ9fWIS0015W9vcoom\nBX4p+QV5xXmt9r9F+UYhOSoZXYO6sv/NQm7elM7EVVVJ205OwJQpQNeulo2LiO5Or0JuypQp2Llz\nJ3r37o0ZM2Zgw4YNCA4ONndsZAPOZmUhVS4HlMrWe7ZMTSYzTSF1t8eNLLJEiElIAObMQXZWFn45\ncQIPJCYiLjVV2m+FqhuqceDyARy4cqBF/5sMMk3/W5RflIUi1J899w+VlEhn4tSLezg7A9OmAXFx\nlo3LnnNujZhvsYT2yPXt2xd///vfERMT0+4Dkn2RKxTS9Rf1JXYnJ8DJCXJXV6lfy9QFl5OT1RZZ\nosQkJCAmIQFyK/7SLakuwb7iffil5JdW+996d+yNAZED2P9mBa5cke5Orft1zrKrKzB9ujQbmois\nn1E9craAPXJiZL/zDkZevSoVczKZpsiylZ4tMh2VSoWzZWeRdykPZ8vOtnjc390fAyIGoHfH3ux/\nsxKXLklz4urrpW03N2DmTGnEIBGJZfIeua5du+LUqVMAgKg2/lctk8lwsfm4b3I4nR98UOrZajZY\n1hZ6tsh0GpWNUv/bpTzcqL3R4vFI30gkRyajW3A39r9ZkQsXgM2bpXuJAOnemVmzpJnRRGQ72jwj\nt3fvXgz9dXx3W2uAyWQyDB8+3GzBtQfPyIlTVFCAs816tjpbcc+WPbF0P0tNQw0OXDmAA5cPoEZR\no/OYDDJ0C+6G5Mhkm+h/04el821KhYXAli3aSTteXkBaGhAaatm47mRPObcFzLdYd+bb5GfkhjZb\ng+XGjRuYMmVKi+d8/PHHBh+Q7I8t9GyR6Vyvua7pf2tU6s7cc3VylfrfIgYgwCPAQhHS3Zw6BWzb\npp3k4+MDzJ4N2PJN5kSOTK8eOR8fH1Sp70lvJiAgAGVlZWYJrL14Ro7IdFQqFc6VnUNecR4KSwtb\nPO7n5ocBkVL/m7uzuwUiJH0cOwZ8+qn23iQ/P6mICwy0bFxEZKY5cufOnYNKpZK+xM/pDu88e/Ys\nPKx43UYASE9PR0pKCs8SERmpUdmIoyVHkVech+s111s8HuETgeSoZHQL6gYnuZMFIiR9HT4MfPGF\nZtwjAgOlIs4GVnEjsms5OTlttrDp465n5OTythuTQ0NDkZ6ejgULFhh9cHPiGTnx2F8hljnzXdNQ\ng4NXDiL/cn6r/W9dg7oiOSoZUb5RkDnIOBhb/nwfPAhs367dDg6WeuJ8fCwXkz5sOee2iPkWy+w9\ncgA0y28NGzYMubm5Br85EdmWGzU3sK94H46UHGm1/61XWC8MiByAQA9ei7MV+/YB33yj3Q4Lk+5O\n9fKyXExEZDqcI0fk4NT9b/uK9+FM6ZkWj/u6+WJAxAD0Ce/D/jcbs3cvkJWl3Y6IkObEWXlXDJFD\nMutaqwqFAu+++y727NmDW7duac7UyWQynqkjslHq/rd9xftQUlPS4vFwn3AkRyYjMTiR/W82RqUC\ndu8Gmn89R0cDTz4pDf0lIvuh13TO3//+9/jXv/6FYcOG4eDBg5g8eTKuX7+OESNGmDs+siHtadYk\nwxmb75qGGuy5sAf/2PcPfFHwhU4Rp+5/m5s0F0/3fho9QnuwiPuVrXy+VSrgu+90i7j77pPOxNla\nEWcrObcXzLdYpsq3XmfkPvnkE+Tl5SEmJgZLly7F4sWLMXr0aMyfPx/Lli0zSSBEZF53639zkbug\nV8deGBg5kP1vNkylAnbuBA4c0O6LjwemTpWWKiYi+6NXj1xAQABu3boFuVyOjh07orCwEJ6envD1\n9W11vpw1YI8ckdT/dr78PPIu5bXa/+bj6oMBkQPQp2MfeLiwccqWKZXAV18Bhw5p93XrBkyeDDjr\n9Sc7EVmSWXvkunbtioMHD6J///7o06cPli1bBh8fH0RGRhp8QCIyv0ZlI45dP4a8S3mt9r919O6I\n5Khk3B98Py+d2oGmJuCzz6SBv2o9egCPPQY48b9eIrumV4/cP//5Tzj/+ifdqlWr8NNPP2H79u14\n//33zRoc2Rb2V4jVWr5rFbXILcrFP/b9A5+f+rxF/1tChwTMSZqD+X3m44HQB1jEGcBaP9+NjcDH\nH+sWcb16ARMn2n4RZ605t1fMt1hCe+T69++v+XeXLl2Q1fx+diKyuJu1N6X+t2tHoFAqdB5zkbsg\nKSwJAyMHooNnBwtFSOagUAAffQScaXbVvF8/4JFHAAeZ00zk8NrskcvKytJrYvvIkSNNHpQpsEeO\n7FVBYQG+/+l7NCgbUHW7Cp6hnqj2rG7xPB9XH/SP6I++4X3Z/2aHGhqAzEzg/HntvkGDgIceYhFH\nZIuMrVvaLORiY2P1KuTON/8WsSIs5MheqFQq1DfVo1ZRi19O/4LMPZlQxipxtfoqqhuq0VjYiKTE\nJASFBwEAwrzDkByZjO4h3Xnp1E7V1wMffghcvKjdN3w4kJLCIo7IVpm8kLN1LOTE4zp9+lE0KVCr\nqG3zp0ZR02KfUiUN4c7/IR+1kbUAgPJT5fDv6g8A8Cr2wswJMzEwciBi/fX7I4wMYy2f77o6YNMm\n4PJl7b7UVGDoUMvFZC7WknNHwXyLJWSt1eYUCgX27duHK1eu4IknnkB1dTVkMhm8uGAfObAmZdNd\ni7LWfu7sYTOEEkqdbblMjjDvMCRGJ2J6j+nt/XXIytXUABkZQEmzG5FHjwYGDrRcTERkWXqdkTt6\n9CjGjx8PNzc3FBcXo7q6Gjt27EBGRga2bt0qIk6D8YwcGUqpUuJ2423prFhDy7Nirf3UN9ULic3V\nyRWeLp7Yv3c/6qPr4SJ3gZerFzp6d4SLkwtCrodg4dSFQmIhy6iqkoq4Gze0+8aOBfr2tVxMRGQ6\nZr20OnjwYCxYsABpaWkICAhAWVkZampqEB8fjytXrhgVsLmxkHNszfvK9P2pU9RBBfN/ZpxkTvB0\n8Wz1x8vVq8U+D2cPuDhJY/kLCguwfvd6uMVr11qqP1OPOSPmICEuweyxk2WUl0tFXGmptC2TARMm\nAElJlo2LiEzHrIVcQEAASktLIZPJNIWcSqVCYGAgysrKjArY3FjIiWeu/gqVSgWF8u59Za39qPvK\nzEkGWZtFWVs/rk6u7ephKygsQNbPWThx7AQSuycitXcqizgBLNU/VFoKbNgAVFRI23K5tFrD/fcL\nD0U49myJxXyLJbRHLiYmBgcPHkS/fv00+w4cOID4+HiDD0j2Rz0O4+TxkzhechwP9nnwroVFo7IR\ndYo6gxr+71wb1Fw8nD0MKsrcnd2F31iQEJeAhLgE5ITwS9fe3bwpFXHqlRCdnIApU4CuXS0bFxFZ\nD73OyG3fvh3z5s3DggUL8Oabb2LJkiVYs2YN1q5di1GjRomI02A8IyfGqTOn8O+sf0PWSQaFUiHd\nkXm6Fg/2eRBB4UFW0Vem74+HswfHdZDVKCmRLqfW1Ejbzs7AtGlAXJxl4yIi8zD7+JFDhw7h/fff\nR1FREaKjo/H000+jT58+Bh9QFBZyYvy/zP+HT+s/bbHfq9gL/Yb0a+UVxnGSObXaP3a3H2c5Vwon\n23TlCrBxozRqBABcXYEZM4DYWIuGRURmZLZLq42NjUhISMCJEyfw3nvvGRWcKVVWVuLBBx/EyZMn\nsX//fiQmJlo6JIemlCkhl8mhVCl15po1oanN18hl8jYvYbZVrLnIXTgb7Q7sZxFLVL4vXZLmxNX/\neuLazQ2YOROIijL7oa0OP+NiMd9imSrf9yzknJ2dIZfLUVdXBzc3t3s93ew8PbUBJHkAACAASURB\nVD2xc+dO/PGPf+QZNyvgInOBh7MHlColGlwa0MGjA1ycXBAcEIyHOj1kNX1lRLbg/Hlp2a2GBmnb\nwwOYNQsID7dsXERkvfS6tPruu+/iiy++wEsvvYSoqCid/xPu1KmTWQNsy9y5c/GHP/wB97dx6xYv\nrYrBcRhEplFYCGzZAjT+el+PlxeQlgaEhlo2LiISw6x3rS5atAgA8N1337U4aFNT25fQyP4lxCVg\nDuYg6+csNCgb4Cp3ReoIjsMgMsSpU8C2bYD669THB5g9GwgKsmxcRGT95Po8SalUtvpjaBG3evVq\n9O3bF+7u7pg7d67OY6WlpZg4cSK8vb0RGxuLzMxMzWNvvfUWRowYgTfffFPnNbw8Zx0S4hKwcOpC\nJIUlYeHUhSziBMnJybF0CA7FXPk+dgz46CNtEefvD8ydyyIO4GdcNOZbLFPlW+htfREREXj11Vfx\n7bffok59O9avnn32Wbi7u+P69es4dOgQHn30UfTs2ROJiYl4/vnn8fzzz7d4P146JSJbdvgw8MUX\ngPqrLDBQOhPn52fZuIjIdggt5CZOnAgAOHjwIIqLizX7a2pq8Omnn+L48ePw9PTE4MGDMWHCBGzc\nuBErV65s8T6PPPIIjhw5goKCAixYsACzZ89u9Xhz5sxB7K/36/v7+yMpKUlzh4i6Eua2abfVrCUe\ne99Ws5Z47H1bzRTvV1AAXL0qbV+4kAM/P+CFF1Lg42M9vy+3uc1t836fpKen48KFC2gPvefImdIr\nr7yCy5cvY926dQCkGXVDhgxBjXryJYBVq1YhJycHX375pVHH4M0ORGSt9u0DvvlGux0WJt2d6uVl\nuZiIyLKMrVvkZojlnu7sbauuroavr6/OPh8fH1Sp16Uhm9D8rwwyP+ZbLFPle+9e3SIuIkK6nMoi\nriV+xsVivsUyVb4NvrSqVOouRC6XG14L3llxent7o7KyUmdfRUUFfHx8DH5vIiJrpFIBu3cDubna\nfdHRwJNPSkN/iYiMoVcV9tNPPyE5ORmenp5wdnbW/Li4uBh10DvPyHXp0gWNjY0oLCzU7Dty5Ai6\nd+9u1Purpaen8y8MgdTX/0kM5lus9uRbpQJ27dIt4u67T1qxgUVc2/gZF4v5Fqt5z1x6errR76NX\nj1z37t0xfvx4zJw5E56enjqPxRqw+F9TUxMUCgWWLVuGy5cvY+3atXB2doaTkxOmT58OmUyGf//7\n3/j5558xduxY5OXloVu3bgb/UgB75IjIOqhUwM6dwIED2n3x8cDUqYCRfwsTkR0ya4/cxYsXsWLF\nCiQmJiI2NlbnxxDLly+Hp6cn3njjDWzatAkeHh5YsWIFAGn1iLq6OoSEhGDmzJlYs2aN0UUcWQbP\nforFfItlTL6VSmm8SPMirls3YNo0FnH64GdcLOZbLKE9chMnTsS3336L0aNHt+tg6enpbZ4+DAgI\nwGeffdau9ycishZNTcBnn0kDf9V69AAmTgSMaC0mImqVXpdWp06diq+++gpDhw5FaLOF/2QyGTIy\nMswaoLF4aZWILKWxEfjkE+DkSe2+Xr2AceNYxBFR68y61mpiYiISExNbPag1S09PR0pKChs4iUgY\nhUJacuvMGe2+/v2BMWMAK//KJCILyMnJaddlVosMBBaBZ+TEy8nJYdEsEPMtlj75bmgAMjOB8+e1\n+wYNAh56iEWcMfgZF4v5FuvOfJv8jFxubi6GDRsGAMjOzm7zDUaOHGnwQYmI7M3t28DmzcDFi9p9\nw4cDKSks4ojIfNo8I9e9e3cc+7VLNzY2ts3LqOeb/+lpRXhGjohEqasDNm4ErlzR7ktNBYYOtVxM\nRGRbjK1beGmViKgdamqAjAygpES7b/RoYOBAy8VERLbHptZaFYUrO4jFXIvFfIvVWr6rqoB167RF\nnEwm3ZnKIs40+BkXi/kWS53v9q7soNddqxUVFUhPT8eePXtw69YtzXqrMpkMF5s3hFiZ9iSGiOhu\nysulM3GlpdK2TAY89hjQs6dl4yIi26KerrFs2TKjXq/XpdWZM2fi0qVLeP755zFr1ixs3LgRf/vb\n3zB58mT8/ve/N+rA5sZLq0RkLqWlwIYNQEWFtC2XA5MnA/ffb9m4iMh2mbVHLjg4GCdPnkRQUBD8\n/PxQUVGBy5cvY9y4cfj555+NCtjcWMgRkTncuCGdiauqkradnKR1UxMSLBsXEdk2s/bIqVQq+Pn5\nAQB8fHxQXl6Ojh074kzziZfk8NhfIRbzLVZOTg6uXQPWr9cWcc7OwPTpLOLMhZ9xsZhvsYSutfrA\nAw8gNzcXqampGDJkCJ599ll4eXkhgd9eRGTnCgqK8P33Z3HgwC8oK1MiKqozgoJi4OoKzJgBxMZa\nOkIicmR6XVo9e/YsAKBz584oKSnByy+/jOrqaixdurTVpbusgUwmw9KlS7lEFxEZraCgCOvXF+L2\n7VT88gvQ1AQ0Nmahf/84PP98DKKiLB0hEdk69RJdy5Yt4xy55tgjR0Tt9c472SgoGIljx4Bfb9aH\nszMwcmQ2Xn6Zq9oQkemYfImu5v7zn/+0urKDm5sbIiMjMXDgQLi5uRl8cLIvXKdPLObb/IqK5Dh6\nFFCpgPLyHAQHp6BnT8DT065HcFoNfsbFYr7FMlW+9SrkMjIykJeXh7CwMERGRqK4uBjXrl1D3759\nUVRUBAD4/PPP0a9fv3YHRERkDfbvB44dU0L9B7KLC9CrF+DpCbi6Ki0bHBHRr/S6tPrss88iISEB\nv/3tbwFId7G+8847OHnyJN5++2385S9/wY4dO5CXl2f2gPXFS6tEZAyVCti9G8jNBW7eLMLhw4Xw\n9U1Fz56AmxtQX5+FOXPikJAQY+lQiciOmHWOnL+/P0pLSyGXay8nNDY2IigoCOXl5aivr0dwcDAq\nKysNDsBcWMgRkaGUSmDHDuCnn7T7nJ2L4O19FoAcrq5KpKZ2ZhFHRCZn1jlyoaGh+PLLL3X27dix\nA6GhoQCAuro6uLq6Gnxwsi+cQSQW821ajY3Atm26RVx8PPDiizFYvHgkkpKAhQtHsogTiJ9xsZhv\nsYTOkXv77bcxZcoUdO/eXdMjd/ToUWzbtg0AkJ+fj+eee84kAZlSeno6x48Q0T3V1wNbtgDnz2v3\nPfAAMGGCtHIDEZG5qMePGEvv8SM3b97Ezp07ceXKFYSHh+PRRx9Fhw4djD6wufHSKhHpo7oa+PBD\n4OpV7b6BA4FRo4BWbtYnIjILs/bI2SIWckR0L2VlwMaNQGmpdt+DDwKDB7OIIyKxzNojR6QP9leI\nxXy3T0kJ8J//aIs4mQwYPx4YMqT1Io75Fo85F4v5FktojxwRkT0pKgIyM4Hbt6VtZ2fg8ceBrl0t\nGxcRkaF4aZWIHEpBgXR3amOjtO3mBkyfDsTGWjQsInJwZr+02tDQgNzcXGzduhUAUF1djerqaoMP\nSERkKYcPA1u3aos4b29g7lwWcURku/Qq5I4ePYqEhATMnz8f8+bNAwDs2bNH828igP0VojHfhvnx\nR+Dzz6WhvwAQEAA89RQQFqbf65lv8ZhzsZhvsUyVb70Kud/85jdYtmwZTp06BRcXFwBASkoK9u7d\na5IgiIjMRaUCdu0CvvtOuy8sDJg3DwgMtFxcRESmoFePXEBAAEpLSyGTyRAQEICysjKoVCoEBgai\nrKxMRJwGk8lkWLp0KQcCEzkwpRL48kvpkqpaTIzUE+fubrm4iIjU1AOBly1bZr45cklJSVi7di36\n9eunKeTy8/OxaNEi5OfnGxW4ufFmByLHplBINzWcPq3d17WrdHeqM+/XJyIrY9abHV5//XWMHTsW\nr732GhoaGvCXv/wFjz/+OJYvX27wAcl+sb9CLOa7bXV10qDf5kVc797A1KnGF3HMt3jMuVjMt1hC\ne+TGjh2Lb775Bjdu3MDw4cNx8eJFfPbZZxg1apRJgiAiMpWqKmDdOuDiRe2+oUOBceMAOUegE5Gd\n4Rw5IrIbt25JZ+LKy7X7Ro0CkpMtFxMRkT7Meml14sSJLe5Qzc3NxeOPP27wAYmIzOHKFeCDD7RF\nnFwOTJrEIo6I7JtehdyePXuQfMe3YXJyMrKzs80SFNkm9leIxXxrnT8PrF8P1NRI2y4u0p2pDzxg\numMw3+Ix52Ix32IJXWvVw8MDNTU18PPz0+yrqamBq6urSYIgIjLWiRPAJ58ATU3StocHMGMGEBVl\n2biIiETQq0du7ty5uH37NtasWQM/Pz9UVFRg4cKFcHFxwfr16wWEaTj2yBHZv4MHgR07pKG/AODr\nC8ycCYSEWDYuIiJDmbVH7s0330RlZSUCAwMRHByMwMBAVFRU4K233jL4gERE7aVSAXv2ANu3a4u4\nDh2kJbdYxBGRI9GrkAsMDMSOHTtQXFys+c/t27cjICDA3PGRDWF/hViOmm+VCvj6a2D3bu2+8HCp\niPP3N99xHTXflsSci8V8iyW0R07NyckJQUFBqKurw7lz5wAAnTp1Mkkg5pCens4luojsSFMT8Nln\nwLFj2n2dOgFPPAG4uVkuLiIiY6mX6DKWXj1y33zzDebNm4erV6/qvlgmQ5O6w9jKsEeOyL40NABb\ntwJnz2r33X8/MHEil9wiIttnbN2iVyHXqVMnvPjii0hLS4Onp6dRAYrGQo7IftTWAh9+CFy+rN3X\nrx8wZgxXayAi+2DWmx3Ky8uxYMECmyniyDLYXyGWo+S7okIa9Nu8iEtJAR55RGwR5yj5tibMuVjM\nt1hC11qdN28ePvjgA5MckIhIXzduAP/5D3DzprQtkwGPPioVcjKZRUMjIrIKel1aHTJkCPLz8xET\nE4OwsDDti2Uy5ObmmjVAY/HSKpFtKy6WLqfW1UnbTk7Sklv332/ZuIiIzMGsPXJtDf2VyWSYPXu2\nwQcVgYUcke0qLJRubFAopG1XV2DaNOkOVSIie2TWQs4WsZATLycnh6NeBLLXfB89Ko0YUSqlbU9P\nabWG8HDLxmWv+bZmzLlYzLdYd+bb2LpF75v2S0pKsH//fty6dUvnQE899ZTBByUias3+/dKwXzV/\nf2DWLGnVBiIiakmvM3Kff/45Zs6cifj4eBw7dgzdu3fHsWPHMGTIEOxuPl7divCMHJHtUKmklRqa\nt9yGhEhn4nx9LRcXEZEoZh0/smTJEnzwwQc4dOgQvL29cejQIbz//vvo3bu3wQckImpOqZTWTG1e\nxEVFAXPnsogjIroXvQq5S5cuYerUqZptlUqFtLQ0ZGRkmC0wsj2cQSSWPeS7sRHYtg346Sftvi5d\ngLQ0wMPDcnG1xh7ybWuYc7GYb7GErrUaEhKCa9euISwsDLGxscjLy0NQUBCU6m5kIiID3b4NbNkC\nXLig3dezJzB+vDRqhIiI7k2vHrn/+7//Q1xcHB5//HFkZGRg/vz5kMlkeOGFF/D666+LiNNg7JEj\nsl7V1cCmTcC1a9p9ycnAww9z0C8ROSah40eKiopQU1ODxMREgw8oCgs5IutUVgZs3AiUlmr3PfQQ\nMGgQizgiclxmvdnhTjExMVZdxJFlsL9CLFvM97Vr0pJb6iJOJgMmTAAGD7b+Is4W823rmHOxmG+x\nhK61evjwYYwcORIBAQFwcXHR/Li6upokCHNJT0/nB5PIShQVAevWSZdVAcDZGXjiCaBXL8vGRURk\nSTk5OUhPTzf69XpdWu3WrRsef/xxTJ06FR533EoWFxdn9MHNiZdWiazHqVPAxx9Ld6kCgJsbMGMG\nEBNj2biIiKyFWXvkAgICUFpaCpm1X/tohoUckXU4dAj48ktp6C8AeHtLg37DwiwbFxGRNTFrj1xa\nWho+/PBDg9+cHAsvY4tl7flWqYAffwS++EJbxAUGAvPm2WYRZ+35tkfMuVjMt1hC58i99NJLGDhw\nIFauXImQkBDNfplMhuzsbJMEQkT2Q6UCvvsO+O9/tfvCwqQzcd7elouLiMje6HVpdejQoXB1dcXE\niRPh7u6ufbFMhnnz5pk1QGPx0iqRZTQ1SZdSjxzR7ouNBaZNA5p9fRARUTNm7ZHz8fHBzZs34ebm\nZlRwlsBCjkg8hUJacuv0ae2+bt2AyZOlu1SJiKh1Zu2RGzp0KE6cOGHwm5NjYX+FWNaW77o6ICND\nt4jr0weYMsU+ijhry7cjYM7FYr7FEtojFxsbi4cffhiTJk1q0SP3v//7vyYJhIhsV2WltOTW9eva\nfcOGASNGWP+gXyIiW6bXpdW5c+dCpVLpjB9Rb69bt86sARqLl1aJxLh1S1pyq7xcu2/0aGDgQMvF\nRERka4ytW+55Rq6pqQmRkZFYsmSJzo0ORERXrkhn4mprpW25HHjsMeCBBywbFxGRo7hnj5yTkxPe\ne+89q1+OiyyP/RViWTrf584B69drizgXF2m1Bnst4iydb0fEnIvFfIsldK3VtLQ0vPfeeyY5IBHZ\nvuPHgQ8/BBoapG0PD2D2bMBKV+wjIrJbevXIDR48GPn5+QgPD0dUVJSmV04mkyE3N9fsQRqDPXJE\n5nHgALBzp3a1Bl9fYNYsIDjYsnEREdkys86RW79+fZsHnT17tsEHFYGFHJFpqVRAbi6we7d2X1CQ\nVMT5+VkuLiIie2DWQs4WsZATLycnBykpKZYOw2GIzLdKBXz9NZCfr90XEQE8+STg6SkkBIvj51s8\n5lws5lusO/Nt1oHAKpUKH3zwAUaMGIEuXbpg5MiR+OCDD1goETmApibgk090i7jOnaWeOEcp4oiI\nrJVeZ+RWrFiBjIwMvPDCC4iOjsbFixfx1ltv4cknn8Qrr7wiIk6D8YwcUfvV1wMffQScPavd1707\nMHEi4ORkubiIiOyNWS+txsbGYs+ePYiJidHsKyoqwtChQ3Hx4kWDDyoCCzmi9qmpATZvBi5f1u7r\n3x8YM4arNRARmZpZL63W1tYiKChIZ1+HDh1w+/Ztgw9I9osziMQyZ77Ly4F163SLuBEjHLuI4+db\nPOZcLOZbLKFz5EaPHo2ZM2fi1KlTqKurw8mTJ5GWloZRo0aZJAhD5OfnY9CgQRg+fDhmzJiBxsZG\n4TEQ2bPr14EPPgBu3pS2ZTJg7Fhg+HDHLeKIiKyVXpdWKyoq8Nxzz2Hr1q1QKBRwcXHB1KlT8fbb\nb8Pf319EnBrXrl1DQEAA3Nzc8PLLL6NPnz6YPHlyi+fx0iqR4S5dki6n1tVJ205OwOTJQGKiZeMi\nIrJ3Jr+0unr1as2/b9y4gYyMDNTW1uLq1auora3Fxo0bhRdxABAWFgY3NzcAgIuLC5zYcU1kEmfO\nABkZ2iLO1VUaL8IijojIerVZyL388suaf/fu3RuAtO5qaGioVRRPRUVF+O677zBu3DhLh0K/Yn+F\nWKbM9y+/AJmZgEIhbXt5AXPmAJ06mewQNo+fb/GYc7GYb7FMlW/nth7o1KkTXnjhBSQmJkKhUGjm\nxqmX51L/+6mnntL7YKtXr8b69etx7NgxTJ8+HevWrdM8Vlpainnz5uG7775DUFAQVq5cienTpwMA\n3nrrLXz55ZcYO3YsXnjhBVRWViItLQ0bNmywiqKSyJbt2wd88412299fWq2hQwfLxURERPpps0eu\noKAAf/3rX1FUVIScnBwMHTq01TfY3Xy9nnv47LPPIJfL8e2336Kurk6nkFMXbf/5z39w6NAhPPro\no/jvf/+LxDuu6zQ2NmL8+PH4wx/+gJEjR7b9i7FHjuiuVCogOxvYu1e7LyREKuJ8fCwXFxGRIzLr\nHLnU1FRkZWUZFVhrXn31VRQXF2sKuZqaGgQGBuL48eOIi4sDAMyePRvh4eFYuXKlzms3btyI559/\nHj169AAAPPPMM5g6dWqLY7CQI2qbUgls3w78/LN2X3Q0MH064OFhubiIiByVsXVLm5dW1RobG/Hj\njz+ivr5ec5NBe90Z6OnTp+Hs7Kwp4gCgZ8+erV4/njVrFmbNmqXXcebMmYPY2FgAgL+/P5KSkjTr\nmqnfm9um2z58+DAWL15sNfHY+7ax+W5sBP73f3Nw8SIQGys93tiYg+howMPDen4/a9vm51v8tnqf\ntcRj79vqfdYSj71vHz58GOXl5bhw4QLaQ68zcj179sTOnTsRERHRroOp3XlGbu/evZg6dSquXr2q\nec7atWuxefNmgy7dNsczcuLl5ORoPqhkfsbk+/ZtYMsWoPn3RlISMG4cl9y6F36+xWPOxWK+xboz\n32Y7IwcATz75JMaNG4ff/va3iIqK0tzwAOCufWptuTNQb29vVFZW6uyrqKiADxt1bAq/AMQyNN/V\n1cCmTcC1a9p9gwYBDz3EQb/64OdbPOZcLOZbLFPlW69C7t133wUALFu2rMVj58+fN/igsjv+X6NL\nly5obGxEYWGh5vLqkSNH0L17d4Pfm4haKi0FNm4Eysq0+x56CBg82HIxERFR+8n1edKFCxdw4cIF\nnD9/vsWPIZqamnD79m00NjaiqakJ9fX1aGpqgpeXFyZNmoTXXnsNtbW1+OGHH/DVV1/p3QvXlvT0\ndJ1r/2RezLVY+ub72jVpyS11ESeXAxMmsIgzFD/f4jHnYjHfYqnznZOTg/T0dKPfR69CDgAUCgX2\n7t2LrVu3AgCqq6tRU1Nj0MGWL18OT09PvPHGG9i0aRM8PDywYsUKANJZv7q6OoSEhGDmzJlYs2YN\nunXrZtD73yk9PZ2nismhXbgArFsnXVYFAGdn4IkngF69LBoWERH9KiUlpV2FnF43Oxw9ehTjx4+H\nm5sbiouLUV1djR07diAjI0NT2Fkb3uxAju7UKeDjj4HGRmnb3V0aLxITY9m4iIioJbPOkRs8eDAW\nLFiAtLQ0BAQEoKysDDU1NYiPj8eVK1eMCtjcWMiRIzt0CPjyS2noLwB4e0uDfkNDLRsXERG1zti6\nRa9LqydOnGjRr+bp6Yk69eraVoo9cmIx12K1lm+VCvjhB+CLL7RFXGAgMG8ei7j24udbPOZcLOZb\nLKE9cjExMTh48KDOvgMHDiA+Pt7oA4vAHjlyJCoVsGsX8P332n0dOwJPPQUEBFguLiIiapuQHrnt\n27dj3rx5WLBgAd58800sWbIEa9aswdq1azFq1CijD25OvLRKjqSpSbqUeuSIdt999wHTpgEmWpCF\niIjMyKw9cgBw6NAhvP/++ygqKkJ0dDSefvpp9OnTx+ADisJCjhxFQwOwbRtw5ox2X7duwOTJ0l2q\nRERk/cxeyNkaFnLicXkXsXJycjBgQAo2bwYuXdLu79MHePRRaV4cmQ4/3+Ix52Ix32KZaokuvb7q\n6+vr8eqrryIuLg6enp6Ij4/HK6+8gtu3bxt8QJF4swPZs5oaadBv8yJu2DBg7FgWcUREtqK9Nzvo\ndUbuqaeewunTp7FkyRJER0fj4sWLWLFiBeLj4zUL31sbnpEje1VQUITPPz+LvDw5GhqU6NSpM4KC\nYjBmDDBggKWjIyIiY5j10mpgYCDOnj2LgGa3vpWWlqJz584oa754oxVhIUf26NSpIvztb4W4eDEV\nCoW0T6nMwh/+EIfx4znpl4jIVpn10mrHjh1RW1urs6+urg7h4eEGH5DsFy9jm49KJd3MsHTpWZw9\nKxVx5eU5kMuBpKRUFBeftXSIdo+fb/GYc7GYb7FMlW+97mmbNWsWxowZg0WLFiEqKgoXL17Eu+++\ni7S0NGRnZ2ueN3LkSJMERURaly5Js+GKioCKCu3fXk5OQFIS4OsLNDSwKY6IyBHpdWk1NjZWerJM\nptmnUql0tgHg/Pnzpo2uHXhplWzd9etAVhZQUKDdl5+fjdu3RyIqCoiK0o4XCQnJxsKF/EOKiMhW\nGVu36HVG7sKFCwa/sTVQr+zA26nJlpSXAzk50nDf5v+blsuBCRM648yZLHh7p2r219dnITU1Tnyg\nRETUbjk5Oe26zMo5cmQynEHUPjU1wN69wIED0koNzfXoAYwYIa2bWlBQhKysszhx4hckJj6A1NTO\nSEjgjQ7mxs+3eMy5WMy3WKaaI8e570QWVl8P7NsH/Pe/0r+bi48HUlOBsDDtvoSEGCQkxCAnR84v\nXSIiB8czckQW0tQEHDwI5OZKZ+Oai4wEHnwQ+LU9lYiI7BzPyBHZCJUKOHoUyM6W+uGaCw6WzsAl\nJAB33EtERETUAmcWkMlwBtHdqVTA6dPAmjXAp5/qFnF+fsBjjwHPPAN07apfEcd8i8V8i8eci8V8\niyV0jhwRtc/Fi9IsuIsXdfd7egJDhwL9+mlHiRAREenLrnvkli5dyvEjZFGtzYIDAFdXIDlZ+nF3\nt0xsRERkeerxI8uWLTPfWqu2iDc7kCWVlwO7dwO//KI7C87JCejTBxg2DPD2tlx8RERkXcy61iqR\nPthfId19+s03wNtv6w70lcmABx4AFi0CHnnENEUc8y0W8y0ecy4W8y0We+SIrEh9PZCXJ82Ca2jQ\nfay1WXBERESmwEurRO3Q2Aj89FPrs+CioqRZcDFcdIGIiO6Bc+SIBFIqpVlwu3e3nAUXEiKdgevS\nhbPgiIjIvNgjRybjCP0V6llw//oX8Nlnrc+C+81vxAz0dYR8WxPmWzzmXCzmWyz2yBEJdrdZcMOG\nAX37chYcERGJxR45onsoKZFmwZ0+rbtfPQtu0CDAzc0ysRERkX1gj1wr0tPTORCYjHa3WXB9+0or\nMnAWHBERtYd6ILCxeEaOTCYnJ8cuiuaaGuku1IMHgaYm7X6ZDOjRAxgxAggIsFx8avaSb1vBfIvH\nnIvFfIt1Z755Ro6one42C65LF+lO1NBQy8RGRETUGp6RI4fX2CidfcvNBWprdR/jLDgiIhKBZ+SI\nDMRZcEREZOs4R45MxlZmEKlUQEEBsGZNy1lw/v7AxIniZsG1h63k214w3+Ix52Ix32JxjhyRETgL\njoiI7Al75Mgh3G0W3KBB0jw4zoIjIiJLYY8cUSvKyqQeuKNHW58FN2wY4OVlufiIiIjagz1yZDLW\n1F9RXQ18/TWwerXuQF+ZDOjZE1i0CBgzxraLOGvKtyNgvsVjzsVivsVifYHyAQAAEfxJREFUjxxR\nK+rrpTlweXmcBUdERPbPrnvkli5dyiW6HMTdZsFFR0uz4KKjLRMbERFRW9RLdC1btsyoHjm7LuTs\n9FejZpRK6dLp7t1ARYXuY5wFR0REtsLYuoU9cmQyIvsrms+C+/xz3SLOlmbBtQf7WcRivsVjzsVi\nvsVijxw5rKIiaRbcpUu6+728pLtQ+/ThLDgiInIMvLRKNqOkRCrgzpzR3c9ZcEREZOs4R47s1t1m\nwfXrBwwdattjRIiIiIzFHjkyGVP3V1RXAzt3tj0L7rnngNGjHbeIYz+LWMy3eMy5WMy3WOyRI7t1\nt1lwCQnSnaghIZaJjYiIyJqwR46sRmMjcOAAsHcvZ8EREZFjYY8c2ax7zYJ78EEgPt5+x4gQEREZ\niz1yZDKGXu9XqYBTp4D33mt9FtykSdIsOA70bR37WcRivsVjzsVivsVijxzZNM6CIyIiaj/2yJFQ\n164BWVmtz4IbPBgYOJCz4IiIyPGwR46sWlkZkJ0tzYJrjrPgiIiIjMceOTKZ1q73q2fBvf22bhEn\nkwFJSZwF1x7sZxGL+RaPOReL+RaLPXJk1W7flmbB7dvHWXBERETmYtc9ckuXLkVKSgpSUlIsHY7D\nuNssuJgYaZRIVJRlYiMiIrI2OTk5yMnJwbJly4zqkbPrQs5OfzWrU1BQhF27zqKoSI7z55Xo2LEz\ngoJiNI+HhkoFXFwcx4gQERG1xti6hT1y1C6nThXhzTcL8fXXI/H998CtWyNx+HAhbt4sQkCAdhYc\nB/qaHvtZxGK+xWPOxWK+xWKPHFmFzMyzOH06VWefh0cqPD2zsWhRDJycLBQYERGRA+ClVWqXt97K\nQVZWCqqrpVEiUVHST4cOOVi8OMXS4REREdkEzpEji3B1VaJTJ6C0VFrQ3tVVu5+IiIjMiz1y1C4P\nPtgZXl5ZiIsDrlzJAQDU12chNbWzReNyBOxnEYv5Fo85F4v5Fos9cmQVEhJiMGcOkJWVjZs3f0FI\niBKpqXFISIi552uJiIiofdgjR0RERGRhHD9CRERE5GBYyJHJsL9CLOZbLOZbPOZcLOZbLFPlm4Uc\nERERkY1ijxwRERGRhbFHjoiIiMjBsJAjk2F/hVjMt1jMt3jMuVjMt1jskSMiIiJycOyRIyIiIrIw\n9sgRERERORgWcmQy7K8Qi/kWi/kWjzkXi/kWiz1yRERERA7O5nrkSkpKMGnSJLi6usLV1RWbN29G\nhw4dWjyPPXJERERkK4ytW2yukFMqlZDLpROJGzZswNWrV/HnP/+5xfNYyBEREZGtcJibHdRFHABU\nVlYiICDAgtFQc+yvEIv5Fov5Fo85F4v5Fsuhe+SOHDmCAQMGYPXq1Zg+fbqlw6FfHT582NIhOBTm\nWyzmWzzmXCzmWyxT5VtoIbd69Wr07dsX7u7umDt3rs5jpaWlmDhxIry9vREbG4vMzEzNY2+99RZG\njBiBN998EwDQs2dP7N+/H6+//jqWL18u8leguygvL7d0CA6F+RaL+RaPOReL+RbLVPkWWshFRETg\n1VdfxVNPPdXisWeffRbu7u64fv06PvzwQzzzzDM4ceIEAOD555/H7t278cILL0ChUGhe4+vri/r6\nemHx3017T5Ea+np9nn+357T1mL77LX0K3hTHN+Q9zJXvth7Td59I1vYZN/Zx5tv45/M7xXTvwe8U\n+/6Mi8y30EJu4sSJmDBhQou7TGtqavDpp59i+fLl8PT0xODBgzFhwgRs3LixxXscPnwYw4cPx8iR\nI7Fq1Sq8+OKLosK/K3v+QLa2v7XnXbhw4Z4xmQq/dMXmu7Xjm/v11lbIOXq+7/UcfqfwO8VQ9vwZ\nF5lvi9y1+sorr+Dy5ctYt24dAODQoUMYMmQIampqNM9ZtWoVcnJy8OWXXxp1jLi4OJw9e9Yk8RIR\nERGZU8+ePY3qm3M2Qyz3JJPJdLarq6vh6+urs8/HxwdVVVVGH6OwsNDo1xIRERHZAovctXrnSUBv\nb29UVlbq7KuoqICPj4/IsIiIiIhsikUKuTvPyHXp0gWNjY06Z9GOHDmC7t27iw6NiIiIyGYILeSa\nmppw+/ZtNDY2oqmpCfX19WhqaoKXlxcmTZqE1157DbW1tfjhhx/w1VdfYdasWSLDIyIiIrIpQgs5\n9V2pb7zxBjZt2gQPDw+sWLECAPDuu++irq4OISEhmDlzJtasWYNu3bqJDI+IiIjIptjcWqvt9ac/\n/Ql5eXmIjY3FBx98AGdni9zv4TAqKyvx4IMP4uTJk9i/fz8SExMtHZJdy8/Px+LFi+Hi4oKIiAhk\nZGTwM25GJSUlmDRpElxdXeHq6orNmze3GK9E5pGZmYnf/e53uH79uqVDsWsXLlxAv3790L17d8hk\nMnz00UcICgqydFh2LScnB6+//jqUSiV++9vf4rHHHrvr821yiS5jHTlyBFeuXEFubi66du2Kjz/+\n2NIh2T1PT0/s3LkTjz/+uFGLAZNhoqOjsXv3buzZswexsbH44osvLB2SXQsODsaPP/6I3bt3Y8aM\nGVi7dq2lQ3IITU1N2LZtG6Kjoy0dikNISUnB7t27kZ2dzSLOzOrq6rBq1Sp8/fXXyM7OvmcRBzhY\nIZeXl4dRo0YBAEaPHo0ff/zRwhHZP2dnZ/4PX6CwsDC4ubkBAFxcXODk5GThiOybXK79Cq2srERA\nQIAFo3EcmZmZmDp1aosb58g8fvzxRwwbNgxLliyxdCh2Ly8vDx4eHhg3bhwmTZqEkpKSe77GoQq5\nsrIyzUgTX19flJaWWjgiIvMoKirCd999h3Hjxlk6FLt35MgRDBgwAKtXr8b06dMtHY7dU5+Ne+KJ\nJywdikMIDw/H2bNnkZubi+vXr+PTTz+1dEh2raSkBIWFhdi+fTuefvpppKen3/M1NlnIrV69Gn37\n9oW7uzvmzp2r81hpaSkmTpwIb29vxMbGIjMzU/OYv7+/Zl5dRUUFAgMDhcZty4zNeXP861l/7cl3\nZWUl0tLSsGHDBp6R01N78t2zZ0/s378fr7/+OpYvXy4ybJtmbM43bdrEs3FGMDbfrq6u8PDwAABM\nmjQJR44cERq3rTI23wEBARg8eDCcnZ0xcuRIHD9+/J7HsslCLiIiAq+++iqeeuqpFo89++yzcHd3\nx/Xr1/Hhhx/imWeewYkTJwAAgwYNwvfffw8A+PbbbzFkyBChcdsyY3PeHHvk9GdsvhsbGzFt2jQs\nXboU8fHxosO2WcbmW6FQaJ7n6+uL+vp6YTHbOmNzfvLkSWRkZGDMmDE4c+YMFi9eLDp0m2Rsvqur\nqzXPy83N5feKnozNd79+/XDy5EkA0trynTt3vvfBVDbslVdeUc2ZM0ezXV1drXJ1dVWdOXNGsy8t\nLU315z//WbP9xz/+UTV06FDVzJkzVQqFQmi89sCYnI8ZM0YVHh6uSk5OVq1fv15ovLbO0HxnZGSo\nOnTooEpJSVGlpKSotm7dKjxmW2Zovvfv368aNmyYasSIEaqHH35YdenSJeEx2zpjvlPU+vXrJyRG\ne2Jovnfu3Knq06ePaujQoarZs2ermpqahMdsy4z5fL/zzjuqYcOGqVJSUlTnzp275zFsei6B6o4z\nPKdPn4azszPi4uI0+3r27ImcnBzN9l//+ldR4dklY3K+c+dOUeHZHUPzPWvWLA7SbgdD892/f3/s\n2bNHZIh2x5jvFLX8/Hxzh2d3DM33mDFjMGbMGJEh2hVjPt8LFy7EwoUL9T6GTV5aVbuzR6K6uhq+\nvr46+3x8fFBVVSUyLLvGnIvFfIvFfIvHnIvFfIslIt82XcjdWel6e3trbmZQq6io0NypSu3HnIvF\nfIvFfIvHnIvFfIslIt82XcjdWel26dIFjY2NKCws1Ow7cuQIunfvLjo0u8Wci8V8i8V8i8eci8V8\niyUi3zZZyDU1NeH27dtobGxEU1MT6uvr0dTUBC8vL0yaNAmvvfYaamtr8cMPP+Crr75iz5AJMOdi\nMd9iMd/iMediMd9iCc13e+/IsISlS5eqZDKZzs+yZctUKpVKVVpaqnrsscdUXl5eqpiYGFVmZqaF\no7UPzLlYzLdYzLd4zLlYzLdYIvMtU6k43IuIiIjIFtnkpVUiIiIiYiFHREREZLNYyBERERHZKBZy\nRERERDaKhRwRERGRjWIhR0RERGSjWMgRERER2SgWckREREQ2ioUcEdEd5syZg1dffdWk7/nMM8/g\n9ddfN+l7EhE5WzoAIiJrI5PJWix23V7vvfeeSd+PiAjgGTkiolZx9UIisgUs5IjIqrzxxhuIjIyE\nr68vunbtiuzsbABAfn4+kpOTERAQgPDwcDz33HNQKBSa18nlcrz33nuIj4+Hr68vXnvtNZw9exbJ\nycnw9/fHtGnTNM/PyclBZGQkVq5cieDgYNx3333YvHlzmzFt374dSUlJCAgIwODBg3H06NE2n/v8\n888jNDQUfn5+eOCBB3DixAkAupdrx40bBx8fH82Pk5MTMjIyAACnTp3CQw89hA4dOqBr167Ytm1b\nm8dKSUnBa6+9hiFDhsDX1xejRo3CrVu39Mw0EdkDFnJEZDUKCgrwzjvv4ODBg6isrMSuXbsQGxsL\nAHB2dsY///lP3Lp1C3l5ecjKysK7776r8/pdu3bh0KFD2LdvH9544w08/fTTyMzMxMWLF3H06FFk\nZmZqnltSUoJbt27hypUr2LBhA+bPn48zZ860iOnQoUOYN28e1q5di9LSUixYsADjx49HQ0NDi+d+\n++232Lt3L86cOYOKigps27YNgYGBAHQv13711VeoqqpCVVUVPvroI3Ts2BGpqamoqanBQw89hJkz\nZ+LGjRvYsmULFi5ciJMnT7aZs8zMTKxfvx7Xr19HQ0MD/v73vxucdyKyXSzkiMhqODk5ob6+HseP\nH4dCoUB0dDQ6deoEAOjduzf69+8PuVyOmJgYzJ8/H3v27NF5/Ysvvghvb28kJiaiR48eGDNmDGJj\nY+Hr64sxY8bg0KFDOs9fvnw5XFxcMGzYMDz66KPYunWr5jF10fX+++9jwYIF6NevH2QyGdLS0uDm\n5oZ9+/a1iN/V1RVVVVU4efIklEolEhISEBYWpnn8zsu1p0+fxpw5c/DRRx8hIiIC27dvx3333YfZ\ns2dDLpcjKSkJkyZNavOsnEwmw9y5cxEXFwd3d3dMnToVhw8fNiDjRGTrWMgRkdWIi4vDP/7xD6Sn\npyM0NBTTp0/H1atXAUhFz9ixY9GxY0f4+flhyZIlLS4jhoaGav7t4eGhs+3u7o7q6mrNdkBAADw8\nPDTbMTExmmM1V1RUhDfffBMBAQGan+Li4lafO2LECCxatAjPPvssQkNDsWDBAlRVVbX6u1ZUVGDC\nhAlYsWIFBg0apDnW/v37dY61efNmlJSUtJmz5oWih4eHzu9IRPaPhRwRWZXp06dj7969KCoqgkwm\nw5/+9CcA0viOxMREFBYWoqKiAitWrIBSqdT7fe+8C7WsrAy1tbWa7aKiIoSHh7d4XXR0NJYsWYKy\nsjLNT3V1NZ544olWj/Pcc8/h4MGDOHHiBE6fPo2//e1vLZ6jVCoxY8YMpKam4n/+5390jjV8+HCd\nY1VVVeGdd97R+/ckIsfCQo6IrMbp06eRnZ2N+vp6uLm5wd3dHU5OTgCA6upq+Pj4wNPTE6dOndJr\nnEfzS5mt3YW6dOlSKBQK7N27Fzt27MCUKVM0z1U//+mnn8aaNWuQn58PlUqFmpoa7Nixo9UzXwcP\nHsT+/fuhUCjg6empE3/z4y9ZsgS1tbX4xz/+ofP6sWPH4vTp09i0aRMUCgUUCgUOHDiAU6dO6fU7\nEpHjYSFHRFajvr4eL730EoKDg9GxY0fcvHkTK1euBAD8/e9/x+bNm+Hr64v58+dj2rRpOmfZWpv7\ndufjzbfDwsI0d8DOmjUL//rXv9ClS5cWz+3Tpw/Wrl2LRYsWITAwEPHx8Zo7TO9UWVmJ+fPnIzAw\nELGxsQgKCsIf//jHFu+5ZcsWzSVU9Z2rmZmZ8Pb2xq5du7BlyxZERESgY8eOeOmll1q9sUKf35GI\n7J9MxT/niMjB5OTkYNasWbh06ZKlQyEiaheekSMiIiKyUSzkiMgh8RIkEdkDXlolIiIislE8I0dE\nRERko1jIEREREdkoFnJERERENoqFHBEREZGNYiFHREREZKP+P8n938hzEeMBAAAAAElFTkSuQmCC\n", + "text": [ + "" + ] + } + ], + "prompt_number": 70 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
\n", + "So, using a few tweaks, such as static type declarations and explicit for-loops instead of list comprehensions, we managed to increase the performance of our least squares fit implementation quite significantly - it outperforms the alternative functions in Numpy and Scipy now." + ] } ], "metadata": {} diff --git a/benchmarks/cython_least_squares.ipynb b/benchmarks/cython_least_squares.ipynb index fafb461..2e97429 100644 --- a/benchmarks/cython_least_squares.ipynb +++ b/benchmarks/cython_least_squares.ipynb @@ -1,7 +1,7 @@ { "metadata": { "name": "", - "signature": "sha256:caecd42da39e4b55b4dc50c985b30a04ee3eac4a88d143732c4441ecc28fc1e0" + "signature": "sha256:b8a2adab4cfa8ac1064656d4b3e3121a2acc1060e034c98ce29986312939c9ac" }, "nbformat": 3, "nbformat_minor": 0, @@ -13,7 +13,7 @@ "metadata": {}, "source": [ "[Sebastian Raschka](http://www.sebastianraschka.com) \n", - "last updated: 05/04/2014\n", + "last updated: 05/06/2014\n", "\n", "- [Link to this IPython Notebook on GitHub](https://github.com/rasbt/python_reference/blob/master/benchmarks/cython_least_squares.ipynb) \n", "- [Link to the GitHub repository](https://github.com/rasbt/python_reference)" @@ -73,7 +73,8 @@ "- [Bonus: How to use Cython without the IPython magic](#cython_bonus)\n", "- [Appendix I: Cython vs. Numba](#numba)\n", "- [Appendix II: Cython with and without type declarations](#type_declarations)\n", - "- [Appendix III: Cython performance after replacing list comprehensions by explicit for loops](#explicit_loops)" + "- [Appendix III: Cython performance after replacing list comprehensions by explicit for loops](#explicit_loops)\n", + "- [Final Comparison: Cython vs. NumPy vs. SciPy for least squares fitting](#showdown)" ] }, { @@ -1005,8 +1006,7 @@ "\n", "funcs = ['cy_classic_lstsqr', \n", " 'lin_lstsqr_mat', 'numpy_lstsqr', 'scipy_lstsqr']\n", - "labels = ['classic approach (cython)', 'matrix approach', \n", - " 'numpy function', 'scipy function']\n", + "\n", "orders_n = [10**n for n in range(1, 7)]\n", "times_n = {f:[] for f in funcs}\n", "\n", @@ -1057,6 +1057,15 @@ ], "prompt_number": 34 }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
\n", + "In this performance comparison for different sample sizes, we see that our Cython approach is actually not so fast anymore. However, this is just the simplest approach to using Cython. There are a lot of tweaks that can be made. In a [later section](#showdown) we will come back to this comparison and see how the Cython version of our simple least squares implementation holds up against the other approaches\n", + "
" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -2193,6 +2202,195 @@ } ], "prompt_number": 88 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
\n", + "
\n", + "
" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Final Comparison: Cython vs. NumPy vs. SciPy for least squares fitting" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To wrap it up, let us compare the Cython code of our simple least squares fit implementation to the Numpy and Scipy functions - after we made some improvements by adding static type declarations and explicit for loops." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "%load_ext cythonmagic" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 1 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "%%cython\n", + "\n", + "def cy_lstsqr(x, y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " cdef double x_avg, y_avg, temp, var_x, cov_xy, slope, y_interc, x_i, y_i\n", + " x_avg = sum(x)/len(x)\n", + " y_avg = sum(y)/len(y)\n", + " var_x = 0\n", + " for x_i, y_i in zip(x,y):\n", + " temp = (x_i - x_avg)\n", + " var_x += temp**2\n", + " cov_xy += temp*(y_i - y_avg)\n", + " slope = cov_xy / var_x\n", + " y_interc = y_avg - slope*x_avg\n", + " return (slope, y_interc)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 2 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import numpy as np\n", + "import scipy.stats" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 3 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "def lin_lstsqr_mat(x, y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " X = np.vstack([x, np.ones(len(x))]).T\n", + " return (np.linalg.inv(X.T.dot(X)).dot(X.T)).dot(y)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 4 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "def numpy_lstsqr(x, y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " X = np.vstack([x, np.ones(len(x))]).T\n", + " return np.linalg.lstsq(X,y)[0]" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 5 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "def scipy_lstsqr(x,y):\n", + " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", + " return scipy.stats.linregress(x, y)[0:2]" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 6 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import timeit\n", + "import random\n", + "random.seed(12345)\n", + "\n", + "funcs = ['cy_lstsqr', 'lin_lstsqr_mat',\n", + " 'numpy_lstsqr', 'scipy_lstsqr'] \n", + "\n", + "orders_n = [10**n for n in range(1, 6)]\n", + "times_n = {f:[] for f in funcs}\n", + "\n", + "for n in orders_n:\n", + " x = [x_i*random.randrange(8,12)/10 for x_i in range(n)]\n", + " y = [y_i*random.randrange(10,14)/10 for y_i in range(n)]\n", + " for f in funcs:\n", + " times_n[f].append(min(timeit.Timer('%s(x,y)' %f, \n", + " 'from __main__ import %s, x, y' %f)\n", + " .repeat(repeat=3, number=1000)))" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 26 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#%pylab inline\n", + "#import matplotlib.pyplot as plt\n", + "\n", + "labels = [('cy_lstsqr', 'Cython implementation'), \n", + " ('lin_lstsqr_mat', 'numpy matrix equation'),\n", + " ('numpy_lstsqr', 'numpy.linalg.lstsq()'), \n", + " ('scipy_lstsqr', 'scipy.stats.linregress()')] \n", + "\n", + "matplotlib.rcParams.update({'font.size': 12})\n", + "\n", + "fig = plt.figure(figsize=(10,8))\n", + "for lb in labels:\n", + " plt.plot(orders_n, times_n[lb[0]], alpha=0.5, label=lb[1], marker='o', lw=3)\n", + "plt.xlabel('sample size n')\n", + "plt.ylabel('performance gain relative to the slowest approach')\n", + "plt.xlim([1,max(orders_n) + max(orders_n) * 10])\n", + "plt.legend(loc=2)\n", + "plt.grid()\n", + "plt.xscale('log')\n", + "plt.yscale('log')\n", + "plt.title('Performance of least square fit implementations for different sample sizes')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n44cFB3d5aZCuuOaFCxf49NNPuffee/H39ycvL4+9e/cSHR3N3Llzefvtt7n33nt5++23CQ4OJj09\nneLiYh544IHrXvPLL78kPDycoUOHsnbtWg4dOsRHH32k85zHH3+c+fPno1areeSRRwDYsmULL7/8\nMvHx8fj4+PDFF18gSRLDhg3DxcWFXbt2UVlZqZ3DGBQUREFBAYcOHSI0NBR7e3sCAgKwtrbmX//6\nF88++yyZmZksWbJE5/+ru7s7Dg4O/Prrr0RERGBtbY1SqeTPf/4z99xzD3379qWuro7NmzfTu3dv\nbZmMl19+mSNHjrBz585OxVyfXs5Vq1Zx11138dxzz7FgwQIcHR05f/48mzZt4sMPP8TGxobnnnuO\n5cuXEx4ezrBhw/jpp5/YsWPHTf8YGj9+PBMnTmTmzJm8/fbbDBgwgNLSUn7//XdsbW155JFHbhr7\nm8VqzJgx11yFLEkShw8f5u233+5A5ATh1pRWksY3Sd+0SuIuMy3XgTpbR9Z4eVHi4QH9+4OFBZNd\nXRnh7GziFgvdnqSHffv2Sd7e3pJSqZTkcrmkVColCwsLKSgoSJ9vv6bNmzdLP/zwg/Q///M/Umxs\nrM5jc+bMkebMmSNVV1dL+/fvl5ydnaXk5GSd58TGxkpJSUnXvf6NXpqeL9vs5OfnSzNnzpT8/f0l\na2trydfXV3rsscekiooKSZIkqaCgQHrooYckd3d3ycbGRoqIiJC+/vprSZIkKSMjQ5LL5dKBAwe0\nxzKZTFq7dq00duxYycbGRgoODpY2bNhw1X0bGxslT09PaerUqdpzX331lSSXy6WsrCxJkjT/P0eN\nGiUplUrJzs5OGjBggPTll1/qXGPevHmSq6urJJPJpJUrV0qSJEmbNm2S+vTpI9nY2EhRUVHSnj17\nJIVCoW23JEnS6tWrpaCgIEmhUGjfc0899ZTUt29fydbWVnJzc5OmTp0qpaSkaL8nNjZW5/0ZHx8v\nyeVyKTc397rxaH3cLDQ0VNtWSZIkmUwmrVu37qoY7du3T5o4caLk6Ogo2dvbSxEREdIzzzwjNTU1\nSZIkSWq1Wnr55Zcld3d3ycHBQZo7d670xhtvSI6OjtprrFixQurTp89V166trZWWLFkiBQUFSVZW\nVpK3t7c0ZcoUKT4+Xq/Y3yxWRUVFko2NjXTs2DGd++7fv1+yt7eXKisrr2pTe3XXnzlBaI9zReek\n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\n", + "text": [ + "" + ] + } + ], + "prompt_number": 70 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
\n", + "So, using a few tweaks, such as static type declarations and explicit for-loops instead of list comprehensions, we managed to increase the performance of our least squares fit implementation quite significantly - it outperforms the alternative functions in Numpy and Scipy now." + ] } ], "metadata": {}