Files
FYS-STK4155/doc/Programs/JupyterFiles/Examples/Scikit-Learn Website Examples/MNIST Scikit-Learn.ipynb
T
2018-05-06 22:19:59 -04:00

119 lines
50 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Automatically created module for IPython interactive environment\n",
"Iteration 1, loss = 0.32212731\n",
"Iteration 2, loss = 0.15738787\n",
"Iteration 3, loss = 0.11647274\n",
"Iteration 4, loss = 0.09631113\n",
"Iteration 5, loss = 0.08074513\n",
"Iteration 6, loss = 0.07163224\n",
"Iteration 7, loss = 0.06351392\n",
"Iteration 8, loss = 0.05694146\n",
"Iteration 9, loss = 0.05213487\n",
"Iteration 10, loss = 0.04708320\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/anaconda3/lib/python3.6/site-packages/sklearn/neural_network/multilayer_perceptron.py:564: ConvergenceWarning: Stochastic Optimizer: Maximum iterations (10) reached and the optimization hasn't converged yet.\n",
" % self.max_iter, ConvergenceWarning)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Training set score: 0.985733\n",
"Test set score: 0.971000\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAUoAAADuCAYAAABf005JAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzsvWdwXOd1Pv5sLwAWi74AiF7YmyiR\nFC3J6pItW3KTFdfYlkucGU8+xR5PZpwPSSbjlt/EceQkE5fEsWPFVVYsyaoWVUiJIiWwggUgQHQs\nyqIssH3/H3ae594F7D+AjBRdTe7zBSSwe3fvuec95znlPa8jn8/Dhg0bNmz8YTjf7C9gw4YNG1aH\nbSht2LBhYw3YhtKGDRs21oBtKG3YsGFjDdiG0oYNGzbWgG0obdiwYWMN2IbShg0bNtaAbSht2LBh\nYw3YhtKGDRs21oB7Iy8OBAL58vJypNNpuN2Ft2azWQBAMBgEAMTjcQQCgaL3OZ1OLC8vAwC4E8jl\nchW+gNuNTCYDAMjlcvqbx+MpukYymQQAOBwO/Y7Xyufz8Pl8RX/n610uF1KpFOLxOBKJhAMWRUlJ\nST4cDgMw5EAZpNNp/Z/3zNc4HA79m3KkbF0uFxKJBIDCM+D7KCOv11v0+mw2q9fxNby2+d989slk\nEh6PB7Ozs4jH45aVrd/vz5eUlMDpdMLv9wMw9NZ8L/w35Z3NZqXXqVQKgPFMEomErmWWC58BYdZb\nvp7PMJFI6Pq/T2/5uvHx8al8Pl/zesjijUAgEMiXlZUBWK03lJdZNvzp8Xike7QP/H8ulyuyB4Ch\nr+bXU37Ly8uyAdR5swz5bPl/j8eDeDy+bruwIUMZDofxyU9+EplMBjMzMwCAzZs3AwB6enoAAGVl\nZRIWF92WLVswPj4OAJicnARgCKuurg5VVVUAgImJCQAAldp8jdHRUQAFQ7x7924A0DWbm5v1HXt7\newEAtbW1AAoCyWaz+M53vrORW/1fR2lpKT74wQ9idnYWra2tAIBQKATAkEs2m9W9Tk9PAwCi0aie\nwfDwMACgpqawpmjEAEOB0+m03ktQ/j6fD4uLiwCATZs26fojIyMAgPLycgDQgq+qqoLL5cL/+3//\n7/URwhuEqqoqfP7zn8fg4CCampoAGPIwGSPU1dUBKOgYUNBRymPr1q1Fr08kEhgbG9P1gcJiLSkp\nAQDEYjEAQHt7OwBgcHAQ8/PzRb9Lp9PSYYJGuqSkBBUVFQCAr3zlK4OvhxzeKJSXl+PjH/845ubm\npLNcf1y/AGTIpqamABTkRgc0NzcHwDCKExMTshHU75GRERlBGmCSi02bNun1Fy9eBFDQU8qXz23X\nrl0AgLGxMcRiMfzyl79c1z1uyFCm02mMjY1h06ZNEgQViV+gt7dXlp83deLECVRXVwMAlpaWAABd\nXV0ACsIbHBzUzfKmqIQrBdnS0oLz588DMAxJNpst8sSA8TAymQwSiYT+blW4XC6UlZWhsbFRvxsY\nGABgLLru7m45AiqI2+2WIaUT4oJ/7bXXJCMqqVlWnZ2dAAw5njt3Dnv27AFgGAuPx4O9e/cWfQ9+\nr9HRUVRXV+sZWRUulwuhUAhlZWXo7+8HYCxgLriqqio5GN5nIBCQnlJmdBIVFRXSMco2GAxqPdTX\n1wMwnEsoFJK8yWZnZma0HhoaGvQ6oPAsaHStjkwmg6mpKeTz+SIHDgBXX301gIKRo1xbWloAAMeP\nH5fTIDOkDs/Pz2stvPDCCwAKsqecKFc+l5qaGgwNDQEAKisrARSMNR0PDSa/39zcHOrr61dFrn8I\ndo7Shg0bNtbAhhilx+NBY2MjMpmMGN6WLVsAGJY6l8uJGdLTjo6Oihbv27cPAGT9I5EIuru7ARTn\nH6+99loAEAPgtVwuF3bu3AkAuHDhAgDg/PnzKC0tBWAw1UuXLgEoeKHKysp1e443C8lkEgMDA7jm\nmmvEMnjP9KJer1ehI+8nGo0qX7OwsAAAeP755wEUGNHvfvc7AMUhHa9BZkgW2dDQoN+RmTc0NIgJ\n0OszehgZGcHU1JQYklWRz+eRyWTQ1NQE5tJW5n+Xl5eVuujo6ABQkN/x48cBAIcOHQJgsM2JiQmF\n48zJJxIJ6TnXB1mq3+8XyyLjqa+vF0NdyYa2bNmiyMnqcLvdqKmpQSQSkbza2toAGCm5bDYrWXDd\nNjQ04LXXXgNgMHVzPv7FF18EULARQEHfyDKZc2R6wu/345prrgFg6PXFixdlD1bmTkOhEPr7+9cd\nadqM0oYNGzbWwIYYJVCwyIFAQOyFTJIJ//379ytpzTzjnj175E1vuOEGAIanqaysVO6GubZoNCrP\nQXbEXEZVVZWuS8aVyWSUFyWzJPsZHh5Ge3t7EVu1Ivx+P7q6ujA2NqbcF5klGd/o6CiuXLkCwPCo\nvE/AyOeeOnUKQKGwxkIDi29LS0vy7Mw9Mh/Z09Mjr0x5dnZ2St581vT68/PzcLvdlpdtPp9HOp1G\nX1+fcpPUE3NFlfpEdrdnzx7JysyMgEKejVHLrbfeCgBF3R68PvU3mUyKvZir62SQZKqUcXV1tfLQ\nVkcul8PCwgLKy8tx1VVXATBqBCy8LiwsqMhCmR89elTFRjJDorW1VddijrK6uhrPPfdc0fVvv/12\nAAUdZn6X+eGWlhZFY6yXnDlzBkCBpba3t+uZrwWbUdqwYcPGGtgQo2R1a9u2bfKmtOLMM05MTIgN\n7tixA0CB4TAv9uijjwIwyvXhcBhHjhwBYLCYTCaj3Bo9EhnrzMyMKl5kU2VlZWJTrDrSk2QyGQwP\nD4sFWRWZTAazs7OIxWJiei+99BIAg1l6PB51D5A1ZrNZsREyO+bY/H6/mCSZ5VVXXaXrUn6vvPIK\nAODuu+9WNwNfPz8/r98ximCr1vLyMlpaWiyf/11eXpYOks2QYTBnNTo6qqiFevjYY4+JbVMelEVP\nT4/auP7zP/9T12SlmvrO97lcLrz88ssAjMgpkUiIsZJZXn/99QAKHQt8r9XBHtFwOCzdoE4y79vQ\n0KB7ZI7y2LFjYpL8yecTDAa1pmlbmpqaxEDJtpnjzGazshXU78bGRrFL6qi52+HKlSvrtgsbMpRO\npxPBYBBnzpyRMnHxUKEaGhq0sPv6+gAUBHn58uWi191yyy0ACouZIQsVyOl0KkwhVWabwcDAgD6b\nYWgkElnVu8k2g2Qyia6urnVT7DcLXq8XjY2NCIfDRQltwAibZ2dncfbsWQBGK9WFCxekjHQg7DsL\nhUJKeXzqU58CUEhrUPaEOdxm8psy7uvrk2Iz7GTxyO12Y3Bw0PKtV4FAADt27MDw8LBkwzCQC29s\nbEyFQxarFhYWZPhoACjjXC4n2bLYcPXVV2uh07EzjB8dHVWB59y5c7oGHTufubkXlt/N6mAjfywW\nk97QyNHYnzx5UjpL49bS0qLiGtMRTFksLS1J9iz0PPvss/jIRz4CwDDEfFYHDx7UemG74cWLF9V3\nzPQIn9/S0hL8fr+uveY9rlsaNmzYsPF/FBtilD6fDx0dHbh8+bJCZzI5UtzBwUGxEv7u9OnTCmvo\nVZjkrqurk9dl2OFwOJTUJl0/duwYAGD79u3y1vQgY2Njajuit2aB6MqVK/D5fJYvOCwvL+PMmTNo\na2sTu+B3Zpi4ZcsWeUB6zVgshuuuuw6Akeogo29ubpZceA2Hw6HiDL05WcD8/DwOHz4MwEhdhMNh\nfPzjHwcAfP3rXwdgsLBdu3ZheHhYbMDKcDqdiEQiYnWUEZvzk8mkopDf/OY3AIADBw6oUZm6yZCv\nq6tL/6audnV14cSJEwCMFhWy7WQyqXQV18DQ0JBeR/bEZ15WVibmbnWQUV66dEm6QP2hvs7NzSn6\npH4nk0kxPjJQ6mYsFtP9c+fXxYsXxVCZ8mM70tGjR/Gxj30MAJTK27x5s1Ib/B2j3HQ6DZ/Pt+7W\nNptR2rBhw8Ya2BAVYE4lHA6rBYjFBXrOVCpV1PoDFBgLcy/MsfH9586dUxKWOcqysjL827/9GwDD\nI7G5d3R0dFVz6p49e/SZ9MzmLY+JRAJvhWN58/k8stmsZLRt2zYAhhc8e/asGAflwVwbsLo9qK6u\nDvfddx8A4OmnnwYA/PjHP17VnM8G/p/+9Ke6FhusW1tb8cQTTxR9HzLXI0eOoKKiQnk5q4JFyObm\nZkUjZCRkgwsLC2JBjFRyuZz0lFtH77//fgCFZ8G8Nxn2P/zDP6h9hdHU/v37AQA333yz1gM3U/z4\nxz/GY489BsDInTHvWVFR8ZbQWaCgd8PDw+js7BRDZu6V+lpSUiI5bd++HUDxPTLiZKQ5Pj4utsnf\nmZ8fc8aU1+joqGzARz/6UQCFtcEax5133gnAiKJOnjyJ5eXldct4Q4bS4XDA4/HA4XBoUTKpSpps\nLkYwDG5ra1MlauUUj82bNyvBzkphPB7HbbfdVnQNGselpSUtTCrhkSNH9DoKhBQ+mUzC7/dbfj+y\n2+1GdXU1/H6/FIn3RKWrrKxUKPHUU08BKCT9uWAZQn/yk58EUCgo0MhSQW6++WY9C/6NxbSuri58\n//vfB2DsuIrFYupiYMWXz667uxuXL1+2/M6cTCaDiYkJhMNhGSs6dqYkdu7cuWpQhsPhUKGLBTDz\ntCzuHGFR8de//rWKlXTYlG1/f7+eHUP8trY2OR2SBYbzyWSyaFqOleF2u1FZWYlMJiMZcv3R2KXT\nacmC93z06FHJn6C8f/7zn0smTJO88sorWgu8LnW5qqoKzzzzDAAUGWsWcfhc6PgGBgZQUVFRNB3r\n/w926G3Dhg0ba2BDjDKZTGJwcBCpVEp7Odm6whaJiYkJhb1M3sZiMYU6DPv4s7y8XCyTnmNiYkKe\ngx6WHqqjo0NhClnV8PCwQh2GnTfddBOAQgf/yMjIuj3HmwmHw4HS0lIxDsqA/XojIyMqLtATe71e\n9UNyBw9Dx3e96104ffo0ACNsLi8v164GhpoMKwHjufBzrr76asmbe4/J6Gtra9HU1GR55uN0OlFW\nVobZ2VmxaIZ6ZBrbtm1TdMQ+1JmZGU26YZGLUc/8/Lxa0ficlpaWcPDgQQAGk+TnTE1N6VrU82w2\nK+bOUJKMp6OjQ21ZVofL5UJVVRXS6bR6Hlm4og0wt0KxALO4uCjWSBZP+f7t3/6tIhnqd39/vwq/\nDMcZKY2NjWndMHV13333qXeVa4LXP3DgAJ5//vlV80P/EGxGacOGDRtrYEOMMpvNYnZ2Fs3Nzcrx\nkJWQ9Zw7d065NeYiLl++rKQrWQ9ff+edd4oFmpO8bFBn/o1eeG5uDs8++ywAaPdOd3f3qgIFC0Oz\ns7Mb2tP5ZoGy9fl8YjbMp5FxJxIJ5cP4mlwuJ7kxj8ZWCPMgWeZyhoaG8L73vQ9AoZgAGPmegYEB\n3HXXXQCMBv/Tp0+r+MDXsWG4srIS/f39q/JMVgNnfZaXl4vVkDFTHysrK9UqxOilq6tLjIjMhax6\n7969YtJkPHfffbcYFfPuZDlPPPGE5MhWt5KSEn0Pfi+y1Hg8rrVldaTTaYyOjqKhoUFta1x/ZjtB\nG0C2XVpail//+tcAjJw4o5XDhw+rcEaWXVtbq0iWPyn7P/uzP5OuMwp94IEHJHNGVmT1ra2t2Llz\np2zIWrAZpQ0bNmysgQ0xymAwiKuuugpXrlxRBXRlDrGqqkqekHmE6upq5Qj4PnrSI0eOiKmwKlhT\nU6P8Iz0BPXR9fb0qj/ReDodDv3vkkUcAAO9///v1/QYGBiy/19vj8aC+vh5XrlxRuw7viU3MmzZt\nErskA1leXhbzpHf+3Oc+p+sy9/PDH/4QQIEl8RqsMNLTJxIJ3H333UW/q6+vVwvSSkbgdDoxNzdn\n+ao34ff7VZUlk6QsZmZmJCsy5lQqtWoSFlnL4cOHtSf/3nvvBVDQc+bAVm5N7OzsVCRElJSUqHOD\nuVPm4Obm5oomQ1kZzD+eO3duFQtmJHf27FnJi3rU29urdU1GyYhpdnZWjP2OO+4AAPzkJz/ByZMn\nARi6y3zkBz/4QcmXrzHPAOVPfr+LFy8ilUqtuxtmw0dBTExM/N5+JirGpUuX9DeGwZOTk9qT+cAD\nDwAAvvSlLwEoGAiGzWYw9GOy98EHHwRQaPWgQaWSnT59WjfMMJT7dpPJpMImKyObzWJhYQFbtmwp\nOhwMMHr+BgcHJW8moZubm4v+DgB//ud/DgD44he/iIceegiA8XzuvvtuJdqZGuHOB5fLpYXK67/0\n0ktyZDQSLO5cuHABNTU1lh+Kkcvl1DNHWbG15xOf+ASAQrqHrVEMn3t6euTYuZDZJxkKhUQSeP+h\nUGjVoAymQbq7u1VEowHctm2belQZ9vP55vN5GZG3ApxOJwKBgEJtFnd5X0tLS0qfUe8CgYAcEW0G\n+4M/85nPaO2TLJWWlqrwyJ9c252dnRrL9vjjjwMopJLYVkijy5TVjh07tA7WdX/rfqUNGzZs/B/F\nhhgljyK4cOGCWCDHI9FT/+AHP5DHZHvDbbfdhieffBKAsWPmRz/6EYBCG8TKwacPPvigPBLbekjh\nn3nmGXnym2++GUCBuZJa06ObQ6wrV65YfveIx+NBXV0dSkpKtMOAXpC7n0ZHR9UywXDX4XAUHbkB\nGDL75je/KdlSnufPn9c1fvGLXwAwntPdd9+tZ8Bwu6GhQf/ms2bLSzabRSAQsPw+ep/Ph/b2dpw6\ndUpFAEYejER++tOfKmym/DZt2iS9Ihs0T66iTnEX2Ze+9CUVMThs1jz1is+A1zh//ryYET/TPICa\nhSCrg4OR0+m0dNV8gBhQGHnGKI9svqamRnaEzJ3v37dvn1q3uHvq6aef1l5vpub4XG699dZVG1dm\nZ2cl3w984AMAjMJQLpdDR0eHPbjXhg0bNl4vbHhw78TEBDo7O1cdCkRWsXfvXnlCNoFHo1FZeebA\n+JpAICDP8eqrrwIosFN6GuZ4uFf85ptvVusQPfqhQ4fkdchm2dbx8ssvo7y83PIN5+YjP5mDZU6H\nTK6yslK/o+edn5+XjOgt2VxeUVGh58Jc0dGjR1flhHn9Z599VkyAE24WFhbEwshiGT3kcrm3xD56\nnp+dSCTEaihHMujW1lbdO6cHhcNhsXu2TbG1Z+fOncplclLV5OSkttGR3ZDxXH311Wr94f7udDot\nBkn9ZjvLhQsXVh2PYFV4vV40Nzdjfn5e0Qeb9hnh1dbWqlDD9V5XV6ffsUWQduKzn/2sZg+wmPmj\nH/0If/EXfwHAOFKGuu71evVvvr6iokKFTkYGzK+fOHECbrdberAWNmQo3W436urqEI1GldymwaOh\nqq+vl8KRTjscjqLhDeYvHo1GRX+Z5N22bZsKE6wasnCTzWa1UGkUzWEQlZGGsr6+HouLi5ZfzNzr\nffnyZS0eOhqGc6WlpVJA3u/Q0JCqfAyp6RS2b9+uIs5vf/tbAIVk9tGjRwEY6Q8mtQ8ePKhFzyJD\nS0uLni2r8Xx9W1sbpqenLe+EnE4nSktL4fF4FHLT4HFnWVNTk3SO4fjevXulm3Q4733vewEUquA0\nbtTlBx54QMUI6uiXv/xlAMCvfvUryZE9rbt375ZzY4jOPs3a2tq3zLne2WwWc3NzmJ2dlc5SR1id\n7u3tVWqIxa+KigrtnGFRhuv361//upwa9euOO+4omrwPGOu8trZWxpa6W1VVhRtvvBGA0eXAwRyp\nVArbt2/XsJi1YIfeNmzYsLEGNtweNDIygnQ6LcpKD0LmV11dXdQPCRSsPr3pylHx5veyDWV+fl4F\nmwMHDhR9B6/Xq1YC/qyqqhJ7JdMiY6itrUV7e7vlW1gSiQR6e3uxZ88e9ZiuDBMbGxsVmpCVtLS0\niOkxbPuv//ovAIXkN8NlhkB9fX1iQisHyTY2NipUZMRw+fJlpVdWnhg4PDwMh8NheUZpLjawfYU9\nfUxbmEcHsg81lUopTcFwkezeXET72te+ps9ilMPeSrL3a665RuyFurq8vCwWy91N/BuPKngrwOfz\nobW1Fc3NzVrX1AneXyQSUdGQrHtpaUnrnEyP9uGpp57Sv6nX73vf+zQZiMyez+XRRx9V6xZ/V19f\nr/5U2gXq7kbZus0obdiwYWMNbHiv9+LiIiorK8XQmAMjtm/frlwZCz79/f1inmzpYRL9d7/7Hd7+\n9rcDMNhpMplU0pVem7mMHTt2KE9HL0wvARg5C+Y7OVVkvVNC3ix4PB5EIhHEYjF5VzJmsp++vj61\nV5EVLi8va1ISGSi9Zz6fV26WTMg8A5B5G/6NhTrA2N0QDAbFaJnPYyL9woULSCQSlm+9yuVyiMfj\n2Ldvn4ozZDXUs8HBQekh2dDw8LD2AlPG1NtAIKDXff7znwdQ2CVCeTOaIsvZsWOH2DoZvM/n0zqi\nvKmnDQ0NkrfVkclkEIvF4Pf7xfhYiCK7C4fD2mHDv5WWlipKIfNmbndubk5RDfO3g4OD0l3qJF9/\n+vRpba4gzA3l/BwWQf1+P06dOrXu4zZsRmnDhg0ba+B/dCpUPp8X0yODM0+WYT6STOMd73iHqnls\nU2HurKWlRXkK5oji8biamuk52EZw7bXXymuxgbeyslIVL+bizBPXp6enLc8oWfWOx+Nqc+A98LuH\nw+GiWZBAgTGTbZNp08v6fD7JhXngrVu3Ks/5ve99D4CRV9u+fbuuRSawuLgopsWcGb/PzMyMGJaV\n4Xa7UVFRgd7eXrX0kN3xPq+//no1MfOerrrqKsmUoBzb29u1rZassL29XdENWTrza36/X21BfL6v\nvfaamC1bsPhsGhoaFJFZHalUCoODg2hqahJbpD3gHvnq6mp1B5iPpSajZzcCdbGpqUlVcuY9y8rK\nJH9GW+xG4FwJ8zVKSkoUjfE58vUbjTI3ZCj9fj82b96MdDqtnkdSWW423759u0IStgRduXJl1eZz\nKldpaalaV97znvcAKOxiMPdHAUZRZ2hoSKHLK6+8AqBgKKncNNy8/tTUFPx+v9oOrIqlpSX09PTA\n4XBoXzwViwWH++67T8UFjrLbunWrZMtQjSH1wMCADCULRHfeeacS3DwXh7KZn5/XZzPEP3XqlJwi\nDTcdYT6fR21treVPYUylUhgaGoLH49FCo9GnLi0uLuo+6JR7e3t1JAkXPJ30Qw89JEdNY7iwsKBw\nj0SABCGXy2mt8FpXXXWViAPnIpjP66HxsDo8Hg8aGhrgdrslO+oIw+exsTG1CnEv9uLiosJx6hsN\n4PPPP6/dNOynHB8f13k4HJD8N3/zNwCKw2wSr+3btxe11gGGQ8rlcmhtbV330GlrWw8bNmzYsAA2\nRAUSiQTOnj2LcDisSR1kjxx3tH//fll0Mr6GhgbtpqEHZ5Lb6XTKmzJRe8MNN+BXv/oVAIOx8ppL\nS0uaKsIm9FOnTommkx0xdK+pqUEqlbL8fmQOl11YWNDOAhbF2NIyOjoqD2gOwVlo4P5i7n7yeDx6\nPT37wsLCqsPZGKpEo1ExGqY8mpqaxMLYFMznVFZWhoGBAcsf3MYdRK2trWLF/ElmeezYMe2moTxG\nRkbU0sJnQH2/++67pZOU8YsvvigWSP3jGvD5fNp3zGJdW1ubiktkSGSbU1NTev5WRy6Xw9LSEkZH\nRxW5UJa8Px5EBxjFwFAopL3g1CEWdG+44Qa9l/bhlltuUXTz13/91wCMKU3V1dV6HjzLfmZmRrrO\n58G2ILMurAc2o7Rhw4aNNbAhRul0OlFSUoJEIiFPy3YIMpYXX3xRXoHsbmRkRIUatrXQwp89e1YJ\ncF5rZGREXpq5T3r58+fPq2WD+Z9AIKBcBPMg9Py5XK6oCGJVOJ1OBINBhEIh5a14f/TO+XxeuVgy\noVgspoOvyPzIBvfs2aOja+mxT5w4oYIXvTPzaT6fT3IzH0NBj87cJnN527ZtE2OyMjhwmu1TgLH1\nlkn+eDwuvWKhx+/3i6WsPExvbm5OcxIpT/PrmUOmbHt7e/U35jYHBgak32SSZDmbNm16yxwuRkYZ\niUSkG4xMuKZzuZyKUw8//DCAQo7WfPwLYNiMgYEBFXrMk8T+7u/+DgBWFR3dbrfaiGg7duzYIfa+\n8giQ5uZmOJ3OddcuNnyut8/nw8zMjPoUKRCG3m1tbUWb3oHC5G3257FaywWfzWZVfGAi2Ov14h3v\neAeA4ko4AIWngGEYamtrJVSG2OZKcX9//1siPIzH43A4HEqEc888Q+nl5WXJiMnpG2+8UYuNzoLK\n0NnZqaIb5X7jjTdqwXJR0iDz94BhLMbGxhSuUNnYIxiNRuFyuSyf1mDKKJFIyEGz+n3mzBkAhX3s\n1DEu6L1792oyPO+devzAAw9IpjTA3C0FGGkTytjr9coY0LBWVlau2tVEg7m4uKjKsdXh9/vR3d2N\nWCymYiCNPJ1sKpWSc+f6rays1L5sFmupyz09PTJy1K9cLqff8VmRoEUiET1TOkG/3690EYtFfC5j\nY2PaN74e2KG3DRs2bKyB/9Fe73379mkPJ70Ew8O+vr5Vp6F9+tOf1uvZMkTP3NzcLA/AUGZ2dlbh\nOD0BPU17e7u8rvnccLYTEWREi4uLKC0ttXzozbORBwcH5V0ZCppTGUyIM2ScnJwUg6T3JBP92te+\npr48yt3j8cgb8xkw/HG73WKlLKJ5PB49Y7J2hjYc3Gv11iuHwwG/349EIiE5sPhnbhehrMhMwuGw\nngVlRgbY2NgoRknGf88992jfPVNMDBvHx8f1Nw6uDYVCioqor5R/VVWVoimrw+FwwOv1IplMat1S\npxhplpeXyy4wPTY2NiZdZVTDAd8HDx7UvAbajueff15rgREnU3Lm9Bqf6djY2CrGbt7t1N/fryLd\nWrC2htuwYcOGBbDhUxj37NmjM6gBo3BAT5hKpZTANk9eYeMuvTVZSltbm67F3NeZM2fEILnLhH+r\nq6uTl2B+wrwvlmyTDHNsbAxLS0uWn0fpdDrh9/tx4MAB5bw4S49N42aYGSLzZ2Qx/H95ebmKCswd\nnTt3ToUa5srYjpTNZsUOyX68Xu8qdk8vHAwGEYvFLL/rKZfLYWFhAVdddZV0jTk0srbOzk4Vphgd\nlZSUKNphHp0Freuvv16N5iwsLCwsiHmSkTOn3NHRUVT0AQqTmZiPZsM0ZVlXV6eIyepIJBI4f/48\nPB6P7pdy4roFjEiETfuNjY223prMAAAgAElEQVRqMGekRB0jwwaMPG9TUxM+9rGPATCKPowMOjs7\nVZzktcrKysQyqbPUZbfbjUgksu6pYjajtGHDho01sCFGmUwmMTg4iPLy8qL9l4DhJX0+n/IuZEKB\nQKBozh5gsJi5uTm9nt61oqJCnojXNeclmacgM5qbmxNj5OvJrqanp9HZ2Wn5eZSpVAoDAwPIZrOS\nFb0fc2eTk5NqTGbjvnmUPSt6rBKm02nlcNi2cfDgQeU0+Tuyd3OllazW4XCsGqNPRp/JZDZ0QNOb\nhXw+j2w2W7TxgAyR372vr2/Vscbnzp1TZEI5slKayWTE3M3H21KmzE0y0gqHw9q6R7bpcDhWnd3N\nKOz8+fOrZrFaFdxLX1NTI8ZORkkWPT09vao7Ip/PK79Lds7OgMcff1yskbq+ZcsWRZhc39T/kydP\nat2w2yafz4uVr6xwk/mvt3axIUPp8XhQW1uLgYGBojO1AcNgjo6OqnWIxnR8fFwd+BQEhWY+FZA3\nz43sgEHBaThTqZRexwV+4cIFJY+phBTg0tISgsGg5QsOQEEmmzdvllOgjFgU8/v9q3pUvV6vlJGt\nLnxfW1ubngtTE5lMRnKjg6ISTU9Pq52ICIfDKvowPOT1Dx48iIWFBcvLNhAIYNeuXZiamlp1uied\neW1trXYccfE2NDTIYTzyyCMADAMbDAbxV3/1VwCMRR6LxRRWMoRmGL+4uKjwjyG+1+tVMWPlulhe\nXi7q+7QyeN5TLBbTfVDvKGeHw7GqDzefz69y+Py5bds2heVMA6XTaclkpYNJJBIK+82kiLrJ9/H/\n0WgUBw4cWLehtLaG27Bhw4YF4NhIkcPhcEQBDL5xX+cNRUs+n69Z+2VvDmzZvnF4i8sWsOX7RmJd\nst2QobRhw4aN/4uwQ28bNmzYWAO2obRhw4aNNWAbShs2bNhYA7ahtGHDho01YBtKGzZs2FgDtqG0\nYcOGjTVgG0obNmzYWAO2obRhw4aNNbDRc73zZWVlcLvd2k/J/bHco+pyubSH2HxGMfdUssGd+8DN\ngwG4F9bhcKwai8brp1IpXZc/HQ7HqhPV+Hpea2FhAcvLy5Y9s8Dv9+c5EIHjqLgvlWPr3G63ZEv5\n+Hw+/Z0/zX+jXCh/j8ezajgB5Z7NZvU3fgcOlAAMmVLuqVQKTqcTc3NzWFpasrRsy8rK4PF4dK+U\nrXlfMO+Tv0smkzqyhHuW+Rqn0yk5U7bpdFqv43AW89EkXCscxOFyuf7gESXm7zUyMjJl5Z05gUAg\nHwqFkMvlJC/udaeMHA6HfkfZ53K5omMeAEPvcrmcZENZuFyuVXaBrzHv2TbvJedn8e9cD263G6lU\nCouLi0gkEmvq7oYMZWVlJT7zmc/A4/FoHiIHWHCS8a5duzSZmNN9mpqadIOcRMM5gD6fT4MezILh\nEAx+Dqcjj46O6roc9BCJRDRphwrKYRpdXV3w+Xz4xje+sZFb/V9HbW0tvvjFL2JiYkLGkMrDQQ49\nPT06g8R8iBNnJhKc6RcMBjU9xezYzMrI1wGFwQ28LhWsqqpKE2E4WchsfEtLS/HNb37zdZLCG4Pq\n6mp84QtfgNfr1eQkyoNTZKqqqlYNxUin01pgHF7B1zc1NUnuHOpy7NgxHePMARCcLPTyyy9rsjen\nDvX390vPzROcgMIUIU7Y+sEPfmDp7YGhUAh/9Ed/hHQ6veoQNk7yuXz5sowoZ0hWV1fLDpgPswMK\nk7J4vhENrNvt1rrm8Aw+l9nZWQ3YIPr6+mSI+dl8npFIBKdOncIvfvGLdd3jhgxlPp9HOp1GPp+X\ncnAqBwfD9vX1FX0ZoDA9iFNFqAicquJyubRQaSinpqY01YUTa3ijnZ2dRZOKAEOxAUNwvNbs7KyU\n0MrIZrOaPkNjSFDpWltbNZ2GC7ajo0Py40gvKkw8HpfiUdmi0aieBdkVR+2HQiGNdKNBCYfDMqyc\nasTvEwwGkc/nZWCsimQyqSNKVo7bosEMBAKSFQ3a4OCgnAQdMBGPxyVv6mEkEtExD5ygRafS0NAg\nMkHj4Pf79V7KkERiz549MjpWRyaTwfT0NA4ePKiByFx/5uHDjJg46cvr9UoWdMwcuuv3+/Ve2pOh\noSE5HuouXzM3N6d/0zYFAgHJl/aJE4YGBgYQCoXWfTCenaO0YcOGjTWwIUbpdrtRXV0Nv9+/6tCe\n3t5eAAVPsnv3bgCGdyDLAwyKTRZ05coVeQnzTDqynJWzE4eGhuS1OFR1eXlZnp9ehWFRV1cXTp8+\nvSqHaTWkUikMDQ0VnUVM5kbv3NnZqeGk5mHH9Ipk8PTO+XxehzaRnVRVVSlHxmdIlhUKhXDy5EkA\nBoM3H8ZE7890y4ULF5BKpSx/zEY+n9fQXjJr6hUjosrKSrFocz6LsziZmzRHUGSUZJvRaFT6Rxmb\n5zOSLfJalZWVipzI2s0Ht1ldZwmv14vm5mYkk0nNg115vMulS5ckL8o+Go3KHlBut99+O4CCflNO\nHOh94403KqXBtAT1uqmpSREP9b+mpkaDfvn6rVu36m99fX2r7Ngfgs0obdiwYWMNbPgoiP7+foRC\nIeUJ6QF50Bdg5AjMB4PRW/M4AeZk7rjjDnkfsp9jx46pIETvQO8aCoWUV2IBZ9++fbreyiRvMpl8\nSxxX4PF4EIlEcPnyZd0zk9lkxxMTE5p2znsHjAnolCNZU0VFhQ4oY1EsGAxqijmfE4++PXfunD6T\n+bpoNKrcEpknvXpjYyNmZ2ctfxSwz+dDR0cH5ubmxMh56BqZs8PhEDuhriwtLa06NoOs+tFHH1W+\nnTp32223SZZkTXx/MpnU63mto0ePinHxulwzsVhM/7Y6UqkUrly5gkAgoHXIdc6c+u7du8UoyRTn\n5+d13AVfR71ubGxU7YG/m56elkz4rMjme3p6lJunrRgaGpKt4HNhUdjhcKC6ulrPYi3YjNKGDRs2\n1sCGGKXP50NnZyfGx8flkck26EFLSkqUf2Q+JxaLyZuSfdBL5HI5Wfuenh4AQH19Pa6//noAwNNP\nPw3AYKC1tbVqEaDnGBsb02fynA3m6xKJhLyblcHDxXbu3KmKNit05gPE6DUpj8HBQf2b8qasa2pq\nxBB5ns6nP/1pnXPEs0gon+PHj+t5km3W1dWpfYvPwtxeVFNTs26v/GYhk8lgdnYWZWVlYt38zoyE\nZmdnlS809+ZRRs8++yyA4ntn6wvll8lkdF3K+F//9V8BFHJuPFuHOV2v16togCyLbDYUCq2qtFsV\nLpcLoVAI+XxeOdmVh/wNDAwU9VoDxWc60Z4Qhw8f1r/ZIXP27Nmi853M15qfn1ftgjKcmppadQ4X\n85i5XA7ZbHbdRy1vSMOXl5fR09ODXC6nL0OBUEGOHDmiL0yhzc/PF508Bxj9ZRUVFThy5AiAQhgO\nFPecrWyV+fWvfy3Dwe9w6tQpGQe2HtDYMFRfbxvAm4VgMIh9+/YhFosVNYcDRgFsaWkJL7zwAoDi\nhDgfNp8Fw0mfz6f2Ksrl8OHDuO666wAYxpO9fx6PRw6HYc/8/LyUkp/JRb24uIh8Pm/5c72dTieC\nwSAGBgYkI4a8PJO7vb1dRpDhXX9/vxYsQ3Ya05mZGRUCKNtAIKD0EYtgdPipVEoG2Hy6IHWZjp2v\nuXjxovpWrY5sNouFhQVEIhHJhO071K2BgQHdDws3IyMjIkcMy/lzcnJS/cB8LrFYTHbm3e9+NwDj\nOXZ2dsqOmDdErGxt49oIBoPw+Xx2e5ANGzZsvF7YEKMMBALYuXMn5ufnFT7QO5i9JUMReu9wOCxm\nyPCQr3/44YfFVMh0amtr8dprrwEwyvm//e1vARSarhlq0oMkEgmFjGQ3b3/72wEUvF0ikbB8C0sm\nk8HMzAzKy8vlNekNebxpa2urGAvlNzY2VrQ7ATBC6vPnzys9wb9NTEyI5fD5mMMYvpdh5SuvvKLP\nYlGJ36+pqQlDQ0NimFZFNpvF3NwcmpubpR9k7UwxOJ1OpSkYnQSDQYWGTA+xLaulpUVshCx8eXlZ\nxQLq42OPPab3kV1xLbC9DQCeeOIJAAYTe/vb367PsjpKSkpwzTXX4NKlS0plUM7Uv7q6Ot2PeQMI\nU3CUuTmdRphTT1wTTEuxSLmwsKBnxSOFU6mU3stnZN5iuWPHjnWnN2xGacOGDRtrYEOM0rzNjjlH\n5gmZR7v66qvFPG666SYAhTway/9ve9vbAAA/+clPABS8BT0srxkMBnUNegB6kl27dikHQW/y+5p5\nybzMze5WRjabxfz8PBYXF1d5TbKMpaUl5cqYA8tms2J8ZIOUYzQaVT6MHn7btm14/vnnARhJcuZz\nd+zYITmyKAYYUcCdd94JwGCiY2Nj8Pl8+gyrwuFwwOPxwOfzSV+Zg2VxIJPJqJWHupfNZpVn57Mg\n+y4rK9PrmKO8//77V215ZCGss7NTz4V5uOrqav39nnvuAQA8/vjjAICnnnrqDw7MsBqWlpbw2muv\nYe/evYoweY/muQyUJfOKZ8+e1fOgLpLhf+hDH1IBjc9l+/btyqtfffXVAIzopqSkRKyf15ycnBRT\nZX6Ua+nYsWNIJBLrbjjfcLnS6XSipaWlaK8xYPTyjY+PK8TgroZXXnlFAmCClgs9nU7jueeeA2As\n9IWFBRnBj3/84wAMwzo+Pq5FzB7Bnp4eVbWooAz/0+k0SkpK3hKL2e12o7S0VAUYKhmN3NTUlJSG\nIcvevXtx8803AyjeWw8U5M/7pjxnZ2dl+LhwqXSTk5NKa/zwhz8EUDCOdGTcq0zn1djYCK/Xa/lC\nmcPhkBy444u69rvf/Q5AITRkRwGdbSaT0b8ZwvE6Dz74ID784Q8DgEK+9vZ2hXgE93y/9NJLqsBy\n8Xo8HoWYNJjsDzx48KC6DKwOr9eLxsZG9PX1KcXF9cgUBNchYDib97///eoOoKGkHJiGA4wdZD/7\n2c+UruD7aEdyuZzWBNMqW7duVbjPNcTPbmpqwtzc3LrTRta2HjZs2LBhAWyIUZL1VFdXrxpTxSRs\nMBjEDTfcUPS7mpoasaSXXnoJgDFxJZ1OF7UFAQUvf8sttwAA/v3f/x0AcOjQIQCFog6T7px0E4/H\n1dJBz8//JxIJZLNZyxdz2GYTjUbVGsV91wwXIpGI2qoYOpIdAsCTTz4JwJD7hz70If2dP6+//vqi\nUVaAURTbv3+/du3wM+PxuMJOpk34tytXrmialNXhcrmQTCbFcDibgCFZX1+f5EJWd+XKFYXmLA5S\nxjt37hSDMc+O5DNjX6C5n5dhOdfH+Pi4ih9k5Sxejo+P671Wh9vtRm1tLUpLS4vmTwIGO5+bm9Pv\nOAPixIkT+OhHPwrAuG9iampKEQ9Z/G233abQm7KkTs7NzckekImb2T0/m1ED+5bXq7s2o7Rhw4aN\nNbDheZSpVAonTpxQCZ7MkPnCbDarVh7mbo4fPy4PQA/N93//+99XcWH//v0ACjkPFn/ILPn/W2+9\nVd6HrOCGG25QrofsiPmQiYkJlJSUWL7VwufzoaWlBfPz80XzHgGjkDU1NSU2R9Zz6NAhNe0yD3nv\nvfcCKLB15oT5nEZGRvRcyGaYj8xms3od88svvfSS8kY/+tGPABh70EtKShCJRCyf/+Ug6OHhYd0X\n50ay2BcMBnUf5hY25jT5DMhMnn32WcmWOldbWytdJnNhQSIcDovps/hTV1enVhlGQmRb58+fXzU7\n06pg+1V/f790g+uRucaZmRlFn6wfuN1u5dNpD1iIOXnypPa/M7dbW1srHWfOkeuhpqZG0RALkvX1\n9SoqsZZCOScSCYRCoXXPKbC2htuwYcOGBbAhRsmZieFwWJafXpLV0qNHj8oj09r7fD7l1OiF6dEz\nmQweeughAEYe6Pbbb1d+gh6H1cOHHnoIjzzyCIDidiJ6EXor5t+am5uL2IJVwW1gFRUVOHr0KABj\nCyjZzLPPPisZ8f4aGhrEEMnI6bkvXbqkCvWf/umfAigwROZyeI0vfOELAAp5HzJ3oqKiQoyVn82u\nBrYyWV22PH+ltLRUusncJBnj8vKy8ov79u0DUJAjnwFZtbkTgXJnV4D5/Kdf/vKXAIyoBzBYOlnN\nwsKCngG7Rg4ePAigoA/m/LOVkUqlMDw8jHA4rPY1ypKbJdLptBgic7p79+4Va3744YcBQBtNBgYG\nxAaZs+/s7FTNgrpOGzA9Pa2uDDLLCxcuyH5QZ9nh0d7ejkceeWTdLVgbDr2z2SyWlpaUrGbowMV9\n/vx5KRPbIC5fviyDyt5KCrKmpkblf/4cHx/HrbfeCsAYlEEBplIphZ3mA4wofCoaQ6RoNIqysjLL\njwJjmDc0NKRFzGIBCziTk5NK8DNkvHTpkhSEQ09ZfGlvb9dCZwjY1tamhcoCGcOk733ve1JmPi+/\n369WGhpsyj8Wi+HEiROWT2tkMhlMTEygoaFh1ZlKLOBs2rRJ/+b9RqNRfOxjHwNgpH7YTnTPPfdI\nh++++24AhR7Iu+66CwA0vPqLX/wigMJaoJyeeuopAAVjyGIHW7xoHDdt2mT50YCEy+VCWVkZHA6H\nZMKdXfx/d3e3nIg5VURDyRZBOu2zZ88qjUES9h//8R+yCwzBn3nmGQAFG8Awn8WykZEROT06NX52\nbW0tMpmMXcyxYcOGjdcL/6O93tPT06K0TJJyYlAmk1k13n7fvn2iuExkk1ZXVVWtapQeGhrCV7/6\nVX0mYLQZtLW1KbRkyDM5OamwhoUQvs/v9+P8+fOWPwDL6/WipaUFc3Nz+q5mJgkYJ0qa0dzcrHQD\n26so61AopFQHQ8DZ2Vm8//3vB7B64O9nP/tZPPjggwCMhHhlZaWYAJ81mfzAwADKy8stz9bZ0jYy\nMqKND4x2yD5GR0eVQmBrWUNDg15HRkK5XL58WcyaLUN+v1+RDHeffOITnwAAfPe731X4xzTU8vKy\nfscojGtheHhYn211uN1u1NTUwOv1qhjIKIWbQ6LRKFpbWwEYa9TtdqttkNENdXjv3r2yI8Qdd9yB\nRx99FIARPVEXN2/erM/ms7rmmmtWHb/MtdXX14fm5mb9fi3YjNKGDRs21sCGtzAyMc4cDHOVtP6b\nN2+Wp2Weq7a2VuyIyVfOVTx58qSsPqfaDA0NySOzFYgtArt3717VNjAxMaHf8bOZe3grTA4CjGb+\n+fl55W1WJvpTqZRybGyqNZ+7zWZq5ocCgYCS6XzNF77wBeU+eYQn80jT09OrzhKvqanRcyGTJ2Pd\nsmUL4vH4ur3ymwW2tXV3d2vDA9mN+dgNyogMemlpSQyUBQJuoYvFYspzMhKqrKwsei7ma3V0dEjO\nbJJ+5plnxIgYMbEAmkgkiqYLWRk8Dph5P8CoN7zrXe8CUGCR1F3zkctc33wO1LWXX35ZOUfzMGDz\nvE7A2BtORgsUz/SkjpNJmush693nDfwPz/VubGzUh/DLMYRwuVxFO3KA4n4pKg4X85UrV1SIYQhZ\nVlYmas2Qnop0/PhxFSsYxtfU1Cic4YMy7+lta2vTGCurgoMbQqGQZMvFbA7LqDS33XYbgEKRixVW\nGlR2CJjPqqZCxmIxyd58njdQCJfYB8drVVdXS7b8Hny+lZWVmJ6efks4IqDgLFi9Zp8j9/5ms1kt\nZHZh3HDDDZItjSidV2VlpYpufP1NN90kOfPMJ8r/+uuvF1ng7+rq6ladVshwO5/PyzhbHYFAANu2\nbUM2m9X90C5QV+bm5qRv1OHOzk4VX7nj5vjx4wAKBpChNO3D+Pi45MTnxzUyPT0tA/zOd74TAHTy\nJmAYZ16rra0Nk5OT9uBeGzZs2Hi9sOE+ysHBQUQiEbU6kOYyLGtubhZ75I6F0tJSJcFXdshPTU2p\nr4/e/v7771coT49vTpLz+gy929raxKLIPNniwc/aCM1+M8DQu7y8XCyaTI1eeevWrQrHyKo/9KEP\nqT2F4QvDt/7+fnzgAx8AYOx4uPPOO8W6OZGJz+aZZ54RS2JCvLa2VqE625DINicmJjAyMmL586ez\n2Szi8bgYMWDcM9ndoUOHxAIZ2Tz99NNqR2HKiEXD3t5etaZQbwcGBtQuR91kaLiwsCDGymG+bW1t\nehZcP0yf+P1+y8uVSKfTGB8fRz6f1/2zn5IybWxs1ImLTE+Ul5crFUKGSLty7NgxzYBg2FxSUqLo\nhq/71a9+BaCQBmJhji1Wk5OTCr3JcLm2qqqqMDg4qLWyFmxGacOGDRtrYEOM0ul0oqysDKFQSO09\nzG8xt/XCCy/IopPhpNNp/Zs/OU8uFovJu5M9dnR0iDUyoUvLHwwG1XLAvEZDQ4OKOWyHMe8CaGpq\nsvzukeXlZZw6dUrnDQPGXmzz8GLKjbkac9MymR/zZCMjI5IbdzKcOHFCTJUtQ3yW9957rzwu/+bx\neFbNHCX7mZubw8GDB9VAbVXwlMBoNCqmRyZHBs1cJGCwzVtuuUUMhnld5hkbGhokI8rswoUL2rPM\niIbPpKWlZdUg5rGxMUVCjMz4vcytXVaHy+VCOBzG0NCQ8o9kfJTlu9/9bhWzOAB6ZGRE98vnQjns\n2bNHsiM7DYfDq9qOGCUkk0nNmKB8N2/eLDvAa1GHPR4PDh48qI0Ya8Ha1sOGDRs2LIANMcpMJqOq\nH1kJ2SPzCMlkUq1DxAsvvCDmyUoW2eMtt9yivZysYPX09IhFccsRG1IdDodaktis6vf75Sl4XX5e\nc3Mzzpw5Y/l8j9frRWtrK+LxuDwiK3RkM0eOHJHXfM973gOgkFfk67l9zrxvlh6YzCWRSKhBmt6W\neaXjx4+vyvEODQ0VzVQEjKrl4uIizp49a/lmfh6zMTk5qTwZGQYZ+uzsrORAlnn06FG1q1Au3/rW\nt/R+ssvvfOc7AArzUc3bcAFjKo45l8vKtsPhWLUBg+xpZGRExypYHU6nEyUlJXC5XKumLZnbCJn3\nZltVY2Oj5MS8JW3BwYMHNUmJcnj11Ve1vvmMWGXP5/OKMFn1djqdYvvMRXNNjY2NweVyvTF7vX0+\nHzo7OzE4OCjF4TgzLta6ujr1kJF27927V9SaAqTCNjU16ctyMT/zzDMK9xiGmofSMnnOhzI1NSWq\nz9fzNWfOnEFtbW3RcFUrwul0orS0FH6/X2EFnRBl9uKLLyrsZRhjPnPo29/+dtH7otGojNpXvvIV\nAIUdJdxvz32wNBpmpTG3BK1sx+KidjqdaG1ttXwfpcfjQX19PUKhkJwsHb15RgDTR2xRSSaTmmFA\nfaex6+np0bWot1NTUzJ0NAZ0IsPDw9J5Lvbdu3frdSwg0fkHg0GtLasjHo/j6NGjaGxs1K4b3g/P\nrtq5c6fCbDrvpaUl6dTKnX7f+MY31ErIQu74+LjafK699loAxvPj2gEM/bzrrruUcmN6iMW4+fl5\nRCIRe8yaDRs2bLxe2PApjPPz82hubhabY2sPae/y8rLagljyb25uXjVGirR6y5Yt8qrcx3nkyBFd\nnx6JFD4cDstL0Js4HA6FkWSSZAL8flZHIpHAuXPnkMvlVjXlc/9rU1OT5EiGPjMzo79TjgzttmzZ\nopYe7oQCjN0l/B0PdkqlUvpMFotqa2vl7RkCcUReLpdDNBq1fOjtcrlQUlICr9erEIzMjQx9eHhY\n8iODXlhYUAqCbS5kovX19WKGHN1VWlqqUJ5MhbJra2tbdTBWb2+vQnXqNxlZb2/vqhSWVeF0OhEM\nBjE7O6v7ZpRBVhyNRlfNaEgkEpI5dZ6sc+vWrWKGbG2bmprSzjsO9Ob6/ta3vqWolgWey5cvr5ps\nxee+b98+DA8Pr3vylc0obdiwYWMNbLg9yOv1IpvNyrLTY7J44na7VYhhe0N/f7/mJ9KrkJ2k0+mi\nob9AIY/AJCxzEsxdDA0NKdfDht+ysjKxSzJRJtEBvCXOns7n80gmk3A4HEp6nzhxAoDBqgOBgHKw\nbEzmOeu/D6lUSsluJr+DwaC8ONkjf05OToqRM285MTGh/By9MZ99LpfD8vKy5acHZTIZxGIxOBwO\n5c7Mh88BhUiIOkr9GhkZUSGLeWO+r7+/H5/61Kf0b6AwFJmyYosW/9/Y2CiGxGdRVVWlZ00ZMr8f\nDofX3Qz9ZsPv96O7uxsej0e6Srnynsm+ASNHmUwmtSGCTJ2M0ul0as0yR7l582b9myyTG1P27Nkj\nWVLmp0+flq5Srow8Z2dnN3TM8oYMJccpXbx4UQrHn3zQNTU1Woik2E8++aSS4CtPSSwrK5OQKMzq\n6mr84he/AGD0rdEY7N+/XwUK/s08GIICMdN2h8OhB2BVeDwebNq0CalUSg+cBoyKtXXr1qJxc0Ah\nvGD4wXCH7/f5fApDWL29ePGiFjEXIiuOt912mwoZDJkOHTqkz2ehgs8iEAi8Zc5MdzqdcLvd0k3q\nHHdueDweFR//+7//G4BRgQWM8+XpzPft2ye5MHzbtm2bHBjJAg1sLpeTjrK7IxwOK8ynY2JXidPp\n1PO3OlKpFEZGRhCPx+XIqZM0mJ2dnRrEy7TO448/LmPF0Js2oKurS0aXBZ8rV67gHe94BwDDjtDw\nxeNxkS8+t9HRUXUykKBRV5eWlpBKpezBvTZs2LDxemHDY9aAQh8dw2qGEfTUXq9XO0rMg3uZpGYx\ngqzn29/+tk5w5E6HSCQij8wdJey/3LZtmwoZ9OS5XE4hIz0M2ebS0tJbZodDLpdDOBxWwWHlCZep\nVEoFMo5Pa25uFrsk06YnbmlpEcNmqJLNZvEv//IvAIzjB+ilu7q6lMJgGwUnGgFGWoOMaHBwEA0N\nDfq+VkUymcSlS5fg9/slP/PfAODw4cNiHdSrxcVFsRmyaaaA8vm8CjGc5LS4uIjDhw8XvZ6yPXz4\nsNYDWdfQ0JDWCpkk3/fKK68oWrM6MpkMpqam4HA4xIKpg2SPuVxOxSzq9bXXXqs2tJUppcuXL+vM\nb7LNy5cvq7hG5kmZ1tbW6rOZsqqrqyuyEYCx9/706dMbkq/NKG3YsGFjDWyICiwtLeHVV18VgwEM\nJmk+53vlEQPvfOc71XJ0FV0AACAASURBVLLCxnHmDP/kT/5EOa8vf/nLAAo5MHoiNvXSMzz++OPK\nnzFfNz8/r1wPPTQZ1/79+5HL5SyfR0un0xgdHS1qnGUehqznuuuuU1sVmce5c+fkoSkztqvwVEfA\nkIu5kZlskwW5ixcvinGR4Vy+fFmvpzemx04mk8hms+ve3fBmgRslzHMCyJype9ddd50OsKM8amtr\nJXuefU6m7Xa7lYPnrFMesAUYBR6y8I6ODrF6RlNlZWXKi3I9MM+2b9++ogKIleH3+7F582YsLS3J\nHpAhkvGNj4/rvs3nwlOPqVvM+3Z3dyt/SB0eGhoS6yez5//j8bjsDotx+XxeOVJ+H2LTpk0YHx9f\n91Qxa1sPGzZs2LAANryFsa2tDbFYTPE983/0nGNjY/IirDiZm6jvu+8+AEY18NKlS/LS5jH7zPtw\n5Dur6svLy2KqzB+NjY2tqhTz//F4HKWlpZZvYfH7/di6dStOnz4tL8fKIZmFuaWBMjhw4IDaduhR\nzdtL6bF5/263W1sYefTq3r17ARSigZXtW36/X4yVnQRkYzt37nxLtAel02mMjY1hYWFB7T7MaVOP\nS0pKlA9nDjyfz6tNjWeaUxZbt27VM+B8yUOHDmlrHeXHXF0ymdRzZP793LlzYv9cR1wX8Xj8LXNc\nLfd6p9Np6QZ/csPDzMyM5MXoc2pqatVWR26r9fv9iqy4ESUQCGgzCyNE83nr/CzamvHxccmXz5E1\njHw+/8a1BzkcDvh8PuTzeYVjvBmGEAcOHFArEL/wc889JyWk4WNxp7u7WzsVqCROp1NKxZCE+2nn\n5+elVKTTi4uLEjAFyMJQOBxGMBi0/NnT7EksLy+X42DagQbwueeeK0pe829sceG9s7gSjUZ13319\nfQAKC5atKGyjoKHLZDJKljP0zmQyMth0fEyjBAIBpNPpDSncmwWHw4Fdu3ZpMRGUxdzcnAwT79Pt\ndsvxMg1CB5zJZPQMuEtkfn5e8qZMGZ5ns1kZSBrRbDYrA8Fnbt5jzzVidSwvL+PkyZNobm6W02Zb\nGg3m/v37tab5s6KiQiE3ZW8+soGpIdqY4eFh2RQePUPH3tfXJ1tBu9DS0qIdVTSY/OxcLodQKLTu\nEYF26G3Dhg0ba8CxkYOhHA5HFMDgG/d13lC05PP5mjf7S/wh2LJ94/AWly1gy/eNxLpkuyFDacOG\nDRv/F2GH3jZs2LCxBmxDacOGDRtrwDaUNmzYsLEGbENpw4YNG2vANpQ2bNiwsQZsQ2nDhg0ba8A2\nlDZs2LCxBja0hTEQCORDoRBcLpe2ra3c55tIJLSFjlvqEonE7z0QDCjMWOS2PPM2Q16Dk2n4/1wu\np61K/Gyfz6f9zfzJ12cyGTidTszNzWFpacmye+2CwWC+vLxck7gBY4YeZZXJZHR/3PKVSqX0O76O\n7wsEApqeQhnncrlVMuKEHK/Xq+fE/lqXy1X0b8DYzuf1euFwODA7O4t4PG5Z2QYCgXx5eTkymYxk\ntPKnx+Mp0lcARZNlKD/zmevm50LwPSv3aXs8Hr2O7zNv/zT/DijI2jSXdMrKDeclJSX5cDiMbDa7\nSre43s17q7nF2Sxz3rfZTlCWlJvX6101qYqf5/f7dY3fd5oBP5vbIROJBAKBAGZmZrC4uLim7m7I\nUIZCIXzkIx9BaWmpFIf7kHlTFy5c0D5P7gc/d+6c9mhyHy0FODw8rL3EHDjgdDo1WonDNrivdnFx\nUftzOeSzvb1d+2f5k99hZmYGwWAQ3/3udzdyq//rKC8vxyc/+UkEg0F9dyoUlW56elr3zsHEg4OD\n2vvO13Ghb9u2TXvrOT5taWlJ1+CACO7PbWlpkSJR6cxnt3CAb09PD4DC0A6v14tvfetbr6coXneU\nl5fjox/9KGZmZiQj/uT91tTUSEdXntAIGGPAuBc5EolIh7knO5/P6z3mUYRA8amN/MyhoSEZVF6L\nI97C4bDW1l/+5V9aetdLOBzG5z//ecRiMekW91tT71KplBwtz7lpamqSzDnngf+PRCJyyBym0dTU\nJPnzWvxbd3e3hrZwToHZyVO+XDe9vb3YtWsXvvGNb6zrHjd8XO3s7CxCoZCMGsHN/R0dHfqivKmS\nkhIdicqhBFSC0tJSzVg0Tx6hkDhphMobCoXkMThIYHx8XA9k5SFFi4uLRazLquCU6EQiISWjs+Bs\nw0AgIBnRWPn9fhlGLn4awGg0Kg9NJdq0aZOcFX9H5clkMlJYemDzFO6Vs0FHRkY04d7KcDgc8Hq9\niEQiWsjUP8piZmZGOkxD1tXVJV3mnETqYyaT0RHNnL507tw5TcCiE6fhS6VSkhsdm8vl0vQbrgu+\nr7KyUkbD6shms4jFYmhoaJBcVw7LmZ+fl8PlAJv5+Xmtcz4XTs/PZrOyC3zf9PS07Ij52GCgcJ4O\nbQDlZj5KmfaA04M6OjoQjUbXfZbWRkNv7Nq1C/l8XouXBozTgVKplLwqb8bhcIgy0xNwCks6nZa3\n5uSUQCCga9Ag8ECskydPinFRyIFAQMyJLJYCaWtrw/T0tOUH9+ZyOSQSiaLwl0rGQadzc3Ni1lyk\nZWVlGu1FxsL3Ly4uSrZ8FhMTE5piQ29Mo1hZWanXcXJLLpfT66mA/MlIwOqy5UJubW3VPfM78//L\ny8uroqPx8XHJnrLlFKYdO3bIUfN3XV1dui4H2NLxzM/Py8lRt7ds2aLIjLKkc+zt7dXrrQ6Xy4VQ\nKIRsNqupXZz2Rdls27ZNsqbtMA865gQsOowDBw7I2JrTdSQDfB8Jm9/v13g8GttcLld0tARg2Ayn\n04nFxcV1Eyhra7gNGzZsWAAbYpQcgMrwGzCOGHjppZcAFHI9zM8wXMlmswrzyPjoSYHVie9IJIKT\nJ08CMEIkepLOzk4N+6TXnp6e1oxE/uRQ31wu95aYlwgUvuv27dsVrpF9k4GYj98kq6uurtYxGGSP\nZESTk5MKFelJ5+bmdD16asq6q6tLoQjzbp2dnXpWPGqCz6Kvrw+JRELhjVWRzWaxuLiIkZGRokGv\ngJEyymazkgd1OxKJKE/MNBL18ZVXXtE1eB74yMiIwj8+A+rhwMCA9JDh+eTkpCIrsiHzAW5WP2KD\nSCaTOjKEusKfnBsZjUYlJ8pyfn4ehw4dAgAdw0Fmuby8rOfAUH1yclJrn+yU0U4qldLaoA7Pzs4q\nAmNkwBCfR1Os1zbYjNKGDRs21sCGGKXH40EkEkFra6tyk2QeZIoVFRWrJnMHAgGxI45k5/9jsZg8\nM/MF586dk0fm9Wn5zSyJTNTtdisvwZwEmUJVVRWam5uLGKwV4XQ64ff7MT09veooYN47GSNgFGyG\nh4cl59/85jcADFZ9xx13qMJoLiSwWHT99dcDMPJJAwMDegYvv/wygAJzpbdnpMDXNDc3b3ik/psB\nr9eLxsZGVFRUiLmRra2csA0YjKeysnJVlZysJRQKiZ3wvRUVFZIVc4382/z8vJg3r5FKpRQ9MEdp\nrv6SNVkdHo8HjY2NWFhYUI6bpxZwYv74+LjYOddic3OzXkemSHlcunRJkQ9fU1NTI4ZO5s1nsGvX\nLkWwzIvmcjkxdnNBFCjk7BsaGtZ9jInNKG3YsGFjDWz4uNrXXnsNpaWlynmxb5GWuqKiQtabntPM\neljeJ1N0Op3yIkQkEtHvmFMiC6qtrRWbJbOpqalRDpQ/6b0mJydRWVm57mMp3yw4nU6EQiGEw2Ex\nNMqY/4/H42qVoEeNRCJiSax+U3YTExNiTGQqmzZtEjOkrNjekkql8OKLLwIwznrp6ekRw6WHJ5t1\nu90oLS19y1S95+bmVEll2w/lWV1dLXbBXGxfX59yjszFm3OV1Gnqe3V1tboFyAbJsHK5nF7PqKq9\nvV3XYyTEzxscHHzL5CjdbjfC4TB8Pp8YHNc3WV5XV5dsBXO0jz76qBgh2TZ1ra2tTbpLWVZXV6t6\nzY4Ds07y4DHq7muvvaZuBX4mo9fFxUX09fWtW8YbPoWxo6MDs7OzCtcYZnPxxWIxhSlcnFu3blWb\nD0MSGrlwOCxhUVGz2WxRPxmAooZyUne2AEUikVXnIzMBHI1G4Xa7LR8e5vN59dpxobL1wXwo08oT\nGnt6eiQ/HoTFBZlKpWQQqFjLy8uSGxcsi2JjY2O6FkOm7u5u/PKXvwQAHcT03ve+F0AhXKqoqNDz\ntiqcTifKysqQy+WkO9Qr86Fr/Budcy6XkyGl3JliunLlihwSW9dOnz4tw0hnQn1sb2+XzpNAXLp0\nSXrJ91GWgUDA8r2/ZrjdbiSTSX1/9uY+88wzAAoyWnnWeT6fV8HmuuuuA2DootvtFgGg86mtrZVN\n4dqg3NLptHSdtsjlcun5PfvsswCA3bt3AyiQkMbGxnW3YFmbCtiwYcOGBbDh42pdLhfq6urU4E1a\nTC8RCoVEmRn+Li0tqexPNsNQOpVKif6SbQLF27wAwwv39vaq5YBePpFIFLFRAHj11VcBFNozUqkU\nrH42ENm6x+NRIYqtDZRPPp/X79jYe+bMGXzuc58DUNzSAwBPPvkk7rnnHgDAz372MwAFGTP9QTky\nkd7a2ir5dXR0ACiwMTJVhvZknbOzs5iYmJDXtircbjdqamrg8Xh0f2ypIkPcunWrimAM59rb29U6\nRSbCyKWyslKsnlGVx+NR6EndZyRUXl4ufaUuzs7OSuf5OsrW6sVHM3hc7c6dO3VvZIbmTQnUS0aL\ni4uLYnQMudn2Vl5ermIm9f/ll1/Ws+FzO3jwIIBCozrPXmdKqbOzUxEDdZy6WlFRsaH0hs0obdiw\nYWMNbIhR5nI5xONxTExMqIGTzIM5yGw2u2qYw8LCgjwmmSHzO62trcrT0AslEgm1AZBdmScS0fPT\nW2SzWeVM6a3MU4euXLmy7j2dbxZSqZT2q/L+6GXJOsbHx8XE2e7znve8RzkcFlXYTtHR0SEG/8EP\nfhBAoRjBtiAmxg8fPgwAuP/+++WxKb8zZ87gtttuAwAVesiqDhw4gHg8bvliTjqdxtDQENLptHJn\nlB9ziT09PfqbeeISf8d8GRlTTU2NoimuhXQ6ra2lZOt8NslksmjLLVDI47HYwQiKxRzzNByrw+l0\nIhgMIpVKiSGSEZPdLS4uSk5c2/F4XHaAzejMz7/00kuyLWSDTqdTkSLBiPP2229XMYfXKi0tlS1i\nfp2yB7ChKHPDobfb7UZbW5sSp0yucmGVlZXpy/DnxYsXtRecITrD82AwKOPGJPqFCxckAAqJxrS8\nvFyKTEFOTk4q9GbCmAtgdHQUZWVlll/MLpcL5eXlWF5eVnGARo6hLw0UYKQYnn/+eRlPKiUN3z33\n3KNwhwvY7Xbjxz/+MYDC7hLASH63tLRI0Z9++mkAhbQJP4thpbnIMDMzY3kn5Ha7UV1djWg0qvtj\niEdDFQgE5Mwp94sXL0on6bwYPg8PD0uHjx8/DqCgcwwFV06zMg+4YNifzWaly0yl8PpdXV3SZavD\n4/GoJ3Fl1wn7mzdt2oQDBw4AMHaCdXR06HeUOQ3hwYMH5ZjpbAYHB6V7lBONYzweV0HIvB+fdmll\nD2skEsHIyMi6C5HWth42bNiwYQFsiFGSYp8/f14s4uqrrwZgeIKamhqFb2xrcbvdakWhBWdbQH9/\nv8IOWn+HwyFPzL/RI9fV1SkhS4bjcDjEtpgAZqg0MzODeDxuedYDFLxkf3+/vB93INE733HHHWKG\n9LIHDx4U2+H7/viP/xhAIbQ2pzgA4Cc/+Yl2j9x6660AjFaZz33uc7jpppsAGOHk7t27JXsyJ4bs\nmUwG1113HZ588snXUQqvP5LJJPr7+9HZ2Sm9oszMhTIyd7KbLVu2SIcpD+p2MBjUrie+r6ysTCyQ\noSeLM36/X8U2pokWFxcVTfF97PcbGRlR2G91cETg8vKy7ts8ug8o7JwhkyRLDwQCSi8xumFf6dNP\nPy19NrNIRpYsarJIvH//fkWrbI+LRqO6Hp8D0xnBYBCLi4vr7q+2GaUNGzZsrIENMUp6ZqfTqYTs\nylHuiURCTI+5go6OjlVlejK+7du3r8r/bNmyRX8375wACp6WHp/Fn46ODjEs5kjocVpbWzE5OWn5\npmhOuCFLAwzZMo925swZMRDzvmvKiPmXY8eOASiwGjJKXqunp0d55b//+7/X6wDg3nvvldyY452e\nnhZjetvb3gYARUObBwYGLN8exBkFFy5cEDMkS6Zcuru7V7Vl9fX1rZrPybaUXC6nogF1emJiQtc1\nH5cBFOTE3DPllUqlFImt3FVlnj1qdbhcLpSUlKCtrU2sjjrIHHl/f3/RfFqgwPhYqGSLFdf0z3/+\nc72O0WcsFsPtt98OwGCq1MlXX31VNoJMdHl5WcyW34NtjdPT0wgGg+uuXdiM0oYNGzbWwIZzlKWl\npaivr9dUFObPyECCwaA8B/OLc3NzRS0RgNEcffToUf2O3vfixYvKHZGpkm2SHQBGLiIej+t6/Btz\nEvPz8xgdHbX8vll2FHR3d4tNk8kxpzM/P6/fsUoaCoU00+/v/u7vABjsm+wfAJ577jkAhdYh5nHZ\nicDWrpmZGW05+8hHPgKgwKQoZzJdsp4TJ05Yfg89UMg/ZjIZRCIR6QkZHxmmw+HQvZgPoGKbD/WH\nE7h37Nghdknd9vl8YplkVoxwOjo61MlBdrq4uKiGbOaNuQa2bt2q/J3VwY6NhYUF6SrlS12cmZmR\nDjLyeeGFF6SfzF/+PlAXt2zZoio5oyK2aO3cuVOtRWTpTz31lBjnysMHt23bhvPnz6+7RWjDhjIQ\nCCAajUo5zOPVgIJSkvqygODz+WTwGGZTQJs3b1bowoRuc3Ozwmtel0n18fFxbXrnw8jlcqLnK0P1\nY8eOoaKiYt3jlN4scDEPDg5KVpQfFSAajepvDL3dbrdaXr761a8CAP75n/8ZQGHxr9xB9d73vleL\nkTLiYvX7/VIkGpRbbrlFTodOkYaTx4JYXbZutxu1tbVFfXUM8WgAT58+rd03LFqVlpZKl0kMKLul\npSUZQaZDPB6PZEWd5vWdTqdCb6YuIpGIFiq/F5/J2bNn3zJ9lKlUCiMjIxpdBhizAmi0enp6JIuH\nH35Y76WzJriO29vb8eEPfxiAMeTiwoULIhFMcXC9x2IxFTppF7Zs2aJWLH4frpWxsbGikzTXgh16\n27Bhw8Ya2BCjTKVSGB4exv79+1V2X3ksQ0NDg7wjPWcmk1G4QWbI95WWlqp5nZ7ZfD4wmSXbOgCj\nG5+7GEKhkEKdlcet1tfXY2RkxPKTWDgKzO/3i2Uw9KLMduzYsWoU2BNPPKF7ZovJjTfeCKCQ1uC+\nbj6fcDiMBx98EIAxXu3mm28GUPCybH/h8/rhD38oZktWSllWV1fj1KlTlmc+nFFw6tQpFUjIRBjC\nbdu2TS1mlIvL5VIRku9j6qOkpERtPuYiEK/HdBLlXlVVJcbDv5mPnyDbMq8nPgOrg0OnXS6X0jIr\nd+aYIyW2QDU2NuLEiRMAjLQOf+7evVthMws9XV1d0nvqKSPTy5cvF82KAAoslrq70o7kcjnEYrF1\n667NKG3YsGFjDWyIUZaUlOCaa64pOjKA7JGe9vz589paaD7zeeXWRbKTS5cuFc1KBAqelh6DDe3m\nPchskKb3GhkZ0WeylYZsrL6+HqlUyvLtQdwGxhwuYHhS5q3i8bjkTk9aX18vJk5mTq950003iTnx\n+Zw4cUJTVihHsplIJKIjIPhzbm5OxZ677roLgLGX9siRI+jq6hKjtSry+TxyuRy6u7tVBDMXTYAC\n66Q+saiTy+UkZzIZNtvPzs6K3fNavb29Yij8HPM58/yb+djWlYVJ5oaTyaSej9XBoyCOHTtWxPAA\nQxevuuoq1TM4eHvTpk1i6qx5sIHc4XCIUVNf/+mf/knyWblF0uv1rprz0NTUJBky2qKcfT4fstns\nuvPrG55w/uqrr6KsrExfkGEh0dLSonCDN9PU1KQFzqQ4BVNfX1+024E3s3LAg/k8Xn4mr1lfX69U\nAGk9k8ihUAiBQMDyY6symQzGx8dRUVGhBDNTDJTjli1bNGmbi25paWlV9ZVKceLECcmRDqe3t1fh\nHQ3cY489BqBQLHr3u98NwCjwjI6OKmz5x3/8RwDA/9fetwXHWdfvP3s+ZZPsJtukSZOmSZqeoS20\npSgWkIMKiMjoqOA4jA7jjCMzKJdeOOO1o+OMF14gOIhcgIwO1AOCQkHpgRba0DSlSdokTdKcj7vZ\nU3b/F/t7nn2zq5Puf4q8Hb/PTdrs5t19P+/n+/08n+P34YcfBlBQ5oWFBduHNXK5HBKJBAYHBxXU\n50ZGGdfX12tR8X6rq6slBxoOyj+fz0vnmPBpb2+Xq87NkEYlm81qs+XnjI6Oyt3nGuBzdTqdth82\nTXDodHNzs3SQxp26cf78ea1bGqfGxsayRC7fk8lk1MfN8FFtba0IENcz3x8KhXQNynd8fFyvk4zR\nGIZCIcTjcdOZY2BgYHCtUPFREG1tbXC73WVBUPZyt7W1ySLT3bV2cvB3tDg+n08uJmlwNBqVC8rf\nkZKfOnVKJQhkTvl8XpaMTJKWamlpCRMTE7avo/T7/di6dSs++OADhSfIMqznkHCqD8Ma4XAYn/3s\nZwEUwxtkOG+88YZcDdYDbtq0SUkFguUad9xxh+oEWaYRi8XkKvF4DVr1ubk5ufR2BhNl4XBYjI9M\nkfo4NjYmnaHXMzY2JgZCRmI9M5qs0XrWNNk9r0F3kGVDfB9QeOZ0PSlT6nYikbC9zhL5fB6ZTAYN\nDQ1lTI/yDYfDKlUjy4xGoyrfoZtN76mmpkZ6zylCKysrej/lxNcaGxvLwhcOh0NeE/cF66mQlZQN\nGkZpYGBgsAYqYpRMsqTTaRWBMlhNFuRyuWQxGJ+ZmZlRLICWk/GXmZkZlUtYDx1iEJiv0ZLkcjlZ\nKU7XOXHihDoC+Jn8vJ6eHnR2dtq+KDqVSqG/vx8dHR1iJbx3xrbS6bTug6+RdQLFqTQ/+MEPABRk\nTctOlj80NCTLS5n95Cc/AVCYY0mGQ8Y1PDysPmQ+H17T6XSipqbG9rJ1OBzweDyYmpqSzlBv+d1b\nW1sV42LZWVVVlXSNsUx6LuFwWOUofM+6desU+yTzpNy3bNmi9zHp1tXVpeJ2Pgsy9AsXLohR2R35\nfF4zB5g8pH4yRn7kyBHpsbX8jZ1R1F2WV01NTeG1114DsLpAn/JkPoPeUzQalRdE5rpz504xScY5\nGb+MxWI4ffq0iVEaGBgYXCtUxCi9Xi9aWlowMjKCY8eOASif0zc2NiZGyfhOPB6XdSSbYWbc5/PJ\nqjKekMvlytq9aPldLpcKfBkzCwQCsjSMXbCkpa2tDdXV1bZnPeyXnZiYUHsiY4lkyY2NjSonYdH4\nI488IhmRDVrvldciI3rooYcUp2McmEW/tbW1ZW2KiURCcVHG3awHaF0Pvd4OhwNOpxPt7e1ifLwX\n6+FWZHXUoXQ6rcw2X2MMLhAIiBmRyfT19am6oPQsdJfLVVZ5sby8LJZF/SWjqq2tVamb3cGKjVQq\npf2AciPz6+joUKyb63z9+vXSQd4rqwCWl5clc+4FXq9XbP/FF18EUKzmGBoaEnulDmez2bJmCcY0\nb7311op0t+LOnOHhYQQCAS1G9l4yueD1eqV81rOnKRAufipqJBJRMJwJnvn5ebl5vFGWB8ViMX3W\n0aNH9dmlQzSYvDh37hxCoZDtF7TL5UI0GkUul5NseFYNcccdd6hkgsFva9cRBwbwfJxXXnlFysln\n8dxzz2ngLDdDKvNdd921aigvUHhefBZc6PzsPXv2YHZ29ropD4pGoyrvKe0gSaVS0lvr8Qw0NEwQ\n0N0eGRmRsWe/stPplJ7RGFG2o6OjSiRwQWezWW0s7GChW15XV6cQjN3BEYGdnZ3SN4JdTt3d3ZIT\njcPJkydlIPgcKPuenh7pHc+RX1xcFAHi8+MG29bWptes8yGYhKNec22dOnUKKysrVz0Uw7jeBgYG\nBmugIkaZyWQwNjaGqqoqMTdreQVQoNOlB/8Eg0Ht8nyNtHpubk6skeU+sVhMv6OrSYbT3d2ta9DV\nXFlZUXKI34Ms1e12Y2RkxPb9yMlkEr29vdi4caPYuvXMaaAwlooMhMwjmUzKVSSz+9znPgegIAu6\nQEzAZLNZJeLootDCz87OyvV54YUX9BoTIGRQvNbi4iKi0ajtu55yuRySySQWFhZUpkN9YnLG6XSK\npVjnETDMQGZI172xsVH3zWL0mpoaJR3JVKjH+XxeiQWyp5aWFpVjUc+tzQZMcNgdPDe9r69POkt2\nTnl7PB79zppQYdiHukvPMxgM6v6pw0tLS/KCuJ/QQ2hsbNQ1yCw3bNigPWjfvn0AiuVaoVAIy8vL\nOp1xLRhGaWBgYLAGKqICfr8fnZ2dmJqaknWgRWY5z/z8fBkT6uvr027PGAR/Wv+WpRHJZFLshZaZ\nQe5oNCq2yHjIvn37xAbIrvj9lpeX4XQ6bX9crdfrRWtr67+dWMOhrhs2bNDMRFpet9stdsR7pNV9\n/PHH8dJLLwEAXn31VQCFwn3KqvT4DJfLpb+1HkPMOB3jPdYY29mzZ8VM7Qq/349t27ZhaGhIcuM9\nURY1NTVKvJDdjY+PSzZ8n1U+fD/j4alUSoySDRIsVXG73WIz/BmPxyU7Xovs3ul0Kmlpd6ysrGB+\nfh5btmyRvAiy7u3bt0uP6RG2tLRoj+A6JwNdv369mliYu2hqalo1VxUorvPFxUV9NvcRr9crhs7n\nQN3dv38/ksnkVecuKtooOVy2q6tL7glvjD3Wo6OjcnOpBD6fr+xMaH5ha/aQitHY2KgNga4J6zSH\nh4e1UTJB8d5770lZOSmZmbXW1lZcvHjR9qcwptNpDA0Nrcr48965SKPRqE485Gi0e+65R5saww4M\nXO/evVtnG9Gdz+fz2iwoE2bEnU6nlJLuUX19vRY2Fdc6LTqdTld0kPwngWw2i/HxcXR0dCi8wwVE\n1/j06dPSKyYRZ5jBKwAAIABJREFUOjo6dM+UB+91y5YtSvAwXBEIBLTR8VnQZZ+dnZVO83k1NDRo\ng+SC5cbi9/u1pp555plrJYqPBR6PBw0NDRgfH1/VRQYUx9nl83m5y9zsjh07JpLEygHuHUNDQwoz\n8T2ZTEbT/LkpkpS9/vrr+je/g8/n06g2uuNMKPX29sLn8131vmBvmmVgYGBgA1TEKOmaWXu3WeNH\nWm09EZGBVOs5N7QcZD3W0VdMGvT09Ginp/tJaxSJRGSR+LtkMqm6NbpUDJjTstkdPp8P7e3tGBwc\nFOuhRSXTOXHihFg0WeaRI0d0r9ZaU/4dS6nYdZLP53U9WmCynrq6OjF9egqTk5MqqWDdKp9XJBKB\n2+22/WSmfD6PfD6P/v5+6Yl1QhBQ0FveO+9ndHS07AwmdnicP39eYR4m1mpqavS31F96XpFIRMyI\n6yOZTEq2XEeEw+FQ6Z3d4XQ6EQqF4PF4pLsMPZApz83NiSHTgxkfH5fXSdmQDc7Pz2v/IOufn59X\naRtLrViDvXnzZoU9+EwHBgYU4qOnxGfscrkqms5kGKWBgYHBGqi413t+fh4LCwuynIzn0NIGg0FZ\nUZah8G+BIpOkVe3p6VlVxAsU4jOMo5FRsozA4/EoDmSdX0nLQavCxENzc7MSOnYGy4P8fr9iWTwb\nmQHrSCSicgjK/ezZs3qdDIfxtJdfflnxMw42djgcsuhkSdYkEFksY73ZbFYMngyUxf1nz57F3r17\nr4vyoIWFBbS3t0sP2eFBhtLe3i4d4/1Z9bd06Ky1j5jyW1pa0rqwekBAQY70xHjdU6dOKZbO72U9\nbfR6mh6USqVQU1Mj9sfGEiZW6urqyjqNbr31Vu0V/LvDhw8DKAzr5VqmnkYiEcmLr5GBMk4KFL2n\nQCCg5BuTztYjbLxe71Xrrr13DwMDAwMboCIqwCksra2tiv0x1sOdPh6PaxcnE7l8+bKye8xeW8tb\nSmf4BYNB7fSM0zDzWltbKzZA6+50OvU9brnlFgDFmAcnmti9hZFnpgeDQd0XYyjMgu/cuVOWmnK0\nMiHGZsg2A4GAmAqnuYyPj4s1UrbMTCaTSf2OzGh5eVkMld+L/6+pqbkuJpz7fD5s3rwZly9flh7Q\nG2HbZ09Pj+JeZOHj4+PSOzISxtTOnTsnr4is0eVyaR1Qjow9JhIJeV1sx921a5e8AbJNZn3j8fiq\no1TsDB5Xe/HiRbE66ixj6efOnRNrZEzX6/XqfukR8p4HBgYU52SpoPWYbMbZKdP3339fMuTn8NkB\nRWbL9bO4uIi2trar9jQr2ihzuRyWlpa0KQHFBUjFyOVy+sKkxVu2bNHCoztJV3BkZETv54LdsWOH\n3EO6k0R/f79cdKKqqkqbMzcNKmxLSwsSiYTtN0q32436+noMDg6uWlxA0T3kSXdAUVGGhoa0UCkz\nyqKhoUGLnuURra2tSjTw76wn5lnDH0DBpeH1qHjcLCKRCPr6+mzvIqZSKfT19WH9+vW6Z+ocF6i1\nq4byiEaj0nW+j+VBTU1NZSc5JhIJLUhuxHwmqVRKZIGG/sqVKyIH/D4Mu8zMzGgTvR6wsrKCpqYm\nle3wvqgbXq9XrjdfczqdkmHpqav19fXaIBl+YzgIKO4t1rVhPSETKNROsgOQ34vJuUQiUdFQF+N6\nGxgYGKwBRyXFwg6HYxLA4Mf3dT5WbMzn87FP+kv8JxjZfny4zmULGPl+nLgq2Va0URoYGBj8L8K4\n3gYGBgZrwGyUBgYGBmvAbJQGBgYGa8BslAYGBgZrwGyUBgYGBmvAbJQGBgYGa8BslAYGBgZroNKj\nIPLhcBher1etdGyHY8+mz+dT2xJblThdhP/+v2vp/3w/+y7z+bxeL33N4XCoB5ptZT6fT9e3fFd9\nv2w2i6WlJSSTyasfQPdfRigUykejUWQyGcm29Jxi632yvc3pdJYdnMZ2MI/HI1nxZzqdLptbaZ2g\nUnpoXCaTKZtgzr/jcZ+Li4tYXl62rWz9fn+ebW2l8uC9BQIB6RP7ia3tbaUySKVSej7Uc+t8ydJZ\nh2xHtb4/nU6XfQ/rGuD3GB4enrJzwXkoFMrX1tYil8tJN6izbAfN5XKr1jCAVTMC+Jp1XiTlb91j\nSmXO16yTyrk2HA7HKl21wu12I5fLYXZ2FvF4fE3drWijrK+vxxNPPKE+VqDY58oFlkql1MvKBvT6\n+noNweAATfZqjoyMaBgtN4GxsTEJs/S8X5/Pp8/iEIi6ujr1iFK52CcaDodx5coVvPzyy5Xc6n8d\ndXV1eOqpp3D8+HHJl330PCJj586dGjJAQzA3N6e+ecqPytTb2ytZ8ZrW0wMJHnewY8cODbbl8+IJ\nhkBxYAGVMhwOY2RkBL/97W+vkRQ+HoTDYTz00ENwu90aCMJxW9bB0JwTwP5gt9ut/mT2uVNvL1++\nrGdA+X/44YcabszxYVwf69atU78xFy2HdQDFYcgc8tDf3y+S8PTTT9u66yUajeLJJ5/UuTQAys7I\n2rRpk3qwqcOhUEgGgr3uN998M4CCLNkbT5mnUintH9yIqct1dXXqq+d+MjMzo89iHziH5fj9frS3\nt+OnP/3pVd1jRRslz3Xp6urSxsQNjcrV39+vh04lnJqaklLxi1oHEPz9738HUBz0kMlkNLyAs+go\n+I0bN2pIAwU5OjoqheZC4Abh8XhQXV0ty2JXxONxHD9+HOFwWJOguUFytiZQlCnlGI/HpaC8R+tR\nnqWGjM/Q+js+u3g8rslAHB4wMDCgIR3cIKnwly5dwuzsrO2PAuasQutMyNKJ19ZD8SiDUCikifk0\n+pRLNBqVHDmtqbW1VQfDkdVYD7riNBzOS4zH45ppycXNa4VCIa0ZuyOdTuPSpUvo6OjQ9y+dfJVK\npbS5cfKY1+uVASp9Hvv379f5UNTn+vp6XZcGhUMx+vv7y87k4UQuoDgohnKOx+OYnZ01Z+YYGBgY\nXCtUPOF8YWEB09PTq1xhoOhqVFVV6Xd0m+Px+KqYGlCc8jw+Pi52yvl+TU1N+h3/ju78iRMnZH04\n6dztdut0NrqMvNaFCxfQ2dlp+5FVTqcTwWAQiURC90A3mAxzYWFBE+Kt57tYJ2YDRRbu8/lkQT/8\n8EMABReI1/h358HQPeTzXVxc1Ot032mlyfztPuGcaGxsFOvmyC4y9CtXrojBce5mQ0OD5n5ax9rx\nPZQVGcy+ffvErsn46QndfffdOH78+KprtbW16VnzfXwmly9ftv3ploTD4UAgEMDo6GjZ1HyGg9Lp\ntBgl50Wm02mxS+tZREBBJ8nsradWlp7YStx3333yZPnZly9f1l5E8PvMzs6ipaXFTDg3MDAwuFao\nmArkcjmk02kxPlpAWto9e/YoDkQG4vP5ZK0ZDyOr2b9/P7785S+v+p3P55OlZRySMcjbbrtNwV1a\n8mQyKQZUekKjz+e7LqZwu1wu1NTUoKGhQRlSJnPIfvL5vORH1uP1ehXz4pBjsqTZ2VkNVCb77uvr\nk/xo4Sk7fg+g6CFUV1crdsd4m9WaV3KS3SeFfD6PlZUVuFwuxRDJJKi/tbW1uheywaqqKiUHyRT/\n/Oc/A1jtJVG3n332WfzoRz8CADzwwAMAoBik1+sVk+TzGR8fV0yP568zQdnY2LgqU25nuFwuhMNh\nDA0NKQ5LmXAvcDgc8jAp+6WlJTFQxhrpOWYyGcmOHtWRI0f0bBj7pJ52d3eL/XNSfSAQ0B7E5B1/\nbtiwAXNzc1e9LxhGaWBgYLAGKmKULGe4dOmSrCMZCHf4ixcvrjoTAyhYUDI8sqNHH30UQCFeQStt\nPWqAcQZaEFqJqakpWV1a+9HRUTEFxiZpSQKBAMbHx22fmQUKsZXTp0/j4MGDAIrHCJCBTExMiHVT\nBtasHUshyHSs8UXGKkdGRiRnsinrGegsq2JpSiwW07Mmq2d9265du3Ds2LGrzhx+UmD8d3h4WLJh\n/JeMe2FhQQybeOyxx3Ds2DEAUHyRpUC1tbWS31//+lcAhXPPybpfeeUVAEUmHwgE9Ayoi9lsVh4C\nwXOxmQ+4HpBKpdDf3489e/bo+1O+jD2+9tprej/1qKGhAbt37wZQjCtaY+lf/OIXARQ9nunpaTz1\n1FMAinJizDKdTkuP6d3eeOONet7UZ8Y94/F4RSezVrRRZjIZjI6Owuv1arGwBs9aCMpFzAXu8Xiw\nZ8+eVdf6xS9+AaCwYZ47dw5AIRjOmyElJrXmhjk/Py+3nApXW1srN5VUn4vb6XSiurpaQrQrstks\nJicnUVNTo4AzfzL8sLy8rFpG/o6LFYDKhLhh7tixQy4Qn0UqldJGyYXIja6+vl7uCw3glStX9Gzp\nFnEznZ6exk033YS33nrrWonhY0E+n0c2m4XD4VAikAkFa+Cfekvde++997ToWF7C8MahQ4ekk1zI\nb731Fn7/+98DKB7+xmcRi8Vk2K3uIEuvmIj41Kc+BaDwrClnu8Pn86G9vR3vvfeewhc0KNStWCym\n85sYHvP7/ZIJCQDX9sLCgnSQOv6Zz3xGZVpM0ljrKnktkqY333xTes/nRiL1+uuvI5lMljWq/CcY\n19vAwMBgDVTEKL1eL1paWtDb21vWesUEwd69e1WmwqBtZ2enOmNotUmr8/m82CAtQSaTUSCb12DQ\nOxgMqgjYepobqT4tP/9/8eJFLCwsXLXl+KTg8/mwadMmZDIZuYBkHtauGsqdJRM+n0+/oxzJtLu7\nu+XukWk7nU4xIVpsstPW1laxUrLOSCQiBsBnQQY1NDSEcDhs+1MYnU4n/H4/JiYmlJiiXHif27Zt\nw+HDhwEU2eYHH3wg15j6TYb4/PPPy2uhvm/btg179+5d9b6vfOUrAApJID4XspzNmzeLQfFzyPJ7\ne3vlxtsdDocDPp8PO3fulOf2wQcfACgy9vb2djE+6su2bduUlKS3wnDThQsXlBgiO+/u7pZnyjVB\nObvd7rIE8MzMjNx8fi+GWsLhMLZt26ai9rVgGKWBgYHBGqiIUdIy7969W7EHptsZa1lZWVmVeAGA\nd999t6zpnTv82bNnZU3IGn0+n5ghWSatfHNzs5gkLc34+LjYEZkomcPGjRvR19dXUeD2kwDPno7F\nYmJ/ZCdkGT09PeolZlA6FouJPdOSUmYtLS1im7TUu3fvlpUlM2Q86fz582KzDMKPjo7KevP6t9xy\nC4DC85qbm7P9mekOhwN+vx8ej0cxR4KML5FISMd4PwcPHlTZClkgZeH1eiVbPh/r4Acyl8cffxwA\ncP/990veTBBNTU2p5ZaeGdfM9u3bFf+3O5xOJ3w+HxYXFyUTFpKTsY+MjEhvGC+8cuUKdu7cCQA4\nefIkgGKvd29vL9544w39GyjI5M033wQAMUvuQxcvXtQzOnHiBIDCeuEzpRd1991365qTk5NXnYis\nuNf78uXLmJ2dVd0X6fHp06cBFBSIAVMmaTKZjN7Hh0/KPDc3J8rM7pqTJ08qCcHNkG5fR0eHOlF4\nrYWFhVWHylvfv7S0hPr6ett3j7jdbqxbtw6Tk5MyBMwAbt26FUBhMdFVoVxOnDihjY6JL26mS0tL\nqnmkGzcwMKDNkMaErlBTU5OC6kQmk9Hi5WfyewG4LmSbzWYxMTEBh8OBG2+8EUAxBERDPzExoQ2M\nCzqbzereuAjpqm3dulWVHtS9t99+G3/84x/1OlDciGdnZ2WsuBa4wfB167W8Xq8+0+5IJpM4f/48\ntm3bpvsguBdcunRJusXwTk1NjWROXbR2ldGgs074/PnzIlM0Okx+vfPOO2Xfy+/3r9JVoEg+tm/f\njuXl5aueAWFvmmVgYGBgA1REBdxuN6LRKObn58VeaBGt0zloFchszp49q7on7uCkwjfeeKPYKJmL\ny+WSZf7mN78JoGhp/X6/gud0o9LptFwiMi4iHA5jeHjY9skcynbDhg36rpQZwwnRaFR1ebx3h8Oh\nJAFdcGtPMV0ba4cJWSavS/aeSCT0b1r/UCikZ0s3iizL7/djamrquulJbm5u1ncvrdvbsmULvvOd\n7wAAXnjhBQCFchS+j+EkJl048QoAfvzjHwMolAx95jOfAVB8FiznOnPmjJi7NaFEt53fq6enR6/Z\nPVxEsKvs/+aSAiiGbsgwo9Go7pGJserqatU5vvrqqwCAT3/603qNCUvCen3i3zFJwtpxxlAVPc7J\nyUmsX7/+qnX3+ngSBgYGBp8gKmKU7NdsbW1VUW7pJONMJiMGwtcaGxtVSsHXrF0n1onPQGG3v+22\n2wAUC1AZJG5tbVUnD632ysqKWFXp57Bj4MiRI5Xc6n8dmUwG4+PjCAQCKsxlN5O1e4RyYOynpaVF\nz8I6UBkoWGAyf1r2G2+8UbIq7fnO5XJiQNaED5MbtMoM1GcyGfj9ftszSk66rqqqKpv/yDhjfX29\nAvtf+tKXABRkdv/99wMolmORWR49ehRPPPEEgKLn1NXVJRnRs2HXzr59+xQn/t3vfqfvxlmjLHnj\ns+RMhesB7HxKp9OaqESd4f3s2LFDXgrX5o4dOxRz/MY3vgFg9ckH9IasE5a+973vAYBKuXj9VCql\nZCPllslk1CdO74ldg06nc5U3tuY9XrU0DAwMDP5HUXF5UDAYxNDQkDJypRNO1q9fj3/9618AIGZU\nU1NTNqWDJTCpVAr79+8HAPztb38DUJgQRAteWnAeCAQUJ6IlHxgYkKWgBbGekZJIJGxfwpLNZjE9\nPY3NmzcrbsOfZI9nzpxROcm7774LoCAfsiPKhUw7l8spBkamODQ0JAZY2kvscrnEiHjNqakptYkx\nZkomyvN67B5LYwxteHhY7XDMdjOTTwYNFFtpu7q6xIKofz/72c8AFGLz1iMNgEJsmB4NY8JkOQ6H\nQ3MOrD3zfC58ZoxBr6ys2L6HnmDB+cDAgNY5K1Mo5yNHjijGTfYcj8cVY/z85z8PoLimjx8/rvwE\ns96dnZ1inoyBsnphfn5eewDzHydPnlS8/9ChQwCK3tDy8vKqEq+1UHGv95UrV5BMJkWR+cFMxFRX\nV+vf1v5iLkouKgokHA5LgFS8Bx98UDVUfD8VamlpSe4Py4N6e3v1WewI4DWdTicCgYDtFzOPK6it\nrdXD5yKlXNra2srOBWlqatIC5CZKF3xpaansgLKqqiotwNIBGE1NTVJ0LnS/31+2QXLj7O/vR3Nz\ns+2P2UgkEjhz5gxqampkJFjLRx2anZ1VSc+vf/1rAIUzimh8mPSxhnAee+wxAMAdd9wBoDD4gcaN\n8rvnnnsAFPSS4Q8ucp/PJ1eVhIOf53A4rhvX2+FwwOl0IpvN6t4YLqJuWAdUMNzwy1/+Uhsqy3yo\nuw888IBCctS7O++8U5sgu9C4EVv3JG5+999/f9nwayaNDh06hFOnTpkxawYGBgbXChUxShbuhkKh\nsqlBDIrPzMwoCMsyoVQqJfeElpZM1DryncW5Z86ckYVhVf5f/vIXAAXL88wzz+i6QMEKk4GSFZB1\nJhIJuN1u2w+YdbvdiMViyOVyYnBkgWTToVBI7gVZ59jY2KpD2YBiQgsoJnH4WjKZFPumm8cC4IWF\nBTEcPqfp6WmxV77G5xWNRpFOp22fzGEffTKZFIOg/JjsGhoaku6QtRw+fFjJmFIEg0EVL1vnENCt\nJlNiqVZ7ezvefvttAEU2lEqlJDsySTLd6enp66bXO5vNYmZmBtu3bxeTZBMEQ2cul0vF/mSW3/3u\nd+UBcj/gvhKNRiUvstQ333xT7jgL1ZkYmpiYUJiDE4as07O4brg3ZTIZhMPhq/Y0DaM0MDAwWAMV\nlwf5/X5UVVWpAJyxFQZoc7mc2CNjYTfccINia4xVWgO07E0+cOAAgIJ1JUNlMTr/bnBwsKxdcWZm\nRtaKTIglBcFgEOfOnVtVfGpHsDxo06ZNsq6lLNxa6G+NVfJ1shlacWs7Gdn9nj17xMQZvyH7mZ+f\nF4uldfZ4PKuSN9bPqa+vx+joqO2HIjudToRCIUQiESX1eC9kHCsrK3jppZcAFBki2ZEVZJ0///nP\nxbR/9atfASiwJsqWJUD0bEZGRpRQYGvvjh07Vp2RDhQbOILBoJ6B3eFyuVBdXY0PPvhA35+6RR3e\nv3+/mCR1cXp6WjHM0tmrg4ODYtfst9+/f7+aTegR8JpDQ0NKHrO0cHZ2Vu9jwph7TXd3d0XHWFe0\nUeZyOSQSiVULgwkE3szMzIx+x83zo48+kvvI2kAu+MbGRikt3evt27eLkjMr+fDDDwMoUG4q+513\n3gmgQMmZGaZ7yI3V6t7YGW63G5FIBCsrK3qodCFYkxcOhyVbLrCxsbGyIb5MtjQ2Nip0wWEDJ0+e\nlMtIpaGsEomEFNsaGOdGzEVARc9ms6irq7N9r3cmk8Hly5fR1dWlgQlMGlCOR48evaqJ4nT97r33\nXukoDffJkyfx9a9/HUCxc4fPJBAIlJ1flM1mlQgiIeAzicVitj85lOBAb6Aoz9LTEmOxmMJfdINf\nffVV6TPDP5TNzMwMHnroIQDFafHNzc1a50x08RlUV1fjvvvuA1BM5kQiEYVRuA7497FYrCLyZFxv\nAwMDgzVQERUIBALYtWsXent7ZSnJ4GgJNm/eLMZB13jdunViKqTYdFs6OjpEsWl93nnnHTzyyCMA\niomJf/7zn7pmaW1lLpdTgoIWii6kw+HAysqK7VllKpXCxYsXsWnTJoUNOKGJLjRlDRTdt5tvvlkj\nqkpd4EQiITlbkwp07TnFhq/V1taqrIpM/vTp02LwDLNQxn19fbLQdobH40FLSwu6u7ulJ9QHMqG1\n2AUnCvHMlpmZGcmDMtuwYYMSMCwLov5aj6FgP7fb7dYaoUvPRF4wGBRbsjuYiGxraxOjpFzpHQFF\nT4eyfvLJJ1XaRpfaWjbIumqWsb3yyityq3kNekrvv/++kmSswe7p6VEIgNdgB6HX68X8/Lzp9TYw\nMDC4VqiIUSYSCfXKMn7G9Dx36oaGBgWtX3zxRQCFnZ2JGsYjOVDT7XZrYgjjFNXV1bIm//jHPwAU\nyyY2b96sk9tYIlBXV6cSAlpkxpump6exb98+lQ/ZFTygKZvNqoSFRc5MbA0ODur++Lv33nuvTKZk\npEtLSxqoTFy6dEnPqjTQffLkybJz110ul65H68zv0NnZWZFV/qSQTCZx7tw55PP5srIgMpPt27eL\nsZNxp1IpMZynn34aQDE2Fg6HFXd/7rnnABTkwTg74/OU2eHDh8XSrX3j9HwY/6X833333bLefbsi\nmUziwoUL2L9/v9Ydvzu9v/Pnz4td83cLCwvyeCjL3/zmNwAKs2nJthkDHhsbky7y+ZGl7tq1S14n\nY7uTk5PSf5a0MRbc0tKCYDBoyoMMDAwMrhUqYpShUAj79u1Df3+/LAd3dO7Ys7OzKhplXHL79u2y\ntLTItLTWMgjrLETGeji63XqYGS0/42N+v18sjN+DcTW/34+RkZHrooSFk4MYT/l390ILzFKI5uZm\nxYtpgcmSvF6vPABazkgkongyr8t40q5du8S4mC1cXFwUY2T2m8++qqoKly9fvuo2sE8KLDhfXl6W\n/jGOTlnk8/lVheNAocyEmVcyPcYjgSIzZGzszJkzYpKs7uBaiEQiYjpkVm+//TbuvfdeAEXvgezJ\n2k5qd7jdbtTX1yOZTKqlkAyR8Vifz6f5BNQ3a788S9QeeOABAIWqAZahccbnzMyMitDJxKnrnZ2d\nkitZY3t7u8p/+JPvz+Vy8Pv9V80o/7+OgpiampIbYR36yveUnnxmHb3GADXrxrZs2aIbo8vT3Nys\nzZCJDG6mN9xwg9wULuBIJKJEEEswuIHX1taipqbG9qUWy8vLOHv2LPx+vwLUR48eBVBcnO3t7Vro\nlH9/f7+UhguLPzds2KBNl/V8s7OzZSffWTdYGh8+C5fLpZpNJnGsn7Nu3Trby5Z629nZWXYeEQcg\nDw4O4q677gJQlG04HJZsWNLCDRAonvPCMNTBgwdVi0lDY+2S4rqw9uJz3VCGNOgzMzO2lyvh8XjQ\n2NiIM2fOyKBQT7kxxWIxucbUn40bNyqMZh0sDRTqhLnOn332WQDA1772NfXaM6nDcqqBgQFtzpTv\nH/7wBz1L6jrfc+7cOSQSibKhPv8JxvU2MDAwWAMVd+a4XC7cdNNNKk8hpeWOPTk5KWvKBExPT48s\nBV1HWpBUKrXqJDWgkMpnYoIuptVClY4hO3DggBJBBJllTU0NpqenbT+yigdNLS0tyQqT9ViP0WA4\ng1Z569atKqalzOjuTExM6Pkw1LGwsKBSFLqadB2rq6vF5Cmv1tZWsVK66vw5Ozu7arCvXeFwOODx\neHDu3DmxYrrN9Hqsk2+YKFhZWRGbJ3tkOYvL5VJ5FUMfyWRSHWKlJ4t+9atfVRE6n9fmzZvLTisk\nA62qqtIaszuWl5dx5swZtLW1rQqHAcV1Pjw8rIQu76utrU1y4vOgvn7rW9+SvBh2GxgYKCvv4udN\nTEzoNX5mV1eXdJNJIIb02trasLCwoOe/FgyjNDAwMFgDFQ/uDQQC8Hg8Yi+0iAxGX7lyRUySrCeZ\nTMoC0KJbj4vgNfiewcFBsVKyH7Ks6upqWW3+rra2VvEMWmb+f3x8fFVQ165gQDwWiyluRlbH+xwY\nGJDcrGU/ZNtsI2Xp0IULFxQzIisNhUKSLa9BZu5wOBTfIfOvq6tbFQAHigwqFApheXnZ9uVBLIi+\ncOGCGAiTVix0vv3225WI4H1WV1crkcDjRxjrHRgYUJyMZ0x3d3crpklWQw/g+eef13W5PrZs2aLv\nQRkyFj8yMiLGancEg0HcfPPN6O3tVQyY65aeZH19vZgkmfuxY8eUbGRcnkzU6/Wq4YIx9fr6enmK\nlBfzG+FwWMki7jGZTEafTznz+3GdXW3CrKKNMpVKoa+vT905QLFejBlal8uljCKV5bHHHtN5yHwf\nqfDQ0JAWIt9fXV2tm2UQ/Yc//CGAgktdmg0+duyYkjmlbmBNTQ2y2aztF/PKygoWFxfR3NwsF6J0\ngvbs7KwGHehtAAAFxklEQVRCEUywcBMAii4KQxgOh0PXYPIsn89rs6DxYEB7cnJSwW++duHCBW2k\n/B5Uumw2i3A4bHsjRAPvcrlUe0t5UM+mp6fL5BiNRrVx0SWmW/7kk09KX7kBdHZ24vvf/z6A4rNj\ntcehQ4fKukMCgYD0kpsBDf3k5KTWiN3Bwb2xWEy6xcQVdWZ5eVmJFBonh8OhcWyspGD99NatWyWT\ngwcPAgD+9Kc/aUwaDReNydDQkDZWGjygODyc+wif8dzcHHbs2KGzd9aCcb0NDAwM1kBFjNLv92Pn\nzp04ffq0dmYyHFLY4eFhJSFIo48fP66gLcGeb4fDoWt9+9vfBlBwYWhZyU7ZoRMMBsVwmKCoq6uT\nu8lyIlb/sx/Z7oN7PR4PmpqakEqlZI3pojE0MT8/LzbHkiCn0ylZ0W1mbdjevXvFdiif+fl5ueqU\no7WujZbdKi8me/g+fp+uri5kMhnbs/VUKoWPPvoImzdvFtMjI6fenjhxQkcUMBkWDAZXDYAGiiGJ\nt99+W/KjLjc3N6sDjMyc5S+NjY2SOxnl+Pi4GKt1AC1QGDBr99pfIpVK4dKlSwiFQtIFhnfobTQ3\nNysRxr1geHhY3iRfozzYiw0UZ0DcfffdYuVkmdxjnE6nEkJ0+xsbGxW+oifApO+OHTvQ39+vZ7cW\nDKM0MDAwWAMVz6NcWFhAVVWVLCAZHy30gQMHVARqZTG0CjxtjVYlk8lot2cJRjQalbVm4Jes6dSp\nUyrEpnWPx+OrLBdQtGjLy8vo6ekRA7MrUqkU+vv7EY/HxeYoW+t0GsqZhyVlMhndK5NAjAUdPXpU\n12KHSF1dna5L5komNTc3JwtMBrVz507FlPiZtPpXrlxBPp+3fXmQz+dDR0cHEomE4ttMSJFRbN26\nVTFHnut96tQpMRjKino8Pz+vBARlfOHCBa0LJh3o2VjjZvz3nj17JDsyST675eVlxejsjmw2K8+S\nP0uHR4+NjUlOlE0qlVKxPuXATrylpSU8+uijAIqJyMbGRuk/k5Rk57FYTE0m9Lrm5ubUIGCdvAUU\nSrQaGhpMr7eBgYHBtUJFjHJlZQVLS0uoq6tb1WsMFFsGQ6GQyiZ43EMkElEGjxOmGZtobW2VVeHu\n/9Zbb8n60PLT0tbX14sFkGlVVVUp01t6XMGWLVswODh4XRxXu379eqRSKVlNypSyyGazytLSUtfU\n1MiCMqbJTOO+ffv0Pmuva+mBS3wWwWBQ7NQa7ySTZIzSGhMdHBy0fU8yKwoSiYTiXpQpC5CnpqbK\nzkXv6OiQXhGU3cjIiFgQY49Op1PlKnztwQcfBFCI69KLoqc1NjYmT4exUK6ZPXv26DnaHSzoj0Qi\n0o3SQ9a6u7vLJvC7XC7FDPk8rG3PLHejBwQUnw33AD6PeDwuWVqPDCbDZx6EDQButxtNTU1XXXBe\n8SmMPOeCX4CuGul0NBoV7eaDzuVy6qNlvSVr+GZmZiRMLtLbb79dgijdNJLJpD6bNz0xMVFWL8jv\nkEwmUVVVZfuNMp1OY2hoCE6nU2UOdPO4EUYiEW1u3JxSqZSMFd0La18yNwLK9tKlS1JYBr1Z6rV3\n715tqHRD0+l02REQ3KxHR0cRi8VsfxSE2+1WPSjvnffCcpaDBw9KbjTqkUhErvoXvvAFAAUjDhSS\nL7wWddTj8egoCF6LIYxYLKZ/0witrKwo7FF6Fsz777+vemG7w+v1YuPGjfD5fCI7NKrc7A4cOKBE\nIfV69+7dMhrcKKmnkUhERt56phM3RtauMjTi8XiU/OJmzT0BKMqcn9PV1YXFxUVzrreBgYHBtYKj\nktIOh8MxCWDw4/s6Hys25vP52Cf9Jf4TjGw/PlznsgWMfD9OXJVsK9ooDQwMDP4XYVxvAwMDgzVg\nNkoDAwODNWA2SgMDA4M1YDZKAwMDgzVgNkoDAwODNWA2SgMDA4M1YDZKAwMDgzVgNkoDAwODNWA2\nSgMDA4M18P8AeCchultdvhwAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10e2eba20>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"print(__doc__)\n",
"\n",
"import matplotlib.pyplot as plt\n",
"from sklearn.datasets import fetch_mldata\n",
"from sklearn.neural_network import MLPClassifier\n",
"\n",
"mnist = fetch_mldata(\"MNIST original\")\n",
"# rescale the data, use the traditional train/test split\n",
"X, y = mnist.data / 255., mnist.target\n",
"X_train, X_test = X[:60000], X[60000:]\n",
"y_train, y_test = y[:60000], y[60000:]\n",
"\n",
"# mlp = MLPClassifier(hidden_layer_sizes=(100, 100), max_iter=400, alpha=1e-4,\n",
"# solver='sgd', verbose=10, tol=1e-4, random_state=1)\n",
"mlp = MLPClassifier(hidden_layer_sizes=(50,), max_iter=10, alpha=1e-4,\n",
" solver='sgd', verbose=10, tol=1e-4, random_state=1,\n",
" learning_rate_init=.1)\n",
"\n",
"mlp.fit(X_train, y_train)\n",
"print(\"Training set score: %f\" % mlp.score(X_train, y_train))\n",
"print(\"Test set score: %f\" % mlp.score(X_test, y_test))\n",
"\n",
"fig, axes = plt.subplots(4, 4)\n",
"# use global min / max to ensure all weights are shown on the same scale\n",
"vmin, vmax = mlp.coefs_[0].min(), mlp.coefs_[0].max()\n",
"for coef, ax in zip(mlp.coefs_[0].T, axes.ravel()):\n",
" ax.matshow(coef.reshape(28, 28), cmap=plt.cm.gray, vmin=.5 * vmin,\n",
" vmax=.5 * vmax)\n",
" ax.set_xticks(())\n",
" ax.set_yticks(())\n",
"\n",
"plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}