{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Optimization: finding Rastrigin global minimum" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this notebook we will show how to use [Auxein](https://github.com/auxein/auxein) to find a global minimum of a function.\n", "\n", "In this particular case we will use the 3-dimensional version of the [Rastrigin](https://en.wikipedia.org/wiki/Rastrigin_function) $R(x, y) = z$.\n", "\n", "The Rastrigin function is particularly interesting for optimisation problems because it is made of several local minum and one global maxium.\n", "So, given the Rastringing function $R(x, y) = z$, our goal will be finding $x$ and $y$ such as $R(x, y) = 0$." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import logging\n", "\n", "logging.getLogger().setLevel(logging.CRITICAL)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As a first thing, let's define the Rastrigin function as below:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def rastrigin(X, A = 10):\n", " return A*len(X) + sum([(x**2 - A * np.cos(2 * np.pi * x)) for x in X])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then let's plot the function:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAV0AAADnCAYAAAC9roUQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzsvWmUZEd5LbrjjDnV0F09zwNCU6ulniRhjA1PoAeWsa94Mgjws4wtwNjXF/C1ja4fXkv4YRDwjI39vLz8QAwLjAXGNsICFmABBiMJiUEgLGh1V1VXd1cP1V1TTmeMiPcjTkTGOXmyKmvokkrKvVatqsrMM+Y5+3zxxf72Rzjn6KGHHnroYWVgPN070EMPPfTwXEKPdHvooYceVhA90u2hhx56WEH0SLeHHnroYQXRI90eeuihhxWENc/7PWlDDz300MPCQTq90Yt0e+ihhx5WED3S7aGHHnpYQfRIt4ceeuhhBdEj3R566KGHFUSPdHvooYceVhA90u2hhx56WEH0SLeHHnroYQXRI90eeuihhxVEj3R76KGHHlYQPdLtoYceelhB9Ei3hx566GEF0SPdHnrooYcVRI90e+ihhx5WEPO5jPXQQ0dwzsEYQxAEiOMYlmXBMAyYpgnDMGAYBgjpaLbUQw/PSZB5GlP2rB17aAPnHJRSxHGc+lu+pxOtJGH50yPjHp4j6HiB90i3h66RJVtCCAghiOMYcRzDMIy2z+s/PTLu4TmEHun2sHhwzhHHMSilKbJljGF8fBwnT54E5xy2baNcLqNcLqNUKqFSqcC27dz1yd/Z669Hxj08S9Aj3R4WDkm2MnWgR7anTp3CmTNnsHHjRmzdulW93mg00Gw20Wg00Gg0EEURLMtSZCx/bNtuI9IsGevRcb1eR6lUQqlUUkRsmmaPjHt4pqJHuj10D8ZYKk8ryTYMQ5w8eRLnz5/H1q1bsW3bNliWBUopoihqSy9IRFGUIuJGo4EwDGGaZhsZO46TS8bHjh3DunXrMDAwoMiYcz5nZNwj5B6eRvRIt4f5wRhTaQSgRba+7+PEiROYnJzEjh07sHXr1hTBzke6nSAjYz06DoIApmmiVCqlyHhsbAwbN27E4OCgWn6uNAUhBIZhwLKsHhn38HSgR7o95EMS1sWLF1EsFmFZliKmZrOJ0dFRVKtV7Nq1Cxs3bswl1sWSbifEcZyKjJvNJmZnZ2HbNvr7+1NkXCgU5k1T6JBkbJqmkrj1yLiHS4Ae6faQhtTYxnEMxhieeOIJ7NmzB319fajVahgZGYHv+9i9ezfWr18/JyEtN+nm4dixY1i7di0cx0mRsed5MAxD5XslGReLxdx91vPFWehpChkd98i4h0Wi40XTK454jiFLtpJUDMNAtVrFsWPHwBjDnj17sGbNmmcU4RiGgb6+PvT19aVeZ4ypyLhWq+HcuXPwfR8Acsk47+EgzwulFBMTE2CMYdOmTQCQmzPuKSp6WCx6pPscQSeNLQBMTU3h4sWL8DwPl19+OQYGBpZtu8w+CAAwoh8s2zqzMAwDlUoFlUolvW3G4HmeiownJibgeR4AoFgspuRtUhUBtKJh0zRTZNzTGvewHOiR7rMceWRrGAY455iYmMDo6CjK5TKGhoawffv2S0K48u+lEK9UKywEhmEoYk3tF2PwfV+R8YULF9BsNsE5R7FYBGMMtm2jXq+jWCzCNM22dUtijqIIYRj2yLiHrtEj3Wcp8goaDMMAYwxnz57FiRMnMDg4iGuvvRbFYhE/+9nPwBhb1n0g1AA3GQgj4MYzZ3pAzwGvX79evc45h+d5OHXqFIIgwMmTJ9FsNsEYQ6FQSE3glUqljmQMiMnAKIrattsj4x56pPssQ15Bg2EYoJRifHwcp06dwrp163Do0CG4rquWk4S8GHQiDSMmQGyC2QxW0wRrL057RoEQovK/lUoFW7duBSDOqe/7Km88PT2NRqMBxhhc120jY6kA0TEXGU9PT2NoaAiO4/QKP54D6JHuswSdChpk9dj4+Dg2b96M66+/Prc0dzHD925h+iJXStgRcOOxS7KN5YZOeIQQFItFFItFDA0Nqdc55wiCQCkpzpw5g0ajAUopHMdpK/zoRMZy1OH7fq/w4zmAHumucjDGVPQlpV2yemxsbAwTExPYunUrXvCCF+QOhyWWEun6vo9qtYpKpQLHcQAAdvUQ4kpaJUAowBepKruUD4UsshNmnUAIQaFQQKFQaCPjMAxVzvjcuXNoNBqI4zjlTyF/5KSdvk15rPqDVN9ur/Bj9aJHuqsQ+iSOnKE/f/48Nm7cqKrHpqamsGPHDrzgBS/oSj+7GNJtNpsYGRlBrVZDpVLB2NiY8lq44XmCZM0GAy2L7Vt1hnDNog55VYEQAtd14bou1q5dm3pPJ+Pz58+rvx9//HGVnpivJBqA8jHObrdX+PHMR490VxGyGltA3GiWZSEMQ/zkJz9BrVbD7t27cfnlly/oRltIJFmv1zEyMgLP87Bnzx5ceeWVqeKIKIpAqoCZ7KMRtNb71FNPtRnfPNPQbaS7GDiOA8dxsGZN6+nz2GOPYd++fSk1xYkTJ1JmQVkynk9rHIZh6r1e4cczBz3SXQXoVNBACEGtVsOxY8cwOzuLnTt34uqrr17UjdRNpFur1TA8PIwwDLF3716sXbtWWTzqyCNSIxLEu2/otRjx7ldRnhxyVyqVtvzncwm2bWNwcDDlLQGkzYImJydx8uTJNrMgSciu685LxpxzDA8PY+fOnbBtu1f48TTguXVlrzJ0KmgghGB6ehojIyMAgO3bt4NSmpI/LRRS4ZCH2dlZDA8PgzGGvXv3pqK0PJROHELcJ9ILMACzysCKrZt427ZtqWOMogj1eh2NRgNnz57NnYwKw7Att3mpcCkj3YXCtm0MDAy06ad1f4rp6WmcPn0aQRCktMmSkAuFQoqM6/U6bNtWD9pe4cfKoke6z0DMVdAwOTmJkZEROI6Dyy67DP39/YjjGKOjo0vaZl56YXp6GsPDwzAMA3v37p2zcEK/GZnDYQQAiQCeBL2Gx2H4BNzkwFB6OcdxsHbt2lT+MzsZVavVMDs7i7GxsY4yreXCM4l0O8GyLPT396O/vz/1OqVUkfHMzAzGx8fh+77SJssHWBAEc5ZE9wo/Lh16pPsMQqeCBs45zp07hxMnTqBcLuOqq65KlbwuRXmQXQfnHFNTUxgeHobjOLj88svbvA4WtF6fgBUWrjrITkZFUYT+/n4MDQ0hDEMVGY+Pj6PZbIJS2kbG5XJ5TsXGsxGmaeb6U+hkTCnF8PBwyp8i69zWiYyBXuHHUtEj3WcAOhU0MMZw5swZjI2NYc2aNap6LIvlkFMRQlCv1/Hoo4+iWCy2EXs3xyBvMKNBwMr5+0Po0m5CnYw7aWYlGcsChm6ryfKO5dkCnYxPnTqFa665BkDLLKjZbKJWq+H8+fO5/hS6WdBCCj9k0GAYhiLz5zoZ90j3aYSUe8mKJJmvpZTi9OnTOH36NNavX99WPZbFUi5g6cFw7NgxGIaBAwcOoFQqLXg92X1QqQQIEgYAJDxXeexGIDJQ/7mHctdVOnYIhIllGpd/T61/rgfLXJpZ3WdhampqwaW9z2boZkEbNmxQr2fNgqQ/BYDc8zYXGU9OTmJ2dha7du1qK/zQpW3PFUVFj3SfBugdGmQl0/r16xHHMU6ePIkzZ85gy5YtHavHlgMyZTE6OorBwUHs2bNH9SFbCOwHrwcARD//bQBA+Ykj4AXxnjlpgw2mJ7+MKRtsMIJxwUX5wV9E46b/aFunJFwAKB89rIh3MdCrydatW6den4uMZcEJYyxFKpcCnbx9n250MguS/hTyvEl3OsYYisViKlUhH2Kcc1iWpfLuz/XCjx7prhCyBQ2AuMBs20YURTh27BgmJiawbdu2eavHlgJpeDM2Noa1a9fi4MGDKBQKmJycRLVaXfD6+GYxFK08dSRFjkSW/obiRuEmV38btS4vu4gA1qUhpLnI+OjRo3AcB57n4eLFiykHsrwIbymQUd9qgfSnyDML6vQQA4QKQ8+553lLPFcKP3qke4nRqaCBEALP8zA8PIzp6Wls3ry56+qxxUBvl75+/XocPnxYlewCrdzbQmA/sR/gJOWRTwITMFuk2wmc5r9ffuII1AoJgHhlbyj5IBwYGGhLU2QjPDnc7pT77AYrnT++VFH1XA+x0dFR1V0kb+JTj47z/Cnkerop/JBBTVbV8UxCj3QvEeYqaGg0GhgdHUWtVsOOHTtQr9eVo9VyQ88Pb9y4sWPKYlEKCBmJRiTV2Ik0TCDJ55K6BXCNlxfIL8QXEf/T7b3QKcLr1ii9ExnLa2OlQCld0by1jFCzOeOsJLCTPluSsm3b85IxAHzlK1/Bj370I7znPe9ZsWNcKHqku8yYq6ChWq1iZGQEYRhiz549uPrqqwEAY2Njy7ZteWHq7mJbtmzBDTfcMKeWdTGRrtiQln/90fUAuojwGAFCceOX7r8ZzV/9qnqLBCa4zVIqh8oPbgDWfmbh+7YCmMsovRMZz+evcCnBGFvxdEYe0Xfyp5ApuG7NgrJkPDs7u6xG/JcCPdJdJnQqaACQqh6TvceWG5I05WTc2bNnsW3bNtx4441dFQ7klfPOBeehg4B283JbLMtrDkglFMSah9AAbJakJTrIyhoWUNCq45YoM1solmPIPxcZ6/3carUaqtUqHnvssTa9bKfmmkvB00G6cRx3Xbwii2Wy/hRAyyyo2WxiYmICjUYj5U/x0EMP4fjx49i+ffuSvsO//Mu/xEc+8hEQQnDNNdfgYx/7GM6ePYvbb78dU1NTOHjwID75yU+m0nMLQY90l4i5ChouXLiA0dHRVPXYpcRTTz2FyclJbN++fcGTcd2mF+I4xtjYGK7MvE4iA/BNkWUITXBfXFqkGAmS1cBnCyDFCGxaaI6laqLvGy8Bigkh+KYgZpeCN2xg8RXOzyhk+7l5nofjx4/j6quvbmuuqXc6nq/tfLdY6fTCcm6zExnLyDgMQ/zXf/0X/uM//gOf/vSn0dfXhy9+8YsLKu4ZHx/HX//1X+PJJ59EsVjEq1/9atx333340pe+hLe//e24/fbb8Tu/8zu499578Za3vGVRx9Ej3UWCc456vQ5CiJqJ1avHRkdH0dfXh6uvvrot2llOBEGAEydOoFarYdOmTYuejJsvZyrJ9ty5cy3vBKpNos3RjodXE40xNUAqYlaaN1pRwtjYGJrNJl7s5Hg/BIJ8n+6c7qXeVqfmmnol2ezsLM6cOZMq69WNglzXnXe/VzLSlT3yKP3EJSV6aRb05je/GWNjY3jlK1+Jm2++GbOzswsq8JGI4xie58G2bTSbTWzevBlf//rX8elPfxoAcMcdd+Duu+/uke5KQe/QcPToUezYsQMDAwMpdcCaNWtw4MABFAqFS7Yfvu9jdHQU09PT2LVrF4aGhrBx48ZF31CdIt0oijA2Nobz58+rCNowDPDjFkAJSCWpQPIsgHAQNwavu4CZpBvqCeHq/0uCThQMMreNbwM8NIHAAkoRiMHF/wCu+N6b8b0r/kINJbshmMViJUl3PhLspqw367GQzXvq52qlSFc1JTXoikbX1WpVObUtJre7detW/OEf/iF27NiBYrGIm2++GYcOHcLg4KBKkWzbtg3j4+OL3sce6XYJvaABSPvYjo2N4fTp09iwYUObFKtbdHujN5tNjI6OolqtYvfu3bjiiitACMGFCxc6uoR1g+xEWhRFOHHiBCYmJlJk27bfdRvEZuCMgJhaJEoNICFNokWwPDRBCvluYbzuiHSE/L/hALZY1ljbhGVZmJmZUY5aur1huVzG9h+8Si3beOk3F3sqVhSLJfi5yFhOQunuY6ZpolQqgRCCKIoQBMGKTOKRyMa1B+8Ei757SbcjUa1WlzSRNj09jfvvv18VDf3ar/0avvzlL7d9binnrUe6c6BTQYO8cKvVqiKl+dQBc0FGmXNFA41GAyMjI2g0GtizZw+uuuqqNvenpZjeyIk0nWw7dZ6w/+2FQE7hGqcGQAl4YIGHJowBP3db3LfAfBtgBDwy4f7DKxG8/t/Ee54NYnDAS8vaeLWAgSsHsGnTJvWatDes1+sily3fYESZpcvh90K+m2dSpLtQmKaZ6z4mz9W5c+cQBAF++tOftvnyLpeigptJGTdPX58rgdnZ2SVNVP/7v/87du/erWSBr3rVq/DQQw9hZmZGTQiePn0aW7ZsWfQ2eqSbg7kKGoIgwNjYGC5cuIBisYjt27cv6QsAxI3SaQhWq9UwMjKCIAiwZ88e5dGQxVJJVw5XH3300e7a/MSacqHhAMUIaKaJks4UYRRE5EqnSzD7BQkzX3yOa+sofv5mQLOXUBFyaIJ5NggBtn/ldwAA0R2fB5C2Nyx/5SXC2yFRTRw48WYcveqTKclRty5kT0dO91JDnivf9+E4Dnbt2gVAkLGMjHWTdJnGyZJxNzB9Azw5rcziMAMCZq/M+ZydnW0zgl8IduzYgUceeQTNZhPFYhEPPvggDh8+jJe85CX43Oc+h9tvvx2f+MQn8Ku/+quL3kaPdDVI2ReltK2gwfM8jI6OYmZmBjt37sTznvc8nDp1asmWioAg3ex6ZmdnMTIygjiOVZeGubBY0g3DECdOnMCFCxdACFnQRByvFkD6fVEY4XX2iKDVgvotSRgAiMXAIxPRbAmOG4O4SzMp56Ep1hmagMHbzNKl5Kher7e5kOkTUivphbDSEq7sw92yrFyTdNmxol6v57YP6oaMCQXMFZb7UUqX5Fdyww034LbbbsPBgwdhWRYOHDiAN73pTbjllltw++23453vfCcOHDiA3/7t3170Nnqki7kLGur1OkZHR9FoNLB7925ceeWVKjKREepSoXdtmJmZwfDwMABg7969XT+1F0q6YRhidHQUk5OTKrJ95JFH2lMJX/o59Xf0Sy1XMCkJk0UOKVhUvc6aTkrZIP9XEfCsZlUZm+J9AEY5AKu1JuHm40EeWuJzefuDucX40jOgXq/j4sWLmJqaUt2N9RTFpdDNrnQZcLck36ljhV64kCXjSqWCq7a8DswlsKor35B0uR6W73rXu/Cud70r9dqePXvw6KOPLsv6n9OkO1dBgx5p7t69O3dYb1lWmzHHYmAYBqampvDkk0/CsqxFaXrzouU86GS7c+dOXHbZZR1vQvuBF4oCM0ZSxMm1wgfm2TCSyS8emWANF0YpRFwvwCznnxtDi2iNUgjMltS61Hp9G0QvnuAEVsVHNFMC+dvbwX/vPvWWe98vA2WA1cW2AfF3N8jzDHjyySexfft2GIbRUTe7UKlWJ6x0GTBjbEldNubq5Vav1wGIDtAAYHqt69GeOYQLePCSNiOVpPtMN8B5TpJuJ9NwAJiamsLIyAgIIfNWjy010pXtdyYnJxEEAa644opFd2mYq8cZIPS8o6OjmJqampds1f4lOVdisVZk+5FXgJcdEKt1Q0mCk+kB2hD/88ACsWk7acdGqxqtQ1Vaaj8CG9S3YVXyJ+aIRRVh86B1SRc+cwv813xx3vW3bS9x/pKkqnsGZKVaeUoKScjd5EBX2mVMGs10i9KxQwABms/7/pyfs21b3Cv1zp+51M1Ifd9flBf0SuM5Rbp6mWxfXx/6+/uV6P7ChQsYGRlBoVDoukWNZVmLapaob69cLmP9+vXYtGnT0tridEgv6GS7a9euBbdmB6CG7NbnX4QYQmzOWXsZr5wg0yNUHpkgNkWspRHstY3UcmYhEkoGZqSX5ST1P4suzeVa+NwrAAD+be3SoCw6SbX0CamLFy+qYbfuF5CnpHg6It1uSb589DAW6lAkuz5zku6RRyhw+eWXi/e6bEa6UDKemZl5RruLSTwnSFcvaACE1lVGIWfPnsWJEyfQ19eHffv2Lah6bKGRLucc58+fx+joKPr7+7F//36USiUcP3582XqcSQRBgJGREVU8sVCytf75FwEYaWLV7BhZYAtZmBuDWDnngBpg1ACn6SjX6vPBAlstw2MTZsUHbbgwihGimZKIaGMDLBSXp5mkDHhogvpzR488NvP3Zy4kx+Xe98sIbn9gUXnWuSakJLmcO3cO9Xo9ZWso86ErVUCw2Im78pNH0LjqsTk/UzgjCiJIBNBKMu9RT7qHhARh4pTZbTNSnYy7UZ4sVbmwUnhWk25eQYMsapiYmMDx48exdu3aRVePyZulm/2QjSXzqtWWY0LOMAzEcZyqVNOLJxYKHprgic5STnrJSS4WWakJqyzRcU5AAwvE4CBG/sNEX4YzQQI8yicDmky+dfLg5bG0f+Stz2uvz4XCZ25p/cPk/i/f5JYcdutpKkku9XpdEcsPf/hD1X1huY3SdXRL7uWfHBEPowIDQqJaLXULs85VlNst5prsnK8Z6YkTJzA+Pr6kkvujR4/iNa95jfp/ZGQEf/Znf4bf+I3fwGte8xqcOHECu3btwmc/+9klaYGfdaQ7V0FDHMc4ffo0xsbG0NfXt+jqMQnTNOdML+iNJdetW9ex19l8+dhuIIn97NmzSyJbCR6brdLdIH2ZMM8GSd6jvg2zECGuivSB4cTgjMAsRCpSTS3r26pCjXmimk2CNsW5iesFEIuKIokOoO+/A+YffwLWh/8PMMdS0SqxW98H7+R0pu9PkJQvm0uX/nULnVzk5NyWLVtylRS6UbqeA12skmLBka5vzOmrocOsGqD97efRCC99M9Jvf/vbuP/++3H06FFcd9112LFjBz7wgQ+olEY3uPzyy/H4448DEA+nrVu34tZbb8U999yDm266CXfddRfuuece3HPPPXjf+9636ON51pDuXAUNURQpu8OtW7fisssuQxiGSyJcoHOESinF+Pg4Tp06hQ0bNuDIkSNzbmspka7v+xgZGcHFixfR39+Pa6+99pLmCIlDwb30TSsjy9b/c0/U0IYDwxHkyCMD4AQs6hxKyfeob7fldVlswswxyskj/HnBCdx/eCX4NX/+tBRHdOq+oHvzSiWF7/vKWH0hSopuSZeEhmosCgDo8vKUDUkJJeA2F01Jk4i3/LPDaFyx+H53bftIWs1I3/CGN6BUKuHChQt4xzvegVOnTqXO4ULx4IMPYu/evdi5cyfuv/9+fPOb3wQgzG5e/OIXP7dJd66CBunAdfHixZTdod7ZdCnIkqWMpMfHx7Fp06auG0uaptnWgmQ+eJ6HkZERVKtV7NmzB+vWrcPMzMySySI1tKYip0sDG0aG2DjNj4Co3zreuOmoFAUA2BVfeSnoyBIui02YFkVUEykYM1VQQcECsY2JiQlsgohWDYuBUwIWiweAjFyte18F70I/7Ls+3rZd695XKUJggT2nx28e7E/8NwCtCrnFoBsS7EZJkfVZ0Cfutn3/VgDCj6Kb9ELlezeKdH7DAi/HogUTJah89wWo3/Bw7jLlnx1Wf0sDetkFmgREpCgIUP72z6Pxov+c/8QsAtLsxjAM7Ny5c0nruu+++/Da174WgFBdbN68GQCwefNmTExMLGndq5Z05ypoaDabOHHiBGZmZrBr1642edRiVQdZ6F0aZCTdTZeGLBYS6WbJVnowTE5OLmoyzvj0TQAA9roHWx4QH78FjFvg1FB5V5bkcHlkgUWmiiQNN4Jhy9xsl8N5g4vl5eeTfC2PTcSeA6scIKoLwiWEI/actGY3QaPRUkGw2Gj7TFQtqgeDd/cbUbz7w23roF4r6pboJqdrf/RVQPIZ+6OvQvRb/zLPkedjKfnjbpQU2x57lWrmUf7qS1ArvxsTExMYGBjoShlAOuTZAaB0/BCAtJyMhASkaYINxiCRocztVwKzs7OKHJeCMAzxhS98Ae9973uXYa/asepId66Chnq9jpGRETSbzbbqMR3LRbrSrem73/2u6tKwmBnobgobms0mRkZGUK/Xcw1vui2O0GF88mXg3AQhHMYnXwby/Hfj9OnT0GMEFlqKlJifH7XLiJRzArvig8UmwAhYZM2rJODMADEoDIuCzjHxRUMbphPBKoZAIUL19BB2794tJuRMhqhegJVExMSiuemF2dnZXKLRjzFWZD8PEZpMPTT4EkpdL0UZcEpJ8RPtDQ418spTUqjo2LNaOe7QAJwkt++1zlv5Z4fBrVZUS2oWeF8M0kwmNfMak17ikuDlUi98+ctfxsGDB7Fx40YAwMaNG3H27Fls3rwZZ8+eTY02FoNVR7qyq2in6rE9e/Zg7dq1c940iyVdn4h+CUbwI4yOjuLixYsL9ivIw1wTaVmyvfrqqzsa3iw0LyyH/pwScGooWzzqOSAm6ziRFfs2DIODcyD2kuF8EmWGM2WVDmDUAKgB022lB1gSzdrlQCkbeGyCM6LWJVMUWcLW0wwAwP/y9SAWVLqh84GK49QlSIVCAQc0ktdJ+sBDfw7/yk/NuUoWWK0In3dPJvbHblXRd3TH57uOdHWVxUIKPlSBi8nAfdFPbPv27WqbWWXAqVOnsElfPjRbUsHkd/mJI4DdIlyRWrBEE9LMNWPMJkUrLhXpCgDlf38xGi/9JioP/RzqP/cQlgvLRbr/+I//qFILAPArv/Ir+MQnPoG77rpryWY3QFddBJ9ZkP3uAWBychKPPfYYhoeHsXv3bhw5cqSjC5eOxZCuz/cBzASYCWYfRKVSwQte8IJl8STNSy80m0088cQT+PGPf4yNGzfihhtuwIYNGzpua1GGN5QomRQAvGzsg8p9CgDCRJFAPQfUa02WWcUQbI5UAvVtGE6MwlpRnhQ1kkg4I/mKkgm3qOEqwgUA2mESjMemItDy+tnW55OcsFxHVCsizpnMu+KKK3Do0CEcOXIE1zw490TI1NQUPM/Lrec3/u7VAEQueq4JwPlgf+zWRRVHuP/wyq4+V3rgpepvnpzTXzz3J6ntSWXA0NAQduzYgSPnhZMbp0baxyL5+7HHHmvVS3CITtBBO42Qpim6Qsv/k67OCCzwhoPKQ8LTo/ztn+/qWLrBcpBus9nE1772NbzqVS1v5rvuugtf+9rXcNlll+FrX/sa7rrrriVtY9VFupxzTExMYHR0FMVicVGlswslXc/zQBJZLUkml2TLdEmYSylh1Em30WhgeHgYnuepCbJubsqFkC7nHOTeXwKjrX1WuVuljwdsAAAgAElEQVTGROSZRIEyApTDzbBagunEiJuuivQMO30urVLLc8EdaMKb7ANnRopY4ySajTMpC6YRc1hrVbEVBsTEJ6eGiiwZNdtSGPo25OfjRPJWu+v30HfP34rcvyNSEDS0RMpCO0YWmajVapiYmIDv+20TU0NoB//Q60De+umcdzoguY66LQNmodk2mTkfeGCJ0mw9Eu8i7w7PVikT3VQeAA4dOgQ8KUiVOznX2zzrJ8Uo1aoJwfJRULVaXXLT11KphMnJydRrQ0NDePDBB5e0Xh2rjnSbzSYuXLiAa665ZtF11t1GFvrQ/sBhA0ZIwBwOIzIQ+9fCKv9o2Ug3CAL8+Mc/hud52Lt3b1cRu45uSFfv33ZjZKbSBzwWk2PGh94AFPOXl3ItGVnSwII5jx1jp6E3C2wYbvqGDhuuystGTbdNSSAVE9kcarZ8WIKGFuLAgV0MEWXIOG64imxjzxHb4gSmEyNquti9e7f6TuXElLQ5HJLLlwOwwAZjBIbBEc+jDDD/v9vAkioDwxLdNrpJL7if/mVwGEpTvBAo17aEPKk3j0wyE7nzxNOCOBSs5qL/kZ8HHGGdSXwzPVEWGsKEfiAQve2ShwSvC2UIceOWhwfaRz5LRa8i7RKhUqm0empdIsgJORltXrnz9WCJwNsMCLgJZdLcbVXaXNs6fvw4arXaoshWYq6JNL38eHBwEAcPHgR+JNQGhKDtRo49R0WPsvghqhUVSWWhR6TgREW+qfY9c0BWp9mlQKUcDCt9LHFgp6rbWGQiarpwygFoYIFGJqxCBDNHkiaWbyebOBBOZiw2VNROQwvgBN4734q+e/4WQHuJb/yAUFPEDTe1n3pVmW4LmVfIQAOxnW4m0lhgp4o3qOeA/M1rwX//HzsuU/jsL6WqyNhCIsqcr02lGgq0Fc3yRN0QGqm2THyqCFJOSrdrjrq+FIFXAvF38vlOE5wLRRRFCzLzebqw6kj3UqJarWJkZARRFKUm5GgNMCjAk3uDaPf1fFVpnVCv1zE8PIwgCLB79254nrckMXfeRBr/8C+JPxjB1Is+kCo/jkMLnBkwspNVTtyWU5X5UTV05wSR58Byo1aUmMAuZewcGYFVDEEDS21L8o+UhZk2RVAtwu5A6obJWoSraWndfg+xb6vIGwCCalGRveWK9dGw+3pU/dhlOkIH/9DrQLQOFeowGcHhw4fBOVeFDPV6HefPn1eFDDdAnENTk6hd/Y27Uf2Ne+ffL8+BWQw1P4oA8111PDYXHBlLo3laL8AcyNGyexbg0jYlAilHra7Pcvv19gddqmdekt/t5LFQqVRQKpW6UgStpPH8UrHqSHe5KoVkTzDDMDA7O4vh4WFwzjvaORpey5QZEJ6hLNgP07wvRXbWf12TbACIr3qibT0ysg3DUEW2nHMcO3ZsScejpxeki9l67f3Lv34XzKu+AADw3v1a2EkaXMqlODVS0RSn+UN2sX4i/BVCqy0iBQSxGDYFYohhpRahymG+U2oRbJyoDyLPAaMmDDM5nwnB8sSBLPYc2KUANLRUhJrdrtpHJtZHDIBRkoregnf/NiwniZY9B07Zb0XYsqiiECLOMdeJmy5MN1LnJvaELwQNLDiAqhIrlUqqzxYgyJoZ7eQf+zbGxsYwODiY60JG/ua1oswZ7UUkc4EFFgyHgtYLMEohiEFVnt799C8jeN0DAIDSv70MANB85deEQkLfhMzrJ1Gy8sqoJxFrOQKX8rKMnlflbaXCQ3oly6i37qpo+IorrhCvaWW9UknRbDZTnhS6oXzeCOGZ7qULrELSBaDsGJcCy7Jw8eJFnDx5EoZhYO/evR27iJp1Bm4m5sxG+3ryIl2SiQRqtRqGh4cRRVFb+53luFB0i8rh4WEceey94IaZ8r1Vn7UoWGS2Df+jegGmE4PFhooOTSdKESuNTBgGR6HPQ5j45uZVcrHIVEN2CX2In00X6AgahVS+uTjQaMnJMsSjr4dGFkxtUo/F4vJ2+5qwi2FrAi42wEyjLc+rtl8rCnKPTVx86x9g3Yc+2PaZsF6ElclJSz+I+RAnkjwWWSAGw7p16xBFUZt2tlKp4PlaVJwyCeoiH8o09YHyOE5aGQFS3dB+7bFG/hA9ey3J/CyPTcBP5GI5E2m87rakZNQAQEVuPtPiSS/rzXosyNFDo9HAxMQEPM8Tx1Aq4dy5cxgfH4frukvSPc/MzODOO+/ET37yExBC8NGPfhSXX375sprdAKuUdJcCzjmmpqZQq9Vw6tSprr1zgWSuBYlPqCm8Q3Xlgf39awHTABIys79/Laae/584fvx4173OFntMk5OTqtvr/v37gcSFj8dGx8mssFaAI6u/pENXjlwrqBVADMApCxPxsOGKCSffgV0IEWkRoU56NLRg2hScGWDUBM9wrCiMSL8YZdIVnaJtFrdc0DpNpAGA5UZgsQnDouDUwMXf/58oD6VVE/JhQAwGmkwW5kW5ah87eEvQyOxoxsUCG7DjNh0rZwYGBwdTuUgZ8clODKltJPvFQhO+56FQKHR8aPPkWDrlc3ksfC+IxVD81/8dsEjqWqENV3w/CZkShwrS7vSdzIp0kdHXSjHxaqFVSGK0otxOBJ2HTqMH6UkxNTWF73//+zh79qwysfrTP/1T3HLLLXOstR1vfetb8fKXvxyf+9znEIYhms0m3vOe9yyr2Q3wHCJdzjkuXryIkZERFItFrFmzBnv27JmXcM3RfaAFAqvGQSsEZp2DuUQ03atzWE5OpEuJMAhhBEePHsXevXuX/HTMxUdekRwcwZkb7kGxWMQ114j0BkVimajdIPGH/hust34+MZhJlAg5JBt5DozkwaFHg2GjANNJZsGTiFMnXCenPQ+NTNDQRtR0YBXac7ZBvQinFIDRlgZ3LtDQBosNWG4Emki+aGSJarhk/X6iL7YLkTp+lgyVvXoJ5aHqvNvJg3f3G2FpfBsHdsv+MkmJTL7t7Rj6q7/MXZ5FFuLQast7Z0lTj/iiRNERNV0RWWukfezYsZSkTQ6/h+57M2JebBWpBFaqRRKQdF9OIAso4moRZl+rOwePDBA3ZzQiH3Z1uzUi0Q5ButLx2EgrZEJpwSlUFUYhAm3Mo6aYA9KT4kUvehE2bNiAer2Oz372s/A8b8HzLNVqFd/61rfw8Y9/HADgOA4cx1l2sxtgFRZHAAsbjsuZ+0ceeQTnz5/HNddcg/3796NQKHT9xZh+YsTsJb8DDiMQf7cVNlAowgWAw4cPtxGu/cALYX/lRthfubHr42g7rr+/JaVZ3b9/f2pYFfs2WGipaq244aYINjtM1+GUQjAqoh45RAdE5Zoc5tvFEKW1tdRyhklBIwtho6BITsLt88BiC0GtBEZNxKGFMIkYQy1yNDOaX2Jw0MhU+6MKIZLjyqYwgkbLpzibPmDUxND2CQT1tCZOnpewnvZUjnMq3WjUfg45E39HnjiOybe9vW05QExeqr/lsddd4AO/k/t59dkOaZB9//5+XH/99bj22muxefNmZeYkoUvraNNp+QwnPhdMj+ZlSXNgKRK2t82IZRuukJpxAKEpolcNMtWhR8lMc56j1QKYb4M1HVWkAXQuK18MZDUlIGwwF6rdHxkZwfr16/GGN7wBBw4cwJ133olGo7HsZjfAKiXdbsA5x9mzZ/HII49gcnIS1113Hfbt26e0vbZtd/80TB72ui+o4Yu/d9VfAUopZmdFhRQJ0mTjPHIgf52RKK+0H3hhap/V+j/1UvHzyZelFpuensZjjz3WMpehQr9J/99fyd91RlplsskyUU71V9R0k1yuBUYNRJ7bsTKsk3QsygzJo6arcsM0mbSSr2cJLQ5sGCaF5UYo9HsIGgX49SIMk4lI2XNbOWSgjdQBIPTSw367GCIObMSBLQopEjLhzEAc2vBrJWWgHjWd1G+WkzNVZuss/7bJWwYAwj//rdS5ocmxzzcxxv7i/2x7LW64qVwtALgfvR1rP/Pb2LJlC57//Oe3CllqxbbJRhraiPXzGNiioWhgqWsqrhdgrauLEu71+U3PdL0tkES1RBgXsebc0StNeuotxbMii5mZmY5zMt0gjmP84Ac/wFve8hb88Ic/RLlcxj333LNs+6djVZLufH6h4+PjePjhhzE7O4uDBw/iqquuQrGYjm66rUozavOfotOnT+P48eOKcElggkQGSMMC/DluLO2im9Np7N6XK7IdGxtTs72dPGOD9/1ax03O/skd4g9O1DBRJ2H97zhn/TQS7mMsNsFiE4X+tKxIkmmYRJwqDaERIs2QU5asskTRCXIf/GYr8mJU81PQFBjZyjcJPTJWxxBaCOoFlNfWUB6sY/zOP2nte/KeX0tfT/okIc14/tLI7JhzlvucFx3L70JGkDISp6EYTcSeg+o7/rv6vCxPjrR9i+qFNm8Kd10tt6uGWYiU4U9rBSbsoTrMcgBWd8GT88gz51OfFEtP4CXHkHlQ0MxkHfvgr4N98Nfb9qlbLLUwYtu2bdi2bRtuuOEGAMBtt92GH/zgB8rsBsCymN0Aq5R088AYw8mTJ/Hwww+j0Wjg8OHDuOKKKzqKpTuRrvPNw22vEUpgzCaVRA3S8glNSLO/vx83Tv9ua4HME9z6r2tgPSl+7H97oRimJfegHMqlihs+8grwKJ3jPHHiBK644gpcd9116OvrUzcN1SZJpAxO5mtlZCiJkHMCt99Tnw8b2eF0Eu1lhrNBvQi/WswlKADw60V4tc7VgTQyO07mZSE/VxoQto166oEn+mCVlvBcFUF2Spfo2+XM0JbVHjQ5hFxaUwdLItq1Wy8CQFtaAhDnWH+gmDkdKIi8y7iQvtHIQuQ5LVJNFrn4+/+zbVkWmXNGhGv2nE+VbUvkpSQi7fvTWyNlh/nu1mkxKppnoos3HUHEOuFq1yOtFVrl5Mn3xLXviflOiuSNP5jbZGguzMzMLIl0N23ahO3bt+Po0aMAhIn5VVddpcxuACyL2Q2wSklXj3QppThx4gQefvhhhGGI66+/Hs9//vPn7QqRR7r2g9enfqvt1ROnpqD9IiQhaYm3KVEaRt0Gj2gXL/dt8NBSPwBg/csv5Ea6PDZE1MAJDhw4oPJU8V/dmv4cFRpWXasrbzpJwCyyEDUKoIGYiGpFovnRsiSnLAGbTtQarlNTEXqxr9mKPDMELD8Txyb8RlGtP6gXENQLCJsuDE05kEVexJ2Xb5URsl8vwa+XktfMtlSEnTOh59eL6ie1zoQkz//uH8+7D0G9AMOi6Fs/A+/uN6rXw4YLGpkIslGkWk5sc2DrJKJ7flO9LtMYYaOQm4oQOfcM2b7vjtxtyOg3qruqswetuSoC5bGZ6gDCY0MFBNC6MnOOjr7JtOEqxQRtuG0PWlmCHM2mrw/+odflrm8hWA7fhb/5m7/B61//euzfvx+PP/44/uRP/mTZzW6AVaxeiOMYp06dwpkzZ7B58+YFG4fPlV6QOTHnG0fAM+4mhBFwg4P4BohvgJcoDlXvAIetiDbVtFH27pIC/cunwI+taUloqAHm2aqirFqtoh8tpy41U/z3t4C8WVj6tXkeJDfEwf98P9iBdGlo9rOdcpVR04FdSpNRHFoicsvT4caG0u+W19YQ1Itt8jFJ3HIG27Lj1DA822IdSD8E9DSDVyuhUPHSxRNqRQRxZINRsT6iHaLMS1tupCJaSeJerQi3GKj/5b6YFgVLfHolrES1Efl2ruWljLR1Qq/9r99D33vTFW1hw4VpUxCDgTNDEWuf5poW3fObqtOFfDhGnvCQCKWXgsXUpKO8xlhswHRitc6gWoRTCRB77YTdKTWVJXG9Px6PTaXh1VUO8j11LjxHXRsssECy6+QE4WwRVo7aZbFYDt+F6667Dt/7Xns7oeU0uwFWaaQ7NTWF7373uyCE4MYbb8SePXsWXLfdVU7XoSA1bb3ZBntMuOTn6MsBJOQ7FEBZ4MnFtIiCJUMzxhiefPJJPPXUU8pPloWiS0OeSUns26oEVhILi0WkG2byZVldaapIwbdTk0hy+OtWxE2Vzb/qk0j6RJthsFTkF8v2NzmIAgeUthNBaiKOA04irYqV0U62P5ohtLFWjChDIk4xSO1fNlrWyYVl9kVpdQNbRZi2Vgjh1UqgkYU4p7yYJUTKmQHTjjHzh/+j/dhSx6wNzbV9qt31e22f1fPSNBR+vtJ3Ir3/Zuo1/e+2gpWGK3rPJeRa2DQD1nTENap992296YJWvzo9P6sc3zo0+tTbOVHf7qjMWChkq57VgFUZ6Q4MDCzZODyXdAMLSKI9+8svAPqT12lL2E1qFggAXsqkAuqOsNEDAJrUmBejhGw1/9LQgLVtBvHZ/tTys7Oz2L17N7Z+/q2qFFMvzWWh1VUX7OY7/ztMu71iKfKFSYskTTnJFIcWzIz/QuQ7KPY3YLkhmjMVlRIAAMuJhdZUakBjM3eor4NGFkK/1XJHj5IBMbKINZWD2D9R+UapoUgw9B04hRBBMnFmmlS91i04M8AYQeC54vij/H3XRwSctYbxbSmFRqtrRmmgMeeEmVyvaVOVUiAGUw8XICFeOcHZTPs0zAUaiuq22BfFJZKgaaYwQl5PPDbTBkJ6NCqLGLTUAzGYMNrRjo95tvpMbgFGkoaggQVicNXfLqu+kH4U3baHz8Ps7OyS1AsriVVJupZlLUsZcF6ky6kBKMI0BPHR5OI0meJP0kgi3OTCIjkWh9yzQda0bijiJyWYLlUlnbIq68XD9+DC1Z9U7WfmKvNk1Gyr5JLaS65kYdKtK04NtwHhL+BLsxmNcGlsgsYmiv1J7zFOEPmtKMYtpYeUOvxmAW6xdaxxaMHKIQymTQp59RII4aisqWnvp9MHkTZUBZAib0mYYSaKbNaKcIoB4thEHDhwkv2KAhtOIUQc2modUWCnoli/UUz9D7QiXxqZKkLvRPZC+pYQGyOIfAduUsnn1UpwS35qchAQqQL1nWZGB5wZ8OsFFKVKhBMEjYIgavlZmW9NHqi6CVFhbR3E4KifWaP+B4RxfFb6R7OKBK3sOAuWKeFVKY6c3LPs4mwnoycWiejcsKgq4Dj6iv8LDc2lrRufBR2zs7OXpgDpEmBVku5yeBXopCtLgzcBItpN9IbEZKm8XkfwJPcliVK7UEloCDMQ3fA5iSRow4XhxqD1AogdY/O3bgN2AY0RUepoFUNQ31ElrPFf3Qpvsg9WUdT+26VAaT4BQaZ2Kew4200jE5HvKDLk1EjtaxaMGejfMI3qROtilsP07Iy/5USi4MF3FPkGCfFLEuNJ7pVzAhLN/9CU3SmylXVZFPuEIoMQjqlza0EIR+i5ymUMEORKCEekKTn0qE1G8/I1v16E5cSgEKkTQBCtbh0Z+g5MM/3QIoSDUUMRr1v229IQNDLVemhsIvaldaMJwxAELN3eAm3CU/pMyJwyjYSJuzJhz5yjyuaZxCwofT1EUtXiObCKIaJ6QS1Lm46oXsshf0BMglkVP9VXTkISLjGZmIRjRJUtdwL1bbDYxJVXilZYWZe2iYkJNJtNEEJSRFypVFJdW3qkuwogLRknJycxPDwM13VbvaGyF5wnHPh5EkGQShIJBSa4b7W560sYa732FykBSGs4Jn9bg63PlnZeRHNsXUt5EIobzi4FooFj0Cpo0Cu44sR9KwodddPrciZp0JLNAcoZe84JymvqoJHV3cNGg2VRNBKCCDwXptWyY9Qj0b61VVQn08PA0HdgOREi34VTDFT+UxF8KCIj2233y9WjzXYzHCc5vkKL5CIThsVgJd4Rcn8l6RT7G2q7MlqnSeWfYQpns6xRUJ4cLg5smHaM0HdgGC2yny8Vo9bJjDkbdepmO7HnqHNNDA5ithu9lzZU0ZxIp7RKO0SHhPikmC1214kRh8zRmqVQ/E246AKdTGzqk3BK8qVF26YpggVZMq4jmC2JSUrZHy9z7jr5LMh28/V6PdVu/sKFC/iXf/kXBEGAH/7wh9i3b9+i0gy7du1CX18fTNOEZVn43ve+h6mpqWU3uwFW6UTaUqEbxIyPj+Oqq67Ctddem24jgmTITsUTOzWLW7dbXqE0ccu3WNLgkYA1XLCGK5ZJ9JC8qakb6jbc511AR0g3rJzcl5570w1k2iaZqKF+1PLaDV8aTIaZmUhERkVyuBj5DjxN6kRjE0GzoOWGTTBmIJ6DICRkBNy3tt37QKYxssRpWCz1WrNaglcrwqsV4SeyJM5bSof+tdV5c7wsNoRsLrDbJuDASD6JJtFq4LnwakW1T36jiKBZUA+/QCuBlqSZTX8AQNAsiOWSkYac7MxGxTKLllfBJ6v9ZMqGM0Ntu7ShChpYreE+IylvjOKWmdxzkzoVQfvkWWofciRwLDZUdKtHucSiKs/s/ulHRFVgIK5n953z+wnLdvObN2/G8573PFx77bW4/vrr8aIXvQivfvWrEYYhPvWpT+GVr3wl7r777nnXl4dvfOMbePzxx5WC4Z577sFNN92EY8eO4aabblq2CrVVSbqLTS9I68NHH30UZ86cQaFQwP79+1GpVFqf8XIiEUdzy+8Eg7dUCfKzeV4hfv7ggodmWhspSzIzTRuL66oormvlQNMie0P53Iae07FgwE7Ir7Sm3qYiYNQQRi6MqBt2zcZpePVCWzPKbNntXBD50JZXRKGcMwpYJDrpe4EWIYWeqybggpz9lvulV7cBgjCjjMxNveeltaip/SBcqS50RIGdS8JAazKLxQaCRiHpbCHe09UXfr3YsdhEkHG2RLc1CcgCW/3PY1GKLgmYek67lExLWZhSTdKhuk/P58pS46jpKHWIngqjkSjL7jby74T+/n7cfPPNcBwHf/d3f4dvfetbiybdLO6//37ccYfQPd9xxx34/Oc/vyzrXbXphYV46uoOY6VSCfv27UO5XMZDDz3UuUdVYImoJzZEaiE0QQrJUF5qZxutaFfmaVnDBdGGwDw0gdAC5LJx0pAwbInRnbWN1KZZYKO4fQr14Q3Qd80sRK26+oaryDO1bGyoTrmz40PpYWhowy37Hb0DOsGwKNxigChwUhNQ8rce9QZJTjdqpG+mclJhxrRKJ69eRGWwJob8yZDdbxRhmBSMmrDsKB3l1kupHCrTjiOOLTWk1gkq9B0UtAnAKHTU65SasKwYNDZgWgxevYjygKhEC5oF2E7YseVQ6DvY+U//CjAT479+C8KmC7fcymWbJm3l7iMTUWCnJhp1SOKhodWmVmhWS6nlAu2hIOWCdjFIpZEApDp1ACJiltdCaVur8SKPxWgubBRS15d46Cb5b2oorbd88MZNMcEp5z7kJBxnBmAJO0hlTt90wSmBVYhg/6+PiX34s7/PPReLQRRFsO2lkTchBDfffDMIIXjzm9+MN73pTZfE7AZYxaTbDSTZDg8Po1wutzWzlBVcpmmCfPxmoAxBtA0HpBy2ok65Ps8WhEENkP6MOLxDBAs9cmgmfaFyohQWWCmTaBmN9B8ZFS9EJrzjG9Swf3DnBdTOCG9eYrDE4tBEcU27QYlfL4IQrkT5OvrWzWLy1AYQwlHsb4h8LuGgkQWWaE3zzGX0ySAJ240QSL9XZqgJKHVMiUxNJ0vGDJgmVYUNbfveLCDw3BRxShTLnlIUZJUSejQpiTa7P/2JaoIzYHZyUG0/L4JniS+xPK6dnxFdOGBonYiTnHprGVH+bDkxosBWuW7T6iwD09M9UrVRSawoOScIfQflJDUkI1qZZsgWbcSa8oNzAmIylcZgnt02EQZAdUi2K35KvRDVXXQaYEZNN6U4iRtubgPRS4XZ2Vn09/fP/8E58J3vfAdbtmzBxMQEXvaylyl/k0uBVZleAOZOMcg27d/97ndx/vx57N+/P7d7cFY2RhtOy6DDs0W1WN0VpsvZIVtib8cDC6yW5CNldwPPEWWQde3mlflc6bZfbc+HZUl+4MBJEUVrkbSOrIIgW23Wv2k6RSCh76jhpyyP7eQkJosipMZWvR613Lpa201/F16jvZQ2CmzQ2EIct28vjmz4zQKa9VLb63IYra+zWS+p/7PpETnhNR/06FFGs6W+9p5gMvcKtFID6hiYCTATWz/1xdSxpo4htNSoQIdXL4iUTZIT7wTp+yCPDRCRcaeuF4waKK6pq6G+/l0pWZcyQm9Zf5Y3T6fXk7PPnAtLSvleUC1qrmzpa0kvyOl0jS0XlqMabcuWLQCADRs24NZbb8Wjjz56ScxugFVMunnQyXZiYgL79+9P2TlmMV9VmsyxRpNJzjfSJ7EImCRoaoAHFqwBT12QlmzqJ41tdLF9QrzuhqrajoQ0H+GR0SonTobkNLBAfZGT49RAf3KjSKF9caAJFlniJ4my5rqh80Cpkcprqpn8KPFs8B2VEw2aBUXqzVoRcRc9vDgV+xT6DvrXzrYRNNAi2DDnxk85imnHFgU24lg8ILL5Trker16E3yiAysk/6c2rqST01IS+bzJaBoDnf/r+1PpJ8t3q5yPwXEW2MvrtX1dFaaAOr1EEY4ZKuYSeC79RVJORjBHxE7cefPJYpXxOj2rlPkv9b5uKI7mmIt9BaUOr3FhNmmqGOZIgO+Zt5QRrtsrRt5M0Qvp6002V/GpnU6SlYKmFEY1GA7VaTf391a9+Ffv27bskZjfAKk4v6JGuJNuRkRH09/fj2muvbbNyzINOunG9AKvSGsKypgOYsgoneS0ygZzeX21IChWIxcCSaFeXlXFZv28yRLUizFIIHprK3Z+Hppo55r4l2qTEBsqXn0PjqBC20Ui0TdGNwLM9u7KTFPrkVRxaSlaWXqYlrBdyp0RvWvJTlWlRqOV3E0Ky3QiWE4MQjsZsGc2k+KGcCPsDz4XjBkozqwoNAlttR6YnAq0IwrSp0gDrw/c4Eh682SIBAIqAlWa4Q4sdSbzlgboiSRobbdFyHJkwTYo1G2ZE1xDPBHMSU/tMebg8Ph2VwbpSIqzZOI3p82vUZ3VIfbGMZGW6B8wA6dkAACAASURBVBCE2LduVo1wOG9pcJXMLrBFEACgvG0KhHDUTw21VabFTRdmovKQUTH17bYRlezYbFhUEa3clkw98Sh9/H6tKL4zvdx8AR2ZF4qlOoydP38et94qTKTiOMbrXvc6vPzlL8eRI0fw6le/Gvfeey927NiBf/qnf1qW/V21pAtAdYUYHR1Ff38/rrvuuq7IVqJTpKuizXD+yI01HVVMQT0nVeKakpl5dqshrXZhO4PpSTS1b1rOmAdWqpadhlZusQCNTNFWXcuv9a+fwcWTG0EIh530C4tjE5aWq62sqeHi6fUwTKrytPqMvdqPeaS7es+yrApAErOeXkjZLs5h/ViqCNJm1ERtpgJCuJKFyajbLYRtxQry/ewElj1HaW0U2UqF4BTSy2VTGUZIYFCRZdj6tw9i7E0vTx2PKJQQIw7D8lryrw7DbUlS8ndR8yrW0wV+owinECIKbKzdISZ36hNp0ilvmVb7Udo0g+a51vvKgU4a/ehEq0nm9Mo2qRk3M6ZFct9kICIf9HpaI/K6L2deDJZaGLFnzx786Ec/ant9aGho2c1ugFVMupOTk/jpT3+KgYEBHDhwAIVCvm3eXMiSLvMdGAVR0UVMrnJ9LDZamkWDgzYcGFrkKlz3ZRmkBRYBZv/ckiguZ/E5EZNohIv1JBe8NeClc7lJhwi9e4GYlCIwcvK9nZDV08pIq1hJ9jdxFJMPDxqZqag2dQw5LmESa9ZPY/pC5xtBeCBoLmKNIpxETC9n3WlkIQgc2E7c7iwGESGryS8tYmSUpAoelFtaAmIwlWd2CiFobIF2ME6XEbIsdMib0DMowLXFZVFF4LmwnRhhYOcSrVcvwXZCFVXHkQmrrYNykq5Kzo1+ztZo+d7KhhnUJwbhlH0R7cYGiEPFpK/B20x9dLDYVJpeGtqwy53LvQmBUiKk15H20wgbBdXIVCJoujj71FOpyrKFGlXloVqtLnkibSWxakm3UCgsmmwlLMtCFGnkGRsqyU0bLprnB+AONEEsCm98DYpbp0GrRRiFELSWDLsyngu6lSKLLJU20GvYWSbXNxeYZ8MoRirqLm2fRPOUqCCKmi76N02jsKYVLVdPrVOtaQybppQHgdeqYMumHlgSIdM4v7Mu5wRxbLWIiqZ1qX1rqonjF0Oc6ZTgey7cJDKVagPHjVRhQjYq1iEVBpI0imUPkxNDKo2RhdzHPDST9IhhURUR64TbrKflWaHvqrRHFDjoW1PDrg9+BaQunk2s2CJAs8HQrJXgFpOOyb6DfXcLhcPIB1/ati+VwbpK1zQysjCgPapWhkBJzlRObur9yYKmILq+RBLGQxPE5EqR4PY1RXQr5Y0dUmVR0oDUsFjL+JxwGBZV1pLyNamciH0HjBmq+zKQ6IK1vwf+n/fBSsp7z549i0ajAUopCoUCKpWK+ikWiwvS4s/OzmLHjh1df/7pxqol3UqlsuCOn1lsuu+Pce729wNo1aHrud2p37oHm//5f6jadJ6ZoOCJQQyxY+W74A42RS448VXQP6sTLw9NcACGE4N6DuLASukkqVbamU1z6JMceh6XM2GGIg1W5lIndIIkLN3NK0tueWYvcWwJe0fZrDGTLshKwsKcB08QOHDdUJEw5wRupnOuaXVXnuwWA8xcHIRbCGCaFI0kvyyRl86wbSHt0kcOuvSNJqkRuajhte9LlGhbr3vX51U6ae9bH8Twh25qk6wB7Q8cPykqsJxYmODkPFgsK0ZlfX5H4+wEl16wIAk2rBVUR2K98MawGGgovisTQFAriCiccOgdpCU6mTJlVTRh4h9i2zYGBwdT+VfOOXzfR71eR71ex/nz5+F5nur0m/VayMPMzAz279+f+94zEauWdJfD9AYQxIu7PgugRbzMF7nZ7du3I4/Wme+kCFSaNktBOpGNJBqOiDZlaiL5TRzasm3MaiuT0laV0+WtGWaxcPrzphurWnYWmVi7+xxqZ9Zi/cHR1rofuUxFVUGjoAxojGSYnS14ANKz9RJ9UtfKCWYm1rSRSBTYLTMdTtBslNDXLzSlgSfIxXKiOSP8IEinMmQ0rCJTKstvC3DcCGFgo1AMEGkTTtKyUsL3WsRW7pdFGgb2/9+fV+qS77/j1xTZNuollCvt8rEsCAW42fp9zYc/h8d/69Xi/FIijOuN9Lm1rDhXUZLNPcu/ZZkzgLY0UmW7iGhnR4SUqW/dbLqvmvZg6dsyJfyXtUakpk07GgnlSdKUNJBwxIGl1p8dNUWByIsbBmtzbMuCEIJisYhisdjmtSBNbyYnJzE2NoYoiuA4ThsRryYvXWAVk+5yoPHGv0P5w2/ByMgItmqvR3UXxOQwkTGO9mV01r6u1Oxw0hWCWKJSx7BpykAma4unDGwaBRgmVRZ4tOEK05GmA3AiHMkarrKDBLTJKy2NEAXi80jaloMTDG6eAgBMnlyv7AwDzxW5x2YBjhvAbxbyh+yRiVKf19Hty7CokinJaJDGBgaHZjqW6KrXDeHKldeNodOQO7uPkd4WPakyA4B1my6Cc4Lpi2sUacehBduNhBKCii4gEpwTRdAy921ZrSi5WPFg1jlYkbSVeBMKGIFY13X/6wvpNwMDV7z1q/jZh25OvXzVb34DAHDqC4fESIoTVC+2cpM0MkFjC3YyoSdczsSx9e28oB7c/TsvYmZko/puROsm3lb8EDVd2B06OfPEFzmoF3IrHXViNbTijtBrtVoiJmtr2KkqFxdoVm6aJvr7+1O5Ws45wjBEvV5Ho9HAyZMn8cY3vhEzMzM4deoUvvOd7+DIkSN46Uvb0znzgVKKw4cPY+vWrXjggQcwOjqK22+/HVNTUzh48CA++clPztsCrFs8q3S6CwGlVJX1bfzUOzt/Ts7GUlPlYllspNpYSyy0vFaa6WShR8e66Y18rbRxBpHngiUGO9l1bD58PPX/xiPDoqKKEiW218t4AdGufGD9LPqGqqDUVGmCrNSK01YE1WwU0WwU2xQDEqZJEUVWW1mu7n3AYhO+V4DXKLZ5FejD1yiyVYQoo2eZoogycqQ4tlLpjzXrWsJ/QsQ+HHmvkP+QJCI9/O5/zj0GLxn+l/qaKvdr1jnMZtKCqMFh+uJ/op8Gmvxk5FRhII79+bc/pF7bfssPxfFmnjvbf+FJ7PrffowtR45rJu+WOH8yl5sZyg9sa02uxb4tCiBCCzSZhFXpJmWU7rY1tWSxBaapTKKmq6RpNDIR+474kfrnpCdeVi8sjokoDfVSQQiB67oYGhrCjh07cPXVV+Ohhx7ClVdeiT/6oz/Cnj17MDIysqh1f+hDH1L2kgDwjne8A29/+9tx7NgxrFmzBvfeO78pT7dYtaS72PSC3shSGiPrcpZWqxyt3UkghN9hTbSzloQbN1yEs0VlSsOU074B5tuq6IH6YhndlYmFFuK6aDjIIqutM68kUq4Rke5XCgBOJRCG0MlECYss5UTGAktsn6ajsk7SLH3oumZjUnSh3TyMEjXUp7GBvjXtOUXGjI4qAMbEMFlGq1FkwfdchIGNoY2TGNo4iYG1s2jWS2jUymjUymIfPDdF0nlmNVmEiaRJn4xqNIqo6xVvMQH8tLmQbugT+C4CP72tqz6QLoow/fyhOfFNkED8qNcamh2i7FaR6L7Fvop98RpF+M0itr/op9qG0oUQO65/CgCUV67K23KSq1Joa2kvCddrWWh2Mp4JG2nClSOSbGdoLxPh0shMVTJu/+i7c9e/HKjX67j++uvxmte8Bm9605sWvPzp06fxxS9+EXfeeScAEVF//etfx2233QZgec1ugFVMugsFpRRjY2N4+OGHwRjDjTfeiF27dqn3Yz0XBsB9h4iEZBUNjcw2fWIWRs4kT3byIWuHxwIbhpb3ChuF3JLfLDp1ZE19RpZ9BraqTmOxiX6tCaKEaJOe7GNopXS6oe8qApMRS8ptK3k/TEhKFjgogg1t+F6hLdrJ5jYpNduiPR3KkzY2ESclxXIdvleA1yy2EaXs5rtho8h/es2CWEbmJwNDRaVeswhKTaxZN61+gFY6w2iQtkKILPq0LhhAQsBhyxCodbDJejgARrD9F54E0HrgAQBPdNcA0L9hOkViLEq3Xe/fNpkawoeaUbkOqj3gdTJmlCQ/RquBZ8YNjcVmyxvC4Lm5aa9WwpYPv1elmaLAXnBV5ELRbDYXpM/P4m1vexve//73qyBscnISg4ODSs62bds2jI+PL8u+AquYdLuNdBljOHnyJB555BHEcZxqZGlZFh5/8R+Iz8WmukD1C3XoLz6M2LfbJo2yrU1arzugvrDICyb72t7n1FDEKyMrpSeVfa2S6EJ+jnqO5uJEWvZ7jIjqI57vAQu05GmDuydakTLhykgm9FvtbFhsgkYWtl5/DNf8yiNqHVlPAqlx1SFJWhKrrAjTjbjDnIdWoYPzFiCkZq3155QE+w6azQJe+Ef/il+463Pq9XJFtIPPLlOao90QCUz84p/9IwaHZhRJMGaoCNnXIjtj1gShBEbNgFEXP4QSGLMmrrzz6x23IdMhV77mP8FDSxXP8NAEcVvFKuX+Rro0PLAwsKflcKWTbZ5Hgip+kOmwyFKmNKrMN6enWRw4ql9blAlC8iLhKLBVxJtn7B4FNqLAvqRRrnQaXGy/xAceeAAbNmzAoUOH2tapY7km7oFVPpE2l70jYwzj4+M4efIkNm7ciOuvv77N/k26jFGtr5VsH9IJsZpM46pxYNgQEhy9jTmLDSGSLwe5esi46STRQlK5lNxkMlqmso5eKh5MBhaI7r9m0vWgiIa6GeTEWnF9VaQ34tY2OSNq8o8zovKD268ZVfszdVI4jW09fFzkC02Gq3/5UTzxhRvF8WjyJbmtUl+zozeshFsIlT5WotkQE1NKkaB1qli7bgbTk0LqpUNKtxgTxux+st2XvfMzudvVDXuAdFHIDX94P0hkAKEB2MnDlCA1jJfEe/MfCTJ/5O9fDsII0OEZQfwkHTQUAhMFoV4oxqlRy3W/+xX88G9fDqR8OGxVbShHBntf8mPxnRm8TS6oZGv6OmLR/bfYobpxLmTTWjSyQGMzVUwiKv0Y4thMumA4qaapQbMAuxAiChxsu/fPAYjJV/l9rQQWS4rf+c538IUvfAFf+tKX4Ps+qtUq3va2t2FmZgZxHMOyLJw+fVoZ4iwHVm2k2wn/P3vvGibHVZ6LvnXv7rlJoxndL9Zd8kW2bMmS2YQYnOThEEzAGJtLggEnJuydHCdkszHgnOAEgskGwz4hTxJO2FwCBwKEhMCTkHCJ8bGxbCNLNiBLGo1mRjPSjEYaabq7uq5rVZ0fq9aqVdXVoxlpLkjmex490oy6q6uru971rfd7v/eLoggjIyN48skn4Xkebr75ZmzatKnQb5N/ULJCoYhCIAHbInm1siisydIbIJsdE8ljFmA3CE0MQZqO7Vgts9RWQQMdpc5GU/ZRdBxBGbjNRjDy+XUtP581SqHMcMd1SvBcC2Ggs86qUMvKn6gqAC6OmZQr8MzUKIdo6OquYtESZpQtb//lzDdOpv4SoqEhgbTrlDMUAg9d9o2gKhBqeNkf/RP7sYV+lAM1YoUBrhxUEVt+7sC2482Pif/e+87vsH8khTGlKl0red0P0+PEvs7av3PewtzASBRAqYrIMRFTNsiSJgUweTcVEw2Llp3Hmp3HkmJWOu2XL8xxrGRUNK1M7AH2Pc/TB3JwlQRftGTfjYiwNu/MFBOqZAqm5kfvhfnRd2LDl/6k5WvMRhBCLnqCMAB85CMfwcjICAYHB/GVr3wFr3jFK/ClL30JL3/5y/H1r7MFdzbNboArCHR5Zvvkk0/CcRzs3r0bmzdvnpa5cddHPpdoGNlj2x/6YvPx+eiVRgnUN1ryuxwI/aRjjTSsDK8bOmZqh8c5SsdCRHQQ32QZs82bAxh3R1wz/V0CKKWudMsvgykbcZ0AXjIJQIxPCXWR5a7efoKZlSTHUzXKsshpOIVFkQpKtYyw32mUseP2p7Drrsdw4+sfzygReIbc1Z3lkivtDgjREAQGdrzhcdxwdwpyMiD7niV+DnwTYcgMg37lj76R+BsrDPhiwHE4dZN0bvmG4JiBZqUDH6cEALHLlBZiESGp05u6og6ldoGNIT+PomPXLWHvGYWa8Pe4UDDutvg25Ys4X+CNRLER2OXMuCXOw/LJwvnmBXGOkSIMc4DmRdyzyxkeOKOFTq778ePHMT4+Ds/zLnrLP5OYqxbgj370o3jkkUewadMmTExM4N577521Y1/29EIURRgdHcXg4CCWLFmC3bt3z1hPF8dJb3oUF1ILvmNB09igxdAzmnrKATYA0upwhG8DDQwQT0FkhTDbmMpAtF8mmZRmUDE51ij78O0yaMCmu0aRAuoZmTHZ3IBEmIEnGZWiJgMo+XBAomX1p8k5da8/jbP9yzNKBe6fQHwDa27sZ+fHuV81wq7XPY6zh1eDUhWT44uZn0BO8N6xuC6yUHnbS0Id5XY3s8WkRBNzwfj2c9ebHxXa4513Po59X7wNYWAgaOH5AADtHUw2FgeamNQRc8mSn2b1XLNLiZbJjnmHYBxogPSZ3/Q7/4H9/8+vYccbHk8fG2gpmCaFLwBQbOn2iYHYjKA0EtBKXktJJjnzuO51T4p/R56R0T2vv+0nCCeL7Q+pzxQqxLGY7jtvEM+tGZPPLnQZh8u5Vpr4KgBA4DK6QB5qGrjc6D1mjT4kLeKFueKka1fEefu5jrqOjg7Yto2zZ89ifHwcJ0+eFI0M/M9s+C3wmA0vXR633norbr31VgDMBOfpp5+elePm47IG3dOnT6Ovrw9LlizBrl27Lkq8rGkaKKVY/BfFOjxKKfz/8UeofPx/ZgADYFs0bsQi3wT5ijGQmKDkTEJCj7X68qJFKfFXJY4ljheFzY5iYcIh04DNMsurJviNp8ltyDTldcXIFd8oNJIRz4nUzMwsUVQJDHGMxb2MNthz1w8zz73pjifwoy+/IjXSSaJrcQ3jp5l3hKpGMEy5jXn6mVHGoSzUhDnQK9/zNTzxN69qenwQmFDUGLe+n3UfwtURQwf4NQoZUComTQtpjgm1FEJdaouslXvnxuXmXkWuUoAaI66XoC6ZmmONqQJFj8X7znTi2SXo5SDTVLN4w2kEtWRyc/Ic4rG6Qt7/li3mnNNPf6+qMft+CD7WyrxulPD/JGQmQWFCKekG86uQi5OiO9C1oOsEbqOM1b296O3tRRiG6O3tRUdHh+gsO336NPr7+2fFb4HHpXrpLkRc1qBrmiZuuukmWNb0ByTmgzuN5Vdfzg0PDw9j5cqVoEl26TXKwttA0eKkSYGNtQkaJah6lI6qjtjgPT6FlXhGJrsAsr3xojjBM9aisT6SxZ+sn+SWjEHDErpjzu/JXqgkMJJJrF5hd1lMNFa0C3TR0cQBtmNxXfjArt/BsuKzJ5al56XE6YwtbnQS6FCUdFROfrjlztf+iLmsmSn4777zMXzv734dphUg8E2Uyz7C5HhGsujd+EZGRUSOmXpcCL1t2trs+xb23skWhH1f/2X2uFajlQq23ZFnFHJwAmDltxNogBazmXry1JBAYwuDGkPrdEFrZdCGCS3XHUYds2mnxQuqcts5/yy5f4Lsr8ESAdnti4Eq19fqVjp3rkjzTMN0tppMH1CSHb/kOSWoagSzRZsvpVQohLq6ujLAOJXfggzE08mKfwG68xzd3d2g9AKG4heIJnvHKMKpU6cwNDSE5cuXY8+ePdB1HSc4x6jEIIEB3Qzh1cowSi2+dNLNIwpeSsx63gu8RfPbaOKb0MyQ3WD8/2IFWpIZ0gJTaKvdnZZWuF0agU4SrwNVpyCSyY6qR4lULsai1RM4N7hUbNXXXdcvBPY9a0/j9PEVhdegs6uenZZLCxzM+Lh5P/VOUE0C08oCElcv+HwemE6b2qkBCK600SjDMkMBuACw9w2PMmCUgJJPf+agHzsmoyeShVNfnmsCiZJzbkV9UyWjOMioDFwuCZTGHyXzxOSuQr5oh3ZJLKakoAgrlC05XXck8bnisWLScDoWXk4AuORPBlbRYp7Iv+JYgWESlvkmHhJcBsclguL1KG1Z4Grlt0AImXFWPJv0wnzFZQ26s6Gd46Abx7Hghnt6epokZmv/9yM48Q6m6W1MtovhgDy4f2jQsMRNELrM7k41KHSTILBL0K2QZcdEFfKyOFKh8K1g4kMQRzmwlItllM0BMyoB7DOdMCs+QteE1eGwGWahLtzH5Awpfb4KTc3+3mrh/xtFClRuBxka8D1W9FMludf6pEMKkGwrtQjbX3EQh76/k12LxACFR7nsNxe1+DECHYFvYsWqccSxIugIHp2d2WsvDIX4PLVcBheRrFtXTFTErgG1PdV/xb4uMt09b/rPwvMCpM/HNpt3CrEi5HZKJWjpwpWet6ROSCRioW1Ba7GQA0xfqxQcNk52VcyvQYNZ4LHQygeDt+0qWsymFus0Y4zUdBxuzJ6ThF3zz/9Dekxr0G0VM82K//3f/x2nTp3CokWLLqqg5nkeXvayl8H3fRBCcOedd+Khhx6aU98F4ApSL1xsaJqGM2fOYN++fajVati1axe2bNlSqHqgREVEso0BoWcUCsczPrZ2udDEOnRYZTmzjZPohvzARyAVrft2SXB1XJEQ5mRr7DUSAEoAqXvNGfFYWcKWVy3IjSLENYU+dOP1x5Jz0zIdVsQzMly2mFrcOynUAFGk4qod/dj9K0/jmlt+kj436Z5iLdHsmMtWnBHPW7psAre8+gnsedWTuOXVTyAM2Zw44cDGjd2T6/Xye/+NXaPAaOKJI2nbL7hgcc4ST0y0jL9GTNW0ql+QYcsRuwY7N19nmTXSDDzT2JC/5nYJZqcrml6A9Ppnjh+xPzRkHWKy1wF3eePDR4uChIb47PILg6ZHouGBTzAGshM/wsSUnf9f4JlNeu1LlXLx4Flxb28v1q9fj+uuuw4333wzbrjhBrz85S9HGIb42c9+hle/+tW48cYb4futm23yYVkWfvCDH+C5557DwYMH8Z3vfAf79u2bU98F4EUMunEc48yZMxgbG0O1WsXOnTuxbdu2KVc0Km2hioCW/+7k0TVNVd38YwqPHzBTEj/pY4+oNuXjQ9k4RppcIV6La4mTmzawy03ZDvGNzDY0dFKJm5yJ8TZR9m8+vaL1ToN4BivuKLHIaDdcnzXiWbJsIp3P5WRNua++7WDyvpSmaRcA88agjtkEqiQB1aXLJvBLb/jPlOclKjN9IVoTaEYZcFWglsI0ewYYcEoAOtPg/K74bCRQbXos0RA6VkH7LpP3qXokPneZYmo1AihwLPiNEkLXZCCdFE8NqflEfHdI6p0RUU2Aqjyg07XLGcqolWF8FEWzArqtQtd1vOQlL8HatWvx+7//+3jsscewf//+GdV3FEVBezsbOhuGIcIwhKIoc+q7AFzmoHux9MLExASefvppjI2NYdWqVVi+fPm0JlBs+n8fBpAWIOJIRUTTZgEuBeMhWmJbGIpk/AuSY0ZES8emS05QQcMStnlRzsNgKhG8OBcJRIICfhBAywmwPLjHLg10RmNQ1h0mF8dksT6PnhVnEfhmMtEiHTm0+Zd+Wvw6iSaZa3O33PxCZjG55Y1pq23kGoh8nc2n83k2mS5AVGoyKK3I6oRjXxcZaMS1007K51rLsnxu7BqAryPO6G9L4u/YNbJ8bsMUAM8z3MjXReFPdAwStbCdtykT9g3xneAToDOPp2o6oJIP8iwYPirOj6ogoQESGggDU/wbyLZg5yPwzSYPjrznBTC7rbOtolarCTriYl6PUoobbrgBS5cuxa/+6q9i48aNc+q7AFzmoDvTmJycxDPPPIORkRFce+21uO6661CpVGY0gWLLP3wEV//jn4EmnVjN2yo2+DFKLBBdu5KCcmK+wkGPb+P436yTjY3eJomRej6CXAbNv/SGlY7DCRyrkJoA0ko3bwLIqwn4McTxk201n8dFpAWGPVZngBEpLIvMm9iExdMPeMiLFHWsjH0mwKRL/Hz4ePkLcaUAElczaTGQskIBgHkryaKF0bYEmHJgRpB0miUZLAfe9MVUxA02TVrQF1TJFP6KZIVFMZUBEI/QsXLdYYl7nlH8vebfw1ZZaubYyWOcekXQWDf86x+CEg2+ZyEMDISBgRu/c/+FT3QO4lILaZqm4eDBgxgZGcHTTz+NF154oekxs714XNagO92LUavVsH//fgwMDGDbtm24/vrr0dbGrANbTQS+UKz8608ByPrScsd8vupHVBHbNRLoIvsA0mw5n3VSorGCFefVCm7O0DURURWBY0HVqZCwEc/M0AdBoyT+5IPNEktoB49JlWTAlDuZ+Ha2bVG96ThtS1g2GDqWyJSJx7b9gV3G0o2jAICNOzgXnLT7+ikHTAo8XZvON9/y3KIo1CpKvTUBepGvM9XAFBHm3OB4Bhs3WoClwhQIcqYbObnHxmxhol7a9SV7M0SRgtAx4dtlRjMlW/mIqukuJLeApQY2hmhwYN7E6fWSzY1oqLXcGXEPZbnTkGe0XJ/eSOwx5Uy3yMhovuJSJwHzWLRoEW699Vbs27dP+C4AmHXfBeAyB90LhW3bOHDgAPr6+rBp0ybs3LkTHR1Z56/8cMqZBAdELqeRY/zkUpDQgG5QkNCAV7AdzIfvWqLAId80MuDwm5VLgPJZn9yRJAfxGFDHkSJAGmBFOCtx3yK+wdqcpZuS39QRSTNMvnAEntnk38ofzykG4qcZVegZ2Sw6mULbKpatPo2124Yy701MqPCZH3EcKaANC9QxBZiFdglrrxlkr+lYmWtEc0BI6yX2/ASEY6qCJp8r5VysYwreV5jL5wEVSDyU04w4TqZIRwXv0Ui02zFRQb1sUZM3yeSDhhqCRkl8lwQXn2tuyE/cyM+zA9hnR0JDfDZuckwOvCTQBZfLHdaCwID18V/DiRMnQEINrssyIz3wEwAAIABJREFU3Zu//98yx25lQjUXcSmge+bMGUxOsuYe13Xxve99D9u3b59T3wXgMpeMtQrHcXDs2DF4nofNmzdP+aHoun5RWt96vZ48P515FXgm1n/hYxj4L59EpKuZkdqOXUEp6c4KfSMVoIessMG//DTU4DUsoc/kEXimqEzng4Y6NCOdjttU4JLuAd+xmm5C3SQtCzH5kD1t09dvnaUWyZtokArw5d9xcFQSzfCilROggVRpT1qFMxMlJC2rHJXuugAyvS039sczoJXCrM43UsRYJAAwCiR0JKERTItJ1iLPYFQCH0WvRWICrxzyQFOZMoqJmma6kZLhdUmgi3Zz4uuZXUip3S0cDgqksjDdkDyaPabFDn0Dmh5luidlyZfbKBeOmOcRBgY2rVkD27ax5NO/inq9DkIInnvuuYyO1jTNOS2iyWHbtiiGzTRGR0dxzz33gFKKKIpw11134dWvfjWuvvpqvPGNb8SDDz6InTt3zqrvAnCZg26eXnBdF/39/Wg0Gti0aRO6u7svSEEYhjEjesFxHPT19cH3fWz+xB+j9od/BiBbxX3ZE38AADj8hg+IzIE9xhRa1UByF5Nbcf2Mhyz3NIV4ThSpIpPhN4yGHIAlIJwPnoUGnsns+MygELAACFMevYVWMyJaBjhD14JuhVDU4uNxzpEDFLch5B1wNNSEJwQvIInptEQTXVbENxL/AVI4q07wtLmGgZikc9gUJW456JOHaJlOJnCIDHk6BvNUAW2YIPUyFJ1CK4UIq5XMbkgzQ2ZEJNMLkh2lPA0CYFltHClNn5fovEu+N2xemQbVihB6lvhu8e+n75kCWD3XgmmFIpPldo6OXRGNMILTtSswzBAdHR2Z3WIcx/B9H7Zto16vY3x8HI7jwPd9HD58GO3t7ejo6EBbW9usei7w12bv+eI27Dt27MCBAweafj+XvgvAZQ66AANe13Vx/PhxVKtVbNy4Eb29vdPme6dLL3ieh/7+ftTrdWzatAlLliyBoig4xwcxhhobVy0Fn6QQx6l+kk1vSF2c+E0TEa0p26yd7UT7IhskNDISH26zJ4M1DXUmWNcoolzWFMcKIqIVZka+U4JV9oVHr1n2ESQtnnGsJP4QMQLXhFEK4DXKYuEgvsn0opFkVC5tk1Vpgi9JlB2GFQqeUtUiQZ2oBYsEH9bIj6sZBO3LJtMutlxG36TJzY0w5w0I7Hqrzd17XPdLEz/iVs0BCa+bz2hpvdTyOZnzCjQUzcYjvg49UTbopUA0YmReI8xy76wGII104p4MYZYDl0fJA82j33nwhT7fuCJ7ZMihKApKpRJKpRJ6enoApDvNFStWoF6vY3R0FI1GA5RSlMtlAcTt7e2wLOuSC1XzoZKYzbjsQbevrw/j4+PYsGEDtm/fPuMP4EKFtCAIMDAwgImJCWzYsAFXX3115jU2fvEvcPgNH4CqRgj/+J7Mc3d86//C87f/qfiZgyolOgwzMTunGoCke0waHZ7fsoeeBU3PnicJdAnMmfZT1WgGzDPvxTMzN57vWujsqYJSVVTuaUFBi+YWA98pQdOJWGS4hI0X9jLn7VpYvmFUzNAKfSOdlFFAaeTpQO6IJZ+LZlBRhNNKYZNPsaJGzA4zyU5L3YkjGdEAyUgoKsIR7iDGM+t6CYqSUhuZ6+KY0CrZhYzYJejtHohdgmrQpvcj0wuhY0LVs3RJvmCWn/DAAVdrIQWjiXk4wJp5SO57lDet4W28lKrMoDzURWEsjhWYZsDGGE1jPJR4D4TAMIzC7jLXdWHbNqrVKk6ePAnf96HrugBhPl59OtlrFEWXHeACVwDoLlu2DBs3brzoi6+qaiHxTwjB0NAQxsbGsG7dOmzevLnlF2Hb1z6MarWK4eHhwv+nVAMC4LyzGIt72QysMDAFiHIQo1SDoqYDIc2Sz0Cq4GVlSRgHMko1sV0NfVPIyPIReCasiie2kEDqLpWnJjKSrtwIHN0IETglaDptyshiydw8vMA0DqBZI6xqsciaebbLKQlZhiYyeimDlevDlQRwuacwccuwWhSqxLnHOR+batoQYHY5cMcWobycFWB4MwZ//0XeF2E1mbPHu9LiZmc4r17OtFZrBmGLnRJnzMaFg5xB2ZSHUP7ME3UG1TItvNycxnPK0Ll3R0794XuMujKtIJMVB0E6hknXp0fDcbObfCiKgkqlgkqlgqVLl6bXJwxRr9dh2zaGh4fRaLDPp1KpZMA437hUr9ebCuOXQ1z2oNvV1YUoai0An2nwmWojIyNYs2YNbrnllmmtupqmFWbMrlOCYYZwGhWYVpB0BKU8XBSpmTlhHHAJ0QDPglX204pyyFpvzVLAslYtzhTXwqS7rNzZSH5m0wiMcppV86JURNSmTz/0DRhWmJGptSreyf/Hq+it+F/Ox3IvXk2jCBol6FYg5nLJmWRENahadkFQ86DeIpuXw2zPFoV4lpnnUvMRhTpUPSicgxdUi/1uZeqC2CVGUUwxEYSZ2VtQ9UhcN26Mz99X4Fri2gWSBSMhLNvnBVm/UWKfq3Q9mBJGafJPEJ9xQkeZZtg0TglgC6yqRZmdz0sefVfL95N57gx9FwzDQHd3N7q7u8XvoigS5jcTExMYGhpCEATC/Ob8+fM4d+7cRWt0h4eH8da3vhVjY2NQVRX33Xcf7r//fpw7dw533303BgcHcdVVV+GrX/3qrEjS5LjsJWOztb2Qx/xQSrF3716sW7du2iT9VCqIImOX/LbPbZQzUwvSxxUMZJQ0pnL/e96qj3sJ5MdlAwy0SGi0lJzx4H31vEmCg7bV5oFStYkiCB2L/Uk8JXjXmvy4UrubTCngEy2ab1D+eLMUIPQslDqz2WlM1aQjsMCOkWhNEj7qsQYO0ZSQmMSTnF43T6XERGtqogAYsOY7xvITHohjIpSOHzrWtLoHM+qTgrWBUwR5uR7X4cqKBJ79BgUdYwCTgQGp7jbwTez+7u8hCHUxhQNAhje+UMyG74Kqqujo6MCKFSuwefNm7Ny5EzfffDO2bt2Krq4u9PX14ZOf/CSefPJJvOQlL8F9992H/v7+aR9f13V8/OMfxwsvvIB9+/bhr/7qr3Do0CE8/PDDuO2229DX14fbbrsNDz/88CW9j8L3NutHvMwijmOEYYh9+/ah0Whg9+7d2Lhx44wrra1A9+bvvUf8m7dPBn4zkMohy7Hqk+2IC6bvAmmrpnwD+p4JP6e1BSDE8QCapvnyTiMhOcsBlji2a8H3zKYFQxwnp1fmN2rgpiPcS22pFCv1A+accHqTtxwbFEtmMJ4B4usIkqwxsK2mWXVAuq3n3K+Xy1ZJw0Josz8xVVNtMu8QbNEBR1w2+Zk0LFDPRFAvI0zohnyW7CevyXTD2esrdNgSwAaulaEA5CyXykZDucYE380NmpQfm3yv3Ea5kLsHsuAaURV+YAg7zenGxTiMTSd40a6npwdvetOb8MADD+CNb3wjvvvd7+Id73jHjDLSFStW4MYbbwTApl1s374dJ0+exDe/+U3ccw+rzcyF7wJwBdALFxtxHGNiYgLHjh1DFEXYsWPHRev9gGJ64ezZszh27Jhw6MpMBvBNUKoyqiC56Qb61mHFqtPiMQ27kpmKy3WW+chnPOLxgSkKdjx4lsx5YhIaTIGg6OI1gGZBPc+4K+1O0/+xabDsPPM0AL+JOSXSKuTut4iqrAMqThsxBK8ZK4ASt5S6AanDljBUpyrimOuD2e94EQto3WpLvLToR30DWm6rrpcDkQXnmzxooAvf5At5Wsi7AN7AoiSTokM/bQfn1yKOFahWJLodATQt5F6jhChK6QWnUYZpBSKj9T0mWZR9i2XA9TwLupaOk5pJUEpn1QqxVfAW4La2Nuzdu/eijzM4OIgDBw5gz549OH36NFasYP7QK1aswPj4+GydrojLHnQvhl44f/48+vr6UCqVsGPHDhw+fPiSV2b5PKrVKo4ePQrTNLFjxw78mOxDSHRoGsXoyDKsWH0689woYtvvINDRsNvY9jEwhEwnDJjBdxgaCMO0C42DShiw7CemKoKAFa3aulgByW2UmzqUisKebEd74hEcxwp8N7kpC2Rm+ZCF+Jzi4K9JAiOdGlGwOBDfgKJGTYU4MkV2FRE94y9cVGgEst16RV6ysjb4QsHNjLinhl8ro7S40VQQi+OUwoio1qR4AFh2GhGWUUeuKjjd0Gf0gKJFTVysa1dYsTXxMubdi/za8+KbqtMmAOadZY5dQbmt2DfZdS1YZpihFDzPhKZHCF0Nrzr4m9O6TsDcZbr5kM1uLjZs28brX/96fPKTn5yTAZdF8aKiF+r1Op599lkMDAxg+/bt2LFjByqVykX7L+QjiiIcPHgQfX192Lp1K66//npUKhXRLEGIjjhSEHhmxsVJ3uqfPt2dOSb3cSDkwuujXBCRueA818sr0vy1BZ9XkIlyWiIMdEFLBInHAyvUJQoF3xQaz/xrco6RezfkVRCtQlAkQj5lggQGPMkXgfhMGhYUeCkoUkNFlHjP+nYptc4MU/e3dJxR0r7s8anOFfH4ogjyZjdIzWxiqsCvVkA5r9rC3Q2AcJDjEfqsddwv4O/59WSSMAOeU2JqB9nWM6EPiq6zY6f0SuCbaDTK8JPPru3/vhb79+/H2i++hD1/Ghx0PuYLdCcnJy+pyBWGIV7/+tfjLW95C+644w4ATA01Osr8QkZHRzMqi9mKF0Wmy7vIgiDA5s2bmyqelwq6vu/j2LFjcF0X27dvx5IlS5oec9tTvyf+feBVHxJZLG/RnApUSWAgCIzCrFPunU9lPgasip/hXrlSApFSKDEKPNYezDOppkJUi5uvVTsqwLwpeANB4JkoGyTdwkaKAImMt0SsiFHiAMtWZanSVB6+oWtlzlvXInj1MlNZFM2DSxQQwkPDTSkHTieEjpk2VLRwbgsbpQz14J5vR6nTkdQi6f8R34COEEGjJKR5gnvOtAsXX2/PtQpbdR27IppJTC4Lo2lBMQwM6AYRGlyStC/LE5L9wMDLbr4ZhBDYto3yv9wK27bRaDTwzDPPZKb6dnR0FBr9s9ctlozNdtRqNWzatOminhvHMe69915s374d7373u8XvX/Oa1+Dzn/88HnjggTnxXQCuANCdKlp1keXjYkE3DEMMDAzg7Nmz2LBhAyYnJzOyl1ax818fxIFXfUhQCL5nYejE8rQNNNmGh1IRo63dSSaz6iiVfQasZT9xC8t++cOATXANfRNmyc9Us+WIIhVxlK1sKyqbABtFahOYykUZ2V1N1WLmM1EgL2PjY3QoKptIYLV5zGcgUpval0X3WQKemkYz+tBQau6onu4W0jj+u6JBngCTiuVdypxzHTDbfMaXSoAcNEoodTrs35JJUeiaYj7dVEEcC06tDZpBM5xufhJ0HLNFR9GiNLsOdBCiN9FBrt0sU3MbZcbxa1GhHtv3LJBQb6ITSKijkXQVhkSHpkaC1+XFNV3XsWjRokxyEkURHMdBvV7HxMQEBgcHQQgREi6upy2VSrM2NeJCcSlmN0888QT+/u//Htdddx1uuOEGAMCf//mf44EHHsBdd92Fz3zmM1i7di2+9rWvzeYpA7hCQfdCXWT5mCnoci3vyZMnsXbtWuzduxeqqmJwcHDajvlcRib+DjVoSUbFZ3xxUCZERxCkRR3PzY7NVtUIXliCptEMwBpWgNA3QYiWuZFpqAHJrjgMDdGDXzvXiU5paGXgmaBUgyVnnplZbSxDLrX50BPdKGIGqFYuG4sjVXSDkZBNlKif60SpzUUUpdlsVv3AinxNemJpkaChDrUAdEiQzonjSoCIqEwXnRgPRYTZTOotmkjyETglRERDqcNB4JRAAwNWAtAAy45beTl4tRQ4+QIQeGyGXiFoOqVCPjjfUZZ5z6EOTadCBgYgY7vIh3W+4qm349FbPlP4mFYhT+rlIc8v4+2+nufB8zyoqopFixbNqMNspnEpXrovfelLW7qhff/737+U07pgXPagK4Op3EV21VVXYcuWLdOiH6YLunEc49SpUxgcHMSKFSuwd+/eDMBqmjZtPot/0Q0zBKUa3jzwZnx29VehqVFTxdjzTJQrbpNW0muwbjCe6TlOCZoaw7QC1M53olzxMoYohhUiCAwYBoHXKEHVaTod1mfbz9A3QClrJeWZredazCs2VsSWmNMiAFCb6IRV8bPGPQ6b4RbHCjSdVdo1PZU4+U4ps3AEntlyECKQegK49XJT4YxX+I1yIJoIlIRaKHW4SVYnuWnVGQB2WGySBPFNscsQxjqeAUWLE0om+3pevQJVp/DqZQG6nLfl1zOiKsClZ7kCYjQFp61pNB2z5BsIYhMGz5iTYiwhWSN3J5cJkzAnKysoIoYSnUUjFUGgI1Rmlp22muq7f/9+9PT0wHXdTIdZW1ubyIg7OjoumYKYLS/d+Y7LHnSBi+8i46Hr+pQD7fg8tf7+fnR3d2P37t2FkhgO3tORy7z0//tDPP5Ln0AYGLjmX96Gp59+Gnv+41qEYYgNGzbgR7/85fT9URWhpALIB8+WLSsESXrnuem0rPn1GqWW8h9CdOgGa0UmgQGz1Pp6tJyLRbXCcyRhtlmB5poI2DaZCsUEYgVmmbVAQ4lhWCEiokLRIoRByiHz8+AKhKJCFfHZdWPextPzTfZqFehmiMa5dihKwkd3OIWPpckOhC9g508tEa9rVnx4dgmqGkO3QviOBZ1/LpJvBsAWAk6p8Gsmh2uX2aSSiC1ORXPjGo0yKskOI44UNBplaDoVqgRNp4Ku4gWyINZhJucxE4XCVBHHMZYsWZK5B3mHWb1ex5kzZzAwMABCyCUZ4MyGemEh4rIH3TiO8dRTT2Hp0qXYu3fvRa2euq6L1TgfXF5WqVSwc+fOKWep8Ux3unHDv/0Ojh49ioGBAVxzzTVob2/HoUOHQClFGGowDCYd4zdiFKkgRBdZWbniwnXK4mdC2fbZ0CkcpwSr5IOEOkwrEHxdRFU4QRmVNhdekm26ThmGGcJzSzBLAeKY8bytxr1QqkHTKBr1NkYlJNtjBhTMQzhuIe30E2rET5QSRVtoAE1z4oCUVuAtrnG9jM6eKvyGNWWWzAt2nlMSgB3HitjmF3HBzKEs/ZkX27g+mP9cO70IbYttqCTt1nPrZfhOCV3qeWg6bXI/y6tEeBbvOSVWJIsVhKEBw0glg4XXyDeFX4Kc7TYa5Zb8Nv8e+L4Bi9Mv0/RSnm7EcdyU9PAOs7wtpOd5qNfrqNVqwgDHMIwMEFcqlcIkql6v/wJ0FyJUVcXevXsvqR24iF6o1+vo6+sDAFx99dXTapyYriE6VzvYto0tW7ZktkiapgkvCZ6NhKEGz+vG0mXnCo93YmQperprzHhGiREKysAUf2ta6/MiVIWcuxpWyBQTnglKNJTaPHiuBU2nAog9pwTfsxJfiTKsii+MUphRutzUYQqjlXy49QrKHY6gP1oFN/5p6pYryPh4xlzucODWK4zzbljQTZKhMdx6JSlGMoOY0GeqDwDw7FJTOzEJjaamDNYNyNqRz53qySgcmIdEkrlKPK44XqK/lqmAwDNhci8GTidI/L+mM063iIfVc7sY3SBMcx2kDnJOspi97oW78c1rvwJdoyAtmmvmOmR6QpZmBUEA27Zh2zaGhobgOA4URRH0hGEYME1zzicOz1Vc9qALtHYKm27IoOu6rpB/XWjqRD5amd7wIIRgYGAAZ86caVng49my65soWwGC0ICZZDy8wEaIDssMM3rbKFIBwjIYVYtF9snD9y3BFes6EcUWniFxpQSlGto77ExBjptcy62jNHejco5Y/OyURacX3/5z7XCrNuLQNzJbbt8zYZUCuHYFuhE20RL551JaPART1gxTooMSHVbFgyc1jgSO1TQ5N4rUpuP5sg+tEqNRbUej3pYpNsohxipJ4D0+shSLeiahqhEcmy0KfCGIIlVouAPPzEjA5GPKqg4ZgAPfxKnRJVjaU034dJr53H79ubek78XXQTV2Te84fFfh+S9EmKbZZIBDKRX0xIEDB/DQQw9hdHQUd911F3bu3Inbb78d11133bRf4x3veAe+/e1vY+nSpfjpT9lU6vkwuwGukOaISzW90XUdQRDg8OHDOHjwIJYvX47du3fP+IK3ohc457xv3z5YloW9e/di+fLlhefNj3FX31sRJCDl+iZcKWvlQYkGSjTUG2Yh2NRrbRc857AgUyREz4zU5oChqLGQKonnJ+DdsCuIiCa6n+TgzyehBkpU1M53IvBMMZdLDt+14DoluE6zh4A92YHANzLPE/7D3D2tQB5XpDF262VElDWqyIZAvmOJrJQETI7n1Cpw6uxaypmsmFJMNPieCUdqcPCdpKnENwUtIru3+a4lRtoXRdHEY9fJeiZwbTcvlBGqIiQaPF+H7xsIAh1O8t4c1xJZLo+7+u6EF+izCrhzNR9N0zR0dnZi1apVeOUrX4knnngCq1evxoc//GFs2rQJjlPMubeKt73tbfjOd76T+d18mN0AVwjoXkpQSjEyMoJz586ho6MDe/fundHkCTnyNEUcxzh9+jT27dsH3/exd+9erF27dsoin6qqArhdz4DrZQsfcviBIUBzcGQJfAkMfQmc5cYL/hgSpoMHfc9CLQEVV7oxZeD13GYuu9EoFzqoyZIlRcn6AoS5bbHrlAoHezYdM9mWc8CVjV2KnNj4a8nmMq3mwBlWCM8pCVCMIiW1SwQK/S6KXN3yUTub8o1CtZE8Z3IiK3WSF6t8x2IQGGjYFWEk7jrJwEiPdZPxKFoogfQzL+Ju33z8jinfw0xjvozFbdtGZ2cntmzZgrvuugt79uyZ0fNf9rKXNWnq58PsBngRg66cfRqGgba2NqxateqSvjBypnv+/Hk8/fTTOHv2LG688UZs3rx5WkU++Ri/OfRmAOxm8UMdt/7ofvE4ztPxLCeKFZEZAwykHZcJ5D3PhJcr3vCMOU8TUKIh8E1x03puSQAupyKcRiWTcfsFtoEcNPIZKw9+LF4cJERvGiFDQ12ALPOekGROVE3cslJ5lTzPC2AgG8cKAs+CY1dEE0irzjIeoWdh9AQzPZEBXZ6CDBSDsWNXxPtgI4qabzFxfgU2mgAwcXZx8v96kxuY65Rx8lSPyGDFMZ0SaKTCdUuYsA3c9vQbM7IwAEKlMJcxX91o1Wp11r0S5sPsBrhCON2ZACXPPo8fP47e3l7s2bMHuq6LfutLCV3XUa1W8eyzzwKAUCTMJDRNy8xs8wM2TeIdJ+8WvyMhk3f5von+E2y1JgmQBKGB0NFQyjU0KEqcGJhQNBplGDpFSDQ4jVLTzciPnwdkOeQMKyQaQqKJ1ua0iYMBg6LGbLChQUCpCt/LNnfUJzvQkfgyhH5arOKP4YY/+YhjBdVznehKGjoo1RB5WS/Z/Nw637FgJNX+SruDybOL0NaRKleIbwru2LXLorDGrosmgJJPeQ4CA55bgq6TjCMcd4ijVIPv6mIK76nBlen7kgaPci6bA6/nllAqe2g0ytC1qOWMMgAZGZhhUPz36msQRREIZfpbywoRBDpe/fwd4rsVxzE0TRP3zmw1L8yX70K1Wr0slQvAFQK6042JiQn09fWhs7MTN910Eyxr6u3hTML3fZw8eRK2beP666+/aAI+zwvfO5qCLZu8mlSiIxWUqKCRAp+qMNUIUaxAVWIEREMJgN0oob292FUKaDZX930TukZRtyvoaHcQhKxgJwfPcHmffxCmgMjB2rErGctAHnmDdq5+kINnvaoawZAkazJFEviG0CEDLKue7igZIB3KyCRzrR9Xr7VD0aJC5YdTr8D3zMx55MOutWPyfKdwlQsz9I+BNmk9Fg0RgQGnUYLrWOhuoan2Qw0nx7rR023DyL1vTiE4jiO6HP1knBPXj0dRhCiKEMexUMrw75yiKAKALwaI59Ps5mK70VoFN7tZsWLFnJndAFcIvXChTLdWq+HHP/4xhoeHcd111+Hqq6+eNcAlhKCvrw/79+9HV1cXli1bdkkVT5nT5RHHMSiloJTilQfuAY1UhKGGX3/+bfATIAsiFf2nOuEnNx2nE8bPsC+mm2Sd/O9Go4z+E72iGymiCiu85HhKnkW5GQUAm07g+ybq9VQfWq+3FXY/8e2055YytERINGElmG+4iCIVDU5n2JXE6YwpFFjrcnZ7LXxiJWN3AKid7xCNBIRoTcDvuZZ4LCE6As/E2PDy7DVwrabJC2L+m7RwcZqFn5thhuKcA9/AUP8a8djAZ7wtPzdeAOSLkJvnvpP35QcGK5QF7HkNp5QuxFTDkeHFOHbsGA4dOgQ/1OH4BvxQg+sbUFUVqqpC13WYpgnLslAqlWCaJnRdF5kv/66FYYgwDEEIAaV0WmOx5jPTnW3Q5WY3AObM7Aa4wjNdx3Fw9OhREEKwefPmKbcjiqIgiqJpr+58vM/w8DDWrFmDvXv3ol6vtxxOOd3IZ7occOM4FlnI7T9Jpw57Ej7LUB0QDSo34CYafN9AGGowTeY0RXNV/mq9grZkK91wSuhoT6vBruTeRUIdQahnimWeZ4GEGiptqd9C4JsgVG3SjtbrbU2ZY6NRhmGEoNCafHXl47HzVoSo37FZFxeXfckFOZ4t87BrLK00zBClctYX4vzZxVjccx6qFgtqwa5XoGoRKm3pdQg8KzOvrdEoo1z20y6yJEvnP/MGkOGBVdCTrN2R2p/PnOlGb+85hIHB5ucFBk6eXCqKo26SwRO+sPomVC1CQFT81zOvxb/t/Kw4Nzd5rV/6916Ypondu3fj5hM34/Nrv47fHJxancDBWA45E85nxLz5QVGUTGbMrgGZN073UkD3TW96Ex599FGcPXsWq1evxkMPPTQvZjfAFQq6vu+jv78ftVoNmzdvLrRazMd0W3jjOMb4+Dj6+/sznDAw8460ouDH4F90/mXnX/B8/LF9Oz7Y/i1oAD5o344vXvVPjkeXAAAgAElEQVRVeL4OTY1Rsghsx8SSxaynP68QcH0VDccSnK7cpcQz3CadatL2SkJN8Jo8nEYJlhmy/5e65DQ1ZoAhPCLK0NQow4Hy4F1WihKzAZZBmsW1ivNn0inLcoS+CbfBuu141gmwTNS0ApGZuq6FWv8arFo3ivHRntyIm+IpuMJGM2m59jxT8OiUakwTrcbwAxOGTlCvV1AuBYJf53pq7nMR+Ez2xz8PrlbhHYicrukfTLe8rmdCUyN4gQHTIIhiBTfccEOma/KeE3e2vG5TBQdSOWudCojFNQ/DOTG3ycelgu6Xv/zlwt/PtdkNcIXRC/JWv7u7G3v27JkW4ALTM725kCJhNszQVVWF53lwXVfIb3hW0So+aN+OP7ZvBwCcq0kyr2SEjJtTLrieKW7q0XOsIMaBt2anjRA0KbTxyM/K4vwh/5tnz7L2V1Y25D2DfS+dnXb+XHYXIsubqERDAGxxyFf1A89MDd8DPbFJzD5PHI9qQnbFs1MAODm0ohDc2VwyVSgxXKcEu96Oc8k5uzlKxnUt2HYF586x6notZ0jD6YAzEx1i6kcYGOnMu+SzeeHY8nTOXLIYBQmPDwCvO/RmeMmxGo6FO154y5Rt6pcaqqpC0zTREcapCcMwoGkaHMfByMgIKpWKoCaCIBDUxGxO7a7VarNOL8xXXBGZLqUUg4ODOHnypNjqz3S1naqF17Zt9PX1IY7jKRUJl5Lp8syBy9eef/55UEpRqVTQ2dmJzs7OKY2jefyf534Df7fiGwiICkIV6FqM239yD751HeOqOJiFREcYKVCV9HecCnBcA67XhWU9zIXL9w2YJgElGjSd4mdHV+CqlZMiu/M8ExW+xecTCwIj09HVyA1D5JV2p1EStITrlMU2nIdjVwTlECZtuXl6wg8MyG0gvB15cGAV4lhBWzJ9OB+2XYGRdGw1EkA1TYKyRD+MnlqKJUsmhf2k71kgRMfY2BIoSowgM1fMLNQba0lW7HomSlYougwpVXB8aDmuWnsaR/tXopJ47rqeAcOg+K9nXovv3Pi/BQjTSIUfJvSHbeOFF15ASNSWM97mI1RVRRRFGBoawvnz53H11VejrS1pJLlAwa6InphuzAWnO19xRYAuIQRRFDVZLc4kdF3PSLWAqT0SiuJiQFfernEZz9atW8X/NRoN1Go1QWlQStHW1pYB4jyH5vgaaKTA1CM4fnLDJttYTiEcGO5ElxYjitOMmEYKSlYO9Fy23TWRcJJJ5luzmZSpWi/DMigc14JlhRgfX4ylS5u3+gCS7XMqUeNgUq+zqQelUgAS6ghJs1sZN/Wx7YSasEIB6rpBMv7E3LynKGy7grLkLex5JkLCnLb44lOvV9BW8UTRsVXYjoVK2c8oMHirdRQr4trxCKVJvg0pA3+hb5XwUuafhefreOqpp8Q10tQIx4YXw48UvH7/Nhw6dAjbtm3D7sHdU57jXMfk5CQOHz6MFStWYNeuXZkd2Ux4YmBmQPyLTHeBo1QqYcOGDZd0DJkamI5HQlHM1AOiqEgmh6Iowjh65cqV4jkciE+fPs2mDVMqXJk6OzvF9jOQhPmvPfSb+PKGf4CuRWgkFogOVRAB6KQqDKngRSMVnq+hQwINx7WgqVGhXpYHP67rljJSJk5LDAz3oHuRCwSA45owDIpSTjLmB4bgMDmQDg4tQ++SWstR6PV6BSTUsbibZeaBb2ZoAiextOSA7Eom8K2sLhtOCboescYUn2WefjKoEQDqDUsU1CjJej7w8x47V8Hybof5CRe0Jx89b+GqjvQ6OZ4hip+/PXoHoijCx0+kAn2avMTExASWL18OQgjCMLzg7mcuglN5ruvi+uuvR7nceo4cjwvxxDIFcSEgvly9dIErBHRno+2QZ7onTpzAiRMnMhMhZjumWyQriiIg5l6ltVoNY2Nj+C//sRz/+StMG/qmn16PyclJdHR0gFAVhKron8hmcAN1HVsWsUKN5+sCtHkEQeq5GhIddqDBPlvBqu5UA0xygNhIqvTlUmorKR9XK1ApnDzVg56E0pCPaTsm4rgLixc1YBi0sKMsJLqQo6lahGPHV6K90toTmFMlA0NLsWRxIx0VFKSqB575Hh9ajg3rxqAqTN1wfCiVlLmeiXIpgOuxRSSOWIPKsZOdsHT2Hh3XgKbGsCwiJH1poZFRQPz62L6GksleX1VVoU5Rk7fsRsC1116LWq0mPJ4JIYKG4gvvXI5AP3PmDI4dO4Z169Zh27Ztl3T/XWzB7vTp07/IdC/niOMYjuNgaGgIq1atumhf3um8zsWC7VQhe5WuWrUKALBrkgFxtVrF6Ogojh49is3/sAbt7e14bs8AACBAWkmtOTosg9ENAAPFodEurFiSdms5riWAkya0RMki8KVRQzzkCjyQTiqoNyxUJAtHLzBgJNX/oiCELQK1hon2hPvV1Ah1O6EAeGtuoOPEyFKsXT0uwJIXBV3PQE93XRwzkiRYNUdHpcyOUbJCeL4h+GnPNxCEKT2TJ46CQMNE0IalS1qYy1MFvjwcNFnQDD3Cz8bL4ni2p0GTO/Q87kwW420v3IC/234QSP77Qw1WMM2PzeHzy86dO4ehoSEEQYBSqZQB4pkYhBdFEAQ4cuQI4jjGjTfeOKvNRXK0AmKAzT185JFHMDw8PGevP9dxxYCuoigX5XB0/vx5HD16FKqqYuXKldi8efMlnwunC+Sf5wJsp4oi02jOv9396HL8w61jAAAHMSiA5QD8UEEUK7AMpgX1JHqCA9nh020oS0mt5+sIiApTj0AjlrVVR7qxcmkNUaTC9UyoSgxCNdQ9DTVPx4rFESzRRqs3FfKiSBVZa941zPNMdo4mQcMpiaJavWFBUYAjx1YmdojS6KBAy5jCc/9YIctK9MQ1uwQz4ad5mAbF+VoJh4+tQEAUmEn2yhcnXWPvTVFiOK6ZWXwaRAEhKvScR0O9YYKX6pxAFVksD01hfs6HDx9GV1cXvJgtjq10Mdxrtq2tDcuXsyy8yCDc8zxYliVAuKOjA+Vy+YLfxTiOMTo6iqGhIWzcuHHOOrWmClVVcfDgQdx///14zWteg4GBgQWhVWYjrhjQnWnkFQmu6+L8+eIC0EyCgz//W94mzQfYFgUvCHqeh2uuuQYdHR34PP4FVIlhxgo+fOqX8ddrHkM5AT0vVBFECn4SBzh0qozbepKR3gkAVhM8WxIphTRBPgjVcHRkERSkj63altAS86g1LHR0MO0pl1X1j3TD1CMoCpqy4ShWECUZ9Mi5MpZ3pnRCEGgC7LwE1IVCwQib5qy1Ci/QEVIFhuThQCOI9mHXV8Wiwflh2zHhJhTI20buxOdWfx1VT4ehx1CVmLXmKhH+ymYdT48s+hcEkQoaA7oS4zd+vB2HDx/Gtm3b0NHRgY82tkzvZKVoZRDu+z5qtZoYJOm6LgzDyABxW1ub+J66rosXXngBpVIJu3btWhCg830ff/EXf4FHH30Un/nMZ7Bjx455P4fZjCsGdKeb6bZSJPB2x0sNXpAzDGPKItl8BKUUJ06cwOnTp7Fx40b09PSIm+lTjdfgXe3fxP9qvAYA8EDtdvzPrm8BgNjqhkoMAjY6SNVi/GTCAkWMMtgxHF+DZWSzONvVoGuxKD5xSVWDAu0XEJaERMV/HunFSzecg6amxae6p0FTgI5K2uHmBzorbvk6AqKhRoHuhDs2tAhuoKFDj9BwU09ieYEIQ00A++DZMtZ2s9wzCDXxGoSqsJ1EJ0uaF0s/VKEqMZ4fbceOFTZ7Hc/AsbNlaGD0DXtcTlOccx5zqQIaA6bKipsc4OZigbYsC729vZlBkkEQiIz4zJkzcBxHaMM9z8P69euxcuXKBfkOHzhwAPfffz/uuOMOPPbYY5dtdivHFQO6FwpCCAYHBzE+Pl6oSJiNxgaA8VBBEIhjL0R2y53UBgYGsHLlStx8882FN8xf29nechrzCrmCIAaoGgEK8PaTd+Hdbd9q6qQZDhVsSu6Buptke0oMn6j47mgZv7rCRSTpVu0k+6s1TJh6lICPjjDpWgMAW4lwaKgbJS0CjRWxjSexgrFzZSxd7GX0xPlM2/VVNGK2GNQdQ2zdT4x1YP3KWvIY1hzSP56qe/1Ag5VQEhyo/VDFUVfFGh0wk0y36mloN6nQywbJwuCHGrSEK44BVGOgnLw2d4ALiQIaqfhpEANS1h8m9EEQAe+d+LV55ypN08SSJUtEI5Ft2zh06BBKpRJ6e3sxOTmJkZERMYadZ8Xt7e1z5rPg+z4efvhhPP744/jc5z6Ha6+9dk5eZyHiigHdVsBW5JFQBECXCrqcRuju7sbBgweh67rQ0nZ2dqJSqcwL+NZqNRw9ehRtbW246aabZlTFfqDGWopjAA8lHW48Hmncjv/exjJhN+GBdSjwQxV+pMCSwO9ZSgAFeH60nWV8MWAqzBtCAzDualjdMXV3kkdVBBFQlrb1fqQgCDTYxMhQE3HEjl1zNRjSecTJIiLMvxNDeK7EoDHjT8W1axhNmTsADBNgZazCjwBLBezEbEZVgGdiH3/0/TX451ek0i4zOWY12Xn9t7Ovxf9a/E0oCjsXT6H4Qv0OxHGMkZERvPJ7vfj2bWcAYEGLQ1EUYWBgABMTE9i+fXumHgCwnVO9Xke9XsfIyAhs20Ycx2hvbxfUxGyMVt+/fz/+4A/+AG94wxvwwx/+cF68HOYzrqx3I8VUHglFcbGgmy+SrV69GmvWrEEYhqjVaqKxwXEcmKaZAeJSqTRrQOx5Hvr7++H7PrZu3dp0w0w3PpgDWznqSgRLylxrCoUfSXpYqsBUFQAUFDEGlBBro2RqQQJwfoKJAVHhBCoMVUXZimC7GmisAIgFGAYAQBUQMGrCy+Gh5+uIYgXP2SryPYJ+yIp7dqChrEd4jlKMn65gxzIHtmOhb8KCqTAJFn88/5sDbxQrIEqMpPzZdD1cCkAF9uzZg3/At+ArEaxYRSgl3z/72c/Q2dkJL8mCfxYzfpwXyhYtWoTdu3djb2NhByxOTk7iyJEjWLZsGXbt2lWYmGiahkWLFmWkWlEUwbZtIVfs6+tDFEViiOR0OykB9h3+yEc+gieffBJf+MIXcM0118zqe/x5iSsSdLkioa2tDTfeeOO0+tFnCroXKpIZhpHZsgFpEaNWq+HUqVPwPE/IevifmWY6lFIMDQ1hfHy8ibedi6grFEYCQH9nvxYA8HDnt+An2aRNgboaohLrqCshPBgCjBADMWIESgw/VEWW6foqgkjFcRqhrlB0RarIFnk0KANsx9eErjWKFYQJ12orEVyiYI2uQk84aZ6RTgYqoDDofP50BRze6gk4WsjqZR2fSeAaoYqGQuAjgh2ZMAD4ERCCZewkBupKYhCkpCtCBIAgxidqvy4A6fZ9G/HBvYcABfiD76zEc889hw0bNmDZsmULOtGWEIJjx46h0WjguuuuQ6VSufCTpFBVVXx3eURRBMdxCrXEMhDL3/VnnnkG7373u3H33Xfj0UcfveKyWzmumHemKMq0PRJaPX+6caFOslaRL2IwU3If1WoVk5OTOHHiBIIgyPgtdHZ2FmYJ0+VtZzP+1v4NvL39nwAAngQybgFT4CgEodKaQojRnDs2FMapnlBDXBUZbL4asq5M3wgbuANtDLRzfG5doXCpjiBWoCvISNtshaCmqOiMVUxKxUAAmESMH8STuJsuQhCpsLQITqjhp3EIXXpcCMCLgVLyqwZikCQPJmA3k69EIAACsPHgXV1dwlL0r/p70dfXh97eXpRKJcGVRlEktugckOYDiM+ePYtjx45hzZo12Lp166wt1pz7baUlPn/+PIaGhjAyMoJPfepTKJVKGBsbw1/+5V/i5S9/+YIofOYzrhjQHR8fR19f37Q8Ei42ZltvqyisUl0qlbBs2TLxGq7rolqt4uzZszh+/DgIIcJvoaurC3Ec4/jx4xfF215qeEoECgVUKgQ5MVBRGIXwnM6q+CEifLf6FtzX/s8woIhsN1BiEACfV8ZxF1kGLbl+QQSBwq5CEMGAG8fQoKBNoiVUMGpCU2PQSMGzYYS2gq0/wBYDFQCH/hHVwzpaRqjEKEs0CcdmURQraDf+M/t2vCfhtAHAjoH9xiQem3wrALYgva2DLUhWnNcWezhy5AgURSmcWCJv0XkjCwdiOTOcrewvCAIcPXoUlFLs3LlzXnjkIi1xEASI4xjr16/HLbfcgkceeQTPPPMM3vve9875+SxkXDGg29vbi8WLF8/JKjmfzQ2KoqBSqaBSqYghedxvYWJiAocOHUIQBML1f2xsDF1dXXNaSZbjy/XXi3+HYYjjx4/jrkeXY8uWLejq6sIrur4ITQLBT9uvxTvbvwkdgK3QBLRjPHf+t/Hhjm8xsAXwU9WHDwodCkLEcCVQb8QpcPoKxT9hEr9OFouiWUOJwBu6GjHA9wU0+fmY5sJRCHxQAMwjwEWMUIlhxApCJcaPJpkx/J+1M2A9qLoog1Ek/1jLmoC7MRAiBkE20+ZhKwRfqr8ecRxjeHgYp06dwqZNm9DT01P4+FZbdNljQ+ZK5S6zmQBxHMcYGxvD4OCgoDYWIlzXxYc+9CE8++yz+OxnPysMnl4sccWA7oU8Z6cT+ekRC9FJVhRRFGF8fBzj4+PYsmULenp6EMexyI5OnjyJep21ufKbsaurC21tbXPmHXHq1CmcOHEC69atw5YtW8R1+UH1N5se7ya0QSnJAL+UAPcH6rfjwSR7rCshTClD5EoHgAEu50xDRPjh+JvxjiXfBihTUBDEgAIESoTf+tFm/P2eAXiSZMtRGFcfKTHqCoUJFSHnfVUK2cPnSc2GEavQocBVSIarlReCTyX6Zjk+V3+d+He+UDbTBbGoo5ADcb1ez7jOTcf+0/M8vPDCC7Asa8GaHADgySefxHve8x781m/9Fj72sY8tKJ+9UHHFgO5smd7wxoafh06yqXhbRVGasiMu6anVahgaGoJt25ksqrOzM9NtdDFRrVZx5MgRASbTybQ8JUIpVjM8MI8PNW7H/9HFXPwDJYKHGP9eZaPn72v/ZyhJ1qwD+JHOZFWmaQp6g4JREK5CoEHNuF15Epj6oPjh+d/CGzv/kRX0pEvwWTsFy3+tvgmv6voyAiCTsQPFQJsPQoiYWrJ9+/YZT4OeKmQgLnKd40UrGYjb29th2zbGxsawZcsWdHd3z9r5zCQcx8Gf/umf4vnnn8dXvvIVbNky8y67KyWuGNCdjeBOY9yicaE6yQAGbkePHkV7e/u0edsiSQ8hRCgmjh8/jkajAcMwMkA8nf573snn+z6uueYaYVQ9nfhq7U7c1fl18e98NJQQbbGBqGC7HiCCCRUNJUJDITh6/ncBAF+qvg6vW/S1TKGLH7um/BRmrIACeNI4Aws6fBDs27cPDzy2ER972XEYCZMbonkh8JPXpIjxb9U3Tft9cvetNWvWZLL/uQzZdY4HL1qdOXMGhw4dAsDUNMPDw6hWqyIjno9aQBzHIrt9+9vfjk984hMvyuxWjl+AbhJxHMMwDPT396O7uxtdXV3T8gid7fA8D8eOHUMQBLOSKem6ju7u7kyGw9s+q9UqxsbG4LouTNNEV1dXRrrG6Zbh4WGMjo5iw4YN6O3tvSgwKQJbHo9NvhUvW/QFAFkQrCsUpViFr0SIEAvAPXfuHI4ePQoAokDnKKnBzV/bv4F3tX8Tz+rn2GNAsH/yXqEWIehHmDw+RIQDBw5kFqHvV9+Cly76QobumCp4oUxV1Tl135pu8B3S2bNnccMNN6Czs1MAca1Ww8TEBAYGBhCGYUbGNduWkI1GAw899BAOHTqEr33ta9i0adOsHftyDuUCfgULOAhk5uH7rf1TW4XM28pZYbVazehoOSDNVXYw33rbfHANcbVaRa1Wg+/7Yl5bd3c3Nm3atCCL0Fs6/lFwwJ7n4ejRo4jjGFu2bMFrln8DAKBDRYAI36++pen51yz+NADgZ+fvy/z+dZ1fBQB8o/oGeJ4nTGD4ey+XyxkgLvrc5ULZdAegznVUq1UcPnwYS5cuxbp166bcqXGlDP/O1+t1BEEg3rtsCTmTiOMYjz/+ON773vfit3/7t/Gud73rxZjdtrx5ryjQ5RKU6cR0imSyjpZ/MXl2IAPxpXyh8rztmjVrFozS4OE4Do4cOQIA6OnpEaA0XQ3xbIecbedVAK/o+iICJcLjiXRrNoLbIvLPXH7vHIgURRG7ovXr1y84qFBKcezYMdTrdWzfvn1G9I8cHIj5AsTf+3SbeGzbxp/8yZ/g6NGj+PSnP42NGzdeytu6nOMXoMvjUu0W5cIF/8P7zzkIt7e3Tws4OW/b0dGBDRs2zKvetigopaL3fvPmzU1FF3mLyv/kZ7Zd6iKUD95d2NPTg6uuumrBwI2DEW9i4ZSM3NQwX4tQPiYmJtDX14fVq1dj1apVs75DkhcheTfAgbhWq6GzsxPDw8N4//vfj/vuuw+/+7u/u+DJwwLHiwN0wzCccsxzvpNstr6cURRlMoN6vQ5N09DR0SGAWDa8kXnbLVu2zGqF+2KC+1QcP34cq1atwurVq6d9w8h6Uv7eoyjK8IQdHR0zvgG5gD8MQ2zdunXG7alzEVymtXbtWqEe4F1W/P3Lo3Nm4jtwMRGGobhG27Ztm9Px6/mQTdK/8Y1v4LOf/SyGh4exc+dOvPSlL8U73/lOrF69et7O5+cwXtyguxB62zw/7DiOkKJ5nocNGzZg5cqVC97yWK/XcfToUZTLZWzatGlWsu38ImTbtqiy80WolYaYO2+NjIxg48aNF124m83wPA+HDx+GruvYsmXLlNeo1W4gT8tcSneZvEhu2LABS5cuXTBJ4w9/+EO8733vw7ve9S78zu/8DkZHR/Hss89i7969CzJh4ucoXpyg+/PS3MA7gY4fP47FixfDNM1MwUZWDczX9jQMQ/T396Ner2Pr1q0Zve9chKwh5kCc3w3wzG3x4sXYsGHDgvOkMpd8KYWyPCVVr9ebaJnptvnyBcAwDGzZsmXBmhzq9ToefPBBnDhxAp/+9Kexbt26eXttSil27dqFVatW4dvf/va8ve4M48UBuoQQQR/8PIAtMDVvy7NeXqirVqviZuRANNvmJ3Ec4+TJkxgeHsZVV12F5cuXL9i1CcNQDFMcGxtDEARoa2vD4sWLRaFyNu0vZxK8CWSuCmWtgFj2ppX5cf65jYyMLKhSIo5jPProo3j/+9+P3/u938O9994779ztI488gh//+Meo1Wq/AN2FDj5yZ6E7yYCL521ljrRarQqj6Nlo752cnBSZ5Pr16xfcPk9eANavX49ly5ZlfIhrtRpc14VlWU0+xHMV3OrQtm1s27ZtXvn2Vvx4qVRCo9FAR0cHtm3btmAF11qthgcffBAnT57E3/7t32Lt2rXzfg4jIyO455578IEPfACPPPLIL0B3oeM973kP2tvbsWvXLtx0003o6OiYd9CllGJwcBBnzpyZNb1tq625LFubqqvM93309fUhCAJs3br1ouVEsxncm6CzsxMbN26ccgHIy7emq6OdScg8KS+ULTSXHEURBgcHMTY2ht7eXhBCUK/XM9Ma5npsDsCuzQ9+8AN84AMfwP3334+3v/3tC6ZMuPPOO/G+970P9XodH/vYx34BugsdR44cwb59+/DUU0/h2WefRRAEuPbaa3HTTTdh9+7duOaaa+aMA5MdnGaqALiYkDPCarWayQg5EBuGgRMnTmBsbGxBGi5anXd/fz9s277oCReyhIlTM2EYNnGk0/2sXdfFkSNHplUom6+o1Wo4fPiwkMrJ3yXZCpIvwnkgvhjFSFFUq1W8//3vx/j4OP7mb/4Ga9asueRjXmz8/+2de0xT9/vH3+VSiqAoCoo4p5a7U6Qtbpo5FWaIl4lzWzTGn2bLspgFZcMRp8RlbhOVyFdwuLlsBjedmmUX49Q5jUaXmdkWBl6hgHITwVKwSCm90HN+f5hzdsrNYi/nAJ9X4h/yB+fphff5nOfyfk6fPo2zZ8/iq6++wuXLl4noChGTyYTS0lJcu3YNarUat2/fxogRIyCXy6FQKKBQKJ46teMIQum35Z4IdTodOjo64O/vjwkTJmD06NFOV82dgXtTev755xEWFubSGwC3a6Ctrc2uWNVXfpyiKPamxKcZDBebzcYa5gwkvdFfxwj3ROzod52maVy4cAGffPIJMjIysG7dOt77brdu3YojR47Ax8eH/a6vXLkSR48e5TWuPhieotsdmqbR2toKtVrNCnFtbS0mTZqExMREVowd9eUVWr8t8KRvtKKiAt7e3oiIiABFUT2EiNu65aoTUX8YDAZoNBoEBARAKpV6rOLeV348MDAQYrEYzc3NCA0NFcREGfCfpwTzpOSKtFT3EzFXiPuqD+j1emzduhWtra04ePAgwsPDnYrDHZCT7iCGyZsplUoolUoUFRWxo5SMCMfHx9sVb9yRt3UW7jRZf9szuI+mjBCJRCK71i1n7R8Zurq6cO/ePbS1tXmkLc0RGHMag8GAwMBAdHZ2spaJXPtLT57qrFYrKisrYTabERsb69ZCYW/1AS8vL3R0dOD69euQSCQoLCxEZmYm1q5dy/vpti+I6A4xrFYrbt68yQrxjRs34OPjg4SEBABAdXU18vLyMHnyZN6/lFzvBmYMdKAx2Ww2u/ww1/6REeKBtG5xY3ruuefcMpo6ULiFsu7pDaZAxbwHHR0dbKGS+cedKHQlDx8+xL1793ht37PZbCgtLUV2djbu3r0LiUSCkSNHYuPGjVi9erXH4xkiENF1BpqmcfXqVbz//vsYNWoUQkJCUFVVhdDQULv88Pjx4z36R9Pe3m732O7KXLLFYrErVDnquNbR0QGNRgOJROKyCTdn6ezsRHl5OcRiMSIjIx2KqXvrmtFohFgs7tG69qyft9lsRnl5Oby9vXkt3tE0jT/++AM7duzAli1bsGbNGnh5eaG9vbEwwlIAAA59SURBVB1Go5G3lT5DACK6zlJaWgqxWIy4uDgA/62sYU7DKpUKOp0OkZGRbMuaTCZzywnJarWya7OjoqI88tje3Xmrra3NrmNg5MiRaGlpgV6vR3R0NLsBl09cXSizWCx2jnMmkwl+fn49fIj7g7vqKDIyss+9aZ6gtbUVW7ZsQWdnJw4cOMDu5PME9fX1WLduHZqamuDl5YX33nsP6enpHru+ByCi6wlsNhvKysqgVCqhVqvx77//wmazYebMmexpODY29pk7CLi+BHxPkzHxGAwGNDQ0oKmpCd7e3vD19bXLDw+kYu5K9Ho9NBoNxo0bh6lTp7ptVxzjQ8zciLh+tEFBQXYbGoxGI8rKyhAQEICIiAheO0nOnDmDzz//HNu2bcPq1as9/j1qbGxEY2MjZDIZ2tvbIZfLcfLkSfZQMwQgossHjB1gcXExVCoVlEolysvLERQUxPYOMzPkTxOFR48eobKyUjDTZMB/vru+vr6IjIyEn5+fXesSU6hj9rT15rjmapinAKPRiJiYGI8PgnQ3Bmd6iJnYpkyZgokTJ/L2+bW0tCAzMxNdXV04cOCAYNIHqampSEtLw6JFi/gOxVUQ0RUKNE1Dp9PZpSUaGhowZcoU9jQsk8kQFBQEkUiE1tZWNDQ0oKurC1FRUYKYJmO6N3Q6Xb+dEgy9Oa4x+VFuoc4ZuMU7d/QBPyvt7e24c+cOm35gbkgURfUYZnD3VNmpU6eQnZ2NrKwsrFq1ShDvDwDU1NTglVdewa1btwTR4eIiiOgKGYqiUFVVxYpwcXEx29LU0tKC/fv3Y/bs2bzv3gIAnU6HqqoqhIWFObXlorf1QM/quPYshTJ3Y7PZcO/ePej1+l533TE9xMzrb29vBwC71jVXpWZ0Oh02b94MkUiEgoICQVkuGgwGzJ8/H1lZWVi5ciXf4bgSIrqDiYqKCqxatQpz586FVCpFSUkJbt26BYlEgoSEBPZEPG3aNI/lSzs7O1FRUQGRSISoqCiX95JyH8sZIXJkoqy2thYPHz5EdHT0U0/cnuLRo0fQaDTs+iVHT5TMMAPz+rmpGW4P8UBa906ePIndu3dj+/bteOuttwRzugWepFuWLVuGlJQUZGRk8B2OqyGiO5gwmUxoaWmxmwSiaRp6vR5qtZot1DGbHmQyGTtR5+pBDa6wedpSsPtEGfc06Ovri+bmZowfP95thbKBwgw5mEwmxMbGumSRJ9NDzAix0Wi06yFmtlZ3/8y1Wi02b94MX19ffPnllwgJCXE6FldC0zTWr1+P4OBg5OXl8R2OOyCiOxRhTLavXbsGlUoFtVrNtmwxhbr4+Ph+Hcj6gxlLHT9+vEs8KlyByWRCWVkZjEYjAgICYDKZBuS45i6YVT6e6Crpq4dYq9VCq9XCbDbju+++w44dO7By5UpBnW4Z/v77b8ybNw8zZsxgv1fZ2dlYsmQJz5G5DCK6w4Wuri7cvn2b9ZYoLS2FSCTCrFmz2EGO6Ojofos2zKpziqIQHR3Ny+r17nALZd2FzRHHNXflw81mMzQaDUQiEaKjo3nLJ5vNZly+fBn5+fmoqalBQEAApk6dio8++ggLFizgJaZhDhHd4QrTS1tcXMymJSoqKjB27FjI5XLI5XLMnj0bEyZMgNVqxfXr12Gz2dj9ZELAaDSivLwcEokEkZGRDhXYuls/MivUuYU6Z/eUNTY2ora2FhEREby+VxRF4ZdffsHevXvx2WefYcWKFQCeDCD4+vp6dOiBwEJEl/AfjM2iSqViT8R3795FV1cXkpKSsHr1ashkMgQGBvL6aMrkk7VarUOtaf3R3fqR27Y1UMe1zs5OlJWVwd/fH5GRkbz2TDc1NSEjIwMjR45EXl6ex9f4nDt3Dunp6bDZbHj33Xfx8ccfe/T6AoaILqFvdu/ejb/++gubNm1CY2MjVCoVSkpKYLFYMGPGDDY/HBcX5zFbRmaiLDQ01G355IE6rtE0jbq6OjQ2NvLeLUFRFH766Sfs27cPX3zxBZYvX87LlpSoqChcuHCBtUc9fvz4UJoqcwYiuoS+aWtrw6hRo3r80ZpMJpSUlNiZwAcGBtqZ/LjaaY3bARATE4MRI0a47Hc7QvduAcZxTSKRoK2tDWPHjuV1hBd4crpNT09HcHAw9u3bx5v5+j///INPP/0Uf/75JwBg165dAJ6YjRP6Fl3+Z0kFzt69e5GZmYnm5mZezUncSV/mNBKJBHPmzMGcOXMAPDnptbS0sCbwJ06cQF1dHSZPnsya/MjlcodN4LlwN0swSyr5SG34+PhgzJgx7CmWoihUVlZCp9MhODgYnZ2dUKvVDjmuuRqKonDixAns378f2dnZWLp0Ka/pn4aGBrv1PZMmTYJSqeQtnsECEd1+qK+vx4ULF3jZeipERCIRxo0bh8WLF2Px4sUAnghBdXU1lEolLl26hJycHBgMBsTFxbEn4pkzZ/Y7TMEtlCkUCo+lMJ6GXq9HeXk5wsLCMHfuXLs0A1Ooa21tRU1NDeu4xi3UuXKst7GxEenp6QgJCcGVK1cEMQjS21OyENvThAYR3X748MMPkZOTg9TUVL5DESxeXl6QSqWQSqVYs2YNgCcWiIwJfGFhIW7evAlfX18kJCSw+eGIiAhYLBaoVCr4+fkhOjoao0eP5vnVPIFZw240GjFz5sweKQ6RSAR/f3/4+/uzhjE0TbODHE1NTaisrARFUU47rlEUhWPHjqGgoAC7du3CkiVLBCNskyZNQn19Pfv/+/fvY+LEiTxGNDggOd0+OHXqFC5evIj8/HxMmTIFRUVFQza94G5omsbjx49RVFTE+kvcuHEDJpMJCxYswOuvvw6FQoHQ0FDeBaW5uRlVVVUuMc1hHNe4Y73e3t52Qtyf49qDBw+wadMmhIWFITc3VzA3JQbGhOnixYsIDw9HYmIijh07hunTp/MdmhAgOd3eePXVV9HU1NTj5zt37kR2djbOnz/PQ1RDD5FIhKCgICQnJyM5ORkFBQWwWCzYtm0bHj58iGvXruHAgQPsfjcmP5yQkOBWG0guFosFGo0GNE1DJpO5ZJjCy8sLQUFBdjlzq9XKCrFWq2WnyRgRtlqtCAsLw9GjR/H1119jz549SElJ4f1m1Bs+Pj4oKChASkoKbDYb3nnnHSK4DkBOur1w8+ZNJCcns4+VzGOTSqXChAkTeI5u8GMwGHo1brHZbLhz5w57Gi4pKQFN03Ym8DExMS7tHOAW8KRSKS8OXIzjml6vx4YNG1BbWwuxWIz169dj/vz5SEpK8nhMBKchLWPO4O70QmZmJn7//XeIxWJIpVIUFhYK7lGSD5iBBq4JvEajwZgxY9hOicTExGdefMlYQvr5+Tk86eYuKIrCDz/8gG+++QY5OTmQSqUoKirC3bt3kZWVxVtchGeGiK4zuFt0z58/j6SkJPj4+GDLli0AgD179rjlWoMdmqbR3NxsZwL/4MEDTJ061c4Evre+Y+7vqK+vx4MHD1yyO81Z6uvrsXHjRkybNg05OTm8GXmTm79LIaI7WPjtt9/w888/48cff+Q7lEEDYwLPuK0VFxfDZDJh+vTprBC/8MILEIvF0Gg0ePz4MUaPHo1p06a5dVuDI3EfPnwY3377LXJzc5GcnMxr7pbc/F0KEd3BwmuvvYZVq1Zh7dq1fIcyqDGbzSgtLWVNfm7cuMGO+WZmZmLu3Lm8+vDW1dUhLS0NUVFRyMnJ6bFZgm/Izd9piOjyTX+dEkwf8M6dO1FUVIRff/1VkNXqwUpHRwcWLlyIpUuXQqFQoLi4GGq1GtXV1QgPD2dPw3K5HGPHjnXre09RFA4dOoTCwkLk5uYiKSlJkJ81ufk7DRFdofP999/j4MGDuHjxosf9BoYDWq22R2cCRVGoq6uzM4Fva2tDTExMDxN4V1BTU4O0tDTExcVh9+7dvJxuyc3fYxDRFTLnzp1DRkYGrly54jZfVmLB5xhWq7WHCbyXlxc7TadQKBAVFTWgXLDNZsOhQ4dw+PBh5OXlYf78+YIVM3LzdxlEdIVMREQEzGYz64X60ksv4eDBgy77/cSC79nhmsAzQlxRUYGQkBBWhBMTE/s06KmursbGjRsxY8YMZGdnIyAggIdX4RieuPkPI4joDmeIBZ9rYbZGcE3gtVotIiIiWCGOj4/H8ePHceTIEeTn52PevHmCPd0yuPvmP8wgY8DDGWLB51pEIhEmTpyIFStWsKtxbDYbNBoNlEolTp48iQ0bNmD27Nm4evXqoHlMr6qq4juEYQER3WEAseBzP97e3oiLi0NcXBzefvtt0DRN3mNCr/C/U5vgdogFn+chgkvoCyK6w4DExERUVlaiuroaFosFJ06cwPLly912vfr6eixcuBCxsbGYPn068vPz3XYtQu/s3bsXIpEIOp2O71AI3SDphWGApy34fHx8kJubC5lMhvb2dsjlcixatIh0S3gIsvFE2JDuBYLbSU1NRVpaGhYtWsR3KMOCN998E9u3b0dqaiox3+ePPvNLJL1AcCs1NTUoKSnBiy++yHcow4JTp04hPDwc8fHxfIdC6AOSXiC4DYPBgDfeeAN5eXm82RUORcjGk8ENSS8Q3ILVasWyZcuQkpKCjIwMvsMZFpCNJ4KCTKQRPAdN01i/fj2Cg4ORl5fnsevabDYoFAqEh4fj9OnTHruuUCELVXmF5HQJnuPq1as4cuQILl26hFmzZmHWrFk4e/as26+bn5+P2NhYt1+HQHAGktMluJyXX3651yk4d3L//n2cOXMGWVlZ+N///ufRawuVmpoavkMg9AI56RKGBB988AFycnJ42wRBIDgK+YYSBj2nT59GaGgo5HI536EQCE/laYU0AkHwiESiXQD+D0AXAAmAUQB+pWma7JohCA4iuoQhhUgkWgDgI5qml/EdC4HQGyS9QCAQCB6EnHQJBALBg5CTLoFAIHgQIroEAoHgQYjoEggEggf5f5iS0Vg7eVMfAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline \n", "\n", "from matplotlib import cm\n", "from mpl_toolkits.mplot3d import Axes3D\n", "import math\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "\n", "\n", "X = np.linspace(-5.12, 5.12, 200) \n", "Y = np.linspace(-5.12, 5.12, 200) \n", "\n", "X, Y = np.meshgrid(X, Y)\n", "\n", "Z = rastrigin([X, Y])\n", "\n", "fig = plt.figure()\n", "ax = fig.gca(projection='3d')\n", "\n", "ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.plasma, linewidth=0, antialiased=False) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then, let's wrap the function with an Auxein [Fitness function](https://github.com/auxein/auxein/blob/master/auxein/fitness/core.py#L15). \n", "\n", "Auxein comes with some pre-defined fitness functions. In our case, given that we want to find the minium of the Rastrin function, we can use the `GlobalMinimum` function to wrap the function we want to minimise:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from auxein.fitness.kernel_based import GlobalMinimum\n", "fitness_function = GlobalMinimum(rastrigin)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then, the second step is to create an initial `population` of individuals. \n", "\n", "Each `individual` maps to candidate solution, which in this case would be a vector $(x, y)$. Auxein provides some utility functions to create initial populations, like the `build_fixed_dimension_population` used below.\n", "\n", "Is probably worth noting as we will use a `NormalRandomDnaBuilder` to have the initial population of individuals scattered around the solution space but centered around $(0, 0)$" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "from auxein.population.dna_builders import NormalRandomDnaBuilder\n", "from auxein.population import build_fixed_dimension_population\n", "population = build_fixed_dimension_population(2, 200, fitness_function, NormalRandomDnaBuilder(0, 1.5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once we have a `fitness_function` $\\phi(x,y)$ and an initial `population`, we need to set up a [Playground](https://github.com/auxein/auxein/blob/master/auxein/playgrounds/static.py#L27).\n", "A playground is basically the object that represents our experiment." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "from auxein.playgrounds import Static\n", "from auxein.mutations import SelfAdaptiveSingleStep\n", "from auxein.recombinations import SimpleArithmetic\n", "from auxein.parents.distributions import SigmaScaling\n", "from auxein.parents.selections import StochasticUniversalSampling\n", "from auxein.replacements import ReplaceWorst" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to instantiate a `playground` the following must be specified:\n", "* `mutation` strategy, which describes how `individual` dna will mutate. In this case we will use the [SelfAdaptiveSingleStep](https://github.com/auxein/auxein/blob/master/auxein/mutations/core.py#L62).\n", "* parents `distribution`, which gives a probability distribution for parents `selection`. We here use [SigmaScaling](https://github.com/auxein/auxein/blob/master/auxein/parents/distributions/core.py#L43) for distribution and [StochasticUniversalSampling](https://github.com/auxein/auxein/blob/master/auxein/parents/selections/core.py#L27) for selection.\n", "* `recombination` defines how fresh dna are created when `individual`s breed. Here we use the basic [SimpleArithmetic](https://github.com/auxein/auxein/blob/master/auxein/recombinations/core.py#L23).\n", "* for `replacement` we will use the basic [ReplaceWorst](https://github.com/auxein/auxein/blob/master/auxein/replacements/core.py#L34) which basically only replaces the 2-worst performing individuals." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "offspring_size = 4\n", "playground = Static(\n", " population = population,\n", " fitness = fitness_function,\n", " mutation = SelfAdaptiveSingleStep(0.1),\n", " distribution = SigmaScaling(),\n", " selection = StochasticUniversalSampling(offspring_size = offspring_size),\n", " recombination = SimpleArithmetic(alpha = 0.5),\n", " replacement = ReplaceWorst(offspring_size = offspring_size)\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Invoking `playground.train(max_generations = )` will trigger the evolution process up to a maximum of $500$ generations." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:root:Starting evolution cycle with a maximum of 500 generations\n", "INFO:root:Training ended with average_fitness: -0.6299824766641763\n" ] } ], "source": [ "stats = playground.train(500)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once the training has ended, to get the most performant `individual` we can invoke `playground.get_most_performant()` and grab the dna of the individual." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "[x, y] = playground.get_most_performant().genotype.dna" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.0064642078203482395" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "-0.002448669908469602" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Which we can use to evaluate the `rastrigin` function:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.00947840704530023" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rastrigin([x, y])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It would be also useful to see how the mean fitness value changed over the generations. Intuitively, an increasing mean fitness might indicate that the evolution process is selecting better solutions for our problem.\n", "\n", "This is possible using the `stats` dictionary returned by the `Playground` at the end of the training session." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "mean_fitness_values = []\n", "for g in stats['generations'].values():\n", " mean_fitness_values.append(g['mean_fitness'])\n", "\n", "plt.plot(stats['generations'].keys(), mean_fitness_values, color='red');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fitness landscape exploration" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For a better understanding of how an evolutionary algorithm works, it might be useful to show how a population \"moves\" across generations to get \"around\" or \"close\" a local optimum in the [fitness landscape](https://en.wikipedia.org/wiki/Fitness_landscape).\n", "\n", "In fact, each individual carries a dna of the shape $(x, y)$, which can be mapped to a value in the fitness landscape with $\\phi(x,y) = f_0$." ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "size = 200\n", "landscape = fitness_function.get_landscape([[-5.12, 5.12], [-5.12, 5.12]], size)\n", "\n", "A = landscape.T[0].reshape(size, size)\n", "B = landscape.T[1].T.reshape(size, size)\n", "F = landscape.T[2].T.reshape(size, size)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It might be interesting to see where the population as a whole is positioned in the landscape at the **last** generation, as depicted below:" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.colors as colors\n", "\n", "plt.figure(figsize=(6, 6), dpi=100)\n", "plt.pcolormesh(\n", " A,\n", " B,\n", " F,\n", " cmap=plt.cm.get_cmap('Blues'),\n", " norm=colors.SymLogNorm(linthresh=0.03, linscale=0.03, vmin=F.min(), vmax=F.max())\n", ")\n", "for dna in stats['generations'][499]['genome']:\n", " plt.scatter(dna[0], dna[1], marker='o', color=\"red\", s=0.5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As expected, the largest part of the population is concentrated within the global minimum of the function.\n", "\n", "Finally, we can use the following code to get the landscape from the `fitness_function` for a given interval toproduce an image for each generation and then plotting the position of every individual of that generation. \n", "\n", "Then we combine all of them in a animated gif." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "import os\n", "os.mkdir('landscape_frames')" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "for generation in stats['generations'].keys():\n", " plt.figure(figsize=(8, 8), dpi=100)\n", " plt.pcolormesh(\n", " A,\n", " B,\n", " F,\n", " cmap=plt.cm.get_cmap('Blues'),\n", " norm=colors.SymLogNorm(linthresh=0.03, linscale=0.03, vmin=F.min(), vmax=F.max())\n", " )\n", " for dna in stats['generations'][generation]['genome']:\n", " if (A.min() <= dna[0] <= A.max()) and (B.min() <= dna[1] <= B.max()):\n", " plt.scatter(dna[0], dna[1], marker='o', color=\"red\", s=0.5)\n", " plt.savefig(f'landscape_frames/{generation}.png')" ] } ], "metadata": { "kernelspec": { "display_name": "Python [conda env:Python3]", "language": "python", "name": "conda-env-Python3-py" }, "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.10" } }, "nbformat": 4, "nbformat_minor": 2 }