{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Setting Up" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# To support both python 2 and python 3\n", "from __future__ import division, print_function, unicode_literals\n", "\n", "# Common imports\n", "import numpy as np\n", "import numpy.random as rnd\n", "import os\n", "\n", "# to make this notebook's output stable across runs\n", "rnd.seed(42)\n", "\n", "# To plot figures\n", "%matplotlib inline\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "plt.rcParams['axes.labelsize'] = 14\n", "plt.rcParams['xtick.labelsize'] = 12\n", "plt.rcParams['ytick.labelsize'] = 12" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Where to save the figures\n", "PROJECT_ROOT_DIR = \".\"\n", "\n", "def save_fig(fig_id, tight_layout=True):\n", " path = os.path.join(PROJECT_ROOT_DIR, \"images\", fig_id + \".png\")\n", " print(\"Saving figure\", fig_id)\n", " if tight_layout:\n", " plt.tight_layout()\n", " plt.savefig(path, format='png', dpi=300)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Matplotlib Refresher" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "https://www.labri.fr/perso/nrougier/teaching/matplotlib/" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# This line configures matplotlib to show figures embedded in the notebook, \n", "# instead of opening a new window for each figure. More about that later. \n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo1: Plotting a line" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nKQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = [1, 2, 3, 4]\n", "plt.plot(x)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You have a set of points and you need to plot it?" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nD4BQbi7somNnAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = [1, 3, 4, 6]\n", "y = [4, 3, 2, 9]\n", "\n", "plt.plot(x, y, 'bo')\n", "plt.show()\n", "\n", "# The 3rd argument is optional and default draws a 'line with blue color'. We have changed that to a 'dot'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 2: Plotting sine and cosine waves" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X = np.linspace(-np.pi, np.pi, 256, endpoint=True)\n", "C,S = np.cos(X), np.sin(X)\n", "\n", "plt.plot(X, C)\n", "plt.plot(X, S)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Working with shapes in a plot:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(X, C, 'r--')\n", "plt.plot(X, S, 'g--')\n", "plt.show()\n", "\n", "# A few examples:\n", "# To get squares: 's'\n", "# To get triangles: '^'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Controlling the minute parameters related to the plots using the `setup()` command:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lines = plt.plot(X, S)\n", "# use keyword args\n", "plt.setp(lines, color='r', linewidth=2.0)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using labels, titles and annotations:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAbQAAAE9CAYAAABji5dWAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmcnfP9/vHXlX0PIUIRai1R0XZKW0FQjaWWllqS2glR\nO7VHJWKtpdZo1E5olRStqrb2qLQTFYSKWoJvgkSQRRZJ3r8/Pmd+M53MZGaSmbnvc871fDzOI/fc\n5z73eZ8Y58rnvj+LIgIzM7Ni1ybrAszMzJqDA83MzEqCA83MzEqCA83MzEqCA83MzEqCA83MzEqC\nA83MrAxJmtvM57tA0unNec6mcqCZmVlJcKCZmZUxJb+U9KqkVyQdUOO5Mwv7Jkm6tLDvaEn/Kux7\nQFKXBs5/u6TRkl6Q9LakgZJulfS6pNtrHDdaUqWkyZJGFPb1lPSGpE0LP98r6ej63qvdSv5dmJlZ\ncfsxsBXQH1gd+JekZwr79ga2iYgvJPUqHP9gRNwMIGkUcCRwXQPvsSrwXWAv4GFgW+CownttFREv\nAedGxCxJbYG/S9oyIl6WdDxwu6RrgFWr3rsubqGZmZW3AcC9EbEkIj4Cnga+DXwfuC0ivgCIiFmF\n47eQ9KykV4AhQL9GvMcjkeZZfAX4KCJeiYilwGRg/cIx+0t6Efh34ZybF973r4XX3UAKwXo50MzM\nrCluB46PiK8DI4BOjXjNwsKfS2tsV/3cTtJXgdOBnSNiS+BPVeeV1AbYDPiC1NKrlwPNzKy8PQsc\nIKmtpN7A9sA/gb8Ch1fdI6txybE7MF1Se1ILrTn0AOYBn0vqA+xW47lTgNeBwcBthfetk++hmZmV\nt3Gk+1uTgADOiIgPgcckbQVUSloEPAqcAwwHJgAzCn92X9kCImKSpH8D/wHeB8YDFDqDHAVsHRFz\nCvf2zgN+Udd55OVjzMysFPiSo5mZlQQHmpmZlQQHmpmZlQQHmplZiZHURdLdknbIupbW5E4hZmYl\nRFJX4AnSTB+LgR9ExPhsq2odbqGZmZUISd2BZ4AtgQ5AF+Avkr6TaWGtxC00M7MSIKknKcw2BTrW\nenoWsHqU+Be+B1abmRU5SasCzwEbsmyYzQeOKfUwAweamVlRk7QaaWaNr5IuM9Y0HzgwIh5u9cIy\n4EAzMytShbkX/wGsy7Jh9gXwk4h4tNULy4gDzcysCBUm8X0BWBuoPWHvF8CPIuLxVi8sQw40M7Mi\nI2ktUpitRd1htmdEPNHqhWXMgWZmVkQkrUMKsz4s+x0+D9g9Ip5p9cJywIFmZlYkJK1HCrPeQNta\nT88jDaJ+vtULywkHmplZESis6vwCsBrLhtlc4PsRMaHVC8sRB5qZWc5J2ojUm7EXy87wNAfYMSIm\ntnphOeOpr8zMcqywavME6g6zz4HtHWaJW2hmZjklaXPSDCCrAKrxVFAdZq9kUVseOdDMzHJI0teB\nZ4EeLBtmnwEDIuK1LGrLKweamVnOSNoKeJoUZjUtBT4Fto2IN1q9sJzzPTQzsxyRVEGaNb+uMJsF\nfMdhVjcHmplZTkjaBngS6F7rqSXATGDriPhvqxdWJBxoZmY5IGlb4O9At1pPLQE+Br4dEe+0emFF\nxIFmVoukP0s6NMP3306SLymVEUk7AI8DXWs9tRj4kNQye6/VCysyDjQreZLelfT9wvZhkp5b3vER\nsVtE3NHCNfWT9LikWZI+kzRR0u6F9382IjZtyffPiqQLJN2ddR15Imln4FGgS62nFgPTSC2zD1q9\nsCLkQDPLxiPAX4E1gTWAE4HZmVZkrU7SIOBhlg2zL4H3SS2z6a1eWJFyoFnZkLQZcBPwXUlzJX1W\nz3FPSTqqsL2RpKclfS5ppqTfLuf890v6sHDsM5L61XPc6qTVhW+OiEWFx/iIeK7w/EBJH9Q4/l1J\np0t6uXDu30rqVOP5H0p6qdDSe17SlvW87whJ1xW220uaJ+mXhZ87S1ogqdfyPoukbQr729Y4748k\nvVzYbiPpLElvSfpE0u+qzmn/S9IewDiWDbNFwFRgm4j4qNULK2IONCsbEfE6cCzwj4joFhGrNOJl\nF5LubawKrANct5xj/wxsTGpxvQjcU89xnwD/Be6WtE9hocaG7A/sSgrCLYHDACR9A7gVOIY0ae2v\ngYcldazjHE8DAwvb3ybdm9m+8PN3gTciYtbyPkth8tt5wE41zjsYGFvYPgHYB9gB+AppzNQNjfh8\nZUXS3sD9QOdaTy0C3iGF2YxWL6zIOdDMlu9LYD3gKxGxoKoVVZeIuDUi5kTEQuACoL+knnUcF8CO\nwLvAlcD0Qito4+XUcW1ETCsEziPAVoX9Q4FfR8SEiFhSuPe3EPhOHef4B7CxpNVIQXYLsLakbqQA\nerqRn+Ve4CAASd2B3Qv7IP2D4dyI+KDGa/eT5EkcCiTtR/r7qh1mC4E3SePMZi3zQmuQA81s+c4g\nTTv0T0mTJR1R10GS2kq6tHCpbTYprABWr+v4whf+8RGxISkw5wF3LqeOD2tsf0F11+71gNMKlxs/\nK1xGXZfUOqr9nvOBSlJ4bU8KsOeBbakRaI34LGOBHxdagT8GXoyIqTXqGVejltdJ3c4b0woteZIO\nJP13rivM3iDNAFLnpXBrmP/VZOUmmnRwxIfA0QCSBgB/k/RMHYNbBwN7A98nBUBP0uU20YCIeF/S\nDVS3cprifeCiiLiokcc/Tbpc+A3gX4WfBwFbk2angAY+S0S8JmkqsBv/e7mxqp4jImJ8XW8eERc0\nss6SI+lg0iXh2mG2AHgNGBgRc1q9sBLiFpqVm4+AdSR1aMzBkn5SWPIe0pd6kKYgqq076V/Zn5Bu\n8l+8nHOuWuigsVGhE8XqwBGkxRub6mbg2EJnDUnqKmmPwqXAujwNHAK8FhGLgKeAo4B3atyzacxn\nGQucRGrp3V9j/03ARUorKyOpd+F+UVmTdCT1h9kk0qz5DrOV5ECzcvMEMBn4UNLMRhz/bWCCpLmk\n7tUnRcTbdRx3J6ln2v+R/rW9vHBaBKwP/I3UVf9VUoAc1riPUC0iKkktyOtJgfvfBs7zPOlLtao1\n9hrpS/WZGsc05rPcS7pM+URE1Px7vIb09/S4pDmF125T9aSkcyT9ppEfr6hIWlvSqnXsHwZcy7Jh\nNh+YCOwUEfNaocSSp3R/2szMVoakCUBvavRQlHQicAnLds2fD/wT2DUiFrRqoSXMgWZmtpIkrUm6\n39iGwhgy4HBgJHWH2fPAHoWeoNZM3CnEzGzl7U/qzdmR1NPzP6R5GWuH2Reky7t7F+5hWjNyC83M\nbCVJegXYooHDviDNpr9vRHzZ8lWVH3cKMTNbCYUenRs1cNgXwF+AHzvMWo5baHVYffXVY/3118+6\nDDMrAtOnT2f69OnU913apk0bevTowQYbbIDU4LDEojZx4sSZEdE7q/f3PbQ6rL/++lRWVmZdhpkV\ngY022qjeMAPo0KEDm2yyCU8++SRdutS+pVZaCgPuM+NLjmZmK+iNN95g2rRpyz1mwYIFvPzyy+yy\nyy4sWOAe+i3JgWZmtoLuvvtulixZ0uBxCxYsYMKECQwdOrQVqipfvuRoZrYCIoLbbruNRYvq733f\nvn17OnToQJcuXTjggAM49thjW7HC8uNAMzNbAS+//DKffvrpMvs7dOhAu3bt6NWrF0OGDOGAAw5g\nq622KvkOIXngQDMzWwF33HEHCxemiT46dUoLiK+77rocfPDB7Lfffmy22WZZlleWcnkPTdLxkiol\nLZR0ewPHnlJYEn62pFtrrtQrqZekcYWl5qdKGtzixZtZWbj//vuJCLbccktGjRrF66+/zpQpUxg+\nfLjDLCN5baFNA0aR1mmqPUP1/ydpEHAWaX2nacA4YERhH6Sl3xeRFhfcCviTpEkRMbnlSjezcnD3\n3Xez6aabsuaaa2ZdihXkMtAi4kEASRXAOss59FDglqqAkjSStE7TWZK6AvsCW0TEXOA5SQ8BB1Md\neGZWCj79FP71L3jtNXjjDfjkE/jsM1iyBDp3hu7dYf31YcMN4RvfgP79od3Kff3tsMMOzVO7NZtc\nBloT9AMeqvHzJKCPpNWAvsDiiJhS6/mBdZ1I0lBgKEDfvn1bpFgza0avvQZjx8Jf/gITJ0JTZj3q\n1g223x722w/22QdWXWYZMytCxR5o3YDPa/w8u/Bn98Jzs2sdP7vw3DIiYgwwBqCiosLzgZnl0cKF\nKcSuvx5efLF6f4cO8O1vw9e/DpttBn36wCqrQNu2MH9+aq29/TZMmQIvvJC2H300PY45JgXbySfD\n1ltn99lspRV7oM0FetT4uWfhzzl1PFf1vJc5Nys2CxfCjTfCFVdA1cwcPXvC/vvDvvvCdttBU6aV\nmjYN/vQn+O1v4ckn4d5702O77eCSS2DbbVvmc1iLymUvxyaYDPSv8XN/4KOI+ASYArSTtHGt590h\nxKxYRMDvfw+bbw6nnpqC6OtfhzvvhA8/hDFjYNCgpoUZwFe+AkcfDX/7G7zzDpxxRmrRPfssDBgA\ne+0Fb73VMp/JWkwuA01SO0mdgLZAW0mdJNXVmrwTOFLS5pJWBYYDtwNExDzgQWCkpK6SBgB7AXe1\nyocws5XzwQfwwx/CT36SLhFuvjk8/DBMmgQHHwyFsV8rrW9fuOwymDoVzj8funaFRx6BLbaASy+F\nL73aS7HIZaAB55GWKT8L+Glh+zxJfSXNldQXICIeAy4HniQte/4O8Isa5zmO1O3/Y1Lvx2Husm9W\nBO64A/r1S/e4VlkFRo9OQbbnntBSM2706AEjRqSW2U9/CgsWwNlnw3e/C2++2TLvac3K66HVoaKi\nIrx8jFkG5s2D445LlxQB9t47hdlaa7V+LX/9a7osOXVq6hV5442pZWj1kjQxIiqyev+8ttDMrNy8\n9VbqZXjnnWns2K23wrhx2YQZwC67pFbhAQfA3LlwyCFw4omweHE29ViDHGhmlr1nn4Vttkljyzbb\nLA2SPvzwlru82Fg9e6bej2PGpKEB110Hu+4Ks2ZlW5fVyYFmZtm67z7Yeec0u8fuu6dxYv36ZV1V\nNSldenzyyTS+7e9/T937P/gg68qsFgeamWVn9GgYPDj1JDzppNSLsUft4aM58b3vpZZjv36pJfm9\n78Hrr2ddldXgQDOzbFx2WeoAEpG6x//qV2lmjzxbd1145pkUZu+/n6bPevXVrKuyAgeambW+q66C\ns85Kl/N+/Ws488ysK2q8Xr1SD8hdd4WZM2HHHR1qOeFAM7PWddNNcNppafuWW2Do0GzrWRFduqQe\nmDVDzZcfM+dAM7PWc8cdMGxY2r7hhtSTsVh16vS/oTZokDuKZMyBZmat4w9/gCOOSNtXXJHunxW7\nTp3ggQfSbCLvv5/C7dNPs66qbDnQzKzl/etfqTfj0qVwwQXVlxxLQZcu8Mc/pvFzkyeniY3nz8+6\nqrLkQDOzlvXee9Vf8kcckSYALjW9eqWFRtdZB557DoYMSeFtrcqBZmYtZ/Zs2GOPtNTLTjulDiFZ\nz/7RUtZdFx57LE2mPG5cmujYWpUDzcxaxpIlcOCBqUv7176W1jVr3z7rqlpWv35p5pM2bWDkyHR/\nzVqNA83MWsYFF8Cf/wyrr55Wh1511awrah2DBsHll6ftQw+Fl1/Otp4ykstAk9RL0jhJ8yRNlTS4\nnuNuKqyPVvVYKGlOjeefkrSgxvNvtN6nMCtjf/wjjBqVWiq//S1ssEHWFbWuU09Na6rNm5eWwJk5\nM+uKykIuAw24AVgE9AGGAKMlLTNbaUQcGxHdqh7AvcD9tQ47vsYxm7Z45Wbl7u23q9cNu+iidO+s\n3Ehphv5vfxvefTe11NxJpMXlLtAkdQX2BYZHxNyIeA54CFjuyno1XndHy1dpZnWaPx/23Rc++yy1\nTIppSqvm1rlzuofWq1daefuqq7KuqOTlLtCATYDFETGlxr5JQEPrSewLzACeqbX/EkkzJY2XNLD5\nyjSzZZx8Mrz0Emy4Idx+e+n2aGysdddNfw8AZ5+dlsaxFpPHQOsGzK61bzbQvYHXHQrcGRFRY9+Z\nwAbA2sAY4BFJG9b1YklDJVVKqpwxY8aKVW5WzsaNS5fZOnZMLZNVVsm6onzYc0845ZS00vWBB3om\nkRaUx0CbC9ReEKknMKeOYwGQ1BcYCNxZc39ETIiIORGxMCLuAMYDu9d1jogYExEVEVHRu3fvlanf\nrPxMmwZHHZW2L7sM+vfPtp68ufRSqKiAqVPhyCPTkjnW7PIYaFOAdpI2rrGvPzB5Oa85GBgfEW83\ncO4AyvwaiFkzW7oUDjkEZs1KXdZPOCHrivKnQ4fU27NHj9SSrboMac0qd4EWEfOAB4GRkrpKGgDs\nBdy1nJcdAtxec4ekVSQNktRJUjtJQ4DtgcdaqHSz8nTVVfD3v0Pv3umLuk3uvlbyYYMN4Prr0/ZJ\nJ6Xej9as8vqbdxzQGfgYGAsMi4jJkvoWxpP1rTpQ0neBdVi2u357YBSpo8hM4ARgn1qdTcxsZbz8\nMpxzTtq+9VZYc81s68m7n/4UfvxjmDMHDjvMXfmbmcLXcpdRUVERlZWVWZdhlm9ffgnf+Q68+CIc\nc0yap9EaNmMGbLEFfPxxat2eckrWFTUbSRMjoiKr989rC83M8u7yy1OYrbce/PKXWVdTPHr3hptv\nTttnnw2vvZZtPSXEgWZmTffqq9Wzyd9yC3RvaFSN/Y+99kpL6SxcmP5csiTrikqCA83Mmmbx4nT/\n58sv06XGnXfOuqLidPXVsPbaMGFCdWcRWykONDNrmiuugIkToW/f6lnlrel69IAbb0zb557rXo/N\nwIFmZo333/9WX2r8zW/Sl7KtuL32gv33T7PyH3usB1yvJAeamTVOBBx3HCxYkAZS77JL1hWVhmuv\nTWvF/eUvcM89WVdT1BxoZtY4990Hf/1rmj3+iiuyrqZ09OlTPRP/ySd77bSV4EAzs4Z9+mn6soXU\nRd/znTavQw9NnWs++SR15bcV4kAzs4adfXYaCLzddnD44VlXU3qk1NOxfft0b3LChKwrKkoONDNb\nvhdegF//On3Z3nST1zhrKV/7Gpx2Wtr+2c88Nm0FONDMrH5Ll8Lxx6ftn/8cNt8823pK3XnnpUVB\nJ06snk3EGs2BZmb1u+229OW69trVkxBby+natbqDyDnnpHkfrdEcaGZWt88+q+6gcMUV6cvWWt6+\n+6YhEZ9+6g4iTeRAM7O6jRiRWgjbbQcHHJB1NeVDguuuS/csb7kl3cO0RnGgmdmyXnstfam2aZMG\n/rojSOvadFM4/fS0/bOfed20RsploEnqJWmcpHmSpkoaXM9xh0laUlj0s+oxsKnnMbMaIuDEE1Mv\nu2OOga22yrqi8nTuubDOOmmJnjvvzLqaopDLQANuABYBfYAhwGhJ/eo59h8R0a3G46kVPI+ZAfzh\nD/D3v6fpmC68MOtqylfXrnDJJWn7nHPSfI+2XLkLNEldgX2B4RExNyKeAx4CDs7iPGZlZcGC6rFQ\nF14Iq62WbT3lbvBgqKiA6dO9skEj5C7QgE2AxRExpca+SUB9LatvSJopaYqk4ZLareB5zOy66+Cd\nd2CLLdLlRstWmzZp3TRIU4598EG29eRcHgOtGzC71r7ZQF1L4j4DbAGsQWqNHQT8fAXOg6Shkiol\nVc7w2A8rRzNnwkUXpe0rr4R27ZZ/vLWOAQNgv/1g/nyPBWxAHgNtLlB7kaWewJzaB0bE2xHxTkQs\njYhXgJHAfk09T+FcYyKiIiIqenviVStHF14In38OP/hBelh+XHYZdOgAd90FlZVZV5NbeQy0KUA7\nSRvX2NcfmNyI1wZQ1b94Zc5jVl7efDOtniylS1uWLxtsACedlLZPOcULgdYjd4EWEfOAB4GRkrpK\nGgDsBdxV+1hJu0nqU9j+GjCc1PGjSecxK3tnnw2LF8Nhh8GWW2ZdjdXl3HNh9dXhuefggQeyriaX\nchdoBccBnYGPgbHAsIiYLKlvYaxZ38JxOwMvS5oHPEoKsIsbOk9rfQizovD88+kLsnNnd9PPs549\nYeTItH322fDll9nWk0MKN12XUVFREZW+Tm3lIAK23Rb+8Q8YPrz6C9PyafFi6NcPpkxJl4iHDcu6\nov8haWJEVGT1/nltoZlZa3jggRRma6yRloexfGvXDi4uXIQaMQLmzs22npxxoJmVqy+/hLPOStsj\nR0L3Oke0WN78+Mew9dbw0Ufwq19lXU2uONDMytWtt8Jbb8Emm8CRR2ZdjTWWBJdemrYvvzyNHzTA\ngWZWnubPr75fNmqUB1EXmx13hF13hTlzqgfDmwPNrCxdfz1Mmwbf/GZaUNKKT9XExTfeCFOnZltL\nTjjQzMrN559XX7K66KI0X6AVn622giFDYNEiOP/8rKvJBf8mm5WbK6+EWbNg++1h0KCsq7GVceGF\naWXru+6Cl1/OuprMOdDMysnHH8NVV6Xtiy/2StTF7qtfhWOPTeMJ3UpzoJmVlYsvTgtF7rFHGlBt\nxe/cc6FLF3joIfjXv7KuJlMONLNy8d57MHp02nbPuNLRpw+ccELaHj4821oy5kAzKxcjRqQOBAcd\nBP37Z12NNaef/zwNjP/LX+DZZ7OuJjMONLNy8J//wO23Q9u2KdistKy2Gpx6atoePrxsl5dxoJmV\ng/PPh6VL04wgG2/c8PFWfE45BVZdFZ5+Gp54IutqMuFAMyt1r7wC998PHTuW/T2WktazZ/UE0+ed\nV5atNAeaWamrWuPs6KNhnXWyrcVa1gknQO/e8MIL8OijWVfT6nIZaJJ6SRonaZ6kqZIG13PcoZIm\nSpot6QNJl0tqV+P5pyQtKCwKOlfSG633KcxyYPJk+P3voUMHOPPMrKuxltatW1r8E8ryXlouAw24\nAVgE9AGGAKMl9avjuC7AycDqwDakFaxPr3XM8RHRrfDYtAVrNsufUaPSl9pRR7l1Vi6OPRa+8hX4\n979h3Lisq2lVuQs0SV2BfYHhETE3Ip4DHgIOrn1sRIyOiGcjYlFE/B9wD+DRomYAr78Ov/1tmhqp\nat0zK32dO6fB1pA6Ay1Zkm09rSh3gQZsAiyOiCk19k0C6mqh1bY9MLnWvkskzZQ0XtLA+l4oaaik\nSkmVM2bMaHLRZrlT1To78khYd92sq7HWdOSRsN566ZLzb3+bdTWtJo+B1g2YXWvfbGC5y+lKOgKo\nAK6osftMYANgbWAM8IikDet6fUSMiYiKiKjo3bv3itZulg9vvAH33ZdaZ1X3VKx81OzROnJk2bTS\n8hhoc4Eetfb1BObU9wJJ+wCXALtFxP9fvjUiJkTEnIhYGBF3AOOB3VugZrN8GTUqjTs7/HDo2zfr\naiwLhxwC66+f/nHzu99lXU2ryGOgTQHaSao5+rM/y15KBEDSrsDNwJ4R8UoD5w7A04tbaZsyBcaO\nTatQu3VWvtq3r76XduGFZdFKy12gRcQ84EFgpKSukgYAewF31T5W0k6kjiD7RsQ/az23iqRBkjpJ\naidpCOke22Mt/ynMMnTRRal1dthh6V/oVr4OOSTdS3v99TR8o8TlLtAKjgM6Ax8DY4FhETFZUt/C\neLKqayjDSZcjH60x1uzPhefaA6OAGcBM4ARgn1qdTcxKy3//C/fck1pn55yTdTWWtQ4dqn8PRo5M\n/9ApYe0aPqT1RcQsYJ869r9H6jRS9fOOyznHDODbLVKgWV5ddFG6tHTEEWnxR7PDDku/F6+9llpp\n+++fdUUtJq8tNDNrqrfegrvuSjPqV907MSujVpoDzaxUXHxxap0dfDBssEHW1VieHH54Gos4eTI8\n+GDW1bQYB5pZKXjnHbjzTrfOrG4dOlT3eB0xomRbaQ40s1Jw8cWweDEMGQIbbZR1NZZHRxyR5vN8\n9dWSnePRgWZW7N59N61G3aZNWgfLrC4dO1a30kr0XpoDzazYXXJJap0NHuzVqG35jjwS1l4bXn4Z\nHnoo62qanQPNrJi99x7cdptbZ9Y4HTtWr7xQgvfSHGhmxeySS+DLL+HAA2FTL/dnjXDUUWm9tEmT\n4OGHs66mWTnQzIrV++/DLbeA5NaZNV6nTtWttJEjS2pVaweaWbG69NLUOjvgANhss6yrsWJy9NGw\n1lppVetHHsm6mmbjQDMrRh98AL/5jVtntmI6dYIzz0zbI0aUTCvNgWZWjC67DBYtgv32g36NWczd\nrJahQ2HNNeHFF+HRR7Ouplk40MyKzbRpcPPNabtqVWKzpurcGX7+87R94YUl0UpzoJkVm8sug4UL\nYd994etfz7oaK2bHHAOrrw4TJsBf/5p1NSstl4EmqZekcZLmSZoqafByjj1F0oeSZku6VVLHFTmP\nWVGYPh3GjEnb55+fbS1W/Lp2hdNPT9sl0OMxl4EG3AAsAvoAQ4DRkpa5USBpEHAWsDOwHrABMKKp\n5zErGpdfDgsWwI9+BFtumXU1VgqOOw569YLx4+Gpp7KuZqU0OtAk/UHSDyW1aAhK6grsCwyPiLkR\n8RzwEHBwHYcfCtwSEZMj4lNgJHDYCpyneUTAxx+32OmtzH34Idx0U9p268yaS/fucMopaXvkyGxr\nWUlNCad5wG+BDyRdLKmlJo3bBFgcEVNq7JsE1NWy6ld4ruZxfSSt1sTzrLxp02DAAPje99K8embN\n7YorUuts771hq62yrsZKyQknQM+eqYX27LNZV7PCGh1oETEEWAu4EPg+8IakZyQdIqlzM9bUDZhd\na99soHs9x35e6zgKxzblPEgaKqlSUuWMGTOaXDRrrJFaZ2+9BWPHNv31Zsvz8cdw441p260za249\ne8JJJ6VxjePHZ13NCmvS5cOImB0RoyNia+DrwETg18B0Sb+W1BzTFcwFetTa1xOY04hjexb+nNPE\n8xARYyKiIiIqevfu3eSiadeuemHFUaPcSrPmdcUVMH8+7LknfPObWVdjpejkk9OK1lXTYhWhFbof\nJukrwN7AD4HFwAPAusDLkk5fyZqmAO1qXdLsD0yu49jJhedqHvdRRHzSxPM0j5/+FDbYAN58E+67\nr8XexsrMjBlwww1p+xe/yLYWK12rrlr0U6g1pVNIe0n7SXoUmArsA1wOrBURR0bE7qROGCs1D09E\nzAMeBEbhkjoiAAAYJUlEQVRK6ippALAXcFcdh98JHClpc0mrAsOB21fgPM2jdittyZIWeysrI1de\nCV98AXvsAd/6VtbVmOVWU1po00mXF98CvhURW0fEzRExt8YxzwCfNkNdxwGdgY+BscCwiJgsqa+k\nuZL6AkTEY6RQfZIUsu8Av2joPM1QX/0OPhjWXx/eeAN+97sWfSsrAzNnwvXXp223zsyWS9HIgXSS\nDgbuj4gFLVtS9ioqKqKysnLFT3DzzWmetM02g1degbZtm684Ky/nnJPWPNttt5KZb89Kl6SJEVGR\n1fs3pZfjXeUQZs3i0EOhb194/XV44IGsq7Fi9ckncN11adutM7MG5XWmkOLWoUP6lzWkgYoltsy5\ntZKrr4a5c2HQINhmm6yrMcs9B1pLOewwWGed1A32wQezrsaKzaxZcO21adutM7NGcaC1lI4d4eyz\n07ZbadZUv/oVzJkDu+wC3/1u1tWYFQUHWks68khYe+3UMeShh7KuxorFp5/CNdekbbfOzBrNgdaS\nOnasHnVfAkszWCu55hqYPRt23hm23TbrasyKhgOtpR11FKy1Frz0Ejz8cNbVWN599lm63AhunZk1\nkQOtpXXqBGeembbdSrOGXHstfP457LgjbLdd1tWYFRUHWmsYOhTWXBNefBH+9Kesq7G8+uwzuOqq\ntO3WmVmTOdBaQ+fOcMYZaXvECLfSrG7XXFPdOtthh6yrMSs6DrTWcswxac20ykr485+zrsby5rPP\n0kBqgAsuyLQUs2LlQGstXbrAz3+etn0vzWr71a9S62ynnWD77bOuxqwoOdBa07Bh0Ls3TJgAjz+e\ndTWWFzV7Nrp1ZrbCHGitqWtXOL2w/qnvpVmVq69OrbOdd3bPRrOV4EBrbccdB6utBv/4B/ztb1lX\nY1n79FOPOzNrJrkKNEm9JI2TNE/SVEmDl3PsoZImSpot6QNJl0tqV+P5pyQtKCwIOlfSG63zKRrQ\nrRucdlradivNfvWr6llB3DozWym5CjTgBmAR0AcYAoyW1K+eY7sAJwOrA9sAOwOn1zrm+IjoVnhs\n2kI1N93xx0OvXjB+PDz5ZNbVWFZqts5878xspeUm0CR1BfYFhkfE3Ih4DngIOLiu4yNidEQ8GxGL\nIuL/gHuA4pj4rnt3OPXUtO1WWvm6+urUOvv+92HAgKyrMSt6uQk0YBNgcURMqbFvElBfC6227YHJ\ntfZdImmmpPGSBjZDjc3n+ONh1VXhmWfgiSeyrsZa26xZbp2ZNbM8BVo3YHatfbOB7g29UNIRQAVw\nRY3dZwIbAGsDY4BHJG24nHMMlVQpqXLGjBlNrb3pevasHpd23nlupZWbq6+uXu/MM+qbNYtWC7RC\nJ42o5/EcMBfoUetlPYE5DZx3H+ASYLeImFm1PyImRMSciFgYEXcA44Hd6ztPRIyJiIqIqOjdu/eK\nfsymOeGENC7thRc8e0g5mTWrer0zt87Mmk2rBVpEDIwI1fMYAEwB2knauMbL+rPsZcT/T9KuwM3A\nnhHxSkMlAFrZz9GsunWrXi/NrbTyceWVqXX2gx/A976XdTVmJSM3lxwjYh7wIDBSUldJA4C9gLvq\nOl7STqSOIPtGxD9rPbeKpEGSOklqJ2kI6R7bYy37KVbAsGFpvbR//xvGjcu6GmtpH31Ufe9sxIhs\nazErMbkJtILjgM7Ax8BYYFhETAaQ1Lcwnqxv4djhpEuSj9YYa1Z13a49MAqYAcwETgD2qdXhJB86\nd06tM4Dzz4clS7Ktx1rWJZfAF1/AnnvCd76TdTVmJUXhy1zLqKioiMrKytZ7w4ULYdNNYepUuOce\nGFzveHIrZu+9BxtvDIsWpRXM+/fPuiKzZiVpYkRUZPX+eWuhlaeOHWH48LR9wQWweHGm5VgLufDC\nFGYHHugwM2sBDrS8OOQQ2GgjePNNuKvO24ZWzN58E267Ddq29b0zsxbiQMuL9u2ru3CPGJH+JW+l\n4xe/SPdHDzsMNtkk62rMSpIDLU8OPBA23zzdS7vllqyrsebyyitw333QoUPq+GNmLcKBlidt26bV\nrAFGjUq94az4DR+exhgecwz07dvw8Wa2QhxoefOjH8E3vwnTpsF112Vdja2sCRPgoYegSxc455ys\nqzEraQ60vGnTBi69NG1femmaJsmKV9UYwxNPhDXXzLYWsxLnQMujXXZJCz5+9ll1uFnxefLJtCp5\nzYmozazFONDyqirIrr0W3n8/21qs6ZYuhTPOSNunn54WdDWzFuVAy6uKCth//zSLiGdkLz733w+V\nleky4ymnZF2NWVlwoOXZqFHQrh3cfju89lrW1VhjLVwIZ5+dtkeOhK5ds63HrEw40PJs443hqKPS\n5atzz826Gmusm26Cd96BzTaDww/PuhqzsuFAy7vzz09dvv/wB3j++ayrsYZ8/nmasxHgsstSC9vM\nWoUDLe/WWqv6HswZZ3gR0Ly77DL45BPYbjv44Q+zrsasrDjQisEZZ0Dv3jB+PPz+91lXY/X54AO4\n+uq0/ctfgvK1QLpZqctVoEnqJWmcpHmSpkqqd2EwSYdJWlJjcc+5kgauyLlyr0eP6imxzjwTFizI\nth6r2/nnp/82P/kJbLNN1tWYlZ1cBRpwA7AI6AMMAUZL6rec4/8REd1qPJ5aiXPl21FHQb9+qbOB\np8TKn5dfTr1R27WDiy/OuhqzspSbQJPUFdgXGB4RcyPiOeAh4OAsz5Ub7drBlVem7VGj4OOPs63H\nqkXAySenP4cNS+vamVmry02gAZsAiyNiSo19k4Dltaq+IWmmpCmShkuq6lLW5HNJGiqpUlLljBkz\nVvQztKxBg2C33WD2bA+2zpNx49I0V716+b+LWYbyFGjdgNm19s0Gutdz/DPAFsAapNbYQUDVhHlN\nPRcRMSYiKiKionfv3k0svRVdcUVaZubXv4bJk7OuxhYsgNNOS9sjR3qKK7MMtVqgSXpKUtTzeA6Y\nC/So9bKewJy6zhcRb0fEOxGxNCJeAUYC+xWebtK5isrmm6d1tZYuTXMEWrauvhrefTfd3zzmmKyr\nMStrrRZoETEwIlTPYwAwBWgnaeMaL+sPNLYZEkBVP+mVPVe+XXBBmsH9scfgz3/OupryNW0aXHRR\n2r7mGg+iNstYbi45RsQ84EFgpKSukgYAewF31XW8pN0k9Slsfw0YTur40eRzFZ3evdMqyAAnnZTm\nDrTWd/bZMG8e7L13Wu7HzDKVm0ArOA7oDHwMjAWGRcRkAEl9C2PNqtaw3xl4WdI84FFSgF3cmHOV\nhBNOSHMFvvlmde9Haz3//CfceSd06JDua5pZ5hSeSmkZFRUVUVlZmXUZDXviidQy6NwZXn8d1lsv\n64rKw9KlsO228MILaRaXyy7LuiKzXJA0MSIqsnr/vLXQrCl22gkOOADmz4dTT826mvJx220pzPr0\n8SoIZjniQCt2V16Z1tt68MHUScRa1syZ1StRX3VVmpbMzHLBgVbs1l67ejDvCSe4g0hLO+ssmDUr\ntY4POijrasysBgdaKTjppDQ+7b//dQeFlvT883DLLdC+Pdxwg2fTN8sZB1opaN8err8+bV90UZrA\n2JrX4sVpnkZIlxy/9rVs6zGzZTjQSsWOO6ZLYPPnw7HHeiHQ5nbttWlG/fXXh3POyboaM6uDA62U\nXH01rLoqPP443H131tWUjrffhvPOS9vXXw9dumRbj5nVyYFWSvr0qV4x+eSTvcRMc4iAo49OLd+D\nDoI99si6IjOrhwOt1BxyCOyyS+qJd/LJWVdT/G69NQ1gX221NF+jmeWWA63USGlpmS5d4N574U9/\nyrqi4jVtWvXSMNdem+bQNLPccqCVoq9+FS68MG0fcwx8+mm29RSjCDjuOPj883SZ0WPOzHLPgVaq\nTjoJvvMd+L//gxNPzLqa4jN2LDz0EHTvDqNHe8yZWRFwoJWqtm3TbPCdO6cejw88kHVFxeO99+Bn\nP0vbV10F666bbT1m1igOtFK28cbwy1+m7WOOgQ8/zLaeYrB0KRx2WLrUuNdecOSRWVdkZo3kQCt1\nw4alXo+ffAJDh3rAdUOuuQaefDJ1ALn5Zl9qNCsiuQo0Sb0kjZM0T9JUSYOXc+xNhQU/qx4LJc2p\n8fxTkhbUeP6N1vkUOdOmTep63rMnPPJI+pK2ur36alqFGuA3v4E11si2HjNrklwFGnADsAjoAwwB\nRkvqV9eBEXFsRHSregD3AvfXOuz4Gsds2qKV59k668CNN6btk06CV17Jtp48+uILGDw4rVZw1FHp\ncqOZFZXcBJqkrsC+wPCImBsRzwEPAQc34bV3tGyVRWzwYDjiCFiwAPbfH+bNy7qifDnxxBT0m2yS\nOoKYWdHJTaABmwCLI2JKjX2TgDpbaLXsC8wAnqm1/xJJMyWNlzRweSeQNFRSpaTKGTNmNKXu4nHt\ntWmZmf/8B44/Putq8uOuu9KyMJ06wf33p676ZlZ08hRo3YDZtfbNBhrz7XIocGfE//R4OBPYAFgb\nGAM8ImnD+k4QEWMioiIiKnqX6owQXbvC736XuvLffnvq1l/uXnstrU4AcN11sOWW2dZjZius1QKt\n0Ekj6nk8B8wFaq9n3xOYs+zZ/ue8fYGBwP98O0fEhIiYExELI+IOYDywe7N9oGLVr1/12mnDhsGk\nSdnWk6V58+AnP0n3z376U3fRNytyrRZoETEwIlTPYwAwBWgnaeMaL+sPTG7g1AcD4yPi7YZKANwH\nG+Dww+HQQ9MX+d57w8yZWVfU+qrGm732Wlqs07OBmBW93FxyjIh5wIPASEldJQ0A9gLuauClhwC3\n19whaRVJgyR1ktRO0hBge+CxFii9+Ehw002w9dYwdWpqpXz5ZdZVta4LL4Tf/x569IAHH4Ru3bKu\nyMxWUm4CreA4oDPwMTAWGBYRkyFdWiyMJ+tbdbCk7wLrsGx3/fbAKFJHkZnACcA+tTqclLdOnWDc\nOFhrLXjqKTjllKwraj333w8XXJDG6N13H2y2WdYVmVkzUHjmiGVUVFREZWVl1mW0jhdegB12gEWL\n0li1YcOyrqhlvfgiDBiQFuy86qryCnKzFiZpYkRUZPX+eWuhWWv7znfS+mmQuvKPG5dtPS3p3Xdh\nzz1TmB1+uBdANSsxDjRLnSMuuCB1lDjoIHim9nC+EvDxx/CDH6RFO7ff3p1AzEqQA82S889P47EW\nLkzTPpXS9FizZ8Ouu8Kbb8JWW8HDD0PHjllXZWbNzIFmiZTGp/34x2nplKoAKHYLFqSA/ve/YaON\n4LHH0kTNZlZyHGhWrW1buOceGDgwXZrbYYc0TVaxmj8/jbN7+mn4ylfgr3+FPn2yrsrMWogDzf5X\np07wxz/CjjvC9Okp1F59Neuqmm7ePNhjD3j88bS22eOPw/rrZ12VmbUgB5otq2vXFGq77JI6Uwwc\nCC+9lHVVjTdrFgwalBbqXHPNNM6uX2PmuDazYuZAs7p16ZI6T+y+e1rtevvtUysn76ZOTePMxo9P\n68A9/XRaYcDMSp4DzerXqVOaFuqAA2DOnBRuY8ZkXVX9JkyA734XXn8dttgC/vGPtL6ZmZUFB5ot\nX8eOMHYsnH02LFkCxxyTHgsWZF3Z/7rlltSKnD49XSJ99tnUQjOzsuFAs4a1aQMXXwy33poCbsyY\ndFnvrbeyriy1HI84Ao46Kk3f9bOfwV/+AqusknVlZtbKHGjWeIcfDs8/n3oLTpyYFsMcPRqymg90\n/Pg0UPq229Ll0dtuS2PpOnTIph4zy5QDzZrmm99ME/weeGBaT+2442DnnVu3a/8nn6TLntttB2+/\nnUJt4sQ0hZeZlS0HmjXdqqvCvffC734Hq6+eusdvtRWccAJ8+GHLve/8+XD11bDppumyZ9u2cM45\nqTOIezKalb1cBZqk4yVVSloo6fZGHH+KpA8lzZZ0q6SONZ7rJWmcpHmSpkoa3KLFl6Of/ATeeCPd\nt4pIl/vWXz/N2t+c99dmzUpLvWy0EZx6amqhDRwIkybBRRf5EqOZATkLNGAaaWHOWxs6UNIg4Cxg\nZ2A9YANgRI1DbgAWAX2AIcBoSR5d29x69UpB9tJL8KMfpcmNb7ghhc+OO8Ltt6fB2U01f34aB3fI\nIbD22nDaaWk6rm98Ax55BJ54wq0yM/sfuVzgU9IoYJ2IOGw5x4wF3o2Icwo/7wSMjYg1JXUFPgW2\nqFqlWtKdwLSIOKuh9y+rBT6b26uvwhVXpMuR8+enfRJ861uw9dbp0uSGG8Iaa6SeiEuXpt6J06fD\n+++nWf4nTEiPL76oPu+gQakl+MMfetkXs5zKeoHPdlm9cTPoBzxU4+dJQB9JqwF9gcVVYVbj+YGt\nV16Z2mKL1Cq75hq47z74wx/SPbbKyvRoiooK2GefNLB7o41apFwzKx3FHGjdgM9r/Dy78Gf3wnOz\nax0/u/BcnSQNBYYC9O3bt/mqLFc9e1YPwv7ii9Td/6WX0uODD+Cjj9IyNW3bQvv2aRb8ddeFjTeG\nbbZJrbk118z6U5hZEWm1QJP0FLBDPU+Pj4gBTTzlXKBHjZ+rFrmaU8dzVc/Pqe9kETEGGAPpkmMT\na7Hl6dIFvv/99DAzayGt1ikkIgZGhOp5NDXMACYD/Wv83B/4KCI+AaYA7SRtXOv5ySv+CczMLM9y\n1ctRUjtJnYC2QFtJnSTV14q8EzhS0uaSVgWGA7cDRMQ84EFgpKSukgYAewF3tfiHMDOzTOQq0IDz\ngPmk7vg/LWyfByCpr6S5kvoCRMRjwOXAk8BU4B3gFzXOdRzQGfgYGAsMiwi30MzMSlQuu+1nzd32\nzcyaLutu+3lroZmZma0QB5qZmZUEB5qZmZUEB5qZmZUEdwqpg6QZpJ6TzW11YGYLnLe1FHv9UPyf\nodjrh+L/DMVeP7TcZ1gvInq3wHkbxYHWiiRVZtkDaGUVe/1Q/J+h2OuH4v8MxV4/lMZnqIsvOZqZ\nWUlwoJmZWUlwoLWuMVkXsJKKvX4o/s9Q7PVD8X+GYq8fSuMzLMP30MzMrCS4hWZmZiXBgWZmZiXB\ngdbKJN0t6UNJsyVNkXRU1jU1haSOkm6RNFXSHEkvSdot67qaQtLxkiolLZR0e9b1NIakXpLGSZpX\n+LsfnHVNTVGMf+c1lcLvPRT/909DHGit71Jgg4joQVqjbZSkb2VcU1O0A94nrT7ek7S8z+8krZ9h\nTU01DRgF3Jp1IU1wA7AI6AMMAUZL6pdtSU1SjH/nNZXC7z0U//fPcjnQWllEvBoRX1T9WHhsmGFJ\nTRIR8yLigoh4NyKWRsQfSWvRFc3/FBHxYET8Afgk61oaQ1JXYF9geETMjYjngIeAg7OtrPGK7e+8\ntlL4vYfi//5piAMtA5JulPQF8B9gOvBoxiWtMEl9gE0AL57acjYBFkfElBr7JgHF1EIrKcX8e19K\n3z+1OdAyEBHHAd2B7YAHgYXZVrRiJLUH7gHuiIj/ZF1PCesGzK61bzbpd8haWbH/3pfK909dHGjN\nSNJTkqKex3M1j42IJYVLR+sAw7KpeFmN/QyS2gB3ke7rHJ9ZwbU05b9BEZkL9Ki1rycwJ4Naylpe\nf++bKq/fPyurXdYFlJKIGLgCL2tHjq5hN+YzSBJwC6mDwu4R8WVL19VYK/jfIO+mAO0kbRwRbxb2\n9acIL3cVszz/3q+EXH3/rCy30FqRpDUkHSipm6S2kgYBBwF/z7q2JhoNbAbsGRHzsy6mqSS1k9QJ\naAu0ldRJUm7/cRcR80iXhkZK6ippAKmH2l3ZVtZ4xfZ3Xo9i/70vle+f+kWEH630AHoDTwOfke6B\nvAIcnXVdTfwM65F6Ri0gXQqregzJurYmfIYLqO7hVfW4IOu6Gqi5F/AHYB7wHjA465pK/e+8Vv2l\n8Htf9N8/DT08l6OZmZUEX3I0M7OS4EAzM7OS4EAzM7OS4EAzM7OS4EAzM7OS4EAzM7OS4EAzM7OS\n4EAzM7OS4EAzM7OS4EAzyzlJvSVNl/SLGvu2lLRA0k+yrM0sTzz1lVkRKEwk+wiwA/ASUAn8MyIO\nz7QwsxxxoJkVCUm/Is2y/zRpccatImJutlWZ5YcDzaxISOoITAI2Br4XERMyLsksV3wPzax4rA+s\nS1rGZINsSzHLH7fQzIqApPbAC6TVqycAvwD6R8R7mRZmliMONLMiIOlSYDCwJfA58GegE7BTRCzN\nsjazvPAlR7Ock7QDcBpwSER8FulfoYcBmwNnZlmbWZ64hWZmZiXBLTQzMysJDjQzMysJDjQzMysJ\nDjQzMysJDjQzMysJDjQzMysJDjQzMysJDjQzMysJDjQzMysJ/w+sVcXFPVtLZwAAAABJRU5ErkJg\ngg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lines = plt.plot(X, S)\n", "# use keyword args\n", "plt.setp(lines, color='r', linewidth=2.0)\n", "plt.xlabel('x')\n", "plt.ylabel('y')\n", "plt.title('It is a Sine wave!')\n", "\n", "# Note: Annotation is not essential majority of the times,\n", "# there's always a trial&error invovled in getting it right\n", "plt.annotate('local max', xy=(2, 1), xytext=(3, 1.5),\n", " arrowprops=dict(facecolor='black', shrink=0.05),\n", " )\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 3: Working with subplots\n", "\n", "Below are the few ways in which a subplot can be created" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.subplot(2,1,1)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(2,1,1)',ha='center',va='center',size=24,alpha=.5)\n", "\n", "plt.subplot(2,1,2)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(2,1,2)',ha='center',va='center',size=24,alpha=.5)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n/wO850PqJT3DzAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.subplot(1,2,1)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(1,2,1)',ha='center',va='center',size=22,alpha=.5)\n", "\n", "plt.subplot(1,2,2)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(1,2,2)',ha='center',va='center',size=22,alpha=.5)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n4sKFCzh+/DhGRkZCPmaTyYTffvsNaWlpKCwshE6nQ1paGkwmEz755BP873//C2izY8cOuN1u/PTT\nTyGPQwvbQqztmb777juMj48/cJ9o1jbPkB8hj8cDo9GIZcuWYfXq1X7bVCoVXnnlFeTl5fmdLezZ\nswcGgwE9PT2or69HSUnJnOPExcVh3759KCgoQFxcnO9xt9uNyspKmM1m1NXVYe/evSEd95/+9CfE\nxgaWSl9fHz755BOcPXsWBQUFfsedlJSE7Oxs/PrrrygvL4dSqQxpLFqYFmptT9fc3IzW1lbs27cP\n1dXVs+4XzdqOWCC3tbXhypUruH37NlwuFxISEpCSkoJNmzZh27ZtAIAPP/wQAPDee+8FtK+rq0Nd\nXR2OHj0KrVYbsP3+/fuoqalBR0cHxsbGsHz5cpSUlGDz5s1++1mtVhgMBuzatQtr165FbW0t7HY7\nJEnC6tWr8cILLwRcYj9IZ2cnLl++DLvdjvHxcWg0GmzcuBGlpaW+X8Tg4KDvuQHwu6zTarU4evSo\nry+n04nnnnsuYJz09HSkp6cHPB4fH4+SkhJUVVXBarWGVLTJycm+13w6uVyOnTt3wmw2hzWnGCyM\nASAtLQ2pqalwOBwYHh5GcnKy3/ZNmzbBYrGgpaUFRUVFIY8nGtb24q1tL6fTiR9++AFbtmxBTk7O\nnPtHq7YjEsgNDQ347rvvoFKpkJubi4SEBAwPD6Ovrw+NjY1BX8BwuFwufPrpp1AqlSgsLMTo6Chu\n3LiBqqoq3Lt3Dzt27Ahoc+vWLfz888/Izs5GcXEx7t69i9bWVnz22Wc4dOgQMjMz5xzXaDSiuroa\nCoUCeXl5SExMhNVqxcWLF9HW1oY33ngDSqUSSqUSu3btQlNTEwYHB7Fr1y5fHxqNxvfvnZ2dAIA1\na9aE9fxjYmL8/jkfkeyrv78f/f39SEhIQFJSUsB27/Ps7OxcsIHM2l78tS1JEk6dOoX4+Hj84Q9/\ngMvlmrNNtGo7IoFsNBohl8vx9ttvIzEx0W/bfOZzvPr6+pCXl4dXX30VMpkMAFBaWorjx4/j/Pnz\nePrpp7F06VK/NhaLBXv37kVxcbHvMZPJhK+++gqnT5/Gu+++6+srmMHBQfzwww+Ii4vDW2+9hdTU\nVN+26upqXLt2DTU1NXjppZd8RWu1WgOKdjqbzQYAYZ3FAFN3rgFg3bp1YbWLdF+dnZ2w2Wxwu90Y\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.subplot(2,2,1)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(2,2,1)',ha='center',va='center',size=20,alpha=.5)\n", "\n", "plt.subplot(2,2,2)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(2,2,2)',ha='center',va='center',size=20,alpha=.5)\n", "\n", "plt.subplot(2,2,3)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(2,2,3)',ha='center',va='center',size=20,alpha=.5)\n", "\n", "plt.subplot(2,2,4)\n", "plt.xticks([]), plt.yticks([])\n", "plt.text(0.5,0.5, 'subplot(2,2,4)',ha='center',va='center',size=20,alpha=.5)\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 4: A generic multiplot example" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# A generic example is as follows:\n", "\n", "plt.subplot(1,2,1)\n", "plt.plot(x, y, 'r--')\n", "plt.subplot(1,2,2)\n", "plt.plot(y, x, 'g*-')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 5: Adding legends to the image" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(X, S, label=\"Sine\")\n", "plt.plot(X, C, label=\"Cosine\")\n", "plt.legend(loc=2); # upper left corner\n", "plt.xlabel('x')\n", "plt.ylabel('y')\n", "plt.title('Sine and Cosine Waves')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Manipulating and Saving an image**\n", "\n", "We can manipulate the aspect ratio, size and DPI (Dots per inch) and save the give figure. We'll save the above sine-cosine plot." ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure sine_cosine\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaEAAAEYCAYAAAD1bUl/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdcleX/x/HXxUZAEFDcoAgoDhy49x4/S22oObKhDRum\nadkwzbJh1jebjsqWmqaWlTPNvfdAxQ3iRASRPc71++M+FpnjIHDu+4br+XjwEM65z7nfB+F8uO/7\nuq6PkFKiKIqiKHpw0DuAoiiKUnKpIqQoiqLoRhUhRVEURTeqCCmKoii6UUVIURRF0Y0qQoqiKIpu\nVBFSTEMIMVAIsVLvHHcihFgrhBhq532+KoT4yp77VJTCoIqQYihCiFZCiM1CiKtCiCtCiE1CiMYA\nUsrZUsouemcsKCFEqBDiZyHEZevr3C+EGCWEcLzb55RSviOlLPTCJ4SIFkL0y/N1SyGEvMlt14QQ\nToW9f6X4U0VIMQwhRGngD+BTwBeoBLwJZOqZqzAJIYKBbcAZoK6U0ht4EGgEeOmZ7RbWA23yfN0G\nOHKT27ZIKXPsGUwpHlQRUowkFEBKOVdKmSulTJdSrpRS7gcQQjwihNh4fWPrX+RPCSGOCSGShBCf\nCyFEnvsfE0IcFkIkCiFWCCECb7Vj65HJBeuRyXohRO08931rfe4l1r/4t1mLyfX7Owshjlgf+xkg\nbroTzZvAZinlKCnleevrjZZSDpRSJlmf714hRJT1Na0VQtTKs6+XhRBnrTmihRAdrbdPEEL8aP08\nyPq9GSKEiLUecb2W5zkchBBjhRAnhBAJQoj5QgjfW+S9sQi1Bt6/yW3rrc8dLIT4y/q8l4UQs4UQ\nPnmyL7jh+z5VCPGJ9XNvIcTXQojz1tf49vWjQyFEDSHEOuv3+LIQYt5tvseKiagipBjJUSBXCPGd\nEKK7EKKMDY/pCTQG6gF9ga4AQohewKvAfUBZYAMw9zbPswwIAcoBu4HZN9zfH62AlAGOA5Os+/EH\nFgGvA/7ACaDlbfbTCVhwqzuFEKHWnC9Ycy8FfhdCuAghwoBngcZSSi/raz19m321AsKAjsAbeYrZ\nc0BvoC1QEUgEPr/Fc6wHagshfIUQDkAkMA/wyXNbS+t2oBXgd63PWwuoAkyw3vcT0EMI4WV9rY5o\n/2dzrPd/C+QANYAGQBfg+inGt4CVaN//ymhHy0pxIKVUH+rDMB9ob1zfAnFob0i/AQHW+x4BNubZ\nVgKt8nw9Hxhr/XwZ8Hie+xyANCDQhgw+1uf2tn79LfBVnvt7AEesnz8MbM1zn7BmH3qL584Gut1m\n3+OA+TfkPgu0Q3tzvoRWyJxveNwE4Efr50HW/JXz3L8d6G/9/DDQMc99Fay5nG6R6TTQC60wbLLe\n9lOe29IB11s8tjewJ8/XG4GHrZ93Bk5YPw9AO+3qnmfbh4A11s+/B2bkfU3qo3h8qCMhxVCklIel\nlI9IKSsDddD+ov74Ng+5kOfzNMDT+nkgMNV6SisJuIJWICrd+ARCCEchxHvW01PJ/HN04W/Dfiqi\nXd+5nl/m/fomEtDe9G+lIhCT5/ks1uerJKU8jnaENAG4JIT4SQhR8TbPdbvvzS95vjeHgVy0QnAz\n10/JtUE7ogStmFy/bbuUMhNACBFgzXXW+r38kX9/H+egFReAAfxzFBQIOAPn8+SajnZkCvAS2v/f\nduupysdu87oVE1FFSDEsKeURtKOQOnfx8DPAk1JKnzwf7lLKzTfZdgDaX/WdAG+0Iwm4/bWd686j\nnXLSHqBdk6py681ZBdx/m/vPob0h3/h8ZwGklHOklK2s20i06zP5dQbofsP3xk1KefYW218vQq35\npwhtyHPb+jzbvmPNVVdKWRoYxL+/jz8D7YQQlYE+/FOEzqAdCfnnyVRaSlnb+rovSCmHSSkrAk8C\nXwghatzFa1cMRhUhxTCEEDWFEC9a36AQQlRB+6t561083TTglesDDKwXvR+8xbZeaG+ACUAptDdS\nWy1Bu2Zyn3WI8vNA+dtsPx5oIYT4QAhR3pqthhDiR+sF/PnA/wkhOgohnIEXrdk2CyHChBAdhBCu\nQAbaaTBLPrJeNw2YdH2ghhCirPUa2q2sRzvt1gbYZL3tAFANaM+/i5AXkAJcFUJUAsbkfSIpZTyw\nFpgFnJJSHrbefh7tms+HQojS1sETwUKIttaMD17/uUC7hiXv8rUrBqOKkGIk14CmwDYhRCpa8TmI\n9kacL1LKX9COEn6ynhY6CHS/xebfo50COwscIh9FT0p5GW2I9XtoRSyEf96ob7b9CaA52tFWlBDi\nKrAQ2Alck1JGox09fApcBu4B7pFSZgGu1v1cRjvVVg54xdaseUxFu9a2UghxDe31Nr1N5qNAPHBB\nWkfwWU8TbgdKA3mPLt8EGgJX0Qr0ops85Ry0o845N9z+MOCC9n+QiDaA4/qpy8ZoPxcp1uwjpJQn\nbXy9ioEJ7RS2oiiKotifOhJSFEVRdKOKkKIoiqIbVYQURVEU3agipCiKouimRK566+/vL4OCgvSO\noSiKUizt2rXrspSyrC3blsgiFBQUxM6dO/WOoSiKUiwJIWLuvJVGnY5TFEVRdKOKkKIoiqIbVYQU\nRVEU3ZTIa0I3k52dTVxcHBkZGXpHMQw3NzcqV66Ms7Oz3lEURSmmVBGyiouLw8vLi6CgIISwZfHk\n4k1KSUJCAnFxcVSrVk3vOIqiFFOGPB0nhHhWCLFTCJEphPj2DtuOFFpb5mQhxDfWFYbzLSMjAz8/\nP1WArIQQ+Pn5qSNDRVGKlCGLEFpPlbeBb263kRCiKzAWrX1xIFAdbRXfu6IK0L+p74eiKEXNkKfj\npJSLAIQQkWj95G9lCPC1lDLKuv1EtOXhxxZ5SEUpbFJC4ik4txeSYuFqHKQnQm4WSAu4+YC7D3hX\ngXI1oVw4eJa78/OWAMkZ2Rw6l8zJ+FRiElJJSssmOSMbi5S4OTtSysWJSj5uVPEtRVh5L0LKeeHo\noP7IMgJDFqF8qA0szvP1PiBACOEnpUzIu6EQ4gngCYCqVavaL2E+TZo0iTlz5uDo6IiDgwPTp09n\n5syZjBo1ivDwcL3jKYUt7QocXQHRS+D0Jki/8s99bj7gXgacXAEBmcna9jnp/2zjHwrV2kJYN6jW\nDhzN/ittGykle84ksfzgBTafuEzUuWSud6VxcXKgTClnvNyccRSCjJxcUjJySEjN+vvxXq5ONAgs\nQ+da5ehSuzwBpd10eiWK2X9iPdGaZ12XbP3XC63B2N+klDOAGQCRkZGGbKK0ZcsW/vjjD3bv3o2r\nqyuXL18mKyuLr776Su9oSmGyWODUWtg5C6KXgiUHvCpAWA+oHAmVGoJvdXD1+u9jpYSUSxB/BM7v\nhVPrYe9s2DETPMpB3QegyTDt8cVQ/LVMZm+LYcGuOOIS03FxdKBhoA8jOobQoGoZgst6UNHbHYeb\nHOWkZ+VyJjGNqHNX2RWTyObjCYxbHMW4xVG0CPZjcLNAOoUH4Oxo1KsUxZPZi1AKWmfH67yt/17T\nIUuBnT9/Hn9/f1xdtbEV/v7+ALRr144pU6YQGRmJp6cnI0aM4I8//sDd3Z3FixcTEBBAfHw8Tz31\nFLGxsQB8/PHHtGzZUrfXotyEJReifoH1H2hFxN0Xmj4Fde6Hig3AlmtwQoBXgPZRvS20HAHZGXBs\nJRyYD9tnwtYvoVZPaD0aKtYv+tdlB7EJaXz61zEW7z1HVq6F1iH+jOwUSufaAZR2s20KgbuLI6EB\nXoQGeNGnQWWklBy/lMLSAxeYv/MMT8/eTQVvN4a3C6Zv4yq4OjkW8atSwPxFKAqIAOZbv44ALt54\nKi6/3vw9ikPnku+8YT6EVyzN+Htq33abLl26MHHiREJDQ+nUqRP9+vWjbdu2/9omNTWVZs2aMWnS\nJF566SVmzpzJ66+/zogRIxg5ciStWrUiNjaWrl27cvjw4UJ9DUoBHF8FK17Tik/ZmtBnBtTubT3V\nVkDObhB+r/aRfF47KtrxNRz+Heo8AB1eB19zDrO/nJLJJ6uPMXd7LA5C0K9xFR5pGURwWc8CP7cQ\ngpAAL0YEePFshxr8deQSM9afYNziKL5ce4IXu4TRp0Glmx5VKYXHkEVICOGEls0RcBRCuAE5Usqc\nGzb9HvhWCDEbOA+MA761Z9bC5Onpya5du9iwYQNr1qyhX79+vPfee//axsXFhZ49ewLQqFEj/vzz\nTwBWrVrFoUOH/t4uOTmZlJQUPD0L/suqFEBiDCwfq512860OD8yC8N7gUESnfEpXgI5vaEdImz6B\nLZ9rxajNGO02J5ei2W8hs1gkP+04w3vLDpOalUu/xlV4vkMI5b2L5tqNo4Ogc3gAnWqVY+Pxy0xZ\neZQXf97HnO2xTOxVm9oVve/8JMpdMWQRAl4Hxuf5ehDwphDiG+AQEC6ljJVSLhdCTAbWAO7Awhse\nd1fudMRSlBwdHWnXrh3t2rWjbt26fPfdd/+639nZ+e+h046OjuTkaHXZYrGwdetW3NzUBVZDkBJ2\nzYKV47TPO02AZsML58jHFm7e0HEcNB4KK16FNW/DwQXQ6wuo3Mg+Ge5SbEIao+bvZWdMIk2r+TKp\nTx1qlLvJ9bEiIISgdUhZWgb7s2B3HO8vO8K9n23i2fY1eLZDDXW9qAgY8jsqpZwgpRQ3fEywFh5P\nKWVsnm0/klIGSClLSykflVJm6pm9IKKjozl27NjfX+/du5fAwECbHtulSxc+/fTTfz1W0UlKPPx4\nP/wxUhto8Mw2aDXSfgUor9IV4MFZMOBnyEyBb7rAhg+161MGI6Vkwa44uk9dT/TFa3zwQD1+eqKZ\n3QpQXg4Ogr6RVfjrxXb0iqjI1NXHuO+LzZyMT7F7luLOkEWopEpJSWHIkCGEh4dTr149Dh06xIQJ\nE2x67CeffMLOnTupV68e4eHhTJs2rWjDKjcXswWmt4aYTdBjCgz+FXyq6J0KQrvA0xuhZk9YPRF+\n6AOpBbp0WqgysnN58ed9jP55H7UrebP8hTY8GFlF9wnT3qWc+ahffb4c2JC4xDTu/WwTyw6c1zVT\ncSOkNORo5SIVGRkpb2xqd/jwYWrVqqVTIuNS35d82DZDu/5TJhD6fg/l6+qd6L+khD0/wJLR2gi7\n/nN0zxmXmMZTP+7i4NlkXugUwnMdQgw5kfRsUjrDZ+9m35kknmxTnZe61TRkTiMQQuySUkbasq06\nElKUgsrNgaUvwbIxENIFnlir+xv7LQkBDR+Gx5Zpub/qDIf/0C3O3jNJ9PpsEzGX0/h6SCQvdAo1\n7Bt7JR935j/ZjEHNqjJ9/Ume+nEXaVk3jpVS8ksVIUUpiKw0mDcQtk+H5s9C/9naoACjq9RIK5YB\ntWH+YG1It52tOnSR/jO2UMrVkV+eaUnHWgF2z5Bfrk6OvN27LuPvCWf14Yv0n7GV+GumvQxtCKoI\nKcrdyrgKP96nTRT9v4+g6yRwMNEER68AGPKbdvS2ZBT8NQnsdHp+wa44nvhhJ6EBXix6uiU1yplr\nKsGjLasxY3Akxy6m0Hf6Fs4mpd/5QcpNqSKkKHcj9TJ82xPidsID30Djx/VOdHdcPKDfbGgwCNZP\nhtVvFnkhmr/jDGMW7KNFsD9zhzWjrJcOowYLQafwAH4c2oTLKZn0nbaFU5dT9Y5kSqoIKUp+pV2B\n73vD5aPw0E9Qu4/eiQrG0Qnu+RQaPQob/1ekhWju9lheWrif1iFl+WpIJB6uRp2qaJtGgb7MHdaM\n9Oxc+k3fQkyCKkT5pYqQouRHxlVtDtDlaG1kWUgnvRMVDgcH7ZTi9UK0akKhF6Ift8bwyqIDtA8r\ny4zBjXBzNtGpy9uoU8mbn55oRnauhQEzt6lTc/mkipDBXLhwgf79+xMcHEyjRo3o0aMHR48ezddz\n9OjRg6SkpCJKWIJlpsDsvnBhvzYEu0ZHvRMVruuFKPIx2PQxrHmn0J76lz1xvP7rQTrVKse0YlSA\nrgsN8OL7x5qSnJ7NoK+2cema6khsK1WEDERKSZ8+fWjXrh0nTpxg165dvPvuu1y8eDFfz7N06VJ8\nfHyKKGUJlZMJPz0Ecdvh/q8grLveiYqGgwP0+PCfa0SFMGpubfQlxvy8nxbBfnw+sGGxXZ26bmVv\nvn2sMReTMxj81XYS8/QvUm5NFSEDWbNmDc7Ozjz11FN/3xYREUGrVq0YM2YMderUoW7dusybNw/Q\nWj+0adOG+vXrU6dOHTZs2ABAUFAQly9f5vTp09SqVYthw4ZRu3ZtunTpQnq6dqrgxIkTdOvWjUaN\nGtG6dWuOHDli/xdsFhYL/Dpc693T6wvzXwO6EwcH6DkVQrvB0tHaAqh3ae+ZJIbP3k1ogBfTBzcq\ntgXoukaBvnz1cCSnElJ5/LsdZGQbb3kkozH3VcGismwsXDhQuM9Zvi50f++2mxw8eJBGjf67uOSi\nRYvYu3cv+/bt4/LlyzRu3Jg2bdowZ84cunbtymuvvUZubi5paWn/eeyxY8eYO3cuM2fOpG/fvixc\nuJBBgwbxxBNPMG3aNEJCQti2bRvDhw/nr7/+KrSXW6ysmaQt/tlhHNR/SO809uHopI36++5eWPA4\nPLwYApvn6ylOxqfw2Lc78PN04dvHGuNlY98fs2tRw5+P+9Vn+OzdjP55H5/0b6DaQdyGKkImsHHj\nRh566CEcHR0JCAigbdu27Nixg8aNG/PYY4+RnZ1N7969qV//vw3MqlWr9vftjRo14vTp06SkpLB5\n82YefPDBv7fLzFQT7m5q9w+wYQo0GAytX9Q7jX25eMCA+dqip3P7wdDV4B9i00MTU7N49NsdCOD7\nx5pSzqtkre7eo24FxnavyXvLjhDk58HormF6RzIsVYRu5g5HLEWldu3aLFiwwObt27Rpw/r161my\nZAmPPPIIo0aN4uGHH/7XNte7tILW+iE9PR2LxYKPj49aaftOTqyBP16A6u2h5/9s63xa3Hj4waBF\nMLMDzH0Ihq2+44oQ2bkWnpmzm/NJGcx9ohnV/D3sFNZYnmxTnZiEVD5bc5yqfqXoG2mAhWwNSF0T\nMpAOHTqQmZnJjBkz/r5t//79+Pj4MG/ePHJzc4mPj2f9+vU0adKEmJgYAgICGDZsGEOHDmX37t02\n7ad06dJUq1aNn3/+GdAGROzbt69IXpNpXTkJPw8B/1Do+x04loxTSTd1fUHWxFOwcOgd20BMWnKY\nzScSeOe+ujQKLGOnkMYjhGBirzq0DvHn1UUH2H7qit6RDEkVIQMRQvDLL7+watUqgoODqV27Nq+8\n8goDBgygXr16RERE0KFDByZPnkz58uVZu3YtERERNGjQgHnz5jFixAib9zV79my+/vprIiIiqF27\nNosXLy7CV2YyWakwbzAgtLlAZlgLrqgFtYTuk7Uliv5665ab/bQ9lm83n2Zoq2o80KiyHQMak7Oj\nA58PbEhV31IMn72bi8lq6PaNVCsHK9Wy4OZK3PdFSlg0DA4sgIELis9k1MLy+wtax9j7v4a6D/zr\nrl0xV+g/YyvNg/35ZkgkTqoL6d+OXrxG7883UatCaeYOa4aLU/H+3qhWDopyt7ZNgwM/Q4fXVAG6\nme6ToWoL+O05uPTPsP6ElEyemb2Hij7ufNq/gSpANwgN8OL9++uxKyaRd5Ye1juOoaifFEW5LmYz\nrHhN6z7aqoSNhLOVk4vWLtzFQ7tmlpWKxSIZOX8fV9Ky+HxAQ7xLleDrZ7dxT0RFHm9VjW83n+aX\nPXF6xzEMVYTyKImnJm+nRH0/0q5o82HKBEHvL7UJm8rNeZWH+2ZAfDQsfYkv151g/dF43ugZTp1K\n6vrZ7YztXpMm1Xx5ddFBjl9K0TuOIajfNCs3NzcSEhJK1hvvbUgpSUhIwM2tBMzvkBIWPwOp8doE\nTbfSeicyvuAO0GY07P2Rk6tmck9ERQY2rap3KsNzdnTg04ca4ObswHNz96gVFVDzhP5WuXJl4uLi\niI+P1zuKYbi5uVG5cgkY4bTjK4heCl3fgYr/nfCr3FxC5EhOb1jK286zsLR+GFES51HdhYDSbkx5\nMILHv9vJ+8uPMP6e2npH0pUqQlbOzs5Uq1ZN7xiKvV04oF0HCukCzYbrncY0pJS88uthDmU9w1qv\ncTj9/qQ2kdXJnA3q7K1jrQAeaRHErE2naR3iT4eaxm9tXlTU6Til5MpKgwWPgXsZ7TqQ+kveZj/v\njGPloYs83LUZTr0/g4sHYO27escylbHda1KzvBejf97PpRI8f0gVIaXkWjVB645633Tw8Nc7jWnE\nJKQy4fcomlf3Y2ir6lCzBzR8GDZ+DDFb9I5nGm7Ojnw2oAFpWTm8+PO+Ens9WhUhpWQ6uQ62T4em\nT0H1dnqnMY2cXAsj5+3F0UHwYd+If1aH7vqutrzPL09ARrK+IU2kRjkvXu1Riw3HLjN3+xm94+hC\nFSGl5Mm4qo2G86sBHcfrncZUvlx7gt2xSbzduw4Vfdz/ucPVE/rMgKtxsPwV/QKa0KCmgbSs4cfb\nSw5x5sp/27EUd6oIKSXPilch+Sz0ngYupfROYxqHzyczdfUxetarQK/6lf67QdWm0GoU7P0Rjiy1\nf0CTcnAQTH4gAgchGP3zPiyWknVaThUhpWSJXgZ7foSWL0CVxnqnMY2cXAtjFuzDp5Qzb/Wqc+sN\n274MAXXgj5GQnmS/gCZXycedN3qGs+3UFb7dfFrvOHalipBScqQnaQtwBtSBdmP1TmMq09ef5ODZ\nZCb2qkMZD5dbb+jkAr0+0yb+rnzNfgGLgQcjK9OhZjneX36Ek/ElZzUFVYSUkmPVeEi9pL1Jqvks\nNjt+6RpTVx2jR93y9Khb4c4PqNgAWj6vHXEeX130AYsJIQTv3VcXFycHXll0oMScllNFSCkZTm+C\nXd9qE1IrNtA7jWnkWiRjFuynlKsjb957m9NwN2o7FvxC4PcRkHmt6AIWM+VKu/Faj1psO3WF+TtL\nxmg5VYSU4i87Q3sz9KkK7V/VO42pfLv5NHtik5hwT23KeuXj6NHZDXp9ro2WWzWhyPIVR/0aV6FZ\ndV8mLT1cIiaxqiKkFH8bPoSEY9DzY60FgWKTc0npfLgymvZhZelVv2L+n6BqU2j6pLY235nthR+w\nmBJC8O599cjMsTD+tyi94xQ5VYSU4u3SYdj4P6jXD2p01DuNqbz5exQWKZnYq87dL07a4XXwqqiN\nlsvNKdyAxVg1fw9e6BTCsoMXWBF1Qe84RUoVIaX4sljgt+fB1UtbIVux2apDF1kRdZHnO4ZQxbcA\nc6lcvaD7+3DxoNa1VrHZsNbVqVWhNG8sPsi1jGy94xQZVYSU4mvn1xC3Hbq9q9aGy4e0rBzG/xZF\nSDlPbW24gqp1D4R0hTXvaNeIFJs4Ozrw7n11uXQtk6mrjukdp8ioIqQUT9cuwuqJUL29dipOsdnU\n1cc4m5TOpD7acOECEwJ6TAZpgeVqflZ+1K/iQ//GVZm1+TRHLhTPNfkMWYSEEL5CiF+EEKlCiBgh\nxIBbbPeIECJXCJGS56OdneMqRrRqPGSnQ48pqkVDPhy5kMzXG07RN7IyTar5Ft4TlwmCtmPg8O9w\ndEXhPW8J8FLXMEq7OfHGr1HFcqVtQxYh4HMgCwgABgJfCiFu1X5wi5TSM8/HWnuFVAwqdivsmwst\nngP/GnqnMQ2LRfL6LwfxcnNibPdahb+D5s+BfxgsHa31clJsUsbDhZe71WT76Sv8sues3nEKneGK\nkBDCA7gfGCelTJFSbgQWA4P1TaaYQm4OLBkNpStDm9F6pzGVBbvi2BmTyKs9auF7u6V57paTC/T8\nCJJiYf3kwn/+YqxvZBXqV/HhnaWHuZpevAYpGK4IAaFAjpTyaJ7b9gG3OhJqIIS4LIQ4KoQYJ4S4\nactyIcQTQoidQoid8fHxhZ1ZMYqd32hdPrtOUnOC8uFqejbvLz9Co8AyPNCoctHtKKgVRAyAzZ/B\n5eNFt59ixsFB8HbvOlxJzeKjldF6xylURixCnsCNV+CSAa+bbLseqAOUQzt6eggYc7MnlVLOkFJG\nSikjy5YtW4hxFcNIiYe/3taa1IX30juNqXyy+hhX0rJ4897adz8nyFadJoCTm9ZSQ7FZnUreDGoW\nyA9bYzh49qrecQqNEYtQClD6htu8gf8sQCWlPCmlPCWltEgpDwATgQfskFExolUTIDsNun+gBiPk\nw/FL1/hu82n6N65CnUreRb9DrwBo+xIcWwHH/iz6/RUjL3YJo0wpF8YtPlhsFjg1YhE6CjgJIULy\n3BYB2LJ+hQTUu09JdGa71kyt+XAoG6p3GtOQUvLm74dwd3FkdJcw++246VPgG6wN2c7Jst9+Tc7b\n3ZmXu9dkT2wSv+07p3ecQmG4IiSlTAUWAROFEB5CiFbAvcAPN24rhOguhAiwfl4TGIc2iEEpSSwW\nWDpGWx6mzUt6pzGVVYcvseHYZUZ2CsXP047tLZxctEnECcdh+3T77bcYeKBhZepW8ua9ZUdIyzL/\nUkiGK0JWwwF34BIwB3haShklhKhqnQtU1bpdR2C/ECIVWIpWvNT6LCXN/nlwfq92rcHVU+80ppGR\nnctbfxwipJwng5sH2j9AaFeo0RnWTYaUS/bfv0k5OAjeuCecC8kZTF93Uu84BWbIIiSlvCKl7C2l\n9JBSVpVSzrHeHmudCxRr/Xq0lDLAul11KeUbUsriNX5Rub2sVFj9JlRsCHUf1DuNqXy98RSxV9J4\n455wnB11eivo9q52HW/1RH32b1KNg3zpWa8C09ef4FxSut5xCsSQRUhRbLbpE7h2Xlug1EH9ONvq\nwtUMPl9znC7hAbQO0XG0qH+Idn1oz49wbo9+OUxobPeaSAnvLTuid5QCUb+1inkln4NNUyG8NwQ2\n1zuNqUxZGU1OruT1/wvXO4o2Us7DH5a9DMVwWZqiUrlMKZ5oU53f9p1jV8wVvePcNVWEFPNaPRFk\nLnR+U+8kphJ17ioLd8fxaMsgqvoVoE1DYXHzhg7j4Mw2OPyb3mlM5am2wQSUdmXi74dMO2RbFSHF\nnM7u1taHa/a0tjimYhMpJZOWHMbb3Znh7Q20rl6DQVAuHP4cr4Zs54OHqxMvda3Jvrirpl1XThUh\nxXyk1GZhHDY6AAAgAElEQVTbl/KH1mp9uPxYGx3P5hMJjOgYgre7s95x/uHgCJ3fgsRTWh8oxWZ9\nGlQioooPk1ccIT0rV+84+aaKkGI+h3+D2C3Q4TVwu3FxDeVWcnItvLP0MEF+pRjYVIch2XdSo6O2\n5NK69yE9Ue80puHgIHitRy0uJmfyzaZTesfJN1WEFHPJyYQ/39BO3TR4WO80pjJ/ZxzHLqUwtnut\nwmlWV9iE0I6G0pNgw4d6pzGVJtV86RwewJdrT3A5JVPvOPliwJ9ERbmNbdMg8TR0eRscb7pgunIT\nKZk5fPTnURoHlaFr7QC949xahXpQfwBsm679Pys2e7lbTdKzc/l0tblagasipJhH2hVY/6E2y75G\nR73TmMqMddpfyK/2qFX0q2QXVPvXQDjC6rf0TmIqNcp50r9xFWZvi+XU5VS949hMFSHFPDZ/ApnJ\n2vI8is3OX01nxoaT3BNRkQZVy+gd5868K0GLZ+HgAojbpXcaUxnRKQQXJwcmLzfPBFZVhBRzuHYB\ntk6Dug9A+Tp6pzGVD1cexWKBl7racZXsgmo5AjzKwsrX1QTWfCjn5cYTbaqz7OAFdsWYY3CHKkKK\nOayfApZsaPeK3klMJe/E1Cq+BpiYaitXL+3/OnYzHFmidxpTGda6OmW9XHl36WGkCQq4KkKK8SWe\nhl3fQoPB4BesdxpTmbw82ngTU23VcAj4h2qjIXPVusS28nB1YmSnUHbGJLIi6qLece5IFSHF+Na+\np01mbKt6BeXHtpMJrDsaz9Ntg401MdVWjk7Q6U24ckJb4FSxWd/IygSX9WDy8iNk51r0jnNbqggp\nxnbpMOz7CZoMg9IV9U5jGlJKpqyMppyXKw83D9I7zt0L6w5VmmoTWLPS9E5jGk6ODoztXouTl1P5\naccZvePclipCirH99Ta4eELLkXonMZW1R+PZcTqR5zqG4O7iqHecuyeENhry2nnYPkPvNKbSqVY5\nmgT5MnXVUVIzjduBVRUhxbjidsGRP6DFc+Dhp3ca07BYJFNWRFPVtxT9IqvoHafgAltASBfY+JFa\nzicfhBCM7VGTyylZfLPRuMv5qCKkGNdfE6GUHzQfrncSU1l28AJR55IZ2TnEmMvz3I2Ob0DGVa1/\nlGKzhlXL0Dk8gBnrT5KYaszVyYvJT6hS7JxcByfXQusXteG6ik1yci18+Gc0oQGe3BtRSe84had8\nXa19+9ZpkHxe7zSmMrpLGClZOXy57oTeUW5KFSHFeKTUGtaVrgSRj+udxlQW7TnLyfhUXuwShqOD\nwZfnya/2r2pzxdZP1juJqYSV96JP/Up8t/k0F65m6B3nP1QRUowneimc3QltXwZnN73TmEZmTi5T\nVx0jorI3XcINvEjp3fKtDo0egV3fQYIx/6o3qpGdQ7FIyVQDLm6qipBiLJZcbUScbzDUH6h3GlOZ\nuy2Ws0npjOla0/iLlN6tNi+BkyusmaR3ElOp4luKAU2qMn/nGcMtbqqKkGIsBxbApUNawzrVqsFm\naVk5fLbmOM2r+9GyRjEeSegVAM2Gw8GFcH6f3mlM5dkOIbg4OvDRn0f1jvIvqggpxpGTpf2FW74u\nhPfRO42pzNp0msspWYzuGlZ8j4Kua/k8uJfRrhsqNivr5cpjrYL4fd85os5d1TvO31QRUoxjz/eQ\nFAMd3gAH9aNpq6tp2Uxfd4JOtcrRKNAErRoKys0bWo2C46vg1Aa905jKE220JZw+WBGtd5S/qd90\nxRiy0mDdB1C1OYR01juNqUxff4LkjBxe7GKiVg0F1WQYeFWE1W+qVg/54O3uzNPtglkbHc/2U1f0\njgOoIqQYxfYZkHJBm5RY3E8nFaJL1zKYtek090ZUpFaF0nrHsR9nd2g3FuJ2aKMpFZsNaR5EOS9X\nJi8/YohWD6oIKfpLT4KN/9Padge20DuNqXyx5gRZuRZGdg7VO4r91R8IfjW00ZSWXL3TmIa7iyPP\ndwxhZ0wia6Iv6R1HFSHFALZ8BhlJ0HGc3klMJS4xjdnbYugbWZlq/h56x7E/Rydo/5o2mvLAAr3T\nmEq/xlUI9CvFByuOYrHoezSkipCir5RLsOULqN0HKkToncZUpq46hhCC5zqE6B1FP+G9tdGUa9/R\nRlcqNnF2dGBU51AOn0/m9/3ndM2iipCirw0fQU6G9hetYrPjl1JYuDuOwc0Cqejjrncc/Tg4QMfx\nWvfdPd/rncZU7qlXkZrlvfh41TFydGx8p4qQop+kWNj5NdQfAP4l+K/5u/C/P4/i7uzI8Haq3Tk1\nOmmjKtd9oBrf5YODg2BU51BOXU5l4e44/XLotmdFWfe+9m/bl/XNYTIHz15lyYHzPN6qGn6ernrH\n0Z8Q2qjKlAuwY6beaUylc3gAEVV8+GT1cTJz9BncoYqQoo/4o7B3DjQeCj7FoPGaHU1ZGY23uzND\n21TXO4pxBLbQRldu/J/Wd0ixiRCC0V1COZuUzk/b9WkDroqQoo81k8C5lNYvSLHZ9lNXWBsdz9Pt\ngint5qx3HGPpOE7rvLr5M72TmEqrGv40rebLZ2uOk55l/6MhVYQU+zu3Fw79qi1E6eGvdxrTkFLy\nwYojlPNyZUjzIL3jGE+FCG2U5ZbPISVe7zSmIYRgTNcw4q9l8t2W03bfvypCiv399Za2AGWLZ/VO\nYirrjsaz43Qiz3UMwd3FUe84xtT+NchJh40f6Z3EVCKDfGkXVpZp606QnJFt132rIqTY1+lN2sKT\nrUZqC1EqNrFYJB+siKaKrzv9ItU1tFvyD9FGW+74CpL0ucZhVi92DiMpLZuvN5yy634NWYSEEL5C\niF+EEKlCiBghxIDbbDtSCHFBCJEshPhGCKGGCxnV9bbdXhWgyRN6pzGV5VEXiDqXzMhOobg4GfLX\n1jjajtX+vT76UrFJ3credKtdnq83niIx1X4Tf4360/w5kAUEAAOBL4UQtW/cSAjRFRgLdAQCgerA\nm3bMqeTHsZVwZiu0GaMtQKnYJCfXwocrowkp50mv+pX0jmN8PlUg8nFt9OVl47WzNrJRXUJJzcph\n2jr7tU+3uQgJIX4VQvQUQhRp4RJCeAD3A+OklClSyo3AYmDwTTYfAnwtpYySUiYCE4FHijJf/LVM\n4hLVhLh8s1hg9VtQJggaPqx3GlP5Zc9ZTsSn8mKXMBwd1ArjNmn9Iji5qTbg+RQa4EXv+pX4bstp\nLiVn2GWf+SkoqcA8IE4I8Y4QoqimuIcCOVLKvD1o9wH/ORKy3rbvhu0ChBBF0t84O9fCPZ9u5M3f\nDxXF0xdvUYvg4gHtwrGjGlpsq8ycXD5edYx6lb3pWjtA7zjm4VkWmg+HqF9UG/B8eqFTCDm5ki/W\n2udoyOYiJKUcCFQA3gI6AdFCiPVCiIeFEIV5bsUTSL7htmTA6xbbXr1hO262rRDiCSHETiHEzvj4\nuxu+6ezowKBmVfnz0EX2xCbe1XOUSLnZ2l+k5WpDnQf0TmMqc7fFcjYpnTEloW13YWv+LLj5aK0e\nFJsF+nnwYd8InmprnyWh8nVqTUqZLKX8UkrZBKgL7AKmA+eFENOFELUKIVMKcGN3Lm/gmg3bXh9u\n9Z9tpZQzpJSRUsrIsmXL3nW4R1tWw8/DhSkrjdMe1/D2zoYrJ6HD66ptdz6kZeXw2ZrjNKvuS6sa\naj5Vvrn7aKMwj62EmC16pzGVXvUrUd7bzS77uqt3BCFERaAX0BPIARYCVYD9QojRBcx0FHC64XRf\nBBB1k22jrPfl3e6ilDKhgBluycPVieHta7DpeAKbj18uqt0UH9kZsPZ9qNwYwrrrncZUZm06zeWU\nLHUUVBBNngDP8qoNuIHlZ2CCsxDiASHEUiAG6A1MBipIKR+XUvZAG1DwekECSSlTgUXARCGEhxCi\nFXAv8MNNNv8eeFwIES6EKAOMA74tyP5tMbBpVSp4u/HBymhDtMc1tB1fwbVzqm13Pl1Ny2b6uhN0\nrFmORoG+escxL5dS0HYMxG7R5qcphpOfI6HzaKfeTgCNpJRNpJQzpZQpebZZDxTGxZLhgDtwCZgD\nPC2ljBJCVBVCpAghqgJIKZejFcI1aIXxFDC+EPZ/W27OjozoGMKe2CRWH9a/Pa5hZSTDhg+henuo\n1kbvNKYyY8MJkjNyeLFLmN5RzK/Bw+ATqM1Rs+jXN0e5ufwUoZFAJSnlc1LK/TfbQEqZJKWsVtBQ\nUsorUsreUkoPKWVVKeUc6+2xUkpPKWVsnm0/klIGSClLSykflVJmFnT/tri/kdZSecrKaN3b4xrW\n1i8g/Yp2FKTYLP5aJt9sPM09ERUJr3jj5VEl35xcoP2rcGE/HF6sdxrlBvkZHfeDlNI+A8dNwNnR\ngRc6hXDkwjXd2+MaUmqCtppxrXugUkO905jK52uOk5VrYWQn1eiv0NR9EMrWgr8mQW6O3mmUPNRQ\npQK43h73f38eJVvH9riGtPEjyE6F9gW6RFjixCWmMWdbLA82qkz1sp56xyk+HBy10ZkJx2DfXL3T\nKHmoIlQADg6C0V3COJ2QxsJd+rXHNZyrZ2H7TKjXH8rV1DuNqXyyWltm5vmO6iio0NX8P6jUCNa+\np43aVAxBFaEC6lirHA2q+jB19TEysvVpj2s46yeDtEC7sXonMZUT8Sks2BXHoGaBVPRRa+sVuutt\nwJPjYNcsvdMoVqoIFdD1hlDnr2Ywe1vsnR9Q3CWcgN0/QOSjUCZQ7zSm8tGfR3FzdmR4e/vMVC+R\nqrfTRmqunwKZKXfaWrEDVYQKQYtgf1rV8OeLNcdJySzhFz3XvANOrtC6oHOWS5aDZ6+yZP95Hm9V\nDX9P1Y2kSHUcD2mXYeuXeidRUEWo0IzuGkZCahazNtq3IZShXDgABxdA06fASy22mR9TVkbj7e7M\n0NbV9Y5S/FWOhLD/g82fQNoVvdOUeKoIFZL6VXzoHB7AjA0nSUqzX0MoQ/nrba1basvn9U5iKttO\nJrA2Op6n2wXj7a5WGLeLDq9D5jXY9LHeSUo8VYQK0YtdQknJzGH6+pN6R7G/2G1wdDm0HAHuZfRO\nYxpSSiaviCagtCtDmgfpHafkCAiHen1h2wxIPq93mhJNFaFCVLN8aXpFVGTWplNculaChoBKqS0Q\n6VFOOxWn2OyvI5fYFZPI8x1DcHdx1DtOydJuLFiyYcMUvZOUaKoIFbIXOoWSkyv5/K/jekexn+Or\nIGYTtH0JXDz0TmMaFovkgxXRBPmVom9kFb3jlDy+1aHhENj1LVwpwddydaaKUCEL8vfgwcgqzNke\ny5krJaANuMUCq960tu0eoncaU/lt3zmOXLjGqC5hODuqX0VdtBkDDk7aBFZFF+onvwg837EGQgim\nWme/F2sHF1rbdr+uLRSp2CQrx8KHf0YTXqE0PetW0DtOyVW6gtZzaP88uHhI7zQlkipCRaCCtzsP\nNwtk0e44jl8qxhPicrJgzdsQUBfq3K93GlOZtyOWM1fSGdMtDAcH1WdJV61GgquX1oJesTtVhIrI\n0+2CcXd25H9/HtU7StHZ/R0knoZO41Xb7nxIy8ph6urjNAnypV3o3beaVwpJKV9o8Rwc+QPidumd\npsRR7xxFxM/TlcdbV2fJgfMcPHtV7ziFLzMF1r0Pga2gRie905iK1rY7k5e6qbbdhtHsaSjlr43y\nVOxKFaEiNLR1NXxKOfPBimi9oxS+rV9Cajx0mqDadudDUloW06xtuyODVNtuw3D1gtYvwql1cHKt\n3mlKFFWEilBpN2eebhvMuqPxbDmRoHecwpOaAJumQs2eUKWx3mlMZdq6k6Rk5jC6q2rbbTiRj0Hp\nylobcKm6JduLKkJFbEiLICp4u/HessPI4vKDfb1hXYdxeicxlYvJGczadIpeERWpVUG17TYcZzdo\n9zKc3QXRS/VOU2KoIlTE3JwdGdU5lH1xV1lyoBgsD5J0BrbPgIgBqmFdPn2y+hi5FsmozuooyLAi\nBoBvsLYOokX1B7MHVYTs4L6GlalZ3osPVkSTlWPyNuDXJ/WphnX5cjI+hXk7zvBQk6pU9Suldxzl\nVhydoMNrcOkQHFigd5oSQRUhO3B0ELzcrSYxCWnM3W7ixneXjsC+OdB4GPioZWbyY/LyaFydHFTb\nbjMI7wPl68Lad7S5cEqRUkXITtqFlaVZdV8+WX2MaxnZese5O3+9Bc4e2igixWY7T19hedQFnmwb\nTFkv1bDO8BwcoMMb2hy4Pd/rnabYU0XIToQQvNK9FgmpWcw0Y6uH2K3aZL6Wz4OHn95pTENKyTtL\nD1POy5WhravpHUexVUhnqNoc1n0AWSVgDUgdqSJkRxFVfOhZrwIzN5ziUrKJWj1ICSteA68K0PwZ\nvdOYyrKDF9gdm8SozqGUcnHSO45iKyGg4xuQcgF2zNQ7TbGmipCdjekaRo7FwsdmWtw0ahGc3al1\no1StGmyWlWPh/eVHCA3w5EHVqsF8Altoq4Fs+AjSE/VOU2ypImRngX4eDGwayLwdZ8yxuGl2Bqya\nAAF1IOIhvdOYypxtMcQkpPFK91o4qkVKzanTBMi4CutV47uiooqQDp7rUAN3Z0cmLz+id5Q72z4D\nkmKhy9vgoDp/2io5I5upq4/RItiPdmFqkVLTKl8XGgyCbdMh4YTeaYolVYR04OfpypNtqrPy0EW2\nn7qid5xbS7ui/QVYozMEt9c7jal8ufYEiWnZvNqjllqk1Ow6vA6OLrBqvN5JiiVVhHQytHV1Kni7\n8dYfh7BYDLqcz7r3IesadHlL7ySmci4pnW82nqJPg0rUqeStdxyloLzKaz2HDv8OpzfpnabYUUVI\nJ+4ujrzULYwDZ6/yy56zesf5r4QTsOMraPgwlKuldxpTmbIyGgm82CVU7yhKYWn+DJSuBCte1Vra\nK4VGFSEd9YqoRERlbyavOEJaVo7ecf5t1XhwcoN2r+qdxFQOWv+oeLRlEJXLqOV5ig2XUtBxPJzf\nCwfm652mWFFFSEcODoJxPcO5mJzJ9HUGmsAas1k79dDyBfAK0DuNaUgpmfj7IcqUcmF4uxp6x1EK\nW90HoWIDWPWmmsBaiFQR0llkkC//V68C09ef4PzVdL3jaKcaVrwGXhXVxNR8WnrgAttPX2F0lzC8\n3Z31jqMUNgcH6PoOXDsHWz7TO02xoYqQAYztVhOLhA+WG6AD68EFcG43dBynnYJQbJKRncs7Sw9T\nq0Jp+jVWE1OLrcAWUOte2PgxXLugd5piQRUhA6jiW4rHW1Vj0Z6z7DuTpF+QzGuwchxUbAj1+uuX\nw4RmrD/J2aR03ugZriamFned34TcLK3nkFJgqggZxPB2wfh7uvDWH4f068C64UNtraweH2inHhSb\nnL+azpdrT9C9TnmaB6vFXYs93+rQ9EnY8yOc26t3GtNT7zQG4eXmzOguYeyMSeS3fefsHyDhBGz+\nDOoPhMqR9t+/ib2/7Ai5UvJqDzWUvcRoMwZK+cHSMWrIdgGpImQgD0ZWoV5lbyYtOWz/nkPLX9GG\nZHdUs8LzY1dMIr/uPcew1tWo4quuoZUY7j7aabm47bB/nt5pTM1QRUgI4SuE+EUIkSqEiBFCDLjN\nto8IIXKFECl5PtrZMW6hc3QQTOxVh0vXMvn0r+P22/HRFXBsBbR7WQ3JzgeLRTLx9yjKebmqIdkl\nUcQAqBQJf76hLXKq3BVDFSHgcyALCAAGAl8KIWrfZvstUkrPPB9r7RGyKNWv4kO/yCp8s/EUxy5e\nK/od5mRqR0F+IdDkyaLfXzHy864z7Iu7ysvdauLhqnoFlTgODtr109R4WPu+3mlMyzBFSAjhAdwP\njJNSpkgpNwKLgcH6JrO/l7qFUcrFkQm/RxX9IIWtX8KVE9DtPXByKdp9FSNXUrN4d9kRmgT5cl/D\nSnrHUfRSqSE0GgLbpsGlw3qnMSXDFCEgFMiRUh7Nc9s+4HZHQg2EEJeFEEeFEOOEELf8c1QI8YQQ\nYqcQYmd8fHxhZS4Sfp6ujO4axqbjCSw9UIRzEZLPw/oPIKwHhHQquv0UQ5OXH+FaRg5v9a6jVsku\n6Tq8Aa5e2iAFvUa2mpiRipAnkHzDbcmA1y22Xw/UAcqhHUE9BIy51ZNLKWdIKSOllJFlyxq/v8vA\npoGEVyjN20sOFd26cstfBksOdJ1UNM9fTO2KSeSnHWd4rGUQYeVv9eOplBgeftrk7tMbIOoXvdOY\njt2KkBBirRBC3uJjI5AClL7hYd7ATS+MSClPSilPSSktUsoDwETggaJ9FfajDVKozfmrGXxWFIMU\njq6EQ4uhzWht3oNik5xcC6//epDypd0Y0Umtkq1YNXpUa4C38nXINEHHZAOxWxGSUraTUopbfLQC\njgJOQoiQPA+LAKJs3QVQrM6LRFqvN8zccLJwBylkpcHSF8E/DFqMKLznLQG+3xLD4fPJvHFPOJ5q\nMIJynYMj/N9HkHwW1qgzC/lhmNNxUspUYBEwUQjhIYRoBdwL/HCz7YUQ3YUQAdbPawLj0AYyFCuv\n9qiFh6sTryw6UHjN79a9r7Xs7vk/NRghHy4mZ/DRn0dpE1qW7nXK6x1HMZoqTSDycW2Qwtndeqcx\nDcMUIavhgDtwCZgDPC2ljAIQQlS1zgWqat22I7BfCJEKLEUrYO/okLlI+Xu68lqPWuyMSWTujtiC\nP+HFQ9oKwPUHQVDLgj9fCTJpyWGyci1MvLe2Goyg3Fyn8eBRDn5/HnIN1iPMoAxVhKSUV6SUvaWU\nHlLKqlLKOXnui7XOBYq1fj1aShlg3ba6lPINKaWdlxmwjwcaVaZFsB/vLT3CxeSMu38iiwX+eAFc\nS0PniYUXsARYdzSe3/ad46m2wQT5e+gdRzEqN29t7tCFA7D1C73TmIKhipByc0II3ulTl6xcCxN+\ns/US2U3s+QHObIMub2sjehSbpGTm8OqiAwSX9eCZ9sF6x1GMrtY92rSHte9C4mm90xieKkImEeTv\nwYhOISw7eIGVUXcxdyjlkra8SGArqH/L1ZCUm5iyIppzV9N5//56uDo56h1HMTohtKMh4QBLXlRz\nh+5AFSETGda6OjXLe/HG4qj8LXAqJfwxErLTtcEI6nqGzXbFJPLdltMMbhZIZJCv3nEUs/CuDB3f\ngOOr4OBCvdMYmipCJuLs6MB799fj4rUMPliRjy6sUYvgyB/Q/lUoq+a22CozJ5eXF+6nQmk3XupW\nU+84itk0HgqVGsGylyH1st5pDEsVIZOpX8WHR1oE8f2WGLacSLjzA1Iva8uJVGwIzZ8t+oDFyOdr\nTnD8UgqT7qur5gQp+efgCPd+qq2wvXS03mkMSxUhExrTNYwgv1KMWbCPlMw7DANdOlpr2937C3BU\nb6S22h+XxBdrjtOnQSXah5XTO45iVgG1of0r2nI+BxfpncaQVBEyoVIuTnzYN4JzSelMWnKblXsP\nLdZ++Nu+BOVU109bZWTnMmr+Pvw9XZlwz+3Wz1UUG7QYoZ2WW/KiNkBI+RdVhEyqUaAvw1pXZ+72\nWNZG3+QH+9pFbTBC+XrQ8gX7BzSxKSuiOX4phckP1MO7lLPecRSzc3SC3l9CVqr2O6lGy/2LKkIm\nNrJzKCHlPBm78ABX0/KMlpMSfntW+6G/byY4qjdSW209mcDXm04xqFlV2oQaf7V1xSTKhkGH17UB\nQvvn653GUFQRMjE3Z0c+7BtBfEom4xYf/KcB3s6v4dhKbVWEcmpUl61SMnMY/fM+qvqW4tUe6vSl\nUsiaPwNVmmnXadUk1r+pImRy9Sr78ELHEH7bd46Fu89C/FFY8TrU6ARNntA7nqmMXxzFuaR0Puob\nQSkXNYhDKWQOjnDfDEDAwmFqbTkrVYSKgeHta9C0mi9vLd5L5vzHwNkden2uJqXmw6LdcSzcHcdz\nHUJoFKgmpSpFpEwg9PwI4rZrq9krqggVB44Ogo/712ekwzxc4w+Q/X9TwUu1GrDVyfgUXv/1IE2q\n+fJchxp6x1GKu7oPQP2BsGEKnN6kdxrdqSJUTFQ4v4ZH+I0fczoyOUa9kdoqMyeX5+buwcXJgan9\n6+PkqH4lFDvoPhnKVINFwyDtit5pdKV+44qDxBj49SmoEMGJhq8xc8Mp/jpyUe9UpvDu0iNEnUtm\nygMRVPB21zuOUlK4esIDX2vzhn55SmuzUkKpImR2OZnw8yNac/MHv+Ple+pTu2JpXvhpLzEJqXqn\nM7SlB87z7ebTPNIiiE7hAXrHUUqaig2g27twbIV2aq6EUkXI7FaOg3O7tWV5fKvh5uzItEGNEELw\n5A+7SM/K1TuhIUVfuMbon/fRoKoPr/RQw9gVnTQeCvX6wZp3tBW3SyBVhMxs30+wfTo0ewZq9fz7\n5iq+pfjkoQZEX7zGK4v2/zN/SAHgano2T/6wEw9XJ6YNaqR6BCn6EQJ6fqytMbdwqHZqvYRRRcis\nzuyA356DoNbQ+c3/3N02tCyjOoXy695zfLf5tP3zGZTFInnhpz3EJabz5cCGBJR20zuSUtK5lIK+\n32vXheY/rPX9KkFUETKjq2fhpwFQuqL2w3uLZXmeaV+DTrXK8daSw2w4Fm/nkMb0v1VHWRMdz/h7\nwlWTOsU4/ILhvulwfl+JG6igipDZZKXBTw9pfy09NA9K3fqN1MFB8L9+9Qkp58nwH3dz9OI1OwY1\nnoW74vj0r+P0jazMoGaBesdRlH8L6w5d3oJDv8Kat/VOYzeqCJmJxQK/Pg3n92vDO21YF87LzZmv\nH2mMm4sjj87aQfy1TDsENZ5Nxy/z8sL9tAj24+3edRFqNQnFiJo/C40egQ0fwp7ZeqexC1WEzEJK\nWP6y9ldSl7cgtKvND63k4843QxpzJTWLod/vLHEj5qIvXOOpH3YRXNaTaYMb4eKkfuwVgxICekyB\n6u3g9xFwar3eiYqc+m00i/VTYPsM7S+lFs/l++F1K3sztX999scl8dzc3WTnloxzzheTM3h01nZK\nuToy69HGlHZTbS0Ug3N0hge/A9/q8NNAOLdX70RFShUhM9g5SztHXK8/dH7rrp+mS+3yTLy3NqsO\nX6ZpS+YAAAxhSURBVGLU/H3kWor30O2ElEwGfbWNq+nZfPNIYyr6qBURFJNw94HBi8DNG37oA5eO\n6J2oyKgiZHRRv8CSURDSBXp9Bg4F+y8b3DyIsd1r8vu+c7yyaD+WYlqIElOzGPjVNs4kpvH1I42p\nXdFb70iKkj/eleHhxdqR0Q+94copvRMVCVWEjOzAAljwOFRuoh2eF1KH1KfaBvN8hxrM3xnHxD8O\nFbvJrFfTsxn8zTZOXk7lq4cb06y6n96RFOXu+AXD4F8hJwO+76VNzyhmVBEyqr1ztRV2qzaDQQu1\nCW2FaGTnUIa2qsa3m08z/reoYnNElJyRzZBvtnP0QgrTBzeiVYi/3pEUpWACwmHQIm217VndIOGE\n3okKlSpCRrT7e20odlBrGPiztuJuIRNC8Nr/1WJY62p8vyWGkfP3mn6wQvy1TPpN30rUuat8NqAB\n7cPK6R1JUQpHpYYw5DfITIFZ3eFilN6JCo0qQkYiJWz8WFuOJ7gDDJgHLh5FtjshBK/2qMWYrmEs\n3nuOJ0w8fPvMlTQenLaZ05dT+WpIY7rUVk39lGKmUkN4dBkIR5jVQ1u6qxhQRcgocnNgyYuwajyE\n94b+c7Q23UVMCMEz7WvwTp+6rD0az+Cvt5GQYq4JrbtjE+nzxWaupGbx49CmtA0tq3ckRSka5WrC\nY8vBvYx2jejIEr0TFZgqQkaQdgXm9oOdX0OL5+GBWeBs34U1BzStymcPNeTA2avc+9kmDp9Ptuv+\n79bivWfpP2MrpVwcWTS8BY0Cy+gdSVGKVplAeGwFlA3T5hFt+FA7i2JSqgjp7fx+mNEOTq7TlnTv\n8laBh2Hfrf+rV4H5TzYnx2Lhvi8289u+c7rksEVWjoWJvx9ixE97qf//7d19bFX1Hcfx95e2lFIo\n5TnyVJ4VENANxfmE+BDGMskGM5sgC8yHxEFcnHGaRSczLjqTJbplGudwTlEzQ1TUqJl0wwjKkwo+\nDC0IWCzPVkpLS0t7v/vjlIwRC72Xe+/v3PJ5JSfhnlzu/f7u7Tmf+/udc35ncCkvLbiIkf26hy5L\nJDu694f5r8HZM6H8Xlg6Hw7nxg/H4ymEQnGHtY/D4qug5Ug01jtpfuiqmDi4lFcWXszYASXc8twH\n/GrpRuqbmkOX9X92VNdzzWPv8sSqbcy7cChLrp9Mr+LOocsSya6CIpi1GK5cBP95GR67FHZ+ELqq\npFlHu0akPSZNmuTr168PV8DBXbBsAXxeDiOvhB88Ct3idSbXkZYEDy2v4JEVnzOsTzG/nzWB8wLf\n+iCRcJ5dW8n9r22ikxkP/mgC08efEbQmkVioXA1LfwZ1e+GS26IlP9wPMzN7z90nteu5CqEsammG\ndY/Dv34HieZo6O28G6JJC2PqnS37uX3ph1QdaGDuBWXc/t0zg8y/tnlPLb9Z9gnvbv2Ki0f24YFZ\n4xnUM73XTonktPpqeP0O+Oh56Dc2Gt4fMjlIKQqhk8h6CLnD5jeh/Lew5+Oo9zP9wehq6BxwqLGZ\nP/yzgr+9s43SogJuuWIUcyaXZWU26upDTTy8vIIlayop7pzHndPHcO35g3UrBpG2fPYGvHor1O6E\ncT+Mhut6Ds1qCQqhk8haCCUSsOXN6OyVHWugtCzq/YyZEeveT1s+rqrh/tc3sWrLVwzqWcSNlwzn\nmkmD6No5P+3vtffgYR5/eytLVlfS2NzC7MlD+OVVZ+rYj0h7NB2CVQ/Dqj9Goy4TfgwX/QL6js7K\n2+dsCJnZQmAeMB54zt3nneT5twJ3AF2BpcDN7n7Si1wyHkI1VfDJC7BuMXy9DboPgCm3w7lz0zb/\nWyjuzoqKffypfDPvVx6gtGsBM88dxMxvDWTcgJJT6qE0tyRYuWU//1i3g+Wb9pBwmDFxAAumjtCZ\nbyKpqKmCVQ9Fs7A0N8KIqXDOHDjr+xm9DCSXQ2gmkACmAUUnCiEzmwY8BVwO7AReBFa7+50ne5+0\nh1BjHVS9B5XvwpZy+HJttH7wZDj/pqjnE/AgYaas317N4pXbKN+0l6aWBMP7FHPp6L5cNLIP4wf2\noH9J4QlDqSXhbNtfx4YdNby9eR8rPttHTcMRehV3Zua5A5n7nTLKemduxgiR00bdPlj3V9jwDNTs\ngIJiGD4lOjQw6Dzoe1Za91E5G0JHmdl9wKCThNCzwHZ3/3Xr48uBZ939pPO1nFIIld8LNV9G3d36\naqjeCnW7j1YFZ0yEMVdHY7E5csznVB2ob+LVD3exfNMe1mytpuFINPVPadcCynp1pXe3QkqLCnCi\n4DnQcITdNQ18+XUD9a3TBPUu7sxlZ/bjqrH9mHpWPwrz8wK2SKSDSiRg21uw6WXYvBxqKqP1nQqg\n1zDo1j86U7egCEZNg7EzUnqbZEIo/YP52TMOWHbM441AfzPr7e5fHf9kM7sJuAlgyJAhqb/r9pVQ\nuxsKu0NhCYy8IvryzjgHBp8f3YTqNFPatTPXXVDGdReU0djcwsYdNWzadZBPdx+k6sBh9tYepmJP\nLWaQZ0aPogKG9i7mwhF9OHtgD8YP7MHIft3I65R7x8lEckqnTtGQ3Iip0QlT1Vuja4t2f9j6g3ov\nVL0PLU3Qc1hWSsrlntDnwAJ3f6P1cQHQBAxz9+0nev3g1wmJiHRgyfSEsjZjgpmtMDNvY1mZwkvW\nASXHPD7aBak99WpFRCQbsjYc5+6XpfklPwEmAs+3Pp4I7PmmoTgREYmnWM0dZ2b5ZtYFyAPyzKyL\nmbUVlE8B15vZWDPrCdwNPJmlUkVEJA1iFULAXUADcCdwXeu/7wIwsyFmVmdmQwBajwU9CPwb+ALY\nBtwTomgREUlNLE9MyDSdmCAikjmxPDFBRETkeAohEREJRiEkIiLBnJbHhMxsH9HJDJnQB9ifodfO\nJrUjXtSOeFE7TqzM3fu254mnZQhlkpmtb+8BuThTO+JF7YgXtSN9NBwnIiLBKIRERCQYhVD6/SV0\nAWmidsSL2hEvakea6JiQiIgEo56QiIgEoxASEZFgFEIiIhKMQigDzGyJme02s4NmVmFmN4SuKVlm\nVmhmi83sCzOrNbMNZjY9dF2pMLOFZrbezBrN7MnQ9STDzHqZ2Ytmdqj1u5gduqZk5fLnf6wOtk3E\nZh+lEMqMB4Dh7l4CzADuM7NvB64pWfnADmAK0V1r7wKeN7OhAWtK1U7gPuCJ0IWk4M9Et63vD8wB\nHjWzcWFLSlouf/7H6kjbRGz2UQqhDHD3j929/ujD1mVEwJKS5u6H3H2Ru29394S7v0p0z6ZcC1Pc\n/QV3fwnIqbvumlkxMAu4293r3H0lsAyYG7ay5OTq53+8DrZNxGYfpRDKEDN7xMzqgU+BXcBrgUs6\nJWbWHxhNdFt1yY7RQLO7VxyzbiOQaz2hDinXt4m47KMUQhni7j8HugOXAC8AjWErSp2ZFQDPAH93\n909D13Ma6QYcPG7dQaK/KwmoI2wTcdlHKYSSZGYrzMzbWFYe+1x3b2kdQhkE3Bym4m/W3naYWSfg\naaLjEguDFdyGZL6PHFQHlBy3rgdQG6AWaRX3bSIZcdhH5Yd401zm7pel8N/yidkxofa0w8wMWEx0\nUPx77n4k03UlK8XvI1dUAPlmNsrdN7eum0iODv90BLmwTaQo2D5KPaE0M7N+ZvYTM+tmZnlmNg24\nFigPXVsKHgXGAFe7e0PoYlJlZvlm1gXIA/LMrIuZxf4HmLsfIhomudfMis3sYqIzmZ4OW1lycvXz\nb0PObxOx20e5u5Y0LkBf4C3gANH4/UfAjaHrSqEdZURnzBwmGhY6uswJXVsKbVnE/84AOrosCl1X\nO2vvBbwEHAIqgdmhazqdPv/j2tEhtom47aM0gamIiASj4TgREQlGISQiIsEohEREJBiFkIiIBKMQ\nEhGRYBRCIiISjEJIRESCUQiJiEgwCiEREQlGISQSQ2bW18x2mdk9x6ybYGaHzeyakLWJpJOm7RGJ\nqdaJJV8hup30BmA9sNbd5wctTCSNFEIiMWZmDxHNnP0W0c3HznH3urBViaSPQkgkxsyskOiW3qOA\nC919TeCSRNJKx4RE4m0oMJjoFgLDw5Yikn7qCYnElJkVAKuJ7rC6BrgHmOjulUELE0kjhZBITJnZ\nA8BsYAJQA7wOdAEud/dEyNpE0kXDcSIxZGZTgNuAn7r7AY9+Lc4DxgJ3hKxNJJ3UExIRkWDUExIR\nkWAUQiIiEoxCSEREglEIiYhIMAohEREJRiEkIiLBKIRERCQYhZCIiATzX5Iz4nL76uLFAAAAAElF\nTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(X, S, label=\"Sine\")\n", "plt.plot(X, C, label=\"Cosine\")\n", "plt.legend(loc=2); # upper left corner\n", "plt.xlabel('x')\n", "plt.ylabel('y')\n", "plt.title('Sine and Cosine Waves')\n", "save_fig(\"sine_cosine\")" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "bar_chart.png\t\t histogram.png sine_cosine.png\r\n", "box_and_whiskers_plot.png q_q_plot.png stacked_bar_chart.png\r\n", "grouped_bar_chart.png\t scatter.png\r\n" ] } ], "source": [ "! ls ./images/" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Importing image and displaying it:" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import matplotlib.image as mpimg\n", "img = mpimg.imread('./images/sine_cosine.png') #Reading and saving the image as a numpy array" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(img)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 6: A Bar Chart" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure bar_chart\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "y = [3, 10, 7, 5, 3, 4.5, 6, 8.1]\n", "N = len(y)\n", "x = range(N)\n", "width = 1/1.5\n", "plt.bar(x, y, width, color=\"blue\")\n", "save_fig(\"bar_chart\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 7: A Stacked Bar Chart" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure stacked_bar_chart\n" ] }, { "data": { "image/png": "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\nKEnSPRpSUPOf6PnWqrqmqq4F/pFuxWhJksZiwYKqqp/TfSzB6LLnLoEuSRqrodPM3wP8eZL9kjwE\neAWwYXyxJEnTbugsvtcB+wKX03165vnA68cVSpLuM5JJJ1g+y/z5gYMKqqpuo/sU05PHG0eSpI5L\nHUmSmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJ\nkppkQUmSmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJkppkQUmSmmRBSZKa\ntHLSASQ1Kpl0guVTNekE2gFHUJKkJllQkqQmWVCSpCZZUJKkJg0qqCQXJdmWZEt/+964g0mSptti\nRlCnVNXq/nbI2BJJkoSX+CRJjVpMQb0xybVJLk5y1I52SLIuyWyS2bm5uaVJKEmaSkML6lTgkcAj\ngPXAp5M8avudqmp9Va2tqrUzMzNLGFOSNG0GFVRVfaWqNlfVrVV1HnAxcOx4o0mSptmuvgdVwBSt\ngyJJWm4LFlSSfZIck2SPJCuTnAD8BvC58ceTJE2rIYvF7gacCTwWuB24DHh+VV0+zmCSpOm2YEFV\n1RzwlGXIIknSnfw9KElSkywoSVKTLChJUpMsKElSkywoSVKTLChJUpMsKElSkywoSVKThqwkId1/\nZMqWkKyadAJplzmCkiQ1yYKSJDXJgpIkNcmCkiQ1yYKSJDXJgpIkNcmCkiQ1yYKSJDXJgpIkNcmC\nkiQ1yYKSJDXJgpIkNcmCkiQ1yYKSJDXJgpIkNcnPg5Kke2HNqRsmHWHZbFzm53MEJUlqkgUlSWrS\nogoqycFJtiV5/7gCSZIEix9BvR342jiCSJI0anBBJTkOuAG4cHxxJEnqDCqoJHsBZwCvXGC/dUlm\nk8zOzc0tRT5J0pQaOoJ6HXBOVV29s52qan1Vra2qtTMzM/c+nSRpai34e1BJDgeOBp44/jiSJHWG\n/KLuUcAa4MokAKuBFUkOraonjS+aJGmaDSmo9cCHR75+NV1hnTSOQJIkwYCCqqqtwNb5r5NsAbZV\nlbMgJEljs+i1+Krq9DHkkCTpblzqSJLUJAtKktQkC0qS1CQLSpLUJAtKktQkC0qS1CQLSpLUJAtK\nktSkRf+irqTpsObUDZOOsGw2TjqAdsgRlCSpSRaUJKlJFpQkqUkWlCSpSRaUJKlJFpQkqUkWlCSp\nSRaUJKlJFpQkqUkWlCSpSRaUJKlJFpQkqUkWlCSpSRaUJKlJFpQkqUkWlCSpSRaUJKlJFpQkqUmD\nCirJ+5NsSnJTksuTvHjcwSRJ023oCOos4JFVtRfwXODMJE8eXyxJ0rQbVFBV9e2q2jr/ZX971NhS\nSZKm3sqhOyZ5B3AisAr4OnDBmDJpVySTTrB8qiadQNIyGDxJoqpOBvYEngF8DLh1+32SrEsym2R2\nbm5u6VJKkqbOombxVdXtVfUl4ADgpB1sX19Va6tq7czMzFJllCRNoV2dZr4S34OSJI3RggWVZL8k\nxyVZnWRFkmOAFwIXjj+eJGlaDZkkUXSX895JV2hXAC+vqk+NM5gkabotWFBVNQccuQxZJEm6k0sd\nSZKaZEFJkppkQUmSmmRBSZKaNHipI+n+YM2pGyYdYVltnHQA6V5wBCVJapIFJUlqkgUlSWqSBSVJ\napIFJUlqkgUlSWqSBSVJapIFJUlqkgUlSWqSBSVJapIFJUlqkgUlSWqSBSVJapIFJUlqkgUlSWqS\nBSVJapIFJUlqkgUlSWqSBSVJapIFJUlqkgUlSWqSBSVJapIFJUlq0oIFlWT3JOckuSLJ5iTfSPKs\n5QgnSZpeQ0ZQK4GrgCOBvYHTgPOTrBlfLEnStFu50A5VdTNw+shdG5L8CHgysHE8sSRJ027R70El\n2R94DPCdHWxbl2Q2yezc3NxS5JMkTalFFVSS3YAPAOdV1WXbb6+q9VW1tqrWzszMLFVGSdIUWvAS\n37wkDwDeB/wCOGVsibRL1py6YdIRls3GSQeQtCwGFVSSAOcA+wPHVtVtY00lSZp6Q0dQZwOPA46u\nqlvGmEeSJGDY70EdBLwEOBzYlGRLfzth7OkkSVNryDTzK4AsQxZJku7kUkeSpCZZUJKkJllQkqQm\nWVCSpCZZUJKkJllQkqQmWVCSpCZZUJKkJllQkqQmWVCSpCZZUJKkJg3+PKiJyRQtA1g16QSS1AxH\nUJKkJllQkqQmWVCSpCZZUJKkJllQkqQmWVCSpCZZUJKkJllQkqQmWVCSpCZZUJKkJllQkqQmWVCS\npCZZUJKkJllQkqQmWVCSpCYNKqgkpySZTXJrknPHnEmSpMEfWPgT4EzgGGDV+OJIktQZVFBV9TGA\nJGuBA8aaSJIklvg9qCTr+kuBs3Nzc0t5aEnSlFnSgqqq9VW1tqrWzszMLOWhJUlTxll8kqQmWVCS\npCYNmiSRZGW/7wpgRZI9gF9W1S/HGU6SNL2GjqBOA24BXgO8qP/zaeMKJUnS0GnmpwOnjzWJJEkj\nfA9KktQkC0qS1CQLSpLUJAtKktQkC0qS1CQLSpLUJAtKktQkC0qS1CQLSpLUJAtKktQkC0qS1CQL\nSpLUJAtKktQkC0qS1CQLSpLUJAtKktQkC0qS1KRBn6g7SWtO3TDpCMtm46QDSFJDHEFJkppkQUmS\nmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJkppkQUmSmmRBSZKaZEFJkpo0qKCSPDTJx5PcnOSKJMeP\nO5gkaboNXYvv7cAvgP2Bw4HPJPlmVX1nbMkkSVNtwRFUkgcDvwf8TVVtqaovAZ8E/nDc4SRJ0ytV\ntfMdkicCF1fVg0buexVwVFU9Z7t91wHr+i8PAb63tHGXzb7AtZMOcR/hazWMr9Mwvk7D3Zdfq4Oq\namahnYZc4lsN3LTdfTcBe26/Y1WtB9YPitewJLNVtXbSOe4LfK2G8XUaxtdpuGl4rYZMktgC7LXd\nfXsDm5c+jiRJnSEFdTmwMsnBI/cdBjhBQpI0NgsWVFXdDHwMOCPJg5McATwXeN+4w03Qff4y5TLy\ntRrG12kYX6fh7vev1YKTJKD7PSjg3cAzgeuA11TVB8ecTZI0xQYVlCRJy82ljiRJTbKgJElNsqBG\nuObgMElOSTKb5NYk5046T6uS7J7knP57aXOSbyR51qRztSjJ+5NsSnJTksuTvHjSmVqW5OAk25K8\nf9JZxmnoWnzTwjUHh/kJcCZwDLBqwllathK4CjgSuBI4Fjg/yROqauMkgzXoLGBdVW1N8ljgoiRf\nr6pLJx2sUW8HvjbpEOPmCKrnmoPDVdXHquoTdDM6dQ+q6uaqOr2qNlbVHVW1AfgR8ORJZ2tNVX27\nqrbOf9nfHjXBSM1KchxwA3DhpLOMmwV1l8cAv6yqy0fu+ybw+Anl0f1Mkv3pvs8cke9Aknck2Qpc\nBlwDXDDhSM1JshdwBvDKSWdZDhbUXQavOSgtVpLdgA8A51XVZZPO06KqOpnu39sz6BYHuHWyiZr0\nOuCcqrp60kGWgwV1F9cc1FgkeQDdyiu/AE6ZcJymVdXt/eX1A4CTJp2nJUkOB44G3jzpLMvFSRJ3\nuXPNwar6fn+faw7qXkkS4By6iTfHVtVtE450X7ES34Pa3lHAGuDK7tuK1cCKJIdW1ZMmmGtsHEH1\npnTNwV2SZGWSPYAVdP9A9kjif3Z27GzgccBzquqWSYdpUZL9khyXZHWSFUmOAV7IFEwCWKT1dKV9\neH97J/AZutm090sW1N2dTDdt+mfAB4GTnGK+Q6cBtwCvAV7U//m0iSZqUJKDgJfQ/TDZlGRLfzth\nwtFaU3SX864Gfg68CXh5VX1qoqkaU1Vbq2rT/I3ubYltVTU36Wzj4lp8kqQmOYKSJDXJgpIkNcmC\nkiQ1yYKSJDXJgpIkNcmCkiQ1yYKSJDXJgpIkNen/AF7hlDKdlCriAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n = 5\n", "data1 = np.array(range(n)) + np.random.rand(n)\n", "data2 = np.random.rand(n) + 1\n", "\n", "bar_locations = np.arange(n)\n", "plt.bar(bar_locations, data1)\n", "plt.bar(bar_locations, data2, bottom=data1, color='r')\n", "plt.title(\"Stacked Bar Charts\")\n", "save_fig(\"stacked_bar_chart\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 8: A Grouped Bar Chart" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure grouped_bar_chart\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n = 5\n", "data1 = np.array(range(n)) + np.random.rand(n)\n", "data2 = (np.array(range(n)) + np.random.rand(n)) / 2\n", "\n", "bar_width = 0.4 # default: 0.8\n", "bar_locations = np.arange(n)\n", "\n", "plt.bar(bar_locations, data1, bar_width)\n", "plt.bar(\n", "\tbar_locations - bar_width, \n", "\tdata2, \n", "\tbar_width, \n", "\tcolor='r'\n", ")\n", "\n", "plt.title(\"Grouped Bar Charts\")\n", "save_fig(\"grouped_bar_chart\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 9: Scatter Plots" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure scatter\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJztvX+QVOd55/t9uucAPRAxYGOX1RYga23IKhgmkBUJTsVS\nXKLWirSzEBsr0m55qxJlk/K9BWZnF9VyLdDVXqiwvlLdW3FSuuuUs5HiGiSUWSl4S9qK5FvXJPIa\ndgYTssiJjIBt7A02DJKYBnp63vtH99ucPv2+57zvOe/pPqf7+VRR0vT0nH7Pj36f9/nxfh8SQoBh\nGIZhskah1wNgGIZhGBVsoBiGYZhMwgaKYRiGySRsoBiGYZhMwgaKYRiGySRsoBiGYZhMwgaKYfoE\nItpHRM/1ehwM4wo2UMzAQUSfIqK/JKKrRHSZiI4R0S8kPOYXieg7gde+QURPJRttx+d8g4huEtH7\nzbH/FyJaG+M47xDRZ1yOjWFcwwaKGSiI6DYAfw7g/wawHEAZwH4AN3o5LhVENKT51e8JIZYA+CiA\nvwfwja4NimG6CBsoZtD4BAAIIb4phKgLIapCiNeEEN+XbyCi3yKi/05E7xHR3xDRzzdf30NEb/te\n/6fN138WwB8C+MWmZzNDRI8BeATAv26+9krzvbcT0REiukREZ4nof/V97j4iepGIniOidwF8MexE\nhBCzAP4UwM+pfk9EDxHR6eZ4vt0cJ4joTwCsBPBKc2z/Ot6lZJh0YQPFDBo/AFAnoj8mon9MRMv8\nvySizwHYB+CfA7gNwEMAftr89dsAfhnAUjS8rueI6CNCiP8O4F8C+CshxBIhxIgQ4lkAz6Pp7Qgh\nHiSiAoBXAJxEw3P7VQA7iWirbwj/BMCLAEaaf6+FiJagYQSnFL/7BIBvAtgJYAWAb6FhkBYIIf4Z\ngPMAHmyO7feiLxvDdB82UMxAIYR4F8CnAAgA/w+AS0T0MhF9uPmW30TDqHxPNPg7IcS55t++IIS4\nKISYF0JMAPhbAP/I4uN/AcAKIcSTQoibQogfNsfwBd97/koIMdn8jKrmOP+KiGYA/B2AJVB7WjsA\nHBVC/BchRA3AvwdQAvBLFuNlmJ6ii3EzTN/S9Hi+CADNAoPnADwD4GEAd6DhKXVARP8cwJcBrG6+\ntATABy0+ehWA25vGRVIE8P/5fr5gcJx/L4TYG/Ge2wGckz8IIeaJ6AIanhvD5AI2UMxAI4Q4Q0Tf\nAPDbzZcuALgr+D4iWoWGt/OraHg5dSKaBkDyUKrDB36+AOCsEOLjYUOyGH4YFwGskz8QEaFhfCuO\nP4dhUoNDfMxAQURriWg3EX20+fMdaHhObzbf8h/QCKFtpAb/oGmcFqMxqV9q/t2/QHtxwv8E8FEi\nWhB47WO+n/8rgPeI6N8QUYmIikT0c0lL3DUcBvAAEf0qEXkAdqNRqfiXmrExTOZgA8UMGu8BuAfA\nd4noGhqG6a/RmMAhhHgBwL9DozruPQCTAJYLIf4GwFcB/BUak/s6AMd8x30dwGkAPyainzRf+zqA\nf9isopsUQtQB/BqADQDOAvgJGgZxqeuTFEK8BeBRNMrpfwLgQTSKIm4233IAwN7m2P6V689nGBcQ\nNyxkGIZhsgh7UAzDMEwmYQPFMAzDZBI2UAzDMEwmYQPFMAzDZJKe74P64Ac/KFavXt3rYTAMwzBd\n4sSJEz8RQqyIel/PDdTq1atx/PjxXg+DYRiG6RJEdC76XRziYxiGYTIKGyiGYRgmk7CBYhiGYTIJ\nGyiGYRgmk7CBYhiGYTIJGyiGYRgmk/S8zJxh0mJyqoJDr76FizNV3D5SwvjWNRgb5X59DJMX2EAx\nfcnkVAWPv3QK1VodAFCZqeLxl04BABsphskJbKAyBK/43XHo1bdaxklSrdVx6NW3+JoyTE5gA5UR\neMXvloszVavXGYbJHlwkkRHCVvyMPbePlKxeZxgme7CBygi84nfL+NY1KHnFttdKXhHjW9f0aEQM\nw9jCBioj8IrfLWOjZRzYtg7lkRIIQHmkhAPb1nG4lGFyhNMcFBE9B+AzAIYB/BjA7wkh/oPLz+hX\nxreuactBAbziT8rYaJkNEsPkGNdFEgcBPCaEmCWitQC+TURTQogTjj+n75ATKVfxMQzDNHBqoIQQ\nf+3/sfnvLgBsoAzgFT/DMMwtnOegiOhrRDQL4AyAHwH4luI9jxHRcSI6funSJddDYBiGYfoA5wZK\nCPG7AH4GwC8DeAnADcV7nhVCbBJCbFqxIrLrL8MwDDOApFLFJ4SoCyG+A+CjAH4njc9gGIZh+pu0\ny8yH0MhBMQzDMIwVzgwUEX2IiL5AREuIqEhEWwE8DOAvXH0GwzAMMzi4rOITaITz/hANw3cOwE4h\nxMsOP4NhcgULADNMfJwZKCHEJQC/4up4DJN3WACYYZLBUkcMkxIsAMwwyWADxTApwQLADJMM7gfF\nDCxp54duHymhojBGLADMMGawB9XnTE5VsOXg67hzz1FsOfg6JqcqvR5SJpD5ocpMFQK38kMurw+3\n/GCYZLAH1ccMapLexDPqRkt4FgBm+oVeVaOygepjujEJZw1To9yt/FA3BYC5pJ1Jg14udDnE18cM\nYpLetHKu3xpEdiNkyQwmvaxGZQPVx7iYhPOWwzI1yv2WH+KSdiYternQZQPVxySdhPO4Kjc1yv3W\nEn4QvWWmO/Qy2sA5qD4maZI+jzms8a1r2uLlgN4o91ODyG6XtHO+a3Cw+U65hg1Un5NkEs7iqjxq\nYhzUyrluTiKDWh06qPTyO8UGitGStY2mphNjP3lGpnRzEsmjZ80ko1ffKTZQjJZeuvYqeGIMp1uT\nSBY9a6Y/YQPFaMlauIwnxmyQNc9aBefI+gM2UEwoWQqXuZwYeQKLT9Y86yCcI+sfuMycyQ2u9i5l\nvXw+63vPsl6iz3vC+gf2oJieYuPJuAg5Tk5VsPvwSdSFaHs9K7msvKz+s+RZB+FQcP/ABorpGXEm\n4yQTo/y8oHGSZGEC40KQ5OQhR8aYwQaK6RlJJ2O/9zUy7EEI4Gq1ZqVg7qebE5jOc+TVf3KyniNj\nzGEDxfSMJJNx0Pu6Mltr/c5WwRzo7gSm8hx3TUxj58Q0ikRKD49X/+ZkrfqUiQ8bKKZnJAnFRHlD\nKk9M93lFIidJftN8mmrs0iSpjBOv/u3Jco6MMYcNFNNGN8uvk4RiTLwslYK56vOkcbI59+B77127\nAkdOVIzyaSZjLxJhXojU7gGX2YfD1ycbsIFiWnS7gixJKEbnDQXfY/p5Nueueu/zb55H0PfR5dNM\nxj4vBM4efCD0PXHJS6Vgr+Drkx2cGSgiWgjgawA+A2A5gLcBPC6E+M+uPqOfyOIKrRcVZHFDMSpv\nyI+tgrnNuYeF6IKovKWosQPp5py4UjAcvj7ZwaUHNQTgAoBfAXAewGcBHCaidUKIdxx+Tu7J6got\nTxVkQW/IpIovDJtzt7keS0tex2tyXDsnprV/l2bOKU/3uRfw9ckOzgyUEOIagH2+l/6ciM4C2Ajg\nHVef0w/YrtC65W3lbf+Iy0S4zbmbhOgkROrXx0bLOPTqW8rjLBv2Ul2o5O0+dxu+PtkhNakjIvow\ngE8AOK343WNEdJyIjl+6dCmtIWQWmxVaN2V5+qkNuq1ckM25q96rY8ZX/m76mU88eLfRsePST/c5\nDfj6ZIdUiiSIyAPwPIA/FkKcCf5eCPEsgGcBYNOmTbrwfd9is0LrZjw8qoiglzkz2wq7OAoVgFnB\nhnxNJZkUJGzV3avrzfuEwuHrkx1IRHzBrA9IVADwpwBuA/BPhBD6JSQaBur48eNOx5B1ghMo0F7u\n7OfOPUeVCXgCUqvyCmIz3ix8/paDrysXAOWREo7tuc/ZuHT3xmSMYajOFwBGSh72PXS3cek7T6pM\nViGiE0KITVHvc+pBEREB+DqADwP4bJRxGlRsVmhZiIe79uJsJ1Lbz+9WkjssF1VOYCB0m5BnqjWM\nv3AS+185jZnZWuwyeYbJC65DfH8A4GcBfEYIwSUvIZgm+LOgK+Zywo8zkdp+freMuureEIBHNq/E\nU2PrYh837LrW5kVL1sl/7bg0mulHnBVJENEqAL8NYAOAHxPR+81/j7j6jEEkC713dBN7nAlfN5Hu\ne7mjlibW509OVTB7c67j9TSM+thoGds3luEv1BMAjpyoJCpisbmu0ghxaTTTjzgzUEKIc0IIEkIs\nEkIs8f173tVnDCpjo2Uc23Mfzh58AMf23Nf1FbHLqibdhDlTrWknddPPl96ZXzgWaORu0jLqb5y5\npFWQiItNlSDQ8KQKmnp2Lo1m8gx31GWMWDh061FZNhx/wg+bMHWTuqkXuf+V08rczeKFQ6kZ9TQ8\nF3m+y4Y7N/nqcCUym/VuvsxgwVp8OaCX1VmqirLrtfnYxxvfukaroKCb1E3Of3Kq0uE5RR3XBSPD\nnvJzk3ouMkcpz910Y7AkTKFddz250ILJGmygMk63Jg3dpNXN5Lsup2Ry/mEhtbTCXJNTFbx/vTPf\nBQDXbsxhcqrSNsY4Cw1pqKJK2oPMC6E1TrrrqbvXuw+fbI2FYboJG6iM0w0DETZpuQ5h6QwJQa0/\nZ3r+YeNxVRwRNDDXbsyhNq82GzPVWpshnZyqYPzFk6jVG++vzFQx/qJ64lcZMht5JQAoEHUYSEB/\nPcN0AetC9MyTSiN6wPvF8gPnoDJON6qzwozAiCYPons9Ct24BdSTn+79wcla5yWNlNzo2qkkp2aq\n4dv8/MUS+1853TJOklpdYP8r7dWLOmmre9eugFfUCPspkEYlmEOK+9zIc+lmjioNma9uSocxyWED\nlXFclnjrCDOCOqGRuAIkunGXLc+TgLZJRVfpt+8hN7p2UR18dchrq8uPydflxL9zYlq5WDj6/R91\n9PQoAKFGS1VNmOS5kZN5tyb3sIVTlo7JpAcbqIzTDeHKMCN4VeMl6F4PElxx37t2hdX5jG9dA9UU\nLNAeLkyyX8zEK4jreZgYBP+qXseV2VpHOHEewOIFQ1rjDqi7CtuUsAfp5uSeRvSA94vlCzZQGacb\nG3XDjGASD04VTjlyooLtG8vG5zM2WtYWB1Rmqm1GZWy03BrzxZlqKyRlO8ZdE9NYHTBWuvNdNuxp\nDYTf8I4o+kLJ1+N6Z0BjoXBsz33GHqj/edKxbNiz3oeVBmlED7oRkWDcwUUSOcBl3yPd8QG9NuD4\nCyfbVu9egYw8OF045Y0zl6xEW8shBQL+UNMLx8/jL9++3DJoJhWPYd1x/X+vk5ySrTFUkkfbN966\nb/seurvjOgKNflFREzxB37FXTqw2kljyedo7eQrPvXm+4/cPfPIj2LRquZFaO9AoaU+DNGS+siAd\nxpjDHhQDIEKtIjj/GM5HrsIpJmGpaq2OYz7j5H89LAQVNRZ/xaDOk9UZuTfO3Op1NjZaxqHPre/w\npK7M1kIvZ3mkFFpeLifWOJ62f3zB18dGy5g3TDSaGLE4pBE9yIJ0GGMOe1BMKIdefUtZfWZS5u5K\ntDXo4dlOh5WZKrYcfF1ZTmxSvi2NmM6TNTXE0pgFq/8EOr0kf6sOXfsQ2Xk3WDb99I4NRhNu1LhN\nS9vDwoVJSSN6kHZEgnEHG6gBxmQ/SBwvyK9+oJp47127AqNPvtaqYIvqcwS0Tyq6CTsMXbhPFfIJ\nEmVQdRO5qhQ/LFRZbubORoY9CAHsmpjGoVffwr1rV+DIiYoyvKjaw7ZrYho7J6YjW35ELSBMrk23\nwmO8d2kw4RDfgGK6H8Q2qRysSJPeAdCYgLdvLGPiexfayq5lnyPTcuW4lWiqcF+waCAYbjOZgMe3\nrlGWe79/fa7tnCanKtpwnmym+PSODbhem8dMtWZUWBKVQ9s5MY0N+19TXtuoClFVOOzRzSu7Hh7j\nvUuDi/OOurYMYkfdLGDaddZ1N9sw78ek463fOysSoS4ERkpe5KZZP8+EhMDirtQ37H9NOQb/OYWd\n+7JhD088eLdWd093bUwlkLwC4dDn1hupVmTNM+lWh2Sme/Skoy6TH2zyJoBZ91+T44aFBqMKFoLG\nsi4EvALh3et2jZsff+kUjp+7jDfOXOo4J1V+wj+JLy15IEJHR1vdvjD/OYWd35XZWmg4TWfYTPNE\ntXmBfS+f7ji3NPMxrowf710aXNhADSg2BQw2k1jUccMm1KhcjyqcpdPCC6Naq+P5N893lJOrjBbQ\nXkLu95L8eS2T6xllTMJyPbpSbpM8kcTGyzSlG8roaXRIzoPnyHAOqm+JUkdIS6Ei6ri6fE3U3qrJ\nqYrTDaGqcvTn3zzfkefY97K6x5T/7w69+pbR9Uyi4hAs5Zb3d9fENBYOFVq9o6J2ALjM24TlhlxK\nCrl+VjmnlR/Yg+pDTFavtqG7sM8KHuPAtnXaVbUsWye6peenquLzH3dk2NO2tdBBAB7ZvBJvnLlk\nbNhURsvEM7k4UzW6nv732Bpbfyl38P7OVGsoeUU8s2MDAODLh6ehcyxdqpLrjND+V05jxmFvrrjP\nahZayDDJ4CKJPqRbSWWbAoq9k6fawmph71Ud15Zhr4D/Y9snAXSqPLhm2Ctg2eKFoTmqyakK9r9y\nulW9WPIKqBo2fgxep6j7G2ztoXtfUsIKNHSFKyMlD4sXDqUeWtM9Q8s0DSaBxqLm7MEHnI+F6YSL\nJAaYqKRy0vh7WJdX1Up0cqqilNTRrVqTaNNJZmvz2DkxjZGSh59fuRRv/vAK6kK0Kv9cMlubx2zz\nWqhyVMfPXcbE9y60GYww40QE3L60pL0/UfdXvte2c7EtYTk1ooZh9d9Hr0C4dnOudY3S7Nire4ak\ncofqCWA9vuzBBqoPCUsqJ01em3g3wc/e9/JpzTvVk6XL6qyZag3H3r7c+rkuRKi2nWuqtTq++d0L\nVkZRCIR6OCZFAzKUlbS4ILiYuXftilYhSVhPsJnZGp7esaHtb2dvznV4L2mF1sKeIZ1yB+vxZQ82\nUH1ImCBm0vi7iXcjezXJ44VVj0mj6Q9/pSM9eotuB7VtPbbg9fMzOVXB7M3OfJxqgjUVRrWpxPN7\nwrpQGdC4r8Hqzzv3HFW+13RBYuP5j4SE8oB25Q6u4ssubKD6kLCk8i6LsI9qQjCZTGSvJpMv/L1r\nV3TkS1TTuVckLF4whKvVGpaWPNycq2PWMIeTNwQa4TlZHSivo8571UlFmRQXhHnUcUOtOm8kSbm4\njec/OVWJLKrhTb75gA1Un6Lbu2Q6SegmhKWGqg0XZ6otz0jH4gVFvHHmkjaZXyTCvBCaVX0y45RG\nLso1wUlYZzAWLxwK7acVtlAI86jjhFr9bUZU4cGgpiAAXLsxp/UYTcapymGG7Y/jcF5+cLoPioi+\nRETHiegGEX3D5bEZN5juKdFNCDfn6kYhuJFhD+MvntSGWbwi4d/903Whk2A9YJx047Kl5BXx8D13\nJOosKxn2Cthy13IUfBfFZYjSv3eo2x1m4xQNyDYjYc0qlwVyVzPVWuQ+JJtzD7seSfUDTbovM+5w\nvVH3IoCnAPyR4+MyjjDth6P7ks/W5jtCcMVC+5Rc8ooQAqGe0aFfb+jCRU2ClZlqm5Bs0gIKAnBg\n2zo8NbYusrOsCQuGinjz7JW2fUeu/TJ/+wsV/tdtJ9CwY8bdWFyZqYY2qxxe0Bm4idrEayNarHuv\nDOslMU68wbe7ODVQQoiXhBCTAH7q8riMG/zqAwDw9I4N2i+szep5YZHaDN72jeXQMOC8EK3PvHft\nisjjSx05m3ENewV4hU5fZsinYiGbNL5z8AE8s2NDx8rehJlqDfUYcks2FIgae5sUBoNw6xrK/U/+\nCXT8xXCV+DCPOriYWTbsYdiLnjIIeu3AizPVWJ6gqedvU0Rii0t1DMaMnuSgiOgxAI8BwMqVK3sx\nhMTkTctLlVPaOTGN/a+cxhMP3t2WiNf1ctIxW5vH3zQTznJDbhh+I6Pr6hpEGjxT7blqbV5ZyVWr\nC+x/5bRW/DWs8qsbBPcOAY1Q5+MvncKBbeuwfWO5bcOzAHDkRAWbVi3H/ldOK5tL7n+lUyRWElS3\nKBK1Jl2/NuHSkof3b8xpvWI/Ye+Q9962WCJOwYfEpN+YCSxa2316YqCEEM8CeBZoKEn0YgxxCZZE\nA+luOHRF2MZFOXagXXVBtV8kjMmpSodaRJCg5p7tlzs4URU0xQ4C+jLoK7O11u+CG2t7iWwwuPvw\nyY5z8q/UVZJM+14+rfVar8zWtB2FgVvXNKyk3IXQrN+LMSl/V43TtpACCC8isSEN0VomHK7isyBs\nk2rWtbzCDIF/8lM1vyuHrHqBxgp1cqqC3YdPhhon1UrWtF2EP/zmn6gmpyoYf+FkLFVzUwgNaSJX\nZe2LFxQxL6CcoI+fu6ytLgy7h1EGJEyxPaxC0CXBXKdNBCKt7s82mO4rY9zBBsqCqC9xll39KEMQ\nNvbKTFWbnykQ8GvrP4LHXzoVWrZdJMLVaq0jdDQy7MErUKiB8YqEJx68W/m7sdFyh0frGgE4M05e\noVG9CHRO0MfPXVZKQklGhj28W53TXucob7daq7cd3+/5x312lw17GF5wS1tPpRYBNBY5QeFc08Wc\n6R6otD0cVwLLjDlODRQRDTWPWQRQJKJFAOaEEHZS1Bkl6kucZVc/KncTlhsgqMNl/i6wUatvOamq\n1Ai8ImGk5OFqtdYhp6PLNfgniV7njWyQZk41Qe8+fDL0b6POM44PWa3VsfvwSeP9bX5KXrEtfwno\nBYSTeBmme6C64eGk2eCR6cS1B7UXwBO+nx8FsB/APsef0xPCvJCsu/ryS6XKVYTlBnSrcv9OfJ06\nhSm1usDihUOYfuJ+5e9l9aFM1l+7eStZb1PMATS8MYh4jQ5dUJ/XFy30auNwXQhcuzkX7ckWCEsW\nDXUotftJo42LbkRJuz8z2cepgRJC7EOfGCMVOi/EVZVQ2sjVX1Q83/+7sHJhiU73rEDQ9iUKO55k\ncqrSYVBVq/yoYo5Cs/eUv0uuPMe4uaWyYe5Mhf9a7Z08ZS0mmwa1uugI10V5sjqSehmm7VaSdn9m\nsg/noCzolxVasMjg0KtvYdfEdOt8/BplG/a/pjQK/slBN7fetqjR+8dkIo+SWooibHqfF8A7gT4/\n/t5Ks5aGxi+8G9dI6Xo69ZIrszVMfUXtxXYTk5Cxjegtk1/YQFnSTyu0qOTz5FQF1xSbHoOl4lc1\nuYur1Rr2PXR3pKExlVoKI6zSMEwdPCyvqNqTBDTyH7peS6ZkzTgBjUKWtLAxHmH3hABtXjJJGxkm\nm7iWOmJyRNTOeNmePciSRe37SsJkaFTSSlvuWt6aDItELXFR4Fa+yWYCL3lF3Lt2BWZmbyp/L9XV\ndWNUISWg8oi81rakFWa0lQjS3ROCXv2EVR76EzZQA0zUvhHd72cC+aYoGRopKXT24AMY37oG/+38\n1dZkWBcCR05UMDlVaZvIomifgAUmvncB127abwFQjb1AwMWr1cReUi+Q1z1ORWmRyJkIql8TcPfh\nk1bGY3zrGqWBDVtosMpDf8IhvgFGVwQh0MiR6IofgpOfTW5Ot9Ld/8ppDC8YMgrrFagxmcqKM5PW\nG6ocl27/VI8K/GKzbNhTVtbZ5PCA9q0AScJjwXCb7cbjsdGydbt6VnnoT9hA5YgkSWDV34btjarM\nVOEVCF6R2sJ8fs9IdUwAraKLYMM9QD/B+OWHVMj+TfK/8xbhKALaclxSVNVEV67XmJTQB/ciSRYO\nFVr3dllEh9kgSZRRTPOHYcZDVyUpF0/B5yoLKg9cpOEeEj0ub920aZM4fvx4T8eQB3QbIE1624T9\nLYDQarSRppiqnNxkST3QuUJX7TEKjnH0yde0E6WuiaDUqLP1CFTHGBstx66gK3mFxI0So9hy13K8\n89NqxyQXNubg/iRVY8CSV8Qir2BlpAjA2UD1ox/dAsUkNBr17EZVcar+vpcGIsn3cxAhohNCiE2R\n72MDlQ90E5RJ62qTv71zz1HtSj1YzWY72cnPMdHNC36WnHxdqEXICWPXxLTznk2u8N8T/4S7tOTh\nvRtziVp7jFiqRRSJ8NXPr1dOsKoJOWoTtKpDsuq4QaV53b3PUtv2JN/PQcTUQHGRRE7QhcYqM9XI\nxLZJAlkXbpHtF/xUa3UrgyE/J6oVt6yck1VoIyUPCJmgbJFhqzh5iQXF9Eqw/chrFax8c9F3Srcd\nQIds86F6rlRhvFpdaO+v7GJ8+0gJF5sNDYPHVZ3z9RCPNUsFEFykkQ5soHJC2KTaak73wkmMPvla\nh8Ey6Uaqq8RzUXos8wZhYTV/k7xje+7D0zs24L3rZv2HbLg4U8X41jWN1b4FYZdh8YKik/bxQOOe\nSGV41+riS0v2DRl11Xa2E+/2jWUcOVEJLTXXFdDoyFIBhE3HX8YcNlA5waT9dm1e4MpsrWMCMOlG\nqmsFr2uJPlLyOo7pFUnZxRa4pZmnokjUFquXK+k09uXIvVmHfn29VQfdMM/v2s26M2Oy+gOlVM69\n5BURdx+ui+q4o9//kdL47JyYbi2mbIyeqgBi7+Qp3PX4t7B6z1Hc9fi3sHfylOav3WPa8Zexg3NQ\nOcJEQDOIP/+j6yIb1Kfz5whMCiyCSfKw9hfBqjRVIjlNGSCpwO7/PNkFOAt5KRvhW9PjyXuTNPdW\njngukmCS1wzLYe2dPKVsVfLo5pV4aqw7G665is8c0xwUl5nnCL/MkukkLlel8u9U3YDHXzgJENoU\nwoP7YHRfPN1eJ91EI4C21ho2jedc4O8gLD/3qbF12LRqeSJtPVe4NE4lr9CWwzFtDqkj6rlIcuxq\nrY6FQwWtvBQAzAuhrSr85ncvaF/vloHqJxm0rMAeVE4xXcH6PSjbFW/cCqSwikDJo5tXtoyCTUm1\nK3Sr8SyKuLqg5BWxfWPZiaeoey7Crp2JZyiljFQt74FwD2r1nqPa4waFgpnewx5UnxNcwQb7JAHt\nMfA4Lb0rM1WlyGowlBFsy6BToPDz3JvnMfG9C21e266JaeycmMYygy67QeTkdvzcZaNJWKeakHS/\nVVap1up448wlJx5amGyUbgO0yefK/CCgVsEIU7rQ7aFLUwCXSR8uksgxfo276Sfux6FfX99R5CC/\nwHHDZsFKm98XAAAgAElEQVRKK5Xw53Nvnm/72bQsPDiRyZ+uzNZQF8I4qU8AHtm8EmOjZTw1tg5P\n79hgJZbqT9YDwIFt67oysXV76rw4U9UWvdigK5BQFZ/ozjH4elC78cC2daFFLMHqwofvuUP5Pt3r\nTD5gD6qPCIuBh7X09grUloPyE5S8ieOJxcFmy8/TOza0nffxc5djeQpyZX5g2zorKaW4dDu4LkNj\nSTzEqMq04DN4pyb0JtBYROkKCsZGy6G5TODWHkB/gY5s/lgkwsP33NG1/BOTDmygBgBdXyegXbpI\nJ1FTmam2Wq5nodItiKwqU7Wzt8W/mbefclGyJYlcYMiQWHmkhNmbc8Zer781igm661gkiqxyM/H6\n/VsqDmxbxwapz+AQ3wCg6+u0bNjD9BP3t1a9YSGVSkaNU7m5sXX8hZOJjZPk4kwVqz+Q7w2WBUKb\nIgdBtEKxQCOfQ0Czj5b5dZOtUUzR7d8LU6mQ2Oy14t5P/QkbqAHAtK9T2lEtmXdwld+R4aZ9L5+2\nKqiIQgA49vZlZ8frBfOiYRye3rEBN+bmMauQDBIAnn/zvJXChMzXrd5zFBv2vxZprGQ+SXXPo4yK\n7SZXlhXqP9hADQCmMiy2Wm2yGOPRzStbyffgNCR/Lo+U8PSODXjn4AP46ufXd6pQFAjLhr1bGnwR\n+DveuvKcTHFRaNANZFVkWL5JACBChwKIThHEz0y1hvEXThoZKV1OT2VUZLND24aRLCvUf3AOagAw\n7ZVjk3fR7YUx2U1v0uAwbF8LEVqfLSvvuoWNPFKvMfUpr8zWOrUJyUz9vDYv2opodPdf92wVml18\n/YUOJkUcKkUSlhXqP3ij7oBgYjiULRQUFX5y06d/75MrWRfTYodHN6/EG2cudb2QwXZ/Vh7Q7SFa\nvKCIeREu2Arc6hsVJYsVZXhs2rjI+8+yQvmkJ/2giGg5gK8DuB/ATwA8LoT407C/YQPVe/zGa2TY\ngxBokyIC0LExV9UQL6oBna77rvzc67W6cUNA15p1Jp+3qAsNC7tN1HU0WQiMlDwsXjikfY9fzSRM\np9GUZcMepr5yf6JjML2lV0oSvw/gJoAPA9gA4CgRnRRCnHb8OQND2gKUwVXvldkaSl6xY29RUMxV\npUy9+/BJ7JqY7hhn8DNU+n+2k1a3fZiSV1AWGuSdRyIM0De/ewFf/fx6AFCqRBQAXLs5F+rx+vNM\nYf2dTCh5RTzx4N1G72Xx1vzjzIMiosUArgD4OSHED5qv/UcAF4UQe3R/xx6Unm60kQ7TTytrPCiT\nsJp/nL3StyuPlDAzexPXbvaXbJFLTPJM/jCd3wMaieh4K5EelIvn4JnAwkkHt2DPNr3woD4BYE4a\npyYnAXza4WcMFLoGbv6kdFLCSnMrM1WMv3iyrY237OsUtazxj7MX5b9yY6qqBUO/o8spqTCpgJT3\n8tie+zqeO51ShETeBxfGqezT6ouiG98dJn1clpkvAfBu4LV3AfxM8I1E9BgRHSei45cuXXI4hP4i\nzTbSspQ3ahpTtfEWMNORk+PsRvmvv0xdlqC/cSZfz1azHsWozD6MzR9bFvke251oUjg4SNi9LY+U\n2jrpJkFXpSef42AXad13JO44dJ/DpItLA/U+gNsCry0F8F7wjUKIZ4UQm4QQm1asWOFwCNkjyYOt\n+/KPDHuJvix+wde4SC01gn7jrRy/STdgE3SfUyTCoc+tx9RX7sfZgw9gfOuaTPR2suW2RQ3D9N51\ntSxVFEUiPLp5Jd75afh5l0dKsXJ4KuUHXSfZRzevBNBQrU+q3RgUPpaohIvlGHXfHWr+nQ1hn8Ok\ni0sD9QMAQ0T0cd9r6wEMbIFE0gdb9eX3ioT3r88l+rK4EHyVeYWzBx/QKkbfu7ax+AhTEzDFKxA2\nf2yZciNwXTT24kxOVZwY314xU61BALHavcteSVEVd8/s2IBje+6LtdlYpfwg763f6ysQ8KffPe/E\na5Lj1TXG1IXxxreuUXqJovl3NoR9DpMuznJQQohrRPQSgCeJ6DcBjAJ4CMAvufqMvJE0Du7f0FqZ\nqaJIZKQ4HkVYiDCso6kff7hFF0qTr8tqKqn/ppt+w3InC4YK+G/nr3b8rfxZGuqFQ4W+6+Vkgr9X\nko5hr4BDr76FXRPTGBn2UABgW1MXfHZU+9biFqUQGtGBmdn2LQ4yf+UXuB3fuiY0BD42WtYqUdiG\nyNMMtTPhuC4z/10AfwTg7wH8FMDvDHKJuYsHO6yBm+0xpaHQGYhyc49TVGHBsmGvpSAeFkqTeYvx\nF0628lhhvkGY52Ay6VVr9YE0TqbU6qJ1r6R6hKgLq3CfX7cvTpfmKPz7m4LHDzYs1DXGlOG9sqbi\n1CQn6i9RL2gWTiytlD5ODZQQ4jKAMZfHzApx9lToSrJtH2yTkJxAY6UZ7G4rxxk1mchqq29+90Lk\neK7M1jD65Gt4//pcpKqCjZ5atzffSmyq3vJM8F7V6gIjJQ9Xm6FFE67dnGt1WXbdGyz4vQg7frVW\nx8KhQofH7y+mMJX4CqIzjH5YWqk7sFisAXFzSboEcloqzarutnKcYV92f7WV6UR9ZbbmVPLHlXFa\nNuxZFWSUvGImjRMB2HLXchhotibiarWGRzavNK7qq9UFdh8+iTv3HHWa5wt+Lyanoiv/rlZrOLBt\nnbaLtMyP6X6vQ/ddKRJZHYdJDmvxGaDbw6ETTPXjYjd70j0ksnOp6k5LHbVebKb15xRcfLZXaFTz\nAYiU1CHc6jC7+/BJpZEiAoaod9p7pvnAJPhliORz2g3VjI9/aDFmb87j4kwVS5sbfmXuSSWlFTZ2\n19y552hoGJyVKZJjulGXPSgDkuSSxkbLrWo3XTVSFDpPzBT5hVIhX+9FwrcuRGvl7KSFhc8NiJLU\n8Zej6zwoIYBDn1ufeF9SXGTn27Twey1jo+Xmc5bcOJl4fX/399fa+lVdma21vH6T0vQ0Q2xhJepc\nat5d2EAZYNpPKS10oQrTSV2u9sLCjbpzKRLhmR0bUuuB5C8LTrpXqlZvlJub5Eb2Tp7CronpUM9N\nnvPihUMg2G9udYE04q4pErW1b5+cqmD8xZOxjZN8Lp/ZsQH/5+c3RI5ZlnvHyWOlHWJTPYuqEDSX\nmqcP94MyIG6y1SWyLXsQkxYG/lCELtyoO0f/RNDRiqNI8AqUeMVdaZYFA9CG20wx8QSJGp1kwz6F\nAKz+QMl5lVocFnkFLBwqOG3MWBcCR05UsGnV8lbBg2oLgx9dMUmRCF/9/PqO5zNqs7St155WSC+I\n6ruiOw8uNU8XNlAGmDTYy8q4dFV88v26MUedY9jvN+x/LfHkKZvWmRon3WR5+0gJ126Eq2uXhqLD\nWALAX759OXbhhsuKRKkw/+jmlU61Bf0eQFQOUO49UhnsuhB4/KVTANC2/eDiTDVUjFZ67abiw71c\nEOpytFxqni5cJMEosSnuCEsqS4UD06fMdGJ/dPPKjkQ6odE+4uj3f6QtkNhy1/JEhscEm8Z7Niwb\n9nB1tma9uTaKqGIMAlrtVyanKlovN8yIqT5TKqTvmpgOvR86D62bsDq6W7hIgomNPz9jkhAOW0XO\nC4GzBx8wzmGZCNGOlDxsWrUcQVMmABw5UQk1DG/+8Erqe62qtbpz4wQ0PCnXxqlIFGlMHtm8ss2T\nntcsai/OVI1ySiMlrzWxj42WQ8vcS16x58YJiF+yziSDQ3xMG5NTFWV+JkxOaXzrGu0q2C8Y61eU\nCCNaYX1euwFYVr7pQoW2+a1ebR7uBlGe00jJw76H7u6452Eb0E1yMosXDrUd86mxddi0anmbpJdf\n0igrRiAsRM6kAxsopo0wKSTd5DM2Wsbxc5c7DFuwjBlAh25bHKJkj1xtvPWKhB2/cEekAKvybwvA\nUNHtPiavALjcnnRg2zptIUNYQUJY0ZCJirzqOeLJn1HBBoppI2wFHBbK86+CdXkr/yTUqy67Nixe\nMISnxta1fh598jXj0F1tHvhHdy7FOz+thuq52eDSOPmb/9lWqEYV1ETloLiwgDGFDdSAEVX8oAvf\nENAxaamOZVoGfO/aFZGl3r1mplrDloOvt67REw/ejfEXT0aWY0ve/OEVvH3gswDSEVaNi8qzVT0T\nYc+KzuMJKvAHQ6SsYcfYwFV8fUxwglFJyAQrkXQT6Za7luP53/rFtmOHVTWFTW5ZmqxNKHlFbN9Y\nDq0O1PHOwQda/z85VbESz41DlGyULq8UxFXVmv85CEoaqfJLLqTB4owtK1tHBgXTKj42UH2KaoLR\nJfyD+Ya9k6eU+ST/5BSmTxi16TcP4T1XbLlrOd784RXUhUCRCIu8Qux+SVHI+6i7vv5y8SiS6E+q\nMDF4uvds31jW7u2LC5eN9xYuMx9wVOW+psUPb5y5FCnrEqZPqGvUuHNiGqsdq2BnnWNvX27lnupC\n4NrNOoopSJT7Q7C6eyOgbtuuwnWTPpOutLr3PK9R6I9icqqCLQdfx517jmLLwdfb/sZFl9yw4zNu\nYAOVEVw/7DYTSTBpbTI5hSW682aA0hRkVTE/L5x/pn+vUti9MZ2EXetP6p6pyky19dzrnps4GnhR\nLXKSGuC4LXgYO9hAZQAXD3vQwC3VKHAHp0Wp0Ow3iiaT0/jWNfAUnkCWix50pCXIqkMA+NiKYafH\n9FcbRgnvmiwgXPUyk5gohNsQZUiiPKSkBtiFB8ZEwwYqAyR92FUG7trNuQ4DUvKKeGTzypaqgz8n\nVZmpYufENEaffA33rl0ROTmNjZaxZFF/FIHKho0qn2bYS+cr8rd/f037O1vvKqjSIVUPdMchNPKM\n/gVN8Ofj5y5j4dCtc1827CXKz5gqhKvGqiLKkER5SEkNsOsQKKOGDVQGSPqwqwxcrS6wZNFQhzRL\nQyKogWpyuDJbw5ETFWzfWI6UdZlJKOcTN8zlOiA3vnWNMu8GADfmzNf2BWpUyclrtuWu5ZF/o+Lh\ne+4w9uh0k+rYaBlf/fx65bUSQEdeJ9iJ+bk3z7dtqJ6ZrWHnxHSi8PMin7EfKXmRavLlkRIe2bwy\nliGJ8pCSShel1YKH81rt9McSOOeESceYoDNkM7M1TH3l/tbPpuXd1Vodb5y5FFmtNTLsRZZdF4nw\n8D13KFW4H77nDnzzuxesN7A+ohCKTcLYaBm7NOXfpmMLyvLIEmZbRkpea9NzlOpGkSh0Uh0bLWvL\n2m1DakFPe9/Lp43K1QH1c3djbl6rdB6sFIzaAK5CJ1p77cYcJqcqrX1cSTxC1y14gtdJhvoBDGxl\nIRuoDJD0YTc1cDbN4aK8t8mpCt6/Phd5nLoQrfyINEbSaD01ts66fUR5pNRxvDCWDXt4tzqnfZ/0\nMHTXMEzXzz8mOaFOTlUi283rIAD7HrobAFo9msIM1LwQkRNX1L6ouMxUa8aTpy6EvcgrdOgBqp77\nOIZEvj94L2zGbXJ8l/uowkL9bKCYnpH0YTc1cEkq+4IcevUtI+FXmR95amxdWyLf/3vTCVSe0+RU\nBUdOVIy8m/ev640TABQK1Ogmq7mG2zeWMfFfL4Seq7yuSTYgy1Yh/nsedb8KRFi952iouOrqD3Re\nX1cCuKaTp+48rszW8MyODaltlpVGPrhYcDXpu9YP5LxWJ2ygMkKSh93UwIV1BvVj4r2ZfGlMjhOm\nhL5s2MPwgqGOc9py8HVjI1CbFygQoLMv9flGm3jpAamu4aZVy0MVIAQaG1tnb87FMk62quGtsfv2\nVwGNkNCuiWnsnJhGeaSE1R8o4djblzv+7h98aDH+x5XrTkKkJs9BmHwWgFS75OZp0k8a6u9HWEli\ngEiyUz8oCzN7cy40jGXTZM5EucJPWIPEOBCAsz5JIhVpq18sXlCEVyzgavWWDBAQLbwaBwKw1Jf/\nWTbs4YFPfqTtGbh37QojaScTZYnJqYp2EZJ2G3fXihhpMkjqFl2VOiKiLwH4IoB1AL4phPii6d+y\ngeoucfTHVF8cr0AAQSmcGvWlmpyq4N/+2amW5A8B+KW7lreUv6PG5dpYLF5QxMjwgkgD3U39QH/H\n2aCeosu270DjXi5ZNNSmkQdEG0ebyXP1nqPa35WbfaTS0MPL26Q/KPqA3TZQ2wDMA9gKoMQGqr/Q\nGYSRkofFC4esmsxNTlWw+4WTqCtibo9uXqnMUwXZO3nK+STtRzeB+SePbsQdVKv8bugYlrwiFg4V\nlAUaRSLMC6GcPFWTK3BL2VyFSu3ctfEYlEk/T/RELJaIngLwUTZQ+cHky6sLqZmExoKETbBFolZ7\nirCxdWOSjgoBmYwhaTGC6vq6Dm/aorvnSi+7SICAtsDEVLyY6T8yLRZLRI8R0XEiOn7p0qVeDCF3\npLGBz1RiyeWmxLDktL/aLmxs3UhwR31GlJwQcGvyjasNq5KrsrnmJa+Ij39ocbwP11AgUj57us3i\nOuNUHilpDW1lpsobVRkAPTJQQohnhRCbhBCbVqxY0Ysh5Iq0hClNJZZc6rKFTbB+ZQnd2HYfPtkV\nD2JkWK1lKJFKBMsi3gc0Kgi9IqFkKZukEtowMYxAI/x6YNs6zN6M14Z32bCn/Jy6EMpnz8ajJTQq\n94ISTX5YgJUBDAwUEX2biITm33e6MchBJy1hStMS3KSyMH7Gt67Rtpt4+J47IseWtG26KVdma9g7\neSryfdcN+7DX6kKZdwtDJSWluhePNvUV5c/P7NiA6Sfux9hoOdQTJEBrNB/45Ee0en6qZ89Gtkou\nUkyMLQuwDjaR+6CEEJ/uwjiYENLay2Gz78LVpkR5jGAV3yObV2LTquXYcvB1XJypomCg4BCXYNXa\n5Ws3UFUYmuffPI9Nq5Zrz9tGmQMAbhq2ipfovE2be6G7x1HNDd84cwmbVi3X3oPgs2d6r8LazZv2\nK2MGBycbdYloqHmsIoAiES0CMCeEiNbCYSJJawNfEomlJJVRqgk2mGRP01OqzQsMLxhq6RTeqSmB\nFoBScUCee5qFGib3weQeRN3jsD5NUhJIRfDZM1EEUVV4+p8FnbEc5I2qg46rHNReAFUAewA82vz/\nvY6OPfCY5oBsCylsQ3eTUxVs2P8aVu85ip0T005zYjpvpEgEgvumgnIinJyqoBBy7OAE7s8HukKG\n5eR9WDbsYeFQAbtC1MNN85JR91g3+ReJtN6h6tmLCtfJvFPYIsZ1D6oksKp4NmAliZwQtVpOe0Pi\n5FQF4y+cDNWkS1IeHFXK7nqjrFS6iDrmSMnD9BO3FOGjysttS8uD98j0PrpSSNB9Xtg1eWbHBuUz\nNTlVwe7DJ5Xer+m4srBnKW+be/NIT/ZBxYENlBt0E5ZOz87V8f3E2RcVdfygUrgMrbkQPDUJSxUL\nhJ9ZONSSIIp6/7JhD0882FAkjwoDqkJeUZui5X0M2/hqew9URkE39ihD0w+Te57kkfKKqYFisdg+\nIUwxWuqpJekvYyoKGheTfJg/X+GfVBd5BWWRQxhSXieK+rxoKSqYhPWuzDbaORzYti60CEE32Wl7\ne1VrbePQGeg490BXdBEnP5lGGwpJt7yrPAnM9jvcUbdPMJ2Y4pbtRh3fJlegiu/b5sPGRss4tuc+\nnD34AA5s+6RVl1051rSS7/5rbJtXMR2TQGdnYRcN8+R9OfTqW0ZdlbtFWnsBVaTVLZexhz2oPkHX\nQVRFnJXg+NY12pYTBBhPXlFdQ8OOodN6e/ylU8bhvmBYLSqvFhd5jW09invXruhQdtchoBdatfU2\nVPflyImKtVFKqytsN5v5pdEtl4kHG6iMYjvBqCbCazfmlIKfccNAYT2RTCeJuBONauLbNTGN4QXh\nCX0/spLMP+a43W+j8F9j031LshGjjbFVhQnjGAlXBiAtQ9LNsFuaYUrGDjZQGSTuKjQ4EeoS1nFW\ngpNTFW37cxuDF7bvJgzVxCeA1mZfE1TjVKk12DBS8nBjbr5tbITG+Ww5+LrVxGaz8TfsPsYxEq4M\nQBY2lbvAdbdcJh6cg8ogrqSNXEkUSUOnMk62Bk83oVDzc3QkneC8IinHmWSCK3lF7Hvo7tY1BtrL\nzG3zJDbnuHBI/9U1MRLBPKBOe9D2+qSVv8nSHimme7AHlUFcrkJdrATDNtHaGjxdi3ep2iA/Lxha\nMW1XDzSM0VCBWpV9svRbNU6b3J2fYC5L1wakWqtj38unjcJFNuc4U61h18Q0jp+73NFDK8rbUHno\nXoHgFamtAWUcA5BW/obDboMJG6gM0u1wRhQ6wzgvhPUEEZbLkh6HKrSpM2xA5x4hW9klANoNpipG\nSl6iEnFduNbWWAqo9QKjjISyNca8SHQdJWkaEg67DR5soFIg6X6NLFURSSmgpLknP7oNsip5HRna\nPLbnPhw/d7mjwo0A/Nr6j3R4ETb3QL6uamtfFwLBIr9rN+dapfF+TD0gXT5I/mxTuCHQMK7+v48y\nEmGGdPHC5FMCGxLGFawk4RhXO+mzKvkikbmWqBbvpseNktd5p6mOsHfyVIeRiisXpBpX8JqHGYvg\nudvIMUUpPvjHsrTk4er1GsK+qjbPmGlH4qQKEFl4hplswlJHPaKfZFLSnMiCk9e9a1fguTfPK9/r\nbwVvcn2T3IPguKLOX2Uc/X8/e3NOaeBstOlMjV4axywSYV4IawPTD5JHTHqw1FGP6CeZFNMxV2t1\n7H/FrBBAEgwDbTn4uva9/vCiyfWNew9UxQNRBMN1rkv9bUrPTQssbPJu8ve2G267ubGW6V+4zNwx\n/SSTYjPmK7O1RDI0YcbD3xrc5PrGvQe2DQglYWNPWupvs7CJKtUPjmveMnoStdXBX7quM5Z5XKgx\nvYMNlGP6ab+G6lxMNe9s922F7Y/yX7t7165Qvs//etx7EHfyjDJ8ft3AqJ5Itsf24y/Vd31sie4a\nBbXyXH4mM7iwgXKMq82xWUB1Lo9sXhnamM6PzYSvM4aPbF7Zdu3eOHNJ+ff+1+PegziTZ5ThS9r4\nTmdsdbi45oC+QaTuGpl4n3ldqDG9g3NQKZBGmW2vKqJU57Jp1XLnmn/yM/a9fLp1rJFhD5tWLW97\nX1h+Kek10hVqFAhtpeamFYyTUxV8eWIashFIZaaKLzf3gNnu0zLt1xTnmquumW3uLMwwUnNcXMXH\n2MIGKgekpRAdlzQ1/27M3errJHsryc8E9HuNlpa8xNdI550tLcVr+jj+wi3jJJkH8PhL37e6b7b9\nmianKm2GPkxJQ3ds2w23uvuSx+pVJjvk3kANwl6LrFdEuVIP0J3n7sMnsWtiulWOfuREpWNiJkLi\na6TdwDpbw9RX7lf+TsfkVAW6Hoq2zRVV6K450NlC5MpsDeMvtm/mNf0M0/dnaXM50z/k2kBlzbNI\nizyUrrsIa+rOx1/qfOREBds3lvHGmUttE/MujXySzTUykZgyXRDFaQppi+qabzn4urK/Va0usHNi\nGodefSuVRRxr5TFpkGsDlXXPwhVZ0+ZLC5ONsdVaHW+cudQRNnKRk4nyAmwWRGGGsWDT/teSqOtX\nmali/AV7b8oEljhiXJPrKr48eBYu6KfS9TBU56lCdX9dXKOo6j+bNihhhvE37llpPCYbJqcqRtsA\navMC+14+ncoYGMYlufagBsWzGJTwSfA8bURqXV2jMC/AZkGkUybfctfyDmFbVxx69S3jbryqqkuG\nyRqJDRQRLQTwNQCfAbAcwNsAHhdC/Oekx45ikBKzgxI+8Z+nqjpQ1a1W5oUqM1UUiYwn6TBUuSab\nBVEvFhX9FjlgGBce1BCACwB+BcB5AJ8FcJiI1gkh3nFwfC2D4lkMKv77W5mpdnSr3TkxjX/7Z6dw\nc26+VRgQVzvOjy7XtH1jWVlBqFsQdXtRYdPwcJmmg25aDEK1LeOeVNTMiej7APYLIY5Evbff1MyZ\ndDBVVg8SZx9OmBq63CSbxYlW5XF6RUJ9vr2nlVckHPr19V0bNyubM0F6pmZORB8G8AkAnIVlnBE3\nfBXn78JyTVkOtYbtjeqlUR2UalvGPU4NFBF5AJ4H8MdCiDMh73sMwGMAsHJlOhVNTH9hE74K/p2r\nz8pD8U2UMkQvGJRqW8Y9kWXmRPRtIhKaf9/xva8A4E8A3ATwpbBjCiGeFUJsEkJsWrFCrU7N9J4o\nodOkQqg2mJag+4lbMDMoZf3dop9a0DDdxUkOiogIwB8BWA3gs0II46UR56CySVTeQNeVdaTkYd9D\nat03F2Pya8xJvCLBKxBmfRJCYfpzpp/lOiyWVqFA1gsQOAfFBOl2DuoPAPwsgM/YGCcmu0TlDXTt\nFWaqnQKvrpDhK1W7+CMn2r236wn17lznmtKS5cqD3BdX2zJxSexBEdEqAO8AuAFgzver3xZCPB/1\n9+xBZZM79xxV7iciAGcPPqD9vaSbKtZhVXdZUdJOa4x5OHeGCdI1D0oIcQ7mjVaZnBBVKBBVtNDN\nBHgekvBpjTEP584wccm1Fh+THlGFAlFFC91MgOchCZ/WGPNw7gwTFzZQjJIo4VT5e5UiQbcr3vJQ\ndZfWGPNw7gwTl1SUJGzgHFT+yUIVWRbGEMWgVvExTBDTHBQbKIaJCRsGholHz6SOGGYQyEN5N8Pk\nHTZQDBODftCXYw+QyTpsoBgmBnkv72YPkMkDXMXHZJpu6v3ZkPfybpv29QzTK9hAMZlFrvIrM1UI\n3FrlZ8FIjW9dA6/Qvj/dK1Buyrvz7gEygwEbKCaTTE5VsPvwyWyv8oP6KTnSU8m7B8gMBpyDYjKB\nP2E/Muzh/etzrfbtQbKwyj/06luo1dvHV6uL3BRJjG9do1QYz4sHyAwGbKCYnhNM2F+ZrYW+Pwur\n/LyHyFhhnMkDbKCYnqNr3aEiK6v8PHfdlWS5fT3DAJyDYjKAqddRJMpMkzvWwGOY9GEDxfQcE6+j\n5BXx1c+vz4RxAhrex/aNZRSpURlRJML2jeyRMIxL2EAxPUfljXhFwkjJUyqpZ4HJqQqOnKi0Cjnq\nQuDIiUomSuAZpl/gHBTTc/KYsO8HqSOGyTpsoJhMkLeEfd6r+BgmD3CIj2FiwBtdGSZ92EDllKxq\n1M9CxDsAAAXSSURBVA0KXMXHMOnDIb4cwkrUvSeLeTNun8H0G2ygcggn6N2QdELPUt6MFy1MP8IG\nKofkPUGfxDC48hL6bULnRQvTj3AOKofkOUGfpIWGy/Yb/dYPKe+LFoZR4cRAEdFzRPRjInqXiH5A\nRL/p4riMmjwn6JMYBpdGpd8m9DwvWhhGhysP6iCAjwkhbgPwEICniGijo2MzAcZGyziwbR3KI6XM\nKi3oSGIYXBqVfpvQe71o4apSJg2c5KCEEH/t/7H57y4AJ1wcn+kkSwl6G5KogLtUEO+3fki9rCrs\nt3wekx2cFUkQ0dcAfBFACcAUgG+FvPcxAI8BwMqVK10NgckBSQyDS6OSxTLxpPRq0cIFGkxaODNQ\nQojfJaL/BcAvAvg0gBsh730WwLMAsGnTJnXbVKYvSWIYXBuVvHqhWaPf8nlMdog0UET0bQC/ovn1\nMSHEp+QPQog6gO8Q0aMAfgfA/+VikEx/kcQwsFHJHv3QvJHJJpFFEkKITwshSPPvU5o/G0IjB8Uw\nTJ/T6wINpn9JXMVHRB8ioi8Q0RIiKhLRVgAPA/iL5MNjGCbr5LmqlMk2LnJQAo1w3h+iYfDOAdgp\nhHjZwbEZhskBHHpl0iCxgRJCXII+R8UwDMMwsWCpI4ZhGCaTsIFiGIZhMgkbKIZhGCaTsIFiGIZh\nMgkbKIZhGCaTkBC9VRoioktolKZ3kw8C+EmXP9M1fA7ZgM8hG/A59B6b8a8SQqyIelPPDVQvIKLj\nQohNvR5HEvgcsgGfQzbgc+g9aYyfQ3wMwzBMJmEDxTAMw2SSQTVQz/Z6AA7gc8gGfA7ZgM+h9zgf\n/0DmoBiGYZjsM6geFMMwDJNx2EAxDMMwmYQNFMMwDJNJBtpAEdFzRPRjInqXiH5ARL/Z6zHZQEQL\niejrRHSOiN4jomki+se9HpctRPQlIjpORDeI6Bu9Ho8JRLSciP6MiK41r/9v9HpMNuTxmgfpo+c/\n1/OQhIg+TkTXieg5V8ccaAMF4CCAjwkhbgPwEICniGhjj8dkwxCAC2j041oKYC+Aw0S0uodjisNF\nAE8B+KNeD8SC3wdwE8CHATwC4A+I6O7eDsmKPF7zIP3y/Od9HpL8PoDvuTzgQBsoIcRfCyFm5Y/N\nf3f1cEhWCCGuCSH2CSHeEULMCyH+HMBZALl6uIUQLwkhJgH8tNdjMYGIFgPYDuB/E0K8L4T4DoD/\nBOCf9XZk5uTtmqvoo+c/1/MQABDRFwDMAPgLl8cdaAMFAET0NSKaBXAGwI8AfKvHQ4oNEX0YwCcA\nnO71WPqcTwCYE0L8wPfaSQB58qD6jjw//3meh4joNgBPAviy62MPvIESQvwugJ8B8MsAXgJwo7cj\nigcReQCeB/DHQogzvR5Pn7MEwLuB195F4zliekDen/+cz0P/O4CvCyH+h+sD962BIqJvE5HQ/PuO\n/71CiHozTPNRAL/TmxF3YnoORFQA8Cdo5ES+1LMBK7C5DznifQC3BV5bCuC9Hoxl4Mny829DVueh\nMIhoA4DPAHg6jeMPpXHQLCCE+HSMPxtChmK/JudARATg62gk6z8rhKilPS4bYt6HrPMDAENE9HEh\nxN82X1uPHIaW8k7Wn/+YZGoeiuDTAFYDON+4FVgCoEhE/1AI8fNJD963HlQURPQhIvoCES0hoiIR\nbQXwMBwn+brAHwD4WQAPCiGqvR5MHIhoiIgWASii8XAvIqLMLp6EENfQCMM8SUSLiehTaFRf/Ulv\nR2ZO3q55CLl+/vtgHnoWDWO6ofnvDwEcBbDVydGFEAP5D8AKAP8vGpUn7wI4BeC3ej0uy3NYhUbF\nz3U0wk7y3yO9HpvleezDreol+W9fr8cVMeblACYBXANwHsBv9HpM/X7NFeeQ++e/H+ahwPnsA/Cc\nq+OxWCzDMAyTSQY2xMcwDMNkGzZQDMMwTCZhA8UwDMNkEjZQDMMwTCZhA8UwDMNkEjZQDMMwTCZh\nA8UwDMNkEjZQDMMwTCb5/wFzpvA4tfTOvQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n = 1024\n", "X = np.random.normal(0,1,n)\n", "Y = np.random.normal(0,1,n)\n", "\n", "plt.scatter(X,Y)\n", "plt.title(\"Scatter Plot\")\n", "save_fig(\"scatter\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 10: Histograms" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure histogram\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAG6JJREFUeJzt3Xu0XWV97vHvA0FpCYRCIhQqpKKCooIlXnpRsF7RYlFO\nLRbrDQ+1lnNOCy2lo6ARUaGVOqT1lpoKAt5woBawirbiONbWGooRUyPaAwiiGFDIhYsgv/PHnBsX\n251kr+x1mSv7+xljDtd65+2X5WY/+33nu+ZMVSFJUtfsMO4CJEmaiQElSeokA0qS1EkGlCSpkwwo\nSVInGVCSpE4yoKQBSvJPSV4xpnMfl+SKcZxbGgYDShMtybFJvpxkU5IftK9flyTjqKeqjqyq8wd9\n3CSvTPLFGdqvT/Ks9twXVdVzZnGs85KcOegapUEzoDSxkpwMvAP4a2BvYC/gtcCvAw8ZY2nzVpIF\n465B2w8DShMpySLgDOB1VfWxqtpQjaur6riquqfd7gVJrk6yPsmNSZb3HOOIJDdNO+4DPZIkT06y\nqt33liR/07bvnOTCJLcluT3JV5Ls1a67Mslr2tcHJPmXdrtbk1yUZPdp5/rTJF9LckeSjyTZeQ6f\nyQO9rDTe3vYq1ye5JsnjkpwAHAeckmRjkkvb7R/T1n57kjVJXthz3D2TXNoe5ytJzuztzSWpJH+U\n5FvAt9q2d7Sf9/okVyV5Ws/2y5Nc3H6GG9raHp3kL9p6b0yy1Z6gtn8GlCbVrwIPBT65le02AS8H\ndgdeAPxhkqNneY53AO+oqt2AA4CPtu2vABYBDwf2pOm13TXD/gHeCuwDPKbdfvm0bV4CPA/4ZeAJ\nwCtnWdvWPAd4OvDottaXALdV1QrgIuCvqmphVR2VZCfgUuAK4GHA/wIuSnJge6x30nyOe9P822e6\nxnY08BTgse37rwCHAnsAHwQunha+RwEXAL8AXA18hub30b40f3i8d64fgCafAaVJtRi4tarum2pI\n8qW2B3BXkqcDVNWVVXVNVd1fVV8DPgQcPstz3As8MsniqtpYVf/e074n8Miq+klVXVVV66fvXFXf\nrqrPVtU9VbUO+JsZzn1uVd1cVT+kCYlDt1DPU9t/3wMLsN8Wat8VOAhIVX2jqr63ueMCC4GzqurH\nVfUvwGXAS5PsCBwDvKGq7qyq/wJmusb21qr6YVXd1f7bL6yq26rqvqo6h+aPiQN7tv+/VfWZ9v+/\ni4El7fnvBT4MLO3tbWp+MqA0qW4DFvde86iqX6uq3dt1OwAkeUqSzydZl+QOmt7O4lme43iaHsja\ndmjrt9r2C2j+4v9wkpuT/FXbC3mQJHsl+XCS7yZZD1w4w7m/3/P6Tpqg2Jx/r6rdexfgOzNt2IbM\n39H0fn6QZEWS3TZz3H2AG6vq/p62G2h6M0uABcCNPet6X8/Y1g5dfqMdurydphfX+2+/pef1XTR/\nbPyk5z1s+bPQPGBAaVL9G3AP8Ntb2e6DwD8CD6+qRcB7aIbeoBm2+vmpDdvewpKp91X1rap6Kc2w\n19nAx5LsUlX3VtUbq+qxwK8Bv0UzjDjdW4ACHt8OE76s59xDV1XnVtVhNMNujwb+bGrVtE1vBh6e\npPf3wX7Ad4F1wH3AL/Wse/hMp5t60V5vOoVmWPEX2iC9gxH+27V9MKA0karqduCNwLuS/I8kuybZ\nIcmhwC49m+4K/LCq7k7yZOD3etZdC+zcTqTYCTiNZigKgCQvS7Kk7Vnc3jbfn+QZSR7fBtp6muG0\n3t5H77k3Anck2ZefBsTQJXlS23vciSaI7+6p8RbgET2bf5mm93ZKkp2SHEFzjejDba/mEmB5kp9P\nchAzh3GvXWlCbR2wIMnrgc313qTNMqA0sarqr4CTaP5av6Vd3gv8OfCldrPXAWck2QC8np9OdKCq\n7mjXv4+mt7AJ6J3V9zxgTZKNNBMmjm2vsewNfIwmnL4BfIFm2G+6NwK/QtN7uJzmF/2o7Ab8PfAj\nmuG622im4wOsBB7bXsf6RFX9mCaQjgRuBd4FvLyq1rbbn0gzRPd9mn/nh2h6r5vzGeDTNH8A3EAT\njjMNC0pbFB9YKKkfSc4G9q6qsdwxQ/OHPShJW5TkoCRPaL9b9WSaySMfH3dd2v75rW9JW7MrzbDe\nPjTDqOew9e+fSXPmEJ8kqZMc4pMkddJ2PcS3ePHiWrp06bjLkCT1uOqqq26tqiVb2267DqilS5ey\natWqcZchSeqR5IbZbOcQnySpkwwoSVInGVCSpE4yoCRJnWRASZI6yYCSJHWSASVJ6iQDSpLUSQaU\nJKmTtus7SUiDsvTUy8ddAtef9YJxlyCNlD0oSVInjSygkjw0ycokNyTZkOSrSY5s1y1NUkk29iyn\n9+ybJGcnua1dzk6SUdUuSRq9UQ7xLQBuBA4HvgM8H/hoksf3bLN7Vd03w74nAEcDhwAFfBa4DnjP\nUCuWJI3NyHpQVbWpqpZX1fVVdX9VXUYTMofNYvdXAOdU1U1V9V3gbcArh1iuJGnMxnYNKslewKOB\nNT3NNyS5Kcn7kyzuaT8YWN3zfnXbNtNxT0iyKsmqdevWDbxuSdJojCWgkuwEXAScX1VrgVuBJwH7\n0/Sodm3XT1kI3NHzfj2wcKbrUFW1oqqWVdWyJUu2+jwsSVJHjXyaeZIdgAuAHwMnAlTVRmDqyYK3\nJDkR+F6SXatqA7AR2K3nMIuAjVVVo6tckjRKI+1BtT2elcBewDFVde9mNp0Knqn61tBMkJhyCA8e\nGpQkbWdGPcT3buAxwFFVdddUY5KnJDkwyQ5J9gTOBa6sqqlhvQ8AJyXZN8m+wMnAeSOuXZI0QiMb\n4kuyP/AHwD3A93suH/0BcD/wFuBhNNeXPgu8tGf39wKPAK5p37+vbZMkbadGFlBVdQOwpS/XfmgL\n+xZwSrtIkuYB78WnzuvCffAkjZ734pMkdZIBJUnqJANKktRJBpQkqZMMKElSJxlQkqROMqAkSZ1k\nQEmSOsmAkiR1kgElSeokA0qS1EkGlCSpkwwoSVInGVCSpE4yoCRJnWRASZI6yYCSJHWSASVJ6iQD\nSpLUSQaUJKmTDChJUicZUJKkTjKgJEmdZEBJkjrJgJIkdZIBJUnqJANKktRJBpQkqZNGFlBJHppk\nZZIbkmxI8tUkR/asf2aStUnuTPL5JPv3rEuSs5Pc1i5nJ8moapckjd4oe1ALgBuBw4FFwGnAR5Ms\nTbIYuAQ4HdgDWAV8pGffE4CjgUOAJwBHAX8wutIlSaO2YFQnqqpNwPKepsuSXAccBuwJrKmqiwGS\nLAduTXJQVa0FXgGcU1U3tevfRhNa7xlV/ZKk0RpZQE2XZC/g0cAa4A+B1VPrqmpTkm8DBwNr2/9d\n3bP76rZtpuOeQBNe7LfffkOpXRqHpadePtbzX3/WC8Z6fs0/Y5kkkWQn4CLg/LaHtBC4Y9pm64Fd\n29fT168HFs50HaqqVlTVsqpatmTJksEXL0kaiZEHVJIdgAuAHwMnts0bgd2mbboI2LCZ9YuAjVVV\nQyxVkjRGIw2otsezEtgLOKaq7m1XraGZADG13S7AAW37z6xvX69BkrTdGnUP6t3AY4CjququnvaP\nA49LckySnYE3AKvb4T+ADwAnJdk3yb7AycB5I6xbkjRio/we1P40U8MPBb6fZGO7HFdV64BjgDcD\nPwKeDBzbs/t7gUuBa9rlsrZNkrSdGuU08xuAzX65tqo+Bxy0mXUFnNIukqR5wFsdSZI6yYCSJHWS\nASVJ6iQDSpLUSQaUJKmTDChJUicZUJKkTjKgJEmdZEBJkjrJgJIkdZIBJUnqpL4CKskewypEkqRe\n/fagbk7y4STPHko1kiS1+g2oF7X7XJrk+iRvaB+jIUnSQPUVUFX1T1X1EmAf4O3A0cB/J7kiye8m\necgwipQkzT/bNEmiqn5YVe+oqicCfww8HfgQzRDgmUl+fpBFSpLmn216YGGShwEvB14F/DLwMWAl\nTc/qVJon4j5nQDVKkuahvgIqyQuBVwNHAt+keez6BVX1o55t/h34xiCLlCTNP/32oC4CPgI8vaq+\nvJltbgbOnlNVkqR5r9+A+sWq2rilDarqLuD0bS9JkqT+J0k8J8lvTW9MclSSFw2oJkmS+g6oM4B7\nZmi/u10nSdJA9BtQBwDXztD+rXadJEkD0W9A3Q48cob2RwEb5l6OJEmNfgPqH4G3J3mgt5TkkcA5\n7TpJkgai34A6BbgTWJvkuiTX0Xzn6S7gzwZdnCRp/uprmnlV3ZHkV4HnAYe2zVcDn6mqGnRxkqT5\nq+9bHbVB9E/tIknSUPQdUEkOA54JPIxpQ4RVddKA6pIkzXP93ovvT2gmRFxPc0uj3mE9h/gkSQPT\n7ySJPwFOqqpHVNVvVNXTepanb23nJCcmWZXkniTn9bQvTVJJNvYsp/esT5Kzk9zWLmcnSZ+1S5Im\nSL9DfIuY23Tym4EzgecCPzfD+t2r6r4Z2k+geTjiITQ9tc8C1wHvmUMtkqQO67cH9VHm8Jynqrqk\nqj4B3Nbnrq8Azqmqm6rqu8DbgFduax2SpO7rtwf138CbkjwVuAa4t3dlVZ07x3puSDLVQ/qzqrq1\nbT8YWN2z3eq27WckOYGmx8V+++03x3IkSePSb0D9Ec2NYZ/ZLr0K2NaAuhV4EvBVYE/gnTTPnnpu\nu34hcEfP9uuBhUky/ftXVbUCWAGwbNkyJ25I0oTq94u6Dx9GEe0zpla1b29JciLwvSS7VtUGYCOw\nW88ui4CNfjlYkrZf/V6DekCSPYc4k24qeKbqW0MzQWLKIW2bJGk71VdAJdkpyVuS3A7cAvxy2/7W\nJK+dxf4LkuwM7AjsmGTntu0pSQ5MskOSPWmGCq+sqqlhvQ8AJyXZN8m+wMnAef3ULkmaLP32oE4H\njgGO58EPLrwKeNUs9j+N5saypwIva1+fBjwC+DTNIzu+3h77pT37vRe4lGZixjXAZW2bJGk71e8k\nieOA46vqyt4v2tKExoFb27mqlgPLN7P6Q1vYr2jupH7KbAuVJE22fntQ+9Dc5mi6HdmG+/pJkrQ5\n/QbUfwFPm6H9d2geuyFJ0kD02+s5AzgvyT404fbiJAcCLweOGnRxkqT5q68eVFV9kuY61AtphvXe\nDDweOLqqrhh8eZKk+WpbHlj4KeBTQ6hFHbX01MvHXYKkeWibv6grSdIw9fvAwh+xhQcTVtUec65I\nkiT6H+L702nvdwKeSPOsprcOpCJJkuj/ZrErZ2pPsgo4fCAVSZLE4K5B/TPw2wM6liRJAwuo36H/\np+RKkrRZ/U6SuJoHT5IIsDewBDhxgHVJkua5fidJXDbt/f3AOuDzVeXzmSRJA9PvJInTh1WIJEm9\n/KKuJKmT+r0GdS9b+KJur6p6yDZVJEkS/V+DOhl4Pc3Tbf+tbftVmjuZL6e5HiVJ0pz1G1C/Cfxl\nVfU+bn1FktcCz6+qFw6uNEnSfNbvNahn0Xwpd7rPAc+cezmSJDX6DajbgBfP0P4i4Na5lyNJUqPf\nIb7lwPuSHM5Pr0E9FXgecMIA65IkzXP9fg/q/Um+Cfwf4CVt8zeAw6vqXwddnCRp/tqWJ+p+CfjS\nEGqRJOkBfX9RN8mSJH+c5Nwke7ZtT02y/+DLkyTNV30FVJInAt8EjgdeCyxqVx0JvGWwpUmS5rN+\ne1DnAO+qqscD9/S0fxr4jYFVJUma9/oNqMOA98/QfjOw19zLkSSp0W9A3Q3sNkP7gXibI0nSAPUb\nUJcCr0+yU/u+kuwHnAVcMtDKJEnzWr8BdTLNE3R/APwc8AXg28CdwF9ubeckJyZZleSeJOdNW/fM\nJGuT3Jnk872zAtM4O8lt7XJ2kvRZuyRpgvT7Rd07kvwa8GzgV2gC7j+Bz1TVbB7DcTNwJvBcmoAD\nIMlimh7Ya2h6aW8CPkJzlwpo7lJxNHAIzeM+PgtcB7ynn/olSZNj1gHVDutdCby6qq4Aruj3ZFV1\nSXusZcAv9ax6MbCmqi5u1y8Hbk1yUFWtBV4BnFNVN7Xr30YTWgaUJG2nZj3EV1X3Ao8C7h9CHQcD\nq3vOtYlm6PDgmda3rw9mBklOaIcRV61b57wNSZpU/V6DuoDmS7qDthC4Y1rbemDXzaxfDyyc6TpU\nVa2oqmVVtWzJkiVDKFWSNAr93ovvIcBrkjwLuArY1Luyqk7axjo28rPT1xcBGzazfhGwcZbXvSRJ\nE6jfgDoU+Fr7+rHT1s0lLNbQXGcCIMkuwAFt+9T6Q4D/aN8f0rNOkrQdmlVAJXkC8PWqetpcTpZk\nQXvOHYEdk+wM3Ad8HPjrJMcAlwNvAFa3EyQAPgCclORT7fuTgXPnUoskqdtmew3qamDx1Jsklyf5\nxW0432nAXcCpwMva16dV1TrgGODNwI+AJwPH9uz3Xprp59e0y2VtmyRpO5XZXMZJcj+wd1X9oH2/\nATikqv7fkOubk2XLltWqVavGXcbEW3rq5eMuQQLg+rNeMO4SNABJrqqqZVvbru/nQUmSNAqzDaji\nZydBOINOkjQ0s53FF+DCJFPPgNoZ+Pskd/ZuVFUvHGRxkqT5a7YBdf609xcOuhBJknrNKqCq6lXD\nLkSSpF5OkpAkdZIBJUnqJANKktRJBpQkqZMMKElSJxlQkqROMqAkSZ1kQEmSOsmAkiR1kgElSeok\nA0qS1EkGlCSpkwwoSVInGVCSpE4yoCRJnWRASZI6yYCSJHWSASVJ6iQDSpLUSQaUJKmTDChJUicZ\nUJKkTjKgJEmdZEBJkjqpUwGV5MokdyfZ2C7f7Fn3zCRrk9yZ5PNJ9h9nrZKk4epUQLVOrKqF7XIg\nQJLFwCXA6cAewCrgI2OsUZI0ZF0MqJm8GFhTVRdX1d3AcuCQJAeNtyxJ0rB0MaDemuTWJP+a5Ii2\n7WBg9dQGVbUJ+Hbb/iBJTkiyKsmqdevWjaRgSdLgdS2g/hx4BLAvsAK4NMkBwELgjmnbrgd2nX6A\nqlpRVcuqatmSJUuGXa8kaUg6FVBV9eWq2lBV91TV+cC/As8HNgK7Tdt8EbBh1DVKkkajUwE1gwIC\nrAEOmWpMsgtwQNsuSdoOdSagkuye5LlJdk6yIMlxwNOBTwMfBx6X5JgkOwNvAFZX1dpx1ixJGp4F\n4y6gx07AmcBBwE+AtcDRVXUtQJJjgL8DLgS+DBw7pjolSSPQmYCqqnXAk7aw/nM04SVJmgc6M8Qn\nSVIvA0qS1EkGlCSpkwwoSVIndWaShGa29NTLx12CJI2FPShJUicZUJKkTjKgJEmdZEBJkjrJgJIk\ndZIBJUnqJANKktRJBpQkqZMMKElSJxlQkqRO8lZHkiZGF279df1ZLxh3CfOGPShJUicZUJKkTjKg\nJEmdZEBJkjrJgJIkdZIBJUnqJANKktRJBpQkqZMMKElSJxlQkqRO8lZHW9CF26pI0nxlD0qS1EkG\nlCSpkxzik6Q+jHvofz7dTX1ielBJ9kjy8SSbktyQ5PfGXZMkaXgmqQf1TuDHwF7AocDlSVZX1Zrx\nliVJGoaJCKgkuwDHAI+rqo3AF5N8Evh94NSxFidJIzTuIUYY3TDjRAQU8Gjgvqq6tqdtNXDE9A2T\nnACc0L7dmOSbczjvYuDWOew/TtY+PpNcv7WPx0TVnrMf9HZbat9/NhtNSkAtBNZPa1sP7Dp9w6pa\nAawYxEmTrKqqZYM41qhZ+/hMcv3WPh7WPrNJmSSxEdhtWtsiYMMYapEkjcCkBNS1wIIkj+ppOwRw\ngoQkbacmIqCqahNwCXBGkl2S/AbwQuCCIZ96IEOFY2Lt4zPJ9Vv7eFj7DFJVwzr2QCXZA/gH4NnA\nbcCpVfXB8VYlSRqWiQkoSdL8MhFDfJKk+ceAkiR1kgG1FUkuTPL9JOuTXJvkNeOuabaSPDTJyvbe\nhRuSfDXJkeOua7aSnJhkVZJ7kpw37nq2ZJLvFTlJn/N028HP+MT+fpmS5FFJ7k5y4aCPbUBt3VnA\nI6pqN5qZg2cmOWzMNc3WAuBG4HCa742dBnw0ydIx1tSPm4EzaSbHdF3vvSKPA96d5ODxljRrk/Q5\nTzfpP+OT/PtlyjuBrwzjwAbUVlTV16vqzqm37XLAGEuataraVFXLq+r6qrq/qi4DrgMm4j+Aqrqk\nqj5BM2uzs3ruFXl6VW2sqi8CU/eK7LxJ+Zxnsh38jE/s7xeAJMcCtwP/PIzjG1CzkORdSe4E1gLf\nAz415pK2SZK9aO5r6BecB2tz94qclB7UdmMSf8Yn9fdLkt2AM4CThnUOA2oWqup1NPf9exrNF4bv\nGW9F/UuyE3ARcH5VrR13PduZWd8rUsMzqT/jE/z75U3Ayqq6aVgnmNcBleTKJLWZ5Yu921bVT9qh\nm18C/nA8FT/YbOtPsgPNXTd+DJw4toJ79PPZTwDvFTlmXfwZ70cXf79sSZJDgWcBbx/meSblbuZD\nUVVHbMNuC+jIGPFs6k8SYCXNxfvnV9W9w65rNrbxs++qB+4VWVXfatu8V+SIdPVnfBt15vfLVhwB\nLAW+03z8LAR2TPLYqvqVQZ1kXvegtibJw5Icm2Rhkh2TPBd4KUO6IDgk7wYeAxxVVXeNu5h+JFmQ\nZGdgR5of/p2TdO6PqjHeK3IgJuVz3oKJ/Bmf8N8vK2iC9NB2eQ9wOfDcgZ6lqlw2swBLgC/QzFJZ\nD1wD/M9x19VH/fvTzAq6m2YYamo5bty1zbL+5fx0ZtPUsnzcdW2m1j2ATwCbgO8AvzfumrbHz3mG\n2if2Z3zSf7/M8DN04aCP6734JEmd5BCfJKmTDChJUicZUJKkTjKgJEmdZEBJkjrJgJIkdZIBJXVc\nktckuX3cdUijZkBJQ5LkH5PMeFeAJI9p7zv4nFHXJU0KA0oanpXAMzbz8LzjgRuAz42yIGmSGFDS\n8FwO3AK8qrexfSzE7wP/UFX3J3lb+7jvu5Jcl+SsJA/d3EGTnJnkq9PafmYYMMlvJ/nP9nHc1yV5\nU5KHDO6fJw2XASUNSVXdB5wPvLJ9HMSUo4DFwPvb9+uBV9Lc8PRE4GXAqXM5d5LnAx8AzqV5cOLx\nwLE0D5iTJoIBJQ3XSmA/mmfnTDkeuKKqbgSoqjOq6kvVPLb8cuAsmrtaz8VpwFlVdV5V/XdV/Qvw\nF0zAs4akKZN0S31p4lTVt5J8AXg1cEWSfWgeSXDs1DZJfhf43zSPL1hI89/l/XM89WHAE5P8ZU/b\nDsDPJVlSVevmeHxp6AwoafhWAn+fZA+aobwfAp8EaJ8ddRHwBuAKmkcvvAh4yxaOdz+QaW07TXuf\n9piXzLD/D/srXxoPA0oavo8Bf0tzbenVwAfqp099/XXghqp689TGm5n112sdsHeS1E+fl3PotG2u\nBg6sqm/PsXZpbAwoaciq6q4kH6R5qNsv0PSoplwL7JfkpcB/AEcCL9nKIT8PvAP48yQXA79J0+vq\n9Ubgk0luBC4GfgI8HjisquY0AUMaFSdJSKPxPppw+lJVfWOqsao+DrydZrbdV4EjaIbmNquqvk4z\n2+91wNeAZ9BMrOjd5lM0swWfDXyFJvxOoXnarzQRfKKuJKmT7EFJkjrJgJIkdZIBJUnqJANKktRJ\nBpQkqZMMKElSJxlQkqROMqAkSZ30/wETzGoBan82FwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "from numpy.random import normal\n", "gaussian_numbers = normal(size=1000)\n", "plt.hist(gaussian_numbers)\n", "plt.title(\"Gaussian Histogram\")\n", "plt.xlabel(\"Value\")\n", "plt.ylabel(\"Frequency\")\n", "save_fig(\"histogram\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 11: Q-Q plots" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure q_q_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import numpy.random as random\n", "\n", "p = random.poisson(lam=10, size=4000)\n", "m = np.mean(p)\n", "s = np.std(p)\n", "n = random.normal(loc=m, scale=s, size=p.shape)\n", "\n", "a = m-4*s\n", "b = m+4*s\n", "\n", "plt.figure()\n", "plt.plot(np.sort(n), np.sort(p), 'o', color='red')\n", "plt.plot([a,b], [a,b], 'k-')\n", "plt.xlim(a,b)\n", "plt.ylim(a,b)\n", "plt.xlabel('Normal Distribution')\n", "plt.ylabel('Poisson Distribution with $\\lambda=10$')\n", "plt.grid(True)\n", "save_fig(\"q_q_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 12: Box and Whiskers Plot" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Saving figure box_and_whiskers_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Generating data\n", "data1 = random.normal(100, 10, 200)\n", "data2 = random.normal(80, 30, 200)\n", "data3 = random.normal(90, 20, 200)\n", "data4 = random.normal(70, 25, 200)\n", " \n", "data_to_plot = [data1, data2, data3, data4]\n", "\n", "plt.boxplot(data_to_plot)\n", "plt.title(\"Box-and-Whisker Plot\")\n", "save_fig('box_and_whiskers_plot')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 13: Plotting Numeric vs Numeric Data with Scatter plot" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.datasets import load_iris\n", "\n", "# Loading the iris dataset from sklearn module\n", "data = load_iris()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['sepal length (cm)',\n", " 'sepal width (cm)',\n", " 'petal length (cm)',\n", " 'petal width (cm)']" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# So the 4 columns that we have are \n", "data.feature_names" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([[ 5.1, 3.5],\n", " [ 4.9, 3. ],\n", " [ 4.7, 3.2],\n", " [ 4.6, 3.1],\n", " [ 5. , 3.6]])" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# We'll be looking at SkLearn API extensively in the next session\n", "# For now just follow along\n", "# These are the first 2 columns and 5 rows that we are using\n", "data.data[:5, :2]" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# We'll try to plot these two numeric columns against each other\n", "X = data.data[:, :2]" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nf7ucXD6zHxh4AAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(X[:, 0], X[:, 1], 'bo')\n", "plt.xlabel(\"Sepal Length (cm)\")\n", "plt.ylabel(\"Sepal Width (cm)\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 14: Plotting Numeric vs Categorical data with Bar plots" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nUgf9f5icGflmn4oaAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "labels = [\"Baseline\", \"System\"]\n", "data = [3.75 , 4.75]\n", "error = [0.3497 , 0.3108]\n", "\n", "xlocations = np.array(range(len(data)))+0.5\n", "width = 0.5\n", "plt.bar(xlocations, data, yerr=error, width=width)\n", "plt.title(\"Average Ratings on the Training Set\")\n", "plt.yticks(range(0, 8))\n", "plt.xticks(xlocations+ width/10, labels)\n", "plt.xlim(0, xlocations[-1]+width*2)\n", "plt.gca().get_xaxis().tick_bottom()\n", "plt.gca().get_yaxis().tick_left()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 18: Exploring Titanic\n", "\n", "* Import from Titanic training and testing CSV files (kaggle) to pandas dataframes\n", " * Should result in two variables - train, test\n", "* Extract the age column as numpy array\n", " * Should result in two variables - train_age, test_age" ] }, { "cell_type": "code", "execution_count": 102, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "from scipy import stats\n", "from statsmodels import robust\n", "from math import sqrt\n", "\n", "from sklearn.metrics import mean_squared_error\n", "from sklearn.metrics import accuracy_score\n", "from sklearn.preprocessing import LabelEncoder\n", "\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
\n", "
" ], "text/plain": [ " PassengerId Survived Pclass \\\n", "0 1 0 3 \n", "1 2 1 1 \n", "2 3 1 3 \n", "3 4 1 1 \n", "4 5 0 3 \n", "\n", " Name Sex Age SibSp \\\n", "0 Braund, Mr. Owen Harris male 22.0 1 \n", "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", "2 Heikkinen, Miss. Laina female 26.0 0 \n", "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", "4 Allen, Mr. William Henry male 35.0 0 \n", "\n", " Parch Ticket Fare Cabin Embarked \n", "0 0 A/5 21171 7.2500 NaN S \n", "1 0 PC 17599 71.2833 C85 C \n", "2 0 STON/O2. 3101282 7.9250 NaN S \n", "3 0 113803 53.1000 C123 S \n", "4 0 373450 8.0500 NaN S " ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train = pd.read_csv(\"data/titanic_train.csv\")\n", "test = pd.read_csv(\"data/titanic_test.csv\")\n", "train.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 16: Correlation graph" ] }, { "cell_type": "code", "execution_count": 146, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from matplotlib import cm as cm\n", "\n", "fig = plt.figure()\n", "ax1 = fig.add_subplot(111)\n", "cmap = cm.get_cmap('jet', 30)\n", "cax = ax1.imshow(train.corr(), interpolation=\"nearest\", cmap=cmap)\n", "ax1.grid(True)\n", "plt.title('Titanic Feature Correlation')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 17: Facet plots" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
88688702Montvila, Rev. Juozasmale27.00021153613.00NaNS
88788811Graham, Miss. Margaret Edithfemale19.00011205330.00B42S
88888903Johnston, Miss. Catherine Helen \"Carrie\"femaleNaN12W./C. 660723.45NaNS
88989011Behr, Mr. Karl Howellmale26.00011136930.00C148C
89089103Dooley, Mr. Patrickmale32.0003703767.75NaNQ
\n", "
" ], "text/plain": [ " PassengerId Survived Pclass Name \\\n", "886 887 0 2 Montvila, Rev. Juozas \n", "887 888 1 1 Graham, Miss. Margaret Edith \n", "888 889 0 3 Johnston, Miss. Catherine Helen \"Carrie\" \n", "889 890 1 1 Behr, Mr. Karl Howell \n", "890 891 0 3 Dooley, Mr. Patrick \n", "\n", " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", "886 male 27.0 0 0 211536 13.00 NaN S \n", "887 female 19.0 0 0 112053 30.00 B42 S \n", "888 female NaN 1 2 W./C. 6607 23.45 NaN S \n", "889 male 26.0 0 0 111369 30.00 C148 C \n", "890 male 32.0 0 0 370376 7.75 NaN Q " ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train.tail()" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 891 entries, 0 to 890\n", "Data columns (total 12 columns):\n", "PassengerId 891 non-null int64\n", "Survived 891 non-null int64\n", "Pclass 891 non-null int64\n", "Name 891 non-null object\n", "Sex 891 non-null object\n", "Age 714 non-null float64\n", "SibSp 891 non-null int64\n", "Parch 891 non-null int64\n", "Ticket 891 non-null object\n", "Fare 891 non-null float64\n", "Cabin 204 non-null object\n", "Embarked 889 non-null object\n", "dtypes: float64(2), int64(5), object(5)\n", "memory usage: 83.6+ KB\n" ] } ], "source": [ "train.info()" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": false }, "outputs": [], "source": [ "train_age = np.array(train.Age)\n", "test_age = np.array(test.Age)\n", "test_rows = len(test_age[~np.isnan(test_age)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "* For `train_age`, calculate\n", " - the mean\n", " - the median\n", " - the mode" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean: 29.6991176471\n", "Median: 28.0\n", "Mode: 24.0\n" ] } ], "source": [ "train_age_mean = np.nanmean(train_age)\n", "train_age_median = np.nanmedian(train_age)\n", "train_age_mode = stats.mode(train_age, axis=None)[0][0]\n", "\n", "print(\"Mean:\", train_age_mean)\n", "print(\"Median:\", train_age_median)\n", "print(\"Mode:\", train_age_mode)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 19: Exploring a synthetic dataset\n", "\n", "* Create a `numpy` array by\n", " - Sample 90 points from N(15, 5)\n", " - Sample 10 points from N(30, 10)\n", " - Combine the two\n", " - Shuffle the list\n", " - Call it `age2`\n", "* For the array, calculate\n", " - the mean\n", " - the median\n", " - the mode" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "collapsed": false }, "outputs": [], "source": [ "age2_1 = np.random.normal(15, 5, 90)\n", "age2_2 = np.random.normal(30 ,10, 10)\n", "age2 = np.concatenate((age2_1, age2_2))\n", "np.random.shuffle(age2)" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean: 16.9701970128\n", "Median: 14.9236261466\n", "Mode: 1.08141888101\n" ] } ], "source": [ "age2_mean = np.average(age2)\n", "age2_median = np.median(age2)\n", "age_2_mode = stats.mode(age2)[0][0]\n", "\n", "print(\"Mean:\", age2_mean)\n", "print(\"Median:\", age2_median)\n", "print(\"Mode:\", age_2_mode)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 21: Titanic Embark Mode\n", "\n", "* From titanic `train` dataset, extract the `embark` column as numpy array\n", " - name it `train_embark`\n", "* Create frequency table\n", "* Calculate mode" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": true }, "outputs": [], "source": [ "train_embarked = np.array(train.Embarked)\n", "test_embarked = np.array(test.Embarked)" ] }, { "cell_type": "code", "execution_count": 101, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "C : 168\n", "Q : 77\n", "S : 646\n" ] }, { "data": { "text/plain": [ "[None, None, None]" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "enc = LabelEncoder()\n", "train.Embarked.fillna(\"S\", inplace=True)\n", "train_embarked = np.array(enc.fit_transform(train.Embarked))\n", "test_embarked = np.array(enc.transform(test.Embarked))\n", "unique, counts = np.unique(train_embarked, return_counts=True)\n", "[print(enc.classes_[i], \" : \" ,counts[i]) for i in range(3)]" ] }, { "cell_type": "code", "execution_count": 97, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "train_embarked_mode: S\n" ] } ], "source": [ "train_embarked_mode = stats.mode(train_embarked)[0][0]\n", "print(\"train_embarked_mode:\", enc.classes_[train_embarked_mode])" ] }, { "cell_type": "code", "execution_count": 149, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean_RMSE : 14.171\n", "Median_RMSE : 14.341\n", "Mode_accuracy : 64.59%\n" ] } ], "source": [ "mean_RMSE = sqrt(mean_squared_error(test_age[~np.isnan(test_age)], [train_age_mean]*test_rows))\n", "median_RMSE = sqrt(mean_squared_error(test_age[~np.isnan(test_age)], [train_age_median]*test_rows))\n", "mode_accuracy = accuracy_score(test_embarked, [train_embarked_mode]*len(test_embarked))\n", "\n", "print(\"{:<13} : {:.3f}\".format(\"Mean_RMSE\", mean_RMSE))\n", "print(\"{:<13} : {:.3f}\".format(\"Median_RMSE\", median_RMSE))\n", "print(\"{:<13} : {:.2f}%\".format(\"Mode_accuracy\", mode_accuracy*100))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 22: Exploring with histograms and boxplots\n", "\n", "* For `train_age`, `age2` and `train_embark`\n", " - Plot histograms\n", " - Plot boxplots" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABrAAAAJNCAYAAAB5kTXzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3X2YpHdZJ/rvMH3JZGZamISGxAHJQT03YvZs1shihECj\nCUSIZNdEOWdjDAY0eAQF5XBwQSBxL/GCRXAhq2RBycu6gvEoiWDAsAaQNyNrUBR+S1gSdRJJQ4bY\nQ8iYlzl/VDXpTHpm+q2qnqr6fK6rr37qeav7fp56un9Vd/1+z5YDBw4EAAAAAAAAuuIhow4AAAAA\nAAAAllPAAgAAAAAAoFMUsAAAAAAAAOgUBSwAAAAAAAA6RQELAAAAAACATlHAAgAAAAAAoFMUsGDK\nVNVPrmObz1XVowYRDwAAK6uq51TVDVX12ar6s6o6YdQxAQCTaxw/M6qq51XVtZuwn5uq6ikb2P4p\nVXXTRuMAHkgBC6ZIVW1N8oa1btdae3xr7UsDCAkAgBVU1e4klyb5d62170zyO0neNtqoAIBJ5TMj\noItmRh0AMFR/kuRhVfW5JEcluSLJDyd5fpIvpPchyfFJHprkLa21X0uSqjqQ5DFJvj3J65Jcl+Tf\nJNmW5HmttQ8d7kmr6uQkb02yI8l9SX62tXZtf9m/T/KSJDcn+e0kL2+tHV9VD02v4XR6km9Kcklr\n7Vc25SgAAAxIVb0gyS+k917r1iTnJvlSksuSPDnJ3yT5H0mOba09r6oeneQ3klR/Fz/XWvvjJHcn\n+b9aa3/bn/9nSbSFAIBBGdVnRk9Iry10XJL9SX6itfYXVTXf398nkzwnye1JfibJryb5ziRva629\npr+brVV1eZLvS3JHem2o1u8Zdqi4b0ryW0nOSXLaQTG9IMlPJplPckxWbqulql6V5IIkX05y1eHy\nBNZHDyyYLucnube19vgkX0xyUpLvaq19LMmrknyxv+wHkryuqh6zwj7+VZJP9L8J/J/72x3JJUne\n0N/3ryb5zSSpqu9K8vIk/zLJKUl+dNk2L0/yhCT/Isl3JTm7qs5YY74AAENTVY9M70s7p7XWviPJ\njUl+KckLknxLksem92HITyzb7NIkN7TW/vckz0pyRVUd01q7rbV2zbL1fjC9D3AAAAZh6J8ZVdVD\nkvxhksv6baEXJnlPVS11uvju/vJvS+8L0W9N8uwkpyb591W1rb/eU5L859batyX54/Q+e8oq4n50\na61aa3+3LKanJPl/kzyntfb1HKKt1i+8/XyS7+n//B+HyxVYHwUsmG7va63d15/+2SQvTpLW2v9K\n8o9J/rcVtllsrb2nP/0/knzrKp7nxCTv7k9/JMnj+tNPTXJda+3W1tpd6X3zZckPpdf42N9a+1p6\n31r+4dWlBQAwfK2125J8c2vtH/qzlto9pyS5srV2T2vt5iTvTZKq2pHk6Une1N/+xv42z16+36r6\ngSQv7f8AAAzDMD4zenySR6b/eVBr7aNJFtLrSZUkX22tXddaO5BeL/YPtdbu7E9vTTLXX+/zrbWP\n96ffneTkVcb9RwfF861J3pnkh1trXzpCW+2p/Xi+1Fq7N70ea8AmM4QgTLfbl00/Mb1vonxrknvT\n67q9UpH7jmXT96bXYDiSc5L8bFXN9tff0p+/66AY9iybfniSN1XV0lA5D03y56t4LgCAkejfO+Ki\nqnpOem2e2ST/Myu3eR6T5GHptYs+VrU0Kk12Jvnvy/b5b5K8JckZy4YTBAAYtGF8ZvTwJNuTfHZZ\nW+ib0xu2b2+SxYP2ty9JWmsHquq+ZftfOCiGXauMe3mOSfLm9Hp63dZ/fLi22s6D8t17hFyBdVDA\nApZckd43Sn6z3xDYc6QNVqN/A/L/kuRJrbUbquo70vsgJ0n+Kb1/+EuOWzZ9S5L/2Fo7+NswAABd\n9dz07tHw1Nbal6vqJ9P7Is+h2jy3pfdhyve01vYdvLOqOjXJryd5RmvtswONHADg0AbymVF6n/38\nU3+Ivwfo3wNrtY5eNr38i0Nrjfvl6d3r6m3p3cfrkG21qvrp9ApcS+YCbDpDCMJ0uTvJQ/o9oQ72\nyCSf6v9DPy/Jjjzwg5b1mkvytSSf649h/FNJUlU70+tR9fSqekRVPTTJecu2e0+SF1TV1qraUlWv\nqqrTNyEeAIBBeWSSm/rFq2PSu7/nUpvnrKp6SP++Cz+YJK21e9IbTvCFSVJV26vqt6rqMVW1Pclv\npzeEjeIVADBoo/jM6OYk/1BVZydJ//Oh/9Yfum8tqqpO6k+fnd4wf+uJ+8Ykr0ny7VV13uHaakk+\nnuQpVTXX74X/Y2uMGVgFBSyYLrcm+bMkf5f7xxNe8ktJ/qCq/iq9f+ZvS/JfqurbNvicn07yvvR6\nXX08ydVJPpHeOMF/nt7NMP8yve7XVyc50N/u4vQaMn+T5HNJvrMfOwBAV/23JMdU1Y396VelN1Tg\n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\n5KIkF7fWTklyY5LzRxHbZun/UT6hf95OT/LmTFaOP5TkL1prT0vyo0l+LZOV35JXJbm9Pz1p+X2o\ntTbf/3lxJii/qjomyWuSPCXJGUnOzATllySttXcsnb/0cr00k5Xj85K01trTk5yd5NczWfmxAZPY\nNuqqaWizdc0UtCG7aFratV00yW3trprY9wCsziraUf8pyVlJnpzkGVX1hHFqe60i1kuSnN1ae3KS\n2fT+1yYPvjY6aZXn4geX5bJnUs5fa23PsvfApyb5uyRX9RePy/lbqW293Lhff0fKb9yvvyPll4z3\n9XfI/Mb9+jvEe6zlRnbtTUQBK8kPJPnDJGmtfTbJrqr65tGGtGH7kzwrvSrtkvnc/8K/Or2LYZx9\nOMmP9Ke/mmRHJijH1tq7Wmuv7z98TJJ/yATllyRV9fgkT0jy3v6s+UxQfiuYz+Tkd2qSa1tri621\nW1trP5XJyu9gr07vm8vzmZwcv5zkmP70rv7j+UxOfmzMJLaNumoa2mxdM9FtyC6ahnZtF01hW7ur\n5uO4T5tDtqOq6nFJbm+t/X1r7b4k7+uvP05tryPFelJr7R/60wu5/z3HuFjPuZik87fkeUl+v7W2\nb4ixbYaV2tZJJub6O2R+feN+/R0pv5VM0vlb8ryM3/X3oPdYVbU1Gf21NylDCB6b5FPLHi/05/3T\naMLZuNbaPUnuqarls3csG6rgtiTHDT2wTdRauzfJ1/oPn5/ei/+Zk5RjklTVx5I8Or1eLtdOWH5v\nTPKiJOf1H0/UazTJE6rqqiRHpzc82yTld3yS7f38diV5bSYrv2+oqicm+fvW2j9W1cTk2Fr73ap6\nXlXdmN45fHaSqyYlPzZs4tpGXTUNbbaumZY2ZBdNeLu2iya9rd1Vk/wegNU5XDvq2P7jJbcl+bYk\njzjMNl1z2HZia+2fkqSqjkvyjCS/lORf5KBro7X2J8MMeg1W0w7+zao6PsmfJfnFVW7TFauN9QXp\nnb8lY3H+DtG2XjL2198R8hv76+9I+fWN7fW3yvySMbz+VnqP1Z+XjPjam5QeWAfbMuoAhmBicqyq\nM9O7MF500KKJyLG19n1JnpPkijwwp7HOr6p+PMnHW2tfPMQqY51fks+n94b1zPQ+NHhHHlj0H/f8\ntqT3TZ4fTu+bIb+dCXp9HuQF6d2342BjnWNV/ViSv2utfXuS70/y1oNWGev82HReD6Pj2A/IpLch\n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\nbFaIdW62y9ZKEArRiSWAwWipG+HVDdFOk+gt54ZB+JNo1Aj3u7fV0CDa2d4WINqu7dgf6zR3bRtr\nN3ZcL9ptDcOvNzO5cmlYf6jfZ3Rznnp6FLbW74rter2d+yRJkiRJkiRJOmgGWNqT7Nlz27bTJ04S\nju9cZ2q3tvFCgey5h4jlR29rt30au8htAVeo3yPUv7mvkp2gf8topF4oQiV7cx2tcK+zbf0ngHC3\nQ6S7M2i7dV8jOUI7mtj2/XJuknJuctu+dixJeWSSRjK3S9sJ+tysrRuOUs1ObKsPoJydpJoZpxe6\n+RHsh8JUshOUcxPb2lYzY3dc4+v2Pr7Zdjm7/bydSJxaevt7IUmSJEmSJEnSYeAUgtqTsfd+gHA8\nQX3+OomxcUaffvaObfOPPk4oFKZy+SKxbI7CM+cJh8PMfOzjrD//HO1KmeyZs4y859Ftx21mMqTK\nN0dvVbLj9CKx4XYzmeXa8acorM/RD4UpjR6nE0sOv9+Op6mlRknX14f7NvLTtONp8psLwzCsHU1S\nzRSGbfrhMNdOPM3Y2lWinRabI1NUhuFVn5HNZTqxOGtjJyEUZm72CdJrL5PoduhMPcx6fgZCIa7P\nPk5+Y4FeOEKpcIJeJMbCdEB7LUWiUaGeGqFUODm8XqE0GC22PjpLK5FhZeIs3UiMdG2dZiLD2tip\nu3pvNvLTFNbntm3fqpod5/rMY+Q3F+lGYqyOnRyOapMkSZIkSZIk6TAxwNKedBsNGosLNBYX6LVb\nZKsPE0kkdm3ba7epL87TWJinm6vS3twgmsnQ3tygsbhAu7xJNJUie+5hQuEwq1/7fcqvfYd8pcJC\nIklqZJpeKESqUeaR136XarrA4rFH6EbjpOqbpOqb9AlRT+VppEaIthtML36HVH2TRjxNKT9LuN+D\nfm8wvV6vSyUzRjccpR8OkWjWePiNr9CMp1maephGaoR4q0aqvkG006IdS1DOTRDqQ7q+Qaq+Qacd\nJ54Zpx1LEWs3yLRbxHtd2vUNNnNT9MIRUo1NUvUNeuEItXSBZjJLtNMkVd8k2RhMwbg50qYTTpBs\nlEnVNwnRp5HMUU+PEum2Sdc3SNc3iPQ6bHYatCJZcptLTKxcItzrsJmfZnniLKF+j2OLr5GtrNCO\nJljPTxPqD9bAylZWGV2/TiU3yeLUw/RD4a3XbYNuJEaiOUY7nt7T+98ul1n+vd+msbRIYnKKqT/y\nvcRG8jt/TpoNQpEo4ei9+RXTrdcJx+OEIgZykiRJkiRJknQUGGBpT1a/+hVq164C0FxeZum3fpOT\nf+xHd21b+vY3qbzxOgCt9RILv/lFTn72x1j8zS/Raw3WXiq//hqRdIZoJsPGyy8BEO10KDTbzI2d\n4sTcC8TbdQCy1VV6yxHKI1NMrF4aXmdq6XUayRzjK5dI1wajrlLNCoTCLB57hNOXvzlcGypXWeH6\nzGOka+uk6xsAJJsVZuZf5fKpZ5mZf2UQegGjG/O0Y0lC9MlvLAAQb9eZmX+VC2ffz+z8K/S2punL\nlZfphmPUUyOMrQ1en0ivw7HF71BP5ZhZKA7Dq0ytxLGl11gdO8nU8hvDfkyuXKSZyJLfXCBTXRvU\n1igzM/8qc8efZHqxOJwasVC6RiueItZqMFJeAiDRrhOtdLh4+v2cvfQ1Ir1BbSObi7SjcTrRxHCE\nVrjXZWbhVS6kRuhGdw8gd7P8H36H+vx1ABoL8yz9zm9x/BOfHn6/1+mw+OUvUbl0kXA0SuGZ84w+\n9cxdn3+vOrUqi7/5JRpLi0RSKSa/+4NkTp/Zt+tJkiRJkiRJku4N18DSntQXF7Ztt9ZLdJuNXds2\nFhe3bfeaTWpXLg3Dq2G7pUUat503RJ90rTQMr25I1TdJbgVPt0rWN0jVN7e33RoJdSO8uvUcqdvO\nEes0yFZXh+HV9rbbzxvud8lUS0Q72/uRauysIUSfVG19GF7drHfneQfX23mORKtGulrasa7Xbv2I\ndNtkK6vD8OrN+hHq90nVt9f1VhpLizu2+7fUtfbSS1QuXoB+n167zerXv0prvbSna+zF2je+Pqyp\nW6+z9Lu/Ta+zc60zSZIkSZIkSdL9xQBLe5KcOrZtOz5aIJJI3lXbcCJB+uRpwvHtI36Sk1M72vYJ\nUUsXaMVS2/Y3UjkayZEd12okR6intu+vJ0eop3ZOb9dI5Wjc1rYdTVDJjNMLbf9I1FMj1G+7Xi8U\noZop0Llt5FJ9lxr6hKinR2kkc29Z783rbW/bjKepZQr0Q6G3vF43EqOSHUyTuL3PIzv63A+FdtT1\nVm5/n5JTxwjdUldjdXXHMa21tT1dYy9ape3n7rWadCqVfbueJEmSJEmSJOneMMDSnkx81/eQPn4C\nwmESE5NMfd+H79i28Ox7yZ57iFAkQiw/yvSHP0o0leLYhz5CLD9KKBIh+9DDFJ45z0jwGCOPPUEo\nGqUTjXItN0InnmR+5jEaiSz9UIhqZoylyYeoZsdZGT9NNxylE4mzNPkQjdQIi8ceoZYapR8KUU+O\nsDD9HlqJDIvHHqETidMNR1kdO0k5O8nyxFkq2XH6oRDNRIb5mcfoRePMzzxKO5akFwqzkZ+mVDhO\nqXCCjZFpeqEwrViK+ZlH6UUTXJ95lEYkSp8Q5ewEKxNnKecmWSucHNQWTbB47BHa8TTz0wH15Aj9\nUIhaepTFYw/TSOVZmjxHNxKjG4mxMnGGWmaMpamHqabHhgHT/MyjdGJJFo4FtKMJeuEIpdHjbOSn\nWR0/TTk3ST8UphVPc33Yj8doxVL0Q2E2c1Osjp1iPT/D+ugsvVCEdjTJwnRAJ3b30wcCTH7P95Ka\nnoFwmOTUMSY/+P3bvp89dWrbdigSITk9s6dr7EXq+Ilt27HcCLH8ztBSkiRJkiRJknR/eSDWwOr3\netSuX6PXbJI+cYpIYm8P7XVTJJkkNTNLH0iMjRHNZoHBVILrLzxPt9Vk5OH3kDl9hnAsRmpmll6z\nSfSWYCE+WiA1M0unvElqZpZwLAZAamaGTqVMPZGg3g0TB9qxJLV0gW4kRi01SjcyaFtP5Uk0qxAK\nDUcWdSNxaun8MPi5MUKqkchRS48S7nepp0YhFKIXjlJLjRLq9WjF07Tig5FerUSGWnqUaKdFLT0K\noTD9EIN93RbtaIJWIg1AO5aiGovTDnfppEfphSMQClFP54m3a/RCERrJwevTiSaobbWpp/J0ovFB\nbcmRwXX6ferJ/FY/YtTSeaBPM5GlEx2McGsmMtTTo4S7ncH3QyH6ocigb90u7VjyZj/iaWrpUWLt\nJrX0KP1wBIBaapRou0k3EqWRyO79/U+lSM7MQiRCcnKKaCYzqG11hfUXnyebjpE5e47W2hqRRILC\ns+8lmk5vO0e7vEnp+efo1mrkHnqE7LmH9lxH9doVysUihEOkT52mXSoRGxlh/A/94W0jwiRJkiRJ\nkiRJ96ejH2D1+8x/8QvU564Bgwfwxz/xGWK5vU2dpoG1b36d9Re+DUB97hqtUolj3/8Rrv/q5+k2\nBmth1a5cZuZjH6dd3mTlK783PLaxOM/xT3+W61/4Fdob64O2c9eg1yeSSbP4G18EIFetcq7VYa7X\nZWb+FTK1wRpKmVqJcK9NOTfJibkXhmtCZSprXDrzPsbWrjK6MT9sG2s3WJ48x4lrzw/XhMpU1rh6\n8hnS9XUmVi4N2yYbZa6deJoTV18g1hn0I1Ndo0+IUL/PzMKrw35kaiUunnk/x6+/RLhRAyC+9Drh\nXo96Ksfs3EvDdbcy1TUunv0Ax5ZeJ1deHh4f7bYoFY5z4trzw3W3stU1Lp86z8jmEmOlq8O28VaN\nhemAk9eeJ9Jtb7Vd5drxp4i16xxben1YW6q+weVT5zkx9wLxVm3rHINp9rrROLPzL9/sR7XExbMf\nGIZbd2P1q19hs/jq8P1vlzcZf/93cf3Xfpleq0Uvk6BWa3H8hz9Ncmpqx/G9Tofrv/p5OtXq4P2/\ndhXCYbJnzt51DfXFBRa++P/B1vsfjic49cd/jEhy96ksJUmSJEmSJEn3nyM/hWCy1RqGVwDdep2N\nV146wIrub5WLb2zbrl27SvXKpWF4dbPdBSoXL2zb1yqVqFx4Yxhe3XrO6m1to70e2fLKMLy6YaS8\nTK68MgyvAML9LtnK6jAguiFXWSZTWR2GVwAh+uQqKzvaphqbZMvLw/BqeI7y8o62sXaD3OYyyUb5\ntrZLg9q4WVuk1yFTWSFbWdlx3kxldRheAYT6PbK71Japrg36sRVevVltiVaVbGV5GF7dMFJe2tE2\n2m2Rrm1/L97K7e9p5eIFqteu0Gu1bu7s96levrjr8c3lpWF4dfMcb+za9k6qly4MwysYrHtVm7u6\np3NIkiRJkiRJkg63Ix9ghW950H1Dv9PZpaXuRjSzfdq5SDJJbGTnmkPRTGY4vdwNoUiExNg4hMO3\ntc3uOC9AK54aThl4QzuapB3bOdKmHUsMpwy8oRNN0Inv0jaaoB3dvr8XjtBMZHa07UQTO9aJ6hOi\nmUzTC20fudTZpYbBOZJ0IvEdNdyx7W3X60Ziw6kB3+p6g7WwMvRvm0Zv0Ofdrre36TSj6cyO7dgu\n710kvfO1vNP+28+51xrezjkkSZIkSZIkSYfbkQ+waonEcO0lGIQoufcEB1jR/W38/d9FeGsNsVAk\nwvh3fTfJqWOMBI8N28THxsk//gSFZ947XCOLcJix8+8jMTbG2Pn3DUOsaDZH4dnz5B9/kvjY2KBt\nKMRqMk0zNcLS5Dl6oUHbbiTGyuRZyrmpwbpRW8rZCaqZcZanztEND2bF7IUjLE0+RC01ymbu5lR2\n9eQIG/lpViZOD0OlfijM8sQ5Wsksa2Mn6TMIf1rxNGtjJ1grnKQVGwRIfUKsjZ2klcixMnl22LYT\nTbAyfoaN/DT15Mjwepsjx6hnCixNPTQMvLrhKMuT56hkJ6hkxodtq+kC5dwkyxNnh8FdLxRmsP/k\nlwAAIABJREFUefIczdQI6/mZYdtGIktpdJbV8VPDMK4fCrEyfppWMsvq+OlhiNWOJVkbP0WpcHwY\n0vUJsT46SzO5t3Wwxv/QHyYcH7xu4ViMiT/8PaRmj29bxyo5dYyRO3zG4vk8o089DVu1xfKjg+09\nGAkeIzF58z3NPfwIqZnZPZ1DkiRJkiRJknS4Hf01sEIhjv/wp1l/6QW6tRr5J54cjAICWuslqlcu\nE8uNkDl9hlD4znleu1KheukCkUSSzNlzhKNH/6XbTXJqimMf/iibxVdJnzxJ7tzDwCDYiKbTtKsV\nRp8+TySRJJJIMv2RH2T9xedJTE6Rf/RxAEaffJpQNEpzeYnRp54llhsEPsc+8jHWv/1N1r72FRY6\nITJAeSt8ylTXWM/P0EgO1i6bn36UsdUr9MMR1sZOQihELV1gfvpRRsqLlLOTVLOD93lp6mHasQTh\nboe18dP0wxFaiSzXZx5ndGOOWnqUzZFpAFbHTtMJR0k0q6yNn6K7NUJpbvYJxtau0ExkWS8MwpL1\n/AzVTJZ0u0199jFaW+HQ9dnHGF+9QicSozR2EoBqdoKF6T7ZygobI8eobwVwC9PvYWz1CiFgdfwU\n/XCYRmqE6zOPkd+Yp5oZozwyeA2WJ8/RicSJdpusFU7Si8ToRWLMzT5GoTRHI5ljY3RQ21rhJL1Q\nmESjwtrYSdpbAdzczOOMr16lHU9SKhx/0/c60mkxVq8xEunRbTaJJBKkj59g6vs+TPmN18mdPUfm\n5CkAJr/7g0SzOXLJMOGzjxGOxe543sKz7yOcSNAurTP67Pk9j54Kx+NMf+SjrH3rW0RSSQpPPbOn\n49+OG78r4qdn6Ocm3/R3hSRJkiRJkiTpnXsgUpiNV19m46UX6He7dOo1pj/8UZory8z/+q/R73YB\nyJw5y/SHP7rr8a31EnO//IvDdX4SxVc4/olPE7ptmrYHQfn111j6nS8DUL34Bu3SGmPv/QDXf+3z\nNJcHayxVL13k+Cc+Q6dWZeGLX6Df7VK58AbNpUWOfegHWPzyl6hevjRoe/kSMz/4Q0SSSeZ+5Zfo\ntVqMbWzQ6/RZ6veZXLlIoTRYwyxXXmFhOqCWHuX0lW8R7TQByFZWuHLqPCObi0wtD9ZTGikvs9I+\nQ2n0BCevPkdia02okcoKl0+dJ9moMDP/CiH6jJSXSTYqLB17hOPXXxyuC5WrrHL15NOE+n1OXHt+\nsF5VeYlMrcTciac4tvgaqepgHaypq9/m+szjtBJpTl15brheVa66ypWT5ymUrjKxenlY2+LUw5Rz\nU5y+8i1i7ca2fmSqJaYXi8O2iWaNlYkznLz2/HDdrVx5hSunniXWaXJ87kVC/T758hLpxibzM48x\nM/8Kua11t0YqK1w7/iTdSIxTV58j3Nv6ma+ucfXkM8PRULeKdFqcvvItetUyqU6Duc//e0586o+x\n+dp3WP3qV4bv/9j7PkD+8SeZ++VfpLVeopVJ0Hz+ZY5/6o8Ry+4+umvhi1+gPn8dgMrli8x+/JMk\nJybv9keQdnmTa7/07+k1B+9/7eplTnzyRwhFIm9x5NtTuz7H/K//GvR6NF5NEJ46zrEP/cC+XEuS\nJEmSJEmSNHDkhxHE221K3/rGMKiqz11j45WXWN8KtG6oXrpIu7y56zk2Xn1lGF4BNJeXaCzM72/h\nh9T6C9/etr3x8ktUr10dhlcAvVaLzeLN0PCGysUL1OauDcMrgH63y/rLL+54jdOdNunqGqPr14f7\nQvQZK11lZHNxGF4BxNt1spUVxraCrhsKa9fIVFeH4RVApNsmv7FAoXSNEDfXR8tvLJCqrg3DK4Bw\nv0th/Tqj69cH4dWWTK1EurLGyObizdr6fQqla4xsLAzDK4BEs0qmsrqjtrG1a+Qqy8PwCiDWaZIr\nL1EoXd3WdnR9jkxldRheAUR6HUbX5ymU5gjdss5brrxMuro2DK8GtfUolOYYXZ8fhlcAqcYmqfoG\nu7n9NW5vblK9fIn1F7e//+svPE/t6hVa66Xhvm6jQfm14q7nbSwvDcMrGKxHt/nKy7u2vZPN7xSH\n4RVAa22N2rWrb3LEO7Px4vPQu/n+Vy5eoF0uv8kRkiRJkqSjrN/rsfL1r/LwlctMrq7Sa7ff+iBJ\n78j6Sy/w0NWrPL6ySLqydtDlSEdebnWOT124wB+/cIEX/7e/fWB1HPkAK9bp7NjX3liHWx76D+22\n7w77+3dqq8NlD+9TyPf0TfXpw24v0V5et12b7vF13+3zuNdzvGP+rEiSJEnSg+riz/4LXvjrf4WT\ny8s8euECr/zdg3uwJz0INr9T5LV/8o+Y2NzgeKXMEy//OtFW/aDLko6uTofv/f1/SQaIAfO/9PP8\nwV/4swdSypEPsOqJxI71eNInT5N/4im4ZR2bzOkzxEbyu54j/+j2NX0Sk5OkZmb3p+BDbvTJp7dt\n5x97gsyJkyRumQIuHI8zEjy28zU+c5b08RNkTp0Z7gtFIow+/uSO17gWjVHLjLGenxnu6xNirXCC\nzZFjdCLx4f52LEklO8Fa4cS22kqFE1Sz4zTj6eG+biTGRn6aUuEEfW5OnbeZP0YtO04tNTrc1wuF\nWR+dZX10ll7oZj+q6QK17BibW2tT3aitVDjBZn6abuRmP5rxDNXsOKXbaxs7QTk7STuWHO7rRBOU\nc1M72q6PzlLNjg/X/wLohqODfowep3/LFIDl7AS1zBiVrfW/APqhMKXCcdZHZ+iFb06z10jmqKd2\n/5nfHJna9hrHciNkT59l9Knt7//ok0+RPnWaWP7m6xZJJsk9Eux63uTUFKnpm+9pKBpl5LEndm17\nJyPBo4QTieF2vFAgffzkns6xF7f/HGfPnhuu2yZJkiRJevBc/fwv0KnXCPd6RLpdln73t2nXam99\noKS3ZfF3vkxjaYF4u02y2yFTXWNi5dJBlyUdWe///X/D7YvObL7w/IHUcuTXwOqFw8x87OOUnvsm\n3WaT3CMB2TNnATjxqR9h/YXnSUxOkn/08TueI14Y4/hnPkvp298ils0x+uTT+77+Vb/bpbm6Qiw3\nQiSV2tdr7UXukfcQyWYpF18lffIkuYceAWD2459k/cXn6VQrFJ4+TyyXIz5a4MQnP8P6iy9se42P\nfegjbBRfobm8zOhTT5MYG4QtN17j0te+wsVOiEwoxPLkORqJLJnqGuujszTSg8Dl8un3MrZ2mV4o\nQmnsFL3I/8/em/7IkV0Lfr/YMjIycs+qrMrai/tO9r6od6kl9dOupzfzPg4GM2NgPhkwbMDwl+f/\nwIY9hm0Y857xZmAbhue9kVpPLalb3VJLaqk3srmzyWKxWHtW5Z4ZucTmD1EVVVmZxaWbVFPs+AEE\nmFE37j33xInIyHvuOUemnBqlo2jEq6vUYwPUY55TbX78FKniPJJjUchMYMsqdSXMTfkkqdIiRiRJ\nNTEMwOLoMZLlRUIdg2JqHFP1nF9zE4+QLi3QDumUU57zcnXoAPLaGaJmh+bESdphz6lxY/JRMus3\nsWXFc5SJIoXMJG0lQrS+7jnL9PRWv4WbCEAxPY4th6gmhjFllURlhUY0TS0+5M1j7ASp0jyyaVJM\nj2GFNDqqzty4J1szHKOS9GRbyh0mUV5Ca9UppsbphHVPtolHSRdvYioa5dRo3/pXALasMjf5KFpt\nhqiuMvqd7yOGQiSPHkeJJ6jPXEOfmt66l779PUpnPyGqiUjTh5Aj+q42NPzqN6lcvECnXCJ18hSh\nbc6vvrI0m5i1GmomgyBJKLE449/7S4pnPkbWNJLHTyLKt36UdcolcF1CqbR/zLEsOsUCSiKBpIZ3\nPTcyOubb8fCBKZyhyVuOdbe0iwUEUSKUvLUeAgICAgICAgICAgICAh4MrFoVTNPfFW41DZx2CyKR\nW54XEBDw2bAaDVzLQnRdcFxcx0KyO7c/MSAg4DOhV1Zv3+hPxEPvwAJwTBO708bZ+AdgViusvPVL\nrHqN+o3rYNskj5/se77darH6qzfpFAsgCDjtFgNPPXvf5G0XCyz/8g1sw0CQJAaeepb4wUP3bby7\noZXPk3/nLexWi8bNGyAIxPbso/Dh+1QvXQCgUyiQ+8ZrOO02K796c0vHjkPy2AnKF85RPP0ROA7t\ntTy5b7yGqIR8HaeqVYZdiRpeTaeh/FVE1yHSrLA0epR2SGd45Qq64dVdCpktlnOH0ZoVciuXkRyL\nqFFkWRBp6GmyazN+vSq1Y7AwegzFbDK6fAnZahNrFBAEqCRypItzpItefaxwq8bC2HEEF0aXLxHq\nGLgIniNsYIpEZZlko4aAS2rpEoujx7BklZGlS2gtr56abLVZHT6IXl9nOP8pomOjGyWWRo7Q1BIM\nr35KtF7w5tFpsjRyBLVdZ2TlMpJtEm14NleLZRlcmyVZ8epHhduebJJtMbp8EcVsEauvIboupfQY\nqdIiA4UbCK6L1qqyMHYcW5QZWb5EuF3HRUC2Tdaye/teZ8FxGF65gtIy0FyTtd+/y9CLr9BcWSb/\nm7dxOh2MhZsIkkRkbJy1P/yO+sw1OrqKM7dE7tVv9kQ+blL65LRXS8116RTWyX3jtV0dXpXLFym8\n/wdc20bWdXJf99quvvMWrbx3TS3DIPvcC33Pdx2H1bff8mwVzxk1/NWv0y4UWHnr59itFoIsk/3K\nC0T39NeFWa34drycXyB8pE7y6PG+be8Gx7JYeesXNJcWAS9CcejFVxDEhz4wNiAgICAgICAgICAg\n4M+a7fW+AXCcW26MDAgI+HzE9uxj6Wc/8UvFdGyLamzwNmcFBAR8Vv705Vp256FfKZVsm5W3fkF7\nbQ2zWqX40QfUZq5S+uQ0Vr3mNXIciqc/wm72z51auXTBc14BuC6VixdoFwr3Tebi6Y+wN0LPXdum\n8MEfHpiCoIWP3sdutYAN2d7/A638qu+8AmgX1qlcvEDxzMfdOv74Q9rFou+8AjBrVUpnTlO5eL5L\nx5mWgdqskl2bQXS9trLdYWBtllgt7zuvAGL1dfRGgWx+BsnxvshExya7NkOkWfadVwBas0KissLA\n+hyy5TkzBddhcO06oVbdd16B5+xKFxdIl+YJdbzrIeCSLs4TatcYXJv12ypWm0xhjkRlxXdeASSq\nq2hGhWz+OqLjveBKjsXg2nWi9XXfeQWgG0Wi9TUG12eRbO96i67DYP46arPqO68Awu06yfISmcIc\nitnamIfLQOEGSrvhO68AFLNFujBPqrRIuF3355EqLxLa+LyTnTpu3JjFWJin8P57OB1vh4tjmhT+\n+B7N5SXqM9f8tq3VFWpXr/Ttt1OpUD57xq9j1SmXKJ8/17et0+lQ+OCP/g8Dq9Gg+PGHVD+97Duv\nAGpXr9BcWe7bR+PmnO+8AjAWF6jPXqfw4R+37NiyWH//PdwNm9zJdjt2XZfiRx/4534e6tev+c4r\n2NJxQEBAQEBAQEBAQEBAwION29kR+eE4WNaDsW4TEPAwUr3+KU6rhQAIgGI2UZv917QCAgI+PxL2\n7Rv9iXjoHVjhTqdnZ0xzaRGr3v2Qc20ba5d8xTvbesdq907I2/TtmCZ2u33fxrsbdspmN5uY1Upv\nu0YDq9HoOubaNu1iwXdebbWtYzV6dRzqNH1HziaK1fIdNl3HzbbvkNpEttrInT5trTaK1X1cdGzU\ndsN3SHX1YXb3K+CitgxEt9uuFLPVIwOAbBo9xxWrV16/jx3jyXaHUJ/ClP3mLLgOarvuO6+2xmuh\n9B2vv13107FVr/VcU7NRx+xzL5h97hkA22j0HNvtXrLbLdyNnTVbbfvbSr97dLe+zXqtrx3vHGu3\nvl3bxm5+/tzmfZ8rfeYWEBAQEBAAgOuSqCyTXb1KrJr/oqUJCAgICAgI2EFrl42VAQEBn5/ihx/6\nm6HBW9DOLV/64gQKCHjIcXsqYH1xPPQOrI4i99T5CaUz6NN7uo8lU4TSafqhT093fZY0DW1k9N4K\nuo3odHcqM3UwixKN3rfx7oboDr1FxsbRJ6aQwt2h8tGp6Z62oVSK6J69KDtqHkWn9/ZcD0sUqccG\naERSXcersUHq0QHcbdfUESTq0Qy1HaHDteggjWgGW9zKlOkiUIsO9LRthuPUY4OYstrdR2ywp62p\nhKnFB2mFY33aDnTd4LYo04gOUI9memXTMzjC1i3oCiL16AC12EBX24ae9uYhdafkq8UG/Tpfm7RD\nOvXoIJ1QpKdtLdrdryWFMCL96y7t1LEgy0TGJ9Gnuu+F6NQ0+thEd7pAQSA61X09N1EHs8h6d7rA\nnfa+iRKLow4M7mi7B31yuuueFkMhImPjffvQJyYRJGlLNEkiOjnVM2ZkbBwxFOrbRz87VpKpvm3v\nBn1yGralC9zUcUBAQEBAQD+y+WsMrV4lWVkmt3KZdGHuixYpICAgICAgYBu23T+rR0BAwOdH6JPN\nTNilrntAQMDnR+DB+U576GtgmbLCwJNPUzz9EY5pEp3aQ/zgYURZRhBE6nOzKNEYqZOP7Prg08cm\nGHr5a9SuXkEKh0keP7lrfZ97QfL4SURZpjF/k1AySerEI/dtrLsl/egTiCGV5vISajpD8sQpxFCI\nkde+TfncJ9itFrEDB32Hwk4di6JI7uuvUT57BrNeIzo1TfyAV99rU8d1XWc2LKKIEsu5Q2SK84Ta\nDYxIklJqDASBhdHjpMqLuIJIKTmKpYRZG9yLLYcIN6u0wlGK6QlcUWJh7ATp0jyC41BO5mhpcVrh\nGI4goTeKdEIRiulxXFH02hbnka0O1Xh2m4PIJV5dw1JCFNPjIIgsjhwlUryIaltY2X2UEzkQBJZG\njpCorOCIEqXUGI6ksDJ8ELOoobbqNLU4pdTWeKnSAgDl5AgdVWd9YBpbUogYZdqqTjE9gSPJzG/I\nJjo21fgQhp7CIIWLQLS+jqmEKaYnQBRZGD1GujiPYraoxQapJoYBWModJlFdxZYUCulxXFHqucYA\n7XCUhdHjaLVZbC3MyDe+hRKLMfDUs8gRnVZ+FXVgkNSJU4iKsnH9zxKNyCRGpglns337FWWZkW9+\ni9LZT7CNBtF9+3scRNsZ/urXKZ09g1kpo09MEj90BEEQGP7q16leuYSoKCSPnexxoG6ixBOMfPNb\nlC+c83auHz5KKJUm/ejjiGq3He9G4vBREEQaN2+QGRtCnDx4T16S1EyG3KvfpHrpIoIkkjhy/IFx\nVAcEBAQEPGC4DolqdxHdZGWFYibY+BAQEBAQEPCgoCYSX7QIAQEPLalHH8NYmAPXq8zjIrAydOCL\nFisg4KHlQXIPP/QOLAApoqPlRpCjUc+JIss4pklzdZnWyjJ2rIFZrSDrOs3lJdb/8HvMWhV9aprB\nZ59HEEVaqyu0VlcQ1TCRsQlC9yACYzecTpvmxnh2q0V0uoakafdtvE6lwtrvfkN7fY3w0DCDX3lh\n14V0u9XydeGYHaKNfUiqSqdYpLmygtNpo8QT6OOTuLbdV8dmtUJrdQWzVkXWNKJ79m3oeJnW6grh\ndhtVUHDwUtxpzQpqu4EriFTjJrYcQmtW0ZpVXASaWoKWFkeyO2jNClqziuA6yFYHM6ShtuveMcem\nreoYkRSiY6E1K0SaFSTbRDEHseUQoY6B1qx45yoqtdgAgguRZgWtWcEyQ4T0DKaioZgtdLNDyLEx\nmxWqsSyOKKG1qmjNCo4oYURStMNRZKuN1qwSbnmp66pxE0tUCbdqnmy4tMIxmpEkkm0S2ZTNsaha\nLTpSFLXdQGtWER0LM6RRj2YQXGdjzhVkq41iNrEUlZDZJNKsIJstbDlELTaIK4gbeqtgSwpqO425\nI1JrO1qzSsQ0CbcF2oU1wtksdrPpXf/8Kq7jYDcNRCVBu7BOc3UZQZWQ5QiRsXHsdou1372LsTCP\nkkgy+OxzhAezdMplWqvLWIaBHI0RnZzuipLajlWv0VpdxqxUkFSV6J59iKHQhg2uIioynZEx1Eym\n7/kArbU1Wqsr4LqoA4NouRHsdnubHZtEG3UkVaV2/RrFjz7A6XSI7T9I5omncC3Ls82VZRqiTTg1\njKzrGEuLrP/h91j1GtHpPQw88xyCKFL44A/Urn6KFNZIP/bELR107bW8pzdRIjw0vKvjLyAgICDg\ny46AI0pI23Z2O7tsQvlcuC4RyyTSKHlR2sGu1oCAgICAgDtGicZu3yggIOAzET9wiGU1jN3ySmyY\nikozEjiNAwLuFw4iPCBRWA+9AytmNFh9+03/cyu/yti3v0/pk4+pz1wDoFMusfL2m4z/8J+x8qs3\ncTpeXaD6zDXkiI4cjVK5eB7w6lGt/uZtwtmhnlRo94riRx/QuDHryVYssPrOm0z86K8RxPuT8TH/\n7tu019YArz7Y+u/fJff11/q2Lbz/HsbCPADttTXyv36b4Ve/yeq77/i1rSoXzxNKpjBrlb46Xn37\nLV/HtWtXkSI6sq5TuXgBANmyGG81Wey0yC1fImR6X07RRgFnTaIWzzJQuOHLlM1foxWOkVm/QcQo\nA57DaXjlCqtD+xlaverXtsoUb9JWdSJGmVh9HYBwu05u+TJzE6fILV9CdL15JCvLmEoYAZdEZQWA\nkNkkt3yZ69OPM7J8Ccf26ibFamvYokJTi5MuevqRHIuh1U9pajFyK1d855VulBjKX6WQHie7NuPP\nY3B9lrYaJVFdQW8UPdlaNXLLl1kcPcbw6hW/tlWqtEAnpKF0WsRrXh0MtWMwsnyJ2cnHyS1dQnI8\n2eLVVUw5hCWrpMqLgFfzK7dymetaHHtH2kQAvV5goHCDjusgOzbrf/g96sAgxY8/pLm8BHj5vfPv\n/prBZ59j7XfvAmALKrVPThNKpTGWFmjMedfJs+O3GP3W91h95y2/Ll31yiWUWIzk8ZM9Mri2zcrb\nb2Jv1Karz15HVMOEs1nK5z4BPGdv/ne/QR3MEkr2pkNsrq5QeP89/3Pxow9QMwNUP728zY7z5H/z\nNsNf/Qb5d3+9ZccXzhFKJDGrFerXvevUKhapvPMWY9//UX87jkR8O3ZMk/y77xAeGkKO9D4rGvM3\nKX78of95U8fhwcCJFRAQEPDnRqdcolMuow3ndo0K/qwIjo3WqlJKjDBQ9NIGuoLA+r2OvnJdpqpl\nomaH0OI52iGd+fGTONJD/3MhICAgICDgnmAbDYjHv2gxAgIeSipXLuI6jr+cLtkWeqNALZn7QuUK\nCHhYsZEIHFh/ImIbi9+btNfW6JRLtPLdxa+ddhtjfs5fkN6ktZZHNhrdnToOrfU8Ub27HtC9opXv\nThFjNRpYjTpK7N6/CLmO4zuv/PHXdi8M3lxd6frcKZcwFuf9RX+/j/wKZrXadcxptzFu3ujVcX4V\nOdIdCSTgEjFKvvNqE61ZxVR6HS7hjcirrrYbkVCbzqvtfWjNStcxxWoRbRR859X2tjvPF10bvVFC\nttp0usbr7nNzHppR9p1XW/JWe+T1xuudh9oxiDRKvvNqu2xKp1s/km0SrRd859X2ttYOR5XgumjN\nGvVYH322emVr5fM9ttnKr9JcXe3TdpX2jnvMqtcxFuZ959X2fvth1uu+82p7vz24Lu21fF8HVrtP\n+1Z+taefTqmEsbTYx45XMavd19VutTDmb/bYcTu/irXDjl3bpr22hjzZ68DqN5dWPh84sAICAgL+\nzCidPUPxow8AEBWF4Ve/iTY0fMfnG0uLlM+fBcchceQY+sSWYyrcrDK6dAHJNnEFgWJqjLYapanF\nsZS7cJS5rhelLau7pg/WG0Wi5tabjdppEK+uUE6N3fk4t0G0LRxRBOGhL8MbEBAQEPAlRAr1/rYO\nCAi4N7SWl3DNDptvkYJjEa0XvlCZAgIeZmTML1oEn4f+16O980e6KCKG1J5UXaKqEhmfRNzxwhEe\nzBLODvX0oWYGuV+oOxawZV1H1u9PbRxBFFEHu+dyqwX0nboIJVNERsZgR3SYOjjU0/ZudOwiYERS\ndJTu1IktLUYr3OvIa4XjNLXu481wnKbWG07c0mK0drQ1ZZW6nsHZsaDS1OI0d4znCBINPdXjEGr2\nkcFFoBlJ0gp3pxLoJ+/WeN1t26EIhp7C3ZHGp994tqRQj6axxW7fdEuL98zZFYQeubbLt5N+1ymc\nHeqb9i6cHULdcVyORomMjfekC9wtbZ4SjSJpkR1t+4wnCD33zCb9joezQz027tnxaI8dh7NDPX14\ndjzRY8dqn34RRdSB/s+KfvdZkEIwICAg4M8Lp9OhdObjrc+mSen0R3d8fqdSYeXNn9NcXKC5vMTK\nr35Ja31rY1GmMIdkez8cBNeLCK9HM3flvFLMJlNzHzF940P2XP8jsWr/jSOb49zu2GdBcGxySxfZ\nO/Mee6//kXhl5fYnBQQEBAQEPMj0yZDj9mkWEBBwb+gUi7BtY7cAiPfoXTUgIKCX+5Cw/jPz0Duw\nSrFYVyqX1PGTyJEIqZOPEt2zF0GSUBJJhl76KnI4zNDLX0VJJBEkiejefaROPkL8wCESR44iyDJy\nNMrQ8y/tWiPqXpB5/En0ySkQRULpNEMvfe2+pQ8EyD73kueYEEW03AgDzz6/a9uBp54lMjrmL8xn\nX3gZJRYj+/yLyNEogiyTOHKU+IGDpE5163j45a8haxpDL73Sq+ODh4kf9nRsyTILsThWKMxy7jAt\nNYorCDT0NPnBvTSiGdYzk9iijCWFyA/upaXFWR3aj6ElcQWBZjjOyvABOqrO6tB+LCmELcoU0uPU\nooOsDUxTj2ZwBYG2qrOcO4wjh1jOHcJUwjiCSCUxTCk1Sik1RiU+jCOIdBSN5dwhHFllKXeIliTj\nIlCLDrA+ME0tNkgxNe7JJqusDu3HDEVYHj5IMxzHFQSMSJLVoX20tAT5wT3YkoItKawPTGHoafLZ\nfTQiad/BtJw7hKWEWRk6iCmrOKJEKTlKJTFMITPp17fqhCIs+fM4TEfRvLphsSyF9ATlRI5ycgRH\nkDDlMCvDB7H6RLMBWzoWRGxRYuCpZwhnsww++zzacA5EkXB2iMHnXkRNZxh89nkkLYI+wGNQAAAg\nAElEQVQUCpE8cQp9atqz44mpLTt+8avIkQhDL76CEosjSBLxg4dIHDnWVwZBkhh6+auEUikESUKf\nmib96ONE9+wjefwEoqIgRSIMfuX5vtFXANpwjsyTTyOFw4iqSvqxJ4iMjjHw9A47fnHDjp97AVnX\nERWFxJFjxPYfIH3qUaLTnh2HU6kddpzotuNDR3w73nxW7JZqVJ+YJPXIY4ghFUnTPB0H0VcBAQEB\nf1Y4ltUTWWy327u07qUnMtl1MW7O+R9lq7svybEQne7xbsfA+g1CHcM/P5u/htCnj3o0g7VtI48j\niNRi9+Z7KVVaIFZfR8BFsk2G8leRzTvX058a17ZZ/+PvufH//EcWf/rjW2YnCAgICAj4kuL0plWS\nQqEvQJCAgC8Hm7WvNnEBzejNHhQQEHBveJCqIT/0KQQ7skz6yacxFuaJ7z9EZGQE8FK8aLkRnHYb\nORYnlPAWwEOJJFpuBKtWRRvOISoKAOHhHGathqSGCaUzgLdAUT53hnaxSGRklMSRY3ftaGoXCpTP\nf4Jr2cQPHiIyNo4YUj3ZLItQIolymxzKtevXvHpduk7y+Mm7TjUo6zpabgRBUdCGhpE1L+qplc9T\nuXgO13VJHD7q13XQciO4gJpOI2848tR0Bm14BLvTRhseQRBFhA2H2KaOlYQXDRVKprZ0nBvxdazl\nclj1Gk1VpWmLhABTCWNEUtiSgqElsSWvbVNLoLYbIAh+ZJEthTAiCd/xsxkh1VJjGJEkomvT1LyC\n5I4oY2hJBMehE4rQCXlz7qg6RiSJbHU2ipeLuALeMbuDKat0VC8qyFQ0GkoIU7SxIkmvmLog0Iwk\nCJkGjiDRCnv6sWQVY6NNU0tgyd6LbSsc98ZxXZrhxMY8FIxIAnBpq1Es2XPAtlWdZiSJaFve3wUB\nV5C8udk2phLemkcoghFJophtjEjSTxdkaElks40tybRUTzbRtkgXb6K2GxiRFKXUqDcPLYGrhEBV\n/SgkSdMI50ZAkggPZn3njDowgJbLoUcUhOEcgiBs2HEOx+6241A6TTiXwzYMz1Y2IrJqM1epX5/Z\nsONTKLEYoXgCLTeCHPFsVAyFEATBux8rVQRFRs0M3NK+w4NZz2Zd148gk8LaNjvO+MV21cwAWm4E\nu9Px7glRRAiFPDvutNHHhhG32/HwCFa95skmy112LIU1/1mxG9rQMJ1iAUGUdo0i26RdWKd8/qz3\nrDh02HPA7YJZrVA69wm2YRDbu5/onr27trWbTUpnT1N3O9jJLPGDhxGE/l9TjmlSOnuGdmEdbThH\n8ujxnoi6gICAgC8TciRCZHwCY/6mfyy+/8Adn68ket/ZlPhW9HgtnkVdv+F/bkRS2PLdLY71pBt2\nLGSrgxnainIXHAe9UaKkhlEch1AiRyUxTEe9N/Ve1XZ3Om7BdQl1GrtupPmiKZ0949e0tA2Dlbd+\nwcSP/tr/rg8ICAgICOhHbeEm6UNHvmgxAgIeSkKZAZqLC/5nAagl7l92rICAgAeHh/5XWK5QYO03\n7wDQXJhn5LVvo6YzVC5fYv293/rtWqvLjH73hyz/4md0yiUAjMUFcD0Hz+qv3vTbGovzTPzlPyf/\n6195bYDm4gJ2u03msSfuWDa72WTpjddxOl69gcb8HKN/8V2aK0t+LYXm4gLt9TVGv/Xdvn3Ur8+Q\n//Xb22RbZOKHf3VXi8prv3uX+uyMP55lGCSPHWfpjdf9XcHG/E3GvvN9ajPXKJ/7xG/bKZUYevEV\nln72Onar5bW9OUfu669h1qqsv/c7f5xNHS/9/J8wK+UNeRfAcZH0iK/jWKPBno7FomOTW76EbnjX\nQzdKiI5JLTbI2OI5vyaUXi9yY+ox0sV5kpVlv61itlgb3MPYwlm/JpReLzI/fpJIs8zAxoKQbpQI\nt2osjJ1gbP4ciuXNQ28UcREQXJfcymV/HrpRYnbqcUaXLiC2vB3Nofw1RMehqcUYWbzg183SG0Vm\np59gKH+NWG3NP1+2O5RSo4wtnPXrbkUbReYmHiFezZMuzfttQx2DleGDjC+c9VP5RBsFFkaPo5hN\nhvLXfNm0ZoW5iUcYWzzn77bWjSIAthxiZPni1jwaJWann+ijY4tabICxxXOYnRaaYLP0xk8Z/8Ff\nUT57muqVy/71N2tVMo8/xdIbP8XpdHB0FePClf52XFgn9/XXWPrZ61gNbyHLWJgHUcR1bPIb96ln\nF54dL7/1c79Gm7G4gGtZqINZVt78hR86bszPM/GX/6wr0nITs1ph6Y2fdtvxd39A7dqnlM+d3bLj\ncomhF17uteNv/AVmtbJlx+U1rE+vM/qdH/TasesiaZHuZ8WCJ9umk3Y77UKBpV/8zN+515ifY/wH\nf9U3utMyDF/Hm21Hv/XdvhFbjmWx9MZPe3Qcnepfs2/5zZ/TXl/D1FWMS1dxLYvksRN92+Z/+2sa\nN2Z9vVmGweDTz/ZtGxAQEPBlIfvCy5Q+/hCr1SQ6OU10es8dnxsZHSe2/yC1a5+C66JPbTvfdTHC\nCcrxHLLdoa3qlFJjxKp5oo0C7VCEcnIUR7r163xDTxNu1/3P7ZDe5bzCdRlbPIfWrNBpGdiCyGpy\n5J45r8DbCBSrr/ufHVHqm674QaG5stz12W426ZRLhHdJCxwQEBAQEADct9IPAQEBEB4YpCII4Lq4\neCU7OnLktucFBAR8NnrjjL84HmoHltrpEGm3/M9Op0Pl4gWyz71AY8Nhs0mnVKIxO+M7rzapz870\nvITYzSb1uRu+82qTxuz1u3JgNRZu+gvSALgu9RvXaS4vdrVr5Vcx6/W+C9u1HfOw6jVaa3kvzdsd\n4DoO9bnZrmP12RmUeLwrpY1r29TnbviOrk2MhXkaN2/4i/5bfVzHrHWH8nZKJerXZ/xF/+3j7Uyz\nJjsO0dq671jZJF5bgw2n0iaiaxOtF3wH0Sax+hqGlvCdVwACLrH6OpEd/WqtKtHamu+88vuorXWN\nBaCYLWLVNcKtGp2utnlkq+07r8Db5azX14luW7TZ7LejhH3nFYDgOkTr6z3z0BtF9Hqhpw5FrLaG\nYnbvqlY7DaL1Nd95tUm8lu+p2SXbnb463hx/+7xdy8KYn6M+e72rbX32OuHhXI8dN+ZmMZa674/W\n6gqNuRu+Y2WrjxncHekXrHqN+o1Z33m1fTyrUe/Ke+x02hiL88T27mcnjZtzPXbcmLtB/XqvHdfn\n+tnxDGal0nWsUyzSmO1nx9eRtO6abXbToLmyjD4+0Svb3GxX2olNHScOH+1pa/R5VjRuzPZ1YLXy\nq3113M+BZVYrtNd7ddzPgbWpu645zM4EDqyAgIAvNZ1yiZW3foFZrSKFw8T29X4X7Ua7UKDw4R+x\najVi+/aTPH7SzwiA6zJdLZNyNzYNheMU0+MkKitk17zvsBigNassjh3v7dx1yRRvEqvmsaQQtegA\nitmiE4qwPjDV1VRrVtGaW991kuuQLC+RH9o2F9dhcP0G0fo6HUVjbXCajnrni3SVRA7Z6njvI1KI\n9YGpXR1vktUhWV5EMdvU4lkaevqOx7lXqOkMrW1OLFFRCMV766oGBAQEBARsRw2+KwIC7ht2Zyv9\ntICXQnD7el9AQMC95UGqO/UgyXLvcXtLaLobOf+lHQ4TQZIIpTI9hThlXe9bwyYUjyOq3Q6BnX3e\njn67c2Q92nNcVBQktX+KlZ4+BGHXmjv9EEQROdK9Y6GfDABKn+NSONyV6marj169CZKEmu6n4/7j\ndUKanzJwE1MOY/YpXG4qao+DxpJVrFCftrKKKXcfd0SJdp+dxpas9qS3cRFohyM4QneUm9VHBq+P\nMJbUne7HlG/Rdsd4tqT4qQFvN55XC0vH3ZECzptz73j9dNxvzgByREeO6D3HlD7XTurTVlSUvrWq\n+vWLIHi1r3ak6unbduN4P/reYxH9Luw42teO+z8r+tvxbvfjbvf/nbf9/P2KarhXx7s9P3Z5VgQE\nBAR8mVl//w+YVW/Djt1qsfa7d3s2ZfTDtW1W3vo5zaVFzFqV2tVPuzaJRJtNdHNr44LWqhKv5YlX\nV7v60Y0SktVbSypZXiJTmCNkNom0KkSaFebHT7KyUVdzhzS3lTdTuEmqtIBittCNEqOLF/u+Z++G\n4LoIuDiihKn0f5fzRHEZWzhHpjhPvJZndPE8+o5NQH8KUqceITI2DuDV23z+RcSgrklAQEBAwG0w\n60E9noCA+4XZMLrePwVcBKtzizMCAgI+D3f+a+/+81A7sNqhEK1tPzYFSSKxkY84fepR5I26N4gi\nqVOPoqbTpB95zF+YlqMxUicfIXHkGKH01u7P+OGjhLNDDDz5jJ+qTwqHyTz25F3Jp+VGiO7d538O\nZ4eIHzhI+tHHkbSIL3P68af6piADSB0/6deWQhA+Uw2sgSef8RexxVCIgSefRp+YJDIxuSXryCj6\n9B4yjz/lO+4ESSLz1DOe3AcP+21D6QyJI0dJnXzUr5GFKJJ+5LH+Oj61Q8eCQCEcoa3FyQ/uwdko\nKG5LCuuD09RiWa9u1Aa16AANPcNadg+26M3DESXyg3sxtCTVbQXIm+E4lcQw6wOTvlPJFUTWBvbQ\nCUcppsdxN8rUdUIRiukxiqlxOornQHIRKKbH6agx1gen/baWrLKemaKSGKa5LSVONT5EU0+Rz+71\nHV62KLM2uId6dIC6vlUjqRFJUYsNsjYw7TuVHEFkbXAPbS1OObEVVddSo5SSIxQyE74zzhUE1jOT\ndMJRCplJ34llKmGKmQlKqVHfSeciUE6O7Krj6g4d65NTRMYnyDz5tL+AIyoKA08/izYy2lVjacuO\nn+ixYzUzQPL4CdiQTUkkSR4/QerEqS47Tp04hZrOkHn8Sd9WpEiE9KOPET94uKteVGzffrTcCP3Q\nJ6e67Xh0zLPjJ3bY8ZNPow1127GaGSBx+AipU4/5diwIQl87VmJxUidPkdxhx4kjRz2nbR+ie/d1\nya1PTvmLZTvp0fHQMLH9B/u2DSUSvTo+1md3PiCpqhc1ul3HjzzWt60gCGSe2v6sUMk88VTftgEB\nAQFfFnZG49qG0R0xuwudcqknWra5tBWBL/UrDG+ZPZtOHEHCFXrTRkeMbrkk2yTcqvWVpaklaIVj\n2/oUqCS6I/l39qdYLUKdbvlvRaZwg3RxHrXdIF7LM7J0sW+7cKuGuqPfRGW1b9v7hWOalM6cxjIM\nonv3M/a9HxKd7J+GNyAgICAgYDuC+FAnOQoI+EKxy+WeY5Fm4DQOCLhfPEjxjQ/3t6sgkE8kie4/\ngBTWiO/dRyjlLS4r8QTDr3yN8vmzqINZ37GVPHYCQZZpr+VJHj/lR2UMvfJ1yp98jBKNkdhIrxXd\nuw9X8GrwxA8dJpz1FtXtVstLtSeIRKf3+NFTzZVlWvlV1IFBIiOjCILA4NNfQdaj2O026VOPIioK\najrD8CuvUr54nkhuhNgBb6HasSwv7dg8mMkhlFgcWde9tmc/QUmnSB4+dkuVWEaD+uwsoiITnd6L\nqCjok1MMPv8ijRs3iO3fcgZkn3uB0idnwHVInXwUUZYJZ7MMvfw1qlcuExkfJ7bHc8BlnnwaORLB\nbNRJnngESQ0jqWFPttvpeMPhtqnj4gfvsWIJ6EBtw/mkN4qUEzl/gWV5+BDpwk1cUaKYHgdBwIik\nWB4+RLy2Si06SCPqOQ7y2X2YiopoWxQzk7iiREeNspQ7QrKyiBFJUo0PA1BIT2KJMmq7QTEzgb0R\ntbQ4cpR08SZtNUo55emnnMjR0KNETJPmyGG/VsTSyGEyhZtYkkIp7TkkGtEBVoZdovV1KvEhmhvO\noZXhA6QLNxGAQmYCVxRpaXGWcodJVJZp6GlqcU8Ha4N7sKQQst2mmBrHkRQcSWFx5DCp0iKtcIxK\n0pOtmBrHEUTUVp1iehxzwwG3mDtCpjCPGQpTSo3Cpo5dF90o9ehYWz9LVA8z+JUXEESRyOgY2Rde\npjZzjdj0Hj813uAzzyFHY8TCIuL0Yc+OM/3tOHXqMURVxSyVSZ56xI+e2rLjNMmNNHrxQ0dAFGku\nL5M8esy/f4df+RrF06eRtDCp4yd9+zaWFmmvrxEeGkYbGkYQxV3seMi3Y318osuOpYiG1TBIney1\n49yBaeyhyS07liTa62vddvzyq5TPnkaJJUgc3f1+FGWZoRdfoXjmYwRZJnXiFMKGI2nzWREezKLl\nRrxnxYaOtz8rwEtBZSzOE0okiUxMIgjCrjo2qxUaczeQdJ3o5DSCJBE/fBQkiZBRRhjb6+u437Mi\nOjmN+5xDY26O+IED/rPCbre8yAHXJTq9169H1srnSdZqtLc54B3Loj47g9PpEJ3ac1cRo58Fu9mk\nPjuDmIlhJ4d7nsebOg4ICAj4LETGJ6leuuB/DmeH+tZk3IkSiyMqCo65lR548/nrWBYNVSUsbO0z\ncwSRWmwAI5Ik3KohORYuAoXMhJ+KT3Bsoo0CuNDZEeHkRWj3rxEg2SaV2BBtRaPaXKASDhMKR5Gs\nDtH6Oq4g0VE0tNbWAoEtyv67xZ0QbRS7PofbdWSz3TfqfCe23H8T153SWsv779/a0PBt26//4XfU\nrl0FoFMs4HTa5L72jTsay2o0QNg9Mjwg4M+B1kZ66bup+dYplxFDoZ5o/YCAhxlBlnGt7uU9NRGk\nEAwIuF+IWvf7rQDddV0DAgLuKZ/vV9i95aF2YCVrNdLVKvWrnyJpGrFtEQzN5SWWf/mGV9vp+gyt\n1RWGX/4aq++85dd5aczdIPfqN5E0jcWf/tjfUdtYmGf0W9+l8MEfqVw45x27cZ3s8y+i5UZZ+Mk/\nYBteDaLK+bOMffcH1K59yvof3/PHTz/6OImjx1n86Y/9ulvG3Cyj3/4+nWKBlbff9OrczM7QWs+T\n/coLrLz5c5rLS9R1lWbbZuS1b4PrsvSz1706PzPQXFpi5Ouv9dWHWaux8JN/wGl7qWYqF88z+u3v\nUz5/ltLpj7x5zM4w8PSzRPfsY/En/9mvY1W/Mcv4d3+IsbhA/t13/LZmqUj60SdYeuN1v15R48Ys\no9/6HpbRYOXNn/s6budXGXrpq/11HA6z+E8/wel0SFcqOJZL3nUZXJ8lVfJqKcVq66wMH8SIJJm8\neRp5I2VOtL7OzYlHiFdX/boQ8doa6+YUpeQY4/NnUDdqQsXr68xNPEK4VSe3fAkBl3htjXCrTn5o\nP6NL5/1dxrF6gfnxEwiuy9jCWa9eVS2PbpRYHDvO0OpVtIa3mzk7/wlLuSN01AgTN8/49apijQI3\nxx8hVZpnoDDny7aa3UctlmXy5mkUs9U1D71RYnj1it9WbRusD0wxvnDW3z0dq61zc+IUitVmdPE8\nguuSqOWJtKos5w6TW77kF0uP19dZGD2GLSlMzJ9B3EijqTeKzI+fvKWOnVYTzbVYfP0fGfvOD6he\n/ZTC++/51z/92BMkjhzz7bijq7TPXmT0Oz+gXVhj9e23fDtuF9YYfPZ5344B6nOznh07LktvbLfj\nRUa+/hprv/2NV9ger2bU8CuvEkomWfjJP/p2bMzPMfbt71M6e4bSmY99ex945itEp/ey8ON/xKrX\nfHsb+84PMBbmyf/21/48OqWCZ8c/e92vCdW4cd234+VfvgGOw+LqAmL2umfHb79F42YfO/7pj/0F\nSWPhJiN/8R2EHSkdASzDYOHH/4Dd9GzTuHmjR8dAj45h41mxQ8cA8YOHPB3/8g2/AH19bpbRv/gO\nru1s6Rioj14lt03HEV3FOHuxr44rly706LgxO8PAM88Rnd7TpePyuU8Y++4PaczPsfbb35CpenVV\nCh++T/rRx7t0XDrzMaPf+l7f1JL3AstosPDjf8RuGhi6iimpu+o4deLUfZEhICDgwcN1XapXLvvO\n/+TxE0jq7Z1O2ylfOE999hpSKIw+NY1ZrRBKpb3I4VtQOnuGysULCKJAeGSM9uoydquFNpwjfepR\niqc/onz+LBNredZkmXZ8GAGoRTMMrN9Aa1ZphaPUYoM0taT/o11wbCZunvbfd0wphKEliDQrfuR3\nqGOQzF/DFUQvKjscQ+kYTMx/4r+3WJbFmiQTMVtM3DyDbHvvvm0ljBGOE2lVsaQQ+ew+XLE38ms3\nOiGtqz6nLSlYfRxTZkijnBwhWfbeEywpRDE1dsfj7KRy+RLr7/3W/5x54qn+dR4dB9eyEEMhGjfn\nuv5mLMzjOo6/yaQfrm2Tf/cdbzOHIBDbf4DBZ5/v+/0fEPCg4to2y2/+3I8G1XIjDH/tG4jy7ksG\ndrvNyps/p5VfBVEkeezEXdWEDgj4c8btW7LiQSp5HxDwcCHt2CDkAmafsiEBAQH3BvuLFmAbD60D\ny2q1SNeqCBsZG+1mk9KZjxl+5VUAyhfO+Qu54DldjKUF37EC3kt8+eJ5ZD3alQ6mvZbHWLhJ9fK2\n9CeuS/n8WWzD8J1XAGatSn1ultK5T7rkK58/ixyL+wvS4EVu1a596v1o2PYyVLv6KdHJaX/RH8C1\nLKqXLng/uLfNo7m4QLuwjpoZ6NFJ9dPL/oI0QKdUorFw03fCbZdNECXfeQVeSpza9WvUPr3S1bZy\n8QJqdth3XgE4nQ7VKxcxq9Uu2eqz14ntP9hfxxG9S8cRyyTSKPoLGODlt02X5pGttu+8AgiZTaL1\nddIbTphNUsUFOormL+aAt8s4UVkhYpR92wBIVFaoRTNdKXJE1yZVXgLX9ZxXG+hGiUi9SLy6yua+\nacF1SZUWaGpxfxEIQG030OuFHtnSxQUQBN95BaBYbWK1PInKSlfbZHmRZjjWlfpHciyS5WVCZhNh\nm63EamtU4kO+88qTzSFVWsSSVd95BV49jX46TpUWfB1vXhGzWqUxd4Py+R12fO4sSj87vnqlx46r\nVz9Fn5jqY8cXcR27x46NhQVqM1e3BnMcKufPomaHuu24WKRxc67Xjs+dBQTfsQLezuja9RmqVy51\nta1cvIA6OOQ7VmDTji956aG2/RCpz14nuu+g77wCz44rFy8gaVrXbvpWfpXWynLfCJ/atU995xVs\n0/HOZ8W5syjRWF8dG4sLPTqOjE/6zivwdFy5eAHX7taxsbhAY2G+v44Hs3eoY0/WHh3PXOuj4/Oo\ng9m+Oh546pke/dwLateu3pmOz58NHFgBAV8iKufPUvjwfQAM5miv5b3NFHdI9dPLXU5wSYsw8aN/\nfstFXoDGwk2KH33gf7Yas4z8xXcIJZJI4TCt/Kq/SUBwXWKmSSGSpBbPerWgNqKYZKMDCFS3pfmL\n1da63ncUu0MpNsHSyBFcQUIxDSZvnkHYeJ+J1gvcmHqMVGmp670lZrbRTO9dadN5BaCaLZYG9rAU\nSeCIEgh3noVccGzK8WFCbYOQ2cQWZVaz+/v2ITg27VCEaixLMxyjmhjucZQJjk2stoZmNBC1W+8L\nLJ893fW59MkZEkePdzmW6jdmWf/D77GbBpHRMaQd76RKLHZL55XXx/WtGmauS+3TK+iTU+hjE7c8\nLyDgQaJ+43pXKtPm8hKNG7PE9u3f9ZzKpQue8wrAcSifPUNsz1ZEf0DAQ43du7RnGnWUaFAnOCDg\nfiCHw175g431GRfhrmqyBgQE3B0tUUdz7jxt/P3koXVg2a1W18I+eBEPPv0eck6fY67bt22/3Ta7\nPjjv5oF6F330leEWx/s37tP3vZjHg8JdFhgPoMuxtx0Xt38Fvzu1Q9fdxTZ36bfPQXeX8dz+gvWV\n6+7KEN55H/1luDs+dx+BDX82ArUFBHypqF2/1vW5ubKM1WjccUrTnRE6dtOgvZa/bTrS1mpvLaf2\n+rqf1q5dWO/5u9quUyOLtqMG1c6aVNs32mwiOA7ORkq+WG3dd1557W2ijWLXsa2/uezyhe/3d6fE\nqqsM5a8hOjYdRWNh7DjNcLx/9JbrdkWbR+vrtLQ47W31uXBdxhbOobWqdIw6qtOhtZYnvK02ZleX\nO9/td8zXbrdZ++2vtyKnFxfQRsdwzQ5Wo4GkaQw++/xt52lWe+svmJUqfPbgsYCAPznbN2FuYhm3\nXrSwan1sv1oNHFgBX1o6jQZBIs2AgPuDEAp560r+ERdzlxTZAQEBnx9RAh6QwOI73z75Z4aaTNIK\nhbqOxfbu8/+fOHrc89xvoE9OERkbR5+Y8o8JkkTy6HEShw779WYA1MFB9PFJ4gcPd/WfPHaS6N79\nSNrWA1SJxYlO7SF57OSOtifQJyYJJVP+MSkcJrb/IIljx2HbztDY/gNExie6FkYESSJx+CiJw8cQ\npK1FAG1kdNd85fEDBxHVrVoDoWQKfXzC08VO2aamkaNbCwZSJEJs7/6etCuJw0fRx8ZRt40phkLE\nDx7u1fHUNJHRsV4dHznWo2NDVjD0NOVtu4tdBIqpMarxISxp69qaSph6dKAnxUwpNUYjmqG97QvN\nlhQqiWFKqTFvt8YG1cQQRjSDoW2lMnMEkXJyhHJyBGfbLuFGJIURTVONby2WuAiUUmNUE8Nd9Rva\nIZ1GNENpp2zpMWrRQcxtNSosWaUWy/a0LSdHaEQzXQXWbVH25pEcxd1mK7XoAIaepr5R/wvwUwWV\nkzlv1/QGrXBsFx2PU41nu3SsxOJEJ6dJHu++/sljx4lMTKIktvS2acfJYyd67Fgfn0Ab3hpPkGXi\nh4+SONJrx5Gx8a57FkEgefQ48YOHuu04lUIfn+xrx9HpPb12vGdfzzwSh4+ij090RS56dnykx46j\n03vQx8aJTExuibZhx/GeZ0WW8Lb5bie2b8ezIr6Ljo+fuGMdxw8cJDI23jWmp+MjJI4c7dbx6Bj6\nTh2LIomjx3ufFakU+kQfHR8/QXS6+1kh6zqxPXt7dXxkS8dnz57m7NnT/rNik8uXL3J5e2Tr52RT\nxzMzV7ly+TJKPM5Cq0kl7sk7M3OVmZmrPbLeKfda3s/K5csXOXfu3O0bBgQEACBr3T90RUVB3Hhn\ndB2H8oXzLL/5c4off9gVVbvJZn3UrQ5ElHjCq4F6Y5Z2sdB33H5OFjWToXb9GrmGBb0AACAASURB\nVIWPPvCe0TtSzhkR7z2xrXbv5m6Huz/XogNd39u2pFCLZojW1ohVV7H7FJU35RCVxDDutnecliTT\nUBSq8eGuczqhCA09Q6hdJ1FeRm3V+85xO4Jj+84r8CLmE5WVXVMPas1KV7S56DokK8tdbcKtWlct\nLtF1uzMi7CC5oxblzugrs1rpucaubTPxo79m/Ad/xcSP/vqO6iRGxsa7rp0gSUTGxnFtm+bKMmb9\n9vr6svKgfJcGeL+HC6UiMzNXWV9fQ5AkolPTtzxn1bZZX1/z/4mqes9qi94v2whsLuB+4m6L4A0I\nCLi32B0vg5Hg/xNQ7PYtzwkICPjsyGbzixbBR/qbv/mbL2xww+jct8F1XeX/ff11BNfl8edeInX8\nZNdCqRKLo09M4pgmsQMHyTz+FIIgoE9OIYbDSGqY7PMvesW4NQ19eg+OaaJPTjH47POIkoQ2OoYS\njyOIEplnvkJ0YhJRUYjt3Y9r24SHc2RfeBFJVQlns6iDWXBdUo88RuLQYQRR3Fg8FgilUgy99ApK\nNEoomSIyMoprWSSOHCN16lFPtqk9iEqIWCZJ4unnUdMZZF1Hn5rG6ZhE9+xj4Kln/DQndrNJp1RC\nCocRRBFJVYnt3YdrWUTGxsk+9wKioqDlRlCSKQRBJP3EU8T27keUZWL79uE6LuHBQYZeeAVJ01Az\nGW9x3HZInjhJ8tgJBEEguncfgiShxOMMvfAKoUTC0/H4BI5pbej4yTvS8XtXL3M9pBHKHMKIpOgo\nGq4gks/uw4hmcEWJajyL4NoYWpKV4UM4kkxLi9NUY+C6FDKTVJIjIIjUYllcoKPqLOcOYSthOmqE\nRiSF6NiUkqMUM5MgCNRigziihCWrrAwfohOOYikqtWgG0XWoxoZYy+4FQaChZ6iXr+EIAoV9L9KM\npHAkhWo8i2g7NPQ0q0MHcCWJZiRJW4ngIrA2uIdaPIsrip4TzHVpheOsDB/ElkO0w1GMcBzBdSmm\nxymnvUWRaiyLKwh0lAgrwwcx1QhmSKOuZxAdm3JimPXBPd48ogNYkowjKawMHaStxbHlENXoIIJj\nU4sOkh/aD6K4i45lqvEsZvEqTjTCa//lf7Nhx0Oes9Jlhx3vBwQSI0Mkn34eRffsWMuN4Fp2tx1P\ne3YsRSIMvfiyb8eRyWnvfty337fjyPgEckRHVBQGv/I8kZFRz4737PPux7Fxss+9uGXHiSSCKJJ5\n8mlie/b12vGLX92w44Fd7Hg/wsZC5NALL3t2HN+y49yjJ4kcPeW1nZxCVNUuO5a1yLZnxTSDzz6H\nuOE0slstOsUCourdj6ISIrZ3P45lec+K51/q0XH60ceJHzzUpWP/WXELHUf76jhKZGJqS8dPbulY\nikTQ4zrxx57e0HG4V8ey3EfHe/vo+JUuHf/2N29TjsV57V//W0+2Pfv4+//wd6zWqnznv/7vCG0U\nOnYdh7//d/8Dl69c4isvvHxPvgc2dfx//cf/kxulEt/+r/5b/vbv/z3X8qu88r2/5D/9f/83l5tN\nvvNv/u1n6v9v/9f/iZlzn/D0i698YXVOHMvi7/+X/5Hzly7yzFdevG/j6Lr639+3zgPuis/z7qTr\nKoax+8KK6zj85p9+DMDXvvGtzzrM56JdKOCYJlL4/uSz75S996LW6opXeF0UyTzxlB8FVfz4Q0of\nf4hZrdBaXaFTLnXVULUMA0GSMStl7KaBIElkHn8SMRRi8fV/pD5zleqVS7iOw8C+aV/fruvimF7q\nP6tWRZBl0o89QXNpkdLHH9JaXcGYv0l0zz4Q4MKVSyyGNFpjTyCbbWw5RKjTRLZN2qGI/86wiStK\nGFoM0XWpRzPkB/cysnqFVHmRWL1AqN3ADGl+WsB6NEMxPYmlhOkoYVwEKolhbtolXFFEHjxGI5JG\ncGyq8Sz57H7i9TxjixeINookK8tYUqg7OmoD2WyhmE0ExyZdXuz6myuIVJI5orU1hleukKws4QoS\n7XAU2WqTqHZHqbXCMRrRDJLVQW03ANdvYzcLKLLE4SefQZ+Y7Gvf4aFhJDWMGFa9+rOHDmO3WhQ/\nep/yuU9wHYdOqYRrW/45sf0HUVNpbKOBpEVumz5wE3FjV7CSSDDw9LOIimcTlYsXqFy6gCCKvp31\nw+l0aBfWEUNq14aTPxVvvfE6IdPkpVdfu+M53+6Zcif87f/2PzNz9gxPP//SHY/7ZeVe6PtWCJLM\nf3r9P3Nj7gZVx+b5f/lvUNOZW57z9//h71gvrLNeWGOlUef5f/lfoMR6nwufhftlG//+f/93zHxy\nmqeee/GW/X5efQfvTg8O92vd6frf/R9dnwVg+l/8a5TIwxURcr+fPV8kD/Pc4OGb3+LrP6GVX/Ez\n+7iIVBLDFAemvljBAgIeUiau/h51WwjW5qrX3n/xr+7LeLd6d3ooUwg6psnMP/wDo+teKhZBloju\nyN1tViusvPVLrHqN+o3rYNskj5+kcvE8hY8/BMehvZYn943XEJUQq796k06xAIKA024x8NSz1K9f\nY+1373q7K5cXGf7aNwil0qy++w7NRa/mkVWrMvTSV2mtrpD/9ds4nTbGwk1/Z+b6H39P7ZpXg6ZT\nLpF79ZuYter/z957Bslxpvmdv3SVmeV9V7UFGgDhLUFPgGZoxnKGY9drtdqQWUknxekUug8nEycp\nQrf35TbuTmci7hR7q5DWzc7czHBmuPRuuBwuSRA0IAzh2lZXdVWXN+nuQ1Znd3UVHAGQPKh+HxhE\n9ltvvvnkU5lvvc/zPn8WX3gWq9HwdHbC23dQevcdVt57F7/fh3l2huzjXwIHFp97xtXpEQQc0yB+\n6DDlj06w/MvXcSwLye9n9LEvIQeC5F54zqtTbtbrpI88QP3iBQqvvYxtGDTmZsk8/AjaSIb8q694\n5++Uy2QefpROscjSi89htVru3wSB0PRWlv/6l1ROfOC2XV4m+/iXsNttFp9/ds3Gtk10zz5WPniP\n4jtvXdLGsUqFjCNRxdV0GFk6jejY+Jtl5sd20/YFyCyeJNBwNYF8RouF7E70Zpns4kdItkmwUWRB\nEKkH4qTzHxPuLnaonQazY3tQjCZjCyeQzTah+jKCAOVIlnjxAvHiLAIOWqvK7PheBAfGFk7g6zRw\nEJBsk+XkJiLlBaL1qqsbNX+CubE9mLLK6PwJLztYNtvkMtsJ1Apklk4h2haBRon50V009QiZ3CmC\nNTdT29dpMj+6C7VdY3TxIyTLIFhf7gbW0qTy54iWXf0ore2OTbJMxhY+RDFahGp5RMehFB8nVpoj\nuXwewXHQWxVmx/diiTKjCyfQ2jUcBGTLIJ/e0mfjubHddLo2VloNdMcg/4tXGHngYZqLCyy9/AJ2\np9Pjx/m/eo3ax2foBFTsC/OeH+defO6Sfozj0FkueH6ce97149pZAdswiB+8vasz8lc4lkVraZHs\nY19C9gfIvbjOjxsN0vcfpX7hPPnXXsYxzUv6sVEuk/nCY7SXl9f8eOYCgiASnN7C8ptveJncneIy\n2ce+2OPHC0uzaLtqRHfvvaIfrz0r7qF65jT5X7jPCknX3WdFNEbu5Rc8rQGzVh1o47T4cI+N3e/j\nCtlHHndt/MJzWM0NNj72NivvH19n4y+D45B74RmMcrnXxidPsPzmG+iaTOf0Oc/Giy88Szu/dHkb\nf+FRtPQIS6++TKNbUmvNxgWWXnyOUKtJoN2mdvZjgtNb+PPf/7ekuiVq/t9/99/z5L/411itNu/+\nx/8Ax95GFATe/emP2P/lJ67twT8A2zR57n/9nwhWygB8/3/415w89zEB0+TpP/gf0Ws11Hqdv/zj\nP+KxX/nNa+r72A/+DOmtN8Fx+Ov/43/h4G/9LeRP+cdqaynH8f/8R3DsbSxB4L3nn2FvV+dxyJBr\nxajVWHj6KcbzS+5u3GNvEz9w6FM7v20YLDz7NK2uhl9wegvpow/dsOCwY9vkXnjOe1ZqmSypPfsQ\nJInGzAUKb7xOePtOahvKCzZmLmJ3Oog+H+UTH7D85hs4loUcCJB55HE3CUdVWXj26R7dpJX3j2M+\n4Or7mY06C0//zNUyFAQie/aRPHwnVrvF+f/8H3vOZ5RXmPj6t5h59SWKlQaTyxdILF9EwKGj6Jyb\nOoShBtGaZYLVAvVADEeUSBbOEevOX9o+P6bs69nNpFgdyrFRN7FGEOioAXAcRuc/8OYhkm15u7oD\ntQLZhZOIjoVVl2lrYRLLF3vGmli+QDnau8s4lT9LtDTnjcOQVZR1uqW1oLuLK7vwkVeyOJM7Scen\n0dLCNPxRrzyiJcqsREeJlmZJFc4hOA6GrNH2+T29L1sQiezcPfCe26ZJ7vlnXL1IwDHcBK7ci895\nepzNxQX8U5uw223MaoXApmlkXefCn/6n7jvbT/bRxwdqy65SevcdisfeBttGCYfJPv4VlGCQ3EvP\nY9a75dcch9Kxtwlv246k63191GcusvTS89iGgehTyTz8yA3bxXI1VM+cZiq3iOg4XPzzP3Z9+xIV\nHW4kx5/+KeJf/xIchzf//R+w/9f/xhUDJkNuDq38Esf/0x9hnvgAVRD4KL/E+eUCOy5RnhPg2F/8\nKeJbb9JyHFZkmXPBIEfzS+y4zPflajn+9FM9vnHgN377hpQlPP7s00hvvuHO3/79H7DvV3/zkiVI\nhwz5JNjN/lKcQ4YMuTH44jGw7XW1lBzqgdhlPjFkyJDr47NJ1B6EcE16STeYfL56U05ePvEBjffe\n4s/+9M+wLBNd15lPJGmuy+ZNl4qE1tX5dgSB2WSK8Xy+RwOo4g9gShLxDfW9Z1IpRpeLSPaacGdT\nVanqftIrpZ62C/EE8WoFdV2JEkOSycdijBbyPW0LkSh6u02gtbZNzxZEZpNJJrpjEwQBx3FYCQYR\nHIjU18qSOAjMpFKMFwo9egh1Taep+kiWyz3nm0umSJdKKOsyT9uKj1IoRGZDCZylWIxQvYHeWVuI\nsESJhXic8Q3XUQyFUUyTUPPqbGxJErGujZvNJg4Ciwd/jfH5D3rExRt6lEo4TSZ3qvc6RneRLFxA\n7azVaTcUjdzINsZne0trLaW24G+suMGhVRuLEhfH9zN18Z2esZWiYwg4RFfme2x8YeoAkxePYy67\nwQ5ffDvVYJKWFiZVONtzvpnx/W4wyGx5x1pqkGJ8gtGFEz1tFzLbiZYX0Ztr98mUfMyN7mJq5lhP\n20JiCl+nSbi6tM7GIucnD7Lp4ts9ml7lcAZT9pEo9i4+nZ88wMTcBhv7o1RCro3bhQ8RcNB1nYV4\ngkS1gm+jH0ejjHZ1O1Z90/XjFoHW2jXbgshcMslEfm28wDX5cU3Tafl8JCsb/DiRZGSlhLxOSPdS\nfpyLxQnX65/IjwVBwAZmkinv+7jKRj9eZSaVZnS5gGSvXcflnhVXsvEqN9rGq/eupum0fT4SV23j\nIJlisadtLhYnUq+jddo0m00kSeaJb3+PkYce5X//u7/tZUwJgsDf+Jf/FqO8wtN/9B8odO2fSKX5\njf/5/7zuHRiVkx/xh//dP8Xo2lMQBM4HAmSaTTTbXsvc0nT+yR//4Kr77ZTL/PE/+QfeeJPJFF/5\nO/+AxB13Xdd4r5W5p37Ecz/4M28csZEMv/2//d83JYM9lQp9fmYu/4VzPXOnVCpEPl8d+Lf8L16h\ncvIjnnrqR1iWiab7uZDJYH1KO0HCtRqpcq+u08a52/UQaDb73gfL4TCxas17z9iCiCFJqObaM9gS\nJc5nMoiOw9TiYt87KZdwF9vH8nm0Tm8Jk9nRUdqCSKK8QrTW+/y9ODKCLYpsWlzoeV+3fD7mUmlK\npSKS5bBXHu1516xEskiWQajmvhNMWWVh5DYm5nrnOi01iNbuLVu3HJ9keV2GarCa75uHnO0ssKJq\n7JUyPYGnlhpEMVpI9tp80RJlPt56r/dvX7vOpgtv9fRXDo8gOA4+o0lTDVJIbiZSWSSd750rLccn\naasB9MYKom3T0oLUQkkcQWTL2Td6tLoqwRS1UBL7zE9RLRN/KEwlEMDUNSxrrV2oUSdd6n3PLkVj\nfe9eQ5a52N0ZJTgOU4sLPe/shqqxkBy8IC9ZFlOLi73zgUCAfDTGaD7fM9cAmEmP0FH6dcQmFxc3\nzMUVZtMjA895w3EcNi0u0KnXkSSZr3zlCfTsKKNfvPIuzMs9U66EbRj8P3//dyl2E5KSyRSP/spv\nkH3k8U/U338JXI+9r8Tcz37Cc9//E29OYYki9p1388/+238xsH1npcQf/zf/ldceIK9pRA/ezj/7\nZ//8usYy0Dd+9TfJfuGx6+rXsSz+8O/9LYpLi16/j3zre4x+6asD21+vvYdzp88PN2vd6ZkH7wZ6\nVSNf2LUb8yo1Nf//giSJPe/XW4lb+drg1ru+3adPk1kpeVo4NiIf7nqEC5sPf6bjGjLkVuXoU79P\niLXfKKsTm0df/Kubcr7LzZ1uyToNZr2/zvz6RddB/xYcB59p9PwABVAss68tgM8we4JXALJpDWyr\nWBaK2X9+2ezXVZAtE3ndD1hwNQBUo39sg84n4KAaRp+YtzxgDG4f/dc3aAyXOp9kWyjmgLbWgLE5\nDj7TvISN+/vwdZo9gRUAxWyhGK2+torRRjZ7Fwlks43cGdDWbPcEkwBE20Jt1wfYuI1s9PYr4KC2\nGohO7/UpRqtvDACy0eg7rpj94/X62HA+2erg6/TXHR10zYJjo7ZrPYth7vlaPQtRq6jtRr+NjUvY\n2LKQB/nxIF8Z8L0RHbsnMOO1vQY/ViwLZcB3TLYsJGujz5vIA3xTMc2eRSK4dj9WB/ix+50e4Mem\n0bMQttr2Utcx0MaXGNvGPkTHvsx19B6/3LNi0HNssI37xwuDv9NWq4WxISgG7vPay1BfHZvjYN2A\n7MVB7wLFtlHsfr+63n6N2s1ZULqWcYiWhXON1zJkyCrmBo0eAWfgs+Bmcaln4o1i0LsqVG/0PANF\nx6btU7C6QWBHEChEIiAIiLY98HkpWRb+ZpPahkBbU1UxZbfQwcbnpICDYlk4QNm/tsjlINDwqcQr\nFcKdDopt9b1r/I0VL3jl9t3u2xkFYEoKhrw2JkuQcBDcsn2lOXDswfOQblarbPaWm1HMNivR3h1B\nG/89aJ4hOA5L6S04gkisvMCWc28M1M/SmhVGF04QKy8QqeZQzDaWrCKbnZ7gFbi7yRr+GLF2m0in\nQ7hRZ6yQx7dBd2TQ+0m0Le/+rmJI8rq/2wPf2ZdCtvrv0ep5a/7enVZtxTcweIXT/10bNGe/WQy6\n5o3Pg5uB1W4jbjzvgPfrkE+Hjfdcsm0E+9KLnoPmPRvnV58Uq9Xq940b4JO2aXiafF6/G+agQ4Zc\nExveJw5gb9BhHzJkyI3DZ5kIuN81B0AApTPc9ThkyM3i85SJc0uWEAxMbcY4dwqfTwEUHv/yE0x8\n8zvI6xYJyh99SOH117x/+6Ixxr7+TWZ/+H23HF+X5D33IwcDLD7ztHdM0nUmv/U9Fl941isVCBDd\nu5/g9BZmf/xD6E66BUli4snvsPLeMSonP/LaBjdvIXHn3cz84M/WSs4IAmNf/hrNxQWKb73ptVVT\naUa/+BVm/uJPMet1/AGVRr3NyAMP4+Cw9NILXls5GGTym99l7mc/pp1fy4iL334H2kiG+Z/9BLrB\nDdHnY/Kb36Xwxi+onVvLhA1v30l07z5mfvDn3mKoIEmMf+0bVD8+zcp7x722/vEJRh54mIvf/xOs\ndTtBso9+EaNW7bVxLMbYE/02Tt17BCng92z87LM/p9IxqYWS1KtLXqlAgEooRS2YJF6a8YI0tiC5\nJWk6jR6x72owRT2YwCqc8zKGHVx9KEuSu1oKLk0tTC2Uwlg+37MAUw2lEBynZ7eWoWhUwyli5fme\nCHA1lKKph4muzHuLGZYoUw8mqdVLPQtO1WCKeiCBXTjvLYg5gkgtmES0LeKlNb+qB+Ld61B6gk3V\nUAqf0cS/brdW2xegFkzR8c3gW/cir4ZSmJLPK6UI7s6uWihFvZq/tI1FCV1VeOxLX2PiG9+mdPwd\nqqdOem2D01tI3HE3M3/xp9iG4fpmo8PYl5+guTBH8e2/9tpq6RGyj3/Z8+NVRh78Ao5tsfTyi94x\nORhi8pvfYe6nP6a9LrMzcfhO1FSa+Z8/1evH3/oe+ddfpX7+nNc2vGMX0d17mPnh9/v9+Mxpt8Re\nF//4BOmjD3Hx+3+C3V67/9nHvoRRKVP4q1+47QIqps/f9eM/x1i3ozF17xEkv5/FZwc8K55/xisV\nCBDdd4Dgpmlmf7LuWSHLTDz5HUrvvn1ZG7uNhWuz8UOP4FjmZW28+lxJ3HEXajK1wcYqk9/6br+N\nd+4mumt3v42feJLq6VOsvH+cZ575mWfjwOQUU1u2cf6Mu4Ny06bNBDdNY1TKbN++08vi3Xn4LpTo\n9ZcCCExtZvuOXbz/3rsATE1v4aPlArplcWh0jHPd596OI9emHaWlR9h54BCvdO/19u07CW7ecoVP\n3XgCm6Z77Lbn6EOIgxZHhwy5CoKbt9CYm/XmTl/+1veYePI7n5omTSu/xNxTP1p77ihK39ztejCq\nlb55TWTXHrek7TrS9z9AYGoT7eUCSiTaUxp09sc/7Hkn6WPjbik620aQJELbtuNYFko4TGTHLkbG\nEuTzVWrnzpJ78Tnvc5KmoSbTNOZmkDSd4KZp5FAIq91k5V13t/Uzz/yMWWSMgNaTVNLQo/g2iOka\nig/D7C3VVwmP0NJChGoFRNtCNtski26p1zA51HadYnyibx5S8ak4gkAtkOiZt9QCMQxFoxwawRYl\nmv4ItVBvibmGHsGUfJ7OFrjzj0RxxttZLtoW4VqecniEcDUPOJTDGYK13l3G0ZUFCsnNdHx+2mqg\nZ85WDSYJ1IsoCOi6zqOPfgmAyXvvRNm+32vXKRWZ/fEPe+752FefoLW05JaCNE1ETUdLp2nlFpFU\nlfihO6h89CHNxbX5ZOzAIeIHb2cQjm0z84M/w6is7b4O37YDo1bFsW3kgB+7Y6CEwkT37r9kqdnc\ni89TO/fxWh/bd5C698jAtjeD+ad/yo/+cE3LJbB5+qafUwkG2XXPfbz84x8Cn927dIhLcHPvnKKm\nKHz3m9+9ZHs9M8qOfQd59fm/9I6VfT5+7evfuu6xKKEQu+6+j5d/st43rt8nJVVj9/0P8NIP/9zr\n99Pw9SG3LqLux14XeBcliX/7+3+AfIsFsW7m7s/Pmlv52uDWu77j/+ZfknvuGZzVuavj0NKCn/Go\nhgy5dZHoTwL9rJD+1b/6V5/ZyW+WmKYcCJCcnuS5v3wGQ1a466vfQNZ05HVbubVkCtkfwLFt/KNj\npO47gqSqBCY3dX/QasT27SeyfSe+cARfLI5jGmjpEVL3HUEOBPCPT4DjLjxHtu8ktv8gsj+APpLB\n7hio8Tipe46gxuPo2TEESUIQRTd4dcddSJqGf2wcu2Mgh8Mk7rwLf3bM01NwHIfAxCSpe+53xzYx\niW2aBGNhArv2EdqyFTUWRwmHcUwTLZMlff9RJE0nMDGFY1uIio/orj1Edu9FCYZQk0ls00RNJEnd\nexQlHMY/NgG4P+xDW28jfvB2ZF1Hz45iGx18kSjJu+5FS6XRM6MIsgyCQHBqM4k770FSVfwTkzim\ngewPED98J4HJqX4b33uk23YKx7I8G4e37+ix8VunT3LW50dM7aYeiCPglvgrR7IU45NYikpTjyDZ\nJm01yFJ6Kx01QMMfc3XABJFqKEUhNY0tKTT8MSTbxFB08ulpmv4oTS2MJbkLvfVAgqX0VmxJph5I\nINo2luRjOTFFLZymowboKBqi7dD0R8iNbMOWfNQCCcziaWxBoDpxByvRMUxFo60Gu+VvQiyNbMP0\n6WvXIUhUwiMsJzZhyT4a/iiibdLx+VlKb6Gtu/oPtigBArVgknxqS3dscUTbwlA0CsnN1IMJWloI\nU/IhOA4Nf4ylkW3YskItEEdwbCxJoRifpBLJYvj8tH1+RMempYdZzNyGJauXtbFd+hj8Ol/4O//Q\n9ePRMQRRXPPjw71+HErFCe0/jJ4dRRvJIPpUWPXju+/r8WNZ14kdup3Q9BbUeAIlFMaxTLRslvR9\nR5A03fUr20b0+Yju3ktk1x6UUAg1kcQ2DNTkOj8enwDHQZBlwtu2EztwCFn3X8KPswP9ODA+gW0Y\nyMEg8cN3EJiYQkulkXQ/jmOT3DpN+NDd6/zY7PXjyMZnxVH3WTExgWM7iIpCZMcuYvsOIAcCaOkR\nHGP1WXE/aizWY2MtNYLZbFL58H3UVBpfNO6Kw99597XZePOVbRwIB9C37riEjY8MtHH84O1Il3xW\nuDZ+8803qOs6j/3df4ikqmy54y6eefopTEniN//5vyEwMYmWShNKJDlz6iOkZIqv/ON/inQDfvjJ\nfj/ZHbt49aXnMX0+nvjer9M8dZJwKMwj3/web713jJo/wO/8m9+/pkV6QRRJ79jF++++gxYK89Dv\n/G1Cn8Gim57JEghH+Pjj0/iyWb78D/5rRPnm5KUMhcg/P1zP3OlyQs5qIoESDPHG66/S1FQe/b1/\nfN1lPK8FORBAS6awTQM1niR57/34ItEb1r+kqn3PquD0Fppzs96OTzWZInHHXYiKghIK9QWEvXeS\nqhLdvYf6hfM4q0lIjoNtdBh9/MvoIxkESfLs7YvFUCIRb66mhCPUz7sBdMc06JSWSR95gOJbb3rJ\nQGfPnkFud5i77WEEwBIVKpEMheQUoWphLTFHEMintrISHfXmL00tRKy8QLw0iyOKFJLTpPNne3aO\nq50G+dRmGv6YOw9RNJZSW6g03AQaY+Ieb95S98cJ1pcJV/NoHXe3ej41DRv1yQSRWtCdq1iySiG5\niXooSWxlrifoJgD51FbyqWlKsQlqoRTR8kJPeUJbkinFJ0AQqAUTiLaDJUpUwhlKiQlks0Ng6UMU\nWWLLFlfnNnHbVoTImn6SpOto6RFsw8AXiyGHQhTfepPGzEX3nXnfUXyRhv3E6wAAIABJREFUCOUP\n3sexLOx2m/rFC2QeehRBktx39s7dRPfsu6QWmyAI3nxA0jSCW7ZS+ehDjEoZs1ajs7JC+siDhG/b\ncdkEA//YuNufNxc//KkFjwH8ExM8/9zT2ILIfd/+FWL7DlyV/tz1isOP7NzN8XffRg+GOPqrv0V0\nz94bpnt3K3K99r4ceiZLMBLhzMenKQD6nn18/cnvXLK9IIqkduzi/ePvoIYiWBOT6BOTfOMb374h\n41nvGw/82m8R2X1jfGNk5y7ePfY2ejDI0e/9+mV9/XrtPZw7fX64WetOZ//w/4J1O2gFQWDTt38F\nSVVvxuk+M27ms+ez5la+Nrj1ri//+mvUPj7tJbw5gsDc6C7q4aGW4ZAhN4Mtp1/p2fm0OmPa8tu/\ne1POd7m50y25AwsgNDnJcjjMWKHAyrG3WTn2NqHbtpO+7yjg1tZu5hZoLS5gheoYlTJyIIBRKdPK\nLWJUK+4P0emtCKJIK7dIK7eIqGr4xyfxRWOYtTrN3AKdYtH7wSnpOq2lHK2lRRBEtPQIWjqN1Wp5\nfTiWhdlo4ItEaC8XaOYWcEwLNRbHPzaB3WnT7La1Wi2Cm6tIuo4SjpC+/2hPFoVtmrRyizRzi8iB\nAJ2VFZRQGEnXSd51b59dAuOTBMYne46ZjQat3KKXVWxtvQ0xGKSVz9PKLYLjoCZT6NnRnuuwjQ7B\n+lYkVaVTLNJcXMTutFHCETeAZllXtLGs6+tsvEArt4jWbqMKCjZumTy9WUZt193M4LCBJfvQmxX0\nZgUHgaYeoaWHkawOerOM3qwgODay2cHw6ajtmnvMtmh3A12ibaI3y/ibZSTLQDFSWLIPX6eB3iy7\nn1VUqqEkggP+Zhm9WcY0fPgCCQxFRzFaBIwOPtvCaJaphNLYooTeqqA3y9iiRMMfo60Fkc02erPi\nCapXwgamqKK1qu7YcGhpIZr+KJJl4F8dm21SMVt0pCBqu47erCDaJoZPpxZMIDh295rLyGYbxWhi\nKqq3M0s2Wliyj2oohSOIXbuVsSQFtR3H8Pkva2O/YaC1BdrLedePm033/i/lcGwbq9lAVNb8WFAl\nZNmPf9z149V7arVaBKddP+6srNDKLWA2GsjBEMGpzTiOQzO3sObHZdePzVqVVm4Bo1xGUlWC01sR\nfb6uD+YQFZnO6DhqIoFZr9Nayrl+LAiEtt6GKMuD/bjdXufHBsF6DUlVaZeK7rFOx/XjbkC71fXj\numihxTKeHzcXFzFr1YF+LGk6nfEivmgUSdVI3nl33/exnV9y7SZKaCMZtHQaUZaJH7wdx7a5+P0/\n8UqmGJUKsYO3Ez9wyPu8IAhEd+8huntPT7+dUqnPxu4zahuhrdt6v/9dG9tmC9r2lW2cW6S9XPBs\nvBqIy2zQ6hAkidi+A55uyOoPuXapyL6pTQiWRTO3iH9yCkEQiOzYyZHf+0cAPckG14t/dIzDv/U7\n6Ms56hfOs3t6KwDNhXkO/ebfBFH8REEfJRzhwb/99wEIdfv8tFm18ZHf+0dEo/5b7sfykE+f0Lbb\nvO+sEgp96uf3j0+4gfKbxKBn1dhXv+7ukBUE9OzoZYMGst9P6m53buU4DstvvtHzd6vZX353ldD0\nVu9ZsfDMz3v+5lgWnVIRhA2liAQwFY1qKEV24SMCzRLhSo5cegv+ZgXJMtydVnoYgFzmNkTLYPrs\nG96uqmBtmZhvBktSenZGrSbKtLQgjigRqi7jb1UxW01Kmo4jShSSmwFILF9AXrcDXGvXCNSL1IP9\nulCGz08us73nWC0QJ1Bf00o0JR8tLYSzztbL8SlGcqe8HezF2Diy0cZUVCxZpRaMk1ksEGiuEKwX\nWMjuoOpT0XGvU4lEie/aRanWmyWoZ0fRs6M0c4vM//TH3vH6hfMEJqZ6dtS5hrExKmWSd93Td22X\nQgmFvN1SK91gmIfj0Ji5iJa6/MKKqCgkbr/jqs95o5FUjeVuwDi6Z9+nd15d56Hf/XvueXfs+tTO\nO6QfQRSJ7t3Pkd/7R1y8eJ7JyU1X/IwvsjYXutGs943IDfQNSdV4+Hf/LjD0uSE3gAF68ma7iUL4\nMxjMkCG3Pq3cWkUhB8ARiFTy5MY+syENGXJL83lS0LtlA1gA0VqtR6eqeuok0T378UUilN59m9rH\nZwBXhHbxhWeZ+OZ3WXz+Weyu4HLt4zPI/gByMEj5w/cBN/CVe/kF1FSa3EvPe6XwGjMXKbzxOsGt\nW3tKehXeeB01maZ47C2vhFgrt8jSKy+Svu8I+V+86k18Su++gy8ao7k475Xp6hSXyb34LJPf/pWB\niyrlD9/3ShMa5TK5F59j6ru/iqRefdb00isveOUGm/NzFH7xCrEDh1j+5etem+Jbb6LGE1TPnKIx\nOwNAO59n6aUXyDz6RXKvvOiVQit/+D6+aAyjWh5o49wLz3k2rp45jeQPIAcClD/8AHB1uSZaTeY6\nLbILJ7ys3WB9GTsvUQ2nSS6f98aWXjpDSwuRKJzH33Dvh79ZJrN4ktzINkZyp70FkUTxIm010KMh\nobVrZBc+4sLkAbILJ7xFn2h5AUPREHCIlF2xX5/RJLvwEWc3H2Z04QR2V1MjVM1jiQpNPUy86NpH\nsk1Gcqdo6iGyiye94FWgUWJk6TTL8QnS+bVyManCOdpqkEhl0Vvo0VpVsgsfMTe2h0zupFc2MVaa\npePTUTotwtUlwM2mHl04wbmpw2TnT3iZzOFKDkP2YcoqsRXXB0XbIrv4EWe10GAbh1Ikl8/TcWxk\n26LwV79ATaYovv3XbrkkoLW4wNIrL5G6937yr70CgCWoVN99B18sTmN+lvoF9z65fvwcY1/5OrkX\nn/MWdyonT6CEQji27ZXNM8plci8855XptBpuZnzt3FlEVUNLp72ST3anzdJrL6Om0iy98qK3ENWc\nmyX/i1eI7jvQ78eJJJVTH63z4yWWXn6BzBceZ+mVl9b8+IP38EWiGJUytbPufWoVi5RffI7xb3x7\nsB/7/Z4f24bB0isvoo2MDCyBVZ+52Pus6Np4dZGrs1Lqq/ffmJ3pCWANwmq1yL30fK+Nw+GBC1KO\nZbH4/LNYzQZyQKVx7qxbTimV6rdxeqTfxq+/ek1i60a1ytIrL3Fgx26ga+NolPBtOwDYcZMWEh57\n7MtUX32WpdPnSCbdkldWs8HRLzx6xUXFy3Gzxnut7Nix65YrDzFkyKeFIIqfKGgmCAKhrdt6ykNv\nTBC4FHp21HsHgVsKV02miO3dT+7lF7x54bLmxxFEMrlTXvDJZzRJFGeZnRgcZFDbjT6tLq1Vp5Dc\nxOjCCQTHxkEgn9wMgkC0NO+VF5Ysg9FalfrGnUJO/0+Xjee4HOVIFtG2CFXzmLLKcmKqJ3gFUImM\n0NKC6K0KaqtGYvkiqcI5GnqU+ewOMotrNtDaNZKF85wORzEUgeCWbch+P0a9DgwO5HdKpf5jKyXU\nVJrqmdNrBwUBNZnqa3u1+CKRvmNKuP/YkDU+L+/SIS47duy6pntyM+/fzep76HNDbhSirmEZ63a3\nSDJK5PrLoA8ZMmQwok9moyqPId9aJTuHDPk8IX3WA1jHLR3A2ihIDHgLzq2lpd7j7TaNmQve31dp\n5ZeQGxvEXW2bxvxsj46T2zaHEu7Ptmnlc7SXcj3H3J0Xub6snVY+R2tDW7Nex6zXUEID+t7Q1jFN\nOsUiena0r+0gHNvu0cpyx7DU1+/q8WZusedYZ6VEY27GW/RfG9dijx4AdG188Xy/jZdyfZoAAg7+\nRqlP50FvVjCU/sUJrbvzqqdtdyfURnHt1V1I61HMFsH6ct+CzOruqPWIjkWgXkI226zfjK23evtc\nvQ69seIFr9bGW+kbr3u+/utQOw389ZIXvFo/NqXTax/JMgjWlnvK8Ky2NeVeuwmOQ6A+wMatwTZu\nLfX7RWsp5/pxX9sc7Q3fMbNWozE705uZ3O3X2SCo7JgmjdkZL3i1vt8+HKdnB+H6fjd+71b72NhP\np1SiMT83wI9zGJXe+2q1WjRmLvb5cXsph7nBjx3Lop3PI0/1B7AGfseWlryAihJ0y1d5uleAGo/3\nfWYj7UK+38a5HOzpb2tUq17prLW2i312wHFoLcz323jAvb/s2PJL/TbO5bwA1s1ESybh9Jp+lyBJ\nA5/XQ4YMGXK1JO+6FyUSpbkwj5bJEN2196o+F9m1B7PRoHb2Y+RAgMThOxEVheD0FpRolNq5s1Re\ne4mGJSDYVo8GFtCjcbmRlhbEEuWeeUDDH6UeTHB28x3ozQptLYih6IAbDFqPgINmmj3ZdpVwhujK\nWom/jqJTCyS4agQBU1YRHAfFaKK2a7QH6BV01AC2KJHOnfHmXv7mSncHWG/5G7VdB8chUau7pWQA\n4/wpIkceQR/J9PXtHx0FUex5B+lj4+iZLJ1Sierpk4iqipbOkHvxOXc3yr4DBCYm+/q6HPrYOOHt\nO6icOgmOQ3Dz9A3R7hkyZMiQIZ8/BLk34UMQhf7fUUOGDLlh6ONT8MtfAnRLXUP1WuakQ4YMuSZM\n4PMSIv70iqt/BlQCfpx10XlfPOFlVWrp3qx7satpI/p6F+61VBptQ7kZRBE9O4ayIctSS42gDsjm\n11LpvuNqKo0+MtKnHzCoDzkQQA4MFibcuHtAkGV8V7HI7bUXRdRUb6bpoPGuHt9oC180hn903F0U\nWIeaGulrey02dhBo+GN0ugssq7T0EC1tQCBPC9PUe483tTBNvT/rtaWHvHI7qxiySi2QwN5Qvqep\nh2luOJ8tSNQDsb6AUHPAGBwEmv4oLa23FNOg8a6dr7dt2+enEYjhbPCVQeezJIVaMI4l9samW3q4\n75odYbCNm1p4oI0H3afVEpl9bdMjqBuOy8Eg/vEJBEna0La/X0GW8Y+PI+n+DW0HnE8Q0EYyfRnT\nWvoSfpwe6fveuH481ufHWrr/+yh2Nd82+rE6oF9E8ZKZ3IN2/qy/NtHnI3XfUU+DxpdIIul+Vt57\nF7Ne7/usN45EcqCNB6GEQpew8YZnniCgZbKoieSGtte2e0lNpQfa+NMgffgweiYLuPfQ1eT79PR9\nhgwZcgsiihjVKs35OUpvv0Xx7Tev6mOCKBKc3oKaTIIAnXJvokTlow8JNxpMVVbI5k7S0Hu1wOqB\nS8/zHFFifnQ3TS2MKauUIllKUTepyZJVaqGUF7wC+vp2EGhs2IFl+HQuTh2kGB1jJZzl4sR+HPHq\n8/HUVo3M4knUTh210yCTO4XW7E/6AfB1mn2JQ7Jl0FZ7E0HqgTi6aaKtSyZxbJvKRx8O7FcJR8g8\n/KirJxmPk7rvCP6u5mTqnvvY/Jt/k5EHHqZ+/iztQp7WUo7F55/puzdXQhAEUvceYeq7v8bUd3+N\nkQe/0PdOHjJkyJAhtwbmht29TruN2WpeovWQIUOuF6fdhm7ys9P9j2LfOhpfQ4Z83vg87Xr6PI3l\nhtPQdBaSSYKbp5FD4R5h4Nj+Q5j1OvUL55GDIZJ334usaYw89AUKf/ULzFqVwKbNxPYfRJAkjPIK\nlVMnkTSNxO134guFGHngC+R/8Qrt4jL+0TESd96N7PcTO3g75Q/eR5BEonsPoKVHSN17hPxrL9PM\nLaIlU6TufwBfJELqnvspvvMWjmUS3rGLwOZp9LExV0h65iK+aJTUPUcuqckQ2b0Xo1b1yh0m7rz7\nmhdl0/c/SP61l2kV8ugjGZL3HkEJBknceTcrx4/hOA7R3Xvxj0/giydwDIPGwjxqPEHq3iMooVCP\n+Hj4tu2Eb9ve1fpas3HqnvuQdZ2RBx+m8MbrfTbulMtUT5/ElGVmQzqWT2Mhu5OR3CnUTp2GP8ZS\naguW7KOQmCJWmsMRRIrxCVp6mNzINjKLp9BbZVpqiMXMba4Ww8g2EoULCI7NSjRLNZii7o8hWQaB\nepGOz08uvQ1b9rGQ3UE6fxbJ7FANpynFxhAcUIwWoeoSpqyST01jyyrz2R1Elz9EtSyqwSSF5GZs\nUUJt14mUF1z9iMQUhs/PQmY7mcVTaO0qTT1CbmQrpqKxlJom0S05WIqN0QjEaatBRNvG3yzRVoMs\njmzDVDQWR7aTLJxDsk3K4QzlSAbBsVHMNsHaMoaikUtv7V7HTtJLZ1DMNtVgkuX4JI4g4us0CJdz\nWJJCIbUJc4CN86lpz8aB0mksUSJ51z1o6bTrx6++RHMp1+vH9x6h+M5bSD6J6JadBDZtRh8dxW61\nqc+u+bHs9zPywMMsv/kGZqNOaOs2Irv24DgORrVK7ewZNxv9znuQ/QH3+/j6qxiVCv6JSeKHDiP6\nfHRKRSofnUBQFOKHDuOLRkkfeZClV1+ivVxAz2RJ3nN/vx/v2Yd/bBxfLObu8lr14/u6fnz/UYpv\nvYnd6RDatp3QtttwTBOr0aB+8TxaLEZ0z+3r/PgXmLXamh+LIp1KherptWfFpfScApNTPc+K2L4D\nfUGt4OZpApNTGPU6i8/+nNKxt11fee9dxr/25ECNGknXST/wEMU3f9lj40EIkuTZWDBbBDZtXrPx\nygAbH32QpVdf7rHxtXApG38ayLrO6Je+itVsIijKJ9K9GjJkyJD11C+ep3LiA+/fK+8dR8+O4R8b\nv+zn7E6Hhad/5u3kbefzSD4fwektlD94H7uz9kM8WFtmdnQPpqKitqo0/VG3/N9laPojzI7vJbN4\nkmh5kXCtQD45TSXSnzBQCadRzJY7NxAlCrofn2W5FQLWJc4EakVi5QUEx8bfXGF2fC+mcnXzTX9j\npS8oFaiXaA1IMmrqYSxJQVqnuVUPxCn4I6TyZ/G1GzQCMQrJTTjFY32fFy4TWAtMTF5yR5UgCD1l\nHQGwbZpzMwPLAl6JjZUFhgwZMmTILciAcrqdYhEtOiwjOGTIzaB67oz3/wIgYuOvLn92Axoy5BbH\nQMKHdeWGnwK39AqeaNtEq1VXO8enooTDhLe5wtKioqBnR7HbbeRQGF9XuNgXiaJnRzGrFfRMFrGb\nhaplshjVKpKq4Yu7W1TVRILxr32j77zxA4f6dGqUUIjRL36lr214+w7C23vLZ4k+1R2baeKLRC9b\n5kqUZdL3HSV939FrsEwvciDgCpcrCvpIBlnvlpVJjaBnR3EcB61bjkXSNPcYbjkzOejuDFPjCfTM\nKFanjZ5xRdAFUeyx8eqONV80tmbj7KhnYz2bxaxVaaoqTUvEBxiKRsMfw5IUGnoUS3LbNvWIWz5G\nELydRZbko+GP4AgCLS3k7ZBqqSEa/iiiY9HUoyAI2KJMQ48i2DYdn5+Oz73mjhqg4Y8imx0a/igI\nIo7glt+RrQ6GrNJR3UUJQ9GpKz4M0cL0R11BdEGg6Y/gMxrYgkSrWyLHlFUa3TZNPYLZrdPb0sLu\neRyHphbpXodCwx8BHNpqEFN2F4jaaoCmP4pome7fBQFHkNxrsywMRVu7Dp+fhj+KYrRp+KNepnRD\njyIbbSxJpqUGu9eh0fBHB9rYUXygqt4uJEnX0bKjIEloqbQXnFGTSfRsloBfQchkEQSh68dZbKvX\nj33xOFo2i9VouL4iSQjd++9qMQXwdSf9vnAEPTuK7Hd9VPT5ELq7gYxyBUGRvV1BvmiU8a9+vc+/\ntVR6zY+7u30kTV/nxwmUoBsIUhNJ9OwoVqfjfidEEcHnc/240yYwnkFc78eZUcxa1R1bNyCy6seS\npnvPikuhj2ToFJcRRGngbjFwg0ydQh5jXRa43W5TPXOK+MHbB35GjfXb+HJjmPjGt/s0lBKH7yJx\n+K6etr5obKCNr4XQlm2EtlydTszNQNL1KzcaMmTIkKugUyz2HysVrxjAauYW+8rQ1mcuEJze0lcC\nFsCWZBYz269pbPHSrKf1KVkGI0unqQdiWBt1AgSB5cQUxdg4E7PHSTfrpJt1zLn3mB3bA4KIaBmk\nCucQugt1PqNJYvkCuascU1vrT+Roq4MrCziixOzYHpLLF5DMDrVAjEo4DYLI/OjunrYtWaGurQXR\nJJ/vkgkbV4Mv1r/g6ItdfVWDIUOGDBkyRBxWeBgy5Kaxce4tAKF6/3x8yJAhNwabz09Z3Fs6gBWt\nVvG3Xd0Au9Om8PprBMYnkXSd8kcnKLz+qte2lVtg7IlvsvCXP6Oz4m4Fb8zNguMGeHLPP+u1bczN\nMPmt73mBlxvNynvvUnzLLUPTnJulXcgz9pUnbsq5APKvvULt3Mfe+cxGg+ievcz//CfeQkpj5iLj\nX/sG1Y/PsPLeu17bTqnEyAMPM/+zn2C1XFs3Ll4g+9iXMKoVCq+/5p1n1cbzT//U0w9rzM2C7SAF\n/J6NQ/U60x2TOdsiu3CCQMO9H4FGCdE2qIZSjM+952lCBWpFzm+6nXhxhmh5wWurGC3yqWnGZ497\nug2BWpGZif34myskC+e9tlqryuz4PsZn3kMx3esI1Is4CAiOQ3ZxTaQ90ChxbtNhxuY/QGy5OhS+\npTOItk1TDzE694GXaRyoFzm3+Q5Gls4Qqua9z8tWh1JsjPHZ457uVrBe5MLkQcKVJeKlGa+tr9Ng\nMbOdidnjXkZysL7M7NheFKPJyNJaForeLHNh8iDjc+95GhmBhvtCt2QfowtrpXUC9RLnNt8xwMYm\n1VCS8bn3MDotdMFi/udPMfHkd1g5/o4nWN+cm8WoVkgcvov5nz+F3elgB1QaH5xk7MtP0Fyc7/Xj\n5QLZx77E/M9+4pXAa8zOgCji2BZLL7/oja0xN8fkN7/DwnNPexptjblZHNNETaVZfPYvPf24xswM\nk9/6rldqbz1Gpcz8z5/q9eMnnqR65hQr7x1f8+OVEiNHH+r348e/jFEpr/nxSh7z1FnGvvZkvx87\nDpLu731WzLpjG/SsaC8vM/+XP/PqpNdnLjDx5HdQggMW9TaUj7wctmky//On+mwc3HT5jP0hQ4YM\nGXJt6KNj3s5YAAQBPTt2xc8p4f4dPavHwjt2UruwptfXVvzEixfRmxVaWohcd1f2lVBbG7StHNvd\naX0JoetwZQmtVfW0Pf2NFYK1ZWqhFIrR9oJX3ng36HJdjoY/RjE+QbQ0hwCsRLLUgpdO8GhrIXLp\nrYzOf0iyOEO0nGMxcxuNAaUTF+MJMg8/itlsMHVoDyuNT/4jK7h5C835OaofnwFBILJj11Vryg4Z\nMmTIkCFDhgy5uQhS/xJ25yorAgwZMuTa8W2oovFZcksHsFTD6Pm3Y1l0yivouk69G7BZpVMqUT/3\nsRe8WqV27uM+/Smr2aS5ME9gcuqmjLu2YWytpRxGrTZ4Yfs6cWy7Z6Fk9fxKONyTBexYFrUL5/vG\n1pidoX7xvLfov9bHWYxqpedYp1SidvZjb9F//fk2llmTbZtgteAFVlYJV/PQDSqtIjoWwdqyFyBa\nJVTL09AjPULmAg6hWgH/hn71VoVgNe8Fr7w+qvmec0G3nGAl37PQ47ZdQjbbPWVyJNskUCsQ7GZB\nr++3o2he8ArcxaVgrdB3HYF6kUBtuaeczmofitFbY1vt1AnW8n0C7+Fu+cP1yFZnoI1Xz7/+uh3T\npDFzgdq5sz1ta+fOomWyPeWOcBzqF87RmJ/tadvKLVK/cL5Pv6l27mOcDWK3Zq1K7fw5L3i1/nxm\nveYFr8ANTjfmZgbu6qlfvNDnx/UL56md7ffj2oVBfvxxz84ncLN+6ucG+fHZvt09VrNBc3FhYMmi\n+oVzPSK/qzaO7Nzd19Y/MYkvFqPTrbMu6Trh23b0tQP3eTHIxsMA1pAhQ4bcWPSRDKn7j1L+4D03\n4LFnH2riykLSvkiE+KHDlN59B8ey0DNZb+eQnsky/tVvUHrtZYqyQUpRCXYzSwONEtnFk8xM7L/i\nORr+KMH6WkkVS5Rpqf1lZ1eRrH79ANl0j7XVAB1Fx7duzlELJvvaX45CcjNtRXd3hQkCkmX07wZb\nRyp/Fq3tBuFkq0Nm8RRnp++EDVqlCAKBqU0AKIEANKp8UgRRJH3kQRJ33A0CQ53EIUOGDBlyzWz8\nPTlkyJAbhxKL0Zy50HOs5RuWbR4y5GbRQUHFuHLDT4HBwkq3CI0NOzIkTUNNptz/3xAwESQJXywB\nG7Sm5EBgoIbNpXRtbgQbA2aioiCp6iVaXx+CKPbV6ZcDwb4xACgDjkuaNjCTeJDdBElCjQ+y8eDz\ndXy6V85uFUPWMAZkWBiK2hegMWUV0zegraxiyL3HbVHqEwj3+lB6+3UQaGt+bKG3LJs5YAxuHxqm\n1LtIY8iXabvhfJakeKUBr3Q+RxDp+AI4G3bsuNfcf75BNh50zQCyP4DsD/QdUwbcO2lAW1FR8EWj\nfW0H9Ysg4IvFEDboFA1s2z0+iEF+JfsD1+DHwYF+PPhZMdiPL/WsGNx2cJBalGXGvvJ1UvcfJXn3\nvUx8/Vs3pN8hQ4YMGXJ9hLdtJ37oDuyOQeG1V8i9/AK2aV7xc7H9B5n41ncJbduOA6wcP+Ylg6iJ\nBMVIhKLuR2/1JgPpzXJPEselWImOshyfwJA1mlqY+dFd2AOyVlephlLY64JDliivBakEgdnxvZTD\nIzT0CEupLaxEr21nUricI5s7RbBeJFaaZXzuvcteh9ruTcSQrU5fIs/NQtK0YfBqyJAhQ4Z8IuTA\nsFz5kCE3C2nD+pDD5fVPhwwZcn2YXDrh8NPmlg5glQMBil3tJT07SuaRxz2dmviBQ8hd3RtEkdiB\nQ6jxuKsp012YloMhYvsPEtm1B198rWxJeOduT3fnZhA/dBhJd4NKgiQRP3zXTStXCJC88x4vUCD6\nfAQ3T2Obhqt11EUfHSOweZrE4bsQu8E0QZJI3HUPWnqE8PadXltfPEFk125i+w95GlmIIvGDtw+2\n8YENNhYEljU/bT3MUmraW1CxJIVCajPVUNrVjepSDSapBxLk09NYonsdtiixlNpCQ49SCa1pCzW1\nMOVIhkJyygsqOYJIPjlNRwtSjE/g4AZ/Oj4/xfg4xdgEHcWdiDoIFOMTdNQQhdRmr60pqxQSmyhH\nMjS1Nc2ySniEZiDGUnqLF/CyRJl8appaMEktsJapXffHqIZS5JORPyOlAAAgAElEQVSbvaCSLYjk\nU9O09TArkazXtqUGKUVHWU5MesE4RxAoJKboaEGWE1NeEMtQNIqJSUqxMS9I5yCwEh29pI0rG2wc\nmNqEf2KSxJ13I/pcu4mKQvLue9FHxwhOb/HaaukRwre5C3ob/VhNJInu3eeVxFMiUaJ79xHbd8DT\nSEMQiO07gBpPkDh8p+crkt9P/NDthLfv7NGLCm3ddskSP4GpTfjX7ZTUx8ZdP75jgx/feTf6SK8f\nq4kkkZ27iB243fNjQRAG+rESChPbf4DoBj+O7NrtBm0HENyytWfcgalN+McnBrZdtXd423YiO3df\nVsfJF4n023jP3ku2HzJkyJAhnxyr3Sb30vOYtaq7W31dqeUrsfLuO1RPn6S1uMDK+8dZevWlvjYt\nrXfXVEsNXl1ZWUFgObmZc9N3MjN5gKa/P4FkPYbPz8zEfko+jaKqMTOxvyeZxVQ0cpntzE7sZyU2\ndk2lbcHdpb4etV3vC1Ktp76hXGBbDWANSMQZMmTIkCFDPk8MSu4cMmTIjUEcIBthXSZBa8iQIdeH\nSuPKjT4lbu1vuiDQUFVk3Y/ZaNCcn0NNphAEASUcIfPwI6x88B5aMk14h7twHdt3gNCWbZj1mtu2\nu0CdefgxSu++jRwMEd2z76YOW40nGHn4Ecofvo+eHSN827UJd18rgalNTH33V+msrFD56ENPt0j0\nqYw8+AWUSMRbhNfSaUYefpTKRx8SmJgiNL0VgMSddyP5/Zi1GrH9B5FUN3s18/CjfTaO7tmHKCu0\nCktE9+5HCbkBn1UbF998nUVTIABUQ2kcBIL1ZVYiWW8hZyGzg/jyRRxRpBifdO+1P8ZCZjvh6hLV\nYIp6V19hKb0VQ1GRLNMN7IgSHTXI/OguoitzbpArkgFgOT6FKcqo7QbFxIS3WDI3upt4cYa26ncX\nbnA1HOrBIAHDoDG6i043ODQ/upPE8kVMSaEUdwMS9WCShYxbvrAczngLSYuZ24gvXwQciokpHFGk\npYeZy+4kWl6gFkhQC7vBmnxqGlPyIVttirEJbEnBlhTmRncRK83S1kJeRnQxNoGNhNquUoxPYHQD\ncHPZXSSKMxiKSinmisxXuwG+QL3YZ2N/4TiBgE7qvqMIooh/bJz00Yeofnya4OYtXmm81D33IwdC\nhHQRcfNOREVBTSSY/Pb3aC8XUEJhb6df7MDtiD6NzkqJ2IGD3u6piW98m3ahgOT3e+Uywzt2gSDS\nzC0Q3bXXE1PPPPwIxWNvI2k6sb2XLqUkiCLp+49SevcYjmMT338IUZbR0iNrfjy55sepe+8numcv\nVqeDmkgiCEKPH2dv24yVnvT8WJBk2sv5Hj8ef+KbtAt5d1dXKHzJsYmyzMgDD1M89jaiIhPde8B7\n3lwvicN3Ed6+C6vZRE25z7whQ4YMGXLj6ZSKOBt2XLXyS5do3UvtfG8J59Wyt4K0lkmaS28js3gS\nvVWhpQZZzNy8OaHerBAyOoiOQ2tljlx62zUHqi7Fxt3ejiBgypdOziokNyHg4K+X6Kh+8snpGzKO\nIUOGDBky5GZi1Ov4LvMbcMiQIZ8cu2O4c9P1u/ivojLBkCFDPhmfp2/XLR3AEmybbHGZ5uICAMW3\n/xpR1Yjs2ElzYZ6FZ37uZcs2cwtkHnoE6C9/11kpMffUj7zSLo3ZGca+8sRNWxSuXzjP4gvPulpC\n587SLiyRvu/oTTnXKpKqIWl6jzaQ3WnTmL1IevOD3rHqmdMsvfKiO85zZ+mUlokfuoP5n//E0yuq\nXzjH2Fe+jtmos/js056NW0uLjDz4BXIvPkf9wnm37flzZB/9IpKmMffTH2N3OsTLZWzTYclxSBXO\nESu5WkqhaoHFzHYa/ihTF99BNtsABGvLXJw8SLiSI513xx+u5ikYmyhFx5mYOYba1YQK1QpcmDyI\n1qqRXTiBgEO4mkdr11ga2cbY/Pv4Gyte25mJfQiOw/jscVevqgqBxgpz43sZyZ1Gr7laC6mZY8xn\nd9FR/UxePOaVuQnVl7k4cZBYaYbk8gVvbLn0VqqhNFMX3/GE0EPd6wjUS2RyJ722xXadQnITE7PH\n0VpVzxYXJw+gmG3G5t539aqqS+itCgvZnWQXTrg6E0C4VmB2bA+WpDA5cwzRdjWhAvUSMxP7L2tj\nu9VEd0zmfvJDxr/2JJXTp1j+5eve/Tduv4PIrj3MPfUjOislOgGV9vEPGfvakyjBIKIso49kenxt\n8dmnaS7Me74y+qWvonWDxVo63dM2/+rLVM+c8nwl8/Cj+KJRZn/8Q+y2e/8bMxcY/+o3ehb8VrHa\nbWZ/9EPM7n1qXDjP+NeepDE742W618+dpVNcJnH4LgCUcIT1S2qN+TkWnvk52DZzizOI6THXj194\njvrFXj/Ws6MIgoCW6r2OQZiNBrM/+gFWs9G1hTu21R1u14sSCqH8f+zdaZcb133v+29NKABVmIHu\nRo9skhJnUqStKHFyYkeOB8WOneNzknWzzgu4D+6zrHXPum/pPjtr3ZPpHju24zhOFFsDJZEaOPfc\naMxTATWdB2hWEw20KEpsUaL+nwders2NXbsK1WwKP+z9Tx1d70QIIcRnZ+YLqLHYWC3Iw7/3jmLY\nKQb7v8tgtN3r4d9lbizB2tIVCtV72J0axeo9KsVV3Ke8339s0GWmcpvhfm3OTHMbJ56i+cjq78+i\nWlgm2W+ie4PRavbc0seuqApVjd2Z00/l3EIIIcTnJfD8x3cSQnwqoTv69/ajH6rHvMH0zkKIp0AF\nvhi/157rLQTjwyFaEIy19TdGH9Q33nuH0D94E7r37uK2x+sMPNR8/+bYBxODyi7Ofih2HBrvXh/7\nFkH7ow8/l2KggTtZwDsYjtcbOLwtTvPGe3TX16LwavSaIa0PbtA8dI87d+/Q21iPwiuA0Pdp3Hh3\n4h4nPZdkt0a2sRm1KYTk62ukWztReAUQc/vYnT3y+yHMQ7naOla3GoVXAJrvkmluk6uvozzyay/T\n3CbRrUXhFYAa+uQam2Qbm6Pwap/Vq5Ps1Ei3dg7mFobk6uukm9tjNRrMQRerU52YW762TqpTicIr\nAMMbkGrvkquvjfXNNjawOtUovALQAo9sY4tcfWMUXu1LtSsku7UovBrNLSBX3yDb2IrCK4CE05p6\nj3P19Yl77LZadO/fo/Hu+PvfeOc6vbUHDBv1qM13HNoffcA0TmU3Cq8AQs+jdfPG1L5er0f79kcH\nDUFA893rtD78IAqvAIa1Gr31tSkjjJ65h+EVgNft0r5zm/qU5/iomiXNd6/DI3+PdO7eobu+HoVX\nMHqOmzfem/r6o7RvfRiFV3Bwj4UQQnx5qLEYs9/6NrFsDjUWw1o9SWJ+kfATfBu08MofoO1vhaLG\nYhR//xtT++VraxRqa5jDLnanyuLGu0/926bmoDPZ5ky2fVpuLMndEy+zvniJeye+TrV44qmNLYQQ\nQnxRhP7j62AKIT6deGkGZX8Ffwj4ikY/PlnLXAjxdChfkPAKnvMVWEPDiGoUPRTVp5n2H/5HfRgw\npf2TfDDxVH0O5zMLRcxiicHefhilKKTOHO/2hcfuCe6bIkuPAcaCvUeFhNPXjz7JfZva9ZO/Pjzi\nfOETLWx9Gu/zZ53DUaPKMyiEEF82yYVFkv/5v9J4521qb/6O7t07xPJ5cn/9lx/7usTsHMt/+dcM\nG3VimeyR9U6tbm3s2HAdYsNetHXx09BPZKLamQ/1HlM360mFqkovmXuqYwohhBBfJFrs+GqXC/FV\nl/vay1R+/c88/M64r8eo5xef7aSEeI6FGID72H6fh+d6BZavaexlM9GWXMmFRbIXLgGQuXAJHqk3\nY62cwEhPT+4zZ8+NfahglkokyvPHNu/MxUtjNQdSL7yIlkgc2/keUhSF8ndfI/+1l0mfPc/893+A\ntbg81udw/a/MuQtYi0uYxVLUpsZipM+cm7zHJ1ZJLixiLZ84OKemkT1/ceIe93SDnpWn8cjWNaMt\nZxZppWfxtINt1lwjTscuUsuN/+Kq5xbp2gUGj2yz42sGzcwc9dziWLjZyszSswv0Egcf1gSKSiM7\nTyM7T6AcXEc3maNn52mlD7aJC1Go5xZpZebG6jwMYhZduxDVm4rmll+kbZdwjYMilJ5u0k7NTPRt\nZOfp2oWxQu6+qo+uI7sw9oFT2y7Ss/J09ut/AYSKSj23QCNbJlAPtiZy4qkj7vESrfTM2D02Umns\nlVWyl8bf/+zFSySXVzAyB/dNi8dJvTA9+IzPzJCYOzifouukz12Y2ldPJkmdemT7IEUhe+ES6TNn\nUc2DbYdiuRzJhaWpY9irJ9Htg/umJZOkTp6euI7MuQuo+vQ8//BzbK+exFpcIrm8cjC1/ef4SaRO\nv4CWOHg2jfToHgshhPjy8bpdqm/8Nlp5PqzVqLzxxmNfp+o68WLpyPAKYHhou8BA1fA+Zvu9T8Mz\n4mzNncPRdIaqxl7xBJ1U6fEvFEIIIURE1STAEuK4eK0WejqDp6q4qoqnm8Tc/rOelhDPrVBWYH1+\nWpbN/Pd/SP36WxAG9He2sZaWSc4vsPjnf0HjnevEiyXS584fOUYsl2fhRz+hcf1NdDtF9uLlY6t/\nBWCvrGL8+V/QW1/DyGbHAp/jppkmucsvHfnnqRdeRLNs2h/eJLG0Qno/YJh/7Yc03r2O1+mQvXKV\nWCpFLJtj8Yc/pvHuO2P3ePZbr9J6/ybOXoXspcuY+VHY8vAe1/7jN9z1FCxFoVI6iWNaWN06zew8\n/eQoZLy/co189QGBqlLPLxNoOo3cAkMjTrq1SztVopsqArC29BK52hpq4FErLOPrJh0jzgP9Crn6\nBr1kllZmVK9iY+EimcYG5qBHLb+Ea44+NLq/fJV8bZ2BadHIjcLLndkXMSpvYrku/aUrDBKjYq33\nVq5R2HuArxujoExVqRZWGBgJ7E6VVnqWnp1/ZNw1lCDYn1uMVmYOVzfJNLfpWnnamdnRdSxeJldf\nR3cH1PJLeLEEQ9Pi/tJV8vU1nHiKRnYBgM3yObL1TeKDNrXcEsO4PZrb8jUKtQcMjTiN3CLs3+Ne\nMos56NKzclFQdn/lGsn2LaxknIU//wvUWIzshUsY6TSd27ewTpzEPjEKXBZ/+GNq198mlVDRVs+i\nJ4/+Vvjcd75P88Z7DBs1cleuEssc/Q3v0h/+MebMLM72FplzF6MaWUs//i/U334DLZ4ge+nKkeGT\nZpos/ugvqL89+vnPXbmGFo+TfuEMupWaeI6nSS4sRs/x3JlVgplRqDv3rW/TuX8Xr9PBWl4hln2y\nb5XrSYulH/+E9p3bKJqKvXrqqdW/EkII8flyO+2x7WYBBs0mT+NjrGphBXPQIT7o4Ks6e4WVx7/o\nU+ikimznRv8ms/PLj+kthBBCiMPcTpvEzOPrIQshnpzX7Yw2wxltzQOKgjGUAEuI4xKiAcFj+30e\nnvsASwkCtv7X3+P3R3+pde/fo/y9P8OwbbZ/9r/wOm069+4QBj7ZS1emjuE7Djs//ynDWhUUhWDg\nUHxlep2Cp8UsFDELxWM9x6fh7O6y+8uf4TsO3Qf3URRInTxN9bev07o5qgE0rFUpf+81gsGA7X/6\n6cE9DgOyFy/TeO8dam/+DoKAQWWX8vdeQzVi0T3Ot1p0Q402o5pOs7u3UMOAZL/J5sIFBjGLue0P\nsHqjuksx12GrfI5Ev0l5+wO0wMPu1dhSFLpWnpnK7aheVXzYY33hIobbZ2HrJro3INWtoijQzJTJ\n1+6Tr43qY8UHbdYXL6GEsLB1k9iwR9hW0AKPavEEmeYW2W5nVDdq6yYbCxfxdJP5zZsknFE9Nd0b\nsDN3Bquzx9zuR6iBj9Wrszl/nn4iw9zOh9idanQdm/PnMQcd5rffR/Nd7G4VVIV2aoZS5S7Z5qh+\nVHzQYX3xEprvsbB1A8N1SHX2UMLR6q5cfYNi9R5KGJJwRtfhqzrzWzeJDzqEKOi+R2XmFCgKXbtA\n95FVW0oQMLf9AYbTJxF6VP71V8x+81X621vs/vMvCIZDeutrKJpGcnGJyr/9ms7tW7iWSXB/k/J3\nvn/kt8nrb785qqUWhgyro2flqMCr9eH7VF//N0Lfx9nZpvzdUd+dX/wMZ3f0nnq9HjN/9MdTXx8G\nAZV/+VVUr8ptNpn79ncZVKsHz/HaA1RFwT55auoYbqsZPcdbu+vEz79E9sIlFE0jdfKzFZjXEgmy\nF55s5ZYQQogvnnixhG5ZeN1u1JY5efKpfGfNM0werFzDGPQo7d1hpnKH0t5davklascUZgkhhBDi\nyX3cimohxGejGDGGtT2MMCAE9H4L59BOBUKIpydQNQhkC8HPRWIwiMKrhzp3blN/+028TnvUEATU\n3vzdRL+HmjffG4VXAGFI88Z7DKrV45z2F1b1d6/jOw4Aoe9Tff3fcHZ3ovAKYFDdo3njPWpvvTF+\nj9/4LYNaLQqvANx2i/pbb9K88e7YPS44Pcx+i5nKbdRw1Ff3hxQrd0m1d6PwCiDV2cPqVpnZvY0W\njIqmqoHPTOU2yX4jCq8AEv0mmeY2xb376N4AACUMKFXuEHM6UXgFYA575Gvr5OtrxIa9UV9C8rU1\nYoM2pcrdqK/hDShU75NpbkfhFUCmtUOi12Rm9w5qMPoYSws8SpU72J29KLwCsHo17E6F0t5dtP1N\nfdUwoLR7B7PfisIrGAVY2cYmhep9DNfZv46QYvUexqAbhVcwqpWRr66Rq28Q3y/SrhCSa2wQm1K0\nHZi4x917d+mtr1F9/TcEw+HoLXVdqv/+G/pbm3Ru34r6OjvbtD/6YOq4w2aTxvW3ojpWw0adxrvv\nTO0bDIdU/+Pfo+2YvG6X2hu/pfXh+1F4BdD+6AP621tTx+g+uB+FVwC9jXU6d+9Q/e2/HzzHnsfe\n678hDKZ/q+DR5zgMQ2q/+4/otUIIIQSMtpItf/fPsE+eIj5XpvgHf0j+/NGr+z8Nq1fH7tZQCFHD\ngGL1PqYz/fe4EEIIIY6Xah36EqamYS1IPR4hjkvz3euEQRBVDlfCgEJ9/ZnOSYjnmRYMn/UUIs/9\nCixf0ybadMvCOfSBd+j7eL3e1FpTXmfywwGv08YsFCban3dRILXP7/dxW83Jft3u2LeQYXSPB7Xq\nxBY7XrcD0a+gA7FhPwpyHjI8JwpsxtrdQRRIPaR7A/ThlL7eAMMbb1cDH3PQjQKpR8d4GAQ9pBBi\nOj3UcPx71YbrTK1Jobu9ibkZ3uR8H46hu4euwx8Sm7Iseto1K2GAOehMzNnwnIlrezjG0LSnzuMw\nr9OeeE/dbme0bdIh7pSfGQC/151oO/xMRX0HDqHnHerbwTv8HwpM/xk9amy30576HIeehzJlC7/D\nY4e+j9/vocXjE32FEEJ8dcWyWWa/+erxjb//ZZrDbYP45O9xIYQQQhwvszhDv3s3OtZTaULfR1Gf\n+++JC/FMuM0GhKNq9iGjz+Zi8mUuIY6N/gXZPhC+AiuwBrEY6TNno+NYLkfm3AWs1ZNj/WLZHLF8\nfuoY1urq2LGWSJCYX3j6k/0SsA/dt+TiEtbyiYkP8+0TqxN9Y7kc9slTGIdqHtmrpybeD09V6aSK\ndJPjdYVaqRIdu0j4SA2yQNHo2AXah4qNt+0SXbuArx7ktCEKbbs40bcfT9NJlXAPBVDtVGmir2vE\naadLUa2o8b5FRr9OR3xVp2sX6djjYWfbLtG1CgTKwY9gqKh07CLt1PjWkV0rP7qOQwVh26nSRIH1\nQcyiY5cmCr63UyXa9vi4nhajl5xef+rwPVZ0neTSCtaJ8Z8F+8Qq1uLy+FYJioJ9Yvz9fMgszaAf\nCqDs1elb9xmpNGaxdKjvSayVVXhkbmosRnJxaeoY1vIKyiMhtqJp2CsnJs6ZXFw6sv7UtOfYeMJ6\nV0IIIcRn1bXGf/cEikpvvzaoEEIIIT5fztbG2LHXbOD2J79sIoR4OuKzs9H/V/b/t5WSmnNCHJcv\nUmj03K/AAij83h+gJS28bofcS9fQ4nEyZ8+jKCqd+3cx7BS5K1dRHvlQ/FHW4jKzf/KntD/6AC0e\nJ3vpyld2b+P8tZdRYyb9rU3MfIHs5ZdQYzHmX/shjXfexnccUi+eiQKFw/dYVVXK332NxvW3cDtt\n7BOrpF8cBYwP73HHsrgbVzFUja3yWQq1NWKDLr1klnpuERSF9YVL5BobhIpKPbuAZ8SplE7h6zHi\n/RZO3KaWXyZUNdYXL5Ovr6EEAY1sGSeRxomnCBQNq1tjGEtSyy8Rquqob20N3RvSSs88EhCFpFsV\nPCNGLb8EisrG/AWStRuYvoc3c5pGpgyKwub8eTLNbQJVo55bJNAMtufO4NYSmE6HfiJNPXdwvtz+\nkudGdp6habFXXMXXDJK9BgPTopZfJtB01vbnpgY+rfQsPStHjxwhCnZnD9eIU8svg6qyvnCRfG0N\nw3Vop0q0MnMAbJbPkWnt4GsG1fwSoTq5QhFgELdZX7hEon0XPxFn/ns/wEilKL7yDfSkhbO7g1ks\nkbv8Eqph7L//17GTOpn5VeJHFK5VdZ357/+A+vW38Xtd7NMvTAREj5r79nepX38Lt9nAWl4hffY8\niqIw9+3v0vrgJqphkL145cjVUEY6w/z3f0DjvXcgDMmcu0Aslyd/7euo5vhzfJTMuQugqHQf3KOw\nOIu6cubIvyuEEEKI49K1i+zMnCbb3CJQdaqFZfwpK7+FEEIIcfzC4aGtlcKQYDC5y4oQ4unQ02mU\nWAx//+fMVw1UVT6bEeK4PI16zk/L8x9ghSGb//C3DCq7AHTv3WPhBz8ils2SPnN2bHXWx7FPrGIf\nWn3yVeQ7Ds7ONs7ONoE7xO6eRjNNhrUa/e1tguEAI53BWloh9H36O1s421v4qS5uq4luWbitJs7O\nNm67hZ5IYJ88jaKqODtbODvbxAcDTMUgYLTFXaLfxBx0CRWVVtrF12Mk+i0S/RYhCv1EBieRRvOH\nJPpNEv0WShige0PcWAJz0Bm1BT4D06KXzKEGHol+k2S/iea7GG4JX48RG/ZI9Juj1xom7VQRJYRk\nv0mi38RzY8SsAq6RwHAdLHdILPBx+01aqRkCVSPhtEj0mwSqRi+ZYxC30b0BiX6LuDPauq6VdvFU\nk7jTHs2NECeeop/MovkuyYdzCzxansNQszEHXRL9Fmrg4cYSdOwCShjsX3MT3RtguH08wyTm9kn2\nm+iug6/HaKdKhIq6f9+a+JqBOcjjfkzBy0S/RdJ1iQ8UBtUK8ZkZ/H5/9P7v7hAGAX6/h2pkGFT3\n6O9soZgaup48ckUUwLDRwNnZwuv10O0U9srq2CqpR+nJJKXf/8ZYWxiG+8/gDqqhM5xf/NjtPOMz\ns8zNzI61KZpG7vJL5D4muHpU5uw5MmfPUSqlqFSmb3kohBBCHLdmdp5mdv5ZT0MIIYQQU7itFomS\nrAgR4jjES3PECyXqu9sEYYgfT+Eak2VghBBPh48JfDG+mPFFWg12LBKDQRReAQTDAa0PbjzDGX25\nVV//Db31tVE9q0qF3V/+HLfTYedXv8DrtAmGQ5o33qX90YfU336Dzu1bhL7PsFFn++c/xXMcdn7+\nM4aNOqHv0771EfW336T14fs0b7xH4LronsdSu4U+dChv3STutFHCALtbpVS5g9WtUazeQ/NddH/I\nzO4t4k6b2Z2PSPYaKGFAst9kbvsDYoMuszsfoXsDtMCjUHuA3dmjuHePVGcPJQyIDzqUt95H9YaU\nt24Sc/uooU+2uUWuvkGusU6muY0a+sTc/n7fAfNbN4n7HmoYkmpXRmO2K+Rra2iBh+ENmN35EGPY\no7z9AYl+EyUMsHp1Znc/It5vMlO5je4P0XyX0t5dkt06M5XbWN3aaG5Om/LW++iuw9zOBxiegxZ4\n5OrrZFrbFKoPSLd3UcMAc9hjfusmqudS3rxJbNhDDQPSrR3ytQdkmlvkGhuogY/hOpS330ebUocL\nwOpUKVbvoYcBeuCz92//ilPZpfKvv6K/tUno+zjbW+z+6pcM6zUqv/4Vfq+HPxxSf/tNOnfvTB3X\ndxx2fvEz3FaL0PNofXCT5o13n+gZ7Ny5ReOdtwmGA7xul91f/zPDRuOJn2UhhBBCCCGEEOLTUMxD\nq6BVlcTS8rOZjBBfAXN/8iqJ+Xkc06RrxGjbRSqlo3f0EUJ8Ng9Ofu1ZTyHy3AdY04Ths57Bl1d/\nZ3vseNio09tYg2C8sJuzO1oh86hgMKD34B7BcHCo7w7OoXEVQpK9OjG3P9ae6LeI95sT84rvr7wa\n67u/Ekph/A1/uArpUYbnYHerqGEwpe/4uGroY3Xr6IfCn4QzOQeFkESvEa28Opjv5Lij802OYQ57\nJLt1lPDx16H5LnanihZ4j70OJQxJ9KevJoo7k3NzdndxdncOte3QP/Q+P2yfZlDdI/T9Q313p/Y9\nykT/MBwLqYUQQgghhBBCiON0+v/8v1D2S0sEwMIPf4RxRF1lIcRnZy2tcO5v/jvb+Tx3MzmuX/4z\nAv2rWd5FiM/D3XPfwlXHN+978W/++zOZy3MfYPVNE7NQjI5VwyDzCbcNFJPih7Zii2VzJOcXQR1/\nlMzS7ERf1TRJLq2gxsa/qRQvzUz0DVHoJXMMDy0HdhIpnHh6Yl5OPE0/Md7ej6fpJyaLmzuJFM6h\nvq5u0rEKBMr4dfQTafqHzhcoGl0rh3eo7kR/yhxCFPrJLE489dj5HpxvvO8glqRn5QgP1V2adj5f\nM+jYefxDf8E4ifTENYeKMjGvR+d32LT3KT4zO7Xe1eF+D5mF4sR2gUfVyzrKRH9FwZRtGoQQQggh\nhBBCfE5O/OSv+Ob/+AfePLHKv7z0Euf/5v951lMS4rmXnF/kwVyZO9k8Xky2DxTiuP3/3/+/+V02\ny51kkj/8f/8HKz/6yTOZx3MfYKEozL/2Q3JXv0bqhTMs/vgnxHL5Zz2rL63iK98guTAKrMxiiZk/\n/hOMVIqZ//RNdNtG0XUy5y+QfvEMuZeuYZ88haJpGJkscyLCvhIAACAASURBVH/yp+iJBLPfehUj\nk0XRNOxTp8lduUr6zDnS5y6g6DqerrOeSuPF4myVz+GYNqGi0LXy7JZO0bUL7BVW8FUdT4uxWzqF\nk0izM/sCvUSWUFHox9Nsz73I0LTYmX0BT4vhqzrV/BJtu0SluErHLhAqCgPTYqt8jkCPsVU+i2vE\nCRSVZmaOem6Bem6RZnqOQFEZGgm2ymcJdJPN8lkcTSdEoW0X2Suu0k6VqOWWRnPTTXZmX8CNJdma\nO0M/niZUFHrJLDuzp3ESGXZLJ/E1A18z2CueoGfl2Z05TTeZjwKmrfJZPCPO9uwZXN0kUDXq2QWa\nmTmqhZWovtUwlmQzuo5zDI3EqG5YaoZqfplGpkwjO0+gaLh6nO25M3jG9OLv0T1WVHxVo/jKHxCf\nmaH0jf9EYq4Mqkp8ZpbSH30TM1+g9I3/hJZIosViZC+/hHVEvTgtHmf2m69ipNIomkb6zFky5y8+\n0TNonzxN9tJlVMNASyaxT71A473ro20FXfeJn2khhBBCCCGEEOJJGZbFXqmEF48/66kIIYQQT5+i\n8FE+z+tzcyRn557ZNPTHd/nyq73xW5o334MwZNioUf7O99FM+QfGp6HF4yTK84SAmc+j2zYAZr5A\nYm4efzggMTePoqooqkqiPE8wGKCn0hiZ0WqoWDZHojyP126RKM+j7i+7T5TLeJ02fdOk76vEANeI\n00vm8DWDXiKLr4369hMZzEEXFCVaWeRrMXrJTBT8PFwh5ZgpesksaujTT2RBUQhUnV4iixIEDGNJ\nhvvf3BiaFr1kFt0b0ktmQVEJFUZt/hBXNxmaSQBcI0HXiOGqPl4yS6BqoCj0kxlibo9A0XDio/vj\n6Sa9/T79RAZPH20t4MTTo/OEIf14Zv86DHrJDBAyMG08ffSsDkyLfjKL6nujP1cUQkUbXZvv4xrx\ng+uIJeklsxjugF4yS6iOVj31Ell0d4Cv6Tim/bHvda2wwoN6iXw6GYVMWiJBvDwPmka8NINuWaP3\nv1gkUS5jJQ2UuTLKodVij4rl88TLZfxeb/SsHFqR9TiKolD4+isUvv4K7Y8+ZPdffhn9WW9rk/nv\nvvZE4wkhhBBCCCGEEEIIIYT44nnuA6yYO6R5493oeFCp0Lx5g/xL157hrL68am/8lsY7bwPQ31hn\nWK8z+81X2fz7/4nvOAD0Htyn/N3XcNst9n7z6+i1zs4WCz/6CZv/+He4zcao78Y6BCGalWTnn34K\nQKrb5eTQYyPwKW/dxOrVAbB6ddTApZ0qsbjxTlQTyurUuHfia+Rra2SbW1Ffw3WolE6yuH49qgll\ndWqsLV0h2W9Q3LsX9Y07bdYXL7O49g6GN7oOq1sjREEJQ8rb70fXYfXq3D3xdRY230N1egDEdm+h\nBgH9RIr5jfeiultWt8bd1ZeZ3b1Fql2JXq/7Q+q5BRbXr0d1t+xujfvLV0m3dsnX16K+sWGP7bkz\nLK1fR/Pd/b5V1hcuYbh9ZndvRXNL9JvcX77K4sY7xIa9/TFqAPh6jPmtGwfX0a1zd/XlKNz6JKqv\n/4bWB+9H77/bblH4+its/sPfEgyHBJZJ770PWPizH03dGjDwPDb//n/idbuj9399DVQV+4gVW4/T\n+vD9sePRnNoYqelbIwohhBBCCCGEEEIIIYT4cnjuAyzD8yfavHb7Gczk+dC5e3vsuLe+RvfBvSi8\nOuh3B7fdGmsb1ut07tyOwqtHx3y4kuchPQiw23tRePVQul2B/VDpITX0sTvVKCB6KNWp0EtkovAK\nQCEk1dkjeWjchNPCblei8Coao10ZOxeA4TqkWhXiTpvhWN9ddG8QhVcAWuBhdfawO3sT4w6NeBRe\nAShhgN3Zm7gOq1vD6lSj8OrRMQy3P9ZmDrvYnUoUXj2Ubu9O1OzS/SHJXoOuXeCT6ty9M3EcnysT\nDB+5E2FI9/7dqQHWoLIbhVcHY9z+1AGWerhIrqpGK/qEEEIIIYQQQgghhBBCfHk99zWweqaJao5/\ncG+tfroPywXo1vi2c1o8jpHOTOlnTYRSiqZh5gugqof62hPjAgxjiWjLwIdcPY5rTG7/6BrmREDj\n6SZebEpf3cTVx9sDVWNgWhN9Pd2cqBMVojCIJwmU8ZVL3pQ5jMaI42njQYurf0zfQ+fzNSPaGvBx\n5xvVwrIID23hN7rmaeebXgPrKHrSmjg2prx3WnLyXh7VfnjMJ5G7cm0ssMpeuIQm+48LIYQQQggh\nhBBCCCHEl95zH2CFqsr893+AffIUiYVFZr/1bazF5Wc9rS+twtdfiQJBRdMovPIHxGdmSZ85F/WJ\n5Qtkzl8gd+VaVCMLVSV/9WuY+Tz5q1+LQizdTpF76SqZ8xeJ5fOjvopCNZ5kkEizWzpJoIz6+prB\nXmmVdmpmVDdqX9su0rUKVGZO4qujRYWBqrFbOkUvkaWVOlgJ1I+naWbm2CuuRKFSqKhUiicZxm1q\n+SVCRuHPMJakll+klltiaIwCpBCFWn6JoZlir7Qa9fV0k73CCZqZOfrxdHS+VnqWvpVjd+ZUFHj5\nqk6ldJKOXaRjHax+6iZztFMlKsXVKLgLFJVK6SSDRJpGphz1dUybenaeamE5CuNCRWGvsMIwblMt\nrEQhlmvEqRWWqecWopAuRKGRnWcQ//g6WIcVfu/3o1VPqmFQ/P1vkJhfwD55KupjFoqosRi9jXXC\nQ6vXYpkM2UuXYX9uRiY7Ov6U4jMzLP/X/4PZb77K4o/+M4Wv/96nHksIIYQQQgghhBBCCCHEF8dz\nv4UggNtqMdir4A8GDHJ5rBOrKIdWqIhPJj4zw+yr36H1/g2spRVSJ08DUPrGH5G9eAl/MMAsllAU\nBc2MM/fqd2i89w7x4gzps6OQK3vxMqpu4Oztkr10BSM1CnzmXv0u9bffoPYfv2HbU7CAdmqGEAW7\nW6WRKePER7WNtubOkq8+IFRVavllUBR6yRxbc2dIt3dp26Voa7zdmdO4honme6NgR9UYmjab8+fJ\nNjZGIVdmDoBqfgVP1TEHPWqFJfz9FUob8xfI19YYmEkauQUAGpkyXdvGcl168+cZ7odDm/PnKFQf\n4GkG9fwSAF27yNbcaPvCZnqO/n4Atz33IvnqAyCkVlghVFWcRJqN8jmyzS06VoFOehTAVUon8bQY\nuj+gllsi0AwCzWBj/jy5+jqDeIpGdh5g9OdomIM2tfwS7n4At1E+T6G2hmuY1HOLT/z+JxcWWfnL\nv2ZQrxHL5tD2w8zZb75K7so1UobPh3/7j1T+5ZdR/7nvfH/s563w9VdInzmP3+9jlkqf+WdRi8fH\nAjQhhBBCCCGEEEIIIYQQX37PfYCl+T47v/wnCEa1hhrvXsdIZ0ifOfuMZ/bl1L71Ebu/+gUA3bt3\nGNarFL7+CgBGOsOjG/71NjfY/uk/Evo+ndu3cHa3mf3Wt9n5xc/o3r83GuPeXcrf+T5aPM7G3/1/\nBMMh+WaTwAvZDUNKe3fJ1dcBSLX32J47Qy+ZZeXBm+jeAAC7U+XB8lXSrR1mKqMaXel2hT33BPXs\nIktrb2Hu14RKdfa4v3yVuNOhvHUThZB0u0J80GF39gUWNt8l2WtEfdeWLqOEIYvr10f1qtpg9Rps\nLF5iducjEp1RPbXS2ltsls8zNJMsP3grqleV6lZ5sHSVXH2NYvV+NLedmdO0UzOsPHgTw3X2zze6\nDqtbZ27ng6hvbdBlr3iCpfXrxJ12dC8eLL+E4Q1Y2Hh3VKervUvCabFVPkd56yap/bpb6c4e6wsX\n8TWD5bW3UINRXTirW2dt6Uq0GuqTUmMxErNzE+2xbJberXfHalz1NtZxtrdIlOfH+hqpFEYq9UTn\nFUIIIYQQQgghhBBCCPHV8dwHWPHhMAqvHnJ2tyXA+pQa77w9dty88R65l76Gqk8+Ss333iH0/ei4\nc/cOqRfOROEVQOj7NG68i560CIbDqD3puSS7NbKNzahNISRfX0P3BlF4BRBz+9idPfL7QddDudo6\nQyMRhVcAmu+SaW6T7DVQONjeLtPcpm0XovAKQA19co1NCMNReLXP6tVJdmqkWzu4D+cWhuTq6/QT\n6Si8AjAHXaxOdWJu+do6KEoUXgEY3oBUe5dMc3usb7axQT+eisIrAC3wyDa2iLn9UXi1L9Wu0EzP\nRuHVaG4BufoGnm5G4RVAwmmR6Dej1WBPg//Ie/hQMKVNCCGEEEIIIYQQQgghhPg4z30NrIFhRPWW\nHjKLpWc0G/G5O1SD6eMoT9BXTJc7dw5F06Jj3U6RWHjyrQqFEEIIIYQQQgghhBBCfLU99wGWp+vM\n/OEfoyWTKJpG+ux50mfOPetpfWllL14eO86cuzB19RVA5sKlsfDQOrFKcmERa/lE1KZoGtnzF8mc\nPYdqHGxA2NMNelaeRqYctYUo1HKLtNKzeFosaneNOB27SO1QTad6bpGuXWAQS0ZtvmbQzMxRzy0S\ncrB1XiszS88u0EscrEYKFJVGdp5Gdp5AObiObjJHz87T2q9N9XBu9dwircwcvnZwHYOYRdcuTNSb\nqucXadslXCMetXm6STs1M9G3kZ2naxei+l8AvqqPriO7QPjIFoBtu0jPytPZr/8FECoq9dwCjWyZ\nQD0Il5x4in4iw9OUnJlh4Qc/InP+ArmXrrHwgx8d+XwIIYQQQgghhBBCCCGEEEf5SnyynDr9AqnT\nLxCGIcoT1vsR41IvvIhm2bQ/vEliaYX0qdNH9k3OL7D4wx/TePcd4sUS6XPnAZj91qu03r+Js1ch\ne+kyZn4Utiz++L/QvXeHyhuvc28QYCkKldJJHNPC6tZpZufpJ0eBy/2Va+SrDwhUlXp+mUDTaeQW\nGJgWiX4LJ56iZ+UAWFt6iVxtDTXwqBWW8XWTjhHngX6FXH2DXjJLKzOq6bSxcJFMYwNz0KOWX8I1\nR+HX/eWr5GvrDEyLRm5Uz2ln9kWMyptYrkt/6QqDRBqAeyvXKOw9wNeNUVCmqlQLKwyMBHanSis9\nS8/OPzLuGkoQ7M8tRiszh6ubZJrbdK087czs6DoWL5NqV9B8j3aqiGfEGZoW95evYXeruEactj1a\nXbhZPke2vkl80KaWW2IYt0dzW75GofaAoRGnkVt84vpXn4RZKGIWik99XCGEEEIIIYQQQgghhBBf\nHV+JAOshCa8+O2d3l91f/gzfceg+uI+iQOrk9BDLbTXZ/qef4nXadO7dIQwDshcv03jvHWpv/g6C\ngEFll/L3XsNIpTFSKbKXrtCxLMJhBxjVdJrdvYUaBiT7TTYXLjCIWcxtf4DVqwMQcx22yudAUegn\ns+M1ncKQmcpt0q0dAOLDHusLFzHcPgtbN9G9AaluFUWBZqZMvnaffG0dhZD4oM364iWUEBa2bhIb\n9gjbClrgUS2eINPcItvtoBCS27rJxsJFPN1kfvMmCacFgO4N2Jk7g9XZY273I9TAx+rV2Zw/Tz+R\nYW7nQ+xONbqOzfnzmIMO89vvo/kudrcKqkI7NUOoalHQ9qihaVEzrbG2XH2DYvUeShiScEbX4as6\n81s3iQ86hCjovkdl5tRneyCEEEIIIYQQQgghhBBCiGPw3G8hKJ6u6u9ex3ccAELfp/r6vxEGwdS+\ntbfewOu0RwdBQO2N3zKo1aLwCsBtt6i/9eb0k4UBM5XbqOGor+4PKVbukmrvRuEVQKqzh9WtTh0i\n2W9E4RVAot8k09ymuHcf3RsAoIQBpcodYk4nCq8AzGGPfG2dfH2N2LA36ktIvrZGbNCmVLkb9TW8\nAYXqfTLN7Si8Asi0dkj0mszs3kENfAC0wKNUuYPd2YvCKwCrV8PuVCjt3UXzXQDUMKC0e+eJanlp\n3jAKrwAM1yFfXSNX3yA+6ETXkWtsENs/FkIIIYQQQgghhBBCCCG+SCTAEk8kCqT2+f0+oedN79vt\njh2Hvs+gVo3Cq4N+00MUNfCjIOchw3MwXGeir+EOpo6hT2k3vAGGNz6GGviYg24USEWv9wYTYyiE\nmE4PNfQPzcGJQrHxOfQm2g1vMLWv4ToT59P9YRR+fRK6N4zCq4PzORhTzzf9vgkhhBBCCCGEEEII\nIYQQz5IEWOKJ2Ksnx46Ti0uosdgn6hvL5bBPnsLIZA/1m76NXaAZdJO5sbZWqkTHLhI+sh1koGh0\n7MLUMbpWHl892CkzRKFtF2mnSmP9+vE0nVQJVzfH2tup0kRf14jTTpdw4qkpfYuEHMzNV3W6dnFi\nfm27RNcqECgHP4KhotKxi7RT4/WjulaeQPvku30OTIthLDk5N3t8XE+L0UuOvxdCCCGEEEIIIYQQ\nQgghxBfBV6oGlvjs8tdeRo2Z9Lc2MfMFspdfOrJv5ux5FEWlc/8uhp0id+UqqqpS/u5rNK6/hdtp\nY59YJf3i2SPH2CqfpVBbIzbo0ktmqecWQVFYX7hErrFBqKjUswt4Rnzq6309xvriZfL1NZQgoJEt\n4yTSOPEUgaJhdWsMY0lq+SVCVR31ra2he0Na6Rk6UXgVkm5V8IwYtfwSKCob8xdI1m5g+h7ezGka\nmTIoCpvz58k0twlUjXpukUAz2J47g1tLYDod+ok09dzB+XL1dQAa2XmGpsVecRVfM0j2Gniaju65\nrN59nY5VYK94glDVPv5NUhTWFy6Sr61huA7tVCmqnbVZPkemtYOvGVTzS48fSwghhBBCCCGEEEII\nIYR4BiTAEk9EUVVyl18i9zHB1UOB69Lf2cLZ3sJPdXFbTXTLwm01cXa2cdst9EQC++RpVH36o2i4\nAxL9JuagS6iotNIuvh4j0W+R6LcIUegnMjiJ9JHzMAcdEv0WSuAzMC16yRxq4JHoN0n2m2i+i+GW\n8PUYbizBztyLE2O007O007OH5uZguUNigY/bb9JKzRCoGgmnRaLfJFA1eskcg7iN7g1I9FvEndEW\njK20i6eaOIk0W4nzh26yQj2/RD2/xMq932EOR1sx5hobAFRmpq9Ye1TM7ZPsN9FdB1+P0U6VCBV1\n/7418TUDc5DHPbRSSwghhBBCCCGEEEIIIYT4IpAtBMWxqb/9Bp3btwh9n2GjzvbPf4rnOOz8/GcM\nG3VC36d96yPqb785fYAwpLx1k7jTRgkD7G6VUuUOVrdGsXoPzXfR/SEzu7eiYOiw2KDL7M5H6N4A\nLfAo1B5gd/Yo7t0j1dlDCQPigw7lrffhUN2ojxUGzG/dJO57qGFIql0ZjdmukK+toQUehjdgdudD\njGGP8vYHJPpNlDDA6tWZ3f3osafQXScKrx6yevXHvk4JfMqbN4kNe6hhQLq1Q772gExzi1xjAzXw\nMVyH8vb7aFPqYgkhhBBCCCGEEEIIIYQQz5oEWOLYODs7Y8fBYEDvwT2C4Xho4uyO93tI811ibn+s\nLdFvEe83J/pOawNIOC0UxoOph6uQHmV4DobnTL+QKQzXQT8U/iScJol+a6xNISTRa0wEbPFD/abx\n9BieNl5fbPAJVkyZwx5a4I3PbX/F2tjcwpBEf3rwJ4QQQgghhBBCCCGEEEI8SxJgiWMTnxnfck81\nTZJLK6gxc7xfaWbq633NYGgkxtqcRAonPrld4LQ2gP60vonUxJaDrm7i6tPraE3jGnE8ffw6+vE0\n/UPjhij0k1mceOoTzXeMorIz92IUYjmmTaV08rEvG8SS+Or4loxOIj1xzaGiTMxLCCGEEEIIIYQQ\nQgghhPgikABLHJvcS9ewT55C0TSMTJa5P/lT9ESC2W+9ipHJomga9qnT5K5cnT6AorBVPodj2oSK\nQtfKs1s6RdcusFdYwVd1PC3GbunUkTWwhqbFzuwLeFoMX9Wp5pdo2yUqxVU6doFQURiYFlvlc6Ao\nn/ziFJXN8lkcTSdEoW0X2Suu0k6VqOWWRnPTTXZmX8CNJdmaO0M/niZUFHrJLDuzpz/RaXqJDLXc\nAm27SC2/jGc8PmQLVY2t8jmGRmJUNyw1QzW/TCNTppGdJ1A0XD3O9twZPMN87HhCCCGEEEIIIYQQ\nQgghxOdNf3yXL6+XX37lWU/hK001DBLleYLBAD2VxshkAIhlcyTK83jtFonyPKphHDmGa8TpJXP4\nmkEvkcXXRn37iQzmoAuKcmR49ZBjpugls6ihTz+RBUUhUHV6iSxKEDCMJRnGEh87xvS5JegaMVzV\nx0tmCVQNFIW90ip7pdWxvp5u0tvv009k8PTYEaOOK2+/j92pApDq7LHjn6aZnX/s63pWjnurL0+2\nJ7Lo7gBf03FM+xPNQYjPQv4eFuLLRX5mhfhqkp99IYT4dF5++RUSiU/23/dCCCHEl5HyJIs+jsFz\nHWD91V/9t2c9ha+05vs32PvNr6NjZ2eLhR/9hM1//DvcZgOA3sY6BCHpM2enjlHeuonVqwNg9eqo\ngUs7VWJx4x2UcFTbyurUuHfia1NXJ2nekMX161FNKKtTY23pCsl+g+LevWjcuNNmbfmlJ7q+hc33\nUJ0eALHdW6hBQD2/OLXv3M6HpNqV6Hy6P2R35uNXYWneMAqvHso0tz9RgDWN1a0xv3XjkeM6d1df\nJlS1TzWeEJ+E/D0sxJeL/MwK8dUkP/tCCPHp/NVf/TdKpRSVitSXFkII8TxSnnmAJVsIimPTuXtn\n7HhYr9O5czsKrw763Z76etV3o/DqoXS7Qqq9F4VXAGroTwQ9D1ndWhReASiEpDp7UZj0UMJpobvO\n4y9qn+H2iTvj/0BNtXendw4D7M7eob6V6X0ffZmiEijjP6KB+ukz58Pn1P0hyV7jiN5CCCGEEEII\nIYQQQgghxLMjAZY4NrpljR0rmoaZL4CqHuo3fSu7QNWiLQMfcvU47pSVVu4RtZym1XhydRNXHx9j\n2rk+jq8aBMr4yqWj60kpeNr4lgKu/vjaU4GmU8svHxwrGtXC8se84uNNO6f3CeYhhBBCCCGEEEII\nIYQQQnzeJMASxyZ35Rq6vR9OqSr5q1/DzOfJX/1aFGLpdorcS1enD6Co7JZORquQfM1gr7RKOzVD\nL5mNurXtIl2rMHWIXiJLKzUTHffjaZqZOfaKK1GoFCoqleLJJ9pKL9B09kqrhIyWUHq6yV7hxBHX\nobA7cyoKvHxVp1I6+YnOUyssc2/lGlvls9xdfZn+I9f9pOq5BQbmKFQMUWilSsSGXUyn86nHFEII\nIYQQQgghhBBCCCGOw3NdA0s8W7FMhrlXv0PjvXeIF2dInz0HQPbiZVTdwNnbJXvpCkYqfeQY7dQM\nIQp2t0ojU8aJpwDYmjtLvvqAUFVHq5SO2otTUdidOY1rmGi+R7WwQqhqDE2bzfnzZBsbo5ArM/fE\n19fIlOnaNpbr0ps/z9C0juzbtYtszY22L2ym554oiBqaNkNz+iq1JxFoBveXrxEfdIgNOszu3ia9\nv63gXuEEtc+wuksIIYQQQgghhBBCCCGEeJokwBLHpre5wfZP/5HQ9+ncvoWzu83st77Nzi9+Rvf+\nPQC69+5S/s73SZTnp45R2rtLrr4OQKq9x/bcGXrJLCsP3kT3BgDYnSoPlq8SaJOPsxIELK29hTns\njcbo7HF/+Spxp0N56yYKIel2hfigw+7sC090fbM7H5HojOpgldbeYrN8nq49fSVYvnqfYvU+MKrj\ntTNzmmZ2+jUfK0XBiaco7d5GCYOD+dXWqOcWnmgVmhBCCCGEEEIIIYQQQghxXGQLQXFsmu+9Q+j7\n0XHn7h16G+tReAUQ+j6NG+9Ofb0S+GQbmwfHhOTra6RbO1F4BRBz+9idvaljWN1qFF4BaL5LprlN\nrr6OQhi1Z5rbqL77ia9N84akWzsHcwvDKGibEIbkD/1ZvnZE38+JGvhjx0oYjAVaQgghhBBCCCGE\nEEIIIcSzJAGWEPuUMHx8p+dE89CWiZ1UkUAzntFshBBCCCGEEEIIIYQQQohxEmCJY5O5cAnUg0fM\nOrFKcmERa/lE1KZoGtnzF6e+PlQ1GpnywTEKtdwirfQsnhaL2l0jTscuTh2ja+UZxJLRsa8ZNDNz\n1HOLhBzUzWplZvH12LQhpvL1GK30zNjc6rnF6Z2VyT+r54/o+zlp5BbYLJ+nkSmzO3Oa7dkzz3Q+\nQgghhBBCCCGEEEIIIcSjpAaWODbJ+QUWf/hjGu++Q7xYIn3uPACz33qV1vs3cfYqZC9dxsxPrxsF\nUCmdxDEtrG6dZnaefjIDwP2Va+SrDwhUlXp+eWr9KxiFYGtLL5GrraEGHrXCMr5u0jHiPDCuYnVr\nDGNJOkfUrvo4O7MvYlTexHJd+ktXGCTSR/atFlYYGAnsTpVWepaenX/i8z1tnVSRTmp68CeEEEII\nIYQQQgghhBBCPEsSYIlj47aabP/TT/E6bTr37hCGAdmLl2m89w61N38HQcCgskv5e69hpKaHP6l2\nhdndW6hhQLLfZHPhAoOYxdz2B1i9OgAx12GrfA4UZXKAMGSmcjuqVxUf9lhfuEioagziNoO4/amv\nL9PcItvtoBCS27rJxsJFhqY1ta/V2WNu9yPUwMfq1dmcP08/mf3U5xZCCCGEEEIIIYQQQgghnmey\nhaA4NrW33sDrtEcHQUDtjd8yqNWi8ArAbbeov/Xm9AHCgJnKbdRw1Ff3hxQrd0m1d6PwCiDV2cPq\nVqcOkew3ovAKINFvkmluf+ZrU32PUuUuCqO6WYY3oFC9f2T/md07qIEPgBZ4lCp3PvMchBBCCCGE\nEEIIIYQQQojnlQRY4th43e7Ycej7DGrVKLw66NeZ+no18NF8d6zN8BwM15noa7iDqWPoU9oNb3rf\nJ6EFLmroH5rD5LwACAP0Q+d8GnMQQgghhBBCCCGEEEIIIZ5XEmCJY2Ovnhw7juVy2CdPYWSyh/qd\nmvr6QDPoJnNjba1UiY5dJHxku8BA0Y6sYdW18vjqwU6ZIQpt+7PXfXKNBE48NdbWTpWmd1bUifm1\n7SP6CiGEEEIIIYQQQgghhBBCamCJ45M5ex5FUencv4thp8hduYqqqpS/+xqN62/hdtrYJ1ZJv3j2\nyDG2ymcp1NaIDbr0klnquUVQFNYXLpFrbBAqKvXsE5BHAwAAD29JREFUAp4Rn/p6X4+xvniZfH0N\nJQhoZMs4ien1tp7UxvwFkrUbmL6HnprB7lRJt3ZpZss0svNjfbfnzuDWEphOB0/TiQ26nLj7H7TT\nM1Tzy9PrdwkhhBBCCCGEEEIIIYQQX1ESYIljlT5zlvSZ8YDKsG1K3/ijT/T6QDOolE5OtCf6LRL9\nFiEK/UTmY0Mpc9Ah0W+hBD4D06KXzD2VwMjXY2zZKXTf51JnD2W/VtfM7i1cPUb3kZVeoaqxV1xF\nCXxO3n092hqxUL2Pr+o0cgufeT5CCCGEEEIIIYQQQgghxPNCthAUXzpWt0axeg/Nd9H9ITO7t/jf\n7d17rGVnWQfg35kz7dzbTo9tp5ShDUI+JRhFJIIIDNiACNpEUP+oSBWCiUJI1BitgFWIlyriBRNj\nxAsqSgyiNVYp1URjwASM3BQ/qaFQCrQdpkxnhmln5sz2j73P9PTMuQ1z2d/6zvMkTfZae+3mfWft\nd5937XevtbY+fGjZbS9+5Eiuuu9T2XzikcyePJG5A5/NzsP7z2k8O48fOzW8ejTGB5fdduvDh0+7\nr9dK2wIAAAAAwEZlgMXgbD16cF3rkmTbww9lJqPHrjv60DmN5+HNp5/IeGzLjmW3PXbxtoxmHlt2\nj2zZfk7jAQAAAACAoTPAYnAe3nr65QKXW5ckR5fbdtuucxvP5ouyf+66nJyZzSgzObTrihy8ZM+y\n285vvjj3XfmkzG8aD72ObN+dA5fvPafxAAAAAADA0LkHFoNzZOdc9s9dm90P3pvRzKYcuHzvivfA\nOrZlR+676smZ2/+ZzIxO5suXXZ1DO6845zEdmHtCHtx9TWZGJ3Ny9qJVt33o0j05tOvKbDp5IvOb\nLz7nsQAAAAAAwNAZYDFIB+auzYG5a9e17cNbduUr2y/LptF8jm67LJmZOS8xjTbNZpTZdW67KfOb\nDK8AAAAAAGA5Blh0bfbEsTz+cx/L7MkTSZIdhw/knr3fuOIZWwAAAAAAwPS5BxZd23HkwKnhVZLM\nZJRdh/dPMSIAAAAAAGAtBlh07cRFW05bd3zz6esAAAAAAIB2GGDRta9suywP7bry1PLRrZfk4KV7\nphgRAAAAAACwFvfAom8zM7n/yifl+EVbMjt/Il+auzajTbPTjgoAAAAAAFiFARZdmzl5Mnvv+Ui2\nHPtKkmTX4f35zBOelhMXbZ1yZAAAAAAAwEpcQpCu7TjypVPDqySZnT+eSw9+cYoRAQAAAAAAazHA\nAgAAAAAAoCkGWHTtyI7L88jF208tz89elIOX7pliRAAAAAAAwFrcA4uujTbN5p6935Rdhx7IzGg+\nh3ZdkfnNW6YdFgAAAAAAsAoDLLp3cnZzDl529bTDAAAAAAAA1sklBAEAAAAAAGiKARYAAAAAAABN\nMcACAAAAAACgKQZYAAAAAAAANMUACwAAAAAAgKYYYAEAAAAAANAUAywAAAAAAACaYoAFAAAAAABA\nUwywAAAAAAAAaIoBFgAAAAAAAE0xwAIAAAAAAKApBlgAAAAAAAA0xQALAAAAAACAphhgAQAAAAAA\n0BQDLAAAAAAAAJqyedoBwHJGx4/m8F23TTuMNY2OH02SQcT61Rjnt33aYQDAhjONXmhIfY0eBQBg\nYxrKd4bQh1GSmalGYIBFc+bm5jI/f3LaYazLkSOjJMmOHev7AmV2dtNgchvbnt27L592EACwoUzr\nb++Z9jXTpUcBANhodu++fIDfra1fz7klfefXa25Hjoyyffu2qcZggEVzbr311jzwwKFph3FeXHHF\nrm5zAwDOjZtvvmXaIQAAQHNuvvmWrr9b6zm3pO/85Hb+uAcWAAAAAAAATTHAAgAAAAAAoCkGWAAA\nAAAAADTFAAsAAAAAAICmGGABAAAAAADQFAMsAAAAAAAAmmKABQAAAAAAQFMMsAAAAAAAAGiKARYA\nAAAAAABNMcACAAAAAACgKQZYAAAAAAAANMUACwAAAAAAgKYYYAEAAAAAANAUAywAAAAAAACaYoAF\nAAAAAABAUwywAAAAAAAAaIoBFgAAAAAAAE0xwAIAAAAAAKApBlgAAAAAAAA0xQALAAAAAACAphhg\nAQAAAAAA0BQDLAAAAAAAAJpigAUAAAAAAEBTZkaj0bRjAAAAAAAAgFOcgQUAAAAAAEBTDLAAAAAA\nAABoigEWAAAAAAAATTHAAgAAAAAAoCkGWAAAAAAAADTFAAsAAAAAAICmGGABAAAAAADQlM3TDuBc\nK6W8Lckzk4ySvL7W+qEph3TWSilPTfK3Sd5Wa317KWVvkj9NMpvkC0leUWt9ZJoxno1Syq1JnpPx\n+/GXk3woHeRXStme5I+TXJVka5I3J/loOshtsVLKtiSfyDi/f0on+ZVS9iX5qyT/NVn18SS3pp/8\nbkzy00lOJHlTko+ln9xeleQVi1Z9S5KvTwf5lVJ2Jnlnkt1JtiT5hST/nQ5y4/zpsTdqUe/9Wmt6\n7R9btVH62tb02me3pve+n7OzWh9VSrk+yS8lmU9ye631zWu9piVr5Pb8jP++ziepSV6d5LlZUiu1\n1tdd0KDPwBr53Z3knozzS5Iba633Dn3flVKuSfLnizZ9YpKfSfL5DGvfPaavXvLc0OtutdwGXXdr\n5HZ3Blxzycr59VB3S4+taq1/vei5qddcV2dglVKel+TJtdZnJXlVkt+eckhnrZSyI8nvZHzAsuAX\nk/xurfU5Se5K8iPTiO1cmHw4P3Wyz74zyW+mn/y+O8mHa63PS/L9SX4j/eS22BuSHJg87i2/f6m1\n7pv897p0kl8pZS7Jzyf59iQvTXJDOsktSWqt71jYbxnn+SfpJ7+bktRa6/OTvDzJb6Wf3DgPeuyN\nWtR7v9aazvvHVm2UvrY1PffZremy7+fsrKOP+u0kL0vy7CQvLKU8ZSi91zri/P0kL6+1PjvJroz/\n3ian10qT1rkfXrwol3t72He11nsXHQtfn+SzSW6bPD2UfbdcX73YkOturdwGW3fryC0ZaM0lq+c3\n9Lpb4dhqsanXXFcDrCTfkeRvkqTW+skku0spl0w3pLP2SJLvynhqu2BfHi2Ev8u4OIbqX5N83+Tx\nl5PsSCf51VrfXWu9dbK4N8nn0kluC0opX5fkKUn+frJqXzrKbxn70kd+1ye5s9Z6qNb6hVrra9JP\nbku9KeNfLe9LH/ntTzI3ebx7srwvfeTG+dFjb9Si3vu11nTbP7ZqI/S1rdmAfXZr9sW/N6v0UaWU\nJyY5UGu9p9Z6Msntk+2H0nutFefTa62fmzx+II8egwzFV7Mfetl3C25K8p5a6+ELGNu5sFxfnaSL\nulsxt4kh191auS1nKPstWX9+N2V4dXfasVUpZTZpp+Z6u4TgniT/sWj5gcm6h6YTztmrtZ5IcqKU\nsnj1jkWXL7g/ydUXPLBzpNY6n+TIZPFVGRfCi3rJL0lKKR9I8viMz3S5s6fckrw1yWuTvHKy3M17\nc+IppZTbklye8aXaesnvuiTbJ7ntTnJL+sntlFLKM5LcU2v9Yimli/xqrX9ZSrmplHJXxvvuJUlu\n6yE3zpvueqMW9d6vtWYj9I+t6ryvbU3vfXZreu37OTur9VF7JssL7k/ytUm+ZpXXtGTVHrHW+lCS\nlFKuTvLCJG9M8g1ZUiu11vdfyKDPwHp64N8rpVyX5N+S/Ow6X9OC9cb56oz33YJB7LsV+uoFg667\nNXIbdN2tldvEUGtuvfklA6y75Y6tJuuSRmqutzOwlpqZdgAXQBc5llJuyLhIXrvkqcHnV2v9tiTf\nk+TP8th8Bp1bKeWHknyw1vrpFTYZdH5JPpXxwesNGX9x8I48dug/5PxmMv4lz/dm/OuQP0pH781F\nXp3x/TqWGmx+pZQfTPLZWuuTkrwgyduXbDLY3LhgvEemw7/7edBz/9iqXvva1myAPrs1Pff9nFur\nvRdWem4o75/T4iylXJnxGYg/Vmv9UpaplVLKxRc0yq/e0vzelOQnMj7b8qkZXx5rrde0arl996wk\n/7MwEMmw991qhl53p+ms7hbrqeaWNfS6W+XYarGp1FxvA6zPZzztW/C4jG+42pvDkxv6Jsk1ObPT\nM5tTSnlRkp/L+FqoB9NJfqWUp09u4J5a60cyPgg61ENuEy9JckMp5d8zHhS8MZ3su+TUNWzfXWsd\n1Vr/L8kXMz4ltof87kvygVrriUluh9LXe3PBviQfmDzu5b357CTvS5Ja60cz/jt3pJPcOD82Sm/U\nol4+d5rUa//Yqg3Q17am6z67NZ33/Zyd1fqopc8tvE+G0nutGufkUlD/kOQNtdY7khVr5ZoLGPOZ\nWDW/Wus7a633T86quD3js1y62HcTL01y58LCwPbdaoZed6vqoO5WNPCaW6/B1t0yx1YLmqi53gZY\nd2R8U/uUUr45yedrrYemG9J5cWcenVS/LMk/TjGWs1JKuTTJryV5aa114QbFveT33CQ/mSSllKuS\n7Ew/uaXW+gO11mfUWp+Z5A8yvs9QN/mVUm4spfzU5PGeJFdlfKZSD/ndkeQFpZRNpZS5dPbeTJJS\nyuOSHK61Hpus6iW/u5J8a5KUUq5NcjjJ+9NHbpwfG6U3alEvnzvN6bx/bFXXfW1reu+zW9N538/Z\nWbGPqrXeneSSUsp1pZTNGX9xecdqr2nMWnG+Ncnbaq2n3vsr1Mq9Fy7kM7JifqWUS0sp71t0JsTz\nknxitdc0Zj1xPiPJRxcWBrbvVtRB3a1l6HW3rA5qbr0GWXcrHFslaafmZkaj0fn6f09FKeVXMj7A\nOpnkxye/UB+sUsrTM/4Auy7J8Yzf6DdmfFmsrUk+k+SHa63HpxTiWSmlvCbj++/876LVr8z4QG3Q\n+U1+sfeOjG90vS3j00Y/nOSdGXhuS5VSbklyd8ZnhnSRXyllV5J3JbksycUZ77//TD/5/WjGpwYn\nyVuSfCid5Jac+ux8S631xZPlq9NBfqWUnUn+MOPGZ3PGv8j+ZDrIjfOnt96oRb33a63puX9s1Ubq\na1vTY5/dmt77fs7O0j4qydOSHKy1vreU8twkvzrZ9D211l9f7jWt9l4r5Zbx582DST64aPN3JfmL\nLKmVWuvtFzLmM7HGvnt9xr3D0Yzr/XW11tHQ912t9b2T5z+e5Ppa632T5dM+51rddyv01bcl+fTQ\n62613DLwulvHfht6za2a32SbQdbdCsdW/5zk463UXHcDLAAAAAAAAIatt0sIAgAAAAAAMHAGWAAA\nAAAAADTFAAsAAAAAAICmGGABAAAAAADQFAMsAAAAAAAAmmKABQAAAAAAQFMMsAAAAAAAAGjK/wMt\nK3+TJcU+hwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(30,10))\n", "\n", "plt.subplot(231)\n", "plt.title(\"train_age\")\n", "sns.distplot(train_age[~np.isnan(train_age)], kde=False,)\n", "\n", "plt.subplot(234)\n", "plt.title(\"train_age\")\n", "sns.boxplot(train_age[~np.isnan(train_age)])\n", "sns.swarmplot(train_age[~np.isnan(train_age)], color=\"brown\", alpha=.5)\n", "\n", "plt.subplot(232)\n", "plt.title(\"age2\")\n", "sns.distplot(age2, kde=False)\n", "\n", "plt.subplot(235)\n", "plt.title(\"age2\")\n", "sns.boxplot(age2)\n", "sns.swarmplot(age2, color=\"brown\", alpha=.5)\n", "\n", "plt.subplot(233)\n", "plt.title(\"train_embarked\")\n", "sns.distplot(train_embarked, kde=False)\n", "\n", "plt.subplot(236)\n", "plt.title(\"train_embarked\")\n", "sns.boxplot(train_embarked)\n", "sns.stripplot(train_embarked, color=\"brown\", alpha=.5, jitter=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 23: Dispersion\n", "\n", "\n", "* For `train_age`, `age2` and `train_embark`, calculate\n", " - Standard deviation\n", " - Interquartile range (IQR)\n", " - Range\n", " - Mean absolute difference\n", " - (optional) Median absolute deviation (MAD)\n", " - Variance\n", " - Entropy\n", " \n", "https://en.wikipedia.org/wiki/Qualitative_variation" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "=======\n", "Std: 14.5163211508\n", "IQR: 17.875\n", "MAD: 13.3434199666\n", "Range: 79.58\n", "Variance: 210.723579754\n", "Entropy: 6.44007801855\n", "=======\n", "Std: 7.26722239942\n", "IQR: 7.15769284111\n", "MAD: 5.43971991053\n", "Range: 41.6502966347\n", "Variance: 52.8125214026\n", "Entropy: 4.52030647757\n" ] } ], "source": [ "for dist in [train_age, age2]:\n", " print(\"=======\")\n", " print(\"Std:\", np.nanstd(dist))\n", " i75, i25 = np.nanpercentile(dist, [75, 25])\n", " print(\"IQR:\", i75 - i25)\n", " mini = np.nanmin(dist)\n", " maxi = np.nanmax(dist)\n", " print(\"MAD:\", robust.mad(dist[~np.isnan(dist)]))\n", " print(\"Range:\", maxi - mini)\n", " print(\"Variance:\", np.nanvar(dist))\n", " print(\"Entropy:\", stats.entropy(dist[~np.isnan(dist)]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 24\n", "\n", "**Task**:\n", "\n", "* Create a `numpy` array of range(20, 80)\n", " - name it `age3`\n", " - calculate mean: `m`\n", "* Create a function that accepts `age3` and another number as an argument and returns `RMS`" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [], "source": [ "age3 = np.arange(20,80)\n", "age3_mean = np.mean(age3)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def rms(array, number):\n", " return np.sqrt(np.mean(np.square(array - number)))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "17.325318659888097" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rms(age3, 50)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 25" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.datasets import load_iris\n", "iris_dataset = load_iris()" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Keys for the iris dataset are: dict_keys(['target_names', 'target', 'DESCR', 'data', 'feature_names'])\n" ] } ], "source": [ "print (\"Keys for the iris dataset are: {}\".format(iris_dataset.keys()))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll explore them one by one:" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Iris Plants Database\n", "====================\n", "\n", "Notes\n", "-----\n", "Data Set Characteristics:\n", " :Number of Instances: 150 (50 in each of three classes)\n", " :Number of Attributes: 4 numeric, predictive attributes and the class\n", " :Attribute Information:\n", " - sepal length in cm\n", " - sepal width in cm\n", " - petal length in cm\n", " - petal width in cm\n", " - class:\n", " - Iris-Setosa\n", " - Iris-Versicolour\n", " - Iris-Virginica\n", " :Summary Statistics:\n", "\n", " ============== ==== ==== ======= ===== ====================\n", " Min Max Mean SD Class Correlation\n", " ============== ==== ==== ======= ===== ====================\n", " sepal length: 4.3 7.9 5.84 0.83 0.7826\n", " sepal width: 2.0 4.4 3.05 0.43 -0.4194\n", " petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)\n", " petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)\n", " ============== ==== ==== ======= ===== ====================\n", "\n", " :Missing Attribute Values: None\n", " :Class Distribution: 33.3% for each of 3 classes.\n", " :Creator: R.A. Fisher\n", " :Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov)\n", " :Date: July, 1988\n", "\n", "This is a copy of UCI ML iris datasets.\n", "http://archive.ics.uci.edu/ml/datasets/Iris\n", "\n", "The famous Iris database, first used by Sir R.A Fisher\n", "\n", "This is perhaps the best known database to be found in the\n", "pattern recognition literature. Fisher's paper is a classic in the field and\n", "is referenced frequently to this day. (See Duda & Hart, for example.) The\n", "data set contains 3 classes of 50 instances each, where each class refers to a\n", "type of iris plant. One class is linearly separable from the other 2; the\n", "latter are NOT linearly separable from each other.\n", "\n", "References\n", "----------\n", " - Fisher,R.A. \"The use of multiple measurements in taxonomic problems\"\n", " Annual Eugenics, 7, Part II, 179-188 (1936); also in \"Contributions to\n", " Mathematical Statistics\" (John Wiley, NY, 1950).\n", " - Duda,R.O., & Hart,P.E. (1973) Pattern Classification and Scene Analysis.\n", " (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.\n", " - Dasarathy, B.V. (1980) \"Nosing Around the Neighborhood: A New System\n", " Structure and Classification Rule for Recognition in Partially Exposed\n", " Environments\". IEEE Transactions on Pattern Analysis and Machine\n", " Intelligence, Vol. PAMI-2, No. 1, 67-71.\n", " - Gates, G.W. (1972) \"The Reduced Nearest Neighbor Rule\". IEEE Transactions\n", " on Information Theory, May 1972, 431-433.\n", " - See also: 1988 MLC Proceedings, 54-64. Cheeseman et al\"s AUTOCLASS II\n", " conceptual clustering system finds 3 classes in the data.\n", " - Many, many more ...\n", "\n" ] } ], "source": [ "print (iris_dataset.DESCR)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The targets of the dataset are ['setosa' 'versicolor' 'virginica']\n" ] } ], "source": [ "print (\"The targets of the dataset are {}\".format(iris_dataset.target_names))" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The feature names or columns of the dataset are ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']\n" ] } ], "source": [ "print(\"The feature names or columns of the dataset are {}\".format(iris_dataset.feature_names))" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type of data: \n" ] } ], "source": [ "print (\"Type of data: {}\".format(type(iris_dataset.data)))" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "We'll print a few rows from the dataset: \n", "\n", "[[ 5.1 3.5 1.4 0.2]\n", " [ 4.9 3. 1.4 0.2]\n", " [ 4.7 3.2 1.3 0.2]\n", " [ 4.6 3.1 1.5 0.2]\n", " [ 5. 3.6 1.4 0.2]]\n" ] } ], "source": [ "print(\"We'll print a few rows from the dataset: \\n\")\n", "print(iris_dataset.data[:5,:])" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The shape of the dataset is (150, 4)\n" ] } ], "source": [ "print(\"The shape of the dataset is {}\".format(iris_dataset.data.shape))" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Target: \n", " [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1\n", " 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2\n", " 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2\n", " 2 2]\n" ] } ], "source": [ "print(\"Target: \\n {}\".format(iris_dataset.target))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 26" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "X_train, X_test, y_train, y_test = train_test_split(iris_dataset.data, iris_dataset.target)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 27" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.linear_model import LinearRegression\n", "linear = LinearRegression()" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.neighbors import KNeighborsClassifier\n", "knnmodel = KNeighborsClassifier(n_neighbors=2) # n_neighbors: parameter here to set" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',\n", " metric_params=None, n_jobs=1, n_neighbors=2, p=2,\n", " weights='uniform')" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "knnmodel.fit(X_train, y_train)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "array([2, 0, 0, 1, 0, 0, 2, 0, 2, 2, 2, 0, 1, 1, 1, 1, 0, 2, 0, 0, 0, 2, 1,\n", " 1, 1, 2, 2, 0, 0, 1, 1, 0, 2, 2, 1, 2, 1, 2])" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "knnmodel.predict(X_test)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 28" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.preprocessing import StandardScaler\n", "scaler = StandardScaler()\n", "scaler.fit(X_train)\n", "X_train_transform = scaler.transform(X_train)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": true }, "outputs": [], "source": [ "X_test_transform = scaler.transform(X_test)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo 29" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "0.93915375248221555" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ridgemodel.score(X_test, y_test) # Provides us a test accuracy of 0.94" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [default]", "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.5.2" } }, "nbformat": 4, "nbformat_minor": 2 }