{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "
\n", "*******************************************************\n", "# Introduction to Machine Learning with Scikit-Learn\n", "*******************************************************\n", "\n", "\n", "
\n", "
\n", "Melanie Bieli, June 2018" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Import required modules" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import seaborn as sn\n", "#!conda install scikit-learn" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Setting the Stage: The Machine Learning Landscape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\n", "Image source: www.xkcd.com\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### What is Machine Learning?\n", "\n", "- Branch of AI based on the idea that systems can learn from data, identify patterns and make decisions with minimal human intervention\n", "- Focus on predictions\n", "- Data driven\n", "- Concern about overfitting but not model complexity per se" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\n", "Image source: www.wordstream.com\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 1) A simple classification example: What fruit is this?\n", "\n", "This example is based on the University of Michigan's \"Applied Machine Learning in Python\" course." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "Image source: www.freepik.com" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
fruit_labelfruit_namefruit_subtypemasswidthheightcolor_score
01applegranny_smith1928.47.30.55
11applegranny_smith1808.06.80.59
21applegranny_smith1767.47.20.60
32mandarinmandarin866.24.70.80
42mandarinmandarin846.04.60.79
\n", "
" ], "text/plain": [ " fruit_label fruit_name fruit_subtype mass width height color_score\n", "0 1 apple granny_smith 192 8.4 7.3 0.55\n", "1 1 apple granny_smith 180 8.0 6.8 0.59\n", "2 1 apple granny_smith 176 7.4 7.2 0.60\n", "3 2 mandarin mandarin 86 6.2 4.7 0.80\n", "4 2 mandarin mandarin 84 6.0 4.6 0.79" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Load data and have a look at them\n", "fruits = pd.read_table('fruit_data_with_colors.txt')\n", "fruits.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**!!! Note: !!!** \n", "\n", "Our fruit dataset is an unrealistically clean dataset. Usually, datasets are a lot messier - **cleaning and preprocessing often take up a good chunk of the total model development time!**\n", "\n", "Frequently used preprocessing steps include feature scaling, encoding categorical features, dealing with missing values (\"imputation\"), adding polynomial features, etc. You can find a list of scikit-learn's preprocessing tools here:\n", "http://scikit-learn.org/stable/modules/preprocessing.html" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "{1: 'apple', 2: 'mandarin', 3: 'orange', 4: 'lemon'}" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# create a mapping from fruit label value to fruit name to make results easier to interpret\n", "lookup_fruit_name = dict(zip(fruits.fruit_label.unique(), fruits.fruit_name.unique())) \n", "lookup_fruit_name" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The file contains the mass, height, width and color score of a selection of oranges, lemons and apples. The heights were measured along the core of the fruit. The widths were the widest width perpendicular to the height." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Examining the data" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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5AghhBBCCCG6FOnkCCGEEEII0c6OHTvGokWLiI2NZeTIkfz2t7/l448/tq/fuXMnERERJCYmcueddzJ8+HCmT5/O7t27HbYzb948Hn74Yd5//32mTJnC8OHDeeCBB8jIyKi3Dh9++CEzZ87kmmuu4brrruO1115r8f1sK+r2roAQQgghhBAdRXJWKdmFFQT7aumt82yzz01NTWX06NHccccdaLVajh49ypNPPolSqeTXv/61vdyyZcu48847WbhwIdu3b+eRRx5h586dDB482F7m2LFjXLx4kRUrVlBeXs6LL77IkiVL2LFjR62f//rrr7Nu3Truu+8+oqKiOHnyJBs2bMDDw4O5c+e26r63BunkCCGEEEIIl5dbVMF7+y/z/vcpGEwWNCoFt03swZ2x4QT6aFv982fOnGn/t8ViYdy4cWRkZPDBBx84dHJmz57NvffeC8C1117LjTfeyNatW1m3bl3lvuTm8u9//5sePXoA0L17d+6880727dtHXFxcjc8uLi5m8+bNLF68mKVLlwIwceJEysrKePnll7njjjtQqVStst+tRcLVhBBCCCGEy3tv/2Xe3XcVg8kCgMFk4d19V3lv/+U2+fyCggKeffZZrrvuOiIjI4mMjOT999/n0qVLDuWmTZtm/7dSqeT6668nMTHRoczQoUPtHRyAMWPGEBQUVKOczbFjxygtLWXGjBkYjUb7f9HR0WRnZ5Oent5yO9pGZCRHCCGEEEK4tOSsUt7/PsXpuve/T+Gmsd0Jb+XQtRUrVnD8+HGWLFlC//798fb25l//+hd79uxxKBcYGOjwOigoiKysrBrLqnNWziYvLw9wHE2qKi0tzaHT1BlIJ0cIIYQQQri07MIK+whOdQaTheyiilbt5JSXl7N3715WrVrFHXfcYV/+3nvv1Sibm5tLQECA/XVOTg46nc6hTE5OTo33OStn4+fnB8DWrVuddpD69u3bsB3pQKSTI4QQQgghXFqwrxaNSuG0o6NRKQhu5WdyKioqMJlMaLWVn1NcXMw333xTo+zu3bvp378/AGazmT179jB8+HCHMqdOnSI1NZXu3bsDcOTIEXJycmqUsxk1ahTu7u5kZmYyefLkFtqr9iWdHCGEEEII4dJ66zy5bWIP3t13tca62yb2aPVQNR8fH4YNG8bmzZvx9vZGqVTy6quv4u3tTXFxsUPZDz/8EI1Gw8CBA/nwww+5fPkya9eudSgTGBjIwoULeeihh+zZ1SIjI50mHQDw9fVl6dKlPPfcc6SkpDBu3DjMZjOXLl0iISGBzZs3t9q+txbp5AghhBBCCJd3Z2w4gNPsam3h73//O6tWreKJJ57A39+fOXPmoNfreffddx3KrVu3jjVr1rB+/XrCwsJYt24dQ4cOdSgzatQoYmJiWLNmDbm5uURFRfHnP/+5zs+///77CQkJ4e233+att97Czc2NPn36cOONN7b4vrYFhcVicR6AKIQQQgghhIu5nFVKdlEFwT7aVh/BaYydO3eycuVKjh49ipeXV63l5s2bR0BAAC+99FIb1q7jkZEcIYQQQgghfhGu8+xQnRvRNDJPjhBCCCGEEKJLkXA1IYQQQgghRJciIzlCCCGEEEKILkU6OUIIIYQQQoguRTo5QgghhBBCiC5FOjlCCCGEEEKILkU6OUIIIYQQQoguRTo5QgghhBBCiC5FOjlCCCGEEEKILkU6OUIIIYQQQginHn74YebNm9di24uIiODdd99tse3VRt3qnyCEEEIIIYQQwPvvv0/Pnj1b/XOkkyOEEEIIIYRoVXq9Hnd3d0aOHNkmn+eynZysrKI2+ZyAAE/y8krb5LO6opb6/nQ6nxaoTdtpzvHZlY+5rrpvrnR8VtfR/qYdrT7Q/nVy5ePTmfb+e7SmzrpvLX2M5qTnUJRXgk+AF0FhQS267bqsWLGCs2fP8vDDD/O3v/2NlJQUxo8fz9/+9jcKCgr44x//yIkTJ+jXrx9r1qxh8ODBALz55pt89tlnXLp0CTc3N4YPH87KlSvp3bu3fdvz5s0jICCAadOm8dJLL5GTk8Po0aN59tlnCQsLs5dLS0vjqaeeIiEhgeDgYBYvXlyjnufPn2fTpk0cPXqU/Px8evbsyezZs7nrrrtQKq1PwiQkJHDXXXfx+uuvs23bNhISErjhhhtYs2YNERERrFq1irlz5zaqbo3lsp2ctqJWq9q7Cp2afH+N15W/s668b66qo/1NO1p9oGPWyZV15b9HV963higuLOGHXQc5uPswJqMJlVpF1LSxRN8QhbevV5vUIS0tjZdeeolHH32UsrIynn32WZ566imuXr3Krbfeyn333cfatWtZvnw5n332GQqFgvT0dObOnUv37t0pLi7m3//+N3fccQdffvklPj6VHcDjx4+TmZnJE088QXl5Oc899xyrVq3itddeA8BisbBkyRLy8vJ47rnncHNzY+PGjeTn59OnTx/7djIzM+nbty+/+c1v8PLy4vTp02zcuJHy8nIWLlzosD9/+MMfuPnmm5k/fz5ubm617nd9dWsK6eQIIYQQQgiX98Oug8TvSrC/NhlN9tdTb7uuTepQUFDA+++/T3h4OAA///wzb7zxBn/961+ZNWuWvdwDDzzAhQsX6N+/P08++WRlnU0mJk6cSExMDHv27HF4T3FxMVu3bsXPzw+ArKwsnn/+eXsY2b59+zh16hQffPABI0aMACAyMpJp06Y5dHJiYmKIiYkBrB2jMWPGoNfr+eCDD2p0cmbMmMGjjz5a737XV7emkE6OEEIIIYRwaTnpORzcfdjpuoO7DzMqbgRB3QJbvR49evSwd3AAe8hZdHS0fZltfUZGBv379+fHH39kw4YNnDp1ivz8fHu5ixcvOmx72LBh9k4EwIABA+zb6d27N4mJiQQHB9s7OLb6REZGOmynvLycrVu38sknn5CWlobBYLCvMxqNqNWV3YvJkyc3aL/rq1tTSCdHCCGEEEK4tKK8EkxGk9N1JqOJooLiNunkVA0vA9BoNDWW25aVl5eTmprKPffcw/Dhw3nmmWcICQlBo9GwcOFCKioqHLbl6+vrdNvl5eWAdfQkMLDmPgYFBVFSUmJ//cILL7B9+3YefPBBIiMj8fHxYc+ePbz88suUl5c7dHKCghr2TFN9dWsK6eQIIYQQQgiX5hPghUqtctrRUalV+Ph5t0Ot6vfdd9+h1+vZsmULnp6egHU0paCgoNHb0ul05Obm1liek5PjEDL2xRdfMHfuXO6//377sr179zrdpkKhaHQ9WopMBiraRIkpn0z9VUpM+fUXFqKLkONeCNEWpK1pvqCwIKKmjXW6Lmra2DYZxWkKvV6PUql0GD3ZtWsXRqOx0dsaNmwY2dnZHD9+3L4sNTWVU6dOOZQrLy9Hq9XaX5tMJj777LMm1L51yUiOaFUVljJ+zEjg4OXvMZlNqJQqosInMjJ0PFqFR3tXT4hWIce9EKItSFvTsqJviAJwml2to4qOjsZkMrFy5Up+97vfce7cOd58880a4V8NMWnSJAYPHswjjzzC73//e9zc3HjppZdqhLBNmDCBbdu2ER4ejr+/P9u2basRGtcRSCdHtKofMxKIv7TP/tpkNtlfR4VNbqdaCdG65LgXQrQFaWtalrevF1Nvu45RcSMoKijGx8+7w47g2ERERPD888+zadMmdu/ezeDBg9mwYQPLli1r9LYUCgUvv/wyq1at4sknnyQoKIiFCxdy4MAB8vLy7OVWrVrFn/70J1avXo27uzuzZs1i2rRprFq1qiV3rdkUFovF0t6VaA9tNRmoTufTZp/V0ZSY8nnryGZMZifxrUoVd495EC+Vf53baKnvz5Ums+vKx1xH2LcSUz4lhmK8NN5Oj9+mHPeudHxW1xH+plV1tPpA+9fJlY9PZ9r772FTX1szZ9S9BGgaN5FiR9m3xupsx6hoGzKSI1pNiaHYaeML1l+bSgzF9XZyhOgoGhoWIse9EKIt1NfWHEr5Hn/3IAldEy5LEg+IVuOl8UaldD57skqpwkvTMTOVCOGMLSzEdlNhCwv5MSPBoZwc90KItlBfW1NbGyWEq5BOjmg1CoWCQSGDna4bFDIYBe2XVlCIxigx5XPw8vdO1x28/L1DRiMvlT9R4ROdlo0KnyijOEKIFlFXWzMoZDAXc84DNdsoIVyFhKuJVlNcUUR+aR5DwiI5m3nGHuIzKGQw+aV5FBuK8FT51b8hIdpZY0PQRoaOB3Aa2iaaJzghpEHlssdntnJNhGh/ztoa2zXWYLLOQi9hssJVSSdHtBovjTeZxRlkl2TRP3ggSoUSs8VMUtZZzBYzFoWJElO+NLyiQ3JIMPC7Y04NAAAgAElEQVRLWEhtD/hWD0HTKjyICptMpG5knUkKhBCiOWxtzcCgwRxKsXZ0krLO2js4IGGywnVJJ0e0GttQevylfZzNPOOwbkhYJDsS38NsMUtOf9GhOEswENM7jnG9YvgheX+N8nWFoHmp/KVzI4RodQGaMPzcApy2UeN6xUg7JFySPJMjWtXI0PHE9ImzPxypUqoYEhZpH0qXByNFR+MswcD+i9/iofWqcSzH9ImTEDQhRIfgofViSFhkjeuth9arnWsmRPuQkRzRqqqG7eRX5PBT+rEaQ+lgjSeO1I2UX5tEu6orwcC+819zz9ilEoImhOhwSkz57Dv/NUqFskZ4+NnMM/T3j5D2Srgc6eSINuGl8qdEUcyZjFNO18uDkaIjqC/BQHFFESHuPeU4FUJ0KLa2y4SpRni4bb20W8LVSCdHtJnGPrwtRFuTY7TjW2VZ2qByj7RyPYToSKTtEqImeSZHtBmZP0R0dHKMCiE6I2m7hKhJRnJEm5L5Q0RHJ8eoEKIzkrbLNZWXl+Pm5tbe1eiQpJMj2pTMHyI6OjlGhRCdkbRdXcPnn3/Oyy+/zMWLFwkKCmLWrFk89NBDqNVqdu7cycqVK/nwww954YUXOH78OAsXLuTBBx/kxRdfZO/evVy9ehUfHx/GjRvHihUr0Ol09m1PmTKF6dOnExoayptvvklZWRmxsbE888wz+Pr62sudOXOGp59+mpMnTxIeHs7jjz/Ohg0bGDRoEH/5y1/s5Q4fPsz69es5ceIE7u7uTJs2jRUrVuDt3THCI6WTI9qFzB8iOjo5RoUQnZG0Xc2XXZxJob4IX3cfgr1D2uxz9+/fz7Jly5g1axaPPfYYP//8Mxs2bCAvL4/Vq1fbyy1fvpw77riDBx980N45ycnJYeHChYSEhJCbm8tbb73F/Pnz+eSTT1CpVPb37tq1i4iICP785z+Tnp7OX/7yF9auXcvTTz8NQFlZGffddx/BwcGsXbuW8vJy1qxZQ2FhIYMGDbJv58iRIyxYsICpU6fy0ksvkZeXx9///ncKCwt56aWX2uYLq4d0coQQQgghhMsr1hex/8I+4i9+VzkZdN9rie0Xh7e7T6t//ksvvURUVBR//etfAYiLiwNg7dq1LFmyxF5u3rx5zJ8/3+G9zz//vP3fJpOJUaNGERcXx9GjRxk3bpx9nVqtZvPmzajV1i5AUlISn3/+ub2Ts3PnTvLz89mxYwehoaEAhIeHM3v2bIfP+/vf/86oUaNYv369fVloaCgLFizg7NmzDh2i9iKJB4QQQgghhMvbf2Ef+8//z3Ey6PP/Y/+Ffa3+2SaTiVOnTjFjxgyH5TfeeCNms5ljx47Zl02ePLnG+/fu3cvtt9/OmDFjGDp0qL2DdOnSJYdy48ePt3dwAAYMGEBOTg4VFRUAnDhxgsjISHsHB2D48OEEBwfbX5eVlfHjjz9yww03YDQa7f+NGTMGjUbDyZMnm/w9tCQZyRFCCCGEEC4tuziT+IvfOV0Xf/E7xoZHEeytc7q+JeTl5WEwGBw6E4D9dUFBAVqtFoCgoCCHMomJiSxZsoSpU6dy//33ExQUhEKh4NZbb6W8vNyhbNVnbwA0Gg0WiwWDwYBWqyUrK4uAgIAa9QsMDLT/u7CwEJPJxDPPPMMzzzxTo2xaWloj9rz1SCdHCCGEEEK4tEJ9UZ2TQRfpC1u1kxMQEIBGoyEnJ8dheXZ2NgB+fn6UlZUBoFAoHMp8/fXXBAQEsH79evu6lJSUJtVDp9Nx8eLFGstzc3Pt//bx8UGhULB06VImTZpUo2xISNs9x1QXCVcTQgghhBAuzdfdB5VS5XSdSqnCx93X6bqWolKpiIyM5IsvvnBYvmvXLpRKJaNGjar1vXq9Ho1G49D5+eSTT5pUj2HDhvHTTz+RkZFhX5aYmGjvbAF4enoycuRILl68yLBhw2r8VzXUrT21aSfniy++4Pbbb2f8+PEMGzaM6dOns2XLFnscIIDFYuGVV15h0qRJDB8+nDlz5nD69Oka20pKSmL+/PmMGDGC2NhYNmzYgMnkvAcuhBBCCCFEbYK9Q4jpe63TdTF9r23VURybhx56iISEBFauXMl3333HG2+8wYYNG5g9ezZhYWG1vm/ixImkpqby3HPPER8fz+bNm/noo4+aVIebb76ZgIAAFi5cyNdff82nn37KY489RmBgoEMn6ve//z1ffvkljz32GF9//TXx8fHs3LmThx9+2OlIUHto005Ofn4+48eP59lnn+W1117jlltu4ZVXXnHIuf3qq6+yZcsW7r//fl555RU8PT1ZsGABWVlZ9jIFBQUsWLAAhULBli1bePDBB3nrrbc6TMo6IYQQQgjRucT2iyO2/2T7iI5KqSK2/2Ri+8W1zefHxrJu3Tp++uknFi9ezNtvv80999zDU089Vef7Jk2axO9//3u++uorFi9ezKFDh9i6dWuT6uDh4cHrr7+Ou7s7jz76KBs3buSxxx7D19fXYf6bsWPHsm3bNnJzc3n88cdZvHgxr7/+Ot26davxXFF7UVgsFkt7VmDdunVs27aNQ4cOUVFRwYQJE7j77rtZunQpAKWlpUyZMoXbbruNZcuWAbB161Zef/11vv32W/sX/tprr7Fp0ya+//77Bk1ClJVV1Ho7VYVO59Nmn9UVtdT3p9O1furHltScfe7Kx1xX3TdXOj6ra+zfdMMPq+svBDwSXfdNQUvVpy20d51c+fh0pr3/Hq2ps+5bSx+j2cVZFOkL8XH3bZMRnI7uypUrzJgxg9WrV3PLLbe0d3UarN0TD/j7+2MwGAA4evQoxcXF3HDDDfb1np6eXHfddXz33Xf2Ts6+ffuIjY116MzMnDmTF198kYMHDzJlypS23QkhhBAdSnBCwx98zR6f2Yo1EUJ0NsHeOpfu3GzdupWQkBC6d+9OWloaW7duJSAggOnTp7d31RqlXTo5JpOJiooKTp48yT//+U/uuOMOFAoFFy5cQKVS0adPH4fy/fv3Z9euXfbXFy5cIDo62qFM9+7d8fDw4MKFC9LJEUIIIYQQogkUCgWbNm0iMzMTrVbL2LFjefzxxxsUKdWRtEsnZ+TIkfZkA7NmzeLxxx8HrHm3PT09Uakcs1vY0uZVVFSg1WopLCzEx6fm0KSvry+FhYWtvwNCCCGEEEJ0QQ888AAPPPBAe1ej2dqlk/Pvf/+bsrIyTpw4webNm1m9ejVPP/00UDP3N1gzrlVfV1s5Z8udCQjwRK12niqwpXW2eOaOxhW/v+Yen135O+vK+9ZZtHT72d5/0+qf3971caYj1qmjaovre1f+e3TlfROupV06OZGRkYA1M0NAQABPPPEE99xzD76+vpSUlGAymRxGcwoLC/Hw8ECj0QDWEZuiopoPxhUXFzsd4XEmL6+0Bfakfp31Ib6OwlUTDzTn+OzKx1xX3TdXOj6r6wh/06qf3xHqU11718mVj09n2vvv0Zo66751tmNUtI12nwx06NChAFy9epV+/fphMplITk52KHPhwgX69etnf92vXz8uXLjgUCYtLY3S0lKHckIIIYQQQgjX0+6dnKNHjwLQs2dPRo8ejbe3t8Nsr2VlZXz77bdce23lBE1xcXHs37+f4uJi+7LPP/8cd3d3oqKi2q7yQgghhBBCiA6nTcPV7r33XiZMmMCAAQNQqVQcPXqUt956ixtvvJHw8HDA+rDTli1b8PPzo1+/frz11luYzWbmzZtn387tt9/OP//5Tx566CHuv/9+rly5wqZNm1iwYEGny/wghBBCCCGEaFlt2skZNmwYH330ESkpKahUKnr16sXy5cu5/fbb7WUeeOABzGYzW7duJT8/n2uuuYa33nrLYfZUPz8//vGPf7B69WoWLVqEr68v8+fP56GHHmrL3RFCCCGEEEJ0QG3ayXn00Ud59NFH6yyjUChYvHgxixcvrrPcgAEDeOedd1qyekIIIYQQQoguoN2fyRFCCCGEEMLVrVixgptvvrm9q9FlSCdHCCGEEEII0aW0yzw5QgghRGtaZVna4LKPtGI9hBBCtA8ZyRFCCCGEEOIXluKzWLL3YSk+2671SE1NZdmyZURFRTFixAjuvfdeh3kir169SkREBJ999hkrV65k9OjRxMXF8d///heA1157jdjYWKKjo3nhhRcwm80O24+Pj2f27NkMGzaMCRMm8PTTT1NSUmJfn5CQQEREBAkJCTz88MOMGjWK66+/nm3btrXNF9BM0skRQgghhBAuz6LPxHLqSdg3Dn6YDvvGYTn1JBZ9ZpvXJT8/nzvvvJOLFy/y9NNPs379ekpLS7n77rvR6/UOZV988UV0Oh0bN25k7NixrFixgr/85S+cOHGCNWvWMH/+fF5//XV27dplf09SUhL3338/AQEBbNy4kYceeohPP/2Uhx9+uEZdVq1axeDBg9m0aRNRUVGsXr2axMTEVv8OmkvC1YQQQgghhLiwHi6sq3xtrqh8PXRNm1blH//4B2VlZfznP//B398fgNGjRzNlyhR27NjBnDlz7GWjo6NZvnw5ACNGjODLL7/km2++YdeuXahUKuLi4tizZw+7d+9m5syZAGzevJnu3bvz8ssvo1KpAOsULcuWLePYsWOMGjXKvv2ZM2eyZMkSAKKiovj222/56quvGD58eJt8F00lIzlCCCGEEMKlWYrPwqXNzlde2oyl+Fyb1ic+Pp4JEybg7e2N0WjEaDTi5eVFZGQkP/30k0PZ6Oho+7+9vb0JCAhg3Lhx9s4LQO/evcnIyLC/TkxMZOrUqQ5lpk+fjlqt5siRIw7bnzhxov3fGo2GPn36kJ6e3mL72loaNZJz5coViouLGTJkCAAVFRVs3bqVM2fOMGnSJG699dZWqaQQQgghhBCtRp9uHblxxlwB5WngPbDNqpOXl8ePP/7I559/XmNdTEyMw2tfX1+H11qttsYyjUZDeXm5/XVWVhbBwcEOZVQqFf7+/hQUFNS5fY1GQ0VFLd9VB9KoTs7q1avp3bs3f/zjHwHYsmULW7dupXv37nzzzTcoFApmz57dKhUVQgghhBCiVbiHgVLrvKOj1IJbtzatjp+fH1OmTLGHiVXl5eXV7O3rdDpycnIclplMJvLz8/Hz82v29juCRoWrnT59mqioKPvrHTt2sGTJEvbs2cNdd93Fv/71rxavoBBCCCGEEK1J4T0I+jzofGWfB1G04SgOWEdrkpKSGDhwIMOGDXP4r1+/fs3e/ogRI/j6668xmUz2ZV999RVGo5ExY8Y0e/sdQaM6OQUFBQQGBgJw/vx5srOzuemmmwCYPHkyly9fbvkaCiGEEEII0dr6PQr9lllHbsD6/37LrMvb2IIFCzAYDMyfP59PPvmEgwcP8vnnn/PMM8/w6aefNnv7ixcvJiUlhQcffJC9e/fy/vvv89RTTxEbG+uQdKAza1S4mp+fn31o69ChQwQFBdG7d2/AOsRVPf+2EEIIIYQQnYHCPQSGrsESfrf1GRy3bm0+gmMTGBj4/9m77/i26ntv4J+jI8ma3vKK4ziOE9txdoLt7DSMQEOhpUAZZZQyAgS4lEv7onTc9mkvvS23FC6E1T7Q0gdKCeWWlhIoUBIysEMGIXs4thNPeVuyZUtHev5QJOtYx7LkyEv+vP9JfJZ+8vn6d85v4/XXX8dvfvMbPPbYY+js7ERaWhoWLVqEgoKC877+zJkz8eKLL+LXv/41Nm7cCJPJhPXr1+Phhx+OQurHh4gKOUuWLMGLL74IjUaD3//+91i9erV/X3V1NTIyMqKeQCIiIiKi0SKYZo7qJAM+v/jFL2Q/p6en47HHHhv0+OzsbBw7dixo+0cffTTktQFvl7g33nhj0OuXlpYqXv+VV14Z9JzxJKLuag899BC6urpwzz33QJIkbNy40b9vy5YtWLBgQdQTSEREREREFImIWnKmTp2K9957D21tbUhKSpLt+8EPfgCLxRLVxBEREREREUUqokKOz8ACTldXV1T6BxIREREREZ2viLqrvfXWW3j55Zf9P1dWVmLt2rUoKSnBddddh9bW1minj4iIiIiIKCIRFXL+8Ic/wOPx+H9+/PHHAQD33nsvamtr8cwzz0Q3dURERERERBGKqJBTW1uLGTNmAAAcDge2b9+Ohx9+GBs3bsQDDzyAjz/+eCTSSEREREREFLaICjm9vb3Q6/UAgIMHD8LlcmHlypUAgNzcXFit1uinkIiIiIiIKAIRFXIyMjJw6NAhAMC//vUvFBQUwGQyAQDa2tpgNBqjn0IiIiIiIqIIRDS72pVXXoknn3wSe/bswdatW/Hggw/69x08eBC5ubnRTh8REVHEPti5PuxjHygbwYQQEdGYiKiQs2HDBoiiiH379mHDhg245ZZb/PuOHz+OdevWRT2BRD56qQoqZyPcmnT0iLljnRwKA+8ZEdH5Y15KFLmICjkqlQp33XWX4r5nn302KgkiGkjjaYWx8Tmoz2wC3H2ASou4qffAnr4BTiF5rJNHCnjPiIjOH/NSouGLaEwOTS52qR1NjrOwS+1jmg5j43NQV//Gm8EDgLsP6urfwNj43JimiwZ3vvdsvMQeEdFYGg/PP+bHNFFF1JIDAKdOncIbb7yByspKOBwO2T5BEPD73/8+aomjsdHn6cH+xnJU1OyA5JYgqkSU5CzHgvRSaAX9qKbFYzvurcFSoD6zCTrLjXCI00Y1TRSaXqoa9j0bT7FHRDSWzicvjQbmxzTRRVTIOXz4MK6//npkZGSgpqYGBQUFaG9vR0NDAzIyMpCTkzNS6aRRtL+xHLuqtvl/ltyS/+eSjDXDuqZdaofdaYNRY4JRTAz/REdDfw3WQO4+iM5GgIWccUXlbBzyntmRoBgPIxF7REQTUTh5aSTPv0ifw8yPaaKLqJDzxBNPYPXq1fj1r3+NOXPm4Oc//zmKi4uxbds2PPLII7j//vtDnv/uu+/ir3/9Kw4dOgSbzYbp06fjtttuw+WXXy477s9//jN++9vfor6+HjNnzsTDDz+MpUuXyo5pbGzET3/6U+zcuRNarRbr16/Hww8/7F/Hh4bHLrWjomaH4r6Kmh0otiyIqJBy3jVBugxApVXO6FVaSJr0sNNCo8OtSQ95z047uvDnA88ExYPT3Ttk7FlgHuHUExGND0PlpeE+/4bzHI72uwDRWIhoTM6RI0fwta99DSqV9zS32w0AWLVqFe644w7893//d8jzX375ZRiNRjzyyCPYtGkTSktL8dBDD+GVV17xH/POO+/gxz/+Ma688kq8+OKLyM/Px1133YXjx4/7j3G5XPj2t7+Nuro6PPHEE3j00UexZcsW/PCHP4zk65ACu9MGyS0p7pPcEuxOW0TX89UE+a7pqwna31ge1vmCaRZcU+9R3OeeegdEVxP0UlVEaaKR1SPmDnrPbJm3YvOJCsV4iHbsERFNZKHyUnf2bRDCvM5wnsPMjykWRNSSY7fbYTaboVKpYDab0d7ePwitsLAQTz75ZMjzn332WSQn988GsnTpUjQ1NeGll17CTTfdBAB46qmn8NWvfhX33nsvAKCkpARHjhzBCy+8gMcffxwAsGXLFpw6dQrvv/8+pk6d6v0iajW+853vYOPGjVyv5zwYNSaIKlExcxNVIowaU9jXilZNkD19A4yAbHYZT+Y3oGr/FPrqZzjbzDjkSLsRRlcLhPrX/ffMnfkNfCrlwynVBB1fUbMDM1MKohZ7RESxQOn5B8ulULXvgvHs/x3y2Tfc53A03wWIxkpELTmZmZlobW0FAOTk5GDr1q3+fZ999hnM5tBdSQILOD5FRUX+a545cwZVVVW47LLL+hOoUmHdunX45JNP/Nu2bduGuXPn+gs4AHDRRRdBo9HIjqPIGcVElOQsV9xXkrM8oubpSGuC9FIVjI7yoJYZp5CM9ozvw7ZoB/rmvQp3/g8g1G8GOvZ4D+Bsa+OK3l0NQ+PvIFjfBXLvAXI3Arn3QNX0DyzwfAGNqAk6R3JLcLndUYs9IqKJTi9VQdt7Ar1pN8K2aAfcM38IpJ17P9JnA6kXQn32hZDPvuG2yETzXYBorETUklNSUoKKigpccskluO666/DDH/4QJ0+ehEajwY4dO3DzzTdHnIB9+/ZhxowZAIDKykoAQF5enuyYGTNmoL29Ha2trUhOTkZlZSXy8/Nlx2i1WuTk5PivQcqsNhda7X1INmphMSnf/gXppQCg2H83EuHWBIVaBwDnxmBoPK3QWf8f1I6TgPV9xT7KnG1tbPnvo+Mk4KgHkpYCVYG1j+uQ6jiMJSlfw66mBtm5okqEQW2MWuyFE+dENHmN5zxC6ZkozfwJVE3/AHRZgPU9Wb6qbv8EOku14rPvfFpkopUfE42ViP6y77//fnR0dAAArrnmGnR0dOCdd96BIAi46667cPfdd0f04bt27cKHH36I//zP/wQA/7Xj4+NlxyUkJPj3Jycno7OzU7HVKD4+Hp2dnWF9dlKSAWq1GFF6h8tiGfvB0q1dfXh1ew1e31ELp+SBRhTwjeVTcMOKHCSbtQOONmNK2ldQOr0MNkcXBEGA5HEjTgekmsL/LhaYsXT6Smw/9XHQvqXTVyI3w9sS5zn8GFD9m/6d51pmEkQBSPtPWCzm/mPS14ecbcakaYU5ZU7YaRyvzjc+xyLm/Pco8yrvg7jxb/073X3en9O/ghSVBwVpRRAEAR6PB5UtJ1Gau9wfD77Y63J0wqyLR6rJIvucUN8tsjin4Yp2/jnWeeTAzx/r9CgZj2kar0LFZ7TyiJG8H0rPRLFzd8h8VUQDugQ94nVmpJrS+tMZ5nM4UP93Mw+ZHxONZxEVcpKTk2Vdzm6//Xbcfvvtw/rgs2fP4qGHHsKFF16Iq666SrZPEOTD6TweT9D2gccEHheOtrbuSJI7bBaLGVZr16h8ViivftqA13bW+n92Sh78cdtZSC4PbijLUDynz+PBocZD5zVH/tzUCyBJ7qBrzE29AFZrl7eLWtUzyidXPQNPzrdgtzn6j/G4Q842Y3Mmw6Hw+55oLwjnE59jEXOy+6ifBgx2T63vYWrhNXj3yB5/PMzLWojClHkD0qyDCTp4egBrT//2ob7bcOJ8PJhM8TnQeMgjAz9/PKRnoLFOUyzFZzTyiJG8H4M+E4fIV6uMl+DVU+8pPqeHeg4HUv5uyvnxeDLRYpRGR8RttEePHsU777yDuro69Pb2yvYJgoD/+Z//GfIa7e3tuOOOO5CZmYlf/epX/u2+FpuBLTW+1hlfC098fDy6uoL/0Lq6uoJagcjbLL+5vE5x3+byOlw8NxUWY3AoRGOOfK2gR0nGGpSlpMPdVweVNgtuTZF//1DrAKC3HipnX/8xLVsByzp5bdY5rqn3sKvaGPHfR9EAeKSQ97S65aRslp99Zz+DTm0473UXhhvnNPZSy9OGPshv44ilg2LbRMgjBn0m2itD5qvtdisA5ee07zlcbFkwvPXqiCaoiP6a//rXv+KRRx6BIAhITk6GRiMfQKzUujJQT08PNmzYAKfTiRdeeAEGg8G/zzcWp7KyElOmTPFvr6ysRGJior8VKS8vL2jsTV9fH86cOYPrrrsukq80KbTa++CUlFu5nJIHrTZnUMYerZnRlPoWuwJmgxlqHQDEZcLtdPQfI3UDPTVA+ldk/ZJd/jE8NBbcmnQgYbG3O0V3Zch72uYO7hISjXUXhhPnRDR5TIQ8YtBnoqcvonxVKU81ioks3NCkEtFf86ZNm7B69Wr84he/8Le6RMLlcuGBBx5AVVUVXnvtNaSkpMj2T506Fbm5udiyZQtWrlwJwLsWT+DPgHddnu9+97uora31F4Y++ugj9PX1yY6bjJQGUyYbtdCIgmLmrhEFJJuCZ7sKnJFFI2qQl5IvG0Nhd9rCyiyNjc9BrTDexgigPeP76BFzETf1Hvkx57im3gONaSZ6errkx3R+DthPAKlr4U64AN0JV7AFZ4z1iLkwmGZDqH3F25ozSGtbs+Ub+MzaAiA4rrpd9pAxZbW5UNPZDr3KozhQeDhxTkSTx3DziNGcpGDQZ2L7bngyr4FQ+/+CznFlXoP9jfLxyL6Z04Z6TtuldrbuUMyK6K+1qakJP/7xj4dVwAGAn/zkJ9i6dSseffRRdHR0YP/+/f59s2fPhlarxX333YeHH34YU6ZMwaJFi/C///u/qK6uli00um7dOjz33HO477778MADD6CrqwuPPfYYLr/88km7Ro6tV8Lb+6zYXF7nH0x5dWkWrlhogcWkxl0X5eLzmk64PcCeU21wOL0LuV5dmiWrufJl5olmA0SViDRTOhINSTjedNTfl3dWWiF06rgh06SXqrwtOAoCZ0JTWgfA1zLjy3KDjvG44NIXwp50I9fGGQf0UpV3TRxg0Na23il34d2OZDilFmTGZwXFVaI+GQkZyUHjvULFtimuf3CxxaTG1aVZsv72PgPjnIgmn0jziIF5j1kn4pbVOcjL6ENinGrECjxKz0Rp+kMQGzYH5auwrIPadhQLkoqwq6l/LNJQM6f1eXqwv7E8aJzOavOaEflO4RrPs97RxBNRBM2ZMwd1dcr9WcOxY4e3+9PPf/7zoH0ffvghsrOzcfnll6O7uxsvvvgiNm3ahJkzZ+L555/HrFmz/MdqNBr89re/xU9/+lP827/9G7RaLb785S/ju9/97rDTNtG9vc8aNJjytZ21MOvV6OpxyV4QlxakwNrhwIJpCbhioXemFKXM/M7Ll6HP3YojDYf815XcEo40HEKiLmXIMRRDjbcRnY2AOM2/Do7OciNEZyMkTbqsZUYvVUHlbESv5QY40r4Jsa8h6BgaO7ZeCTV1p7Eo8F53fg44ar3r5LhdaNeV4fa/ZOHSsrPQiJ1INCQFxVV59Q6oBDEorgaLbQBBA4V98axUICIiiiSPCMx7ZmWakJGkw/MfVIWsbIkGpWei6GyAvuMRoKfan69CpQbOvAI4W5CQdqnsGkOtZV/hxuIAACAASURBVDPYmFtRVGGxZVVUv084wq3MIopERIWc733ve/j3f/93zJgxAwsXLoz4wz766KOwjrv22mtx7bXXhjwmIyMDmzYptxJMNkqDKXUaFUpnJqHT4cKZVgdElbeJ3il5sO1wM65dmuV/QbTaXNh5sh01Acd1OSQ0NWegybVT8TPDGUMx1HgbSZMu2+QQpwEBBReNpxWew495Z5pRGM9D48Pb+6xQ92qxyBBwr+PnA/oc/zo5iaoX8OyqO/BJ3zWYOi0Zu6r+qXitgXEV6UBhU5yIG8oycPHcVLTanEg2adiCQ0R+4eYRgXmPTqNCRpIO2w43+/eHqmyJlsBnoh6e/nGPA9Yfg6MOXTAC6AhrLZtQY253nf4EhcnzRqzr2mAtNW/vs+Kt3fUomZkMlQC4PcBbu+sBjNzvl2JfRE//4uJirFmzBjfccAOMRmNQtzVBEPDBBx9ENYE0tIGDKX01TjuPtchabxraHDhe713d+K2KeqwtTsXWwy2ympNVxakwxanRauuDUd8NqSP0SsmhMsKhxtsM1RJjbHxOcf0c33geGntWmwv7qzuQlTIVNabbkNP5nHdMjj4naD0HS/MzWBIv4a3qrw+5ArcvroY7UNhiVLNwQ0SDGiqPCMx7Fs9Iwq5jLYrHjdasbLJxjz7n1snxTLkJxVnXIiezM6yxNYFjbgcKdyxPJKw2Fxo7e1Hb1ovfb61Bl0OStdT0OD3YX92BkpnJ2DXgvWV/dce4mPWOJqaIouaJJ57Ayy+/jOzsbOTl5QXNrkZjI3Aw5WA1TtsON+PCeRZkJsXB7QHUooB/HmzGO3sa/DUnKWYt2mxO/ONQA5ySB0Z9HETD8FZK9gk13iaUcMfz0OgLrInr7OmDJUGHDw9YYWtfj+8UAzn6s94+4wpybP8XhQnrsas9vLjiZAJENBYC8x6VgDGflU027nEAof51aFI2Ik0/PaxrGTUmiKrze7aHQ6kLWmCFq68lrHRGPCwJyu8t6+anoXkczHpHE1NEUfPGG2/gpptuwqOPPjpS6aFhCBxM6atx0mlUWFmsgS6uF47eONS3xMHl8mDnsVY4JQ9WFqXg8JlOf82JqBJQOjMZWwMymY+/cOLGixajuqMi6DOH6u/rM9R4m8GEO56HRo/SA+uOi3L9NZzlNWrc1fx1PHPFaeS5/658EXcfzIIN+SklOGbdFbS7KK1UFlecTICIxkJg3uP2YEwqWwIrlHLVoZ+JH+87hCaVPqwxLEYxESU5y2VjcnyW5JRCwNDLgYRDaTzltsPNWDU7FTXN3XA43dhcXofFeQmDtpR9dNAKe58L+5LC+25EgSJ6Q+jt7cXatWtHKi10HnyDJuvaHCiYokZpcR3Odu1Bj1uCaBJxSX4ZHLYiAMkoP9EGjVqQ1ZyUzEzGzgGZjMPpRvmhLJQWl+Bs1x7ZDCyh+vsqGTjeZiiRjuehkaf0wPqiptP/4J+To0FpcR1O9DYjL8S9c2vTsX2PG0uK5HGVbV6Mf+1NwzyLS1Z44WQCRDQWfHnM3/c2YGlBiqylwWckKluUKpR+/hUDVobIVxvsiXh9f/hjhHzP8MDZ1WalFaKmtQqf1ZT7n/OBs10ONp5GaXuo8ZS7jrXggvwkf6Vrm90VsqVMgDDi458oNkX0l1lWVoaDBw9i6dKlI5UeGibfYMrq9j7sqz8qa32R3BIO1O3AtAQnDp/JwrcvSkJyvBNN7SL0Wgty0iRo1N0w6LT45JDTP700ABysceJkfTp+ddOdMOh6R20u/fMdz0PRNdjkFoVTPUhOAOA2Ym5eO9p7bWgTUtBi+QZSGl8Juk6N6TZ8cDIen1dZcaw2HSuKr4Q+rhc93XH4Y7kTvU5nUNePwIHCDrcAncrDFhwiGnGBeU+LzYmMBC3eqqgf8coWpQqlH73jwl++cieSGp8OOr7GdBv+91MjAHfQGKHB1sHRCnqUZKxBsWUBTrUfRW1HDU5aj8MpOQEAu6q2QXI7MT+jBB6XCX/dGzzz2cVzUvDPgy1BU2xPSYqDyx26i5+o8rYWaUQB6YlxIVvKJLd3+2iNf6LYEVGkPPDAA3jwwQdhMBiwevVqJCYGv+yaTNHpy0nDk2ruxtnjexT3ne3agzvXJ+Kzs3+DyqbCgimLYU6Q8EXdXkhuCboEHf7966tQ2xyHs80af4FHcntg1CTBohvdjMWevgEJogAozK5Go2vgBAC+Vpuarn8gLTEdaeZ07D57ACpBhRmpM3Eq4XJo1TqY63/vv3fW5Duww3Y9CqaY8dHBZjicbnywv/fcFb3/akQBcRqVYhosRjUsFjOs1q6R/rpERH6+SQoK0/W4dJ4lapUtSi0gzXYXzrY5sLIoRbauncPpxs/2rsNjZSK0tc/689Ua02349aH16D1XOekbI5RgcMrWwdFpdFg140IkxqUgXpvoL/D0uXuw7dSHiuNz9pytQGdvB9RCIr44m+Z/BogqAXXtDnx8rM0/K+v0NKNsiu2VRSlhFVyuLs3C9CTtoN2SlxakoPxEq+y7sZBD4YooUq688koAwM9+9jP87Gc/UzzmyJEj558qGjalWVN8K8uLKhHJRi0WT70ARm083B4JjV31yE+dhe4+O0w6M3af9WZ2oknEjRctRvmhLMzNThuTTMUpJEOY/Z/oSr4hovE8FH0DJ7coLa5DdUcFNKIGKaZUHG44iIXZS6BX6wEBONXZjErhAsyesQIGtw1OVS6+uzkOzbYumHXdWDvXgvf2NwV9zurZqXjkT0fwlUUZ7H9NRONONCpbBlsT5uI5KXjncys+Pd6qOFB/Z5Uae1Z8B9Pn3ICP9x1Cgz0R//up0V/AAbwFiBSzBvsbt/vH3PgWX/7w+Jb+Ak/eWkAAREGFwvRiuCQnKltO+ltyAJzrxqaGU2rDV5bqMNWShDNNWiSbtdh5rAVbD7dAIwpYVpCCFLMWfwlo7d99sm3QLn5LC1Kwt7IN1y+b4m8JU+qW7Pvuvu/HyWYoUhG9ud57770QhOgMSKORMXDWlIEryx9rOoKijGIAAvacqfD3xS3OnAdrV6P/PMktobqjAhctWYayrGLFz/It0unWpKNHzB2x7xTpeB6K3FD3MnAQ7spiDc52eVsL8y2z0GpvxUxLAeo6apGgT/DHmqgS4fYUwhyXiAN1/8KVK+eh/FAWDtY4cbqxG+sWpOGjL6z+B9q6BenQqlVwjcL6EzRxfbBzfdSvmVqe5v+/B0DqIMc1lwYXzIkiNdgCx50OFz48lyf6tgcO1JfcHiSZNDBrBczKNKLpNIKmCLi6NAv6OJt/HRyNqJEtvuwv8Jx4TzYWp6u3C/mWWWjvbkN9p7ewkpWQDVEQcbT5ECT3EYh6EasXlWDrvnRZGrcebsbq2anQaVT+7u4OpxsNbQ6snp0qW87ikvlpWF2UgltXThm0W/LOE+04XNuF8hOtsgIcJ5uhSEUULffdd99IpYOiJHDWlIGZG+AtvBysO4CijGKoBBUkSN4xO7X7UJRRjGa7VVaTc6SpHGVTlwDo75qo8bTC2PicbFroOC7SOSFFci99NW19qEfHucJwisH7OnjCegz5lllBsXak4RCKMoqRl5KPww0VKC0uwcn6dByvt6G+rQfXLJ2CMy09kNwexBvUeGNnrX9AKvtfE1GsCTUg//3Pm/z5XyDfQP2V0yXkd/4S6jObsMjdh0VmLb56kbe72t5aDa4uzcKViyxo76vyV1jmpeTjeNNRAMEFHkCeT5+0Hke+ZRaa7VYAQKrJggO1+2THHrPu8ufjgeN3dwZMJuBzvN6GmuZufGN5Nqqt3kLaB19YEa9TD1qBZTGqcWFREuwOF3afbDuXbk42Q8PDt4cYtCC9FL0uN7qdrf7MbaDjTUcxI3WmbL/SNsktobOvHUZ9fyHH2PicfEIALtI5YUVyL301bWe6NPjrEW9roTnOjF1V25GfOitkrC2dvhKAd1zYiuIr8cH+XnQ5JJxp6cEnR7xdHtQqQTYglf2viSjWDLXAsS//G7h9wbQErE96FurqJ/t3uPuQ0/kcHiuLQ3Xy9xCvd2J/4ydo62n29+gQBEGxwDNQ4PN/pqUAFlMadp7+RPHYwHx8qLRLbg8qG+2yws9QFViBrTqtNieSTRo+B2hYlEf40oSmFfRI1ZTBIBSEXNVYJaiG3CaqRLT39k8tPeQinVL1eaaeRksk99IutaPJcRZ2qR19Dj2yzYsBAF29XUEP0oEktwSX2+n/vz6uf5IB3+DT1bNTUX6yTbaN/a+JKNb4xjcqCcz/Bm5fM60VmrPPKp6nr38W2XG12N9Yjs/O7IIgCCidtgwFaUUQBRGiyju2cah8WiWoILklZCVko8XeHPJYXz4+VNqXFqRgT2W7bJuvAmsoFqMaBel6FnBo2Bg5Mcpi0qKyOfSqxm6Pe8hts9IKse3kh8hZOANGMZGLdMaQcO5lnypNNkOPqBKxOHsZmppzMC0VUKlUEFUiPB5PyFhr72nz/7+nOw5AL1YVp0KnteHuy/TosPVCgHwmHfa/JqJYE2qB47VzLfj4kPJAfdF5NmR+LfXVoLqtEvmWWbJxkQVpRVg8tQQV1buGzKfdHjdElQiNSuv//2DH+vJxnyuWZCJOI2D3ScE//mZZQQrqAyYO8GEFFo0WtuTEqFSjGip3PGallijun5VWiNMtp2Tb5mbOR01rFQBvJlaUUYz27jY4XA7YnTYAAYt0KuEinRPKUPfSoY7Hnvrt59ZL6J+QoqLmE8yYWoc3t2aipT0Bs9IKUdlyErPSChUvVZRRjFPWEwCAbPNifHrUhW99yYL5+Sfg0r2FEx2b0eL5M7795Wbotb1wuz2yWXeIiGLJFQstuH7ZFH+LjkYUcO3SLLgkN0pnJsu2r5qdCmuHA6I+M2R+3SMmIEGfgCMNh2T59eGGg+iT+rA0dwWq204Pmk/73gnKcpejMHERVk67GIuzld8fitJK8elRlz+N1y+bgquXpOH6kgw8f/s8/Pqbs/HfN89BQZYJloQ46AYsC8AKLBotjLIYtniGFpXtBhRlFMtqdooyimHQGP2tNqJKxMLsJbDaGpGTnAuVoILb4/YvDCaqRBg13vWPuEhn7Ah1L22Zt+K92iM42nhY8dwjTeW485KbcaCmA2npHci3zEJHT0dQrBWkFaHF1gy3x43i9GWYnrAEK2414fOmj3GgYaf/er4BrXPzVLiubDVSDcyaiCg2DTbm5NVPG/DW7npckJ8EUeXt/lV+ohVXXZAJUZ8B19S75WNyznFNvRs2VRqON/1N8fO+qNuPby76Nooti2B3diI+LhGfnflUNrtaR08HlkxdipUz1qCnCzCoErA4cwVElUbWkl+SsxwL0ksx7xaN4ngZvVrAPys7ZFNB+1p0TjfZOYEAjSq+ScSwL5rKcbBhJzSiBkunr0SzrQlujxvHGr1rGc1Inekv0PRJvTBojbJZV3yWTC2TrZRsT98AIyCbkYuLdE5MSvfSlnkrNnemQaOXQvbJLsgSUJRRiKOtTThQX47pKTOgEkSU5S5HW3crEuKysf+kGVB1Q+qNw3PlTlx1gQNXXuAtJCk53PQpSqcuRuBsfkREsci3yKiP0loxgYWCvZrlyEtvRar1dX9+3Wz5Bio1y6Fz2kPm191OO7L0GTCKiUjLzMHctMWwO23QiGq43BIMaiOMYiJMOjN6urxrAGkFPUoy1qDYsgB2pw1Gjcn/LmAxQrE1Rml67K2Hm/H10iw8cuUMVmDRqGK0xajG7lb/i6RTcsLa1YiTzcdlmaBvlhVRJWJG6kx0OTqDauJnpRUiL2mm7NpOIRntGd+HznKjf5FOAYC29wTUI7xmDvWLxjpFA+9ljzoez+5/Gw5XOwp0mSH7ZHsfeGqU6JdCq1bJavuyzYvx0Wc6HKzpPneGt+/25vI6LJudGvJhbHfaZIVqIqLJINSsYnapHf84tQMqIRVLUn6EBKEHNsEEQAVz1wGkmszQaXRwOB1B1xVVIkSV/HXPKCaGnc+Ge2yo6bHf/qwe6xewBYdGFws5Mard0SF7kfSNmRispebz2j1wuBxotltlLTynm09hRc5Fii/UDnEaNCoz18wZZYOvbXM31O4OeJrboJeSIir4+BZcbXKchcPlfUiGipmSnOX+h97A2r5uRxz+/ZWz6HUGz57jlDzwePRDFp6IiCargS08ABDnqsbFFhM6PQbsbmlGjtGIyw2H+1t1rFrcl3kT/tKZiVOd8tnMZqUVwqwe+YqjoabH5pIANNoYbTEqUZcge5F0Sk60d7cFtdT4+teqBBG7qrbBKTll8+h/ZeYqZDU9M2ghhmvmjD7F33nbvxDvaoFQ733gGYdZ2DRq+mfkGypmgs49V9tndbngdp9RvL5GFGDWJPkXrB0osPBERDTZBVZqZZx7BpdYvgF1nICEmlf6D3T3Ib72d7hqyrfxPz1JcDgd/t4YGeZsGMSEEU+rb3pspYIOZ1SjscBCToxKNySjKK0UBwMGd9d31qHZbsXyvIsxxZQl61/re2kN7HK0dNoqLHJuC1p8zFeI6U27MfQ6K5YbORFBlCmubSMaAH0OhFr5A284hU2jmCgrgPhiZkbqTExJyMGMxMIhCyGhpki9ujQLqQY14vXB8TZY4YmIaLJSqtRKaXwFSL/Cm/dL3bLj4+tfwbrcZ3Ds3Do0yfo0FCbPG5W0DpX3sxWHRhsjLoYtySwD4B3k7Z/tynIB8syzkRAn7xKkNMAwFe1Q71VefEx9ZhPcSSu4Zs4oU1zbJmU1YH1P8fjhFDYHFnjdHjdSDGkoTJ4PraAP6xpDDaANNaCVYsdzDz8T1nE/uHqEE0I0AYVasBnWLUDqWqBpi3y7uw8zTckwmKePSb46VN5PNJpYyIlhCXEmXJh7EeakL0J7TycS9fFI14fuuhQ4wFDTewBIvxzQTwPslYCnD2jZ6j0wZbW3EJN+OdD8UVBtEtfMGRn+tW18BR3RAJiLAEEFCBoAbsAjyf6vdVVHVMiJRgEk1ADaQJEMfiUimkw0rhrAcjHgcXufvVK3N89PWe3N800FQMu5br++bRAgxk1Dmip7TNIcbt5PNBoYeZNAuj5ZsXDjn0xAmwF4PP6JBVyqBBgbn4W6/RNANwWoesY/HgfpVwCaZKD+zxABQFADuXcDLduB9v5pgblmzsiQrW0TPx8wzgRsxwGtBdCmAjW/9RZKDbneGj53H7TWfyLx3Pgctbsz7BnZolEAURpAS0REg1OaXAYZXwN0UwGVBrAd9VY6dlcD+Y8CTitgP+mtcPS4oNPlQxrjyX+Y99N4wAichGQZqKnI+1Js3eLPTD2Z34BgPw4YpgP1m/tPdPd5f55yPZB6EdD4tn9WF2R+HYAb6Pyca+aMMHv6BhgFDdTuTqC3DrC+Ly+EqjRA7Wv9J5wbnxPvaoHQ9DfA2c5Z8IiIximlcTioex3IvBqAADS90//sPvGT/vzfsg7oqeHkP0TnqMY6ATT6/BmooAb0Of2FFQBw93kHsKes8W5XUv8m4O6VnYPa1+COXwjb4p1oz/g+X5xHkFNIRq/lWqC3Hmj8m/w+SHbv/VEg1L8OJJX5j1VX/wbGxudGKdVERDSUkONwGt8GpK5Bn91o/Jt3u2jwjseUqkcv4UTjEAs5k4wsAw0xYB2SPeSkAtDnBG1WnX0Z8CjPkU/RpXFWe1vfBhJUoe+bIMo28UFIRDR+KE4u4+PLw0M9u63vASmr+if/IZrEWMiZZGQZaKgXYlHrbf5WvIgWEOOCtzNTHT2BLWmBPO7Q980zYAFO3jMionHDP7mMEl8eHk5lFif/IRr9Qk51dTV+9KMf4YorrkBRURFuuummoGM8Hg+ee+45rF69GvPmzcONN96II0eOBB138uRJ3HLLLZg/fz5WrFiBJ598EpIUvIo69ZNloKFeiLurAculyvssl3oHOQ7ETHXUOLUzle9dy9YQ920d0LxVvo33jIho3OgRc+Gaeo/yTsul3jw8jMosTv5DNAaFnBMnTmDr1q3Izc1Fbm6u4jEvvPACNm3ahDvuuAPPPfccDAYDbr31VlitVv8xHR0duPXWWyEIAjZt2oR7770XL730Ep566qlR+iYTkywDbdnqffFV4FEnAnGZQPpX+jNTlRZI/wo8hjyg6Z9B5zBTHT09Yi6kqXcF75C6vTOrpV8hv29TrgN6agB3j+xw3jMiovHFnr4Brmn/NuDZewUQl+HNw0M8u2G5FC7DXE7+Q4QxmF1t7dq1uOiiiwAA999/P9ra2mT7e3t78cILL+DOO+/EN7/5TQDAggULsHbtWvzxj3/Egw8+CAD405/+hN7eXjz99NMwmUxYvnw5bDYbnn76adxxxx0wmeSLXVI/e/oGGOEdj4GeGm/mGTC7mm92NK3UiLjmN6GyXOw/16UvhCP1WhjcTqjOvBh0Do0eW/q9MEKUTzOa+XVAZQC0id71Fc5xGeZAUFsg2o7wnhERjWNOIRntGd+HznIjNH1VUPeegHjqv/orsKxbFJ/d7uzb0Gu5HnZ10Vh/BaJxYdQLOSpV6MajvXv3wmaz4bLLLvNvMxgM+NKXvoRPPvnEX8jZtm0bVqxYISvMrF+/Ho8//jgqKiqwdu3akfkCMSAwAxWdjZC0GcDUH3r/r0n31+w71cmwZ/wAOqk6aJ8j48fQWW4N2k6jJ+g+atIBCDBpWmBzpQAeT9D90Vlu5j0jIpoAHOI0OPTTAP1q6BZc7H9ea7I3QuytgaSbBqfCs5uIvMbdOjmVlZUQRTGoK9uMGTPw7rvvyo4rKyuTHZOVlQW9Xo/KykoWcsLgEKcBgZniIBlk0HFDbKfRNfA+mFOK4bB2eX8YcH94z4iIJp7AvNuhygHUC/p3Mk8nUjTuCjmdnZ0wGAwQRflUtwkJCejp6UFfXx+0Wi06OzthNpuDzo+Pj0dnZ+eQn5OUZIBaLQ55XDRYLMHppPBNxt/f+cZnLP/OYvm7TRSjmX+OJ2MZe4z78I1GfMby/Yjl70aTy7gr5ACAIAhB2zzn1l8J3DfYcUrbB2pr6z6PFIbPYjHD6qtVp4hF6/c30TLt84nPWI65WP1ukyk+x6MfejaGddwDYxR7kcb9k5/+NOxjHyj7UVifP5GMdHzGaj4ETNzvNtFilEbHuCvkxMfHw263Q5IkWWtOZ2cn9Ho9NBqN/7iuruA/RJvNptjCM9K6O7rQ3WmHId4IQwL/2Gh8YXwSEVEo3R1dqGpug6BR8zlBMWHcFXLy8vIgSRKqq6uRl5fn315ZWSn7OS8vD5WVlbJz6+vr0d3dLTtupHU1t6HmWA0aqxtx+lAV3G43Fq9dhDkr5kGr141aOoiA4IdUX48DB7cfwJ6P9kJySRDVIuOTiIgAeJ8ZXa2d6Ghux86/fwpHt4PPCYoZ466Qs2jRIphMJmzZsgX33ONdz6Wnpwf/+te/cO211/qPW7VqFX73u9/BZrP5Z1j7xz/+AZ1Oh5KSkhFJW0dDMzpbOxGfHA9jkgkHtslfHvPn5aGjuRMV7+/2fpeLRyYdRID34dRj64ZaFOFw9KLDGvyQ0hl0/ngEAMklMT6JiCahwBZ9TZwGX3yi/A7T0tCKtsZWnNh7DNPn5LFVhyasUS/k9PT0YOtW76rrjY2NsNls2LJlCwBg9erV0Ov1uPPOO7Fp0yYkJCQgLy8PL730EtxuN2666Sb/da677jq88soruO+++3DHHXfgzJkzePrpp3HrrbdGfY2c7o4u7P94Hw59etifGRSXFqLP4YLkkgB4Xx6P7T2BgkUz0dLQij0f7UVhSRHAfqIUZb7WmTMnziA+yYyTByqDHlINNY2oeH83ChbNhEargbPPKbuGLz758CIiim1KLfrFZbPRVNMU9A6zeO1CJKQm4OSBUzjx+Sns/PsuturQhDXqhZyWlhY88MADsm2+nz/88ENkZ2fjzjvvhNvtxvPPP4/29nbMmTMHL730ElJTU/3nJCQk4OWXX8ZPf/pTbNiwAfHx8bjllltw3333RSWdgTUeX2w/gAPbv/Dvk1wSDuw4hDlLi2Ew6dFt619F/uSBSkwvzsXJz0+huyu2BufS+HBw+wEc3HkQC1bPR3NtM/KKc1F1pAbOPqesoO3sc8riMZDkktDd1c1CDhFRjDu4/UBQi/6B7V/InhUAoNFqYGu3ofJgFfKKcyEIAjweD/Z9vB8AW/9p4hn1Qk52djaOHTsW8hhBEHD33Xfj7rvvDnlcfn4+/vCHP0QzeYo1Hvnz8pCRk46GmkbZsUd2H8UFFy/Gp+9W+LdJLgkqQYCoFmEwG6KaNqLuji6cOXEGeXOno/y93YotOIEFG188DsT4JCKKfd0dXdjz0V7FfQMrwXKLctDZ1oW8OblBPQTOnDjD1n+acFRjnYDxxlfjMbAJNyE1HhqtRnas5JLgltyybaJahNvjweK1i5gZUNT12LoRn2TGwV2HB43RwIKNLx4HYnwSEcW+7k67/1kx0MBKMLVGjfgkM47tPRH0fIlPMqPH3qN4HaLxioWcAEPVeEwrypFtE9UiVKL8V5g/Lw+pWamYs2LeiKWTJi+1KOLkgUrFfb4YDSzYLPrSQqRmpUI8tzCeqBZRcskFjE8ioknAEG/05/8DDawES7QkhHy+iCJfGWliGXezq42lSGo8AKC4tBBf7DwEwJtZLFg1D4UXFMGcmjTiaaXJyel0DRmj+fPyUHW0xl+Y0ep1mLW4wDsGx2xgCw4R0SRhSDBj8dpFsjE5PsVls3Fs73EA3ncYTZw25PPF5VTeRzResZATwFfjofRHLqpFQOj/f3HZbCxYsxALvrSYL480aoaK0Sn5U5A1PQOlX14qi0dDgpnxSUQ0Cfla7pXWS1uwZqH/HQYAdvx916DPF47jpImGhZwAoWo8Fq9dhBnzZ2DmwlkwJ5uRmJ4qO49oNISK0YVrFqCgdA4sFjOs1q4xSB0REY03Wr0Oiy4uQWFJUVClrFavk73DlFy8BLveztBZ4AAAIABJREFULQ+6Bsdx0kTEQs4AoWo8tHodEtJSxjiFNNmFilEiitwHO9eHddwDZSOcEKIRFE6LftllJZAkN58vFBNYyBkgVI0H0XjAGCUiopFgijfy+UIxg4WcQXAMA413jFEiIhoJfL5QLOB8gEREREREFFNYyCEiIiIiopjCQg4REREREcUUFnKIiIiIiCimCB6PxzPWiSAiIiIiIooWtuQQEREREVFMYSGHiIiIiIhiCgs5REREREQUU1jIISIiIiKimMJCDhERERERxRQWcoiIiIiIKKawkENERERERDGFhRwiIiIiIoopLOQQEREREVFMYSGHiIiIiIhiCgs5REREREQUU1jIISIiIiKimMJCDhERERERxRQWcoiIiIiIKKawkENERERERDGFhRwiIiIiIoopLOQQEREREVFMYSGHiIiIiIhiCgs5REREREQUU1jIISIiIiKimMJCDhERERERxRQWcoiIiIiIKKawkENERERERDGFhRwiIiIiIoopLOQQEREREVFMYSGHiIiIiIhiCgs5REREREQUU1jIISIiIiKimMJCDhERERERxRQWcoiIiIiIKKawkENERERERDGFhRwiIiIiIoopLOQQEREREVFMUY91AsaK1do1Kp+TlGRAW1v3qHxWLIrW789iMUchNaPnfOIzlmMuVr/bZIrPgcbbPR1v6QHGPk2TOT6VjPX9GEkT9btNtBil0cGWnBGmVotjnYQJjb+/yMXy7yyWv9tkNd7u6XhLDzA+0zSZxfL9iOXvRpMPCzlERERERBRTWMghIiIiIqKYwkIOERERERHFFBZyiIiIiIgoprCQQ0REREREMYWFHCIiIiIiiiks5BARERERUUxhIYeIiIiIiGKKeqwTQKPLanOh1d6HZKMWFhNvP0WOMUQTBWOViGjyYq4/Sdh6Jby9z4rN5XVwSh5oRAFXl2bhioUWmOK4wjENjTFEEwVjlYiI2F1tknh7nxWv7ayFU/IAAJySB6/trMXb+6xjnDKaKBhDNFEwVomIiC05k4DV5sLm8jrFfX/f24ClBcno63Mh2aiFIAAtNnbvILlQMbS5vA6XzEtFl8ONxg4H0hN0mJ6sHeUUEnkNjFWdRoXFM5KgEoCzbQ4caexGKvM3IqKYx1x+Emi19/lrNAPNyjQhI0mHh/5w0N+lY1lBCurbHDjdZGf3DvIbLIYAYHqaEX/Z3Ygt+xv9cXTJ/DR8fUk6LCbNKKeUJrvAWPXlcbuOtfhj06AVUdPcjQXTEpi/ERHFMHZXmwSSjVpoREG2TadRISNJh22Hm2VdOrYebkZGkg6iSmD3DvJTiiHAG0eZSTr8bU+DLI7e2duINz9rHO1kEvljdbA87r3Pm2BJ0OGt3fXM34iIYhgLOZOAxaTG1aVZsm2LZyRh17EWxeN3HWvBorxEAN6uSFa7a8TTSOObUgwB3jjaOUgcvf95E6pae0c6aUQyvlgNJ49j/kZEFLtYyJkkrlhowfXLpvhr49UCBu1+5JQ8EFWC//+tNueopZPGr4ExpBEFzMo0hoyjho6+0UwiEQBvrBZlmYbM45i/ERHFLo7JmSRMcSJuKMvAxXNT0WpzQqsVsfN4q+JLgEYUILk9/v8nc1wFITiGkk0a2Pvc+KMoDBpHGQmcgIBGnylOxLL8RPx+a03IPI75GxFR7GJLziRjMapRkK7H9CStYvcjAFhakII9le0AgKtLs2AxsixM/XwxZDGqkZukxSXz0xSPu2R+GnKT40Y5dUReg3WxBPrzOOZvRESxi7n7JHbFQgsAyBbM882u5nZ7cP2yKf5jiAbz9SXpALxjcAbOrkY0lpTyuKUFKbB2OHDVBZnM34iIYhgLOTHManOh1T74mjdK3Y8EAWjp8v6fNZwUDotJgw1rsnHpPAsaOvqQkaBVbMEZKh6Jos2Xxy2blYSGjl4kmrTQwIN4A/M3IqJYx1w+Btl6Jby9zyqrvQy15o3FqJY98FMNDAuKXG5ynGLhJtJ4JIqWULFHRESx7bzfZk+dOoWKigq0tbXhmmuugcViQX19PRITE6HX66ORRorQ2/useG1nrf9np+Tx/3xDWcZYJYsmKcYjjRXGHhHR5DXsQo7L5cKjjz6Kt99+Gx6PB4IgYPXq1bBYLPjJT36CgoICPPjgg9FMK4XBanNhc3md/2edRoXFM5KgEoCzbQ40d7uGbKlhtyIK11CxMjAeA/19bwOWFiSjr8/FWKPzNjAWrTYX/r63AcsLU6ASALcH2HOqDQ6nG5vL63Dx3FR2WSMiimHDzuGfeeYZbNmyBY888ghWrlyJyy67zL9v1apVePPNN1nIGQOt9j7/lKmzMk3ISNJh17EWf1eNtPg4XL0kTbGbELsVUbjCjZXAeAzki82H/nCQsUbnZbBYXDg9HgvzkmT539KCFDS0OXC83oZWm5OFHCKiGDbsHP6vf/0r7r33Xtx8882QJEm2Lzs7G2fPnj3vxFHkko1aaEQBokpARpIO2w43+/c5JQ/eLK+DVhQUu2qwaweFK9xY8cVjYEFHp1EpxiZjjYZDKRbf2l2PTocrKMa2HW7GqtmpqG/r4fo4REQxbtjr5DQ1NWHevHmK+zQaDXp6eoadKBo+39oQi2d4azB1GhWWF6ZgZVEKlhemQKdRYXN5Hax2l+y8UN2KlI6nySvSWLlldY4/9gD4YzPc84kGstpcONbYjdOtffj73oag/YtnJOH9z5sUz911rAW3rM5hKw4RUYwbdi6flpaG06dPo6ysLGjfiRMnkJmZeV4Jo+G7YqEFHx5pg7WjN6i7mq+7xsCuGoN1KwK8NaDs2kE+4cSKXi0EdSHyrcGkFsBYo2FR6poW2AXNRzVEjGUn60YryURENEaG3ZJz4YUX4tlnn8WJEyf82wRBQGNjI15++WWsW7cuKgmkyJniRCyfmYjMc12CfA97X3eNzCQdUuM1/tpQq83l71akRCMK7NpBfkPFSopZ4+9CFBh7Ww83Y25OPK4py2Ks0bAoxdW2w83ISNL5Wwp1GhVyUvUhYywtXjtqaSYiorEx7OrS++67D7t27cLXvvY1FBYWQhAE/OAHP0B1dTWys7OxYcOGaKaTIuTxADsH6RK081gL5k414/kPqvy1odctm4KrSjPx+s7gbkhXl2axZp38fF0iA8dB+FxdmgWPG4N2Z3v7s3pkJ+uwrCAFWwPGSwSez1gjJaG6Se461oIL8pPQ3NmHjCQd3t5dj6UFKbIxOT6MMSKiyWHYLTnx8fH485//jI0bN0Kr1SInJwdarRa33XYbXn31VRgMhmimkyI0VJeiz2s6ZbWhr3xyFgl6Da5fNsVfA6oRBVy/bAoXzqMgVyy0DBorQ8Xe3qoO1Lc5sGp2KmONwjZUXAVOaNHlkNDAGCMimtSGVZ3ldrvR0NCA+Ph4bNiwga0245DSrFY+GlGA5A7e/tLHNXjhjnm4eG4qWm1OJJs0rPEkRaY4ETeUZSjGSjixd7zehprmblyQnwRRJcADDy6Zl8rpo2lQQ8XVZQvT8f1XD/u3BcaYRiXg6tJM5CbHjWaSiYhoDA2rJcfj8eCiiy7C7t27o50eihJflyIlSwtSsKeyPWi7U/Kgpcs76LsgXc8CDg1JKVbCjT2H042dx1rxyZEWbD/SipYu56ikmSamUHF1dWkWRI87qADki7GtR1rQ63SPRjKJiGicGNZbrCiKSEtLi3ZaKMquWGhBp8OF9z9v8o+9+dIcC840dys+8Dnom6LF1yUocBYsxh6dL6W48i0i2+P0hGzpYXwREU0uw66qv+qqq/Daa69hzZo1EATlWWxobPU4vTMP+boESW4PPj/djksWpiM1Pg5uD7DnVBsc5146OSCXosXXnW3ZrCRsLq+HB95urvNzE5BsjpPFHcDYo/CE6ibZK7lw3YpsVDV1B+VtywpSwMcUEdHkMuy3CpPJhKNHj2L9+vVYu3YtLBaLrLAjCAJuuummqCSShqfV3ocuh4Sdx1oBALMyTSjIjseftp+VrTFh7XBgwbQEDsilqOt1Sqhv967XtPVwS9CaOaeb7P6aeKJwWYxqWaHY1ivhb/ua8PZnDUF5myVBh/o2B1q6nEg1sCBNRDRZDDvH/+UvfwkAaGpqQmVlZdB+FnLGXuBA3cCZh3x8a0xcuzQLN5RljGFKKValmLTITNLJpov2rZmzbn4aHrg0FzlJHAxO5+ftfVa8WV7v/9mXt10yPw3lJ1rR3SuxuxoR0SQz7ELOhx9+GM100AgIXM9k8Ywk7Bpk3Zy3Kupx6TwLuwtR1IVar+mjg1ZcvpBj++j8hFo/518HrbggPwnTUjiRCk1cqeXh5ZPNpU0jnBKiiWXYuf6UKVOimQ4aAbZeCWa9GqtnpwIeT8g1JlptTr4EUNQNtbbJ5vJ6ZCXpcMVCC6ePpmEZKsbyM4xYU5A0yqkiIqKxdt5vtadPn0ZFRQXa29uRmJiI0tJS5ObmRiFpdL7e3mfFaztrkWhQ465LU5CYAHQ74vDJIads0PdgMw/ZpXbYnTYYNSYYxcTRTDpNYIFxk2IyhZzxyun24LWdtQAg6zLJ2KNwJRu1MOtElBWqoYvrhaO3P4/TiAKqmrrxT6d7WF1yGYdERBPXsAs5brcbP/7xj7F582Z4PP0vMCqVCtdeey3+4z/+Ixrpo2HydeGYk6NBaXEd9jf9HZJKgmgSceNFi1F+KAsHa7zrkgyc2arP04P9jeWoqNkByS1BVIkoyVmOBeml0Ar6sfpKNM4NFjd3XjwLz2ypDzp+aUEKyk94J8XYXF6Hi+emIsHgZOxRRBKMTnz7y8040lSOHrc8j0s2JaD8RCvcbg8unpsadms180AioolvWIuBAsCLL76IzZs34+abb8Zbb72F7du346233sLNN9+M119/Hb/97W+jmU6KUKu9D6JKQGlxHao7KiC5JQCA5JZQ3VGB0uI6mHUirl82JWhmq/2N5dhVtU12zq6qbdjfWD7q34MmjsHiJjHxGG5amQ2N6J19USMKWDU7FQ1tDv+aOU7Jg3a7k7FHEdvfWI6DDTuD8rjVCxvR2tWHXqfb3yU3kmsyDomIJrZht+T85S9/wa233orvfe97/m2pqakoKiqCIAh44403cPvtt0clkWOhu6ML3Z12GOKNMCSYB902XiUbtVgzV4OzXXsU95/t2oNf3/YtZOjkXTjsUjsqanYonlNRswPFlgXstjFO+OJRo1HDJUnQmwyjHpe+7jwaURw0bj47uxPfWrwQJTOKsbm8Hk63B+UnWmWLgmpEAfHmHrz3RejYs2B8/91Rv+6OLnRY26HWiDAlxUMfb4r6Z4TKr062VGDV3Kk42aCC5PaEPbtas62JeSARUQwYdiGntrYWK1euVNy3cuVK/PGPfwz7WidPnsT/+T//B/v374fZbMY111yDjRs3QhRDD0T+4osv8MQTT+DQoUPweDyYPXs2HnzwQcyfPz+i7xKor8eBg9sPYM9HeyG5JIhqEYu+tBB6ox47/r7Tv23x2kWYs2IetHrdsD9rJFlMasydpsG+Rklxv+SWcKBhF2p0KbIuGHanzV97qXSO3WnjA36MKcVo/rw8dLZ1YerMqVh+ednIp2FAd56ijOIh4yY3ORFZSTr/GJxAV5dmQRC6h7wGjX99PQ588cnn2PuvfbL4TM/JQP6iWVHNM4fKr0TdIdx4kRE6z7ywu6p1OrqYBxIRxYBhd1dLTEzE6dOnFfdVVlYiISEhrOt0dHTg1ltvhSAI2LRpE+6991689NJLeOqpp0KeV19fj29961twuVz4r//6L/zyl7+EJEm47bbbUFsb/BIVroPbD6Di/d2QXOe6Kbgk7P7nZ2isaYBKpfJvq3h/Nw5uPzDszxkNc7MsEFXKBUVRJSp2wTBqTCHPMWqiXxtLkVGK0WN7TyA+yYx9H+/Hp+9WjHgaBnbncbvdYcXNFQstuH7ZFFnXNV+XScZebDi4/QB2//OzoPhsrGnAkV0Ho/pZQ8WMr+taYuKxsK8ZrzMzDomIYsCwCzlr1qzBk08+ia1bt8q2b926FU899RTWrl0b1nX+9Kc/obe3F08//TSWL1+O66+/Hvfeey9efvll2GyD19x+/PHHsNvtePrpp7FmzRqsWbMGTz/9NLq7u4PSFK7uji7s+Wiv4r6TByoxrShHtm3PR3vR3dHlP7f5TIP/5/EgTiNicXaJ4r5ZaYU43XIKgLcLhl1qBwAYxUSU5CxXPKckZzlrMMdYODFa8c/PguIwmvGp1EWosuUkZqUVKh4fGDemOBE3lGXg+dvn4fEbZ+P52+fhhrIMmOJExl4MGCo+WxpaoppHhoqZ4ox50IgaFKQV4fP63f48biippjTGIRFRDBh2d7XvfOc72LdvHzZs2ACz2YzU1FQ0Nzejq6sL+fn5+M53vhPWdbZt24YVK1bAZOqvHVu/fj0ef/xxVFRUDFpYcrlcEEURBoPBv81gMEAURdlsb5Ho7rT7ax8HklwSVIIQtK2rrQtHK47Iug6NdVe2wK5EaaZ0FGUU43jTUf8sQbPSCtHe3Qan5B2IO7ALxoL0UgBQnFmIxlY4MSq5JHR3dcOQYFbs2na+8anURcgpOaGCCvOmLMSh+gP+uJmXtRDFaQuCrmExqhW7DzH2Jrah4hMe4PTBSsxcVBC1/FEpZooz56HZZkVdx1l/nmd3doZdQGEcEhFNfMMu5CQnJ+PNN9/EX/7yF1RUVKCjowMFBQUoKyvDV7/6VcTFxYV1ncrKSpSVyccQZGVlQa/Xo7KyctBCziWXXIKnnnoKv/jFL3D33XcDAJ555hkkJCTgsssuG9Z3MsQbIapFxYe0qBbhHlB4EtUiOpraUPH+bv82X1c2AFh0sXIrykjzdSUCgPrOOjTbrZiROhOpRgtae1pw0nrcX8ABgrtgaAU9SjLWoNiygGtEjDPhxKioFmEwewv/vq5tPtGIT18XocCCjkbUwA03jjccxIzUmVAJKrg9bhys/xw6tQElGWvCujZjb2IbKj4hAPWn69Hb3Ru1/NEXMzNTCrGnbheSjSn49PQOWSXOkYZDiI9LRFpmzhBXk1+TcUhENHGd12KgOp0ON9xwA2644YZhX6OzsxNmc/CMSfHx8ejs7Bz0vPT0dPzhD3/AXXfdhVdeeQUAYLFY8Lvf/Q7JycnDSoshwYzFaxfJXgp98ufl4dRB+RikhWsWoL6qAbMW5MPj8aDqSA2cfd4H656P9qKwpAiwjP5sVwO7EjklJ443HUWNpgqLp5YCqYAgCFBBBckjISdpuuID3Cgm+rdzUbzxIZwYXbh6PgRBQE+nbdCuQ774HM5sbL4uQr6CNADkW2b5WwuPNx0F4C345KXko93RgjZnPZI0mUHXGiyuAmOPJo6h4lNn1OH4vpM4fahq2PE3GK1Kh6mJ01DVWqm4/7Mzn2Je+hJ4PJ6w8zLGIRHRxDXsQs7Ro0fR0NCANWvWBO3bunUr0tPTUVio3Ed/IGFANzAA8Hg8itt9mpqacP/996O4uBg/+9nPAACvvvoq7rzzTvzpT39CVlZWyM9MSjJArQ4eXLr88jKIogoV5wbOimoRSy5cBL1Jj5MHvA9P3zZtnAb7Pt4vm0Goo7kTDTWNkFwSPC4XAMAyigWdruYmxZmBMuOzkGhIwqdV22Xd1jp62vGhdQu6p9uxIm8VTDp5Wm2OLmyv3IZdpz/xn7d0+krFY0fKaP7+xovB4hNQjlHf7Goz5kzH2RO12Lf1cyxcPR+WrFQ01DQGXcMXn8P93a42r4EoqrDr9CdIM6UjSZ8siztfvAUWfALj5nziajLGw3gzVHwKAvDZh/LZ/0yJJtSdrkfOrGx0NHfK4u987qlSLPm65NZ31vmPSzOl40DTbnxWUz5kzI3HGBuPaRqvQsVntIzm/Qi3A3600sRYo1gx7ELOr371KxQWFioWcvbs2YPDhw+HtSBofHw8urqCB6LabDbFFh6f3/3ud5AkCU899RQ0Gu/6B2VlZVi3bt3/Z+++46Oo1v+Bf7Ymm942gdBCEpKQShLSIIQmoPCVK4iKIkpVpCsXBPvFi4J6ESQCP6QjIoqoKKIICIgJoUsvIZBGyqa3TbbN7491h2y2ZLPZtM3zfr18Sc7OzpyZefbsnpkzz8HWrVvx1ltvGd1uaWmNwdcihvVHn+hA9XMNjg/nHunZ14ctu33+Fv48kMK+R5NBKDCqD4rzS6BSqcDhqw+vRNJ6yQi4SqHeoUQudq64kX/t4XIcLlQqFXq7+8HFzhVp9/+CUqnSGVZ0Jv+41hV7pUqJU3eP6122JYjFjhY5fh2t0TYWn4B2jPIFPOTdy4NSqcLdq/egkKk71+eOXmDjUXOHUYPH54HD5zfr2EaLk9DXPQJ/559BubQMQV7BANQXLXhcPq4++JtdtmHcmBtXloqH9sba4jPykVj4hfkh924OZLVylBSW4u9TV6CQKZB3Lx+BUX3AFQggkVQ2+5yeyT+Oc9mp8PcIAIfDAcMwSJfchr84AEXVEsiVcrYNTLtfr802EHPtMcbauk7WFp/N1drnw8PE5Sz1Xdne4t8UHS1GSeswO7vatWvXEB0drfe1qKgoXLt2Te9rDfn6+iIjQ3t4QV5eHmpqauDr62vwfRkZGfD392c7OAAgFArh7++PrKwsk7ZtjJ2zIzy6e2kNp9CUAcDZ38/pfZ8mw1X0sKg2mTBUX7YhX3d/dggRoL7K7i8OQHrRbaTc+xO3C2/CXxyAzNIMrQxEjU0Mamq2ItIyNPEotLXBqR//Qvrfd9kOjoa+rIAALBafDMMgpzwbDBjckdzCzYLr/9y9UaCrk+7d1DNZf6FUnkdx1QnwbYU49VMqUg+l4db521qxmX45w+wEMfVVK8uQWZrBtmc3C64jvUjdwSmXlqO3ux8A3TawPoo5QgixTmZ3cqqrqyEUCvW+xufzjaZ/ri8pKQmnTp3SWv6XX36Bra0tYmMNP5jq7e2NO3fuQCaTsWUymQx37txBt27dTNwL8zSWQahr764ITQxv0ToY088rDgk+SexcD1wul72zU/+ujqZM82Cus8gZNYpqdj2mTAxK2p4p8cj7Z+gGj89D7MgYi8VnjaIaziJnXM+/qhNPLnauEPC0Z5lXqpQoryunuOoEGovLmsrmX23XxJ+h9kzAU9/Z7uLkTTFHCCGdjNnD1bp3745z584hMTFR57WzZ882+kyMxsSJE7Fr1y7MmzcPM2fORHZ2NpKTkzFlyhSttNIjRoxATEwMPvjgAwDAU089hX379mHu3Ll47rnnwDAMdu/eDYlEgmeeecbc3TKqprwSNRXVEAj4sLWzRW1Nrc4yPD4PvUN92yx9NKCbGUjA47HPRhi7onm78CaivGNRWJujfihXTxYtjaZOikeJCyyvKfHYO9RXZ/ilJfC5XKPx1MczEDfzrz+sD5cHZxtni8UVab/snR0QENkHYBidxCz1MwA2R2PxNzJoDJQqBXo5+4HHPW5yzFF7RQghHZ/ZnZzRo0fjiy++gJ+fHx5//HG2/MCBA9i2bRumT59u0nqcnZ2xfft2LF++HLNmzYKTkxNefPFFzJs3T2s5pVIJlUrF/h0aGorNmzcjOTkZS5YsAQAEBARg69atJic8MJW+uUZC4oNRmFWo81B3Ww1T06d+ZiBNNiwOh2P0iuaFB2dwI/+a+qHcXkmI6ZGA05mndJY1dVK8+nP2NJxvQsgRNW8HOylz47El4lKuVBqNJzeRO7o6ebMPgMf0SMD90nsI8AzSekZMgyZbtA4yaS1upF3H3SsZehOzWKqdbCz+KqSl6OrUA66CLjoZATXqx5yMkeLX69pJDKi9IoSQjsnsTs7LL7+MtLQ0LF68GO+99x48PT1RWFiImpoa9O/fn527xhT+/v7YuXOn0WWOHTumU5aQkICEhIQm172p9M01cvnUFYQnhqGsqBy1NbVakyy2R5pJ7EqlRUavotcf8nHq3h8Y2mcUEnySzJ4Ur/6cPZr1av5ujcQF1qg9xWNjd/uKqiVwsXNFqbQEkd1iYSsQ4Y87v6Grk7fOJLU02aL10BejmsQsvUN80Dch1CLbaSz+JNUSuInUj22bMsEntVeEEGI9zO7kCIVC7NixAwcOHMCpU6dQWlqK4OBgDBo0CI8//jh4vJZN39haasorDc41cu30dTy1cAIUcqXFhwFZmmYIW42qHE42zjiTlaqzTIBnENIlt7XKTt49gmn955o1KV5jiQtCxP3oqn0TmRKPgn8yp7VGPOqbM0dDE08qRoVJkdNhwxVh6/lkANqT1HI56kcDQ8WRdLXcChiL0fTLGZi0NMFiw3lNib+7zB2EekaplzUywSe1V6Sj80jzNHnZorjCFqwJIe1DsyYD5fF4GDduHMaNG2ep+rQ7jT08q5Ar2YxrHYEd1xnRXRPB4wq0rmhq5pXQzBKuoVQpUSWrhKdt9yZ/wZuSuIB+NDSNKfHYJ7R3q6YADfHshzqlFH/nXjAYT3KlAnJlpVY8aCap1YjsGg87nnOr1Zu0DFMSDliyA97PKw5KlRznc84YjL8KWRnsReq2xtAEn9ReEUKIdTG7k1NZWYm6ujp4eDzM4L5//37cvHkTSUlJehMSdER2Tvbg8Xl6v7Qt9fBsa9Pc1XG0dURW6T2424txPisNtQo9D64340FwSyYuIGrtMR6vFV5CnbwWfcSBAAAVo0K65Db7A7P+uaZ4sH6tHaNCjggRXWJRUVcOQH/8ldUVo6vIx+h6qL0ihBDrYnYK6WXLluHTTz9l/962bRveeOMNfPXVV3jppZdw5MgRi1Swrdk5OyJ6WJTe19pTkoGmqFaWIVd6F1ml93C36A7OZKagt4ef3mWb8yC4vjl7NPr3iEeNoprmp2iitorHamUZCmtzdM6XZojPbclNcDgcdp6c+ncENTHUMB4EPAECPfsiyCsYwwMebXdXyY3ts75yotZaMVqjKkdBbSYeSO+iTiWFq8ifh/2WAAAgAElEQVRNb/wFeAbhZPrRRs+XsfaqoybEoBgmhHRmZt/JuXLlCl5//XX27927d+PZZ5/F22+/jaVLl2Lr1q145JFHLFLJtqZ5eLt+Nqv2nGTAEH2ZzjTDOspqSnUeBA/wDIIt3wYyRmr2sxIhnv1Qq6jB5QcX2fWGefdDlawSX13cQtmLzNCa8dhYdjzNEB8llHpjKLp7rNaD3Zp/Z5ZmwFnkzC57R3ILlT0r20UcGNrnEM9+uFZ4iTIFmqAlY1TGSHGz5DLyK3O0Yi3Mux9ieyXgfLbusLVaRa1Jw836ecWBx+Pqza7WkVAME0JIMzo5JSUl8PRUP+SWk5ODnJwcTJw4EVwuF2PHjsWiRYssVsm2JhTZImpELIJi+7bIXCOtRV/moBv519C3SwjSJbfZB8F5XB7c7NxxJjMVN/KvQSqXwtctEHZ8e/ZHgkh5H1x5AVQCL0h5Pga3ea3wEm4VXke8TyJUjApcDhcXss/Cx703BDwB5Eo5ZS9qImPxKFLeB1NUCpHS1eh5MVVj2abqD/HRl0wgwitW68eTZqikilEgLTPF4Hrbkr59PpedilpFDS7mnNMqb6zOnXW+FUu0mYbamCuF51AsLdRKQa5UKXEp5zyCu4Qi0LMvVIxKa9iaseFmDc/Ro8FjEOQW3qHPmykxLOAJ4Ovuj1JpEe6WX0dfl+i2qi4hhLQIszs5jo6OqKioAACcO3cOzs7OCAxUj8nn8Xioq6uzTA3bETtnxw7ZuQGMZw66XXgTfh59cLvwJm4X3kTfLiE4k5nKDvk4m52KEmkR7hbdwWi/gYiS/wV+9gZAJQO4Qtj0mI1qr1mQc9x0tplZmoFebr1x+v4praur5dJy9Hb3Yx88p+xFTVc/HgVMCewLNoKfvR5QyWBv5LyYypRsUxwOR2vOm/rJBPp2CdF5n4yR4m75dZzLTjO63raKA0P77Ovuj8sPLup9j7460/xQaua0mQ1juX4bU6bioqimAHckt/S+91bhDbYtq0/fcDND52iw4xCDyQk6AlNiuKuTN1zsXLXupJb3KENUlwGdKj6tzdvMXJOXXdCC9SCkvTD7mZywsDDs3r0bt27dwpdffokBAwawr+Xk5LB3eUj70FjmIC6HCx6Xh75dQnSyrGle53K48K38CfzMteofHwCgkoGfuQb2BRt11lujqIazyBk38q9pzb9zI/8anEXOEPCEWtuolldZcI87F/uCjeBnrjHpvJjKlGxTVbJKdpgaj6tOG18/jqrk2lneLhWkIav0XqPrbSuG9rmxSXQb1llzJb1+3KfeP4lLBfo7d+QhY7Fco6gGAKPnwsNerBWLCT5JeoebGTpHpzJ001F3JI3FsIAngIudq067nJb5F8UnIcSqmN3JWbBgAa5evYp//etfyM7OxuzZs9nXjhw5grCwMItUkFiGZliRPjwuDz1dfdBHHIh0yW12dnpAPaQh0csbkXZSPNWrNzxKftK7Dn72ejjVnYRIef9hGZerc0VV43bhTbiIHl4ppexFTSdS3od93Vm4yP8Cv/Yu4PkYwNPOXMXPXg9bZaZZ628sZuwFDrAXOKCwqgDpktvw8+iDIK9g+Hn0QbrkNgqrCrTOqeYKM8Mwja63rRja56bUubE7YPSwt2EiVSb4temA1xideOZnr4cPcwtBDkLYCvTPs8Pj8lAiLUYfcSAmREzC1Og58HVMxL1CBpIqBbucsXOUeu/PDn2OGothX3d/g+0yxSchxJqYPVwtODgYf/zxBzIyMuDj4wMHh4df8s8++yx69eplkQoSyzA2aV5Pp/64L6kAT8DRuoPj5+SC/7PLhIfkc3bYCMSjAGkWUPG39kpUMgjztkEo+f3hMCml0ugV19KaEvbvjpq9qC2ww3nK/gRsvQHJb4bPj0oGnrwA4DX982gsZuqfL80yDX84JfgkaU+2+M8V5ozidK0hbobW2xYM7XNGcTrCvSO1nsnRaFhnmm/FPAKmBKKCLYDksP54Vskgyt+FaMnv6NN1MvZXdMXdCu0f5JoJQPv3SIALzwc/npVgX1oG5EoGAh4HE+K8MTZSjBrGes9RYzEslddY7b4TQkh9Zt/JAQA7OzuEhoZqdXAAYMiQIejduzf7t0qlwvDhw3Hnzp3mbI40Uz+vOCT4JGkN5ejlHIvUq11x8m8PCDme7LAjAU+Ax+0y4VGwS2vYCAp+AkQ9de4YgCsEGKXW0BIHoaPRq98KlcLocBKin33BRvBzNqk7OAU/GT8/XCGUAvMnq9UXMw3PlynLAA+vMMuVcr1D3OJ6tY8sVvr2p3+PBER7D2jSfurT1neq2jP7go3gZm00HM/12hin3C0Y75TH3tHRDJEsl5ajf48E9POKw48XJNiTkgu5kgEAyJUM9qTk4sBFidWfI2Mx3NO1t1XvOyGEaJh9J6cpGIZBbm4uZDJZa2yONFA/e1BslyEIEfdDSU0VCvNyUF5chEhxNQAVVA/K4eHeHUJxMOK71sD9yr/0r1Dym3ooiUoGcLgAowJ49kDBQXYRfvZ6uIknIbbnQJzLTkWMuwecODWoYOxwtrgIUd1j4ecWhKReIxvN2NbUcmsmUt5XP5DtMVx9HvSR/AZ4DAMKf4Wix2zU1ruL05RjqYmbUM9IhIj7Gcw2pcmYFiLuhxpFNby4FRApK6BiJLBRZINbmwmVbS+UKuPQ3TEameVndDKxOdt0Rx+X/hByWqVJMqr+/jTcZ0Pl9Zl6B4w8xMa1Ppp45ggAycP515zydmFq+I8oUrnATuAAR2UBRKoy8IQ9kV0jwL60h8NubQVcjAuphodNCUpqa1Enj8PTAfEoLb2KCsYOl8rKEe3mhj4iFZztvGDDKYcUHfc8GYvhvi7RKO9RhrRM3eF6FJ+EEGvS9r8oSIsxlD0o1jMQnuXbEVm+EXDpC4h6AZJf1Z2WciEKXafBrabbwyuqDTn0BXgioPDQw2ElXmMBhwCdYVKxnoFIUhyBQ97DIW+Duk5BrVcwwO0KwHA2pVrPSWCufwX7+5/rlNsW7tabfcncTGIdBVde8LBzaej8qGQARwCm22TUek4CYPwY6x7LV3BBMBC/3G1aZjAXrgrdSneo1+U5BuDZAnnfASoZuFwh/Ls+hXzhU4BzLHIqz0OulONu0R10d4zG8fN2mDJIDndR+2mSDGXYMiXzlubujr7sakQXG9f6qGSAQxBQ9AegkmqV38/7C3zHcAQ3yPjYq+ssRHUbgbQsPuJ6KvBayEH0rNqqfl0ohKroGXCrrgPl5wHnaIz0DAIvb029YXKPwsYxCtVuEzt0m2IoVqO6DACXw6P4JIRYtfbzi4JYnKG5EpIURyDK3aQeAiLqCRQcePgmlQyexRsBl0XqL/uGPzx4dupOUe7XWu9B3j7A63Gg+g6grGGHSbkUbgM/d5PWsg65m2DLt0NZlzcA1MumVG8Zfs4m2CuKgdxd2uWZa2CvKAYn/zvd7EsAu05rpRJ4qc8Lh6f//ADqcocAcO6thy3fHbVd3jB6jDk6x3gtfL1KwOV4QAmlyXPYsNsQegA8GyB3j9Z6Obm7MbAbkPzXDAR07w6RTR2kNTb4Mk0OlUoBNwdBM49O+2HsSjrRxca1oXjm2avblgbllXBAdOVP4Bdox7Ao9zO8FiLDy0VP4rWQH9GzYqPW69zcXer2SpoJ2HqDl7tb63UUHAAfDOwV1SjzWmzZnW0HKD7J2tPLTVpuQfw7LVwTQlpOs57JIe2XoexBMe4ecMjbrv7DfbDhIU9ZW4Au43TL3Qer7/roI/kNcE8CACh6zAYHMDgERZP1y+AwFffB4OTt1fteTt5e9XAtA+u0ZlKeDxQ9ZgPgAuJH9S8kflT9sLbHEPBr76qzrzXxGHtI9qK/u7tWmbHMS1rnsftkIG+/3uW4ed9ixYg8HLlUh5/SgCOX6lAnV2FCnDfE9tZ3zcWe5wJP2+70A7IRfKbceDxXXQd6vaSVda1I/Aw4UMeqPj2rtmLZkBL1HRx9JL8B3Z83OuyTL70OW1WWOpNhbZpW9khrQPFJCLFm1MmxUoYyPDlxah5eLTU25EleBvCd1Fc7uf/MZ8MVAo59Gx0mpei1ENVes8CV5xtdlicvMDxMpbHhWCIfwClC7zqtXbXXLKgcwtRXoRueH6/H1Xd5ODyg6ChQ8BP4uVvNOsbOHKlWkbE5bLTOo0pudL1dbfIh4HEAAAIeB88O6IaxkeJG95tYL17dfcPxLM1Ux1P1XfVzf0VHoegyDhcQAnum0misBbqWGG9HVArjrwvFsCvYDPsLiRD9/TjsLyTCJf8DCJgS/e8hhBDSbljfpVMC4GGGp4YdnQrG7uGwEEZlfIhIbTZQdg7wma3+McATAlx7o++p6z4Plfx+AAB+I0NQlAIvcMDoX6axutXcUQ+10wyPq7dOayfnuEHq8jjsM1ap999jmLpTwyiBkhTAbSCQf0B9t4vDBez9AYGLuuNaXyPHuJwRAShni4xlXtIabsSzNbpeG0df/L8Z4SipksPNQWCVd3BI0yhteoJfdUMdz56PAfZ+gLIOkGarOzl2vg+fx1HJwM/djSivybjACTEaa3yHXsbbES7f+OtCd3Dv/u9hWScaGksIIR0d3cmxUpoMTw2dLS5CVdcp6j+KT6jnodBHPAqoKwZcE4D764H7ycC9ZKAmHeg+1cB7HtV6SPfh0CpdmqxfBpcpPgGm6zOG61Z0Qmt4XP11dgbscVPWAIW/qq9wF/4KuMYCtbnqDk7RUXX5/c8Bz0d173wZOcZF4mdwrrhYq8xY5iUpzwfKHi//80c20PVJ/RXv+iRquT0gtucj0EtEHRwCAFBw3dTD0uz7qDvf95LVcSv5Vd3pcemv/szX4yHZCwbqWNUny2EaJu0SIMthmv6NikcB2bsMt4FdxgGZm/W+1BmGxhJCSEdnVidHoVDg7NmzKCgwbWgQh8NBTEwM7O3tzdkcMZOhuRJqvedA0WshwCjUz254jdUaIlLoPguVtv0B266687Dk7gHkxUDXCXqHlfDk+Vp1qPaapd5WvWU1w9mMLtP9JVR7zwd8ZunZTpb6qq5Kxj6A33CdnYG+4wb7YP3z5+R+rR5qKHBhl9UcY93zswAZjo9DxagAGJ4PpiFG4K4+P8oaQFkLdJuoXbduEwFlLXjyPEsfCtLBcWX5QF2BOkb1tTmV1wEOR/tNKhkcUYUMx8eh6LVAK9aynGZh9bUxKK9RYPW1Mchy0m5HmG6TgdoH6ras9gHQ7dkG7cxYqJyiAEU59OokQ2MJIaQj4zAMwzT1TQzDICwsDBs3bkRiYmJL1KvFSSSVrbIdsdix1bZlSEFNCcpqK+Bi6wQ+nFBUKYO7gxCu3Gz8cfEaiuTuAKOCm6AEhXWu+OGaPZ6NkOJl0dOGh3GIRwGM/OEwqaITAJSoivpL790UW2UmePICKAVeBu+26FvGQ5QP3FimXkCzHc2wFa4Q6D0PdS4jUcmPNHoMxGJHk49Xe9CUmHFUXIRNTrL6D7dE4NbbBs+bot9eyJUCnfOg79jXn1+psQeTRcr7sL+QCHD46gfE769XP9PV/Xn1UEcuH8jaCaiqkB/6J/gi9WTBkioFSqrV8cgwQEm1DG72Qogd9N/haQ+fp5ZgzfHZGLHYEVX5V2CfvRyQHDbc5vwz91P9spLII1DxgwAASuk91FY/QGalE35Pd8KpmyWolas76rYCLsaHVuO5/nzY2HVFLa/Xw88NIwdKzwJuA/6ZeNQGqLmHuq6zYHPpcYP1MdTWtYS2jvvOHJ/6tPb58EjzNGm5t5m5Ft92R8mu1tFilLQOs8aKcDgceHt7o6amxtL1IRZUVafEgYsS7Et7ALmSgYBXggGB7sgrrcW9wmqM7d8FV7L64Hae5mFy73/+r4Ijr8j4A7lQaf/gAKDotdDgl34trxfQyA8CfctwHPpAadNDPRN6Q+JRwL31UIUN7dRPl1XyI8Gz9fsnRbTxZAJypQDVtrE6L+k79qbMB6PxMPGADMjcpD43BT8BGWu0lstymoXcyi7oyn0Ym7097dHV1RYpt4r/iVMOJsR5Y2ykGA42+mdmJ9ZFyvOByDES3IKf9S+guWtbj6LHbKj4QaiqU+KPm6W4lcdFyi0R5EoZBLxiDA72QFaRFLfzqlArV+GriyJEBQcj0FE915NKIVPHqEb9fwNQec2Eosds7dTr9bbdWYbGEkJIR2X2MznPP/88Nm/eTB2dduzARQn2pORCrlTfrJMrGZy4XoQurrbgcTn4Li0PXV1tYSvQDYMSufvD4RsNcYVQuQwwOgTNkmTiiTpD6thha1B2imQDjWGHrkFp9Ly11LFiEw8A6uFq0iydTFlZTrOw9sYYuDoI2NjkcTno4mqLE9eLtOJ0T0ouDlyUtEhdSftU5zLcaOzW/3f99uaXy0W4mVetE0NHrki02jcBj6M1F5NWzOrZnpIvNmm4LSGEkPbJ7OvfOTk5yM/Px7Bhw5CQkACxWAxOvTHTHA4HS5cutUglSdNJqhTYl/ZA72upt4oR4++KlFslSKn37/q49v5Gr2KWucyEbdTIRoegWUIVPxh8USD4HrKHw+MkRwCV1Ojdo85EznFDWZc3YKvKgoOoO3Bf985XS159lvJ8YFM/Xir+ZjO/VdhEYuftWOw7bYfxMV3BqMDGZrSfK1JvFetd5760BxgR5kHJCTqJal4wBMbunIifB6/LK1rtjaRKgftFUpy+rT+lc/32reFcTDox23B7/2yjrMsbsBVPapW2jhBCiOWY/eth586d7L8PHTqk8zp1ctpWSbWMvarZkFzJgMflsP8O7uaIs+mlWkOFRod7oFo4C/b4Z0JPlUx9FbPHbPYqpilD0Cyl2nM67As2ateFrqjqqOX2hIP/MigYW4PnraVUezWIF0aBrFofrD4/ABdyBZgQ1xVjI8XILatjY5PLgdE4LamSUyenE9GJoXqxK+e4AbyeWsuXVKuHZhqLIQHX8FxM+rYHnzmo9nhZa7nWbOsIIYRYhtm/Hm7evGnJehALc7MXQsDj6P3yF/A4UKoY9t8D+rhgQB8XnXlL5HBrN1cx2TsV7aAu7R3H1rNNjpW+c1RT1w1Pucnxcr24qh+bKgZG47T+8CJi/Zr6OXezVw8jMxZDE+K6wsfNxuTtOXYJhdwKk1sQQkhnQ5dIrZTYgY8Jcd7Yk5Kr81pCoDv+vl+GgUHu6OvtADDq5Q1dMW9PVzHbU13au7Y6VvW362EHeNhpx5UmNr8/mwc+F3gy3hvZxbU4f7eUzYYFQGd4Eek8TI1dsQMfPh4icDjuOHOnBNF+ruByABUDnL9binExhjs4hrZHOZoIIcQ6NPsXxF9//YW0tDSUlZXBxcUF8fHxGDBggCXqRppJMzzjYXY1DgYEuoPLAfr5uCDlVjH+ulmMHSeyKJsVaVUjQt1RUavA4b8LtWJTk/lPE4+ENGZ0uAdOZ1RAJOTi2BUJG08jIzwxItS9ratHCCGkjZjdyamrq8Ps2bORkpIChmEgFAohk8nwxRdfYNCgQUhOToZQaCBzDWkVDjY8PBffBSPCPNihaFwu8NMFCb6rl5RAk80KAJ6L79JW1SWdyO9Xi3HwwsPJFDWZ/56M88ayf/np3P0hxBAHGx4Ky+vw26VCtkyuZHDwQgGcbPnUphFCSCdldgrptWvXIi0tDcuWLcOZM2dw+fJlnDlzBm+88QZSU1Oxbt06S9aTNIPYno9ALxHE9nyolMCBc/pnnN+X9gCSakUr1450NsYy/x04l4emT09MOjNj8URtGiGEdF5md3IOHTqEuXPn4oUXXoCTkxMAwMnJCZMnT8bs2bNx8OBBi1WSWE5jWddKquStXCPS2VAMEkuieCKEEKKP2Z0ciUSCiIgIva9FRESgsLBQ72ukbWkyW+lD2axIa6AYJJZE8UQIIUQfszs5YrEYV65c0fva5cuX4enpaXalSMvRZLbSh7JZkdZAMUgsieKJEEKIPma3/qNGjUJycjIcHBwwduxYODg4oKqqCj/++CM2bNiASZMmWbKexIL0ZV2jbFakNVEMEkuieCKEENKQ2Z2cBQsW4Pr161i+fDnef/99NrsawzAYMGAAFixYYMl6EgvSl3WNrnaS1kQxSCyJ4okQQkhDZn8LiEQi7NixAydPnsSZM2dQXl7OzpOTmJhoyTqSFiK2NzwBKCGtgWKQWBLFEyGEEI1mfRtwOBwMHjwYgwcPtlR9CCGEEEIIIaRZzE48QAghhBBCCCHtUZPu5AQFBYHD0Z+qsyEOh4Pr16+bVSlCCCGEEEIIMVeTOjlz5swxuZNDCCGEEEJ0eaTRNBuEtLQmdXLmzZvXUvUghBBCCCGEEIuwyDM5dXV1KCwsRF1dnSVWRwghhBBCCCFma1Z2tTNnzmD16tW4cuUKVCoVuFwuIiIisGjRIkRHR1uqjoQQQgghhBBiMrPv5Jw9exbTpk1Dbm4unnvuObz66qt49tlnkZubiylTpuDChQsmrys9PR0vvvgiIiIikJiYiLVr10KpVJr03sOHD+PJJ59EeHg44uLiMH36dNTU1Ji7W4QQQgghhJAOzuw7OZ999hnCwsKwfft22NjYsOWLFy/GlClTsGbNGuzcubPR9ZSXl2PKlCnw9/fH+vXrkZWVhVWrVkGlUuHVV181+t5vv/0Wy5cvx4wZM7BkyRJUVFTg9OnTJneQCCGEEEIIIdbH7E7O1atX8dFHH2l1cADAxsYGU6dOxeuvv27Ser7++mvU1dUhOTkZDg4OGDhwIKqqqpCcnIyZM2fCwcFB7/tKSkrwwQcf4O2338bTTz/Nlo8YMcLcXbJqkioFSqplcLMXQuxAM4KT1kcxSNoaxSAhTbP29HKTlz2SMsbkZX96jR5pIC2vWa28oXTSXK7po+BOnjyJxMRErc7MmDFj8Mknn+DMmTMYNmyY3vcdOnQIAPDEE080ocadT1WdEgcuSrAv7QHkSgYCHgcT4rwxNlIMBxteW1ePdAIUg6StUQwSQkjnY/YzOaGhodi+fTvkcrlWuUwmw9atWxEaGmrSejIyMuDr66tV5u3tDZFIhIyMDIPvu3z5Mnr37o19+/YhKSkJISEheOqpp5r0LFBncOCiBHtSciFXMgAAuZLBnpRcHLgoaeOakc6CYpC0NYpBQgjpfMy+kzNnzhxMnz4dI0aMwKhRo+Dh4YGioiL89ttvKCoqwrZt20xaT0VFBRwdHXXKnZycUFFRYfB9RUVFuHfvHjZs2IDFixfDxcUFmzdvxowZM3D48GF4eHiYu2sdWv3hGACwL+2B3uX2pT3AiDAPiO1pyAZpOZIqhcViUFKlQFZFGURchoYaEZNZMgYJIYR0HGa37PHx8di8eTNWr16NnTt3gmEYcDgcREREYNWqVYiJiTF5XfqGvWnWZ4hKpUJNTQ3Wrl2LpKQkAEBUVBSGDh2KL7/8EgsXLjS6TVdXO/D5rTNMQSzW7cRZWkmlDF+dysLev3LZ4RhTh/Zir1w2JFcyqFVxWqVuzdUR6mhpzY3P9nLMsirKmh2D+mL7mYHd8FxiT7g5Clui2qQRlm4/WzJeG4vBsjoVgn20t99ePj/1tcc6tVet8f3e3POhPyI7D4pn0hqadfkqISEB3377LaRSKSoqKuDk5ASRSNSkdTg5OaGyslKnvKqqSu8dHg1nZ2cAQFxcHFvm4OCAkJAQ3L17t9Htlpa2TpppsdgREonu/lnaV6fzsScll/1brmRwLacSAh5H7xe8gMeBLZdplbo1h6WOX0drUJsTn60Vc6YQcZlmx6C+2P7yZA6UCgbPxXexeJ3bQmeKz4ZaOl4bi8GMvCr0cXvYWW5Pnx+Ntq5TZ45PfSxxPjrnWJOHLB3PHS1GSeswu5Pz1ltvoaysDMnJyRCJRFqdm/nz58PFxQXLlzeelcPX11fn2Zu8vDzU1NToPKtTn5+fHzgcDhhG+4ursTtA1sjQcIzzd0sxINAdJ64X6bw2Ic6bhmiQFid24GNCnLdWJ0XDlBikoUakucQOfIyL7YpvUnXjKCHQHdtPZCHKx4niiLSqhL8Ombxs6sDHLL59m+/cTVqu7slii2+bkNZiduKBlJQUg+maR4wYgZSUFJPWk5SUhFOnTqGqqoot++WXX2Bra4vY2FiD7xsyZAgYhkFaWhpbVllZiWvXriEoKMjEvbAOJdUyvVcpa+Uq5JXW4sk4bwh46o6fgMfBswO6YWykuLWrSTqpsZFiPDugm1kxaCi2AfUdnZIqud7XCKkvxtcZScEeWjGYFOyB/NJaVNUqKY4IIcQKmX3pSiKRoGvXrnpf8/LyQmFhoUnrmThxInbt2oV58+Zh5syZyM7ORnJyMqZMmaKVVnrEiBGIiYnBBx98AAAICwvD8OHD8eabb2LRokVwdXXF5s2bwefzMWnSJHN3q0NysxcaHI5xr7Aay/7lhzH9xCipksPNQUBXLEmrcrDh4bn4LhgR5tHkGDQW2wIeB24OAktXl1ghd3shLmaUIsbfFTwuB0oVg7Q7JaiTqyiOCCHESpl9J8fJyQnZ2dl6X8vKyoKdnZ1J63F2dsb27duhVCoxa9YsrFu3Di+++CLmz5+vtZxSqYRKpdIq+/jjjzF8+HCsXLkS8+fPB5/Px44dO9jndToLzZAgfSbEecPDjg+xPR+BXiLq4JA2Y04MNhbbFM/EFGIHPv4vqgtSbpXgzxvFSLml7uAAFEeEEGKtzG7ZY2JisGnTJowcOVIrQUBlZSW++OILo0PNGvL398fOnTuNLnPs2DGdMnt7e/znP//Bf/7zH9MrbqU0Q3/0TXZHSEdGsU0sgeKIEEI6F7M7OfPmzcOECRMwcuRIjBkzBp6enigoKMChQ4dQW1uLzz//3JL1JI1ozpAgQtqz+rFdq1JnZKPYJk1FbSQhhHQuZrfwfn5+2L17Nz788EPs2bMHSqUSPB4P/fv3x9KlS+Hv72/JehITie359MVNrJLYnt/mqXRJx0dtJAOkNDAAACAASURBVCGEdA7NaumDg4Oxa9cu1NbWory8HC4uLrCxsbFU3QghhBBCSBs5kjKmRdb7+OrzJi3302vRLbJ90jlY5HKWra0tbG1tLbEq0sIkVQqUVMvgZi+E2IGuZhLrRHFOTEWxQggh1ola9E6iqk6JAxcleh+6dbDhtXX1CLEIinNiKkOxMnkIjUYghBBrYHYKadKxHLgowZ6UXHa+EbmSwZ6UXBy4KGnjmhFiORTnxFSGYuWrU1ltXDNCCCGWQJ2cTkBSpcC+tAd6X9uX9gCSakUr14gQy6M4J6YyFit7/8qlWCGEECtAnZxOoKRapnfGeEB99bKkSt7KNSLE8ijOiakoVgghxPrRMzmdgJu9EAIeR++XuoDHgZuDoA1qRYhlUZwTU1GskKYwNRMY0DLZwN5m5lp8nYR0BnQnpxMQO/AxIc5b72sT4rxpzghiFSjOiamMxcozA7tRrBBCiBWglryTGBspBgC9WacIsRYU58RUhmLlucSeUNbWtXHtCCGENBd1cjoJBxsenovvghFhHiipksPNQUBXK4nVoTgnpjIUK26OQkiok0MIIR0efft3MmJ7Pv3oI1aP4pyYimKFEEKsEz2TQwghhBBCCLEqdPmKEEIIIZ1OU7KmtaUjKWNMWm5M3ukWrgkhHQvdySGEEEIIIYRYFerkEEIIIYQQQqwKdXIIIYQQQgghVoU6OYQQQgghhBCrQp0cQgghhBBCiFWhTg4hhBBCCCHEqnAYhmHauhKEEEIIIYQQYil0J4cQQgghhBBiVaiTQwghhBBCCLEq1MkhhBBCCCGEWBXq5BBCCCGEEEKsCnVyCCGEEEIIIVaFOjmEEEIIIYQQq0KdHAvbv38/AgMDdf7bs2dPW1et3crMzMQ777yDsWPHom/fvpg8ebLOMgzDYOPGjRg8eDDCw8MxadIk3Lhxow1q2z4pFAps2rQJI0eORGhoKJKSkvDBBx+0dbUs5uDBgxg3bhwiIyMxaNAgLFmyBAUFBW1dLdKAJT/L6enpePHFFxEREYHExESsXbsWSqWySfU5dOgQZs2ahUGDBiEyMhLjx4/Hzz//rLPcN998g5EjRyIsLAzjx49HamqqzjIFBQWYM2cOIiMjERcXh+XLl0MqlTapPgDw66+/YuLEiYiLi0NYWBhGjRqF9evXQyaTscu05jEiDzXneB4+fBhPPvkkwsPDERcXh+nTp6OmpqaFa2w6c/ftypUrmDZtGuLi4hAbG4spU6bg77//boUaE9J8/LaugLXasWMHbG1t2b979OjRhrVp3+7cuYMTJ04gIiICcrlc7zKbNm3C+vXrsWTJEvj6+mLbtm2YMmUKfv75Z4jF4laucfuzbNkypKamYu7cufD19UVeXh7u3r3b1tWyiKNHj+K1117DpEmTsGTJEhQWFmLt2rWYNWsWvvvuO3C5dK2mvbDUZ7m8vBxTpkyBv78/1q9fj6ysLKxatQoqlQqvvvqqyfXZvn07unfvjmXLlsHV1RUnT57EokWLUFpaynbADh48iHfffRdz585FdHQ09u/fj5dffhn79u1DQEAAAPVFhOnTp0MgEODTTz9FRUUFVq5ciYqKCnzyySdNOkZlZWXsj2BHR0dcvnwZycnJKCoqwjvvvNPqx4ioNed4fvvtt1i+fDlmzJiBJUuWoKKiAqdPn243HU5z9y0vLw9Tp05FcHAwVq1aBQDYsmULpk2bhgMHDqBbt26ttQuEmIchFvXdd98xAQEBTFVVVVtXpcNQKpXsv+fNm8c8//zzWq/X1tYyUVFRzLp169iy6upqJi4ujlm9enWr1bO9OnHiBBMcHMzcuXOnravSIhYuXMiMGzdOq+zIkSNMQEAAk56e3ka1IvpY6rO8ceNGpn///kxlZSVbtmnTJiY8PFyrrDHFxcU6Za+99hozdOhQ9u+RI0cyS5cu1dqH//u//2MWLVrElv30009MUFAQk5WVxZYdPHiQCQwMZO7du2dyfQxZvXo1Ex0dzahUqlY/RkTN3ONZXFzM9OvXj9m7d29rVNMs5u7bV199xQQFBTHl5eVsWVlZGRMUFMTs3r27RetMiCXQJVDS5hq7En/hwgVUVVXhscceY8vs7OwwdOhQ/Pnnny1dvXbvu+++Q3x8PPz9/du6Ki1CoVDAwcFBq8zJyQmAelgPaT8s9Vk+efIkEhMTtc77mDFjUFtbizNnzphcHzc3N52yvn37oqSkBACQnZ2N+/fva9WHy+Vi1KhROvUJCwvTuiP/yCOPQCAQWKQNcnFxYe98tfYxImrmHs9Dhw4BAJ544okWr6O5zN03hUIBHo8HOzs7tszOzg48Ho/aXtIhUCenhYwYMQLBwcEYNWoUvv7667auToeWkZEBHo8HHx8frXI/Pz9kZGS0TaXakcuXL8PHxwfLly9HVFQUIiIiMHfuXKt5ZuXJJ5/E+fPn8cMPP6Cqqgr37t3DmjVrEBcXZ7UdO2tl6mc5IyMDvr6+Wst4e3tDJBI1+zN/8eJF+Pn5sdsBoLMtPz8/lJWVsZ0hffURCoXo2bOn2fVRKpWQSqU4d+4cdu3ahWeffRYcDqddHKPOyNzjefnyZfTu3Rv79u1DUlISQkJC8NRTT+HChQstXWWTmbtvI0eOhEgkwsqVK1FcXIzi4mJ8+OGHcHZ21uqEE9Je0TM5FiYWi7FgwQKEh4dDqVSy471ra2sxZcqUtq5eh1RRUcFeParP2dkZUqkUMpkMQqGwjWrX9iQSCfbv34+goCB8+umnqK6uxscff4y5c+fim2++AYfDaesqNsuQIUPw4Ycf4s0338Trr78OAIiMjMSGDRvauGakqUz9LFdUVMDR0VHn/U5OTqioqDB7+6mpqTh69CiblKO8vJxdb8P6aF53c3Nrkfr069ePTTbwxBNPYMmSJQDa/hh1VuYez6KiIty7dw8bNmzA4sWL4eLigs2bN2PGjBk4fPgwPDw8WrLaJjF337y8vLBz5068/PLL2LVrFwD1b5wtW7bovUtKSHtDnRwLGzRoEAYNGsT+PXjwYMhkMmzYsAEvvPACPSRtJn0/1DW3yzv6j3hLWb9+PVxdXQGov4ief/55nD59GgkJCW1cs+Y5ffo03n33XbzwwgtISkpCcXEx1q1bhzlz5mD79u06PwZJ+2bqZ9nQcuZ+3nNycrBo0SIMHz4c48ePN1qnptTHXF9//TWkUimuXLmCzz//HMuXL8d7773X6LZa8hh1duYcT5VKhZqaGqxduxZJSUkAgKioKAwdOhRffvklFi5c2GL1bQpz9q2wsBDz589HSEgI/vvf/wIAvvrqK7z00kv4+uuv4e3t3WL1JcQSqJPTCkaNGoVDhw4hNzeXsqyZwcnJCdXV1VAqlVo/aCsqKiASiSAQCNqwdm3PyckJPXr0YDs4ABAdHQ2BQID09PQO38lZtWoVhg0bhsWLF7NlQUFBeOyxx3D06FGMHDmyDWtHmsLUz7KTkxMqKyt13l9VVaX3inRjysrKMHPmTHTt2hUff/wxW665Y9PwSrfm6rbmDo+h+lRWVurcBTJVSEgIAKB///5wdXXF66+/jmnTprXZMerszD2emhiKi4tjyxwcHBASEtJuMlyau29btmyBUqnEZ599xsZdfHw8Ro0aha1bt+Ktt95qsToTYgl0W4G0e76+vlAqlcjMzNQq1zfOuDPSPF+gjzXcOczIyEDfvn21ynx9fWFra4usrKw2qhUxh6mfZV9fX51nBfLy8lBTU9Pkz7xUKsWsWbMgl8uxadMmrYeoNetquK2MjAy4uLiwQ3L01UcmkyE7O9sibVBwcDAA9d2mtjhGxPzj6efnBw6Ho3NXrz3dUTN33zIyMuDv7691IVEoFMLf35/aXtIhdPxfQB3A4cOH4erqSjnlzRQVFQUHBwf8+uuvbJlUKsUff/yhNTSwsxoyZAhu3brFPiQNAGfPnoVcLkdgYGAb1swyvL29cf36da2yu3fvora2lj5THYypn+WkpCScOnUKVVVVbNkvv/wCW1tbxMbGmrw9hUKBBQsW4P79+/jiiy/g7u6u9XqPHj3g4+OjVR+VSoVff/1Vpz5XrlxBbm4uW3bs2DHIZDKLtEGah9S7d+/e6seIqJl7PIcMGQKGYZCWlsaWVVZW4tq1awgKCmrROpvK3H3z9vbGnTt3tCaqlclkuHPnDrW9pEPgvacZBEwsYt68ecjJyWGzQK1fvx4///wz/v3vf6Nfv35tXb12SSqV4ujRo0hPT8epU6dQXl4Od3d3pKeno1u3buykqhs3bmSHcnz44YfIz8/HqlWrtK7MdkYBAQHYv38/jh8/Dnd3d1y9ehX/+c9/EB4ejtmzZ7d19ZpNqVRi27ZtqKqqApfLxcWLF/Hee+/B3t4eb7zxRqcfrtieWOqz3KdPH+zduxdpaWnw9PRESkoKVq9ejRdffBGDBw82uT7vvvsufvnlFyxatAguLi7Iz89n/3NzcwOPx4Orqys+++wzcLlcKJVKfP755zh37hxWrVrFdop69+6Nw4cP4/Dhw+jSpQuuXr2KFStWYPjw4Xj66aebdIymT5+OoqIiVFZWIicnBz/88AOSk5MxYsQIPPPMM+Dz+a16jIiaqcdzxIgRuHnzJoYPHw5A/XD+jRs3sGfPHri6uqKgoADvv/8+ysrK8NFHH2lNCt5WzN03sViMHTt24OrVq3B0dMS9e/ewcuVK3Lp1C8uXL28XSRUIMYbDULJzi1q9ejV+++035Ofng2EY+Pv744UXXmjXOfTbWk5ODtuoNnT06FF0794dDMNg48aN2LNnD8rKyhAaGoq33nqLHebR2WVmZuK///0vzp49C4FAgOHDh2PZsmXsePGOjGEY7NmzB3v27EF2djYcHR0RHR2NRYsW0TNu7YwlP8vp6elYvnw5Ll26BCcnJ0yYMAHz5s1rUqKJYcOGad190VcfAPjmm2/wxRdfIC8vD3369MGSJUt0nmXLz8/H8uXLkZqaCqFQiNGjR2PJkiUQiUQm1wcA1qxZgyNHjiA3Nxc8Hg89evTA+PHjMXHiRLbD3prHiDxkyvEcNmwYYmNjsXLlSrasuroaH330EX799VdIpVJERUVh2bJl7epOurn7lpqaiuTkZNy5cweA+qLavHnztJ5BIqS9ok4OIYQQQgghxKrQMzmEEEIIIYQQq0KdHEIIIYQQQohVoU4OIYQQQgghxKpQJ4cQQgghhBBiVaiTQwghhBBCCLEq1MkhhBBCCCGEWBXq5LQj69atQ2BgICoqKiyyvmHDhmHp0qVmv9eUiSTv3r2LdevWIScnx6ztkM4lMDAQ69ata3Q5zWehvk2bNuHIkSMGl7XU54YQQixJX3tGCGl5/LauAGk5ycnJcHBwaNFt3Lt3D8nJyYiNjWUn1iPEkL1796JLly5mvXfTpk145JFH8Mgjj1i4VoQQQgixNtTJsWINZ8cmpK3169evratACCEdlkqlglKphEAgaOuqNEqhUIDD4YDH47V1VUgnRcPV2iGJRIKFCxciKioKAwYMwLJly1BZWcm+rlKpsH37djz++OMICwtDXFwclixZAolEorUefcPVzp07h2eeeQZhYWFITEzE//73P3zzzTcIDAzUO+Ts+PHjeOKJJxAeHo5HH30U+/btY1/bv38/5syZAwB44YUXEBgYiMDAQKSlpVnycJB26ObNmwgMDMSxY8fYstTUVAQGBuL555/XWnbcuHFYuHAhAP3D1Y4dO4axY8ciNDQUw4YNw6ZNm8AwjNYygYGBqKysxPfff8/GWcPYbuxzQzofzTChmzdv4pVXXkFkZCTi4+Pxv//9DyqVClevXsXzzz+Pfv36YeTIkfjhhx/Y95aUlODdd9/FY489hn79+iExMREzZszAtWvXtLahVCqxfv16jBo1CuHh4YiJicETTzyB7777jl0mKysLCxcuRGJiIkJDQ5GYmIjp06cjMzOz1Y4FMU96ejoWLlyIAQMGsG3Um2++yb5++vRpNob69euHyZMn48yZM42ut6amBitXrsSQIUMQGhqKIUOGYNWqVaitrdVaLjAwECtWrMCOHTswYsQIhIaG4sKFCybV/dq1a3jppZeQkJCA0NBQJCUlYfbs2SgvL2eXqaurw7p16/Doo48iNDQUcXFxmDp1Kq5fv84uU1JSgrfeegsDBw5EaGgoRo4ciY0bN0KpVLLL5OTkIDAwEFu2bMHatWsxePBghIaGIi8vDwBQXl6OFStWYOjQoQgNDcXQoUOxZs0ayOVyk/aFEHPQnZx2aO7cuRg9ejSefvpp3Lp1C6tXrwYAfPjhhwCAZcuW4ZdffsG0adMQGxuLgoICrF27FpMnT8b+/fthZ2end703b97EtGnT4Ovri1WrVsHW1hZff/01Dh48qHf569ev4+OPP8ZLL70Ed3d3fPPNN3jzzTfRq1cvxMTEYMiQIfj3v/+NTz75BO+88w5CQkIAAP7+/i1wVEh7EhgYCDc3N6SkpGDYsGEA1F/2tra2uHTpEqRSKUQiEUpLS3Hjxg1MnDhR73pOnTqFOXPmIDo6Gp9++ikUCgW++OILlJSUaC23d+9eTJ06FTExMeyzYm5ublrLNPa5IZ3XwoULMX78eEyePBnHjh3Dpk2bIJPJcPz4cUyfPh2zZs3Cl19+iaVLlyIwMBB9+/ZFWVkZeDwe5s+fD3d3d1RWVuKHH37AxIkT8f3337Pt3ObNm7Fp0ybMnz8fISEhqK2tRXp6utYPyZkzZ8Le3h5vvPEGxGIxiouLcfbsWVRVVbXVISEmuH79OiZNmgSxWIxXX30VPXr0QH5+Pg4fPgxAfWFn+vTpiIiIwKpVqwAA27Ztw9SpU7FlyxbEx8frXa9KpcKsWbNw4cIFzJkzB+Hh4fj777+xfv163Lp1C1u2bAGHw2GX//XXX+Hl5YVFixbBzs4OPXv2bLTu1dXVmDZtGoKDg/H+++/DyckJhYWF+Ouvv1BXVwdAfadl+vTpuHTpEqZNm4b+/ftDJpPh/PnzyM/PR3BwMKRSKSZPnoyCggIsWLAAvXv3xqlTp7BmzRpkZ2djxYoVWtvdvn07AgMD8c477wAAnJ2dUV1djUmTJqGsrAyvvPIKfH19cfnyZXz++efIzc3Fxx9/3PSTQ4gpGNJufPbZZ0xAQACzbds2rfL33nuPCQsLY1QqFXP+/HkmICCA+fLLL7WWuX79OhMYGKhVPnToUOb1119n/543bx4TGRnJlJaWsmVKpZIZPXo0ExAQwGRnZ2u9NyIigsnPz2fLamtrmdjYWObtt99my37//XcmICCAOX36dLP3n3QsCxcuZEaPHs3+/dRTTzErVqxgQkJCmJMnTzIMwzAHDx5kAgICmMzMTIZhGCYgIID57LPP2PdMmDCBSUpKYurq6tiyiooKJiYmhgkICNDaXnR0tFY8a5jyuSGdkyY2du7cyZapVCpm2LBhTEBAAHP27Fm2vLS0lOnbty/z0Ucf6V2XQqFgZDIZM3LkSGbFihVs+UsvvcTMnj3bYB2Ki4uZgIAA5vfff7fAHpHW9PzzzzOxsbFa35n1TZgwgRk0aBBTW1vLlkmlUmbgwIHM008/zZZp4lDj+PHjTEBAALNr1y6t9W3fvp0JCAhg20+GUbeZsbGxTGVlZZPqfvnyZSYgIIC5ceOGwWX279/PBAQEMN9//73BZXbv3s0EBAQwx44d0ypfsWIFExAQwKSnpzMMwzDZ2dlMQEAAM2rUKEahUGgtu2HDBqZv3746ddHs7+3bt5u0b4SYioartUOaK+MagYGBqKurQ1FREU6cOAEul4sxY8ZAoVCw//Xp0wdeXl5Gb5OfPXsWAwYMgIuLC1vG5XLx2GOP6V0+ODgYXl5e7N82Njbw8fFBbm5uM/eQWIOEhASkp6ejsLAQlZWVuHr1KoYPH46IiAikpKQAUF/p7Natm94rjzU1Nbhy5QpGjRoFoVDIljs6OmLo0KFNro+xzw3p3IYMGcL+m8PhwNfXF/b29ujfvz9b7uLiAjc3Nzx48AAAwDAMvv32W4wfPx79+/dHcHAwQkNDcf/+fWRkZLDvCw8Px4kTJ/DRRx/h7NmzkEqlWtt2dXVFz5498fHHH2PPnj24e/duy+4ssQipVIrz589j9OjRWt+ZGvXbLxsbG7bc1tYWjz76KC5fvqwTCxqaId1jx47VKn/iiSe0XteIj49vchIhHx8fODs7480338T333+P7OxsnWX+/PNP2NnZ4V//+pfB9aSlpeltkzV1bfibY9iwYTrP4Jw4cQJBQUHw9/fX+t2SlJSkdx2EWAoNV2uHGjaomh+AdXV1KC4uhkqlQlxcnN73lpaWGlxveXk53N3ddcr1lemrh6YuMpnM4DZI55GQkAAASElJgYODA4RCISIjI5GQkICjR4+yrxkaslFRUQGGYeDh4aHzmlgsbnJ9jH1uSOfm7Oys9bdAIDDYvmniZcuWLfj4448xadIkLFiwAK6uruBwOHjrrbe0Yurll1+Gra0tDhw4gK1bt0IgECAxMRH//ve/4efnBw6Hg+3btyM5ORnr1q1DcXExxGIxnnzyScyZM0erg0/aj4qKCiiVSoPZIDXtl762ytPTEyqVChUVFRCJRDqvl5eXQygUwsnJSavc2dkZQqEQZWVlWuXmtIeOjo7YtWsX1q9fjw8++AAVFRXo3r07Jk2ahKlTp4LD4aC0tBSenp5aQ+P01dVYG92wrp6enjrLFhcXIzMzkx3S3pCx3y2ENAd1cjoYV1dXcLlcfPXVV+DzdU+fvb29wfe6uLiguLhYp1xfGSGN6dGjB7p164bU1FQ4OjoiOjoaQqEQ8fHxSE5OxuXLl5GTk8MmHWjIyckJHA5H752Whkk0CGltP//8M+Li4thnCzTKysq0fpzy+XxMnz4d06dPR0VFBU6dOoVPPvkEM2bMwLFjx8DhcNCtWzf22bB79+7hwIED2LBhA7hcLhYsWNCq+0VM4+zsDB6Ph/z8fL2va9ovfW1VYWEhuFyuTidGw8XFBTKZDBUVFVrLlJeXQyaT6XTAjXVCjAkMDMTatWvBMAxu3bqFPXv2YNWqVXBycsKECRPg5uaGS5cugWEYg9twcXHB1atXdco1+63vYkFDrq6usLOzw/vvv6/3dX0dI0IsgYardTBJSUlQqVQoKipCWFiYzn++vr4G3xsTE4OUlBStKy8qlQqHDh0yuz6aNJYNM8KQziEhIQGpqalITU1l7+xERERAJBJhzZo1AGDwTo6dnR3Cw8Nx+PBhrbuDVVVV+OOPP3SWFwqFFGek1XA4HJ00vSdPnjT4oxdQ//AdPXo0xo8fjwcPHuidoLZ3795YsGABvL29cfPmTYvXm1iGra0t+vfvj0OHDmklkdCws7NDREQEfvvtN607e3V1dTh8+DDbDuqjaRMPHDigVa7521CbaS4Oh4OgoCC888474PP5bNwNGjQINTU1+PHHHw2+Nz4+HpWVlTpt8oEDB8DhcAyOKqlv0KBByMzMhIeHh97fLfWHxRNiSXQnp4OJiYnB+PHjsWTJEkyePJm9el5QUIC0tDQMHjwYjz76qN73vvLKK/jjjz8wZcoUvPTSS2x2Nc24YS636X1ef39/cDgc7Nu3jx2y1Lt37xafhJS0DwkJCdi3bx8KCgowYMAAAOqOb0xMDE6cOIE+ffoYHWqxYMECzJgxA9OmTcOUKVOgUCiwadMm2NnZ6fyw6NOnD86ePYvjx4/D3d0drq6uNAEtaTGDBw/Gxo0bsW7dOvTv3x+3bt3Cpk2bdH6QzZo1CwEBAQgNDYWrqysyMzPx9ddfIyIiAs7Ozrh58yb++9//4rHHHkPPnj3B5/Nx/Phx5ObmYubMmW20d8QUS5cuxaRJk/DUU09h5syZ6NmzJwoLC/H777/js88+w6uvvorp06djypQpmDZtGhiGwbZt21BSUoL//e9/BtebmJiIAQMGYNWqVaisrER4eDibbSwxMREDBw5sdt3/+OMP7NmzB4888gi6d+8OpVKJn376CUqlEoMGDQIA/N///R/27duHt956CxkZGYiJiYFCocCFCxcQFRWFoUOH4oknnsDu3buxePFiLFiwAL6+vjh16hS2b9+Op59+2uiFVY0pU6bgt99+w6RJk/Diiy8iICAAMpkMubm5OHnyJN5++21069at2ftMSEPUyemAPvjgA0REROCbb77Bjh07wOVy4enpidjYWAQGBhp8X1BQELZu3YqPPvoIr7/+OpydnTF27FjExMTgk08+gaOjY5Pr0q1bNyxduhQ7d+7E5MmToVQqsXPnTpOu7pCOLz4+HhwOB87Ozujbty9bnpCQgBMnTjR6RXLgwIH4/PPPsWbNGixcuBBisRjPPvss6urqkJycrLXssmXL8O6772L+/Pmoq6vDuHHjsHLlyhbZL0Jmz56Nmpoa7N27F5s3b0bfvn2xZs0anXmeYmNjcfjwYezduxfV1dXw9PTEI488gnnz5gFQP7vQo0cP7Nq1CwUFBeBwOOjVqxeWL1+OZ555pi12jZgoODgYe/fuxbp16/DJJ5+w51dzQSc+Ph5bt27FunXrsHjxYgBAWFgYtm/f/v/bu2NWg+I4jOPPf6E4qwVlYPQSvALv4RhkNngNOouiJE6SMpxkVkabt2GSQQZnsJE7KN1LV5Lu5ZzvZ/0vv/Xp//T7/Vhqcc0Yo263q3a7rclkok6no0QioVKppGq1+nQ97btMJiPLstTv97XZbBSNRpXNZi83bKRz1XIwGKjX62k2m2k4HCoejyufz6tYLEo6/2iNRiM1m025rivf95VMJlWr1VSpVB6axbIsjcdjua4rz/O0Xq8Vi8WUTqdVKBQeqrwBzzCn09XVPYROuVzWarW67P4HAAAAPhk/OSHjOM6lA7vb7TSdTrVYLFSv1/97NAAAAOAlCDkhczgc1Gq1tN1uZYxRLpdTo9G42dcPAADez/F41L0SjjHm5lYNEEbU1QAAOStLKwAAAFxJREFUAD6Ebdt3D2imUinN5/M/nAh4T4QcAACAD7FcLrXf7399j0Qid5cQAWFByAEAAAAQKBwDBQAAABAohBwAAAAAgULIAQAAABAohBwAAAAAgULIAQAAABAoX02La1MlsB8fAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sn.set(font_scale=1.5) # bigger font\n", "from matplotlib.colors import ListedColormap\n", "\n", "# Define colors\n", "fcolors = sn.xkcd_palette(['windows blue', 'dusty purple', 'faded green', 'amber']) # seaborn palette\n", "fcolors_cmap = ListedColormap(fcolors.as_hex()) # for use as a matplotlib cmap later on\n", "fdict = {'apple': fcolors[0], 'mandarin': fcolors[1], 'orange': fcolors[2], 'lemon': fcolors[3]}\n", "\n", "# Plot a scatter matrix of features\n", "features_to_plot = fruits[['height', 'width', 'mass', 'color_score']]\n", "sn.pairplot(fruits, hue='fruit_name', palette=fcolors, vars=features_to_plot, \n", " plot_kws=dict(s=60), size=2.5)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plotting a 3D scatter plot\n", "from mpl_toolkits.mplot3d import Axes3D\n", "from matplotlib import cm\n", "sn.set_style(style='white')\n", "cmap = cm.get_cmap('gnuplot')\n", "\n", "fig = plt.figure(figsize=(10,7))\n", "ax = fig.add_subplot(111, projection = '3d')\n", "ax.scatter(fruits['width'], fruits['height'], fruits['color_score'], \n", " c=fruits['fruit_label'], marker='o', s=100, cmap=fcolors_cmap)\n", "ax.set_xlabel('width')\n", "ax.set_ylabel('height')\n", "ax.set_zlabel('color_score')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create train-test split" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# For this example, we use the mass, width, and height features of each fruit instance\n", "X = fruits[['mass', 'width', 'height']] # these are the features we will use (=predictors)\n", "y = fruits['fruit_label'] # this is what we are trying to predict (=predictand)\n", "\n", "# default is a 75%/25% train-test split\n", "from sklearn.model_selection import train_test_split\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create classifier object\n", "\n", "Now we get to choose a classification method - scikit-learn offers a wide range of supervised learning algorithms, see http://scikit-learn.org/stable/supervised_learning.html\n", "\n", "These algorithms are implemented in scikit-learn as separate classes or ''Estimator'' objects. Let's try to classify fruits using a k-nearest neighbors (kNN) model, which is one of the simplest learning strategies: given a new, unknown observation, look up in your reference database which ones have the closest features and assign the new sample to their predominant class. \n", "\n", "A k-nearest neighbors classification model is constructed like this:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.neighbors import KNeighborsClassifier\n", "\n", "knn = KNeighborsClassifier(n_neighbors = 5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Train the classifier (fit the estimator) using the training data" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',\n", " metric_params=None, n_jobs=1, n_neighbors=5, p=2,\n", " weights='uniform')" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "knn.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Estimate the accuracy of the classifier on future data, using the test data" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "0.5333333333333333" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "knn.score(X_test, y_test)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Use the trained k-NN classifier model to classify new, previously unseen objects" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'mandarin'" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# first example: a small fruit with mass 20g, width 4.3 cm, height 5.5 cm\n", "fruit_prediction = knn.predict([[20, 4.3, 5.5]])\n", "lookup_fruit_name[fruit_prediction[0]]" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'lemon'" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# second example: a larger, elongated fruit with mass 100g, width 6.3 cm, height 8.5 cm\n", "fruit_prediction = knn.predict([[100, 6.3, 8.5]])\n", "lookup_fruit_name[fruit_prediction[0]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plot the decision boundaries of the k-NN classifier" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def plot_fruit_knn(X, y, n_neighbors, weights):\n", "\n", " import matplotlib.patches as mpatches \n", " \n", " fcolors_bold = sn.xkcd_palette(['windows blue', 'dusty purple', 'faded green', 'amber']) # seaborn palette\n", " cmap_bold = ListedColormap(fcolors_bold)\n", " fcolors_light = sn.color_palette(palette=fcolors_bold, desat=0.3)\n", " cmap_light = ListedColormap(fcolors_light)\n", " X_mat = X[['height', 'width']].as_matrix()\n", " y_mat = y.as_matrix()\n", "\n", " # Create color maps\n", " #cmap_bold = fcolors_cmap\n", " #cols_rgb = [hex_to_rgb(hex_col) for hex_col in fcolors_cmap.colors]\n", " #cmap_light = ListedColormap([a[:-1] + (a[-1]/2,) for a in cols_rgb])\n", " clf = KNeighborsClassifier(n_neighbors, weights=weights)\n", " clf.fit(X_mat, y_mat)\n", "\n", " # Plot the decision boundary by assigning a color in the color map\n", " # to each mesh point.\n", " \n", " mesh_step_size = .01 # step size in the mesh\n", " plot_symbol_size = 50\n", " \n", " x_min, x_max = X_mat[:, 0].min() - 1, X_mat[:, 0].max() + 1\n", " y_min, y_max = X_mat[:, 1].min() - 1, X_mat[:, 1].max() + 1\n", " xx, yy = np.meshgrid(np.arange(x_min, x_max, mesh_step_size),\n", " np.arange(y_min, y_max, mesh_step_size))\n", " Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])\n", "\n", " # Put the result into a color plot\n", " Z = Z.reshape(xx.shape)\n", " plt.figure(figsize=(8,6))\n", " plt.pcolormesh(xx, yy, Z, cmap=cmap_light)\n", "\n", " # Plot training points\n", " plt.scatter(X_mat[:, 0], X_mat[:, 1], s=plot_symbol_size, c=y, cmap=cmap_bold, edgecolor = 'black')\n", " plt.xlim(xx.min(), xx.max())\n", " plt.ylim(yy.min(), yy.max())\n", "\n", " patch0 = mpatches.Patch(color=fcolors_cmap(0), label='apple')\n", " patch1 = mpatches.Patch(color=fcolors_cmap(1), label='mandarin')\n", " patch2 = mpatches.Patch(color=fcolors_cmap(2), label='orange')\n", " patch3 = mpatches.Patch(color=fcolors_cmap(3), label='lemon')\n", " plt.legend(handles=[patch0, patch1, patch2, patch3], bbox_to_anchor=(1.5, 0.95))\n", "\n", " \n", " plt.xlabel('height (cm)')\n", " plt.ylabel('width (cm)')\n", " \n", " plt.show()\n", "\n", "\n", "plot_fruit_knn(X_train, y_train, 5, 'uniform') # we choose 5 nearest neighbors" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### How sensitive is k-NN classification accuracy to the choice of the 'k' parameter?" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sn.set()\n", "\n", "k_range = range(1,20)\n", "scores = []\n", "\n", "for k in k_range:\n", " knn = KNeighborsClassifier(n_neighbors = k)\n", " knn.fit(X_train, y_train)\n", " scores.append(knn.score(X_test, y_test))\n", "\n", "plt.figure(figsize=(7,5))\n", "plt.xlabel('k')\n", "plt.ylabel('accuracy')\n", "plt.scatter(k_range, scores)\n", "plt.xticks([0,5,10,15,20]);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### How well can a Support Vector Machine Classifier distinguish between different types of fruits?" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.6\n" ] } ], "source": [ "from sklearn.svm import LinearSVC\n", "\n", "svc = LinearSVC(C=1, random_state=0)\n", "svc.fit(X_train, y_train)\n", "print(svc.score(X_test, y_test))\n", "\n", "\n", "# In the fruit dataset there are four categories of fruit. So scikit-learn learns \n", "# four different binary classifiers. To predict a new data instance, what it then \n", "# does is, it takes that data instance whose label is to be predicted \n", "# and runs it against each of the binary classifiers in turn, and the classifier that \n", "# has the highest score is the one whose class it uses as the prediction value.\n", "\n", "# In this case the first pair of coefficients corresponds to a classifier that \n", "# classifies apples versus the rest of the fruit, and so, these pair of coefficients \n", "# and this intercept define a straight line\n", "# print svc.coef_\n", "# print svc.intercept_" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 2) Another (classification) problem: How to find love?\n", "\n", "This example is based on Vince Favilla's Capstone Project (https://github.com/vincefav/speed-dating)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "Image source: www.heartcenteredevents.com\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "data = pd.read_csv('speed_dating.csv', encoding='latin-1')\n", "\n", "print(data.shape)\n", "print(data.columns)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Problem statement" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This dataset is the result of several speed dating events conducted by two professors from Columbia University (Fisman et al., 2006. Gender differences in mate selection: Evidence from a speed dating experiment).\n", "\n", "Each row contains a record of one speed dating encounter: the participant's ID, their partner's ID, and information about the participant. \n", "
\n", "The **features** include:\n", "\n", "- socioeconomic status/income\n", "- self-rated personality traits such as ambitiousness, fun-ness and sicnerity\n", "- self-rated attractiveness and importance of attractiveness in a partner\n", "- planned career paths (participants are students)\n", "- etc.\n", "\n", "The question we're trying to answer is:\n", "
\n", "**Given these features, can we predict whether two participants will be interested in one another romantically?**\n", "\n", "We have a binary target variable (=predictand): \n", "\n", "- **1** if both individuals would like to meet again\n", "- **0** if one or both decline\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# What percentage of pairs resulted in a match?\n", "data['match'].value_counts(normalize=True)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# There were several rounds (\"waves\") of experiments, not all of which used the \n", "# same scoring system. We remove the samples that are based on scores from 1 to 10\n", "data = data[~data['wave'].isin(range(6,12))]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Clean-up" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Income is given as e.g. 67,890.00 --> change this to 67890.\n", "data['income'] = pd.to_numeric(data['income'].str.replace(',', ''))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Remove all columns of type 'object' (mostly strings) - we won't \n", "# use those \n", "data = data.select_dtypes(exclude=['object'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Dealing with missing values" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# How many missing values do we have?\n", "data.isnull().sum().sort_values(ascending=False)[:10]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# A crude approach to deal wih missing values would be to just drop all rows that \n", "# contain at least one missing value. If we want that, we can just do\n", "# data.dropna()\n", "\n", "# Or, we could keep only the rows with a certain minimum number of \n", "# valid entries:\n", "# data.dropna(thresh=100)\n", "\n", "# We will drop all rows with invalid entries of 'match' (our predictand) and 'iid'.\n", "data = data.dropna(subset=['iid', 'match'])\n", "\n", "# But since we want to keep as many samples as possible, we are going to replace \n", "# all other missing values with the median\n", "data = data.fillna(data.median())\n", "\n", "# More sophisticated approaches would fill the missing values with values \n", "# estimated by another predictive model - there's in example in the cell below.\n", "\n", "# In general: Which strategy \"makes most sense\" really depends on the dataset!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# from sklearn.neighbors import KNeighborsRegressor\n", "# from sklearn.metrics import r2_score\n", "\n", "# # Get null columns\n", "# null_cols = data.isnull().sum()\n", "# null_cols = list(null_cols[null_cols != 0].index)\n", "\n", "# for i in null_cols:\n", "# x = data.fillna(data.mean()).drop(['match', 'id'], axis=1)\n", "# y = x.pop(i)\n", " \n", "# xtrain, xtest, ytrain, ytest = train_test_split(x, y, test_size=0.2)\n", "# knn = KNeighborsRegressor()\n", "# knn.fit(xtrain, ytrain) \n", "# pred = knn.predict(xtest)\n", "# r2 = r2_score(ytest, pred)\n", " \n", "# # If we can reasonably predict these values, do so\n", "# if r2 > 0.2:\n", "# data['predicted'] = knn.predict(data.fillna(data.median()).drop([i, 'match', 'id'], axis=1))\n", "# data[i] = np.where(data[i].isnull(), data['predicted'], data[i])\n", "# del data['predicted']\n", " \n", "# # Otherwise, just take the median\n", "# else:\n", "# data[i] = data[i].fillna(data[i].median())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Adding more features " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can construct additional features that may have some predictive skill:\n", "\n", "For example, we can use the average rating of each participant (as determined by how often his or her partners wanted to see them again) as a measure of each person's desirability. \n", "\n", "Or, we can we can determine how \"choosy\" someone is -- were they interested in every person they met, or hardly anyone?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "desirability = data.groupby('iid').mean()['dec_o'].to_dict()\n", "data['desirability'] = data['iid'].map(desirability)\n", "\n", "choosiness = data.groupby('iid').mean()['dec'].to_dict()\n", "data['choosiness'] = data['iid'].map(choosiness)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We might also guess that not just absolute values of attributes matter, but also (or even more so) their differences in the two participants meeting each other." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def get_partner_data(pid, col):\n", " \"\"\"\n", " Looks up the person's partner.\n", " \"\"\"\n", " partner = data[data['iid'] == pid].head(1)[col].iloc[0]\n", " return partner\n", "\n", "# Income (take the log difference)\n", "data['partner_income'] = data['pid'].apply(get_partner_data, col='income')\n", "data['income_difference'] = np.log1p(np.abs(data.income - data.partner_income))\n", "\n", "# Age\n", "data['age_difference'] = data['age'] - data['age_o']" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Compare the each person's overall desirability to their partner's.\n", "data['partner_desirability'] = data['pid'].apply(get_partner_data, col='desirability')\n", "data['des_diff'] = data['desirability'] - data['partner_desirability']\n", "\n", "# Also for Choosiness\n", "data['partner_choosiness'] = data['pid'].apply(get_partner_data, col='choosiness')\n", "data['choose_diff'] = data['choosiness'] - data['partner_choosiness']" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# For the purpose of this tutorial, we will only use a\n", "# subset of the 195 features in order to minimize the \n", "# preprocessing work\n", "\n", "data = data[['order', 'int_corr', 'samerace', 'choosiness', 'choose_diff', 'age',\n", " 'income_difference', 'desirability', 'partner_desirability', \n", " 'age_difference', 'intel', 'go_out', 'match']]\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create train-test split" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "X = data.drop('match', axis=1)\n", "y = data['match']\n", "\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create classifier object and train the classifier (fit the estimator) using the training data\n", "#### A) Simple logistic regression" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from sklearn.linear_model import LogisticRegression\n", "\n", "logreg = LogisticRegression(penalty='l2', tol=0.0001, C=1.0, fit_intercept=True, \n", " class_weight=None, random_state=0, solver='liblinear')\n", "\n", "logreg.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### B) More fancy approach using logistic regression with cross validation and a pipeline" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from sklearn.linear_model import LogisticRegressionCV # includes cross-validation\n", "from sklearn.preprocessing import StandardScaler\n", "from sklearn.pipeline import make_pipeline\n", "\n", "C_values = [0.05, 0.1, 0.5, 1., 5.]\n", "n_folds = 10\n", "logregCV = LogisticRegressionCV(Cs=C_values, fit_intercept=True, \n", " cv=n_folds, dual=False, penalty='l2', \n", " scoring='roc_auc', solver='liblinear', \n", " tol=0.0001, max_iter=1000, class_weight=None, \n", " random_state=0)\n", "\n", "logregCV_pipe = make_pipeline(StandardScaler(), logregCV)\n", "logregCV_pipe.fit(X_train, y_train)\n", "print(logregCV_pipe.get_params().keys())" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ "coef_B = logregCV_pipe.named_steps['logisticregressioncv'].coef_\n", "\n", "plt.figure(figsize=(10,8))\n", "coef_logregCV_pipe = pd.Series(coef_B.ravel(),\n", " index=X_train.columns) \n", "coef_logregCV_pipe.sort_values().plot(kind=\"barh\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluate the performance of the model on the test data\n", "\n", "There are lots of different metrics available to evaluate the performance of your model: http://scikit-learn.org/stable/modules/classes.html#module-sklearn.metrics" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.metrics import roc_curve, classification_report, \\\n", " confusion_matrix, brier_score_loss" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "y_pred_A = logreg.predict(X_test) # the predicted classes (\"1\" for match, \"0\" for no match)\n", "y_prob_A = logreg.predict_proba(X_test)[:,1] # the predicted probabilities of class 1\n", "\n", "# Calculate performance metrics\n", "n_TN, n_FP, n_FN, n_TP = confusion_matrix(y_test, y_pred_A).ravel()\n", "\n", "# Matthews correlation coefficient\n", "MCC = (n_TP * n_TN - n_FP * n_FN) / np.sqrt((n_TP + n_FP) * (n_TP + n_FN) * (n_TN + n_FP) * (n_TN + n_FN))\n", "if np.isnan(MCC): \n", " MCC = 0\n", " \n", "# Brier score loss (the smaller, the better)\n", "BSL = brier_score_loss(y_test, y_prob_A)\n", " \n", "# Accuracy\n", "accuracy = float((n_TP + n_TN)) / (n_TP + n_FP + n_TN + n_FN)\n", "\n", "n_test = float(len(y_pred_A))\n", "print(\"TP: {0} ({1:2.1f}%)\".format(n_TP, n_TP / n_test * 100.))\n", "print(\"TN: {0} ({1:2.1f}%)\".format(n_TN, n_TN / n_test * 100.))\n", "print(\"FP: {0} ({1:2.1f}%)\".format(n_FP, n_FP / n_test * 100.))\n", "print(\"FN: {0} ({1:2.1f}%)\".format(n_FN, n_FN / n_test * 100.))\n", "print(\"\\nAccuracy: {0:2.2f}\".format(accuracy))\n", "print(\"Matthews correlation coefficient: {0:2.2f}\".format(MCC))\n", "print(\"Brier score loss: {0:2.4f}\".format(BSL))\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "y_pred_B = logregCV_pipe.predict(X_test)\n", "y_prob_B = logregCV_pipe.predict_proba(X_test)[:,1]\n", "\n", "# Calculate performance metrics\n", "n_TN, n_FP, n_FN, n_TP = confusion_matrix(y_test, y_pred_B).ravel()\n", "\n", "# Matthews correlation coefficient\n", "MCC = (n_TP * n_TN - n_FP * n_FN) / np.sqrt((n_TP + n_FP) * (n_TP + n_FN) * (n_TN + n_FP) * (n_TN + n_FN))\n", "if np.isnan(MCC): \n", " MCC = 0\n", " \n", "BSL = brier_score_loss(y_test, y_prob_B)\n", "\n", "n_test = float(len(y_pred_B))\n", "print(\"TP: {0} ({1:2.1f}%)\".format(n_TP, n_TP / n_test * 100.))\n", "print(\"TN: {0} ({1:2.1f}%)\".format(n_TN, n_TN / n_test * 100.))\n", "print(\"FP: {0} ({1:2.1f}%)\".format(n_FP, n_FP / n_test * 100.))\n", "print(\"FN: {0} ({1:2.1f}%)\".format(n_FN, n_FN / n_test * 100.))\n", "print(\"\\nAccuracy: {0:2.2f}\".format(accuracy))\n", "print(\"Matthews correlation coefficient: {0:2.2f}\".format(MCC))\n", "print(\"Brier score loss: {0:2.4f}\".format(BSL))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "** In this example, using cross-validation to optimize the regularization strength only slightly increases the performance. However, applying cross-validation, scaling features, choosing different \"penalties\" in the regularization ('l1' vs. 'l2') etc. can greatly improve your model! **" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 3) From Love to Wine: A Regression Example\n", "\n", "Our goal is to predict wine quality." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\n", "Wine quality control in Adega Cooperativa de Borba winery, Alentejo, Portugal. Image by Manuel Ribeiro.\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Load dataset" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dataset_url = \"http://mlr.cs.umass.edu/ml/machine-learning-databases/wine-quality/winequality-red.csv\"\n", "data = pd.read_csv(dataset_url, sep=';')\n", " \n", "print(data.head())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create train-test split" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "y = data['quality'] \n", "X = data.drop('quality', axis=1) \n", "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create classifier object and train the classifier (fit the estimator) using the training data\n", "\n", "#### A) Linear regression" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Sometimes (e.g. when feature values have very different ranges) it can be\n", "# useful to scale or normalize the training and test sets before using them\n", "# in a model, so let's do that here:\n", "scaler = StandardScaler()\n", "X_train_scaled = scaler.fit_transform(X_train)\n", "X_test_scaled = scaler.transform(X_test)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**!! A note about data leakage !!**\n", "\n", "The proper way to scale the data is *not* to scale the entire dataset with a single transform, since this will indirectly leak information into the training data about the whole dataset, including the test data. Instead, \n", "you should fit the scaler only to the training data, transform the training data, and then transform the test data with that same scaler.\n", "\n", "**\"Contaminated\" training data can lead to over-optimistic performance estimations on your testing data!**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from sklearn.linear_model import LinearRegression\n", "from sklearn.metrics import explained_variance_score, r2_score\n", "\n", "linreg = LinearRegression(fit_intercept=True)\n", "linreg.fit(X_train, y_train)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "fig = plt.figure(figsize=(10,8))\n", "coef_linreg = pd.Series(linreg.coef_.ravel(),\n", " index=X_train.columns) \n", "coef_linreg.sort_values().plot(kind=\"barh\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Evaluate the Linear regression model" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "y_pred = linreg.predict(X_test)\n", "expl_var = explained_variance_score(y_test, y_pred)\n", "r2 = r2_score(y_test, y_pred)\n", "print(\"*********\")\n", "print(\"Performance of linear regression:\")\n", "print(\"*********\")\n", "print(\"\\texplained variance: {0:2.3f}\".format(expl_var))\n", "print(\"\\tR2 score: {0:2.3f}\".format(r2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### B) Random Forest regression\n", "\n", "Random forest is an ensemble tool which takes a subset of observations and a subset of variables to build decision trees. It builds multiple such decision trees and combines them to get a more accurate and stable prediction.\n", "\n", "The model has a couple of levers, i.e., parameters we can tune to improve performance. Such parameters that define the \"higher-level\" structure of a model are called **hyperparameters**. \n", "\n", "E.g., in Random Forest regression, hyperparameters include the number of individual decision trees, the maximum number of features used in each of these trees, or their maximum depth. We can explore the hyperparameter space using a **grid search**, where we try different combinations of hyperparameters and then use the best combination for our final model." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "Image source: www.dataaspirant.com" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from sklearn.ensemble import RandomForestRegressor\n", "from sklearn.model_selection import GridSearchCV\n", "\n", "\n", "# Declare data preprocessing steps\n", "pipeline = make_pipeline(StandardScaler(), \n", " RandomForestRegressor())\n", " \n", "# Define hyperparameters to tune\n", "hyperparameters = {'randomforestregressor__max_features' : ['auto', 'sqrt', 'log2'],\n", " 'randomforestregressor__max_depth': [None, 5, 3, 1],\n", " 'randomforestregressor__n_estimators': [50, 100]}\n", " \n", "# Tune model using cross-validation pipeline\n", "forest_cv = GridSearchCV(pipeline, hyperparameters, cv=10)\n", "forest_cv.fit(X_train, y_train)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Evaluate the Random Forest model" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "y_pred = forest_cv.predict(X_test)\n", "expl_var = explained_variance_score(y_test, y_pred)\n", "r2 = r2_score(y_test, y_pred)\n", "\n", "print(\"*********\")\n", "print(\"Performance of Random Forest regression:\")\n", "print(\"*********\")\n", "print(\"\\texplained variance: {0:2.3f}\".format(expl_var))\n", "print(\"\\tR2 score: {0:2.3f}\".format(r2))" ] } ], "metadata": { "anaconda-cloud": {}, "gist_info": { "gist_id": null, "gist_url": null }, "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.5" } }, "nbformat": 4, "nbformat_minor": 2 }