{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h1>Classification d'Images</h1>\n",
    "<p><a href=\"https://gitlab.ec-lyon.fr/edelland/mod_4_6-td1\">Énoncé du TD</a>.</p>\n",
    "<h2>Introduction</h2>\n",
    "<p>Ce TD a pour objectif d'appliquer les méthodes de classification abordées en cours. Nous allons travailler sur la base de données <a href=\"https://www.cs.toronto.edu/~kriz/cifar.html\">CIFAR-10</a>. Dans un premier temps, nous mettrons en œuvre la classification par les k-plus proches voisins en utilisant la distance euclidienne. Ensuite, nous explorerons la classification à l'aide de réseaux de neurones. Pour chaque méthode, nous évaluerons le taux de réussite.</p>\n",
    "<p>Afin que ce document puisse rester interactif, les fonctions longues à exécuter ont été désactivées et les résultats sont fournis manuellement.</p>\n",
    "<h2>Importation des Données</h2>\n",
    "<p>Nous importons les bibliothèques nécessaires pour charger et traiter les fichiers.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "dotnet_interactive": {
     "language": "csharp"
    },
    "polyglot_notebook": {
     "kernelName": "csharp"
    }
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pickle\n",
    "import os\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Nous extrayons ces données et développons des fonctions qui nous permettront de créer des listes d'images d'entraînement et de test à partir de ces données. De plus, nous récupérons les listes de libellés de classe associées à chaque image, ce qui nous permettra d'attribuer un libellé à une image de test et de la comparer ensuite au libellé réel de l'image.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "def read_cifar_batch(batch_path):\n",
    "    with open(batch_path, 'rb') as file:\n",
    "        batch_data = pickle.load(file, encoding='bytes')\n",
    "    data = np.array(batch_data[b'data'], dtype=np.float32)\n",
    "    labels = np.array(batch_data[b'labels'], dtype=np.int64)\n",
    "    return data, labels"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "def read_cifar(path_folder):\n",
    "    data = np.empty((0, 3072), dtype=np.float32)\n",
    "    labels = np.empty((0), dtype=np.int64)\n",
    "    for filename in os.listdir(path_folder):\n",
    "        if filename.startswith(\"data_batch\") or filename == \"test_batch\":\n",
    "            batch_path = os.path.join(path_folder, filename)\n",
    "            d, l = read_cifar_batch(batch_path)\n",
    "            data = np.concatenate((data, d), axis=0)\n",
    "            labels = np.concatenate((labels, l), axis=None)\n",
    "    return(data,labels)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "def split_dataset(data, labels, split_factor):\n",
    "    num_samples = len(data)\n",
    "    shuffled_indices = np.random.permutation(num_samples)\n",
    "    split_index = int(num_samples * split_factor)\n",
    "\n",
    "    data_train = data[shuffled_indices[:split_index],:]\n",
    "    labels_train = labels[shuffled_indices[:split_index]]\n",
    "    data_test = data[shuffled_indices[split_index:],:]\n",
    "    labels_test = labels[shuffled_indices[split_index:]]\n",
    "\n",
    "    return data_train, labels_train, data_test, labels_test"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Afin de vérifier le bon fonctionnement de ces fonctions, nous les appliquons à une liste de 10 images. Nous vérifions que les images d'entraînement et de test sont correctement sélectionnées de manière aléatoire à partir de la base de données.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[6 9 9 4 1 1 2 7 8 3]\n",
      "[4 3 7 8 6 9 1 2 1] [9]\n",
      "[8 9 3 7 6 9 1 4 1] [2]\n"
     ]
    }
   ],
   "source": [
    "if __name__ == \"__main__\":\n",
    "    #read_cifar_batch(\"data/cifar-10-batches-py/data_batch_1\")\n",
    "    d, l = read_cifar(\"data/cifar-10-batches-py\")\n",
    "    print(l[0:10])\n",
    "    d_1, l_1, d_1, l_2 = split_dataset(d[:10,:], l[:10], 0.9)\n",
    "    print(l_1,l_2)\n",
    "    d_1, l_1, d_2, l_2 = split_dataset(d[:10,:], l[:10], 0.9)\n",
    "    print(l_1,l_2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Afin de vérifier l'association correcte entre les images et les libellés, l'algorithme suivant affiche les libellés et les images correspondantes, tout en indiquant si chaque image sera utilisée pour l'entraînement du modèle ou pour les tests.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA68AAAGpCAYAAABiXgDdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAADJe0lEQVR4nOy9Z5hmVZX2v86TY9VTOXZ3dTd0IisSRbKCYELGNIIYxjA6r054568TBEZ8fXWcSx3H7KjjjHFGRbIJGlGapAKSOtC5qivXU08O55z9/8BLj/vcCynCyCm4f9fFh7PY55wd1l57765n3ccxxhghhBBCCCGEEEJCTOSZrgAhhBBCCCGEEPJ48PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST0hPLw6jjOkv7bvHnzU3rPZZddJo7jPD2VfoLUajW57LLLnnIbniqO48h73vOeZ7QOBOEc+MPBObA8eC7Mid27d4vjOPLxj3/8cct+7WtfE8dxZPfu3U/5fV/72tee9DPIH47nwhwQecQvzzvvPOnu7hbHceR973vfM1YX8szzXPF7DcZondgzXQGNLVu2WNcf+tCH5KabbpIbb7zRsm/atOkpvedtb3ubnHPOOU/pGU+WWq0ml19+uYiInHbaac9IHUh44RwgxOa5MCeeCOedd55s2bJFhoaGnumqkD8Qz5U58Od//udy++23y1e+8hUZHBykjz/Hea74PVk6oTy8nnDCCdZ1X1+fRCIRsAep1WqSyWSW/J7R0VEZHR19UnX8Q/NE20aWN5wDCOfAcxvOCZu+vj7p6+t73HKcN88enitz4L777pPjjjtOXvnKV/7ecu12WxzHkVgslFtZ8jTxXPH7MOF5nriuK8lk8pmuikoofza8FE477TQ5/PDD5ec//7mcdNJJkslk5C1veYuIiHznO9+RF7/4xTI0NCTpdFo2btwo73//+6VarVrP0H4iMDY2Jueff77ccMMN8rznPU/S6bRs2LBBvvKVrzxtdd+9e/fBTcfll19+8CcPl1xyiVWvX//613LhhRdKV1eXrF279mC7tb9SXXLJJTI2NmbZms2m/MM//INs3LhRUqmU9PT0yOmnny633nrrY9bNGCN/8zd/I/F4XL70pS89Le0l/zNwDthwDpDlPCd+F9/35cMf/rCsXLlSUqmUHHvssfKzn/3MKqP9bPj3tX9iYkJe85rXSD6fl87OTnnta18rk5OT/yP1J88cy3kObN68WRzHkR07dsj1119/cF3YvXv3wf/37//+7/KXf/mXMjIyIslkUnbs2CEiIl/5ylfkqKOOklQqJd3d3fKqV71KHnzwQXjHl770JVm3bp0kk0nZtGmTfPOb31TXDrK8WM5+/yhPJEbfdddd8vKXv1y6u7sllUrJMcccI9/97neh3OTkpLzjHe+Q0dFRSSQSsnr1arn88svFdd2DZR79afLHPvYxueKKK2T16tWSTCblpptuetrb+HSxrP+56sCBA/LGN75R/vqv/1r+z//5PxKJPHIW3759u7z0pS+V973vfZLNZuWhhx6Sj370o3LHHXfAzww07rnnHvnLv/xLef/73y8DAwPy5S9/Wd761rfKIYccIi960Yt+772XXHKJ/Nu//Zvs2rXrMYPh0NCQ3HDDDXLOOefIW9/6Vnnb294mIgL/in7BBRfI6173OnnnO98Jk+zxcF1Xzj33XLnlllvkfe97n5xxxhniuq7cdtttsnfvXjnppJPgnmazKZdccolce+21cvXVV/PnE8sAzoHHhnPguclynRO/y7/8y7/IqlWr5JOf/KT4vi8f+9jH5Nxzz5Wbb75ZTjzxxCfc/nq9LmeddZZMTEzIRz7yEVm3bp1ce+218trXvvZx60KWH8t1Djzvec+TLVu2yKte9SpZu3btwdzvoaGhg/9I84EPfEBOPPFE+fznPy+RSET6+/vlIx/5iPzN3/yNvP71r5ePfOQjMjc3J5dddpmceOKJcuedd8qhhx4qIiJf/OIX5R3veIe8+tWvlk984hOyuLgol19+uTSbzSX2LAkzy9XvReQJxeibbrpJzjnnHDn++OPl85//vHR2dsq3v/1tee1rXyu1Wu3gHwEmJyfluOOOk0gkIh/84Adl7dq1smXLFrniiitk9+7d8tWvftV67j//8z/LunXr5OMf/7h0dHQcnDehxCwD3vSmN5lsNmvZTj31VCMi5mc/+9nvvdf3fdNut83NN99sRMTcc889B//fpZdeaoJdsGrVKpNKpcyePXsO2ur1uunu7jbveMc7Hreub3nLW0w0GjW7d+/+veVmZmaMiJhLL70U/t+j9frgBz8I/+/UU081p556Ktjf9KY3mVWrVh28/vrXv25ExHzpS1/6vfUQEfPud7/bzM3NmRe+8IVmZGTE3H333b/3HvKHh3Pgv+EcIMY8O+fErl27jIiY4eFhU6/XD9pLpZLp7u42Z5111kHbV7/6VSMiZteuXQdtj9X+z33uc0ZEzA9/+EPL/id/8idGRMxXv/rVx20DCR/Pxjnw6LvOO+88y3bTTTcZETEvetGLLPvCwoJJp9PmpS99qWXfu3evSSaT5g1veIMxxhjP88zg4KA5/vjjrXJ79uwx8XjcWjtIuHk2+v0TidEbNmwwxxxzjGm321bZ888/3wwNDRnP84wxxrzjHe8wuVzOqrsxxnz84x83ImLuv/9+Y8x/rztr1641rVbrcdsUBpbtz4ZFRLq6uuSMM84A+86dO+UNb3iDDA4OSjQalXg8LqeeeqqIiPozkiBHH320rFy58uB1KpWSdevWyZ49ex733n/9138V13Vl1apVT6AlOq9+9auf9L3XX3+9pFKpgz+b+H3s2rVLTjzxRCmVSnLbbbfJUUcd9aTfS/6wcA48NpwDz02eDXPiggsukFQqdfA6n8/Ly172Mvn5z38unuf93nu19t90002Sz+fl5S9/uWV/wxvesKT6kOXFs2EOPBbBNWHLli1Sr9cP/rXpUVasWCFnnHHGwZ/bb926VSYnJ+U1r3mNVW7lypVy8sknP6U6kXCwnP1+qTF6x44d8tBDD8kf//Efi8gjvzB79L+XvvSlcuDAAdm6dauIiFxzzTVy+umny/DwsFXu3HPPFRGRm2++2Xr2y1/+conH44/bpjCwrH82rCnQVSoVOeWUUySVSskVV1wh69atk0wmI/v27ZMLLrhA6vX64z63p6cHbMlkckn3Pp08FYW9mZkZGR4ePvizid/HHXfcIbOzs/LhD3+YyerLDM6Bx4Zz4LnJs2FODA4OqrZWqyWVSkU6Ozsf816t/XNzczIwMLCk95Dlz7NhDjwWwbbNzc2pdhGR4eFh+clPfmKV0+bBwMCA7Nq16+muKvkDs5z9fqkxempqSkRE/uqv/kr+6q/+Sn3W7OzswbJXX331Yx5IHy33KMtJ1XtZH1617zHdeOONMjExIZs3bz74LysiIsVi8Q9Ys6cHrX2pVEoWFxfBHnTCvr4++cUvfiG+7z/u5v21r32tDA4Oyt/+7d+K7/vyd3/3d0+t4uQPBufAf8M5QESeHXNCE+mYnJyURCIhuVzu996rtb+np0fuuOOOJb2HLH+eDXPgsQi27dGDxYEDB6DsxMSE9Pb2WuUe3fz/LpwHzw6Ws98vNUY/6s8f+MAH5IILLlCftX79+oNljzzySPnwhz+slhseHrauw/aN29/Hsv7ZsMajnR+Ud/7CF77wTFTnMXm0fk/0X27GxsZk27ZtlsDA3NwcqKeee+650mg0lvxh47/7u7+TT37yk/LBD35QPvCBDzyhOpFwwTnwCJwD5FGWy5x4lO9///vSaDQOXpfLZbn66qvllFNOkWg0+oSfd/rpp0u5XJarrrrKsn/zm998ynUly4PlNgeWyoknnijpdFr+4z/+w7Lv379fbrzxRjnzzDNF5JEN/eDgICiy7t279/eqz5PlzXLx+6XG6PXr18uhhx4q99xzjxx77LHqf/l8XkREzj//fLnvvvtk7dq1arng4XU58aw7vJ500knS1dUl73znO+UHP/iBXHPNNfL6179e7rnnnj/I+9/61rdKLBZ73N/C5/N5WbVqlfzwhz+UH//4x3LXXXdZnzx4LC666CKZn5+XN77xjfLjH/9YvvWtb8lZZ50lHR0dVrnXv/71cvrpp8s73/lO+f/+v/9PbrjhBrnuuuvk0ksvlW9/+9vqs9/73vfKl770JfnYxz4mf/ZnfybGmCW3m4QHzoFH4Bwgj7Jc5sSjRKNROfvss+UHP/iBfO9735MzzzxTSqWSXH755U/q/RdffLGsW7dOLr74YvnMZz4jP/7xj+V973uf/OhHP3pSzyPLj+U2B5ZKoVCQv//7v5errrpKLr74Yrn++uvlP/7jP+T000+XVColl156qYiIRCIRufzyy+X222+XCy+8UK677jr55je/KWeffbYMDQ0tKb2ELD+Wi98/kRj9hS98QX72s5/JS17yEvnWt74lP//5z+XKK6+Uj3zkI/JHf/RHB8v9wz/8g8TjcTnppJPkc5/7nNx4441y3XXXyWc/+1k5//zzZf/+/U97e/9QPOtma09Pj1x77bWSyWTkjW98o7zlLW+RXC4n3/nOd/4g7/c8TzzPW9Km91//9V8lk8nIy1/+cnnBC14gl1122ePec/LJJ8u//du/yf333y+veMUr5IorrpAPfOAD8N3LWCwm1113nXzgAx+QH/zgB/KKV7xCLr74YvnFL37xexPH3/rWt8o3vvEN+fznPy9vfetbxff9x60TCRecA4/AOUAeZTnNCRGR97znPXL22WfL//pf/0ve8IY3iOu6cu211z5pYZlMJiM33nijnHXWWfL+979fLrzwQtm/f/9j/iMOefax3ObAE+EDH/iAfPnLX5Z77rlHXvnKV8p73vMeOeyww+TWW2+1Pvfx9re/Xb74xS/KPffcI6961avk8ssvl/e///1yzDHHSKFQeNrrRZ55lovfP5EYffrpp8sdd9whhUJB3ve+98lZZ50l73rXu+SnP/2pnHXWWQfLDQ0NyV133SUvfvGL5R//8R/lnHPOkYsuuki+8pWvyNFHHy1dXV1Pe3v/UDiGf1oghBBCCCHPMYrFoqxbt05e+cpXyhe/+MVnujqEkCWwrAWbCCGEEEIIeTwmJyflwx/+sJx++unS09Mje/bskU984hNSLpflve997zNdPULIEuHhlRBCCCGEPKtJJpOye/du+dM//VOZn5+XTCYjJ5xwgnz+85+Xww477JmuHiFkifBnw4QQQgghhBBCQs+zTrCJEEIIIYQQQsizDx5eCSGEEEIIIYSEHh5eCSGEEEIIIYSEHh5eCSGEEEIIIYSEniWrDX/pqp+Cbf9DvwLbzK4HrWvPw1cMrNwAtpVrN4Kta3Al2FJp+3nb7r8VyuzZcS/Y2uUK2KJK3Tq6OsEWS2Ws6+NOfhGUOWQdtqmxOA+2++/7Ddh8v2Vdt9oNKPPA/b8FW6k4C7Zmqwm2ditqXc/P1aBMpYbvdD18Vl9fN9i6unNg80zZflYbikijjlphV37/R1gwpPi+/0xX4ZlBkXhzHAds9Sr62dw8+mx3t/2hbK+FvpjOZMAWTSSxag7+e5wvdt2iUCI8RCLh/ffEb/zmj8D2yxunwJZP2bEwm+mAMnEHY28uGwdbb+cw2Loyo9Z1oRNj9oHZvWDbOXMP2DpGcF3oGamCLZ60fbleLUKZVCoBtqhTAJvvuWDzPDtednWMQplkEudATMpgWyxh3J6bsvu7UcE+qzUxjhtlsi/MH8B7a/jOUmUx8Cxs98I89v9/fBDX9DDwwlNPA1uxiGt8MmKvC90J7MOVPTiWfd1ZsPUWcEwSUXuexJJpKCNRnF/zC0WwtVysW1cBfSPi2Qt4s4nj3Whg3E6lU2DzxANbrW77QWcBY4YYvK/VbIEtKhhHolE76udz2K/ZLPZ/PI71ryvv1NYdidhjoNXVNbhuvvtDn8dnhYQVw9hH6TT6X3A/EIvgqqutda6PYyzK3qK4WLKuUxGMvdkIzoFys471yOA+Ip1Unhfwj87OApRZWMB40KriXNFUctutwCYZmy3RGPZjIo792JlFvx3qs/dZ41O4dldb2P8dHV1gc9vYgmp1EWyjI/Y8jsdxTGIxtH336rvBFiS8OyVCCCGEEEIIIeT/wcMrIYQQQgghhJDQw8MrIYQQQgghhJDQw8MrIYQQQgghhJDQs2TBppKSiNxTQPEe0zdgX8cw8X5o5RqweT4q+kR8FHzxa7boQ2NhDutQR+GAkd5+sK1ccQjYVhyyCmzDI7Z4Rn//AJSJxzHp2y2gKMOK0UEs59qJ/I0GJpUXF1DYYnYWxySWwERtcewk764erGsqi+9cLC2ALZlCl/ENCnHEY/Y7SotFKNNqamnry4cwi+uEgWYNE/jn9+8E274H7XKLJRTMOfmMM8HWoYiBaP8e5wSUDzhqT44ohg3J9mJcuvdXtuDOisHnQZl8FkU+Gi0Uo6iXMUbUC/Z4ug6uE13DGKcOXYG2egpFK8p+EWx+yRbwSHooXGKSWNe2h3WLRVEspruj17rOKCI/7WoebKXqENjKcyWw7d22x7qOJhWxuTiuwfvHJ8GWz6GYSaWMQh+uGyyHbVpOmnf3P3A/2IqzigBdICw5PRinej0cSyeNe5Sqj2t8xbP70Tg4HrUGigPV6oqYo4cDMBtFpZhUzH6n6+J9UUUgJ5nEoFFrYHx3A6KVTqMHyiiaP9JWhKPSMezvSkAsaV4RTctkcE47ERR/cqJoE2UvUGvY88lt4/yKxpSgGmLiURwET1Hj9AN+5STQR5sujoEmSKQJNhXy9t66QxHbapXRz/w6zotMHNeizgzaMoH9Ri6BfjCrzDHfoC2VwnHv67PXgIUF3H9rAmjDQxg3okqs7e+3z2tx5Vm79k2ALRFX+r+A/Z1Dk/QExBSDezERkWoNx2kpcB9HCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST08PBKCCGEEEIIIST0LFmwSZRk81YTbbWanRA9tm4EylSqmKDbaqPIUndvJ9hicfu8feih66DMSSccC7aRgVGwdXb2ga0dQ+GJTCC5OqboDDlK8nm9imImTaUfM2k7+byrgAnYa9dsAtuDD25VKoLPbzZt0ZDOji4oE8d8elksoZiJEUx4933skIUFe4zrNUxaN8tbr0nMcm/Ak0Rrd8RB2+S+XWC7d8vPwdau2/4Zz6F/1kso/tTRjYJxviIIYBw7ZoR51BxFnCIsjE+jON7wahyraNQWo+nOoUCfCMap8V0o5rVr/ADYRoZtf6kaFL/piqHYhdvxENgiOWxTs41CHOWiHd+7YyjGl1BEljo6UZwpn8a1KLgutFwUXRJFJGdxCtewhZ24rG+7627rOrsC16uRQ3DdSWWxL0plrFuzgc8Tx753dm4GimjrflhJx5S5qejtrAoINI0N4D6mvw9jV1oTDFLiQb1p91mjraytyn2JNIrQiIs+a3x8Xme37e9uG+9LKMI3Hm6nJJrATmu27Da1Xax/Rrkvpgi/pZRyrmPvRyIG55KrrB2KdpXksjj3K1UUZmsHhIwiyrPKyroWZhIxRRDRQVtXry24Va1j/8Q9FGdylX20o+w3hgbtWDXYhwJfu3Y8DLbeGM7FwWEUUY242KZIYE5pgpE9nbgWmagiCNWJ9cgE/Coawb7oG+gFW0oRjtL8yjW2P3YWsA4jSjyIKqfEWBzLJRVFR79lB4COPAr4mvaTU+3jX14JIYQQQgghhIQeHl4JIYQQQgghhIQeHl4JIYQQQgghhISeJee8uo062BwXExqSCfv33YvKR7x7BjHnZ+Vhh4Ctf8Uw2OLB5EzlA8ltF/NoHjqAuU21nZiD045gTufW395jXb9gI+afvui4F4BNyw0sKb9F37vH/jBwIo6/pU8k8LfivX2YT7x333a8N2X/lr5Sx5zjUgnHKaZ8nLijA/M96ko+Q/Ab4NpHzZNJJdF2GRHm/MT/SYzgWLab6AMT+/aArUP7+HfBzhOZXihDmbkD42AbWLESK6d8yT44Cx0t+Yg8Ltu24biMrcGcy9Xr7XHZuX0HlKnWUA8gm8fYUq5jvLxv62+t69zwoVCmJ49x3I2g3+7fieuCGKxHV8Jei4xgPlIqgX3R3TkAtsoixr2HHrSf15XFPKx8B/5bc7sH/b06jvdOThWs69WjeF8mh893feyLVgPHLpbAexfmbX+pVXFddrAaoSXl4Jjn87iFWjdi54H3pLGRcR/7ojKPPuv52K/1ml2PiLKMdhQw1zqm5IIWF3FOx5RdYXdgbpZLim5JA231Bu7PjJJbmsva+b7tFu43Ix5WLJ7ENnkevjMWSF5tKnotCUX4I+LjmDcrmE8vnpYDaF+7vpKzXsX84jDT2YE5nSkl97O/385JnZ7DOJtSxm5xoQi2gV6Mq8lA56bTmPc5sgLjYDaLeeXtFo5xQtAXkoH5U6ujj64YRt0AE8dxTyh731bLnv+9PYrmj7KGNZs47/LaPr1p17e8iH7cbOKZrqcXxzydxbkYc/DeWMtuZ6OKfeYqc3Ep8C+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCz5IFm5o1TArOKYnaHd12cvXzjjoayqxYgwIbZeXjxFt37gNbqWYLw1SKRSgzV8Tk8AOTmJzc0YmJ4BLBBPprvvM96zr+Gjzzn3riC8EWj2Mi8uAgilCJscWSiopgza9/cy/YYnFMeM8qHwF2A2ICrUoRykSVf8boUz6k7nkoKjE3j2JPEbETxmOKCkRB+UgyCR9B4bGIg+IUM/M453bv3gu2plIun7KT+muVEpR56J7fgG1wbC3YCoMoYiaB+is6as9Z8a0nwr69KMhgBAUYSj123G5FUHTJi2FsLHRhvDl0/WqwTU3bz6u2Ufzm3vvRz9wI1r/Qi2uRGIy/8aT9jq5urGsugx+QL5fQr2ancI3xW3Z8TCnCKKVWF9h+21gDtmZ3D9gi/bZ4WiaF/bNQnAfbgQnsC7eJa3W7qQgQVe157CprfEoREQorXUlcw9KK6Exn1hal6+tAMRnPR19Ei0g0pihaRezFuukrAkXKehszKPbiNXH+GmUzMD1dtO9rY23LNRTtqyn7hVwa9ygSEIqJKqKA2roTTeIetK4Ig2Xi9jtjyiLQaGBd6230WR8kAEWKFXxnsWaPS6WGz2q0l9ffj3p7Mbb4ihBVq2H3x8AgChllUijemIyivw/14T693bZ9bW52GsrklRgai2N/+y2sfzyGcTsSsce9XsN9iqJFJpEUtqmpCJI1W/a6kFRiS6WE8TibQ3Emz8P5OTdvn4GScRSv0rZBrRauV+UKivZFlMa3SnY9Wi2MVUGxtqWyvGYOIYQQQgghhJDnJDy8EkIIIYQQQggJPTy8EkIIIYQQQggJPTy8EkIIIYQQQggJPUsWbEomUXSgHcWE6Ho6Z13vKmFi8t2/uANs83OYADw+MQW2eNROCo5HMNm66WLivZaMP9SHzZ+e3AO2jqQtKFMuYqL2tl278PlDKOARj+M7h1YMWtfDgWsRkb2TKF619bdo6x/C5PbdewOCSm3sMy1p3Yth0rcmsJGMoW/UG/a9HR0o0hCLLR+xjuc2QcEj9Ivx/fvBtmsv2vbt2Am23rwdM0Z7MYH/wF6cl7+9606wHXtaAWyZjoAwGLWZnhRuE+d5cRrjarsWEIbIosBJ1yAKHpkkCpr0H5IDW8m314pKHeuQFnz+3ByKquQTKBo3PFoAW1tsQZBFH59VVYTrUlF8fgWXRMl32LHQTaDA4HQVRU+u+wG23TcTYFubsO+NGhQRmZ3Ada3VUERyFDGTRhuFOExA/SOXx75wzPKZjH0FFAfKx7EfUwGBlkgU+zCdRrGatotx1VeClTH2mLdcfL6nCKP4RhkjRVDJxBJgK7dswU7Pw3bXPNxDuIqtXMV6jM/bz9f2dR0V7Iv2JM65+iIKR63sPcS67u8fhTJOHoXlmgsobFapoHjpYhnjweyiPdF371OE66JL3oKHgogipNVSxNq8gMiPq+3TGzhOMUUsrKQIyTkBeTOjCBSNHzgAts4cnlkyir+XmjhWQeHKRArHru2ib7cVwSMnoghHBea/H8U2JRO4Biv6YVKr4zsTSVvYKaEIvmZSOMeSSeyfRUUod7GIfZZL2THfUQS5YH+2RPiXV0IIIYQQQgghoYeHV0IIIYQQQgghoYeHV0IIIYQQQgghoYeHV0IIIYQQQgghoWfJ2eKZzADYpososLFjny0i9MD990GZiCJa5DUx0blexsT4aCDxu95EkYliGW3lKgpC7d7/INiyaUzoXr92vW1QBKF+ectmsK1avRps69avA1tPj52wnFQSwTs7MLk64mKCdLWJ/x5Rr9nJ2/ViGcp4Hibdp9KYHF4p4b0deRRjSgZEK1qKgESthgn7ywsUIViaGtBTECkxwUslW98o9XLwnc6S/+3Kvtf3cd5rQgXlGvrU/ikUX5gK2DwPhWlG+7GuD92Jwm/9g0NgW/eC4wIWnF8RRTjGUbpW6zJNc8bRxmApOOH998Sko4j21XGMuwZtwbnxKRTeKzXGwWYi28B21OEYL098if38bAJjdruGtm3bUCmptDADtnQaY62XsMUz9pf2QpmePM6B4S4Uu8h3o1hPIuBYVUWE5+H9KFq28xe4BrTKD4PNWWGXq03jGjm0KgO2dAHrLxEc80gUy2Uytr+0FGGteATfGVaG+1BIriOBsTCXsfvCUYSSNJUVLWY067hGRgLxuEcRwspmUVyqtIjiRp2KkGK5gfXdM27fW2mi8EpCCXkjGYy1sTjOw91zReu6qQiKxZWA3NmB8/ykTceCrXQgIPBTU57Vi/GtWcP6VyoYo5NxvHfFoF23/n7cQ0+VcC6FGUfx20QC+ygobuR66FPNBvpBVxrnWDyCC2wsYvd3o6X4YxLnQKuJMahVwnNGIqfE6ERgXitibZ6LQknplCLOpuyH8x0F6zqVwvo7Doo4lSt4tmm3sJwTEGjSni+K8F6zhm3yWjgHEjEUV+zotoUT222Ml6XqkzsHhHenRAghhBBCCCGE/D94eCWEEEIIIYQQEnp4eCWEEEIIIYQQEnp4eCWEEEIIIYQQEnqWLNhU6O4F2459KLBxYPcu6zoTx2TfxeoC2CqlabA5PioAFMt2cnJREQyJJTF5vncARWDSitDByNhRYFsREB/adc8WKBN1MBG87WHS9MzsHNiOOGKjdX3IoWuwDkN9YMudcAzY7n0IhUSaDTsxuxnHfvUFhRt8g8nVk5MTYEskUeCksyvY35gUX69jwv7yQlP0WcpdSxRs0h4fEEIICiM8chuOmyrOpIo4abbHt6wcGwNbRhHyKlWVMQ+IFN23D2NBOoY+FmvgnLv/1pvB1jNiC2V0jeL8chSBHEdRYtLGzo/gvYppSShDEhrKCygM0dGLDZ0rHbCuUzlsVKWqiX5hvHzogV1gOzBux7h8HoUnBgZWgK1/DEWFanswLu2bQcGjdN6OmT196NtdHYqQUWQ/2GIJrG8iYq9FbgvXW7+tOIePa+nGI1DEacNq25bP4Lrc1YfrQq2GAiqtFvZjeQ5FubyW/bx0QhFn8p7kRHkG6M6j8EqsVQRbMiBImUliu5t1FEZpK0J4hUIX2IIxv+VhbG+30RczORRUmZhBP3h4D/rPTNmuWw2rKqvSKGDzylOOBtvoENbjv36107resmMSyrg+xvuYEmjLRRRhq1XsdubzuEcUD+dXKoXlEilsZ0YRs3M9u5NWrhiGMvl5FMAMM5EI+prxcQzSWXuuNByMLYksxhaviv4oDh5TBgfsNd2dU+KIIqyaTeA+olnGda1zsBtsSxEY7R3AfXqzgvWIKv4SDwoqJTHeNOpY12QCy0USOMcWA33bbuN6G/VwYjcUATfxcQ6kFQGoWEDkqtHGvpiZxfm6FPiXV0IIIYQQQgghoYeHV0IIIYQQQgghoYeHV0IIIYQQQgghoWfJOa8PP3wH2B56eAfYJg7Y+UJeGXOK8p34W/f1h46B7fCNh4PtwIydM7dnBp/fN4gfg161djXWowfzYKcW8Hlm1s672rsH80pnipjLunETmOTsdRvBVq3YbfLxp+hiWkp+322Ye3vo+qPBNjBSsK5vu+PnUGZyCj9ar31QuKF8aH5hAfM20jn7nb7yAfZqDft6efHk/u1H+da6ipbPKoH8Et+gs7SVXI/gB7ZFRBy1IlqeZ7AI5jt0dWGO3gtfdBrYfnv3Q2DbvWuPde0puY87opgDlRrDHCJv63Z8582/tK6PfxnmpaQzmCOipECpOalamqq7hHxoLb94yQH5GcDxsb6RmJLPWi9a1wOK3kBUUG9gYgJza0oG82hKC7Z/x1KYMzNXRVtnHvMHU8rH6Dt6RsGWTtojM9A1pJTBeSGi5DYquUbttr1+mDjGltIC+m0Hpt7KaWf3gC0pdh750CD6e0Kp/7bfYtyeX8Dcr0YJc9lNYB539ipzTJnrYaW/G/u1Pq/kOQdy9Co19IF6C9fWmBJXa4qvBD2jruSRFbrQMVpKfvHO/ahhMV/Cd5qYvX5Eo+ifHSm8rz+Ge4PUPOY1HtoxaF0f6MbnTxVRC6FZw7b/ZhtqsURc24/bWWXidOK+USIYkTs7MYc5r+R9Nlr2uJsW7rHG+nAvHGbGZzAfWtunZJt2f+eUPX+jhf6Si2K8HxnCuJ3M2OtOFFP/pSuDe55CBp+fH8S9S1PJpd4W0HspFNCHmoqeT0NJEI8r7WyX7HKNJs4TX4kR0TjaKhWcd24gRGvxoK+Avt3dgf2/vbwTbD1dWC5Y3Y4srrd+Ow+2pcC/vBJCCCGEEEIICT08vBJCCCGEEEIICT08vBJCCCGEEEIICT08vBJCCCGEEEIICT1L1ge57ec/wZsH1oNt7cYjrOt0CwUfNm46FGzr16FIhtfARGQTsbOOqzKL9YpjMnQ0WgBb28UPFlfL82DrDIgruEqi895pTNRO5cbxWUry85q1Y9a1Uf5NoV5EkYyHbr8bbKaO/X34S86xro84cg0+/y4UE3h4x26wZRRhm84CClmI2Mn4pRL2T7P5+B99DjVmieo9cB/6j1EEflQhIGP74vYdKFBUr6MQ1oaNKBSWVARaIpoiUQDf4H2+EkpOOvkUsO3dhXPiy5//snXtKqJge2eKYEtmcP4eqgh9bL3lLuu6bxT9f8PJx4GtJorQgo/PTyh9Nl+zhS2aLRRf0MRqVg+gsFxYqJRRBCJaxf7Ix21faCsfd48I2tJJ7KOIowhsdBWsay+K41RvoWBTbQr9avXIYWDrTKMwkrTt+dlexDjYlUWxC4njO2sNRaguZrfBj+J82rkDP2zfNYBz4HnPx3icFnvNbXv4sftGFf3YbU+BrVVHP0hGsR7prG2LKnpWTgTXq7DS1Yt+0aUIfkUi9jgVlbWvXcX+j3gYD3zB/jGB+ZXLKeIvgrYHd6KQUbWJvphK4VimEvY704qvdynz8Fc70H/cFvp2s9MWbOrrwvo7ggI5bRcFs2otFA+r1uz523Kxro4ifKUtwvGIImoYQeeOx+x2uooAj1H2kmGm6SoCbvO4Z87U7HHpVvo2ruwZUjlF2KmGe9NKUARJGaeoMsbNMo5BXx5j+dbtu8CWS9k+n0vj3G820fe6hrrB5ngYy92aXbeUcjorNzBGJJM4VyanUIhNfLu+uc4CFGnUcV122yg4l06hv+ezKJA1X7bjXKOJ8zWfw/5fCvzLKyGEEEIIIYSQ0MPDKyGEEEIIIYSQ0MPDKyGEEEIIIYSQ0MPDKyGEEEIIIYSQ0LNkwabpfSiMdMxR54EtmbRFDboVkYahYUy8ny+iCMS+HZgI3vJtMYGIgwnM0RgmlXsGE7XFxeZ7SsK18ezn5Tp7ocxcBYUPIglMPvcVsR4JivUoGha5FPbZ2PAKsKWi+PyI2EnTRxyOojCFQgFsV9V/DLbJAyg+MdI/DDbPsROz43Hs61IJE/GXE9pYOgGT0cSZPEUsQvtnJEUIaN/4Xuv66uuugTKl0iLYTpqdBtvpp54BtmQSxTqC7dQkVlwPrbl8Hmznv+J8sO3YaguJ/PR6FIcrtbHPHhqfBFuXgyIKqYbdubfdgH4d60HRgMhAAWzVIvZt3McYdKC037peLON9jQaKF6x+6dvBFhaiSUVIroFiDpU9dixvzmJM7R/GeZFNo+8t1otgy8fsWN49gIvMzAw+K+rhGHtNvLdRQdGKpGPH8ogiADg/i/fFsugbc4poSL0SEPCJ4fP3jWMMHRpFv0rlMK7GGrZgSr2Ogjumie8cHUGhlU5FrGdyD65/2ZxdzkTwWQ7qloSXCFbWiT9+A5IpLJMR3BvElL8lRCJoawcicDLdCWVmJ3E/VZvFtXtNN4q9KJoqkgqM+fq1I1hX5UY3im3XxBtjUduP88reqadrLdjWHroSbLv23gm2h7bZQoGJmCKeZFBEy1X2iJEYCtPEE9hO37fHyVdUhRx14Q8v/d24prsN7Ld8zo6/xsW5H41h29Np7Ftty1wLiDq2XHxWUlE82rj+ELBNTqKoWLOJL+3ts882rodrny/KXFdEqFo13C9F07Z/RCO4dlTnMd4v1tDW2YHnhUpAtMzzsf5JJZ61FeGrkZV49tD8e6Fk+0ZwToiIFLoVgcQlsLxmDiGEEEIIIYSQ5yQ8vBJCCCGEEEIICT08vBJCCCGEEEIICT08vBJCCCGEEEIICT1LFmzK5LrBFlcSqYtFWxgm2V2AMjUXk3YV7RJJd2FyeNIPJAU3MKnZKK1qtFFMI5VWkvEdTCz3I3a5XA8KFCUMiktF011YtwQKhPiOXTfHwwTvSBTrGs9icns6hza3aYs3zI1jgnpPFpOmX/HSl4Dtrnt2g61Sxz5rNGes62YdRVsK+QLYlhfoe0HlpYWFOSiyuIC+4kQx2X1yBkWWttx1h3X9q/vvgTKl+SLYmm0co8OOOBxs/X0oRhYN+F6pjHOpWMR3jo2Ogm14tB9sl/zJG63rfeMPQ5nb77kXbM0qzqXt+1HEKTNol5u77z4oU/s+mGTtyc8D20JFEUKpoUBO0yla1602CoT4vibeFl4cg8INRom/fR22D0XreJ9bVgROkhjjWg3s79lZWxzIxHHuZOMYQ/sUYbn+HvT3vgL6qLRtH4pHMc62oyhcUqrOgG3/1C6wTe63Y/I8hmhxm0eCLV/A50/OPgC2TscW3MkkNkGZ/uF1YBsewTXYcVHkp7wRhdJart0fnoNxo6YIJIYVTZzMaWv1t/29WsX40Grj3w3cCPZrpYb+XwrYRlbgvDEu3reqF+fJ2mGch7UGlhtZd5R1nTC4YVtYxP5JF3rAJnMYt1cMDlnXxSoKgK3ZcCjYOrpQPKyjayPWbcbuj4VFRXhPEYmKGBR+aysCfYoOjXgBkcEIdqsq6Bhmckkcu41rUTQrnbHHRdu/Tu47ADbXxXUym8N4XKzY/hd1MB47ioBQeRHnxcw0itG20ZVFAmJMlaDInoj4Bm+s1dCXKyWcPx0ZO9a2BJ9lHFxLo4qoW4cilpnO2GMQi+FY5vMYg6IR5cyiOPyuvfvA5gTEzRJRfFa5phz+lgD/8koIIYQQQgghJPTw8EoIIYQQQgghJPTw8EoIIYQQQgghJPTw8EoIIYQQQgghJPQsWbBpaOVqsDlKonCjYYsTTJXwFYkCimS0XSXhOo5iAvVAknTbYB1iMUyyd6Noy3R0gK2/pwg2M2+LMrTamDTt+FiPdBpFLJTcZ/EDQiieh4IAkTjeaKL4zkoVE9KdQHJ1Uhm30gwqhKQzKNL1ohNRNGTrw3vAdt8DtnBOpYRJ64k4JoeHF01wRxNssi8XSygGcMutvwDbnon9YJstFcG2EBjfiCLalWqi8MT0nFaPW8A2NrYCbMmkPXfG96NITLuFglD1WhFslTLa4oEQsfEFa6DM3Tt+C7ZWGcUu9hdRHCWTsOs/2ol+t+uuX4MtmsR5EhnGObHoohANzFaD49Rsok+FmjYKKyRiGKNzgf6Oe7gGuC2cO04Sn59JYdyem7aFLDxF72HjGvTjkR5cw2IxHJdGFdsUFzuWawJrlRb649Zde8F2oIi2SNvuD7+Ideg2KA60rksR/lEEMFox2+ejbYwH2nqeSOOzBnpROKe3A0VbStUF67qpiJZlY4qgT0jxHEUc0lNEzAIiPOkU7gNyeRQampjB8d2lxNpYQCkzMTUBZRpTeN+h/ehTZ56GY/nwOAoK5kdsQcfenkEoM63sIQoFRQTJx3okAhuj6ZlxKBNLFcE2U0TRn/EDKKQTj9v9XehAwZl6HeevieGccBTlJW0vEHHsctr88paXXpPkFMHRbAbHOJ6wx7izgOtmWhGwWphDgcv7H9wGNjew304mclCmO4uCqRPj6FdzsxgLG4ooXSko9uTgeBpFuKtYXACbop8praZtzGSwr7t7OsHmKPVoukqsCghE1hsYb4yyz3VdjHHa3sVT5kBa8Y0gsTiuwUuBf3klhBBCCCGEEBJ6eHglhBBCCCGEEBJ6eHglhBBCCCGEEBJ6eHglhBBCCCGEEBJ6lizYZBxMHm4rwkW1sp3UnFREi8olFARoNTABuFZC8aF4IMk7n0VBj74uTA7v6MbE4b4C1s2LYUJ0PWm3c37VMJRpeigcIG0UcvFczNT2fbtRXgSzvh1FsKnQjQnpvqe8MzBOnZ3Y7oSDygFFRVzHtFEM4eiNKN5QyNvjcs01P4YyM1OYKB9W7n/wHrDFFLGaoHDRQrEIZYqVRbDtPYBCAp39KGbSHRi7nt4+KDPzMPrig/eh4NFPfvoTfGcH+kY0ZvteUxGmaTVR2OWGH6Etrvxz2fBov3Wd6cV+PeroDWD7zS+2gq0mOHe2zdlCImkPY0GXmwfbjtt+BbZiHwo5zCvzNd6yy7larKzhXJV3oSksdHSiyEwqi/5iYnY8yxZQTMP1NGEIFHWrLCpiWBXb/5IxrIPU0YekjkKBTgznj+difZNx29b22lBmEXU5xJQ2gi3dVsRLjF3fZHQEykwW7wLbWKwfbKOpw8HWjtj1rdcwji+2MG748xirHB9F0QpZtPkRew0ol1DQI6GIqoSVgubHMZzXlYod90wb271Yxn7dsxcFjyoVHKd0yg6iB3Zh3w+kUARlZGQV2ArDKGIWLyuqMynbP0ePOg6LTOIalnZROMoTXBeqVds2lMF52fKUfVEWx2Q0i/uzfMHeo5TnJqHM9BSKBbUdjCONliK0F8E1MZu014BWXRGSSihxKsSMDmK80YR6ugr2vI4q54d4L879wT7c8/zsppvB5vv28wp5VH+aPKCIzXXh+l3oRB8qTqOY0ey07TOFLhR8zSoCmp1KuXwW14B8p332yObQN9w61mvnDhRMjSpChLWAIFRLEdlsNXEso4owrKPss9KKuKIXmD/tNq6bbWXvuBT4l1dCCCGEEEIIIaGHh1dCCCGEEEIIIaGHh1dCCCGEEEIIIaFnyTmvouRqxny0dQZ+Ur6iE3+LvmFNAWw55UPeUeXju9VS0bpu1DB3JJ3F31WvPxR/Y75i1SjYInHMC6kE8hZXDA3h83dNg62jG39f3638/j0W+H26r3y42mDKgKSymIPmNjAHJ5iOEVc+lt1QPk7c04u5ABUlT69axPyRkT47Z+WVL3sxlLny2p+CLazcesetYKuXMEcvm7LzKc8//xVQxjWYG/Cr3z4Ets485oTUfTs/YLh/AMq0pzAvYrGK41bbjjmjXUn0jWyn3aZcF+YjpbKYA9FZQKft7ED/7+iw/SydQ78+7YzjwbY4i3P/vvt2gs1r2zFob1HJxY1jfklsEudSeQFtbh5jVyRt51eO78N8wpLiP2Em2sTA5DnYH21jx9+aEs9qFWx7PIEFOxz0hWTE9quEq+QeRTGOR5trwebXcf6k4wWwiWfPC8fD3KChPL5zsHAC2OoeajlU5+05u2sa85i6YveDrdNg/6zsx3Y+OPmwdR1xMLbEHVw3tRyoRh1t9dztYPMS9rwoNXA9LBcVrYgjzkNbCCgXMScy1tJ0OQIxVFm7Y1E01hQthK485ucXsnY/1hcw57V/GHMHR448FWz37cc93LYdaDtpyN4/FYtYZmDtUWCLCK47rSbmwRaMvX6UprGv0y30z6Fu3NcVPVxf40fa/l5X/O6X110Ftv37sK5RNU8V97n1QDhrK38riig5gGHGGFznk0p/BPMk21WM98ko9pkJitqIiOcr/Rax36n+Fc7Hvl21CnO8e/twPzN6APOTk0n7nR2dODejSpumpzEX/KTjMWd8cNjO1XYN7lNKc+iPC7MotjBXxP6ORW2H7OtFfR9fOXz4ylrXmcOzwcIixkITsfujVcc2BTV5lgr/8koIIYQQQgghJPTw8EoIIYQQQgghJPTw8EoIIYQQQgghJPTw8EoIIYQQQgghJPQsWbDp1BOfD7Y1mzBBf2LcTk4eGcaE+nWHoqDEYB9+/DhqMPm5XC5a1802CgI4Ebwvl8Xk6lwOBSSiCRRfiQeEqepVTJp+3uEo1jG2bgxsbSWJ3AT+DcH1MYHZKIng0TgOX7uhJFwHEqIjMeWjwyl8vijlmorAQCyKCfteq2hd9yniTy885QX4zpCyczcKAS1OY6L8oasPta7TafS7iQkU99qzay/Ycln0xaC/OyUUZ6oXlQR4ZU4csnYN2Nb2YRJ/PiAyNj2tCIt0o68MrcC2l0s4XxMBDYiUj2ImHUq9zj7ndLDNK+IlU/vt/p5touhEZlERPVHEpWIOzq+RPMa47MCgdT2+ezeUadVQ4CDM+NNKbEljX7YitihDIo0fTE/EUVAm0sJnGUUo0HftuNc/fDSUiXvrwTYzocT2GMZQN43zx2vZgnb1OtYrlcb1JKKssJ0FFPxLdNg+P9+HfZFQBPpKDYxBU/X7wJYbtOdnykPBpmYDY3TUGwabUcRpJud/A7ZkPG9dd3cfCWUibXxnWFGWYPHqKOwS7J+IKP7kYIxbULR7SiWcc6Zp+96QIhzzgtMxNo6uR/Gw73/1K2AbzCp+0LLXmfGdD0OZwTWbwJbqOQRsWYNxrzZvx+i0j/7ZquPaMVtGW6EPRXl6Bses63oFY3sETeIlUGBG21+22xgPHNcWunEMCt+47tI1U8PA3n37wabtrctlWzCokMQ1oCXo8F4M95KZfB5srbo9p/r70F+SEdwbrV0zguWUukXiuFYkAoJN6TTWNaL4hqmjvzdLGDfanXZ9e4ZwzxNxsU2rVqDwbDKF+5lStWhdJxLoezFHWQ+VPX80hvHLa+IciAYETI2LwrC5LO6flgL/8koIIYQQQgghJPTw8EoIIYQQQgghJPTw8EoIIYQQQgghJPTw8EoIIYQQQgghJPQsOVv8+UduANthx6BgU/1wW4wp24lZ8ChFIWIcTHSOKEJA3VlbCMUox2/tRO77+Fa3rQjbKMnJzaadJL32kJVQJp3ApPV6FYVtjKbgEUiSNooojG/Q5il95vtYrlW36+/5WNdITOl/pSfLcyiQsGfXPrCd/MJjrOtaG5PWM5pIVEipLuJY1hqYPJ/M2KIti2W8b8++3WArKPPEqypiEQ074f3A5A4oc2BiFu+LYKL8a159Adj8yjzYbvzFZut6z73jUKanE0UPJrfj+I4M49xZbE/ZhjgKWnX3DIDtiPWHg631SpxfX/nXf7eu62Xs14kiCihIDNvUVESFKrNzYBsOjGdCEXfo7S/gO0PMplEU7fMySbTF7bYOFXqhTErxd8dHf5mZQSGz+aodt6MpFIVpNApgq7dx3FNpnJ+tFparV+24V61WoYznoSCL5+Ea06EIkKRztkDI+AzOw0YUBZsOKOKBuTlcA6Jd9vPbpd1QJhNBf+9Kj4EtlsBxcpt4bzZpi3KNDh4KZeKCAiphRVmWxVP2C07EXjcV3UMxdeU+ZWPU3YNjPpixfep5x66DMhtPQnGmhWmMcUkX/X/NKArA+IHKDfb3QRm3gb5eK6KIS8vFcu26Hbc9QdGoh8dRLOi3990FtpNOwHf2DNq+WCrjGhPHrpbeMdwr+REcUK+liDEFBGwWZ4pQpllWXhpianXcR/iKgFsrIFbV3YeiPL4iTNpo4LxYsWIF2B64b6t1HVf2r0OD6KN9irBTVJl4cVyuJZG0fTSTUQRfNVW3+iCaSiioND9j+6SJ4DqUVvbMWj068hisSjV7TTEe9nU6hUJVjrIP0gTKOtLoy15gXDoy+Kw4aj8tCf7llRBCCCGEEEJI6OHhlRBCCCGEEEJI6OHhlRBCCCGEEEJI6OHhlRBCCCGEEEJI6FmyYFM6i4nruRSKdWQzgUfGMBtX0RQSRxNs0gSJjJ1c7bcx2VoTNwqKKIiIuIp0VETJtzaOfW+ugMnnrofP8nwlE1kRJTFiJ7dHtEp4aPNimFVuROlc106udnwUF0gqdY172GfZBpYzUyhcNLPTFuEZXY8iELMRRSQnpLSa2MZaE0VbduyyBZR+cOX3oMwvbr4ZbI7B8Z0qYf/M7LHFseKKyEdbGd/EYCfYfvnzW8DWLKHY0wPbt1nX1SkUWijO4DsLPSgkMDOJ95YW7X7sKqBoQMvbBrbNm38NtnRHD9i6evut69k2CizVmlivcUXYySQVwYRF9INoQHyh0IP9H40uOfyGgiOPOg1skU4UH4rk7LWikEIhh2gS146oYDy7fysKsszttWPLrkkUkYvHFLGLHMauhCIkZ9ooKlFdtOe/a1C4JJHA+tcq+Pydux8GWy5lv9Pz0TcqikjGTBl9eW17DGzz47Y4x97dD0KZeAv7p5CbAtvwGPryoosCU37BHvfuuCIulUT/CSu+izGu3sQAnMjaYkMxZZ2ORnAsDxlEMZlUGtfgsVW2gM1RLzwdygytPxJsd2/5KthWrsB3Dh52BNgSfbYQZyyDPlBr4HpVL6H/T02gwOPClC3G5LVxTqfzuJ709mLf7pv4DdgGhmxhMLeGdTWKGJFTXQCbZ3AvoIlsppN23RKDWNeSsp6EGU1EtdlAX04GRH6aLezbZAp9O6Ls570W9nd5oWhd1yoogLR65VqwpZX+zmUwBnV24R6k7dox1POw3dEotqm3F58/PY1tOhAQ6fvVffdCmUMUsdjpGWz7xAGMta7YY1DowHrFlTNRMonzzlXOdc0GrrnB406muwBlSpUndw7gX14JIYQQQgghhIQeHl4JIYQQQgghhIQeHl4JIYQQQgghhIQeHl4JIYQQQgghhISeJSuG5DtRpMgoydu1pp3EbJqYqN1sYqJztYKiJy1FoKLZtJOmXRcTjNvttmLDZ9VqKApQq6LAgOvb78h3o1hBvrMAtkK+F2ypBIqBeH6gbg6Kx0QEbXlFwGBuGtvZqNsJ0b6PIg2OYL18D8euI49CK6tWDoCtXrPH0/hY/848ioCFlU5lzNvKP/2UAsIBD9x9N5SZ2rULbBFlKmYUoY9ExB4n08LxjgiKEowGBCtERLrz6AcLNRQSWDO23rre46GIRXEehWO8ZAFsU1VM6q/VbCGU4jyKxDhRFAhoOEo9aiiGE0nY4gt+FH3dJPD5NUW8wFPiTTaB4g65TrtvNSEH36AATJg55MgXgM3EMQZ5MTv+xqKKoJWH9zlpZQzuwz4a32f72nwDfS+fy4HNncR1IZPEcv3d/WDr6bDnf6WmrFct9O22ImZSKaLARiMQHyPBNUFEKg0UuqkocbXk4xrmRGxBmbiDMfuBHTh3OnvxWQsxRegji31bCYhhzS2gMMfqgWPB9vyBN4ItDMQVgbWFMu4hvIYdf9MZjA/RCAr89PegsNm+A0WwrX3eOdb16BHnQBkRjO3tMvpsZx7Xtb51R4OtGrP3f/f/5k4o06zj80ulIthmx/eCLRoQv0mlsK9HVuMaduS6Q8DmRnFfEY8W7OsE+mtMEZyp7RkHmybc5Sp7gUpgzcr0YL0GhlFgMMwM9g6CLRnHxmeS9hqbzuCexFUEj+KKmmtHCmPc2hE7fhWUOTbcXwBbLolrTEcW16JGBJ+X8O02lRaxXqks3hfP4D5ucgZj4b55O5Zs3YH7oMlp9NHSIj6r3Ubbpo1D1nUuhfXyarjnF0XM1SiiuClFsNALzBVHiaGuh/24FPiXV0IIIYQQQgghoYeHV0IIIYQQQgghoYeHV0IIIYQQQgghoWfJOa9XXnU92Lz4LWBbWLB/p11ZnIUySrqHmgc7NYW/+fYCv4nv7sP8pK5ezCNIKr+1rs4XwbZtO368PfgR3RWrV0GZaBx/792Rx3qsXo0fGR5dYecRrF6j5CcqH1fOK79Z9zs7wCaB3Iu28hvzaAz/HSOqvHNgTMnj7cA82HYgn09JM5TubqWuISWn5LzGlJzd1pyd9zO7DfPUVuTwWU4EO6hcx/yGRsQeOyeN+RpJB3MUZqbmwfar2+8B20Ae89nmAh8EX6xjXmwFU0GlPou5faLk48YCzpGOY4BoKLm9M8Ui2LwItj0Ts/NQnIjycfQU3idKzqsYzJWqVrE/SiXb1tVTUB6/vD5Qn+lEv3V97Esv2Kw4xhvfYK5gKodj0K7ix9antj9gXZsczsO+wcPAtmPrBNjqDuYoOVXM+4mN2D7pCProgb27wVat4Ryo1TAfKeoFcoMM5g9Kqggmo6w7+yYx5nR12n20YuUolGk2sS/qLaxrq4m2fDfWo9G050+rtAhlkoJ5tnI4msJAU4nHmSTuK5xALIlH0P+NsganFf9/+WtfDraTzj3Tuu7oxfzlqZ24j4kq9SiWcUxmdm8F20TZ9s/NV14JZXJpzQfQVwYHMI50BNbSXfvRh1tK/buHx8C27ojng008e48yX9wPRWoNjMcLdXynY3DMG3VcKyqBvEBTQf/ZWABTqDHK2plKY652PLCfjCfxvkYZ42y7jfnEnXncJx59tL0P1fYM8TjuqWIxTXNGWecjOFbJhD3uuZyiSaLsmY2P/hJX+vGBh+x5V63hXkM8XBeCOkAiIglFjygSseeAcbCufgT7v6Ts98o17J/gPk5EpNWy54/bxPtaii7SUuBfXgkhhBBCCCGEhB4eXgkhhBBCCCGEhB4eXgkhhBBCCCGEhB4eXgkhhBBCCCGEhJ4lCzb95KZbwVYYXQ8249kJ+r+59SYos2oUxSJ6e1DcaHz/JNhc304oznQXoEwrggnYU4oAwJnHnQi2o49EoY9aIMk4Esdu27V3D9i2bUcxit/e9xuwFTpz1vWrL3wVlDn5sHVgSxj8t4fRoRVgawUEm5yIkqitfHS4LZi8HYmhLVlA0aB0ICHdjyofpAZLePET2NcGlGlEEtGAUIEiQLCyoxtsriI0VFYS5aMdtq9EEtj39SkU4WgWUSCnPFcG26wiwFNs2veOPe9IKDM5M4f3LWA9coq4TqNmixC048pHw5sonFFv4zyPKL6dCvSRcVDgwFPEmaIxnOcRF+eJrwg+TM8UrWvlu/YSSywvwSbFRVXhmXbbnuuuhyINfgJFGvwyjotTQb9yK7aQX1ffaijTnEGxv+o0rgGuIprVrqDI0lzgeVHlY/f1Os6neh2fVa5hm6KRgK9Fsc9GV6M/9g+hmEkG9fPgo/LVNq6tq8dQTDDmoXhgrXU/2CIxFMBpebYAVDaH676vaJKEFd/gGiY+TmzHteOBq4i8OQ7GkVRSEaZ5PooPJQMiXQ/cjXuKhQncezQVsZTyAgr57dvxANgqxh7LuDKnczGcEx0pRUytCwWbDkzZ/ui2sc9qZRR/2rdrL9hE0D8rFXtupmLY/24SxT/nXByTtCKSmMmj2Fk6Zk/EsiLe5voYP8NMq431LVdxbxHJ2yJO9SLGxraLY5xJo2BkVBGzLM7Ze4umIti0WMH9U9vrAptR9hbxGK4L8cACWPMUoSFlnW/VsZwm9DY5ecC6bhr0s2ZUEWdSRKiiigBlrWZXzlVEMJMJfNZiA/txcm4BbEa0DYLdj46DHZRW+mIp8C+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCz5IzZf/o9ReDLdl/KNhqZTvxfvtv74EyQ4MoKhSJ4Dk6ncJk+ZZvJw+vOxzr0DWEife1XkzUPv/cs8CmJd5XA0IHisaHuAZFWxouihpMT6NAwp5dE3YdMtjuyf0o8rH7/u1gizTwnTsnp63r4158LJRZNTYMtrYixhJJYUK3xBXRiqAQgZKonXCwz8JKUREcaNYw4T3bspPW+waxX+f2TINtx24U/Jpp41h2d9tiT5GU4q8+JtN7bXRat4ZCAo0mjpMbEBeZmZzFd1ZQtMG0UUQhk8yArVW32+kkUXHGbWBdE1kUAzGeMg+b9jj5EaxXy1XEC+Lo64kU1i2XyYEtHbC1lb7QYl6YqbfQH1t19JdGy47RnkHBB9fFOOgKjkFtEeddJGn7ciyLy1hxFsVRZg8ookIG2+R66Mu5wpBdpoHiFH4L76vVZ8DW8HD+OwlbhCemCJD0jg6B7ZB1KFY1OYdiVYnAkuJEsEyrimMy2HUE2CSCMc3ksL+3PmTHoaG+ASiTVeJBeMHY4itxIxa32+Qpam0twbV1oBP3KD+66hqwdQ/YgkT9mkhjDcXy4nEldmVxrxFTlNmyAZGowX4U2KyXcd1JR/GdczO4frRbdh/llXWtVUHBpu2/uQtsBx7aBramG4hBcWyjp7V7FNcYyeKYR5IYR1KBPVCXYJs2HobzN8zMLhTBNqz4QlDEyfWVvUwPCleWSxhDXRdtzYDYkI/hUh7asQtsEWXPGRTZFBFZqeyHIznblxtVnNeeIoLktnD9SyrvDApcbhvHPeHqPlwDuvMogBbrxnldrdpiTwsuxohYAtfSch3HbkGx+YqArBM4YsYdjHtVZR+6FJbX7okQQgghhBBCyHMSHl4JIYQQQgghhIQeHl4JIYQQQgghhIQeHl4JIYQQQgghhISeJQs2JRN4zt320H1gKy3agk3GYCZ1W0lqrlSqYHMcFJlJJW3hgHYNBT0WZ/CdU3v3ge36H10PtoWy8ryKndic78Bk6M4uTD7PdqBYwf79E2Dr7x2xrlMdKDh1y7VY1/nt94LNa7XBtmPSFufYX8U2HroRha86O1BMo7MLk8PTmRSWy9rjFE+hGEImg/0TWupxtCl55q5ji/xUsdlywEHjAReFBCotRdBqzvbFaFwRifHxPqOojNVdTJ43RhHWCggXjSuCG64ilOQIvnNmAUU9JDDPjYd1iKdR7KIjgYJKmjhKMAZFY4o4nOD4RhRRhbgi4uQo9TCBMXCUZ0WcJYffUOApPqQJZaQSeeu63cTY3ioeANt8uwi2TE8BbKe++BTreqKGPrVvfhxsfWsx3vgOjovXxjnVElssJtuBgh7T+7BNjRYKNh16NK4VkrY7cm4RBfoK/TgHxEG/rVdwnLr7bOEZ12Cf9Q5gbO/rU/w20gu2Yh3Xir6CfW8yimWmJ1DMJKz4iv8nYhjLU7FALIzgfSaKQkC+snbPzk6CrTJj29JtFMvyBevV3YXCOoXhPrC5Hi5s4xOBfZ1oAnQYz1rKGhNVfDabsn1DWQ4lqhkdrIfXQiGaSGDsSkrMaCXRF/PD2BfVdBFsZR/3tI2q7f89HWugTK8idhRm9k3g/jWuiF8FRYpWrBiEMppQT0kRfnRdHONoQFyrpginPbhjJ9g0MbIJJW73dqN4Wmdnwbrevn0HlNHmxcvPOxFsSYNniK6CvW6mSxgP5opFsPnKPlEbk1LFnmNVZV2uKeJSkQSum422st+L4vz3A/ughQrOzV5FJHcp8C+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCz5IVQ8pzKBxw4w+vBdu+yf3WdaSNCcD33osCA0HRFhERV0n2F8dOAP7JNTdCkUQcE4yPPuZ5YGsFhEVEREpNTBjfuXfaup6bexCf1cAE5onJ3WDbtRvvPfaY51vX/+vdfwFl7rhtC9hcRdSj1MQk+HogiXznXShedcuvMGk9G8OE8XgCE8GjSezvfECwaXTVGJR5xatfB7bngyUcxBSRibYiRlap2/0/X0Jfn2/hGLlxnIrGxb5u1BvWtdNEoYK2QV+MKEIF2U4UDYhGlfGN2XUzyj95acJs6rMUWyQgaBJRnu8rxohaV2y759siTkYRUNGeFVHeqYnIiSL64wfeqYUyNb6FmJYiDOEoS4jjB/rDwzLxFMaMVAHjca6KtvJOO34dexiKzqw9TFFKiwyAqVXHsbvz5xgfZ2ft+Z/OY71q9QrYOrsxbhz5glVg2zW91Tbk0c+GV6LoSVfXENhyWRSTqru2aF9ZEUvxDdZ1/yyKMnYXULCpWUOxp860LXrSrqOYWrOhqN6FlIij+GwSxUaM2PM6m0ahqmwe+7DWboCtJ49icLHA81uLU1DGj+B9tTjO34GB1XivIqi5/shR6/rWm34GZVoG905xJV7WFVGejry9FiViGDOijiJq2MA+23UAxZiKRbvPmg6K1fStw1gwUsDxbRns24VZbFOiYc+n7AiKM9VrOCfCjKus83OLKMLTERDx1ISYgvsKEV1orFrHe4NLs/EVsa00Pmt6Hp9192/3gC2bRqG9ZiO4H0Z/TCjCpA9ux+cPZHD+B/fMg4NYZm4PnsOcGM6x6Rms/+io7X+aAGNTEceqKQKvrnKvp41BR866bikKj1VNmHQJ8C+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCDw+vhBBCCCGEEEJCz5JzXocGMLfm0DHMlzCB34HHIvh75qiSBxGJ4jnaKL+PTqQCH/eOp6DM8PAI2E57yUvAls9gLkpnCj9O/MB991jX23Y8DGUGR8bA1lCSA6NK/st92x6y37dtG5TJjG0E28QE1rWrgLb+hJ2jkclhHsf8JP4uf24cP8I8M4v5NQ0Px6kd+E38gSK62klnKvmDIaVSxny2UgnzZqoV+3f/1Srm5Ghpkx0FzD9NpjHHCp6l5GWmY5iTE1c+NK3ln8aV3Ntgborn45zWcl5F+WC3ViwabIP24XkPc4O0nFGtHu1AOU+pVzSGfRFTcnK056dSGIOSgX40PtY/qeSKhxmvhW3wlJyzWMzuIyem5cJgDPLqRbCN70WNgO332XEpn9oAZRrdmBtUb2MuX096JdgiPrapr2uddZ1MZ6FMU/lwe2dvAWxtF+tRLs9a1yOjmMfreFivm2+8HWzxDNajf6U9doko+t7kBOZJtTzUVZivYE5tdwrX3M6cHdPcGMYqV4klYSWh1L+maExEA3sUX+nrmqIFEo1jbEkmcJ7E4/bzExkl37gD/XNyBtfu2sgo2PpXHAK28WnbPw97wclQpjIzAbad2+4HW7VSBFssavdHp6LH4Cg5hgfG8Z1792AOZiRp90fHAO7D+rqVdyrxzZnHvu1awLVipL/buh4tYF/veADj1OmvAlNo6OrBPMwOxddSgfVvvoR5k2llL9xW1piWi7ZY3J6LiSTueVoearZMz2M9Gi7O6+58AWyja+y2t9u4/yiVi2DbvR/jaqIP9QUixn5eLoNtcvpxf9+RRr+tFFFrZfee3db12nW49rUMbk5byrqjTEU1N3ZlYE6lU9imZh3Xw6XAv7wSQgghhBBCCAk9PLwSQgghhBBCCAk9PLwSQgghhBBCCAk9PLwSQgghhBBCCAk9SxZsmp+ZB9sJx58EtpNOPdW6TiYVIRRFnCmiCM/4RhF7CnzEWEvwrrfwQ8Rz+3eBbR4+OiwyP4vt3BkQaJqYxiT7XD+KWEgShVycBCapt1xb9OEnN/8CyqxaewTYVnSjSEYqgkOaiduCEc0GJlbvLKGwQi6PieCewST1yQUUM+rtHbOua4qYyY033wG2t/3JxWALA7NzKFyi+V6jYSeft5QPvsdTmKwfVxLZ63UU9QgKm0UiOL9EsRklEd/1cCwjiihJOmP7jyYSpSkxacJOGk5AwcqRpQl51Wo4zzVhp1hQPCmCz9faFKyXyGMJUyn1DRRLpVB4ZbkJNsXjGC/bysfnYwnb/xreLJSZmLoXbA/d9Vuw5aM5sGXbdlx9cPPdUCY5hmMyp4ivZNYWwDY2ijF6/5Qdo70Wzp1YAufwwEr0R99gvPRrAVG9CPrGrq3bwXbr7fvBNroJ1wA/b/t33O2BMm4J69/dh8/avQsFCx9axHXzxaefYl0PjuIcqLoYV8PKQB/GiLayLtQ9O+5VUddPTESJU4pAXEcHjlMibq8f9SqKs6QV4T1poe2uW28F25r1KOy0f7+954koMTSTxHUtqohVpRWxs6DQobb2uYrQWU4RNTzpmHVgSwX2Mm4U56/XxlhW34cxI1LGfV1/Jg+2Y9YdZpcpDECZXx3AfWmYKStrru/jujA80G9dJxRxploTxzObUUSzYjhXnKi9wMYTuNdwFCGmWh2flUjjeOZ6cN1pR2yfcWPoQ6kCttOP4bwoK+vmoWtW2c+fxHXCreK8WKxg7D30kEPBtn+fvX60FSEsRzkSVkrKmCt/98wpArhB0alqFZ8VVebOUuBfXgkhhBBCCCGEhB4eXgkhhBBCCCGEhB4eXgkhhBBCCCGEhB4eXgkhhBBCCCGEhJ4lCzZlM5gYP1fCZPbf3Psr67q/vwvKDPT3gq3dxqTvhYUiViQguhFTksVHVqN40oouTAoe33YAbNVKE2z9A4PWdaanAGWiKUw0r9Wxf4aGVoJtcsIW3ZidW8T7hlH1wVHEYypN7A+J2WPX9jFRO6mIKCQVwZrW3Aw+P4IJ6QMjY/Z9SnK+qn0TUtptrL8Y/LefWCA5X9PkSaZRuETT/HGU2RmN2mI4vtKHniLOpAkZRRVhp2gCbZG43c6EIkCgCRlp79QFj2wU91QF3QqFAti0ONIMiGZ5DtZhqeJMrosiDa6rzDkvaFta/4SZhfY+sLWaKCAR1GSYKqIQ08TCzWCbnSyCbTB+GNh6HNtHS3W8Lz6J8ThRx7Hb720D2/ozVoFtzrffsTCBk7NvCMfzyBeg36ayKBAyO2uvCzOKQGI2h2vYxo2jYOsYRVEM49nj5LWx/pPjuMZU57Fcq4nrWrGCa9b4Rnudz+b7ocyBWRTuCisrV6CgVaeDY7ljn93/UzM491seLgy5HPZ1tYb96vm2kEtU+RvE/AwKSZUr6P+NNj4/atCWz9n7uKlJ9M/9VfQLX1mLBvpQhMoJ7OMWigtQJpnFPit04pxIKIKgzaC4orKGVZt4X6uC5bI+ljtkxSDYhgftdu7bj0JYczM4V8NMJouiPJ4ipNUMrMOxOO4r4nGcT8H9zSMoAq+BYYnFlyYO2VTOC04M35npxLqVy7bQaVrZx2lxOxZDH+1KY5syBXvNyqVwbR3o6wTbrMG5ksmg3/b32/5YLqHQm6JBKoo2m3R0FsCW78D+KC0WrevZWRRvNBEUx1oK/MsrIYQQQgghhJDQw8MrIYQQQgghhJDQw8MrIYQQQgghhJDQw8MrIYQQQgghhJDQs2TBpqSSEN1sFMF2660/s65NG5P4OzKY2NtuK2ICdUxYjgXO26vGVkCZw0/YBLa1K1HEqbhvP9gmFzChOJG2hQLW9mBy/sxMBWxHrD8cbIcdsR5s3/6Pr1vXMcFk8bYihtBqoc24SsZ1yu7bqKIiNLZ6Ddim923FZykiP2lFSGHjxnXWdaOG/bNiCAU8wkpPD4pMRAST4j3PFudouzhvNMGgRgN93Yliprzj2P7v+/j8loe2qK8JISCaYIJvbJ/S2uRoilMKii6S+AHVKVfxYd/DPosqQguaoFI7YGv7WCaitHupIk5an0UCAk2aOJM2dmFmoaII3JUmwebVbeGfYuVhKOMr/t6Zwb6tLe4AW7bb7u9IDsWZ4ikUgehoo9hFZAAFSLr6UISno9P2hb1bi1DGEfSD+SlFPMbFNWZg0BZe2jeOQi5zsyioZOIoltKP1Zdk0q6/5tvNJvrjgW0o6pGN4wvWHb0abJWAiNPsAo5vPLl8RMs6ujDe1xXBna7+gB8oIjezUygM2WjhWMYS6NvBYn4b+7Dt4fMX6yjskk3j2t2o4b6i3rB9tqW801NsxuCcqJSwzzoCYi8dHThX63W8b3YO25TLofikExD8c1z0xUQM96VJZS4lFFHDsUPGwFav2e/4+c8fgDL3bpvGF4SYVBr3phEHbfWW7X9JZf+RTuJ9juDanFDEniSwN+ro7IYijRIKj7ViyhxLYtyrK3vraNSubxunmLTq6FcHGhjvu0dGwNY+YPtCWtknpvLYF32duI+enduL7+wMxBJFaLXiYqPWD+HZyVfmda2GYli1qm3rVoSelKPfkuBfXgkhhBBCCCGEhB4eXgkhhBBCCCGEhB4eXgkhhBBCCCGEhB4eXgkhhBBCCCGEhJ4lCzbVlGR5ieDZ9yXnnm9d+y0UmYgqGbq+IjJjFCGUaMxOmk4pYgiTRRQDKRe3gW2+jvVwUpihv/Xundb13JYZKLNmNQoxveCQQ8HWqmMieDphiyaYtpL4rNwXieLw+YogTj0gDBPzsN2rRlGwqVGZA9umDhRDuONXvwHbxB5b7KleVcRGaii2EFY6OlA4w/eUzjb2nGi2cCxLinhVTBEliCo2EP5R9E7iyrx0FXEgXxMRMsoDAyJRjtFUl1BcQMNXBI+Cc98o/6bmG0WYqo7iC21l7vgB8SSJKEJMYNEFlYxSMqPEjERATCqiCOTEYksOv6GgXkZxJieKsTCet2NVZ0YRB9qJcTvfh2PX7p3Hd8ZtcY7hbhTG2z+OdV3cjgIem0ZQ3C+XwzFeMWr72twE1mvnA3hfvaTM6wyupYm0vWYNDKMAyeR+FP5o+hhXRZljjti+3FFAoZ7Va7vANrNjH9jcNvp7aR6FPiYP2GJPTa8IZXp6C2ALK7EUztdUB4rOdOfs+BWrY9/E0xhbSgtKPPAwFqZTtkCLp4hpes0i2BIZfH48hvWPRnFuNgPxt9XG2GuUdUHRnBGjiOF4AVM8hmIykkCfLS7gHqKurLmdBXv9jilrZETpi5oiIDQ1WwbbQgXLlat2vPnp5ofwWcq2OswkothvmQz6S3CfElU2KlFFkNLzcOxcV/G1QD3KZYyz9RKKzWn1SCnzuqWcUdqB80JtEee1JvqV7y6ATfPlds1eA6IJRVRMEbkycax/vkMRHwvsSQrdffiskrLeRrDPGmVcd+o1pW8DvqEJBWrr1VLgX14JIYQQQgghhIQeHl4JIYQQQgghhIQeHl4JIYQQQgghhIQeHl4JIYQQQgghhISeJSuGZHOYKNyp5Nnm+9ZZ180mJjWnlDNzwlESkdNK0nHGLuc3UPymXFYStTMouNO/tgC2tRkUxdi+62Hb4GByeDyDCdjjB/aCracXRTGCtlYdk6GbTRQbqVZR+KCpiAG1m7YqQCyFCfYDw5i8vefAFNim9j4MtkYF6/bw/Xdb1z09SnJ4F4qShBVH8VlHUaNotW1/bzRRPKytiF1EFHEyTVTCBMSNWi4KCzRdTJx3FJEiRxOtUBLqI4Fyvovt1lLuldR8QWkRERN4p6cJJTloi8TwDfGoIvQBz1JsimiA5yniUlpDFTGpSEDkSivjthVxrBBTn0fBkWgS43szMFaJPAr8DB02DLa20h9uUhHvWrRjeWkaVU8qRbTVD+Bc/O2dKOTX04HLYiSes65POA1j6NjqAbB192H/dPTjWpHusfsoEhmEMrPjq8E2Pb8DbH4S1x1pB+aFj+ttIoM2B6sq+Zwi/uajiE0lIGLjRjBWpVK4xoeVSkWJLdEcmHJZe12OpzFoZJM4Jzo7sV8rJfTZSslelyuKUEq7gbZ8ogdsqTi2yVX2bLGYPQ8Typ894klcw5xgHBSRTE6ZXwGTq4hKJtJ4X0cB5+H8PPpiORB/O7qxL2qKMND23Sha+dBvUcRsoBv3lwOjgbpFcHx7O/NgCzNZRWgopqz0wVFPKaKGlQruVaPKPiiRVOJlQKhVLaP4aH2xCLaB/pVgayjCToWs3YZ4n3JmUTY4bcH5pPl3OmeLocaVeKxtqtrKnq23D+NSwrfnT1QRRUsqcckYrH8mg89Pa/UNjGe9jvFMsy0F/uWVEEIIIYQQQkjo4eGVEEIIIYQQQkjo4eGVEEIIIYQQQkjoWXLOa62MuUHi49k37ti/hZ6awnzI7Q/sBltK+bhvorMAtt5+Oz90uLcTymi5gj2dmOPgKb9Pb9Txo9f9/XY+w4jyAfkDk5Ng27btQbCNtTBvKZgXXC5jn9VqmH9aWsTcXi3n1WsFPn6czEKZ++/rBVuriTkg/f2Y1zVy5OFYrs8u19uHOVwppR5hxVfyMJtK/wTzWVvKB9m1ftU+iu0rCRROIOlByxFJKfkfkRiW85R8WS33M9h2J6LkNml5L8o8TCj1DdJoYJ+5Sl2jyvO1/gi2ScvDr9Uw70L7oLaWu6PVw23Z74AcWBFJpZSEwhAzqOSc1ZLYRzGx+8jEFD/owv5uLWD+V20a67HwoJ2Hlqhg/k1HE+O9G8d6NA3ORd/DPLqFKdsny0re+prVGEObyrye34d5dJGK3dBUDuu6evVRYBsYwXVzoYF+NTNj5wH6LcWPEziWRx0/huU8XCN9UXKMXXuMHcF3OpEn94H6Z4L9e9DWLGKb8n32mKfSbSjTiS4r3d04vypV7NdiIJ97YQ5zzRbQxSTqY2z01Vx/JRfft23aXz00XYVoDNtU9xQth8A0ifvYZ25tHmxeHfvHU3L5ihW7XEtp4rySX7x7B3ZkcQ41SVpVfOBgp73n2bhqBMoorww1ccVfIlp+ctQe96XuD7R9VkLLyw7sB3xfyadXnt+Zx4mnuK2kErgG+AGnyeSwTFvZ2zUUH9V0STIJu8/iSn5xtYbPSuUx37rewv6oB+oWN9ivUWVvF4lijFOmsNTqOHbFor1WaPu4RELJlV0C/MsrIYQQQgghhJDQw8MrIYQQQgghhJDQw8MrIYQQQgghhJDQw8MrIYQQQgghhJDQs2TBJl8RnokoZ99Y20747YhjEu+vbrsZbJNTs2Bz4piwfNxxz7euX3jisVBmcREFj+799e1gqyrCMNv24geod+7ebV3XlaRpYxRxl44+sJVKyge0F+y2V0soiKHklEssitbOPCaRD6+2RaK6eoagTP8wCioNH3ME2Lo7UGRJE+EB4RxHEeoxy+ffTtptFJAIijOJKAnpisBBTBGxEFUECQn2qyZ6YBQFgraSKK/VQxPrcMRuQzSKif4Rrf6K4JEmCGUCIg1aAr/WzqUKO8UDgg+aqJP2fK0vVMEBRXgpk7TnoTaWWv+EmV63C2zNIRSLmN5fDFyj2JybQdGsWAvF9yLjOAap+cAYRBThKxfrlT0EY2PPWvTHqFIPmS5al5M7sU3eAq4L/auVNinCOemmHZPnF1EUJu7tBVvPAAroDXZvwro1xq3rfeNY/7QiQNLVh33rNlDAIxZXfHk2IJS2iGPZbuB8CiteHAW52gncfzT9gFibi3ubVCf2V6EP+7Urgv3TXbPjZXEeRbuKs+hj9aoS711FLEVZl33XfmejjrFXi9tRRSiw3MA9Yb1iPy+uCKnlIyjo5kdQtLLdxnYms7YvppS9ZSGhiLBJAWxHHIV7oPVHopja2CGHWNfHnYDxYf8ECmyGmXQC135tnTQBgS9tz9DRgTFaE2zS1smgEJBRBJs60zgvcgn0DaPE43pT2Qf5tg/5bZzX+SwKQilbHlH0wqQaEHmMt7HP6nVcN90Iqn7NLuI5ozJnz5VCAePZXBXPHqm0ssc02I8L8+jf5cBZKa2MiWZbCsvn9EAIIYQQQggh5DkLD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkKPYzQFFUIIIYQQQgghJETwL6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkIPD6+EEEIIIYQQQkLPsjm8Oo6zpP82b978lN9Vq9Xksssue1qe9XSxefNmcRxH/uu//utxy15yySUyNjb2P1+p5yjPdV98okxMTMhll10md9999zNdlcdl9+7d4jiOfPzjH3/csl/72tfEcRzZvXv3QRvn3lPn2T6/HMeR97znPX+w95Gnn2e7jz7dcA0g/xNwHi6d6667Ti677LJnuhpPG7FnugJLZcuWLdb1hz70IbnpppvkxhtvtOybNm16yu+q1Wpy+eWXi4jIaaed9pSf94fm7//+7+W9733vM12NZy30xSfGxMSEXH755TI2NiZHH330M12dp43zzjtPtmzZIkNDQ890VZ5VcH6RsEMffWJwDSD/E3AeLp3rrrtOPvOZzzxrDrDL5vB6wgknWNd9fX0SiUTATkTWrl37TFfhWQ19kYg8Mu59fX3PdDWedXB+PXXq9bqkUilxHOeZrsqzEvooEeEa8EzDefjcZdn8bHgptFotueKKK2TDhg2STCalr69P3vzmN8vMzIxV7sYbb5TTTjtNenp6JJ1Oy8qVK+XVr3611Go12b1798FgdPnllx/82cEll1zyP1r3//zP/5Tjjz9eOjs7JZPJyJo1a+Qtb3kLlGu32/K3f/u3Mjw8LB0dHXLWWWfJ1q1brTLaz1Ye/anaF77wBVm3bp0kk0nZtGmTfPvb3/6fbNZzluXsi5/5zGfkRS96kfT390s2m5UjjjhCPvaxj0m73bbKjY2NqXU57bTTDv7L5ObNm+UFL3iBiIi8+c1vPtiG3/3Xv6uuukpOPPFEyWQyks/n5eyzz4Z/Ub3sssvEcRy599575Y/+6I+ks7NTuru75S/+4i/EdV3ZunWrnHPOOZLP52VsbEw+9rGPQb327t0rb3zjG6W/v1+SyaRs3LhR/umf/kl834eyvu/Lhz/8YVm5cqWkUik59thj5Wc/+5lVRvvJmIYxRj772c/K0UcfLel0Wrq6uuTCCy+UnTt3/t77yGOznOfXo/z7v/+7bNy4UTKZjBx11FFyzTXXQJlf/OIXcuaZZ0o+n5dMJiMnnXSSXHvttVaZR/3wxz/+sbzlLW+Rvr4+yWQy0mw2ZWZmRt7+9rfLihUrDvbTySefLD/96U+tZ/z0pz+VM888Uzo6OiSTycjJJ58M/k6eGMvZR7kGcA14trCc56Hv+/LpT3/6oN8UCgU54YQT5KqrrjpY5jvf+Y68+MUvlqGhIUmn07Jx40Z5//vfL9Vq9WCZSy65RD7zmc+IiP1T68fz21BjlilvetObTDabPXjteZ4555xzTDabNZdffrn5yU9+Yr785S+bkZERs2nTJlOr1YwxxuzatcukUilz9tlnmyuvvNJs3rzZfOMb3zAXXXSRWVhYMI1Gw9xwww1GRMxb3/pWs2XLFrNlyxazY8eO31ufU0891TzZ7rz11luN4zjmda97nbnuuuvMjTfeaL761a+aiy666GCZm266yYiIGRsbM3/8x39srr32WvOtb33LrFy50hx66KHGdV2rb1atWmW9Q0TMihUrzKZNm8y3vvUtc9VVV5lzzjnHiIj5z//8zydVb/IIzyZfNMaYP//zPzef+9znzA033GBuvPFG84lPfML09vaaN7/5zVa5VatWmTe96U3q+0899VRjjDGLi4vmq1/9qhER83d/93cH27Bv3z5jjDHf+MY3jIiYF7/4xebKK6803/nOd8zzn/98k0gkzC233HLwmZdeeqkREbN+/XrzoQ99yPzkJz8xf/3Xf21ExLznPe8xGzZsMP/8z/9sfvKTn5g3v/nNRkTM9773vYP3T09Pm5GREdPX12c+//nPmxtuuMG85z3vMSJi3vWudx0st2vXroNz5YUvfKH53ve+Z/7zP//TvOAFLzDxeNzceuutB8s+2q5du3YdtGlz70/+5E9MPB43f/mXf2luuOEG881vftNs2LDBDAwMmMnJySc6PM85nm3z69E4ftxxx5nvfve75rrrrjOnnXaaicVi5uGHHz5YbvPmzSYej5vnP//55jvf+Y658sorzYtf/GLjOI759re/fbDco344MjJi3v72t5vrr7/e/Nd//ZdxXde85CUvMX19feaLX/yi2bx5s7nyyivNBz/4Qev+f//3fzeO45hXvvKV5vvf/765+uqrzfnnn2+i0aj56U9/+qTb+Vzi2eajXAO4BixHnm3z8KKLLjKO45i3ve1t5oc//KG5/vrrzYc//GHzqU996mCZD33oQ+YTn/iEufbaa83mzZvN5z//ebN69Wpz+umnHyyzY8cOc+GFFxoROVj3LVu2mEaj8aTr9kzzrDm8futb34JgZYwxd955pxER89nPftYYY8x//dd/GRExd99992M+e2ZmxoiIufTSS5dcnzPOOMNEo9En1oj/x8c//nEjIqZYLD5mmUcPry996Ust+3e/+92DDvkoj3V4TafTVqB0Xdds2LDBHHLIIU+q3uQRnk2+GMTzPNNut83Xv/51E41Gzfz8/MH/t5SNizH/3e6vfvWr8Ozh4WFzxBFHGM/zDtrL5bLp7+83J5100kHboxuXf/qnf7KecfTRRxsRMd///vcP2trttunr6zMXXHDBQdv73/9+IyLm9ttvt+5/17veZRzHMVu3bjXG/PfGZXh42NTr9YPlSqWS6e7uNmedddZB21I2Llu2bFHrvW/fPpNOp81f//VfB7uPBHi2zS8RMQMDA6ZUKh20TU5OmkgkYj7ykY8ctJ1wwgmmv7/flMvlgzbXdc3hhx9uRkdHje/7xpj/9sOLL74Y3pXL5cz73ve+x6xLtVo13d3d5mUve5ll9zzPHHXUUea444570u18LvFs89HfhWvAI3ANCD/Ppnn485//3IiI+du//dsl3+P7vmm32+bmm282ImLuueeeg//v3e9+91M6SIeNZ83Phq+55hopFAryspe9TFzXPfjf0UcfLYODgwcVwo4++mhJJBLy9re/Xf7t3/7tafvZxs9+9jNxXfdJ3fvoT2pe85rXyHe/+10ZHx9/zLIvf/nLresjjzxSRET27NnzuO8588wzZWBg4OB1NBqV1772tbJjxw7Zv3//k6k6UVjOvigi8pvf/EZe/vKXS09Pj0SjUYnH43LxxReL53mybdu2p6WOIiJbt26ViYkJueiiiyQS+e9QlMvl5NWvfrXcdtttUqvVrHvOP/9863rjxo3iOI6ce+65B22xWEwOOeQQa07ceOONsmnTJjnuuOOs+y+55BIxxoDAwwUXXCCpVOrgdT6fl5e97GXy85//XDzPW3Ibr7nmGnEcR974xjdavjA4OChHHXXUslUufCZZ7vNLROT000+XfD5/8HpgYED6+/sP+my1WpXbb79dLrzwQsnlcgfLRaNRueiii2T//v2QLvLqV78a3nPcccfJ1772Nbniiivktttug5993nrrrTI/Py9vetObrL70fV/OOeccufPOO62fn5Glsdx9lGsA14BnA8t5Hl5//fUiIvLud7/795bbuXOnvOENb5DBwcGDc/XUU08VEZEHH3zwSb17OfCsObxOTU1JsViURCIh8Xjc+m9yclJmZ2dF5BExo5/+9KfS398v7373u2Xt2rWydu1a+dSnPvWM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",
      "text/plain": [
       "<Figure size 1200x500 with 10 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def affichage(d_train, l_train, d_test, l_test):\n",
    "    long, large = 5,2\n",
    "\n",
    "    with open(\"data/cifar-10-batches-py/batches.meta\", 'rb') as file:\n",
    "        batch_data = pickle.load(file, encoding='bytes')\n",
    "    liste_names= np.array(batch_data[b'label_names'])\n",
    "    fig, axes = plt.subplots(large, long, figsize=(12, 5))\n",
    "    fig.subplots_adjust(hspace=0.5)\n",
    "    for i in range(len(l_train)):\n",
    "        im = np.array(np.reshape(d_train[i, 0:3072], (32, 32, 3), order='F'), dtype=np.int64)\n",
    "        im = np.transpose(im, (1, 0, 2))\n",
    "        name=liste_names[l_train[i]]\n",
    "        axes[i // long, i % long].imshow(im)\n",
    "        axes[i // long, i % long].set_title(f\"Train : {name.decode('utf-8')}\")\n",
    "        axes[i // long, i % long].axis('off')\n",
    "    for i in range(len(l_test)):\n",
    "        im = np.array(np.reshape(d_test[i, 0:3072], (32, 32, 3), order='F'), dtype=np.int64)\n",
    "        im = np.transpose(im, (1, 0, 2))\n",
    "        j = i + len(l_train)\n",
    "        name=liste_names[l_test[i]]\n",
    "        axes[j // long, j % long].imshow(im)\n",
    "        axes[j // long, j % long].set_title(f\"Test :  {name.decode('utf-8')}\")\n",
    "        axes[j // long, j % long].axis('off')    \n",
    "    plt.show()\n",
    "\n",
    "if __name__ == \"__main__\":\n",
    "    d, l = read_cifar(\"data/cifar-10-batches-py\")\n",
    "    d_1, l_1, d_2, l_2 = split_dataset(d[:10,:], l[:10], 0.5)\n",
    "    affichage(d_1, l_1, d_2, l_2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h2>Classification par les k Plus Proches Voisins</h2>\n",
    "<p>Dans cette section, nous allons développer un algorithme de classification en utilisant la méthode des k plus proches voisins, choisis en fonction d'une distance euclidienne.</p>\n",
    "<p>Pour ce faire, nous commençons par écrire la fonction de calcul de distance. Cette fonction prend en entrée les images d'entraînement et de test, et pour chaque image de test, elle calcule sa distance par rapport à chaque image d'entraînement. En plaçant les résultats dans une matrice, nous obtenons une image de test associée à chaque ligne et une image d'entraînement associée à chaque colonne.</p>\n",
    "<p>Pour une base de données composée de N images d'entraînement et M images de test, la matrice de distances en sortie est la suivante :</p>\n",
    "<table>\n",
    " <thead>\n",
    "   <tr>\n",
    "    <th align=\"center\"><b></b></th>\n",
    "    <th align=\"center\"><b>Image entrainement 1</b></th>\n",
    "    <th align=\"center\"><b>...</b></th>\n",
    "    <th align=\"center\"><b>Image entrainement n</b></th>\n",
    "    <th align=\"center\"><b>...</b></th>\n",
    "    <th align=\"center\"><b>Image entrainement N</b></th>\n",
    " </tr>\n",
    "</thead>\n",
    "<tbody>\n",
    "  <tr>\n",
    "    <th align=\"center\"><b>Image test 1</b></th>\n",
    "    <td align=\"center\">dist(im_e1,im_t1)</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">dist(im_en,im_t1)</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">dist(im_eN,im_t1)</td>\n",
    " </tr>\n",
    " <tr>\n",
    "    <th align=\"center\"><b>...</b></th>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    " </tr>\n",
    " <tr>\n",
    "    <th align=\"center\"><b>Image test m</b></th>\n",
    "    <td align=\"center\">dist(im_e1,im_tm)</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">dist(im_en,im_tm)</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">dist(im_eN,im_tm)</td>\n",
    " </tr>\n",
    " <tr>\n",
    "    <th align=\"center\"><b>...</b></th>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">...</td>\n",
    " </tr>\n",
    " <tr>\n",
    "    <th align=\"center\"><b>Image test M</b></th>\n",
    "    <td align=\"center\">dist(im_e1,im_tM)</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">dist(im_en,im_tM)</td>\n",
    "    <td align=\"center\">...</td>\n",
    "    <td align=\"center\">dist(im_eN,im_tM)</td>\n",
    " </tr>\n",
    "</tbody>\n",
    "</table>\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "def distance_matrix(data_train, data_test):\n",
    "    dist_mat=[]\n",
    "    for image_test in data_test:\n",
    "        dist_mat.append([])\n",
    "        for image_train in data_train:\n",
    "            dist_mat[-1].append(np.sum(np.square(image_train-image_test)))\n",
    "    return(np.array(dist_mat))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Avec cette matrice de distances, nous allons rechercher pour chaque ligne (image de test) les k plus petites valeurs de distance et récupérer les libellés des images d'entraînement associés à ces valeurs. Enfin, nous comptons les libellés les plus fréquents dans cette liste pour associer un libellé à l'image de test.</p>\n",
    "<p>La fonction <code>knn_predict</code> prend donc en entrée la matrice de distances, la liste des libellés des images d'entraînement et le nombre k de plus proches voisins considéré, et renvoie en sortie le libellé associé.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "def knn_predict(dist, labels_train, k):\n",
    "    resultat=[]\n",
    "    for image_test in dist:\n",
    "        k_max = np.argpartition(image_test, k)[:k]\n",
    "        val, count = np.unique(labels_train[k_max], return_counts=True)\n",
    "        indexe = np.argmax(count)\n",
    "        resultat.append(val[indexe])\n",
    "    return (resultat)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Une dernière fonction va appeler les deux dernières fonctions et comparer les résultats du modèle avec les vrais libellés des images de test. En sortie, nous obtiendrons le taux de réussite du modèle, c'est-à-dire le rapport entre le nombre de classes correctement attribuées et le nombre total de classes testées.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [],
   "source": [
    "def evaluate_knn(data_train, labels_train, data_test, labels_test, k):\n",
    "    dist_matrice = distance_matrix(data_train, data_test)\n",
    "    res = knn_predict(dist_matrice, labels_train, k)\n",
    "    return(np.sum(labels_test == res) / len(labels_test))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Pour visualiser ce modèle, nous traçons les taux de réussite en fonction du nombre de k voisins choisis.</p>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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v0BERFT/1IvbLxQVFSE5ORmRkZF65ZGRkdi7d2+l2xQWFla414SNjQ0OHjxY5dBjYWEh8vPz9R5ERERkvkyW3OTk5ECj0ejuXFrGw8MDWVlZlW7Tu3dvLF26FMnJyRBC4PDhw0hMTERxcTFycnIq3SYuLg5OTk66h4+Pj+T7QkRERHWHyde5KT8jWghR5Szpd955B3379kXHjh1hZWWF/v37Y+TIkQCqviY+NjYWeXl5ukdGRoak8RMREVHdYrLkxtXVFXK5vMIoTXZ2doXRnDI2NjZITEzE7du3ceHCBajVavj5+cHBwQGurq6VbqNUKuHo6Kj3ICIiIvNlsuRGoVAgJCQESUlJeuVJSUmIiIh44LZWVlZo3Lgx5HI5vv32W/zrX/+S5NIxIiIiqv9Meil4TEwMhg0bhtDQUISHh2Px4sVQq9WIjo4GUHpK6fLly/jyyy8BAKdPn8bBgwcRFhaG69evY86cOfjjjz/wxRdfmHI3iIiIqA4xaXIzePBg5ObmYubMmcjMzERQUBA2b94MlUoFAMjMzIRardbV12g0mD17Nk6dOgUrKyt0794de/fuhZ+fn4n2gIiIiOoak65zYwpc54aIiKj+qRfr3BARERHVBiY3REREZFaY3BAREZFZYXJDREREZoXJDREREZkVJjdERERkVpjcEBERkVlhckNERERmhckNERERmRUmN0RERGRWmNwQERGRWWFyQ0RERGaFyQ0RERGZFSY3REREZFaY3BAREZFZYXJDREREZoXJDREREZkVJjdERERkVpjcEBERkVlhckNERERmhckNERERmRUmN0RERGRWmNwQERGRWWFyQ0RERGaFyQ0RERGZFSY3REREZFZMntzEx8fD398f1tbWCAkJwe7dux9Yf9WqVQgODoatrS28vLzw4osvIjc39xFFS0RERHWdSZOb1atXY8KECZg6dSpSUlLQpUsX9O3bF2q1utL6e/bswfDhwzF69GicOHECa9aswaFDhzBmzJhHHDkRERHVVSZNbubMmYPRo0djzJgxCAgIwLx58+Dj44OEhIRK6+/fvx9+fn4YN24c/P390blzZ7zyyis4fPjwI46ciIiI6iqTJTdFRUVITk5GZGSkXnlkZCT27t1b6TYRERG4dOkSNm/eDCEErly5grVr1+Kpp56qsp/CwkLk5+frPYiIiMh8mSy5ycnJgUajgYeHh165h4cHsrKyKt0mIiICq1atwuDBg6FQKODp6QlnZ2d89tlnVfYTFxcHJycn3cPHx0fS/SAiIqK6xeQTimUymd5zIUSFsjInT57EuHHj8O677yI5ORm//PIL0tPTER0dXWX7sbGxyMvL0z0yMjIkjZ+IiIjqFktTdezq6gq5XF5hlCY7O7vCaE6ZuLg4dOrUCZMnTwYAtGnTBnZ2dujSpQvef/99eHl5VdhGqVRCqVRKvwNERERUJ5ls5EahUCAkJARJSUl65UlJSYiIiKh0m9u3b8PCQj9kuVwOoHTEh4iIiMikp6ViYmKwdOlSJCYmIi0tDRMnToRardadZoqNjcXw4cN19fv164fvv/8eCQkJOH/+PH7//XeMGzcO//d//wdvb29T7QYRERHVISY7LQUAgwcPRm5uLmbOnInMzEwEBQVh8+bNUKlUAIDMzEy9NW9GjhyJgoICLFiwAG+88QacnZ3Ro0cPfPTRR6baBSIiIqpjZOIfdj4nPz8fTk5OyMvLg6Ojo6nDISIiIgMY8/1t8quliIiIiKTE5IaIiIjMCpMbIiIiMitMboiIiMisMLkhIiIis8LkhoiIiMwKkxsiIiIyK0xuiIiIyKwwuSEiIiKzwuSGiIiIzAqTGyIiIjIrTG6IiIjIrDC5ISIiIrPC5IaIiIjMCpMbIiIiMitMboiIiMisWFZno19//RW//vorsrOzodVq9V5LTEyUJDAiIiKi6jA6uZkxYwZmzpyJ0NBQeHl5QSaT1UZcRERERNVidHKzcOFCrFixAsOGDauNeIiIiIhqxOg5N0VFRYiIiKiNWIiIiIhqzOjkZsyYMfj6669rIxYiIiKiGjP6tNTdu3exePFibNu2DW3atIGVlZXe63PmzJEsOCIiIiJjGZ3cHDt2DG3btgUA/PHHH3qvcXIxERERmZrRyc327dtrIw4iIiIiSdRoEb9Lly7h8uXLUsVCREREVGNGJzdarRYzZ86Ek5MTVCoVfH194ezsjPfee6/Cgn5EREREj5rRyc3UqVOxYMECzJo1CykpKThy5Ag+/PBDfPbZZ3jnnXeMDiA+Ph7+/v6wtrZGSEgIdu/eXWXdkSNHQiaTVXgEBgYa3S8RERGZJ5kQQhizgbe3NxYuXIinn35ar/zHH3/Eq6++atRpqtWrV2PYsGGIj49Hp06dsGjRIixduhQnT56Er69vhfp5eXm4c+eO7nlJSQmCg4Px+uuvY/r06Qb1mZ+fDycnJ+Tl5cHR0dHgWImIiMh0jPn+Nnrk5tq1a2jVqlWF8latWuHatWtGtTVnzhyMHj0aY8aMQUBAAObNmwcfHx8kJCRUWt/JyQmenp66x+HDh3H9+nW8+OKLxu4GERERmSmjk5vg4GAsWLCgQvmCBQsQHBxscDtFRUVITk5GZGSkXnlkZCT27t1rUBvLli1Dr169oFKpqqxTWFiI/Px8vQcRERGZL6MvBf/444/x1FNPYdu2bQgPD4dMJsPevXuRkZGBzZs3G9xOTk4ONBoNPDw89Mo9PDyQlZX10O0zMzPx888/P3S15Li4OMyYMcPguIiIiKh+M3rkplu3bjh9+jQGDBiAGzdu4Nq1axg4cCBOnTqFLl26GB1A+YX/hBAGLQa4YsUKODs7Iyoq6oH1YmNjkZeXp3tkZGQYHSMRERHVH0aP3AClk4o/+OCDGnXs6uoKuVxeYZQmOzu7wmhOeUIIJCYmYtiwYVAoFA+sq1QqoVQqaxQrERER1R8GJTfHjh1DUFAQLCwscOzYsQfWbdOmjUEdKxQKhISEICkpCQMGDNCVJyUloX///g/cdufOnTh79ixGjx5tUF9ERET0z2FQctO2bVtkZWXB3d0dbdu2hUwmQ2VXkMtkMmg0GoM7j4mJwbBhwxAaGorw8HAsXrwYarUa0dHRAEpPKV2+fBlffvml3nbLli1DWFgYgoKCDO6LiIiI/hkMSm7S09Ph5uam+1kqgwcPRm5uLmbOnInMzEwEBQVh8+bNuqufMjMzoVar9bbJy8vDunXrMH/+fMniICIiIvNh9CJ+u3btQkREBCwt9fOikpIS7N27F127dpU0QKlxET8iIqL6p1YX8evevXuli/Xl5eWhe/fuxjZHREREJCmjk5uqLtXOzc2FnZ2dJEERERERVZfBl4IPHDgQQOmk4ZEjR+pdXq3RaHDs2DFERERIHyERERGREQxObpycnACUjtw4ODjAxsZG95pCoUDHjh3x0ksvSR8hERERkREMTm6WL18OAPDz88OkSZN4CoqIiIjqJKOvlqrveLUUERFR/WPM93e1br+wdu1afPfdd1Cr1SgqKtJ77ciRI9VpkoiIiEgSRl8t9emnn+LFF1+Eu7s7UlJS8H//939wcXHB+fPn0bdv39qIkYiIiMhgRic38fHxWLx4MRYsWACFQoE333wTSUlJGDduHPLy8mojRiIiIiKDGZ3cqNVq3SXfNjY2KCgoAAAMGzYM33zzjbTRERERERnJ6OTG09MTubm5AACVSoX9+/cDKL3n1D9sbjIRERHVQUYnNz169MBPP/0EABg9ejQmTpyIJ554AoMHD8aAAQMkD5CIiIjIGEZfCq7VaqHVanU3zvzuu++wZ88eNGvWDNHR0VAoFLUSqFR4KTgREVH9Y8z3N9e5ISIiojqvVu8Kvnz5cqxZs6ZC+Zo1a/DFF18Y2xwRERGRpIxObmbNmgVXV9cK5e7u7vjwww8lCYqIiIiouoxObi5evAh/f/8K5SqVCmq1WpKgiIiIiKrL6OTG3d0dx44dq1B+9OhRuLi4SBIUERERUXUZndwMGTIE48aNw/bt26HRaKDRaPDbb79h/PjxGDJkSG3ESERERGQwo2+c+f777+PixYvo2bOn7nJwrVaL4cOHc84NERERmVy1LwU/ffo0jh49ChsbGzz22GNQqVRSx1YreCk4ERFR/WPM97fRIzdlWrRogRYtWlR3cyIiIqJaYVByExMTg/feew92dnaIiYl5YN05c+ZIEhgRERFRdRiU3KSkpKC4uBgAcOTIEchkskrrVVVORERE9KgYlNzMnz9fd35rx44dtRkPERERUY0YdCl4u3btkJOTAwBo0qQJcnNzazUoIiIiouoyKLlxdnZGeno6AODChQvQarWSBRAfHw9/f39YW1sjJCQEu3fvfmD9wsJCTJ06FSqVCkqlEk2bNkViYqJk8RAREVH9ZtBpqWeeeQbdunWDl5cXZDIZQkNDIZfLK617/vx5gztfvXo1JkyYgPj4eHTq1AmLFi1C3759cfLkSfj6+la6zaBBg3DlyhUsW7YMzZo1Q3Z2NkpKSgzuk4iIiMybwevc/PLLLzh79izGjRuHmTNnwsHBodJ648ePN7jzsLAwtG/fHgkJCbqygIAAREVFIS4urtIYhgwZgvPnz6Nhw4YG9VFYWIjCwkLd8/z8fPj4+HCdGyIionqkVta56dOnDwAgOTkZ48ePrzK5MVRRURGSk5MxZcoUvfLIyEjs3bu30m02bNiA0NBQfPzxx1i5ciXs7Ozw9NNP47333oONjU2l28TFxWHGjBk1ipWIiIjqD6MX8Vu+fLkkHefk5ECj0cDDw0Ov3MPDA1lZWZVuc/78eezZswfW1tb44YcfkJOTg1dffRXXrl2rct5NbGys3to8ZSM3REREZJ4MSm4GDhyIFStWwNHREQMHDnxg3e+//96oAMqvjSOEqHK9HK1WC5lMhlWrVsHJyQlA6aKB//73v/H5559XOnqjVCqhVCqNiomIiIjqL4OSGycnJ13CUZZU1JSrqyvkcnmFUZrs7OwKozllvLy80KhRI70YAgICIITApUuX0Lx5c0liIyIiovrLoOTm/lNRUp2WUigUCAkJQVJSEgYMGKArT0pKQv/+/SvdplOnTlizZg1u3rwJe3t7AKU38LSwsEDjxo0liYuIiIjqN4PWuaktMTExWLp0KRITE5GWloaJEydCrVYjOjoaQOl8meHDh+vqDx06FC4uLnjxxRdx8uRJ7Nq1C5MnT8aoUaOqnFBMRERE/ywGjdy0a9fO4PtGHTlyxODOBw8ejNzcXMycOROZmZkICgrC5s2boVKpAACZmZlQq9W6+vb29khKSsLrr7+O0NBQuLi4YNCgQXj//fcN7pOIiIjMm0Hr3BhzKfW0adNqFFBtM+Y6eSIiIqobjPn+NngRP3PB5IaIiKj+Meb726RzboiIiIikZvQifhqNBnPnzsV3330HtVqNoqIivdevXbsmWXBERERExjJ65GbGjBmYM2cOBg0ahLy8PMTExGDgwIGwsLDA9OnTayFEIiIiIsMZndysWrUKS5YswaRJk2BpaYnnnnsOS5cuxbvvvov9+/fXRoxEREREBjM6ucnKysJjjz0GoPTS7Ly8PADAv/71L2zatEna6IiIiIiMZHRy07hxY2RmZgIAmjVrhq1btwIADh06xHs4ERERkckZndwMGDAAv/76KwBg/PjxeOedd9C8eXMMHz4co0aNkjxAIiIiImPUeJ2bAwcO4Pfff0ezZs3w9NNPSxVXreE6N0RERPWPMd/fRl8KXl5YWBjCwsJq2gwRERGRJIw+LRUXF4fExMQK5YmJifjoo48kCYqIiIiouoxObhYtWoRWrVpVKA8MDMTChQslCYqIiIiouqp1KbiXl1eFcjc3N91VVERERESmYnRy4+Pjg99//71C+e+//w5vb29JgiIiIiKqLqMnFI8ZMwYTJkxAcXExevToAQD49ddf8eabb+KNN96QPEAiIiIiYxid3Lz55pu4du0aXn31Vd1NM62trfHWW28h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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "if __name__ == \"__main__\":\n",
    "    x = range(1, 20)\n",
    "    d, l = read_cifar_batch(\"data/cifar-10-batches-py/data_batch_1\")\n",
    "    d_train, l_train, d_test, l_test = split_dataset(d, l, 0.9)\n",
    "    dist_matrice = distance_matrix(d_train, d_test)\n",
    "    y = []\n",
    "    for knn in x:\n",
    "        stat = 0\n",
    "        res = knn_predict(dist_matrice, l_train, knn)\n",
    "        y.append(np.sum(l_test == res) / len(l_test))\n",
    "    plt.plot(x, y, label='Précision')\n",
    "    plt.xlabel('nombre de plus proche voisins concidérés')\n",
    "    plt.ylabel('taux de bonne calification')\n",
    "    plt.xticks(range(1, 20))\n",
    "    plt.yticks(np.arange(0, 1.1, 0.1))\n",
    "    plt.legend()\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Pour évaluer l'efficacité de cette méthode, j'ai effectué 10 itérations, chaque fois sur un nouvel ensemble de test et d'entraînement. J'ai tracé les 10 courbes sur le même graphe, ce qui a donné le résultat ci-dessous.</p>\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Couldn't find program: 'false'\n"
     ]
    }
   ],
   "source": [
    "%%script false\n",
    "\n",
    "if __name__ == \"__main__\":\n",
    "    nbr_knn = 20\n",
    "    nbr_val = 10\n",
    "    x = range(1, nbr_knn)\n",
    "    d, l = read_cifar_batch(\"data/cifar-10-batches-py/data_batch_1\")\n",
    "    for essai in range(nbr_val):\n",
    "        d_train, l_train, d_test, l_test = split_dataset(d, l, 0.9)\n",
    "        dist_matrice = distance_matrix(d_train, d_test)\n",
    "        y = []\n",
    "        for knn in x:\n",
    "            stat = 0\n",
    "            res = knn_predict(dist_matrice, l_train, knn)\n",
    "            y.append(np.sum(l_test == res) / len(l_test))\n",
    "        plt.plot(x, y, label=f'Précision knn mesure {essai}')\n",
    "    plt.xlabel('nombre de plus proche voisins concidérés')\n",
    "    plt.ylabel('taux de bonne calification')\n",
    "    plt.xticks(range(1, nbr_knn))\n",
    "    plt.yticks(np.arange(0, 1.1, 0.1))\n",
    "    plt.legend()\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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5bXXXuOFF17AcRxOOukk4vF43vIYPHgwN910E2+99RaLFi3ii1/8ImeccQbvv/9+3vLo6s033+R///d/GT16dN7THjVqFBs2bMgN//znP/OafnNzM8cccwyWZfHMM8/wwQcfcNttt1FSUpLXfN58881u+/HCCy8A8NWvfjUv6d98883cfffd3HnnnXz44YfcfPPN3HLLLfzyl7/MS/qdLr74Yl544QUeeugh3n33XU466SSmTp3KunXrdjnNnZ1zt9xyC7/4xS+45557eP311ykoKGDatGmkUqm85RGPxzn22GO5+eabd2kfdpZHIpFg8eLFXHvttSxevJjHHnuMpUuXcvrpp+ctD4CDDz6YO++8k3fffZd//vOfDBs2jJNOOolNmzblLY9Ojz/+OK+99touPcqrN3mcfPLJ3c6ZP/zhD3nNY+XKlRx77LGMHDmSBQsW8O9//5trr72WYDCYtzy6ln/Dhg088MADaJrG2Wefnbc8Zs2axbPPPsvvfvc7PvzwQ6688kouu+wynnzyybzkoZTizDPP5OOPP+avf/0rb7/9NkOHDmXq1Kl5/d4akJTYZwHq8ccf36N5bNy4UQHq5Zdf3qP5lJSUqF//+td5TzcWi6mDDjpIvfDCC2rKlCnqiiuuyFvac+bMUWPGjMlbej256qqr1LHHHrtH8+jJFVdcoUaMGKF8389Leqeeeqq68MILuy0766yz1HnnnZeX9JVSKpFIKMMw1FNPPdVt+ZFHHql+9KMf5SWPrc853/dVdXW1uvXWW3PLWlpaVCAQUH/4wx/ykkdXn3zyiQLU22+/vUtp9yaPTm+88YYC1KpVq/ZYHq2trQpQL774Yl7zWLt2rRo0aJB677331NChQ9XPf/7zXUp/e3nMmDFDnXHGGbucZm/ymD59uvr617++R/PY2hlnnKG++MUv5jWPUaNGqZ/85Cfdlu3OObl1HkuXLlWAeu+993LLPM9TFRUV6r777tulPESW1AAOcK2trQCUlpbukfQ9z+ORRx4hHo/vkcfsXXrppZx66qlMnTo172kDLF++nNraWoYPH855553Xp+aZ3njyySeZMGECX/3qV6msrGTcuHHcd999ec1ja5lMht/97ndceOGFaJqWlzSPPvpo5s+fz7JlywB45513+Oc//8kpp5ySl/QBXNfF87xtakhCoVDea2Y7ffLJJ9TX13f7fEWjUSZNmsTChQv3SJ57S2trK5qm7bHnmWcyGe69916i0ShjxozJW7q+7/ONb3yD2bNnM2rUqLylu7UFCxZQWVnJIYccwiWXXEJjY2Pe0vZ9n6effpqDDz6YadOmUVlZyaRJk/Le5aerhoYGnn76aS666KK8pnv00Ufz5JNPsm7dOpRSvPTSSyxbtoyTTjopL+mn02mAbue9rusEAoE9dt4PFBIADmC+73PllVdyzDHH5P0JKO+++y6FhYUEAgG+/e1v8/jjj3PYYYflNY9HHnmExYsX5x7vl2+TJk3iN7/5Dc8++yx33303n3zyCccddxyxWCxveXz88cfcfffdHHTQQTz33HNccsklfOc73+G3v/1t3vLY2hNPPEFLSwsXXHBB3tL8wQ9+wDnnnMPIkSOxLItx48Zx5ZVXct555+Utj0gkwuTJk7nhhhtYv349nufxu9/9joULF7Jhw4a85dNVfX09QO6JQp2qqqpyr30WpVIprrrqKs4991yKiorymvZTTz1FYWEhwWCQn//857zwwguUl5fnLf2bb74Z0zT5zne+k7c0t3byySfz//7f/2P+/PncfPPNvPzyy5xyyil4npeX9Ddu3Eh7ezs33XQTJ598Ms8//zxf/vKXOeuss3j55ZfzksfWfvvb3xKJRDjrrLPymu4vf/lLDjvsMAYPHoxt25x88sncddddfP7zn89L+iNHjmTIkCFcffXVNDc3k8lkuPnmm1m7du0eO+8Hiv3mUXCi7y699FLee++9PfIr6pBDDmHJkiW0trby5z//mRkzZvDyyy/nLQhcs2YNV1xxBS+88EKf+sz0Rdfaq9GjRzNp0iSGDh3KH//4x7z9ivZ9nwkTJnDjjTcCMG7cON577z3uueceZsyYkZc8tnb//fdzyimn7FLfqe354x//yO9//3sefvhhRo0axZIlS7jyyiupra3N63489NBDXHjhhQwaNAjDMDjyyCM599xzeeutt/KWx/7OcRy+9rWvoZTi7rvvznv6X/jCF1iyZAmbN2/mvvvu42tf+xqvv/46lZWVu532W2+9xR133MHixYvzVnvdk3POOSc3fcQRRzB69GhGjBjBggULOOGEE3Y7fd/3ATjjjDP47ne/C8DYsWN59dVXueeee5gyZcpu57G1Bx54gPPOOy/vfy9/+ctf8tprr/Hkk08ydOhQXnnlFS699FJqa2vz0jJjWRaPPfYYF110EaWlpRiGwdSpUznllFPyfpHZQCM1gAPUZZddxlNPPcVLL73E4MGD856+bdsceOCBjB8/nrlz5zJmzBjuuOOOvKX/1ltvsXHjRo488khM08Q0TV5++WV+8YtfYJpm3n6pd1VcXMzBBx/MihUr8pZmTU3NNkHxoYcemvem5k6rVq3ixRdf5OKLL85rurNnz87VAh5xxBF84xvf4Lvf/W7ea2dHjBjByy+/THt7O2vWrOGNN97AcRyGDx+e13w6VVdXA9nms64aGhpyr32WdAZ/q1at4oUXXsh77R9AQUEBBx54IJ/73Oe4//77MU2T+++/Py9p/+Mf/2Djxo0MGTIkd96vWrWK//7v/2bYsGF5yaMnw4cPp7y8PG/nfnl5OaZp7rVz/x//+AdLly7N+3mfTCb54Q9/yO23385pp53G6NGjueyyy5g+fTo/+9nP8pbP+PHjWbJkCS0tLWzYsIFnn32WxsbGPXbeDxQSAA4wSikuu+wyHn/8cf7v//6PAw44YK/k6/t+ri9HPpxwwgm8++67LFmyJDdMmDCB8847jyVLlmAYRt7y6tTe3s7KlSupqanJW5rHHHPMNrfhWbZsGUOHDs1bHl09+OCDVFZWcuqpp+Y13UQiga53/3NiGEaupiPfCgoKqKmpobm5meeee44zzjhjj+RzwAEHUF1dzfz583PL2traeP311/dIn9Y9qTP4W758OS+++CJlZWV7Jd98nvvf+MY3+Pe//93tvK+trWX27Nk899xzecmjJ2vXrqWxsTFv575t20ycOHGvnfv3338/48ePz2tfTMh+phzH2WvnfjQapaKiguXLl7No0aI9dt4PFNIEvI9pb2/v9ivzk08+YcmSJZSWljJkyJDdTv/SSy/l4Ycf5q9//SuRSCTXjykajRIKhXY7fYCrr76aU045hSFDhhCLxXj44YdZsGBBXv9ARyKRbfotFhQUUFZWlrf+jN/73vc47bTTGDp0KOvXr2fOnDkYhsG5556bl/QBvvvd73L00Udz44038rWvfY033niDe++9l3vvvTdveXTyfZ8HH3yQGTNmYJr5PfVPO+00fvrTnzJkyBBGjRrF22+/ze23386FF16Y13yee+45lFIccsghrFixgtmzZzNy5Ehmzpy5y2nu7Jy78sor+Z//+R8OOuggDjjg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t7+xWEwNHz5cHXfcceof//iHWr58uXr00UfVq6++2u24n3XWWerdd99Vr7zyiqqurlY//OEPc2X7n//5HzVy5Ej17LPPqpUrV6oHH3xQBQIBtWDBgh735b333lOAWrFixTbLli9frpRSOy331u/5pZdeqsaOHavefPNN9cknn6gXXnhBPfnkkz2u+9JLLylATZo0SS1YsEC9//776rjjjlNHH330Lh0fz/PU5z73OTVq1Cj1/PPPq5UrV6q//e1v6u9//7tSSqlFixYpXdfVT37yE7V06VL14IMPqlAopB588MFcGkOHDlWlpaXqrrvuUsuXL1dz585Vuq6rjz76qNfHacyYMbn0br75ZlVSUqL+8pe/qA8++EBddNFFKhKJqDPOOKPXx63zfRo9erR6/vnn1YoVK1RjY+NOt9vRsRBiXyQBoNhvTZkyRR177LHdlk2cOFFdddVVSimlnn/+eWUYhlq9enXu9ffff18B6o033lBKZb9gwuGwamtry60zbdo0NWzYMOV5Xm7ZIYccoubOnZubB9S3v/3tbnlPmjRJXXLJJUqpLV/O8+bN67bOiBEj1MMPP9xt2Q033KAmT57c4z7GYjFl27b64x//mFvW2NioQqFQLgBctWqVMgxDrVu3rtu2J5xwgrr66qt7TLcv+9CXADASiewwmN3VMmz9PtbW1qqf/vSn3ZZNnDhR/dd//ZdSSqn//d//VZFIRDU2NvaYb0/Hffbs2WrSpElKKaVSqZQKh8O5QKTTRRddpM4999zt7s+YMWPUT37yk9z81VdfnUuzN+Xe+j0/7bTT1MyZM3vMa3sB4Isvvphb5+mnn1aASiaTSqm+HZ/nnntO6bquli5d2uPr//mf/6lOPPHEbstmz56tDjvssNz80KFD1de//vXcvO/7qrKyUt19991Kqd4dp64BYE1Njbrlllty847jqMGDB+cCwN4ct8736Yknnsi93pvtdnQshNgXSR9AsV8bPXp0t/mamho2btwIwIcffkhdXR11dXW51w877DCKi4v58MMPmThxIpBtpopEIrl1qqqqMAwDXde7LetMt9PkyZO3md+679CECRNy0/F4nJUrV3LRRRfxzW9+M7fcdV2i0WiP+7dy5UoymUy3psXS0lIOOeSQ3Py7776L53kcfPDB3bZNp9OUlZX1mG5f9qEvZs2axcUXX8xDDz3E1KlT+epXv8qIESN2uwxd38e2tjbWr1/PMccc022dY445hnfeeQeAJUuWMG7cOEpLS7eb79bHvetnZ8WKFSQSCU488cRu22QyGcaNG7fdNM877zweeOABrr32WpRS/OEPf2DWrFm9LvfWLrnkEs4++2wWL17MSSedxJlnnsnRRx+93fyh+zlRU1MDwMaNGxkyZEifjs+SJUsYPHjwNp+rTh9++CFnnHHGNvsyb948PM/DMIxtyqNpGtXV1bn3uTfHqVNraysbNmzodi6YpsmECRNyzcB9OW5dP1O92W5XjoUQ/UkCQLFf2/piAE3T8H1/t9PIR7oABQUFuen29nYA7rvvvm36inV+We6K9vZ2DMPgrbfe2iadXe1A3xNd17fpb+U4Trf566+/nv/8z//k6aef5plnnmHOnDk88sgjfPnLX96tvLu+j70RCoV2us6OjnHnsXr66acZNGhQt/V2dGXoueeey1VXXcXixYtJJpOsWbOG6dOn96nsXZ1yyimsWrWKv//977zwwguccMIJXHrppfzsZz/b7jZd96uzf2bnfvXl+PTmPeyNHb3P+cqjU1+OW0/n5o6225VjIUR/kotAxIB16KGHsmbNGtasWZNb9sEHH9DS0sJhhx222+m/9tpr28wfeuih212/qqqK2tpaPv74Yw488MBuwwEHHNDjNiNGjMCyrG4XLzQ3N7Ns2bLc/Lhx4/A8j40bN26T7s6uEu3LPlRUVBCLxYjH47llPdUWHnzwwXz3u9/l+eef56yzztppR/m+vo9FRUXU1tbyr3/9q9vyf/3rX7njOnr0aJYsWUJTU9MO896eww47jEAgwOrVq7d5T7vWKG9t8ODBTJkyhd///vf8/ve/58QTT6SysrLX5e5JRUUFM2bM4He/+x3z5s3b5iKKvurt8Rk9ejRr167t9lnr6tBDD+1xXw4++OBe/6Dpy3GKRqPU1NR0Oxdc1+Wtt97Kze/qcevtdvk+FkLsSVIDKAasqVOncsQRR3Deeecxb948XNflv/7rv5gyZUq35p9d9ac//YkJEyZw7LHH8vvf/5433niD+++/f4fb/PjHP+Y73/kO0WiUk08+mXQ6zaJFi2hubs41FXZVWFjIRRddxOzZsykrK6OyspIf/ehH3ZqnDz74YM477zzOP/98brvtNsaNG8emTZuYP38+o0eP5tRTT83LPkyaNIlwOMwPf/hDvvOd7/D666/zm9/8Jvd6Mplk9uzZfOUrX+GAAw5g7dq1vPnmm5x99tl5fx9nz57NnDlzGDFiBGPHjuXBBx9kyZIluSutzz33XG688UbOPPNM5s6dS01NDW+//Ta1tbXbNDn3JBKJ8L3vfY/vfve7+L7PscceS2trK//6178oKipixowZ2932vPPOY86cOWQyGX7+85/3qdxbu+666xg/fjyjRo0inU7z1FNP7TA43pG+Hp8pU6bw+c9/nrPPPpvbb7+dAw88kI8++ghN0zj55JP57//+byZOnMgNN9zA9OnTWbhwIXfeeedOr2rvqq/H6YorruCmm27ioIMOYuTIkdx+++20tLTkXt/V49ab7fJ5LITYK/q5D6IQe8yUKVO6XQmrlFJnnHGGmjFjRm5+1apV6vTTT1cFBQUqEomor371q6q+vj73+tadzJVSasaMGd2uKuwpL0Dddddd6sQTT1SBQEANGzZMPfroo7nXt+6g39Xvf/97NXbsWGXbtiopKVGf//zn1WOPPbbd/YzFYurrX/+6CofDqqqqSt1yyy3blCeTyajrrrtODRs2TFmWpWpqatSXv/xl9e9//3u76e7KPjz++OPqwAMPVKFQSP3Hf/yHuvfee3MXgaTTaXXOOeeouro6Zdu2qq2tVZdddlnuAoR8lUGp7BWq119/vRo0aJCyLEuNGTNGPfPMM93W+fTTT9XZZ5+tioqKVDgcVhMmTFCvv/66Uqrn4/7zn/9cDR06NDfv+76aN2+eOuSQQ5RlWaqiokJNmzZNvfzyy9vdH6WUam5uVoFAQIXDYRWLxfpU7q3394YbblCHHnqoCoVCqrS0VJ1xxhnq448/7nHdzosbmpubc+m9/fbbClCffPLJLh2fxsZGNXPmTFVWVqaCwaA6/PDD1VNPPZV7/c9//rM67LDDlGVZasiQIerWW2/ttv3QoUPVz3/+827LxowZo+bMmZOb78txchxHXXHFFaqoqEgVFxerWbNmqfPPP7/b+bqz49bT+9Sb7XZ0LITYF2lKbdVpRwghyPbFevzxx7f7GK2BUgYhhNgfSR9AIYQQQogBRgJAIYQQQogBRpqAhRBCCCEGGKkBFEIIIYQYYCQAFEIIIYQYYCQAFEIIIYQYYCQAFEIIIYQYYCQAFEIIIYQYYCQAFEIIIYQYYCQAFEIIIYQYYCQAFEIIIYQYYP5/aaOlDRxwC9AAAAAASUVORK5CYII=",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from IPython.display import display, Image\n",
    "display(Image(filename=\"result/knn_1_20_valid_10test.png\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "On remarque une chute à k=2, cette chute est due à l'introduction d'un nouveau label parmi les choix possibles. L'algorithme développé ne traite pas la situation où dans ses k plus proches voisins, deux labels apparaissent le même nombre de fois, et il choisit naturellement le plus petit des deux.\n",
    "\n",
    "Pour réduire les erreurs lorsque deux labels apparaissent le même nombre de fois parmi les k plus proches voisins, l'algorithme ci-dessous choisira celui des deux dont la somme des distances est la plus petite."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [],
   "source": [
    "def knn_predict2(dist, labels_train, k):\n",
    "    resultat=[]\n",
    "    for im in dist:\n",
    "        dico={}\n",
    "        kmax=np.argpartition(im, k)[:k]\n",
    "        for indexe in kmax:\n",
    "            if labels_train[indexe] in dico:\n",
    "                dico[labels_train[indexe]][0]+=1\n",
    "                dico[labels_train[indexe]][1]+=im[indexe]\n",
    "            else:\n",
    "                dico[labels_train[indexe]]=[1,im[indexe]]\n",
    "        dico = sorted(dico.items(), key=lambda item: item[1][0], reverse=True)\n",
    "        max_value = dico[0][1][0]\n",
    "        dico = [item for item in dico if item[1][0] == max_value]\n",
    "        if len(dico) > 1:\n",
    "            dico = sorted(dico, key=lambda item: item[1][1])\n",
    "        resultat.append(dico[0][0])\n",
    "    return(resultat)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p>Pour comparer les deux méthodes, j'ai tracé les résultats des deux méthodes sur le même graphique en utilisant les mêmes ensembles d'entraînement et de test.</p>\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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5qY5i4qIiIiorhid3Pj4+ODPP//UKf/zzz/h7e0tSVBERERE1WX0hOJx48Zh8uTJKC4uRs+ePQEAO3bswBtvvIHXXntN8gCJiIiIjGF0cvPGG2/g2rVrGD9+vOammVZWVnjzzTcxffp0yQMkIiIiMka1r3Nz8+ZNpKWlwdraGs2bN28wVyfmdW6IiIganodynRs7Ozt06NChuqsTERER1QqjJxQTERER1WdMboiIiMikMLkhIiIik8LkhoiIiExKtZKbVatWoXPnzvD29sbFixcBAAsXLsTPP/8saXBERERExjI6uYmPj0dMTAyeeuop3LhxAyqVCgDg5OSEhQsXSh0fERERkVGMTm4+++wzLFu2DDNmzIBcLteUh4WF4fjx45IGR0RERGQso5Ob9PR0tGvXTqdcoVDg1q1bkgRFREREVF1GJzcBAQFITU3VKf/111/RunVrowOIi4tDQEAArKysEBoait27d1dad9euXZDJZDqPv//+2+h+iYiIyDQZfYXiqVOnYsKECbh79y6EEDh48CC+++47xMbG4ssvvzSqrTVr1mDy5MmIi4tD586dsWTJEvTt2xcnT56Er69vpeudOnVK69LLbm5uxm4GERERmahq3Vtq2bJleP/995GRkQEAeOSRRzBr1iyMHTvWqHbCw8PRvn17xMfHa8oCAwPRv39/xMbG6tTftWsXevTogevXr8PJycmgPgoLC1FYWKhZzs/Ph4+PD+8tRURE1IAYc2+pap0K/uKLL+LixYvIzs5GVlYWMjIyjE5sioqKkJycjMjISK3yyMhI7N27t8p127VrBy8vL/Tq1Qs7d+6ssm5sbCwcHR01Dx8fH6PiJCIiooalRhfxc3V1hbu7e7XWzcnJgUqlgoeHh1a5h4cHsrKy9K7j5eWFpUuXYv369fjxxx/RsmVL9OrVC3/88Uel/UyfPh15eXmaR9loExEREZkmo+fcXLlyBa+//jp27NiB7OxsVDyqVXbdG0PJZDKtZSGETlmZli1bomXLlprliIgIZGRk4H//+x+6deumdx2FQgGFQmFUTERERNRwGZ3cjB49GkqlEu+88w68vLwqTUQexNXVFXK5XGeUJjs7W2c0pyodO3bEN998U60YiIiIyPQYndzs2bMHu3fvRtu2bWvUsaWlJUJDQ5GYmIgBAwZoyhMTExEVFWVwOykpKfDy8qpR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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "if __name__ == \"__main__\":\n",
    "    nbr_knn = 20\n",
    "    x = range(1, nbr_knn)\n",
    "    #d, l = read_cifar_batch(\"data/cifar-10-batches-py/data_batch_1\")\n",
    "    #d_train, l_train, d_test, l_test = split_dataset(d, l, 0.9)\n",
    "    #dist_matrice = distance_matrix(d_train, d_test)\n",
    "    y1 = []\n",
    "    y2 = []\n",
    "    for knn in x:\n",
    "        stat = 0\n",
    "        res = knn_predict(dist_matrice, l_train, knn)\n",
    "        res2 = knn_predict2(dist_matrice, l_train, knn)\n",
    "        y1.append(np.sum(l_test == res) / len(l_test))\n",
    "        y2.append(np.sum(l_test == res2) / len(l_test))\n",
    "    plt.plot(x, y1, label=f'Précision knn')\n",
    "    plt.plot(x, y2, label='Précision knn2')\n",
    "    plt.xlabel('nombre de plus proche voisins concidérés')\n",
    "    plt.ylabel('taux de bonne calification')\n",
    "    plt.xticks(range(1, nbr_knn))\n",
    "    plt.yticks(np.arange(0, 1.1, 0.1))\n",
    "    plt.legend()\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "On remarque que la nouvelle méthode améliore sensiblement la précédente et ne présente pas de chute à k=2.\n",
    "\n",
    "### Résultat\n",
    "Finalement, on constate que la méthode des k plus proches voisins a une efficacité d'environ 30% sur la base de données CIFAR-10, quel que soit le nombre de plus proches voisins choisis. Cela représente une amélioration par rapport à un choix aléatoire qui aurait un taux d'environ 10% compte tenu des 10 classes, mais reste relativement faible.\n",
    "## Réseaux de Neurones Artificiels\n",
    "$ Z^{L+1}=W^{L+1}A^{L}+B^{L+1}$ and $A^{L+1}=σ(Z^{L+1}) $\n",
    "\n",
    "$C = \\frac{1}{N_{out}}\\sum_{i=1}^{N_{out}} (\\hat{y_i} - y_i)^2$\n",
    "### 1\n",
    "$\\begin{matrix}\n",
    "\\sigma(x)=\\frac{1}{1+e^{-x}}\n",
    "\\\\ \n",
    "\\Rightarrow \\sigma'(x)=\\frac{-e^{-x}}{-(1+e^{-x})^2}\n",
    "\\\\\n",
    "\\Rightarrow \\sigma'(x)=\\frac{1}{1+e^{-x}}(\\frac{1+e^{-x}-1}{1+e^{-x}})\n",
    "\\\\\n",
    "\\Rightarrow \\sigma'(x)=\\sigma(\\frac{1+e^{-x}}{1+e^{-x}}-\\frac{1}{1+e^{-x}})\n",
    "\\\\\n",
    "\\Rightarrow \\sigma'(x)=\\sigma(1-\\sigma)\n",
    "\\end{matrix}$\n",
    "### 2\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial A^{(2)}} ?\n",
    "\\\\ \n",
    "\\Rightarrow \\frac{\\partial C}{\\partial a_i^{(2)}}=\\frac{1}{N_{out}}\\sum_{i=1}^{N_{out}} (a_i^{(2)} - y_i)^2\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial a_i^{(2)}}=\\frac{2}{N_{out}} (a_i^{(2)} - y_i)\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial A^{(2)}}=\\frac{2}{N_{out}} (A^{(2)} - Y)\n",
    "\\end{matrix}$\n",
    "### 3 \n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial Z^{(2)}}=\\frac{\\partial C}{\\partial A^{(2)}}\\frac{\\partial A^{(2)}}{\\partial Z^{(2)}}\n",
    "\\\\ \n",
    "A^{(2)}=\\sigma (Z^{(2)})\n",
    "\\\\\n",
    "\\frac{\\partial A^{(2)}}{\\partial Z^{(2)}}=A^{(2)}(1-A^{(2)})\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial Z^{(2)}}=\\frac{\\partial C}{\\partial A^{(2)}}[A^{(2)}(1-A^{(2)})]\n",
    "\\end{matrix}$\n",
    "### 4\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial W^{(2)}}=\\frac{\\partial C}{\\partial Z^{(2)}}\\frac{\\partial Z^{(2)}}{\\partial W^{(2)}}\n",
    "\\\\ \n",
    "Z^{(2)}=W^{(2)}A^{(1)}+B^{(2)}\n",
    "\\\\\n",
    "\\frac{\\partial Z^{(2)}}{\\partial W^{(2)}}=A^{(1)}\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial W^{(2)}}=\\frac{\\partial C}{\\partial Z^{(2)}}A^{(1)}\\end{matrix}$\n",
    "### 5\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial B^{(2)}}=\\frac{\\partial C}{\\partial Z^{(2)}}\\frac{\\partial Z^{(2)}}{\\partial B^{(2)}}\n",
    "\\\\ \n",
    "Z^{(2)}=W^{(2)}A^{(1)}+B^{(2)}\n",
    "\\\\\n",
    "\\frac{\\partial Z^{(2)}}{\\partial B^{(2)}}=1\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial B^{(2)}}=\\frac{\\partial C}{\\partial Z^{(2)}}\n",
    "\\end{matrix}\n",
    "$\n",
    "### 6\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial A^{(1)}}=\\frac{\\partial C}{\\partial Z^{(2)}}\\frac{\\partial Z^{(2)}}{\\partial A^{(1)}}\n",
    "\\\\ \n",
    "Z^{(2)}=W^{(2)}A^{(1)}+B^{(2)}\n",
    "\\\\\n",
    "\\frac{\\partial Z^{(2)}}{\\partial A^{(1)}}=W^{(2)}\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial A^{(1)}}=\\frac{\\partial C}{\\partial Z^{(2)}}W^{(2)}\n",
    "\\end{matrix}\n",
    "$\n",
    "### 7\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial Z^{(1)}}=\\frac{\\partial C}{\\partial A^{(1)}}\\frac{\\partial A^{(1)}}{\\partial Z^{(1)}}\n",
    "\\\\ \n",
    "A^{(1)}=\\sigma (Z^{(1)})\n",
    "\\\\\n",
    "\\frac{\\partial A^{(1)}}{\\partial Z^{(1)}}=A^{(1)}(1-A^{(1)})\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial Z^{(1)}}=\\frac{\\partial C}{\\partial A^{(1)}}[A^{(1)}(1-A^{(1)})]\n",
    "\\end{matrix}\n",
    "$\n",
    "### 8\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial W^{(1)}}=\\frac{\\partial C}{\\partial Z^{(1)}}\\frac{\\partial Z^{(1)}}{\\partial W^{(1)}}\n",
    "\\\\ \n",
    "Z^{(1)}=W^{(1)}A^{(0)}+B^{(1)}\n",
    "\\\\\n",
    "\\frac{\\partial Z^{(1)}}{\\partial W^{(1)}}=A^{(0)}\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial W^{(1)}}=\\frac{\\partial C}{\\partial Z^{(1)}}A^{(0)}\\end{matrix}$\n",
    "### 9\n",
    "$\\begin{matrix}\n",
    "\\frac{\\partial C}{\\partial B^{(1)}}=\\frac{\\partial C}{\\partial Z^{(1)}}\\frac{\\partial Z^{(1)}}{\\partial B^{(1)}}\n",
    "\\\\ \n",
    "Z^{(1)}=W^{(1)}A^{(0)}+B^{(1)}\n",
    "\\\\\n",
    "\\frac{\\partial Z^{(1)}}{\\partial B^{(1)}}=1\n",
    "\\\\\n",
    "\\Rightarrow \\frac{\\partial C}{\\partial B^{(1)}}=\\frac{\\partial C}{\\partial Z^{(1)}}\n",
    "\\end{matrix}\n",
    "$\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 10\n",
    "$loss=\\frac{1}{N_{out}}\\sum_{i=1}^{N_{out}}-(y_i*log(\\hat{y_i})+(1-y_1)*log(1-\\hat{y_i}))\n",
    "$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 145,
   "metadata": {},
   "outputs": [],
   "source": [
    "def learning_methode(k,dk,learning_rate):\n",
    "    k2=k-learning_rate*dk\n",
    "    return(k2)\n",
    "\n",
    "def learn_once_mse(w1,b1,w2,b2,data,targets,learning_rate):\n",
    "    a0 = data # the data are the input of the first layer\n",
    "    z1 = np.matmul(a0, w1) + b1  # input of the hidden layer\n",
    "    a1 = 1 / (1 + np.exp(-z1))  # output of the hidden layer (sigmoid activation function)\n",
    "    z2 = np.matmul(a1, w2) + b2  # input of the output layer\n",
    "    a2 = 1 / (1 + np.exp(-z2))  # output of the output layer (sigmoid activation function)\n",
    "    predictions = a2  # the predicted values are the outputs of the output layer\n",
    "\n",
    "    # Compute loss (MSE)\n",
    "    loss = np.mean(np.square(predictions - targets))\n",
    "\n",
    "    dc_da2=(2/data.shape[0])*(predictions-targets)\n",
    "    dc_dz2=dc_da2*(a2*(1-a2))\n",
    "    dc_dw2=np.dot(np.transpose(a1), dc_dz2)\n",
    "    dc_db2=np.dot(np.ones((1,dc_dz2.shape[0])),dc_dz2)\n",
    "    dc_da1=np.dot(dc_dz2,np.transpose(w2))\n",
    "    dc_dz1=dc_da1*(a1*(1-a1))\n",
    "    dc_dw1=np.dot(np.transpose(a0), dc_dz1)\n",
    "    dc_db1=np.dot(np.ones((1,dc_dz1.shape[0])),dc_dz1)\n",
    "\n",
    "    w1=learning_methode(w1,dc_dw1,learning_rate)\n",
    "    b1=learning_methode(b1,dc_db1,learning_rate)\n",
    "    w2=learning_methode(w2,dc_dw2,learning_rate)\n",
    "    b2=learning_methode(b2,dc_db2,learning_rate)\n",
    "\n",
    "    # Compute loss (MSE)\n",
    "    \n",
    "    return(w1,b1,w2,b2,loss)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 11"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 146,
   "metadata": {},
   "outputs": [],
   "source": [
    "def one_hot(label):\n",
    "    nbr_classe=9\n",
    "    mat=np.zeros((len(label),nbr_classe))\n",
    "    for label_indexe,label_im, in enumerate(label):\n",
    "        mat[label_indexe,label_im-1]=1\n",
    "    return(mat)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 12"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 147,
   "metadata": {},
   "outputs": [],
   "source": [
    "def softmax(y):\n",
    "    y=np.exp(y)\n",
    "    v=np.sum(y, axis=1, keepdims=True)\n",
    "    return(y / v)\n",
    "\n",
    "def learn_once_cross_entropy(w1,b1,w2,b2,data,labels_train,learning_rate):\n",
    "    targets = one_hot(labels_train)\n",
    "    a0 = data\n",
    "    z1 = np.dot(a0, w1) + b1\n",
    "    a1 = 1 / (1 + np.exp(-z1))\n",
    "    z2 = np.dot(a1, w2) + b2\n",
    "    softa2=softmax(z2)\n",
    "    predictions=softa2\n",
    "\n",
    "    loss=np.mean(np.sum(-targets*np.log(predictions),axis=1))\n",
    "    \n",
    "    dc_dz2=(predictions-targets)/data.shape[0]\n",
    "    dc_dw2=np.dot(np.transpose(a1), dc_dz2)\n",
    "    dc_db2=np.sum(dc_dz2, axis=0, keepdims=True)\n",
    "\n",
    "    dc_da1=np.dot(dc_dz2,np.transpose(w2))\n",
    "    dc_dz1=dc_da1*(1-a1)*a1\n",
    "    dc_dw1=np.dot(np.transpose(a0), dc_dz1)\n",
    "    dc_db1=np.sum(dc_dz1, axis=0, keepdims=True)\n",
    "\n",
    "    w1=learning_methode(w1,dc_dw1,learning_rate)\n",
    "    b1=learning_methode(b1,dc_db1,learning_rate)\n",
    "    w2=learning_methode(w2,dc_dw2,learning_rate)\n",
    "    b2=learning_methode(b2,dc_db2,learning_rate)\n",
    "    \n",
    "    return(w1,b1,w2,b2,loss)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 13"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 148,
   "metadata": {},
   "outputs": [],
   "source": [
    "def accuracy(w1,b1,w2,b2,data,labels):\n",
    "    a0 = data\n",
    "    z1 = np.dot(a0, w1) + b1\n",
    "    a1 = 1 / (1 + np.exp(-z1))\n",
    "    z2 = np.dot(a1, w2) + b2\n",
    "    softa2=softmax(z2)\n",
    "    predictions = softa2\n",
    "    prediction_2 = np.empty(predictions.shape[0], dtype=int)\n",
    "    for i, ligne in enumerate(predictions):\n",
    "        prediction_2[i] = np.argmax(ligne)+1\n",
    "    indices_egalite = np.where(prediction_2 == labels)[0]\n",
    "    nombre_indices = len(indices_egalite)\n",
    "    return(nombre_indices/len(labels))\n",
    "\n",
    "def train_mlp_cross_entropy(w1,b1,w2,b2,d_train,labels_train,learning_rate,num_epoch):\n",
    "    train_accuracies,loss_evo=[],[]\n",
    "    for k in range(num_epoch):\n",
    "        w1,b1,w2,b2,loss=learn_once_cross_entropy(w1,b1,w2,b2,d_train,labels_train,learning_rate)\n",
    "        t=accuracy(w1,b1,w2,b2,d_train,labels_train)\n",
    "        train_accuracies.append(t)\n",
    "        loss_evo.append(loss)\n",
    "    return (w1,b1,w2,b2,train_accuracies,loss_evo)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 14"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 149,
   "metadata": {},
   "outputs": [],
   "source": [
    "def test_mlp(w1,b1,w2,b2,d_test,labels_test):\n",
    "    test_accuracy=accuracy(w1,b1,w2,b2,d_test,labels_test)\n",
    "    return(test_accuracy)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 15"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 150,
   "metadata": {},
   "outputs": [],
   "source": [
    "def run_mlp_cross_entropy_training(data_train, labels_train, data_test, labels_test,d_h,learning_rate,num_epoch):\n",
    "    d_in = data_train.shape[1]  # input dimension\n",
    "    d_out = max(labels_train)  # output dimension (number of neurons of the output layer)\n",
    "\n",
    "    w1 = np.random.randn(d_in, d_h)  # first layer weights\n",
    "    b1 = np.zeros((1, d_h))  # first layer biaises\n",
    "    w2 = np.random.randn(d_h, d_out)  # second layer weights\n",
    "    b2 = np.zeros((1, d_out))  # second layer biaises\n",
    "\n",
    "    w1,b1,w2,b2,accuratie_train,loss=train_mlp_cross_entropy(w1,b1,w2,b2,data_train, labels_train,learning_rate,num_epoch)\n",
    "    test_accuracy=test_mlp(w1,b1,w2,b2,data_test, labels_test)\n",
    "    return(accuratie_train,loss,test_accuracy)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 16"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 151,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Utilisateur\\AppData\\Local\\Temp\\ipykernel_26032\\2793120310.py:10: RuntimeWarning: overflow encountered in exp\n",
      "  a1 = 1 / (1 + np.exp(-z1))\n",
      "C:\\Users\\Utilisateur\\AppData\\Local\\Temp\\ipykernel_26032\\1996586622.py:4: RuntimeWarning: overflow encountered in exp\n",
      "  a1 = 1 / (1 + np.exp(-z1))\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAGGCAYAAABmGOKbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAC6vklEQVR4nOzdd3hTZfsH8G92uvemm72X7CEgIENFQQEVB4Ii+kPgdeFEHAguRASVV0GcqCgiIENeQEbZe8/S0r33SnJ+fyTntKErbdMmbb+f68qlPTk5504amtznuZ/7kQmCIICIiIiIiIiIrE5u6wCIiIiIiIiImiom3URERERERET1hEk3ERERERERUT1h0k1ERERERERUT5h0ExEREREREdUTJt1ERERERERE9YRJNxEREREREVE9YdJNREREREREVE+YdBMRERERERHVEybdzUh0dDRkMhlWr15dq8e/9957WL9+fbntu3btgkwmw65du+oUnzXdfvvtuP322612vMceewxhYWFWOx4ArF27Fh06dICDgwNkMhlOnDhh1ePXxPLlyyt8X9T1PVMX8+fPh0wma/DzEhFR08DvPbVXH997iJozJt1ksco+fLp3746oqCh079694YNqpFJSUjBlyhRERkZiy5YtiIqKQuvWrW0WT2VJd0BAAKKiojBmzJiGD4qIiMiG+L2HiKxFaesAqPFzdXVFnz59bB1Go3Lp0iWUlJTg4YcfxuDBg20dTqU0Gg1/tzag1+uh0+mg0WhsHQoREd2C33uavvz8fDg6Oto6DGpCONJtI5cvX8aDDz4IX19faDQatGvXDp9//rl0f0pKCtRqNV5//fVyj71w4QJkMhmWLl0qbTtz5gzuueceeHh4QKvVomvXrvj222+rjaOy8qFbS3tlMhny8vLw7bffQiaTQSaTSWVMlZVZbdiwAX379oWjoyNcXFwwfPhwREVFVXies2fPYvLkyXBzc4Ofnx+mTp2KrKysauMXBAGLFy9GaGgotFotunfvjr///rvCfbOzs/H8888jPDwcarUaQUFBmD17NvLy8qo9T0U+//xzDBo0CL6+vnByckKnTp2wePFilJSUVPm4xx57DAMGDAAATJw40ey1BKz/uhkMBnz22Wfo2rUrHBwc4O7ujj59+mDDhg0AgLCwMJw9exa7d++Wfrfie6Ky0ry9e/di2LBhcHFxgaOjI/r164dNmzaZ7bN69WrIZDLs3LkTTz/9NLy9veHl5YX77rsP8fHxlr7M5Z7L4sWL0bZtW2g0Gvj6+uKRRx7BzZs3zfY7fvw4xo4dK/37CgwMxJgxY8z2+/XXX9G7d2+4ubnB0dERERERmDp1arUxyGQyPPvss/jyyy/RunVraDQatG/fHj///LPZfikpKZg5cybat28PZ2dn+Pr6YujQodizZ4/ZfuJrvHjxYrzzzjsIDw+HRqPBzp07K41BEAQsX75c+p16eHhgwoQJuHbtmtl+t99+Ozp27Ig9e/agT58+cHBwQFBQEF5//XXo9XqzfdPT0zFz5kwEBQVBrVYjIiICr776KoqKisz2y87OxvTp0+Hl5QVnZ2fceeeduHTpEmQyGebPny/tZ+nflpo8HyJqvPi9x/w8zel7DwBcuXIFjz/+OFq1agVHR0cEBQXhrrvuwunTp8vtm5mZif/85z+IiIiQPutHjx6NCxcuSPsUFRVhwYIFaNeuHbRaLby8vDBkyBDs378fQNVTC279vBJ/J8eOHcOECRPg4eGByMhIAMCRI0cwadIkhIWFwcHBAWFhYZg8eTJu3LhR7rhxcXF48sknERwcDLVajcDAQEyYMAFJSUnIzc2Fu7s7nnrqqXKPi46OhkKhwAcffFDt60iNF0e6beDcuXPo168fQkJC8NFHH8Hf3x9bt27FrFmzkJqaijfffBM+Pj4YO3Ysvv32W7z11luQy0uvj6xatQpqtRoPPfQQAODixYvo168ffH19sXTpUnh5eeH777/HY489hqSkJLz44ot1jjkqKgpDhw7FkCFDpA9EV1fXSvf/8ccf8dBDD2HEiBH46aefUFRUhMWLF+P222/Hjh07pKRTNH78eEycOBFPPPEETp8+jXnz5gEAvvnmmyrjeuutt/DWW2/hiSeewIQJExAbG4vp06dDr9ejTZs20n75+fkYPHgwbt68iVdeeQWdO3fG2bNn8cYbb+D06dP4559/ajx/+OrVq3jwwQelD7OTJ0/i3XffxYULF6qM+/XXX0evXr3wzDPP4L333sOQIUOk17I+XrfHHnsM33//PZ544gksWLAAarUax44dQ3R0NADgjz/+wIQJE+Dm5obly5cDQJUjrLt378bw4cPRuXNnfP3119BoNFi+fDnuuusu/PTTT5g4caLZ/tOmTcOYMWPw448/IjY2Fi+88AIefvhh/O9//7P8xTZ5+umn8dVXX+HZZ5/F2LFjER0djddffx27du3CsWPH4O3tjby8PAwfPhzh4eH4/PPP4efnh8TEROzcuRM5OTkAjO/niRMnYuLEiZg/fz60Wi1u3LhhcUwbNmzAzp07sWDBAjg5OWH58uWYPHkylEolJkyYAMCYxALAm2++CX9/f+Tm5uKPP/6Qfpe3zr1bunQpWrdujQ8//BCurq5o1apVped/6qmnsHr1asyaNQuLFi1Ceno6FixYgH79+uHkyZPw8/OT9k1MTMSkSZPw8ssvY8GCBdi0aRPeeecdZGRkYNmyZQCAwsJCDBkyBFevXsVbb72Fzp07Y8+ePVi4cCFOnDghXVARBAHjxo3D/v378cYbb+C2227Dvn37MGrUKMt+gVZ4PkTU+PB7T/P+3gMA8fHx8PLywvvvvw8fHx+kp6fj22+/Re/evXH8+HEp9pycHAwYMADR0dF46aWX0Lt3b+Tm5uLff/9FQkIC2rZtC51Oh1GjRmHPnj2YPXs2hg4dCp1OhwMHDiAmJgb9+vWr0fMS3XfffZg0aRJmzJghXZiIjo5GmzZtMGnSJHh6eiIhIQErVqzAbbfdhnPnzsHb2xuAMeG+7bbbUFJSIr3eaWlp2Lp1KzIyMqQLK1999RUWL14MNzc36bzLly+HWq226MI/NWICNbiRI0cKLVq0ELKyssy2P/vss4JWqxXS09MFQRCEDRs2CACEbdu2SfvodDohMDBQGD9+vLRt0qRJgkajEWJiYsyON2rUKMHR0VHIzMwUBEEQrl+/LgAQVq1aJe3z6KOPCqGhoeVifPPNN4Vb3x5OTk7Co48+Wm7fnTt3CgCEnTt3CoIgCHq9XggMDBQ6deok6PV6ab+cnBzB19dX6NevX7nzLF682OyYM2fOFLRarWAwGMqdT5SRkSFotVrh3nvvNdu+b98+AYAwePBgadvChQsFuVwuHD582Gzf3377TQAgbN68udLzCELlr5NIr9cLJSUlwpo1awSFQiH9Disjvma//vqr2TGs/br9+++/AgDh1VdfrTKeDh06mL1eooreM3369BF8fX2FnJwcaZtOpxM6duwotGjRQjr3qlWrBADCzJkzzY65ePFiAYCQkJBQZUy3vgfPnz9f4fEOHjwoABBeeeUVQRAE4ciRIwIAYf369ZUe+8MPPxQASP82agKA4ODgICQmJkrbdDqd0LZtW6Fly5aVPk6n0wklJSXCsGHDzN6z4mscGRkpFBcXV3v+qKgoAYDw0UcfmW2PjY0VHBwchBdffFHaNnjwYAGA8Oeff5rtO336dEEulws3btwQBEEQvvjiCwGA8Msvv5jtt2jRIrO/QX///bcAQPj000/N9nv33XcFAMKbb74pbbP0b0tNng8RNU783sPvPbfS6XRCcXGx0KpVK2HOnDnS9gULFggAhO3bt1f62DVr1ggAhJUrV1a6T0W/e9Gtn1fi7+SNN96wKO7c3FzBycnJ7LNw6tSpgkqlEs6dO1fpY69evSrI5XLhk08+kbYVFBQIXl5ewuOPP17tualxY3l5AyssLMSOHTtw7733wtHRETqdTrqNHj0ahYWFOHDgAABg1KhR8Pf3x6pVq6THb926FfHx8WZXw/73v/9h2LBhCA4ONjvXY489hvz8/HKlTfXt4sWLiI+Px5QpU8yuVDs7O2P8+PE4cOAA8vPzzR5z9913m/3cuXNnFBYWIjk5udLzREVFobCwULryLerXrx9CQ0PNtm3cuBEdO3ZE165dzV7zkSNH1roD6fHjx3H33XfDy8sLCoUCKpUKjzzyCPR6PS5dulTj49XH6yaWnD3zzDM1jqcieXl5OHjwICZMmABnZ2dpu0KhwJQpU3Dz5k1cvHix2hgBVFiaVRWx3Pqxxx4z296rVy+0a9cOO3bsAAC0bNkSHh4eeOmll/DFF1/g3Llz5Y512223AQAeeOAB/PLLL4iLi6tRLMOGDTMbfVUoFJg4cSKuXLliVsL+xRdfoHv37tBqtVAqlVCpVNixYwfOnz9f7ph33303VCpVtefeuHEjZDIZHn74YbP3sr+/P7p06VLuvezi4lLud/Dggw/CYDDg33//BWD8G+Lk5CSN0ovE11p8bcXfwa3/5h588MFq47bW8yGixoXfe/i9BwB0Oh3ee+89tG/fHmq1GkqlEmq1GpcvXzb7TPz777/RunVr3HHHHZUe6++//4ZWq7X6yPD48ePLbcvNzcVLL72Eli1bQqlUQqlUwtnZGXl5eeXiHjJkCNq1a1fp8SMiIjB27FgsX74cgiAAMFZIpKWl4dlnn7XqcyH7w6S7gaWlpUGn0+Gzzz6DSqUyu40ePRoAkJqaCgBQKpWYMmUK/vjjD2RmZgIwzpMNCAjAyJEjzY4ZEBBQ7lyBgYHS/Q1JPF9lMRkMBmRkZJht9/LyMvtZLG8uKCio9jz+/v7l7rt1W1JSEk6dOlXuNXdxcYEgCNJrbqmYmBgMHDgQcXFx+PTTT7Fnzx4cPnxYmp9WVdzVPR9rvm4pKSlQKBQVvka1kZGRAUEQavR+q83vtiLVvT7i/W5ubti9eze6du2KV155BR06dEBgYCDefPNNad7ZoEGDsH79euh0OjzyyCNo0aIFOnbsiJ9++smiWKp6z4lxfPzxx3j66afRu3dvrFu3DgcOHMDhw4dx5513VvjcK3peFUlKSoIgCPDz8yv3fj5w4EC593JFpdm3xpqWlgZ/f/9ypYa+vr5QKpVm+ymVynK/07q8v2r6fIioceH3Hn7vAYC5c+fi9ddfx7hx4/DXX3/h4MGDOHz4MLp06WL22JSUFLRo0aLKY6WkpCAwMNDsAoc1VPT7e/DBB7Fs2TJMmzYNW7duxaFDh3D48GH4+PjUOG4AeO6553D58mVs374dgHGefN++fdkJvxngnO4G5uHhIY0KVjb6GB4eLv3/448/jg8++AA///wzJk6ciA0bNmD27NlQKBTSPl5eXkhISCh3HLFZlTjfpCJarbZcoyQAdfqiK36QVBaTXC6Hh4dHrY9/63kSExPL3ZeYmGjWKMXb2xsODg6Vzjmq6jWqyPr165GXl4fff//d7OpyXdbaro/XzcfHB3q9HomJiRYndVXx8PCAXC6v9futLsq+Prd+sMXHx5udt1OnTvj5558hCAJOnTqF1atXY8GCBXBwcMDLL78MALjnnntwzz33oKioCAcOHMDChQvx4IMPIiwsDH379q0ylsrec2Xj/P7773H77bdjxYoVZvuJ88pvZencOm9vb8hkMuzZs6fCufe3bktKSqo2Vi8vLxw8eBCCIJjFkZycDJ1OJ722Xl5e0Ol0SEtLM/vCWNHrYenflpo+HyJqXPi9h997AONn4iOPPIL33nvPbHtqairc3d2ln318fMo1R72Vj48P9u7dC4PBUGnirdVqAaDc77qqCzK3fg5nZWVh48aNePPNN6XvDuIxxb4tNYkbAIYOHYqOHTti2bJlcHZ2xrFjx/D9999X+zhq/DjS3cAcHR0xZMgQHD9+HJ07d0bPnj3L3cp+mW3Xrh169+6NVatW4ccff0RRUREef/xxs2MOGzYM//vf/8p1hF6zZg0cHR2rXNYiLCwMycnJZl/Mi4uLsXXr1nL7ajQai0Yn27Rpg6CgIPz4449S+QxgLE1et26d1Nmzrvr06QOtVosffvjBbPv+/fvLlS6PHTsWV69ehZeXV4WveUWdTKsi/mEumxAIgoCVK1fW7smgfl43scHVrYnfrSz93To5OaF37974/fffzfY3GAz4/vvv0aJFi3pbb3zo0KEAUO7D6fDhwzh//jyGDRtW7jEymQxdunTBJ598And3dxw7dqzcPhqNBoMHD8aiRYsAGMvnqrNjxw6zfzN6vR5r165FZGSkdEFAJpOVSxhPnTpV57LHsWPHQhAExMXFVfhe7tSpk9n+OTk5Uqd60Y8//gi5XI5BgwYBMP4Nyc3NLbce7Zo1a6T7AWDIkCEAUO7f3I8//lguTkv/ttT0+RBR48LvPfzeIz7+1s/ETZs2lZveNWrUKFy6dKnKxqajRo1CYWFhhZ3JRX5+ftBqtTh16pTZ9j///NOieMWYBUEoF/d///vfciuAjBo1Cjt37iw3xa4is2bNwqZNmzBv3jz4+fnh/vvvtzgmarw40m0Dn376KQYMGICBAwfi6aefRlhYGHJycnDlyhX89ddf5f7QTJ06FU899RTi4+PRr18/s+6UgLE78saNGzFkyBC88cYb8PT0xA8//IBNmzaV65B4q4kTJ+KNN97ApEmT8MILL6CwsBBLly4t98cEMI4e7tq1C3/99RcCAgLg4uJSLhYAkMvlWLx4MR566CGMHTsWTz31FIqKivDBBx8gMzMT77//fi1fOXMeHh54/vnn8c4772DatGm4//77ERsbi/nz55crs5o9ezbWrVuHQYMGYc6cOejcuTMMBgNiYmKwbds2/Oc//0Hv3r0tPvfw4cOhVqsxefJkvPjiiygsLMSKFSvKlY/VRH28bgMHDsSUKVPwzjvvICkpCWPHjoVGo8Hx48fh6OiI//u//wNQOjK8du1aREREQKvVVprsLFy4EMOHD8eQIUPw/PPPQ61WY/ny5Thz5gx++umnGndDtVSbNm3w5JNP4rPPPoNcLseoUaOk7uXBwcGYM2cOAOM8tuXLl2PcuHGIiIiAIAj4/fffkZmZieHDhwMA3njjDdy8eRPDhg1DixYtkJmZiU8//RQqlcqiddO9vb0xdOhQvP7661L38gsXLpgtGzZ27Fi8/fbbePPNNzF48GBcvHgRCxYsQHh4OHQ6Xa1fh/79++PJJ5/E448/jiNHjmDQoEFwcnJCQkIC9u7di06dOuHpp5+W9vfy8sLTTz+NmJgYtG7dGps3b8bKlSvx9NNPIyQkBADwyCOP4PPPP8ejjz6K6OhodOrUCXv37sV7772H0aNHS3PrRowYgUGDBuHFF19EXl4eevbsiX379uG7774rF6elf1tq+nyIqPHh9x5+7xk7dixWr16Ntm3bonPnzjh69Cg++OCDcpVrs2fPxtq1a3HPPffg5ZdfRq9evVBQUIDdu3dj7NixGDJkCCZPnoxVq1ZhxowZuHjxIoYMGQKDwYCDBw+iXbt2mDRpktQr5JtvvkFkZCS6dOmCQ4cOVXiRuDKurq4YNGgQPvjgA3h7eyMsLAy7d+/G119/bTY6DwALFizA33//jUGDBuGVV15Bp06dkJmZiS1btmDu3Llo27attO/DDz+MefPm4d9//8Vrr70GtVptcUzUiDV46zYSBMHYVXHq1KlCUFCQoFKpBB8fH6Ffv37CO++8U27frKwswcHBocpOjadPnxbuuusuwc3NTVCr1UKXLl3KdWysrJPj5s2bha5duwoODg5CRESEsGzZsgq7eJ44cULo37+/4OjoaNYl89YunqL169cLvXv3FrRareDk5CQMGzZM2Ldvn9k+4nlSUlLMtoudr69fv17xC2hiMBiEhQsXCsHBwYJarRY6d+4s/PXXX8LgwYPLdePOzc0VXnvtNaFNmzaCWq0W3NzchE6dOglz5swx60RdkYq6eP71119Cly5dBK1WKwQFBQkvvPCC1N351tfiVhV1LxdZ+3XT6/XCJ598InTs2FF63n379hX++usvaZ/o6GhhxIgRgouLiwBAeq6VvWf27NkjDB06VHBychIcHByEPn36mB2vbCy3dk6t7P1yq4reg3q9Xli0aJHQunVrQaVSCd7e3sLDDz8sxMbGSvtcuHBBmDx5shAZGSk4ODgIbm5uQq9evYTVq1dL+2zcuFEYNWqUEBQUJKjVasHX11cYPXq0sGfPnipjEgRj19NnnnlGWL58uRAZGSmoVCqhbdu2wg8//GC2X1FRkfD8888LQUFBglarFbp37y6sX7++3HtJfI0/+OCDas9d1jfffCP07t1b+h1ERkYKjzzyiHDkyBFpn8GDBwsdOnQQdu3aJfTs2VPQaDRCQECA8MorrwglJSVmx0tLSxNmzJghBAQECEqlUggNDRXmzZsnFBYWmu2XmZkpTJ06VXB3dxccHR2F4cOHCxcuXCjXDVYQLP/bYunzIaLGi997jJrr956MjAzhiSeeEHx9fQVHR0dhwIABwp49eyqMOyMjQ3juueeEkJAQQaVSCb6+vsKYMWOECxcuSPsUFBQIb7zxhtCqVStBrVYLXl5ewtChQ4X9+/dL+2RlZQnTpk0T/Pz8BCcnJ+Guu+4SoqOjK+1efuvvRBAE4ebNm8L48eMFDw8PwcXFRbjzzjuFM2fOCKGhoeU628fGxgpTp04V/P39BZVKJQQGBgoPPPCAkJSUVO64jz32mKBUKoWbN29W+bpR0yEThDJ1MEREVCWZTIZnnnlGWuPant1+++1ITU3FmTNn6v1cMpkMb775JubPn1/v5yIiImqsiouLERYWhgEDBuCXX36xdTjUQFheTkREREREVI9SUlJw8eJFrFq1CklJSWbN2ajpY9JNRERERERUjzZt2oTHH38cAQEBWL58OZcJa2ZYXk5ERERERERUT7hkGBEREREREVE9YdJNREREREREVE+YdBMRERERERHVk0bdSM1gMCA+Ph4uLi6QyWS2DoeIiAiCICAnJweBgYGQy3lt2xr4eU9ERPamJp/3jTrpjo+PR3BwsK3DICIiKic2NhYtWrSwdRhNAj/viYjIXlnyed+ok24XFxcAxifq6upq42iIiIiA7OxsBAcHS59RVHf8vCciIntTk8/7Rp10iyVmrq6u/BAmIiK7wjJo6+HnPRER2StLPu9tOtksJycHs2fPRmhoKBwcHNCvXz8cPnzYliERERERERERWY1Nk+5p06Zh+/bt+O6773D69GmMGDECd9xxB+Li4mwZFhEREREREZFV2CzpLigowLp167B48WIMGjQILVu2xPz58xEeHo4VK1bYKiwiIiIiIiIiq7HZnG6dTge9Xg+tVmu23cHBAXv37rVRVETUHOn1epSUlNg6DGpEVCoVFAqFrcMgIiKiRsBmSbeLiwv69u2Lt99+G+3atYOfnx9++uknHDx4EK1atarwMUVFRSgqKpJ+zs7ObqhwiagJEgQBiYmJyMzMtHUo1Ai5u7vD39+fDdOIiIioSjbtXv7dd99h6tSpCAoKgkKhQPfu3fHggw/i2LFjFe6/cOFCvPXWWw0cJRE1VWLC7evrC0dHRyZPZBFBEJCfn4/k5GQAQEBAgI0jIiIiInsmEwRBsHUQeXl5yM7ORkBAACZOnIjc3Fxs2rSp3H4VjXQHBwcjKyuLS4gQUY3o9XpcunQJvr6+8PLysnU41AilpaUhOTkZrVu3Nis1z87OhpubGz+brIivKRER2ZuafDbZxTrdTk5OcHJyQkZGBrZu3YrFixdXuJ9Go4FGo2ng6IioKRLncDs6Oto4EmqsxPdOSUkJ53cTERFRpWyadG/duhWCIKBNmza4cuUKXnjhBbRp0waPP/64LcMiomaEJeVUW3zvEBERkSVsuk53VlYWnnnmGbRt2xaPPPIIBgwYgG3btkGlUtkyLCIiIiIiIiKrsOlI9wMPPIAHHnjAliFIPtp2EbsvpeCpQZEY05lNcYiIiIjsXXJ2IZb+7zKcNSq8dGcbVqAQkV2yiznd9iA2PR+nbmYhPrPA1qEQETV7t99+O7p27YolS5bYOhQiskMGg4AfDsVg8ZYLyCnUAQC6Brvjzo7+No6MiKg8m5aX2xMnjfH6Q26RzsaREBFZj9gwrikSBAE6Hf9mEzU3V5JzMP6L/Xh9/RnkFOrg7miclvjB1gvQ6Q02jo6IqDwm3SbOpqQ7j0k3Edk5g8GARYsWoWXLltBoNAgJCcG7776L6OhoyGQy/PLLL7j99tuh1Wrx/fffw2AwYMGCBWjRogU0Gg26du2KLVu2SMcrLi7Gs88+i4CAAGi1WoSFhWHhwoXS/fPnz0dISAg0Gg0CAwMxa9asKuPLysrCk08+CV9fX7i6umLo0KE4efKk2fG6du2K7777DmFhYXBzc8OkSZOQk5MDAHjsscewe/dufPrpp5DJZJDJZIiOjsauXbsgk8mwdetW9OzZExqNBnv27EFRURFmzZoFX19faLVaDBgwAIcPH5bOJz5u06ZN6NKlC7RaLXr37o3Tp08DMC5b6erqit9++83sefz1119wcnKS4iIi+/DUd0dxPCYTzhol5t/VHrufHwIPRxWupuRh3bGbtg6PiKgcJt0m4kh3XjGTbqLmSBAE5BfrbHITBKFGsc6bNw+LFi3C66+/jnPnzuHHH3+En5+fdP9LL72EWbNm4fz58xg5ciQ+/fRTfPTRR/jwww9x6tQpjBw5EnfffTcuX74MAFi6dCk2bNiAX375BRcvXsT333+PsLAwAMBvv/2GTz75BF9++SUuX76M9evXo1OnTlW+jmPGjEFiYiI2b96Mo0ePonv37hg2bBjS09Ol/a5evYr169dj48aN2LhxI3bv3o33338fAPDpp5+ib9++mD59OhISEpCQkIDg4GDpsS+++CIWLlyI8+fPo3PnznjxxRexbt06fPvttzh27BhatmyJkSNHmp0PAF544QV8+OGHOHz4MHx9fXH33XejpKQETk5OmDRpElatWmW2/6pVqzBhwgS4uLjU6PdDRPUnK78EV1PyAABbZg/EY/3D4eaowjNDWgIAPtl+GYUleluGSERUDud0m4hJtzgviIial4ISPdq/sdUm5z63YCQc1Zb9Oc7JycGnn36KZcuW4dFHHwUAREZGYsCAAYiOjgYAzJ49G/fdd5/0mA8//BAvvfQSJk2aBABYtGgRdu7ciSVLluDzzz9HTEwMWrVqhQEDBkAmkyE0NFR6bExMDPz9/XHHHXdApVIhJCQEvXr1qjS+nTt34vTp00hOToZGo5HOv379evz222948sknARhH61evXi0ltFOmTMGOHTvw7rvvws3NDWq1Go6OjvD3Lz8/c8GCBRg+fDgA4yj1ihUrsHr1aowaNQoAsHLlSmzfvh1ff/01XnjhBelxb775pvS4b7/9Fi1atMAff/yBBx54ANOmTUO/fv0QHx+PwMBApKamYuPGjdi+fbtFvxciahhXUoyVJ4FuWrTwcJS2P9wnFKv2RSMuswDf7o/GU4MjbRUiETWgUzcz8fyvJ/HyqLYY2tav+gfYCEe6TZw1CgAsLyci+3b+/HkUFRVh2LBhle7Ts2dP6f+zs7MRHx+P/v37m+3Tv39/nD9/HoCxnPvEiRNo06YNZs2ahW3btkn73X///SgoKEBERASmT5+OP/74Q5pH/d5778HZ2Vm6xcTE4OjRo8jNzYWXl5fZfdevX8fVq1el44aFhZmNIAcEBCA5Odmi16Ds87t69SpKSkrMnp9KpUKvXr2k5yfq27ev9P+enp5o06aNtE+vXr3QoUMHrFmzBgDw3XffISQkBIMGDbIoJiJqGJeTcgEAkb7OZtu1KgVm39EKALB811VkFTTdfhZEVOrLf6/hUlIu1kTdsHUoVeJIt4lUXl7EkiSi5shBpcC5BSNtdm6L93VwqHYfJyencttuXUZHEARpW/fu3XH9+nX8/fff+Oeff/DAAw/gjjvuwG+//Ybg4GBcvHgR27dvxz///IOZM2figw8+wO7duzFjxgyzZR8DAwNhMBgQEBCAXbt2lYvB3d1d+n+VSlUuPoPBsgZIZZ+fWJpf1fOrStl9pk2bhmXLluHll1/GqlWr8Pjjj3P5ISI7cyXZmHS3vCXpBoD7urfAyj3GL+DLd13BvFHtGjo8ImpAhSV67LxgvGB/MjbT4s9+W+BItwm7lxM1bzKZDI5qpU1uNfmAaNWqFRwcHLBjxw6L9nd1dUVgYCD27t1rtn3//v1o166d2X4TJ07EypUrsXbtWqxbt06aE+3g4IC7774bS5cuxa5duxAVFYXTp0/D09MTLVu2lG5KpRLdu3dHYmIilEql2X0tW7aEt7e3xc9TrVZDr6/+ImjLli2hVqvNnl9JSQmOHDli9vwA4MCBA9L/Z2Rk4NKlS2jbtq207eGHH0ZMTAyWLl2Ks2fPSuX7RGQ/rqRUnnQr5DK8MNL4b/qrf6/h+wP2PfJFRHWz53Iq8ouN3xUy8ktwIy3fxhFVjiPdJs5spEZEjYBWq8VLL72EF198EWq1Gv3790dKSgrOnj1bacn5Cy+8gDfffBORkZHo2rUrVq1ahRMnTuCHH34AAHzyyScICAhA165dIZfL8euvv8Lf3x/u7u5YvXo19Ho9evfuDUdHR3z33XdwcHAwm/dd1h133IG+ffti3LhxWLRoEdq0aYP4+Hhs3rwZ48aNMysNr0pYWBgOHjyI6OhoODs7w9PTs8L9nJyc8PTTT+OFF16Ap6cnQkJCsHjxYuTn5+OJJ54w23fBggXw8vKCn58fXn31VXh7e2PcuHHS/R4eHrjvvvvwwgsvYMSIEWjRooVFsRJRw5FGun3KJ90AcEc7XzzSNxRrom7gtfVnkF1Ygpm3t2zIEImogWw5k2j284nYTIR5l6/2swdMuk24ZBgRNRavv/46lEol3njjDcTHxyMgIAAzZsyodP9Zs2YhOzsb//nPf5CcnIz27dtjw4YNaNXKOP/R2dkZixYtwuXLl6FQKHDbbbdh8+bNkMvlcHd3x/vvv4+5c+dCr9ejU6dO+Ouvv+Dl5VXhuWQyGTZv3oxXX30VU6dORUpKCvz9/TFo0CCzDuvVef755/Hoo4+iffv2KCgowPXr1yvd9/3334fBYMCUKVOQk5ODnj17YuvWrfDw8Ci333PPPYfLly+jS5cu2LBhA9Rqtdk+TzzxBH788UdMnTrV4liJqGEUFOsRl1kAoOKRbsD4N+ituzvARavE5zuvYvGWi8gu0OGlO9vYbdkpEdVcid6Af84nAQA6BLribHw2TsRmYly3IBtHVjGZUNO1auxIdnY23NzckJWVBVdX1zodKzY9HwMX74RWJceFt0dZKUIisleFhYW4fv06wsPDodVqbR0O1aNdu3ZhyJAhyMjIMJtXXpEffvgBzz33HOLj48sl5Leq7D1kzc8mMuJrSgBwJi4LYz/bCw9HFY6/MaLa/b/69yre23wBADBrWCvMHd66vkMkogay93IqHv76ILyc1Hh1TDvM/eUkuga7Y/0z/at/sJXU5LOJc7pNxDndhSUG6PSWNfMhIqKmIT8/H2fPnsXChQvx1FNPVZtwE1HDu1rFfO6KPDkoEm/e1R4A8OuR2HqLi4ga3pazCQCAER380D3EWNl2Lj4bRTr7bIrNpNvESVPaPTiv2D5/WUREVD8WL16Mrl27ws/PD/PmzbN1OERUgao6l1fm7i6BAIDE7EIUlvD7HVFTYDAI2HrWWFo+soM/Qr0c4eGoQrHegPMJOTaOrmJMuk00SgVUCuNcH87rJiJqOm6//XYIglBlafn8+fNRUlKCHTt2wNnZ8i/0RNRwxKQ7spImahXxdFLDRaOEIAA3M+y3szERWe5YTAZScorgolWiX6Q3ZDIZugS7AwBOxGTYNrhKMOkuw4nN1IiIiIjsUm1GumUyGUK9HQEA0alMuomaArFr+R3t/KBWGtPZrmLSHZtpo6iqxqS7DCc11+omIiIisjc6vQHRaXkAapZ0A0Cop3EJIfHxRNR4CYKALWeNSffIDv7SdnGk++TNLFuEVS0m3WWULhvGOT9EzYXBwMaJVDt87xA1nBvp+SjRC3BQKRDo5lCjx4Z6GUe6b6RxpJuosTsbn42bGQXQquQY3NpH2t61hTsA4HpqHjLzi20UXeW4TncZYjM1jnQTNX1qtRpyuRzx8fHw8fGBWq3mGq5kEUEQUFxcjJSUFMjlcnY6J2oA0nxuXyfI5TX7Wx3mZRzpvpHOpJuosdtqGuUe3NoHDurSRtgeTmqEeTkiOi0fJ2IzcXsbX1uFWCEm3WVwTjdR8yGXyxEeHo6EhATEx8fbOhxqhBwdHRESEgK5nEVjRPVNms9dgyZqohBppJvl5USN3d+m+dyjOgaUu69rsDuT7sZAKi8vZtJN1Byo1WqEhIRAp9NBr+e0ErKcQqGAUqlkdQRRA6lNEzWRONJ9M6MAJXoDVApeKGtoOYUlkMtk0gAXUW1cSc7BleRcqBQyDGlbPqnuGuyO9SficdIOm6nxnV+G+IeA5eVEzYdMJoNKpYJKpbJ1KEREVInSpNulxo/1ddFAq5KjsMSA+MwChJqScGoYuUU6DP/4XzhqFNg2exCUvOhBtSSuzd0v0htuDuW/t3Up08FcEAS7ujDOd30ZziwvJyIiIrIrBoOAqym1H+mWy2VlOphzXndD23s5FYnZhbiWkodjMZm2DocaMXGpsDs7+ld4f/tAV6gVcmTklyDGzno4MOkuQ2ykxu7lRERERPYhIbsQ+cV6KOUyqRN5TXFet+3svJBc+v8Xk6vYk6hyNzPycTouC3IZMLy9X4X7aJQKtAt0BQAct7MLPEy6y2B5OREREZF9EUvLw7ydaj0fO8yUdEen2tfoV1MnCIJZol02ASeqCXGU+7YwT3g7ayrdr0+4JwDgi91XUaK3n6U9mXSXwfJyIiIiIvtSl87lInEed0w6R7ob0tn4bCTnFEGrkkMuAy4k5iAus8DWYVEjJC4VVllpuejJQRHwcFThQmIOvvr3WkOEZhEm3WU4qTnSTURERGRP6tK5XCR2MOec7oYljmwPbOWDbiEeAIBdFpSY5xfrIAhCvcZGjUdyTiGO3MgAAIzsUHXS7eWswRt3tQcAfLrjstQPwtaYdJfB8nIiImrKli9fjvDwcGi1WvTo0QN79uypdN+EhAQ8+OCDaNOmDeRyOWbPnl3hfuvWrUP79u2h0WjQvn17/PHHH3U6L9Gt6tJETSTOBY9Jy4fewGSuofzPlGAPbeuLoaYlnqorMT9wLQ3t39iKj7dfqvf4qHHYfi4JggB0aeGGQHeHavcf1zUIg1v7oFhnwLx1p2Gwg3/zTLrLYHk5ERE1VWvXrsXs2bPx6quv4vjx4xg4cCBGjRqFmJiYCvcvKiqCj48PXn31VXTp0qXCfaKiojBx4kRMmTIFJ0+exJQpU/DAAw/g4MGDtT4v0a3iMozlyMGetWuiBgABblqoFDIU6w1IzC60Vmh2y2AQMH3NETz74zGbjRin5xXjhGm95Nvb+GBIG2PSve9KGgpLKm9avPFUPADgq3+vIS23qN7jJPsnzuceWU1puUgmk+HdezvCUa3Aoeh0/HTY9p83TLrLYPdyIiJqqj7++GM88cQTmDZtGtq1a4clS5YgODgYK1asqHD/sLAwfPrpp3jkkUfg5uZW4T5LlizB8OHDMW/ePLRt2xbz5s3DsGHDsGTJklqfl6gsg0FAco4xSfZ309b6OEqFHMEezaeD+Y30fGw/l4SNpxKQmltskxh2X0qGIADtAlwR4OaAdgEu8HfVoqBEjwPX0ip93NEbmQCAIp0Ba6JuNFC0ZK8y84sRddX4frmzmtLyslp4OOL5EW0AAO9vvoDELNtebGPSXYaLluXlRETU9BQXF+Po0aMYMWKE2fYRI0Zg//79tT5uVFRUuWOOHDlSOmZ9nZeaj4z8YpTojSO1vi6Vdyy2ROmyYU1/Xrc4Dx4ArtloTuv/LqQAAIa29QFgHH0cYvr/XRdTKnxMTmEJLiZmSz+viYpGQTEHw5qzJf9chs4goK2/CyJq2Ezx0X5h6BrsjpwiHV5bf8amfQKYdJfhVKa8nM0biIioqUhNTYVer4efn/napn5+fkhMTKz1cRMTE6s8Zm3PW1RUhOzsbLMbNU9iKbi3s7rWy4WJSpupNf2RbrOkO7Xhn69Ob8C/l4yJtVhWXvb//3chucLv2sdjMmEQgCB3B4R4OiIjvwS/Ho1tmKBt4GZGvlTJQeUdi8nAt1HRAIBXRrer8eMVchkWje8MpVyGf84n4e8ztf+8qysm3WWISbfOIKBIZz/ruhEREVmDTCYz+1kQhHLb6uOYNT3vwoUL4ebmJt2Cg4PrFCM1XsnZxjm9fq61Ly0XlW2m1tSVTbqvJjf8SPfx2ExkFZTA3VEldS0HgP4tvaFWyBGTno+rKeUvBhw1dajuFe6JaQPDAQD/3XMdOjtab9lasvJLMGrJHoxbtq/KOe7NVbHOgJfXnYIgAPd1D8Kg1j61Ok4bfxfMvD0SAPDGn2eRlV9izTAtxqS7DHHJMIDN1IiIqOnw9vaGQqEoN7qcnJxcbhS6Jvz9/as8Zm3PO2/ePGRlZUm32NimO9JFVRNHuq2RdDenZcOupNh2pPt/pg7lg1v7QCEvvcDmpFGid4QngIq7mItJd49QD9zfIxgejirEpOdjy1nbjVDWlzPxWcgp0iE+q1BqFEalVuy6iktJufByUuP1Me3rdKxnhrZEpI8TUnOL8O7mc1aKsGaYdJehkMvgoGIzNSIialrUajV69OiB7du3m23fvn07+vXrV+vj9u3bt9wxt23bJh2ztufVaDRwdXU1u1HzlGTFpLt0Tndek55GKAiC2eh2fczp/uVwLB74MgoJWQUV3i8m1GVLy0VlS8zL0ukNOB5TmnQ7qBV4pG8YAODL3dea3O/sfELptJkfD9q+u7Y9uZyUg2U7LwMA3ry7Azyc1HU6nkapwKLxnQEAvxy5iX1XUuscY00x6b4F1+omIqKmaO7cufjvf/+Lb775BufPn8ecOXMQExODGTNmADCOLj/yyCNmjzlx4gROnDiB3NxcpKSk4MSJEzh3rnSU4LnnnsO2bduwaNEiXLhwAYsWLcI///xjtqZ3declqkpp0l23JmoA0MLDAXIZkF+sR0oTXooqKbvI7HtsbEYBiq04bTK7sAQLNp7DoevpWPnv9XL3n4vPxoXEHCjlMgyuoCT4jnbGKpeD19MQl1matF9IzEFesR4uGiVa+7kAAB7pGwqtSo7TcVnYc7nhE6X6dCExR/r/Q9HpuJKcU8XezUOxzoDdl1Iw55cTKNELGNrWF3d1DrDKsXuGeWJKn1AAwCt/nG7wBn1Mum/hLC4bVsykm4iImo6JEydiyZIlWLBgAbp27Yp///0XmzdvRmio8UtIQkJCubWzu3Xrhm7duuHo0aP48ccf0a1bN4wePVq6v1+/fvj555+xatUqdO7cGatXr8batWvRu3dvi89LVJUk05xufyuMdGuUCgS6OwBo2vO6xfncEd5OcFIroDcIiEm3Xon5TwdjpKR+3bGb5eYj/3jIuMzXyA7+FY5Qhng5om+EFwwCsPZw6dSRY6ZR7m6hHlJJupezBhN7Gns6PPPjMRyJTrfa87C1i6ak29W0etKPB5vvNJrD0en4v5+Oo8fb2/HoN4dwJi4bTmoF3hnXsc59R8p68c42CHDT4kZaPn481LDVBTZNunU6HV577TWEh4fDwcEBERERWLBgAQwG2zVL4Eg3ERE1VTNnzkR0dDSKiopw9OhRDBo0SLpv9erV2LVrl9n+giCUu0VHR5vtM2HCBFy4cAHFxcU4f/487rvvvhqdl6gq4tq61igvB0qbqTXled3iiGmkr7O0xFJFTctqo1hnwDf7jKPbCrkMWQUl+PtMgnR/frEO64/HAwAe7B1S6XHE+9YejpGapB2JNpWWl2m8BgDPj2yDXmGeyCnU4eGvD2LXxfJzwRsbnd6AS0nG39Pc4a0BVHwBozm4npqHyV8dwF8n45FTpIOPiwYP9g7Bb0/3ky6SWYuLVoX37u2E18a0w2P9wqx67OrYNOletGgRvvjiCyxbtgznz5/H4sWL8cEHH+Czzz6zWUxllw0jIiIiItux5pxuAAg1NVO7lpKLIp0eRTo9SppYZ2yxiVpLX2dE+IjP1zpJ958n4pCUXQRfF43UEbrsfOS/TsYjt0iHUNNodmVGdPCDp5MaSdlF0txusYlazzDzpNtFq8K3U3vh9jY+KCwxYPqaI9h0KqHcMRuT6LR8FOkMcFAp8HCfUAS5OyCroASbTzfu51UbH267CJ1BQM9QD/wxsx8OzhuG9+7thHYB9dPLY0hbX0wbGGHW4K8h2DTpjoqKwj333IMxY8YgLCwMEyZMwIgRI3DkyBGbxeTMpJuIiIjI5op1BqTlFQOwzpxuAAgzjXQv33UVbV7bgjavbUH7N7bgzxNxVjm+PRDLy1v6OCPCWxzpNm+mFpdZgN7v/YP5G85afFyDQcDKPdcAAFMHhOPhPqFQyGU4HJ2By6ZRWzEBn9wrBPIqkhqNUoH7e7QwPuZQDBKyChCXWQC5DOgS7F5ufwe1Al9N6YmxnQNQohfwfz8dw4FraRbHbm/E0vLW/i5QKuSYdJuxhP6nBi55trXTN7Ow6VQCZDLg7XEd0S3Eo8r3TWNm06R7wIAB2LFjBy5dugQAOHnyJPbu3Ws2X6ysoqIiZGdnm92srbS8vPmVdxARERHZi+Qc4yi3SiGDZx27F4sGtvKBk1phtq1EL2DXxRSrHN8eXEk2jmqbj3SbJ91/nYxHUnYRVu+PxumbWRYdd9elZFxKyoWzRokHe4fAz1WLYW2Nnch/PBSDM3FZOHkzCyqFDBNMCXVVJvUylpjvvpSCDSeMJentAlylAbBbqZVyfDqpG0Z28INBADacjLcobnt0IdGYw7TzNzaMe+C2YOkChlh23hws2nIBADCua1C9jWzbC5sm3S+99BImT56Mtm3bQqVSoVu3bpg9ezYmT55c4f4LFy6Em5ubdAsODrZ6TFIjNY50ExEREdmM2ETN10VrtWZK7QJccfyNETg933hbcE8HAEBmfrFVjm9rmfnFSDV1Zo8sm3TfslZ32SWTxMSnOl/uNo5yP9g7BK5aFQBgsmlu9u/H4rBqXzQAYEQHf3g7V1+ZEO7thH6RXhAEYMk/xuWheoZ6VPkYhVyG+7obE/qDjXik+3yCMbFuY0q6zS5gNJPlw/ZeTsXeK6lQKWTSvPamzKZJ99q1a/H999/jxx9/xLFjx/Dtt9/iww8/xLffflvh/vPmzUNWVpZ0i421fpc/JzXLy4mIiIhsTZzP7e9mnfncIrVSDhetCi5alTRXPLOgxKrnqA9puUXYczmlyvWqxdLyADctnDVKqbw8M78E6aZS/cISPQ5dN3YBl8uAvVdSsfeW5bgKS/TYcDIePx2KwU+HYrB81xUcvJ4OpVyGx/uHSfsNauUjzUded+wmAOChXpU3ULuV2FCtwNRArHs1STcA9A73hExmbA6XktM4l367mGQc6W7rXzq6+6B0AaPpN1QzGATpYs9DvUMR7Olo44jqX8X1Gw3khRdewMsvv4xJkyYBADp16oQbN25g4cKFePTRR8vtr9FooNFYZ05PZdi9nIiIiMj2rLlGd2XcHYwjtpn59p90v/LHaWw9m4TFEzrjgZ4VV3tK87l9jcm2g1qBIHcHxGUW4FpKLjydPHH0RgaKdAb4uWowqmMAVu+PxqItF9C/ZX/IZDJk5hfj8dWHcTwms9zx7+kahAC30o7SCrkMk3sF48Ntxqmi4d5O6BtZeQO1W41o7w9vZzVSc40XBHqGeVb7GHdHNdr4ueBCYg4OXU/HGCut49xQcgpLEJtuXJ+8rWmkGyi9gBGXWYBNpxIw3oISfXulNwhIyyuCr0vFF8w2n0nA6bgsOKkVeHZoywaOzjZsOtKdn58Pudw8BIVCYdMlw9hIjYiIiMj2Eq3cubwi7o7GueL2Xl6uNwjYd8VYTv3FrqswGCoe7RaT7kjTUmEAynUw32sqLe/f0hvPDm0JJ7UCp+OysPl0IpKzCzHxywM4HpMJNwcVhrf3k27jugbihZFtyp3z/p7BUifoyb2CazQVQK2UY0IP4wWEADctgixcIqqPqTP6weuNr8RcnLPt76o1W8dcbrqAAaDB15C2tvkbzqL3ezsqnHdfWKLHB1svAgCmD4qwaCpCU2DTke677roL7777LkJCQtChQwccP34cH3/8MaZOnWqzmNhIjYiIiMj2kk1zuusz6fZwNI50ZxWUwGAQ7LZz8qWkHKkK81pqHrafT8LIDv7l9hOXC2vlVybp9nbCnsupuJpqvE8sJR/Q0hvezhpMHxSBJf9cxqItFyCTATfS8uHrosF3T/SW5hxXxc9Vi+eGtcLB62mY2NPy0nLR1P5hOB6TgbFdAi1+TO9wT6zeH90oO5hfSDSfz13WAz2DseSfyzh6IwMXE3Msev3tTXxmAX46FANBAN748wz6RXqZJdaf7riMG2n58HPVYNrACBtG2rBsOtL92WefYcKECZg5cybatWuH559/Hk899RTefvttm8XkxEZqRERERDaXmGWa012PSberqbzcIAA5dvzd74hpDWvRV/9eq3C/ssuFiSJM/381OQ8ZecU4E2/sVj6gpTcAYNrACHg5qRGTno8bafkI9nTAbzP61SjhmzWsFX6Y1gduposYNeHrqsXap/piSp9Qix/TK9xYhn4pKVeaq95YXDA1UWsbUP719XXV4o52fgAa7/Jh3+y9Dp2pEiMzvwRvbzwn3Xc2Pkt67759T8dKO9U3RTZNul1cXLBkyRLcuHEDBQUFuHr1Kt555x2o1dZZFqI2nDmnm4iIiMjmkkxLhvnW45xurUoBB5VxwMWeS8yPRhsbn03uFQK1Qo6jNzJwxLRNVFCsR1ymca6wOKcbKFNenpqL/VfTIAhAaz9n+JouZjhrlJg7wtg9urWfM36b0Q8hXvbd2MrLWYPWptH8Q42sxLx0ubCKl8gSO8KvO3YTBcX2WXmbU1iCr/69Kr3fRFkFJdLFgrnDW0MuA/48EY+dF5Kh0xvw0rpT0BsEjO7kjxEVVGo0ZTZNuu2RE+d0ExEREdlcUgOMdAOAu6P9N1M7GmMc6R7V0R/3dQ8CAHx5y2j31ZRcCIKxZN6rTDmvONIdk5aPXReTAQADWvqYPfah3qHYNGsANjw7oF7L+a2pd7hxXveBa+nV7Fl7giDg0PV05BdbJy8QBKHK8nIAGNjSG8GeDsgp1GHjKftci3zt4Vi8t/kCHlp5AFll/t38eDAGecV6tPFzwf8NbYmp/cMBAK/+cRpL/3cFZ+Ky4apVYv7dHWwVus0w6b4FR7qJiIiIbCu3SIc80yhffSeBUjM1C5YN0xsEqyVglkrOLkRsegFkMqBbiLs0D/af80lSOTlgTLoB81FuAAhw1UKrkkNnELDpdAIAYECr8h3GOwS6QWsa9W8MekcYS8wPXq+/pHv1/mg88GWUWYl0XcRnFSKnUAelXGbW7K4suVyGSbcZR7vttcQ8Nj0fABCdlo9ZPx+H3iCgSKfHN/uuAwCeHBQBmUyGuSNaI9jTAfFZhVi6w7gW+2tj2lfa1bwpY9J9C3YvJyIiIrItcT63i0YpVSHWl9Jlw6ovL5/5w1Hc9s4/OBmbWa8xlSXO527j5wIXrQotfZ0xvL0fBAH4757S0e5blwsTyeUyab3u/GI9lHKZNErcmInzui8kZtfL1IBinQFf7ja+vhtPJaBYV/fVlS4kGEvLW/o6Q62sPA27v2cLKOUyHIvJlMrR7Ym4sgAA7L6Ugo+2XcSfx+ORklMEf1ct7jI1xXNUK/HevZ2kfftFeuH+no13KbS6YNJ9C6m8vFhf6XIMRERERFR/ksXlwtzqf0TM0vLy0zezsPVsEvKK9Xhp3SmU6BtmidujpqS7Z5iHtO2pQcbR7t+PxWH+hrPYfyVVKluuaARVnNcNAN1DPOr9QkZD8HXRIsLHCYIAHKqH0e6/TsZLyWVOoQ77r6bW+ZjVlZaLfF20GN7e2FDtx4P2N9qdZFpZQEyul++6ioV/nwcAPDEg3OyCwsBWPnhqcARa+zlj4X2darSkXFPCpPsWZbvo5ZfYZ/MCIiIioqasdI3u+l/D19Kk+8t/r0r/fyExp9IO4rUVn1mAF349Ka3jLBJHunuGekrbeoZ5YkgbHxTrDVi9PxoP/vcgtp9LAlB+pBsondcNAANaeVs1blsqXa/bukm3IAjS79dVa8wNtp5NrPNxxaS7bSVN1Mqa3MtYYr7hZLxVRtmtKcn073PagHA8aboAlJFfAheNEpNMa42XNW9UO2ybMxihXk7l7msumHTfQquSQ1yikSXmRERERA0vqQHW6BaVzumuvEQ5Ji0fm03zoZ8abEwyPt1xWZpHbQ0rdl3Fr0dvYvbPJ6Rqy4JiPc7GGZf46hHqYbb/l1N6YuUjPXF/jxbwdDI+B7VSjvaB5RO6yDIj3f1bNp2ku3e4OK/buh3Md11KwcWkHDipFVh4X2cAwLazSdDXsQpWLC+vaLmwW/Vv6Q0fFw0y80vw76WUOp3XmgwGAck5pf8+XxzZBgNNF3Ie6RcKF23Nl41rDph030Imk0klN2ymRkRERNTwkqSR7gZIuk1zurOqGOn+eu81GARgUGsfvHxnWwxq7YNinQHzfj9ttemIe68Yy5fPJWTjL1PX6pM3M6EzCPB10aCFh4PZ/mqlHMPb++GD+7vg8Kt34LcZfbF+Zv8Km1SJ5cxuDip0aeFmlXjtgTjSfS4+G9mF1us+/5VpLvekXiEY0cEPbg4qpOUVl1umrSYKS/S4lpoHAGhrwRroCrkMd3U2lm//cSKu1ue1ttS8IugNAuQywNtZDaVCjpWP9MTXj/bE7Dta2zo8u8WkuwJspkZERERUe3VNRMWku76XCwNKy8szKmnGlZ5XjLVHYgEY51LLZDK8O64jHNUKHLqejp8O133O7c2MfFw3JWQA8NG2SyjWGczmc1c1F1Yhl6FnmGeFo9yAsZx58YTO+HJKDygVTefrv5+rFmFejjAIwGErlZifupmJqGtpUMplmDogHCqFHHe0M86v3lKHEvPzCdnQGwR4Oaktfl/f2824PNw/55KQY8WLCnWRbKpC8XbWSO8lrUqBYe38oGpC7y1r4ytTAY50ExEREdVMYlYhvjtwA1O+Poi2r2/BK3+crv2xGnROd9VLhn0XdQOFJQZ0DHJFv0jjyGqwpyOeH9EGAPDupvP4+VBMnS407DONcrcPcIW3swYx6fn4+XCMlHT3KDOfu7Ye6BksjQw3JWIndmvN6xbXP7+rSyCC3I3VBXd29AcAbD2TCEGo3e/5jGmaQKcWbhY3E+sY5IoIHycU6QzYejapVue1NnFlAf8GaHLYlDDproDUwbyIjdSIiIiIqqI3CHhs1SH0WbgDr68/gz2XU1GsN2BbHZKEpCz7KC8vLNHj26hoAMCTgyLNkqVH+4Whf0sv5Bfr8fLvp/HAl1HlmqBZau8V45zkO9r74blhLQEAS3dcLpN0e1T62OauT6RpXve12s/rNhgEHL2RjoV/n8ffprn7003roQPAwFbecFQrEJ9ViFM3s2p1jtNi0h1keXm/TCbDuK7G0e71x+2jxDwpx/hvszmutV0XTLor4KxRAGB5OREREVF1rqXkYtdFY6On7iHumDXUmDSm5hbVquvyrY2a6ltVI92/Hr2J9LxitPBwwGjTaKdIIZfh28d74bUx7eCoVuDIjQyM/nSP2drZljAYBGmke0BLb0zqFYJQL0ek5hYjq6AEWpUcHSopG6fSke4z8dk1rlI1GAR8tO0ier23A+NXROHL3ca5+6M6+puV6mtVCgxp4wug9iXmYrLesQZJNwAp6d5/NVVaSs+WkqSR7vqvQmlKmHRXwEnN8nIiIiIiS6TkGhPkSB8n/D6zP+YMby2t05tUiyQhLa8YOoMAmQzwcWnIJcOKy5WIbzMlWI/1C6twLrRSIce0gRHYPncwhrf3g84gYOHfF2r0HfJ8YjbS84rhpFagW4g7VAo5/mMqXQeALi3cOVe2CoHuDgj2dIDeINS40dm2c0n47H9XkJpbBBeNEnd3CcSyB7vh00ndyu0rlphvqUWJeWGJHpeTjZ3uO9ewkV2IlyO6h7jDIBiXD7M1aWUBjnTXCP8FV4CN1IiIiIgsk5prbEDm7WxMkGUyGQJM8z0TsmqedIuJupeTpkGSTTdTeblBAHJu+e4Xn1kAAJU2KBMFuTtg5SM94apVQm8QkJhVYPH59142jnL3jvCSnu/YTgHS6PZtYXWfz93U1XZe95+mruCTe4Xg6OvDsXRyN4ztHChdNCprSFtfqBVyXE/NkxJoS50zNVHzdra8iVpZ40wN1dbbQRdzqd8C53TXCJPuCjgx6SYiIiKySKqpFNy7zKi0mFgk1CD5FEmdyxuofFWrUsBBZZxaWHZetyAI0kWDADeHCh97q0BT4634TMsvNohLhZVdP1sul2HZg90xfWA4nhgQbvGxmiuxQdyBGszrzioowY4LyQCAh/uEVJhol+WsUUrrUW8/V7N+BWITtY5BljdRK2tMpwAo5TKcicvGlRom/NbWkMv5NSVMuitQ2r2cjdSIiIiIqpJqKi/3cS5Nkus20t3w5atSiXlB6bJh2YU65BcbvwtaOjopdnROtPB5F5boccg0OismdKJwbye8OqY9PJzUFh2rOesdbqwGOH0zC/nFlg2abTmTgGKdAa18ndE+wLI58/1MF0ZOxmbWKL7TpvncnWs4n1vk5azBoNY+AIANNh7tbsjl/JoSJt0VYCM1IiIiIsuISbe3c2lyGGAa8bU0+SzLFuWrYol5RpmRbnGU3sNRBQe1wqLjiBcb4i0c4T92IwNFOgN8XTRo5etck5CpjGBPRwS5O0BnEKSO79VZf9w4P3pctyCLR5/Fkv+z8dk1iu90XO2aqJU1ulMAAGC3aTqCLRTp9NK/kYZYzq8pYdJdAWmk28IrZURERETNVZppTrdXhSPdNS8vFzs0N+RIt4fYwTy/dKQ7QerSbFlpOVBahm7pxYY9ZbqW16bsmEqJo90Hr1U/rzsxqxAHrhtL0e/pGmjxOdqZRsTjMgsqXGKuImWbqHWqYRO1svpEGJ/fmbgsmzV7TjZVoWiUculCFVmGSXcFOKebiIiIyDKlI90Vzemu+Uj3jbR8AECAe8OXl2eVWTYsUZrPbXkc/jUsq99XwXxuqp2azOvecDIOggDcFuaBFh6OFp/DzUGFFh7GCyvnEiwb7a5rEzVRCw9HtPAwdmm3dDTf2srO5+ZFopph0l0Bdi8nIiIiskxp9/LS8nKxoVhNk26d3oCTNzMBGJfKaiily4aVKS83dS6vSdJdkxH+jLxiqex4QCsm3XXV2zQSfPJmJgqKq+7LVLa0vKZKS8yzLNpfnM/dqZZN1MqSurTXoGGcNSVyPnetMemuABupEREREVVPEARpnW6zkW5T8pmaW4RincHi411IzEF+sR4uWmWDznF2N5WXZ1RQXl67pLv6iw37rqZCEIBWvs7sBG0FIZ6O8HfVokQv4HhM5SPBl5JycC4hGyqFDGNM86Rron2AsUTc0pFu8cJKpzrM5xaJFxZq0qXdmsQmh76cz11jTLor4Cwl3ZbN1SAiIiJqjnKKdFJSXTbp9nRUQ62QQxBKS1ItcSTaOB+3e4gH5PKGK191N81PLTtPVxrVq8GcbnHfnEJdtfNu/zppHG0d2s63RrFSxWQyWWlSWsV63euPG7t/397GV7rYUhPimu3nLGymdsYKTdREfUwj3adq0KVdNO/3U7h3+b4aP64sdi6vPSbdFSgtL+dINxEREVFlxDW6ndQKsw7fcrmsdPmsmiTdprmqPUM9rBhl9UqXDCtNuuNN5eWBNRjpdtYo4aI1fo9MrKLEPCu/BDsvpAAAxnWteYkzVUyc111Z+bXBIODPE6bS8lq+7mJ5+ZXkXBTpqs4VCor1uJSUAwDobIXpEsGeDgh000JnEHDsRqbFj9tzOQU/HYrF8ZhMaYm62uAa3bXHpLsCTqYlw2zVGZCIiIioMUjLM83ndilfblrTpmKAcQktAOjRwEm3m4N593JBEMp0L69ZgmFJifnmMwko1hvQ1t9F6ohNdSd2MD8em4nCkvIJ8Zn4LMRlFsBJrcCwWlYYBLhp4e6ogs4g4HJSbpX7nkvIhkEwVoFYY4kt42i+6cLCdctKzA0GAYu2XDCLqbbE5oINuZxfU8GkuwLiSHexzoASveXzkIiIiIiaE3Gku2xpuUhKPjMtWzYsPrMA8VmFUMhl6BribrUYLeFxSyO1nCId8k3NuAJqUF5edv+qkm6xxPkejnJbVbi3E3xdNCjWGXA4uvyIrlhdMLCVD7Qqy9Zev5VMJkP7gIqbqWXmFyPqaprUyO2MNJ/b1WrdvmuyNBoAbDqdgDNxpYm2pWXxFZFGuiu4yEZVU9o6AHskNlIDjB3MazPfg4iIiKipK10urPx3JUuSz7LE0vL2Aa5wVDfsV1Txu55YXp6QWWjarjIrm7dE6cWGip93XGYBDppKfO+uwRrRVD2ZTIZh7Xzx06FYbD2biIGtfMzu/9/FZADAkLY+FT3cYh0CXbH/alq5BPbp748h6loatCo5Brbykf59dLJiJ35xpPuEaTS/qosHJXoDPtp2EQDQK8wTh6LTa510C4IgNVKrafUHcaS7QiqFHGql8aVhiTkRERFRxVKk5cIqH+lOtDDptlVpOVB2ybBiGAyCtORXbRpGlc5lr3iEf4NpTnHvcE8EuddsFJ2qN7KDPwBg69kkGAyCtD01twinTMvRDWlTt+Z1UjO1MqXaFxNzEGWaS15YYsD2c0k4HmM8nzU6l4vCvByNo/l6A45V0aUdAH4+HIvotHx4O6vx4f1dAADX0/JqtSxydqEOBaaSfc7prjkm3ZVgMzUiIiKiqqVWsFyYqCZrVgPAkRvG0V9bJN1upu7lBgHILdZJFwpqslyYKLCaEf4/TxhLy2uzRjRVr1+kN1w0SqTkFOF4bGlSuutiCgQB6BjkCt86Jo3SsmHx2VJi/9OhGADAnR38sXnWQMy+oxU6BLqiW4g7+kV61el8ZclksjIN4yovMc8v1mHpjssAgP8b2gohXo7wc9VAEIxL85VVrDPgyTVHMH/D2UqPl2wqLXdzUNW6NL85Y9JdCTZTIyIiIqpa6ZzuupWX5xXpcD7BmAj0DGv4pFurUsDBlEhk5pUgXky6azES7V9Fefn5hGxcSMyBWiHH6I41XyOaqqdWyqUmaVvOJErbd4ql5XUc5QaASB8nqJVy5BXrEZOej4JiPdYduwkAeLB3CNoHumL2Ha2xadZA/DGzv9nUVWsQl0arqpnaN3uvIyWnCCGejpjcKwQApLno526Zi344Oh3bziVh9f5oxKbnV3i8RKlzOedz1waT7ko4qcWRbibdRERERBWRupdXMNItJp8puUXVNqY9GZsJvUFAoJu2xo3LrKV02bBiabmvgFqMiFY1wr/eNMo9pK0P3EznI+u703RB4+8ziRAEASV6A/69ZGyiNqRt3ZNupUKOtv4uAIwl5htPxSOnUIdgTwcMaOld5+NXp7dpve7jMZkVLluWX6zDf/deBwDMHd5amjZbUVk8AOy5nCr9/9aziaiIOJ+bpeW1w6S7EuIaizmFTLqJiIiIKiKVl1fQzdjLSQ21Qg5BKO16XBmxiVqPME/rB2khscQ8M7+k1suFAaWj49mFOrPBG4NBkOZzc23u+jW4tQ+0KjluZhTgbHw2jt7IQE6hDp5OanSxUlOzsh3MfzSVlk+6LQRyuXW6lFcl0scJ3s4aFOkMOBmbVe7+Xw7HIjO/BKFejrirS2mzvrJl8WXtu1KadP99prKkm2t01wWT7kqIV2zFDxMiIiIiMlfVkmFyuQx+bsbt1TVTE5PunjaYzy3yKNPBXEy6A2tRXu6sUcLFVE5ctrT+WEwGErIK4aJVWmW0lSrnoFbg9tbG13jr2UTsvGAsLb+9tQ8UVkqKO5hGjTeeSsDxmEwo5TLc37OFVY5dHeN63cYLVJtOxZvdp9MbpFHuaQMjzJ6vGPOFxBzoTNUnGXnFOFOm3PzojQxp/nZZYtJdm+aCxKS7Uj6mK7YpOUy6iYiIiG5VUKxHnmk94ormdANAgGv187oNBgHHbdi5XFS2g3liHUa6yz6u7MWG/VeN828Hta79GtFkuTs7GruYbzmTKM3nvt2KFzvEUu0bacY50CM6+MHXpeES0gd6BgMAvjtwQ+rKDgCbzyTiZkYBPJ3UuL+H+UWAEE9HOKkVKNIZcC01D4DxfSkIQBs/F3QLcQcAbD2XVO584nuZc7prh0l3JXycmXQTERERVUasBtQo5dKqL7cKcK++g/ml5BzkFOngqFZI82RtQUy6b2YUSI10a9O9HChNuuPLPG+x6ZXYeZrq15C2vlApZLicnItLSblQyGUY3Kpu63OX1cbfFbIyg+Zis7KGMri1D+7pGgiDALy07jRK9AYIgoCv/r0KAHi0b1i5iztyuQztpGZqxhLzvVeMc937t/TGneJyaxWUmCflcE53XTDproQ00s3yciIiIqJyUsosFyaTVVyyK3XyrmKk+0i0cZS7W4g7lArbfTV1czCO1p83NZlyc1DBUV27rtPismHi6GCxzoCjptH8PuG2m7fenLg5qNAvsrSpWY8QD6s2r3PWKBHm5QTAOILcP7L+G6jd6o2x7eHhqML5hGx89e81RF1Nw5m4bGhVckzpG1rhY8QS87PxWRAEQWqiNrCVt7TGedS1NGTmF5s9LimLc7rrgkl3JXxNpRPJOdUvc0FERNQYLF++HOHh4dBqtejRowf27NlT5f67d+9Gjx49oNVqERERgS+++MLs/pKSEixYsACRkZHQarXo0qULtmzZYrbP/PnzIZPJzG7+/v5Wf27U8NJyxc7lFZeWA6Xdv6ua0336pnE+afcQ25WWA4CHKSETly6r7Sg3UP5iw6mbmSgsMcDLSY2Wvs51jJQsJZaYA8Dtba03yi0SexA83KdhGqjdystZgzfuag8A+HTHZbz393kAwMSewfB0qvjfZdkO5jHp+biZUQCVQoZe4Z4I83ZCW38X6A0CtpcpMdcbBOkiW22nXDR3Nk26w8LCyn0Qy2QyPPPMM7YMCwDg42xa5oLl5URE1ASsXbsWs2fPxquvvorjx49j4MCBGDVqFGJiYirc//r16xg9ejQGDhyI48eP45VXXsGsWbOwbt06aZ/XXnsNX375JT777DOcO3cOM2bMwL333ovjx4+bHatDhw5ISEiQbqdPn67X50oNIzW38iZqIrGTd3wVSffVlFwAQCs/25WWA6Xl5alWSC5uXTbs4PV0AECvcM9KqwLI+oa394OYCw+th+Z180a3w4qHumPagAirH9tS47oGYVBrHxTrDDgTlw25zNhArTJlO5iLo9zdQjyktcRHmZZbK7t0WFpuEfQGAXKZcVUCqjmbJt2HDx82+xDevn07AOD++++3ZVgASsvLU3OLYTAINo6GiIiobj7++GM88cQTmDZtGtq1a4clS5YgODgYK1asqHD/L774AiEhIViyZAnatWuHadOmYerUqfjwww+lfb777ju88sorGD16NCIiIvD0009j5MiR+Oijj8yOpVQq4e/vL918fKw/4kQNr6rO5aIAqaFY5XO6xYZOEd5OVoyu5sTyclFd1gsXLzaII/wHrnE+ty14O2vwycSueHtcR7T1d7X68T2d1BjVKcAmo9wimUyGd8d1hKPaOH97dKcABHs6Vrp/Kz9nKOUyZOSX4NejNwHAbG1xsTrg38upUm8DcY1uHxeNTaeANGY2fdV8fHzMPoQ3btyIyMhIDB482JZhAQC8nNWQyYzlFBm3zGkgIiJqTIqLi3H06FGMGDHCbPuIESOwf//+Ch8TFRVVbv+RI0fiyJEjKCkpAQAUFRVBqzUfDXRwcMDevXvNtl2+fBmBgYEIDw/HpEmTcO3atSrjLSoqQnZ2ttmN7E/pGt2Vj3yJo8XJOUUoMS1RVFZmfjHS84zfsyJ8bJt0u98y37cu5eUBZcrLS/Sl87nFZZ6o4dzTNQhT+lQ8v7mpCPZ0xKLxndEj1AP/GdGmyn21KoU0xeFkbCYAYECr0qS7tZ8zwr2dUKwz4I/jcfjlSCze22wsW+d87tqzm0sVxcXF+P777zF16lS7KLtRKeTwNK3XmMwScyIiasRSU1Oh1+vh5+dntt3Pzw+JieW71AJAYmJihfvrdDqkphpLEkeOHImPP/4Yly9fhsFgwPbt2/Hnn38iISFBekzv3r2xZs0abN26FStXrkRiYiL69euHtLS0SuNduHAh3NzcpFtwcHBtnzrVo1TTnG4vp8pHur2dNFApZBCEir9PXU0xjnIHuGlr3bTMWsR1ukV1KS8XH5tVUIJD19ORX6yHu6MKrX1tW0JPTdddXQKx7ul+CLegYqR9QOmov4tWic5BbtLPMplMaqj2+vozePG3U4gyVWqUHRGnmrGbpHv9+vXIzMzEY489Vuk+DX3lm2t1ExFRU3LrRW1BEKq80F3R/mW3f/rpp2jVqhXatm0LtVqNZ599Fo8//jgUitJlakaNGoXx48ejU6dOuOOOO7Bp0yYAwLffflvpeefNm4esrCzpFhsbW7MnSg1C6l7uUnnSLZfLpNGxikrMr5nmc9t6lBsoP9IdWIfycletSlpGbf3xOABArzBPm5YhE4nEZmoA0DfCq1zJ+D1dA6EwvVc7BLpizh2tsXnWQLwwsupRdKqcbS8plvH1119j1KhRCAwMrHSfhQsX4q233mqwmHxcNLiQmMOkm4iIGjVvb28oFIpyo9rJycnlRrNF/v7+Fe6vVCrh5WWcl+rj44P169ejsLAQaWlpCAwMxMsvv4zw8PBKY3FyckKnTp1w+fLlSvfRaDTQaCpP5Mg+lDZSq7qxUoCbFjczCipcNqx0PrftO3q7OZgn3XXt0uzvpsWV5FxsMa153JvzuclOlE26y5aWi9oFuGL7nEHQqBQIcq/9xScqZRcj3Tdu3MA///yDadOmVblfQ1/59nHmWt1ERNT4qdVq9OjRQ2pYKtq+fTv69etX4WP69u1bbv9t27ahZ8+eUKnMkxOtVougoCDodDqsW7cO99xzT6WxFBUV4fz58wgICKjlsyF7IS4Z5lNFIzWgtCFZQmb5pPtqsv2MdGtVCjioSqs06jKnu+zjc0zNqPpwPjfZibLl5ZWVjEf4ODPhtiK7GOletWoVfH19MWbMmCr3a+gr3z7iWt3ZTLqJiKhxmzt3LqZMmYKePXuib9+++OqrrxATE4MZM2YAMF7YjouLw5o1awAAM2bMwLJlyzB37lxMnz4dUVFR+Prrr/HTTz9Jxzx48CDi4uLQtWtXxMXFYf78+TAYDHjxxRelfZ5//nncddddCAkJQXJyMt555x1kZ2fj0UcfbdgXgKyqWGdAVoGxoV5V3csB86ZitxJHuiN9bD/SDRhLzAuy9HDVKqUllGqrbNLuqlXWS/dsotpwd1Tj3Xs7orDEgAg7+bfX1Nk86TYYDFi1ahUeffRRKJU2D8cMR7qJiKipmDhxItLS0rBgwQIkJCSgY8eO2Lx5M0JDjV19ExISzNbsDg8Px+bNmzFnzhx8/vnnCAwMxNKlSzF+/Hhpn8LCQrz22mu4du0anJ2dMXr0aHz33Xdwd3eX9rl58yYmT56M1NRU+Pj4oE+fPjhw4IB0Xmqc0vKM342Uclm5suxb+d+yZrVIpzfgRpqpvNwORroBY4l5QlZhnZYLE/mXOUavcE9pjiyRPXioN/8GNySbZ7n//PMPYmJiMHXqVFuHUk5pI7XyV2aJiIgam5kzZ2LmzJkV3rd69epy2wYPHoxjx45VerzBgwfj3LlzVZ7z559/rlGM1Dik5hhLyz2d1NU2BxO7KZ+NN2+AezOjACV6AVqVvE5Ny6xJbKZW1/ncgPlId+9wzucmas5snnSPGDFC6oZqb9i9nIiIiKi80iZq1U/76xHqAbkMiEnPR0JWgTSKfC3VOJ87zMvJbrp6i8uG1XU+N2CeuPdhEzWiZs0uGqnZK18X4x9LrtNNREREVMqS5cJELloVOprWAT54LV3afi3FvuZzA5CWNwv1qnu5e7jpGO6OKrNu0UTU/Nh8pNueiSPdOYU6FJbooS3T0ZKIiIiouRI7l1e3XJiod7gnTt3MwsHraRjXLQgAcDXFvuZzA8CMwZEIdNdiYs+QOh8rzNsJnz/YHf5uGs7nJmrmONJdBVetEmql8SViiTkRERGRkVheXt1yYSJxTnPZke6rKfazXJjI302LJwdFws2x6uZwlhrTOQA9QrlUGFFzx6S7CjKZjB3MiYiIiG4hJt1eFo503xbuCZnMuERYcraxQa09lpcTEdUHJt3V8OVa3URERERmatJIDTAuxdU+wDiv+cD1dGQXlkjHELubExE1VUy6q8GRbiIiIiJz4pJhlibdQNkS8zRplNvXRQMXrXVKuYmI7BUbqVWDy4YRERFRc5eVX4LTcVnSz0k5xhLxGiXdEZ74Zt91HLyejh6hHgDsaz43EVF9YdJdDSbdRERE1Nw99PUBnInLLrfd28WyOd0A0CvM2FDsSnIuDkcbG6pFcD43ETUDTLqrUZp0F9o4EiIiIqKGl1ekkxLutv4u0vY+EV7wddFafBwPJzXa+rvgQmIONpyIBwBEcD43ETUDTLqrIX6YcKSbiIiImiNx/rWXkxpbZg+q07H6RHjhQmIO8or1ANi5nIiaBzZSqwbLy4mIiKg5u5KSAwCI9K17gtw73HzNaibdRNQcMOmuhpR05xZBEAQbR0NERETUsK4k5wIAWloh6e5VJulWK+UI8nCo8zGJiOwdk+5qeDsbG4SU6AVkFZTYOBoiIiKihiUl3VYYlfZy1qCVKXkP83KEQi6r8zGJiOwdk+5qaJQKuDsa149MZok5ERERNTPWHOkGjPO6ASDCm6XlRNQ8MOm2gI8z53UTERFR81OiN+BGWj4AoJWfdZLkx/qHoVe4Jx7tF2aV4xER2Tsm3RZgMzUiIqKmacuZBDz74zHkFelsHYpdupGWB51BgLNGCX9Xy5cHq0qkjzN+eaov+kZ6WeV4RET2jkm3BZh0ExERNT25RTq8+NspbDyVgK1nE20djl0SS8sjfZwgk3H+NRFRbTDptoCvKelOzim0cSRERNTc7Nq1y9YhNFk/H4pBdqFxhDvaVEJN5qSk20rzuYmImiMm3RbgSDcREdnKnXfeicjISLzzzjuIjY21dThNRonegG/2Xpd+vpGWZ8No7Je1m6gRETVHTLotUHatbiIiooYUHx+P5557Dr///jvCw8MxcuRI/PLLLyguLrZ1aI3aplMJiM8qrWDjSHfFrqRYb7kwIqLmikm3BXycjY1DONJNREQNzdPTE7NmzcKxY8dw5MgRtGnTBs888wwCAgIwa9YsnDx50tYhNjqCIOCL3VcBAGM7BwBo+iPdFxNzMOKT3dhWg7nrBoOAq8nG14Uj3UREtcek2wK+ruKcbibdRERkO127dsXLL7+MZ555Bnl5efjmm2/Qo0cPDBw4EGfPnrV1eI3GnsupuJCYA0e1Aq+OaQcAyMwvQVZ+iY0jqz+/HonFpaRcrIm6YfFj4jILUFCih1ohR4inYz1GR0TUtDHptoC4TndmfgmKdHobR0NERM1NSUkJfvvtN4wePRqhoaHYunUrli1bhqSkJFy/fh3BwcG4//77bR1mo/Hlv8ZR7om3BSPAzUGaRnYjvemOdp9LyAYAnI7LgiAIFj1GLC0P83aEUsGvjEREtcW/oBZwc1BBpTAuk5GWyzl0RETUcP7v//4PAQEBmDFjBlq3bo3jx48jKioK06ZNg5OTE4KDg/H+++/jwoULtg61UTgTl4V9V9KgkMvwxIBwAECYl3EUt6nO6xYEQUq6swpKEJteYNHjrrKJGhGRVShtHUBjIJfL4OOsQXxWIRKzCxHo7mDrkIiIqJk4d+4cPvvsM4wfPx5qtbrCfQIDA7Fz584Gjqxx+vLfawCMc7lbeBiT7VAvJxyOzsCN1KY50h2fVYjMMqXzp+OyEOJVfbm41LmcTdSIiOqEI90WamGayxSb3jSvghMRkX3asWMHJk+eXGnCDQBKpRKDBw9uwKgar05BrvB10eDJQRHSNnGk+0YT/Yw/F59t9vOpuEyLHsc1uomIrINJt4Wk0rPUpvmBTERE9mnhwoX45ptvym3/5ptvsGjRIhtE1Lg9OSgS+14eig6BbtK2EC8nAE23g7mYdGtVxq99Z+Kyqn2MIAjSnO5Wvi71FxwRUTPApNtCoeIHchNuskJERPbnyy+/RNu2bctt79ChA7744gsbRNT4qW5pCtbU53SfjTcm2aM7GZdHO32z+mZqaXnFyMwvgUwGRPg41XuMRERNGZNuC4WKpWdN9AOZiIjsU2JiIgICAspt9/HxQUJCgg0ianpCPY1JZUpOEfKKdDaOxvrEJmrjugZBrZAju1CHmGpK6cXS8mAPR2hVinqPkYioKWPSbaGwJl56RkRE9ik4OBj79u0rt33fvn0IDAy0QURNj5ujCh6OKgCoNhltbLLyS3Azw9itvEsLd7QLMJaKn66mxPwKO5cTEVkNk24LiV0+U3OLkdsEr4ITEZF9mjZtGmbPno1Vq1bhxo0buHHjBr755hvMmTMH06dPt3V4TUZTndctjnIHuTvAzVGFjkHGueynbzLpJiJqKFwyzEKuWhU8ndRIzyvGjbQ8swYsRERE9eXFF19Eeno6Zs6cieLiYgCAVqvFSy+9hHnz5tk4uqYjzMsRJ2Mzm9y8bjHp7hDoCgDoJCbd1Yx0X07OAcDlwoiIrIFJdw2Eejmaku58Jt1ERNQgZDIZFi1ahNdffx3nz5+Hg4MDWrVqBY1GY+vQmpTQJjrSLTZRay8m3S1Kk25BECCTyco9Jiu/BIevZwAAuoa4N0ygRERNGMvLayDUk83UiIjINpydnXHbbbehY8eOTLjrQVgTbZgqLhfWPsCYdLf2c4FaKUdOoa7S57r5TAKK9Qa09XdBaz8uF0ZEVFcc6a6BpnoVnIiI7Nvhw4fx66+/IiYmRioxF/3+++82iqppaYqrlBTp9NLc7A6msnKVQo52/i44eTMLp+OyEOZdfjmw9cfjAADjugU1XLBERE0YR7prIMxbXMeTSTcRETWMn3/+Gf3798e5c+fwxx9/oKSkBOfOncP//vc/uLlxqpO1iBfW47MKUFiit3E01nE5KRc6gwA3BxUC3bTSdrHE/EwF87rjMgtw8Ho6ZDLg7i7sjk9EZA02T7rj4uLw8MMPw8vLC46OjujatSuOHj1q67AqFGJaxzOmCV0FJyIi+/bee+/hk08+wcaNG6FWq/Hpp5/i/PnzeOCBBxASEmLr8JoMLyc1nDVKCAJwM6NpfM6XLS0vO3dbbKZ2qoIO5htOxAMAeoV5ItDdoQGiJCJq+mqVdH/77bfYtGmT9POLL74Id3d39OvXDzdu3LD4OBkZGejfvz9UKhX+/vtvnDt3Dh999BHc3d1rE1a9E+d7xWcVNpmr4EREZN+uXr2KMWPGAAA0Gg3y8vIgk8kwZ84cfPXVVzaOrumQyWRNrsT81s7lInHZsDPxWTAYBLP7/jxhLC2/l6XlRERWU6uk+7333oODg/HqZ1RUFJYtW4bFixfD29sbc+bMsfg4ixYtQnBwMFatWoVevXohLCwMw4YNQ2RkZG3CqneeTmq4aIzT4GPTm8YHMhER2TdPT0/k5BiXbwoKCsKZM2cAAJmZmcjP52eRNYlJd1NZNuzWzuUis2ZqZb7PnE/IxoXEHKgVcozqFNCgsRIRNWW1SrpjY2PRsmVLAMD69esxYcIEPPnkk1i4cCH27Nlj8XE2bNiAnj174v7774evry+6deuGlStXVrp/UVERsrOzzW4NSSaTIdS7aV0FJyIi+zZw4EBs374dAPDAAw/gueeew/Tp0zF58mQMGzbMxtE1LU2pYarBIOB8gvFiza3LnKoUcrQzdTM/diND2r7eNMo9pK0P3BxUDRQpEVHTV6uk29nZGWlpaQCAbdu24Y477gAAaLVaFBQUWHyca9euYcWKFWjVqhW2bt2KGTNmYNasWVizZk2F+y9cuBBubm7SLTg4uDbh10moaV43m6kREVFDWLZsGSZNmgQAmDdvHp5//nkkJSXhvvvuw9dff23j6JqWsCY00h2Tno/cIh3USjkifMp3KO8R4gEAmPf7aSz55xIKS/TSfG6WlhMRWVetlgwbPnw4pk2bhm7duuHSpUvSXLOzZ88iLCzM4uMYDAb07NkT7733HgCgW7duOHv2LFasWIFHHnmk3P7z5s3D3LlzpZ+zs7MbPPFuavO9iIjIful0Ovz1118YOXIkAEAul+PFF1/Eiy++aOPImqbShqmN/8L6UdMIdhs/F6gU5cdY/m9oS1xNycXuSylY8s9l/HgwBsk5RXDRKnF7G9+GDpeIqEmr1Uj3559/jr59+yIlJQXr1q2Dl5cXAODo0aOYPHmyxccJCAhA+/btzba1a9cOMTExFe6v0Wjg6upqdmtoYWLpGed0ExFRPVMqlXj66adRVFRkleMtX74c4eHh0Gq16NGjR7VTwnbv3o0ePXpAq9UiIiICX3zxhdn9JSUlWLBgASIjI6HVatGlSxds2bKlzue1FXFp0JsZBSjRG2wcTd2sPRILABjWruIE2sNJjdWP34ZlD3aDj4sGyTnG99jojgHQqhQNFicRUXNQq5Fud3d3LFu2rNz2t956q0bH6d+/Py5evGi27dKlSwgNDa1NWA0iRBrpbvxXwYmIyP717t0bx48fr/Nn49q1azF79mwsX74c/fv3x5dffolRo0bh3LlzFS49dv36dYwePRrTp0/H999/j3379mHmzJnw8fHB+PHjAQCvvfYavv/+e6xcuRJt27bF1q1bce+992L//v3o1q1brc5rS34uWmiUchTpDIjPLJDmeDc2V5Jzceh6OuQyYOJtlVcEymQyjO0ciIGtfPDxtos4HJ2B6YMiGjBSIqLmQSYIglD9bua2bNkCZ2dnDBgwAIBx5HvlypVo3749Pv/8c3h4eFh0nMOHD6Nfv35466238MADD+DQoUOYPn06vvrqKzz00EPVPj47Oxtubm7IyspqsFHvxKxC9Fm4A0q5DOffvrPCki0iImq+rP3Z9Ouvv+Lll1/GnDlz0KNHDzg5mSeCnTt3tug4vXv3Rvfu3bFixQppW7t27TBu3DgsXLiw3P4vvfQSNmzYgPPnz0vbZsyYgZMnTyIqKgoAEBgYiFdffRXPPPOMtM+4cePg7OyM77//vlbnrUhDft7f/sFORKfl45en+qJXuGe9nqu+vL3xHL7eex13tPPDfx/taetwiIiapJp8NtUqY3zhhRekzuGnT5/Gf/7zH4wePRrXrl0zm3Ndndtuuw1//PEHfvrpJ3Ts2BFvv/02lixZYlHCbSu+LhpoVXLoDALiMy1vGkdERFQbEydOxPXr1zFr1iz0798fXbt2Rbdu3aT/WqK4uBhHjx7FiBEjzLaPGDEC+/fvr/AxUVFR5fYfOXIkjhw5gpKSEgDGVUW0Wq3ZPg4ODti7d2+tz2trYtfu7IISG0dSO4Uleqw7dhMA8GDvhm84S0RE5dWqvPz69evSXOx169Zh7NixeO+993Ds2DGMHj26RscaO3Ysxo4dW5swbEIulyHE0xGXknIRnZbfaEvPiIiocbh+/Xqdj5Gamgq9Xg8/Pz+z7X5+fkhMTKzwMYmJiRXur9PpkJqaioCAAIwcORIff/wxBg0ahMjISOzYsQN//vkn9Hp9rc8LGJP5svPYG3KJUFcx6S5snEn3ljOJyMwvQZC7Awa3ZkM0IiJ7UKukW61WIz/f2Ejsn3/+kTqNe3p6Nvja2bYQ6uWES0m5pu6mPrYOh4iImjBr9jmRyWRmPwuCUG5bdfuX3f7pp59i+vTpaNu2LWQyGSIjI/H4449j1apVdTrvwoULa9wnxlpctY17pPvHg8ZmtBNvC4ZCXvlrTEREDadWSfeAAQMwd+5c9O/fH4cOHcLatWsBGJugtWjRwqoB2qOmtI4nERHZtzVr1lR5f0VLbN7K29sbCoWi3OhycnJyuVFokb+/f4X7K5VKadUSHx8frF+/HoWFhUhLS0NgYCBefvllhIeH1/q8gG2XCC0d6dY1yPms6XJSDg5Fp0Mhl+GBniwtJyKyF7VKupctW4aZM2fit99+w4oVKxAUFAQA+Pvvv3HnnXdaNUB7FCIuG8YO5kREVM+ee+45s59LSkqQn58PtVoNR0dHi5JutVqNHj16YPv27bj33nul7du3b8c999xT4WP69u2Lv/76y2zbtm3b0LNnT6hUKrPtWq0WQUFBKCkpwbp16/DAAw/U+ryAcYlQjUZT7fOqD64Oxq9GjXGk+6dDxmXChrb1hb+btpq9iYioodQq6Q4JCcHGjRvLbf/kk0/qHFBjECYtG8aRbiIiql8ZGRnltl2+fBlPP/00XnjhBYuPM3fuXEyZMgU9e/ZE37598dVXXyEmJgYzZswAYBxdjouLk0bWZ8yYgWXLlmHu3LmYPn06oqKi8PXXX+Onn36Sjnnw4EHExcWha9euiIuLw/z582EwGPDiiy9afF57I5WXN7I53eYN1OxrKTYiouauVkk3AOj1eqxfvx7nz5+HTCZDu3btcM8990ChUFgzPrsUJo50p+fDYBAg55wpIiJqQK1atcL777+Phx9+GBcuXLDoMRMnTkRaWhoWLFiAhIQEdOzYEZs3b5bmjCckJCAmJkbaPzw8HJs3b8acOXPw+eefIzAwEEuXLpXW6AaAwsJCvPbaa7h27RqcnZ0xevRofPfdd3B3d7f4vPZGKi8vaFzl5afjspBVUAIfFw0GtWK/GSIie1KrpPvKlSsYPXo04uLi0KZNGwiCgEuXLiE4OBibNm1CZGSkteO0KwFuWqgVchTrDIjNYAdzIiJqeAqFAvHx8TV6zMyZMzFz5swK71u9enW5bYMHD8axY8cqPd7gwYNx7ty5Op3X3rhqTeXljWykOzXH2O09xNORDdSIiOxMrZLuWbNmITIyEgcOHICnpycAIC0tDQ8//DBmzZqFTZs2WTVIe6NUyNEu0BUnYzNxIjaTSTcREdWbDRs2mP0sCAISEhKwbNky9O/f30ZRNV3iSHdWI5vTnZ5fDADwdFLbOBIiIrpVrZLu3bt3myXcAODl5YX333+/2XwB6BbsjpOxmTgek4l7ugbZOhwiImqixo0bZ/azTCaDj48Phg4dio8++sg2QTVhjXVOd3quMen2YtJNRGR3apV0azQa5OTklNuem5sLtbp5/LHvFuKO1fuBE7GZtg6FiIiaMIPBYOsQmhU3qXt545rTLY50ezDpJiKyO/LaPGjs2LF48skncfDgQQiCAEEQcODAAcyYMQN33323tWO0S92CPQAA5+KzUaTT2zgaIiIisgZxpDunsAQGg2DjaCyXnseRbiIie1WrpHvp0qWIjIxE3759odVqodVq0a9fP7Rs2RJLliyxcoj2KdjTAV5OahTrDTgbn23rcIiIqImaMGEC3n///XLbP/jgA9x///02iKhpE+d0GwQgr7jxjHaLSbeHI5NuIiJ7U6uk293dHX/++ScuXbqE3377Db/++isuXbqEP/74w2yZkKZMJpOhW4g7AOB4TKZNYyEioqZr9+7dGDNmTLntd955J/79918bRNS0aVUKqJXGr0fZhY0v6fZ0ZtJNRGRvLJ7TPXfu3Crv37Vrl/T/H3/8ca0Daky6Brvjn/PJnNdNRET1prJ+KSqVCtnZrLSqD65aFVJzi5BdUIIgdwdbh2MRKenmSDcRkd2xOOk+fvy4RfvJZM1nbchuIcZ53cdjMmwcCRERNVUdO3bE2rVr8cYbb5ht//nnn9G+fXsbRdW0uToopaS7MRAEoTTp5pxuIiK7Y3HSvXPnzvqMo1Hq3MINMhlwM6MAKTlF8HHR2DokIiJqYl5//XWMHz8eV69exdChQwEAO3bswE8//YRff/3VxtE1TaXLhjWO8vL8Yj2KdMYu90y6iYjsT63mdJORi1aF1r4uALh0GBER1Y+7774b69evx5UrVzBz5kz85z//wc2bN/HPP/+UW8ObrENsppbVSEa6xVFujVIOR7XCxtEQEdGtarVON5XqGuyOi0k5OB6TgeHt/WwdDhERNUFjxoypsJka1Q9XrbhWd+NKuj2d1M1qmh8RUWPBke46YgdzIiKqT4cPH8bBgwfLbT948CCOHDlig4iaPnGkO7uwkSTd+ZzPTURkz5h015HYTO3UzUzoDYKNoyEioqbmmWeeQWxsbLntcXFxeOaZZ2wQUdMnzekuaBxzutNzmXQTEdkzJt111NLXGU5qBfKK9bicnGPrcIiIqIk5d+4cunfvXm57t27dcO7cORtE1PS5NbKR7gyOdBMR2TUm3XWkkMvQJdgdAEvMiYjI+jQaDZKSksptT0hIgFLJ1iz1wdWhcc3pTuNyYUREdo1JtxWUzuvmet1ERGRdw4cPx7x585CVlSVty8zMxCuvvILhw4fbMLKmq3TJsMaRdEvl5Y5MuomI7BEvkVtBt2DjvG4uG0ZERNb20UcfYdCgQQgNDUW3bt0AACdOnICfnx++++47G0fXNEmN1BrLnG6xvNyZSTcRkT1i0m0F4kj3paRcpOQUwcdFY9uAiIioyQgKCsKpU6fwww8/4OTJk3BwcMDjjz+OyZMnQ6VS2Tq8JklaMqyxjHTncaSbiMieMem2Ai9nDToGueJMXDZ2X0rBhB4tbB0SERE1IU5OThgwYABCQkJQXGxMsP7++28AwN13323L0Jqk0pHuxpF0Z3BONxGRXWPSbSVD2vjiTFw2dl5MZtJNRERWc+3aNdx77704ffo0ZDIZBEGATCaT7tfr9TaMrmkS53TnFOlgMAiQy2XVPMK22EiNiMi+sZGalQxp6wsA+PdSCnR6g42jISKipuK5555DeHg4kpKS4OjoiDNnzmD37t3o2bMndu3aZevwmiSxe7kgGBNve6bTG5BlGpFn0k1EZJ+YdFtJlxbu8HBUIadQh6M32MWciIisIyoqCgsWLICPjw/kcjkUCgUGDBiAhQsXYtasWbYOr0nSKBXQqoxfkey9xDwj3xifTAa4c043EZFdYtJtJQq5DINb+wAAdl5MsXE0RETUVOj1ejg7OwMAvL29ER8fDwAIDQ3FxYsXbRlak9ZYlg0Tm6i5O6igsPMyeCKi5opJtxWJJea7LibbOBIiImoqOnbsiFOnTgEAevfujcWLF2Pfvn1YsGABIiIibBxd09VYlg1L53xuIiK7x0ZqVjSolQ/kMuBCYg7iMgsQ5O5g65CIiKiRe+2115CXlwcAeOeddzB27FgMHDgQXl5eWLt2rY2ja7oay7JhTLqJiOwfk24r8nBSo1uIB47eyMCui8l4qHeorUMiIqJGbuTIkdL/R0RE4Ny5c0hPT4eHh4dZF3OyrsaybFh6PpNuIiJ7x/JyKxtqKjHfeYHzuomIqH54enoy4a5npXO67by8PJdJNxGRvWPSbWW3tzE2U9t3JRWFJVw7lYiIqDESlw2z95HuDI50ExHZPSbdVtY+wBW+LhoUlOhx6Hq6rcMhIiKiWhBHurPsPOlOM83p9uByYUREdsumSff8+fMhk8nMbv7+/rYMqc5kMhmGtDGVmLOLORERUaMkzem280ZqGaak28uZSTcRkb2y+Uh3hw4dkJCQIN1Onz5t65DqTFw6bPu5JBgMgo2jISIioppyayRLhnGkm4jI/tm8e7lSqWz0o9u3GtzaBy5aJW5mFGD/1TQMaOVt65CIiIioBkobqdn3SHd6XhEAwMtJY+NIiIioMjYf6b58+TICAwMRHh6OSZMm4dq1a7YOqc4c1Arc2y0IAPDToRgbR0NEREQ11RgaqQmCgIw8Y3yeLC8nIrJbNk26e/fujTVr1mDr1q1YuXIlEhMT0a9fP6SlpVW4f1FREbKzs81u9mrSbSEAgG3nEpGaW2TjaIiIiKgmxJHuHDteMiy3SIdivQEA4MnyciIiu2XTpHvUqFEYP348OnXqhDvuuAObNm0CAHz77bcV7r9w4UK4ublJt+Dg4IYMt0baB7qiS7A7SvQC1h29aetwiIiIqAakRmp2PNItjnI7qBRwUCtsHA0REVXG5uXlZTk5OaFTp064fPlyhffPmzcPWVlZ0i02NraBI6yZB3sZLwr8dCgGgsCGakRERI2Fq9ZYXp5TpIPeTpuippnmc3ONbiIi+2ZXSXdRURHOnz+PgICACu/XaDRwdXU1u9mzsZ0D4axRIjotH1HXKi6ZJyIiIvvjYiovB4BcOy0xz8g3di5n0k1EZN9smnQ///zz2L17N65fv46DBw9iwoQJyM7OxqOPPmrLsKzGSaPEPV0DAQA/HbLvUXkiIiIqpVbK4aAylmzbawfztFzTcmFMuomI7JpNk+6bN29i8uTJaNOmDe677z6o1WocOHAAoaGhtgzLqib3MjZU23omEemmtTSJiIjI/okdzLPsdF63ONLtxaSbiMiu2XSd7p9//tmWp28QHYPc0CnIDafjsrDu6E1MHxRh65CIiIjIAm4OKiRlF9ltM7U008V8D3YuJyKya3Y1p7upEke7P/vfZUSn5tk4GiIiIrKEuGyYvZaXp5vKy724RjcRkV1j0t0AxvcIQrcQd2QX6jB9zRHkFtlnQxYiIiIqVbpsmH1+bovl5RzpJiKyb0y6G4BGqcCXD/eAn6sGl5NzMXftCRjsdPkRIiIiMhKXDbPXkW6xvJzdy4mI7BuT7gbi66rFFw/3gFohx7ZzSVj6v4rXIiciIiL7UDrSbZ9Jd0Yey8uJiBoDJt0NqFuIB969tyMAYMk/l7H9XJKNIyIiouZk+fLlCA8Ph1arRY8ePbBnz54q99+9ezd69OgBrVaLiIgIfPHFF+X2WbJkCdq0aQMHBwcEBwdjzpw5KCwslO6fP38+ZDKZ2c3f39/qz60+lM7pts/ycjZSIyJqHJh0N7D7ewbjsX5hAIBX/jhttyVrRETUtKxduxazZ8/Gq6++iuPHj2PgwIEYNWoUYmJiKtz/+vXrGD16NAYOHIjjx4/jlVdewaxZs7Bu3Tppnx9++AEvv/wy3nzzTZw/fx5ff/011q5di3nz5pkdq0OHDkhISJBup0+frtfnai3ikmH2ONJdojcgx3QxgEuGERHZNybdNjBvdFtEeDshJacIH229aOtwiIioGfj444/xxBNPYNq0aWjXrh2WLFmC4OBgrFixosL9v/jiC4SEhGDJkiVo164dpk2bhqlTp+LDDz+U9omKikL//v3x4IMPIiwsDCNGjMDkyZNx5MgRs2MplUr4+/tLNx8fn3p9rtZiz93L002j3HKZcWkzIiKyX0y6bUCjVODtccYy8+8O3MCpm5m2DYiIiJq04uJiHD16FCNGjDDbPmLECOzfv7/Cx0RFRZXbf+TIkThy5AhKSoxJ6IABA3D06FEcOnQIAHDt2jVs3rwZY8aMMXvc5cuXERgYiPDwcEyaNAnXrl2rMt6ioiJkZ2eb3WxBnNOdZYcj3eISpIHuDpDLZTaOhoiIqsKk20b6t/TGPV0DYRCAV/84Az27mRMRUT1JTU2FXq+Hn5+f2XY/Pz8kJiZW+JjExMQK99fpdEhNTQUATJo0CW+//TYGDBgAlUqFyMhIDBkyBC+//LL0mN69e2PNmjXYunUrVq5cicTERPTr1w9paWmVxrtw4UK4ublJt+Dg4No+9Tpxs+Mlw66k5AIAWvo62zgSIiKqDpNuG3p1TDu4aJU4HZeFHw7esHU4RETUxMlk5iOigiCU21bd/mW379q1C++++y6WL1+OY8eO4ffff8fGjRvx9ttvS48ZNWoUxo8fj06dOuGOO+7Apk2bAADffvttpeedN28esrKypFtsbGzNnqiV2HN5+ZVkU9Ltw6SbiMjeKW0dQHPm66LFiyPb4PU/z+KDLRdxZwd/+LpqbR0WERE1Md7e3lAoFOVGtZOTk8uNZov8/f0r3F+pVMLLywsA8Prrr2PKlCmYNm0aAKBTp07Iy8vDk08+iVdffRVyeflr+05OTujUqRMuX6586UyNRgONRlOj51gf7LmRmpR0c6SbiMjucaTbxh7sHYouLdyQU6TDO5vO2zocIiJqgtRqNXr06IHt27ebbd++fTv69etX4WP69u1bbv9t27ahZ8+eUKmMI8D5+fnlEmuFQgFBEKRR8VsVFRXh/PnzCAgIqO3TaTDiSHdesR46vcHG0Zi7yqSbiKjRYNJtYwq5DO+M6wSZDNhwMh77r6TaOiQiImqC5s6di//+97/45ptvcP78ecyZMwcxMTGYMWMGAGNJ9yOPPCLtP2PGDNy4cQNz587F+fPn8c033+Drr7/G888/L+1z1113YcWKFfj5559x/fp1bN++Ha+//jruvvtuKBQKAMDzzz+P3bt34/r16zh48CAmTJiA7OxsPProow37AtSCi7a0INCe1urOLdIhPsu4FjqTbiIi+8fycjvQqYUbHu4diu8O3MDrf57B388NglrJ6yFERGQ9EydORFpaGhYsWICEhAR07NgRmzdvRmhoKAAgISHBbM3u8PBwbN68GXPmzMHnn3+OwMBALF26FOPHj5f2ee211yCTyfDaa68hLi4OPj4+uOuuu/Duu+9K+9y8eROTJ09GamoqfHx80KdPHxw4cEA6rz1TKuTwcFQhI78EyTmF8LST9bDFUW5vZzXcHe0jJiIiqpxMqKz+qxHIzs6Gm5sbsrKy4Orqautw6iQrvwTDPt6F1NxivHRnWzx9e6StQyIiolpoSp9N9sKWr+noT/fgXEI2Vj12G4a09W3Qc1dm3dGb+M+vJ9E73BNrn+pr63CIiJqlmnw2cTjVTrg5qjBvVDsAwNIdlxGXWWDjiIiIiCjQ3QEA7OpzWVwurJUfS8uJiBoDJt125L7uQegV5omCEj3e/uucrcMhIiJq9gLdjauKJGTZUdLN5cKIiBoVJt12RCaTYcG4DlDIZdhyNhE7LyTbOiQiIqJmLcDNONKdkFnY4OcWBAElFXRNL+1c7tLQIRERUS0w6bYzbf1dMbV/GADg1T9OI7fIfrqlEhERNTfiSLctysunrzmKvgt3IDmnNOEv1hlwIz0fADuXExE1Fky67dCc4a0R7OmA+KxCLN5ywdbhEBERNVvinO6ErIYd6c4qKMGOC0lIzS3GplMJ0vbotDzoDQKcNUr4uWoaNCYiIqodJt12yFGtxPv3dQYArIm6gUPX020cERERUfMU4FY6p9tgaLgFX47HZEBcX2bLmURpuzifO9LXGTKZrMHiISKi2mPSbaf6t/TGxJ7BAICX151CYYnexhERERE1P36uWshlQIleQGpeUYOd9+iNDOn/D0enIzXXeG42USMianyYdNuxV8a0g6+LBtdS87B0x2Vbh0NERNTsqBRy+LqYRrsbsJla2aTbIADbzyUBKJN0cz43EVGjwaTbjrk5qLDgno4AgC//vcZu5kRERDYQYGqmFt9AzdR0egNOxGYCAO7pGgigtMScSTcRUePDpNvO3dnRH/d0DYTeIGD6miP480ScrUMiIiJqVsRmavEN1EztfEIO8ov1cNUq8X9DWwIA9l9NRWZ+Ma6lMukmImpsmHQ3Ah9M6IK7uwRCZxAwe+0JrImKtnVIREREzUag2EytgUa6j94wNlDtHuqBlr4uaOXrjBK9gO+ibqCwxAC1Qo5gD4cGiYWIiOqOSXcjoFbKsWRiVzzSNxSCALzx51ks+ecSBKHhuqgSERE1VwFu4kh3wyTdR0zzuXuEeAAwVr0BwNf7rgMAwr2doFTwKxwRUWPBv9iNhFwuw1t3d8Bzw1oBAJb8cxnLd121cVRERERNX6A0p7thysvFJmo9woxJ98gOxqQ7M78EAEvLiYgaGybdjYhMJsOc4a3x6uh2AIAPtl7Edwdu2DgqIiKipk2c053QACPdcZkFSMgqhEIuQ9dgdwBAh0BXtChTTh7JpJuIqFFh0t0ITR8UITVWeePPM9hwMt7GERERETVdYnl5ck4RinWGej2XOMrdPsAVjmolAONF9ztNo90AR7qJiBobJt2N1NzhrTGlj3GO99y1J7icGBERUT3xclJDrZBDEICk7PotMT8abWyi1iPUw2z7qE5lkm4fJt1ERI0Jk+5GSiYzzvG+p6uxq/mM748i6mqarcMiIiJqcuRyWYOt1S02UesZZp50dwv2QM9QD7QPcOVINxFRI8OkuxGTy2X48P4uGNrWF0U6A5749rC0zAgRERFZT4C4bFg9rtWdV6TD+YRsAOVHuuVyGX6d0RebnxsItZJf34iIGhP+1W7kVAo5lj/UHQNaeiO/WI/HvjmMk7GZtg6LiIioSQlsgGXDTsRmwiAAQe4O0jzysmQyWb2dm4iI6g+T7iZAq1Jg5SM90SvcEzlFOkz5+iDOxmfZOiwiIqImQ+xgXp/l5UeiTUuF3TLKTUREjRuT7ibCQa3AN4/dhu4h7sgu1OG+5fvx4daLyC3S2To0IiKiRk+c051Qj2t177uSCoBJNxFRU2M3SffChQshk8kwe/ZsW4fSaDlrlFg9tRf6RXqhSGfAsp1XcPsHu/DjwRjo9PW7xAkREVFTVlpeXj9J9/6rqTgUnQ6lXIahbX3r5RxERGQbdpF0Hz58GF999RU6d+5s61AaPVetCj9M640vHu6BMC9HpOYW4ZU/TuP+L6OQnFO/y5wQERE1VfVZXi4IAhZtuQgAeLB3CII9Ha1+DiIish2bJ925ubl46KGHsHLlSnh4sJzKGmQyGe7s6I9tcwbjzbvaw1WrxPGYTNz7+X6pKyoRERFZTiwvzyooQX6xdadubT2biJOxmXBUK/B/Q1tZ9dhERGR7Nk+6n3nmGYwZMwZ33HFHtfsWFRUhOzvb7EaVUyvleLx/OP58dgAivJ0Ql1mACSv2Y8f5JFuHRkRE1Ki4alVw1igBAPFWnNet0xuweKtxlHvagHD4uGisdmwiIrIPNk26f/75Zxw7dgwLFy60aP+FCxfCzc1NugUHB9dzhE1DuLcT/pjZH/0ivZBXrMe0NUfw8rpT2H0pBcU6zvUmIiKyRKBptNuaJea/Hb2Jayl58HRSY/qgCKsdl4iI7IfNku7Y2Fg899xz+P7776HVai16zLx585CVlSXdYmNj6znKpsPNUYVvp/bC5F4hEATg58OxePSbQ+jxznbMWXsCV5JzbR0iERGRXRPXzk6w0lrdhSV6LPnnMgDgmSEt4aJVWeW4RERkX5S2OvHRo0eRnJyMHj16SNv0ej3+/fdfLFu2DEVFRVAoFGaP0Wg00GhYdlVbKoUc793bEXd1DsDG0wnYdjYJqblF+ON4HP53IRnfPHYblykhIiKqhDjSHWel8vJv9l1HYnYhgtwd8HCfEKsck4iI7I/Nku5hw4bh9OnTZtsef/xxtG3bFi+99FK5hJusQyaToV9Lb/Rr6Y237+mI4zEZeHfzeRyPycRD/z2AFQ/3wJA2XKqEiIjoVuKyYQlWKC+PScvH0h3GUe7/jGgNjZLfe4iImiqblZe7uLigY8eOZjcnJyd4eXmhY8eOtgqrWVHIZegZ5okfpvXG7W18UFhiwPRvj+CP4zdtHRoREZHdCXAXy8vrNtItCAJe+eM0CksM6BvhhXu7BVkjPCIislM2715OtueoVmLlIz1xb7cg6AwC5qw9iQ+3XkSJnk3WiIiIRIFu1mmk9tvRm9h7JRUapRwL7+sEmUxmjfCIiMhO2ay8vCK7du2ydQjNlkohx0f3d4Gnkxpf772OZTuvYO+VVCyd1A0hXo62Do+IiMjmAk0j3TczChCTll+rz8eUnCK8s+k8AGDO8NYI83ayaoxERGR/ONJNErlchtfHtsdnk7vBRavEidhMjF66B+uO3oQgCLYOj4iIyKZCvRzRLcQdxXoDnvzuCPKLdTU+xvy/ziKroAQdAl0xbUB4PURJRET2hkk3lXNXl0D8/dxA3BbmgdwiHf7z60kM+XAXPt95BYl1nMdGRETUWMlkMix/qDu8ndW4kJiDF347VaOL0rsuJmPTqQQo5DIsGt8ZSgW/hhERNQf8a08VauHhiJ+f7IvnR7SGk1qB6LR8fLD1Ivq9vwOPfHMIq/Zdx+WkHI6AExFRsxLg5oAVD/eAUi7DplMJ+GL3NYsfu+N8MgBg4m3B6BjkVl8hEhGRnbGrOd1kXxRyGZ4d2gqP9w/H5tMJ+PXITRyKTse/l1Lw76UUAICfqwb9I73RJ9ILfSO80MLDgQ1hiIioSbstzBPz7+6A19afweKtF1CsM8DdUQXAOFVreDs/+JuarpWVklMEAGjj59Kg8RIRkW0x6aZqOWmUuL9nMO7vGYxrKbnYfi4Je6+k4tD1dCRlF+H343H4/XgcACDI3QF9IrwwoJUX+rf0hq9L+S8dREREjd1DvUNwJi4LPx+OxSf/XDK7b9eFZHz92G3lHpOaa0y6vZ01DRIjERHZBybdVCMRPs54arAznhocicISPY5EZyDqWioOXEvHydhMxGUWYN2xm1h3zLjWd1t/Fwxu44PRHQPQuYUbR8GJiKhJkMlkeOueDvBz1eJKci4AICO/GPuvpuF6Wl6Fj0nLKwYAeDurGyxOIiKyPSbdVGtalQIDWnljQCtvAEBekQ5HbmTg/9u797Aoy/x/4O9nzjMcBjmDHE0FQfNElsmllcc0zW03D22mm21f21pFNw+lVut+TW0ttauk1jXd0n5WWn213IxM2FwzD0mhoCSCqICAAjMc5nz//gAmR1ABxeHwfl0XVzDP/cxzz8eJD5+5D8+BnFL893Qpjl8w4GSRESeLjHg37Qy6+mjxYO9gPNgnBP3DfSCTsQAnIqL2S62QY+7Ins6fc0oqMfz1NOc08quV1j3ux5FuIqJOhUU33TIeagWG9QzAsJ4BAIDLVRbsP12Kr08U4duTxbhQXoN/7s/FP/fnIlSvwYN9QjC2TzACvTQw2+ww2xwQonZ0nDu6EhFRexPgVVtMG002mKx2aJRy5zGT1Q6jufYWYwEsuomIOhUW3dRqfD1UmNA3FBP6hqLGYkdadgl2ZxRib9ZFFFSYsHF/Ljbuz21wXvdATywZ1wv3xQS6oddEREQt46VWQK2QwWxzoMRoRrivznmsfj23Si6Dt5Z/fhERdSb8rU+3hVYlx5jewRjTOxgm668F+L6TxbDaBdRKGdQKGSpNNpwursSMTYdxX0wAlozrhe6B3OWViIjaPkmSEOClxvmyGhQ3KLpr13P7eaq4vwkRUSfDoptuO41SjtHxwRgdH9zgWEWNFW99+ws2H8hD6qnaW5P1DPLCnWF69AnzQWywF5RXTD3XKuWI8tdBrZA3eC4iIqLbrb7ovnpd9yXuXE5E1Glx4Sy1KXqtEovHxeHrucMwMi4IDgGcLDLi4yPnsfTz43j0ne8x8e3/Or9Gr/0P4l7agwdeT8UzW47ijZRs/F/6BRy/UIGqurVzRERUa/369YiOjoZGo8HAgQPx3XffXbd9WloaBg4cCI1Gg27duuGdd95p0Gbt2rWIiYmBVqtFeHg45s6dC5PJdFPXbc/q12uXVLoW3b/eLow7lxMRdTYc6aY2KdrfAxueSEBRhQk/ny/Hz+cr8POFCuSWVsLh+LWdwWSF0WTDmZIqnCmpwr+PF7k8T1cfLXoGeSIm2BuxwV4YfIcfgrx573Ai6nw++ugjJCUlYf369RgyZAjeffddPPjgg8jMzERERESD9rm5uRg7diz++Mc/YsuWLfjvf/+LP/3pTwgICMBvf/tbAMDWrVuxaNEivPfee7j33nuRnZ2NGTNmAADWrFnTouu2d4HedUW38eqiu356OUe6iYg6Gxbd1KYF6zUI1gdjVCNT0QFACIFioxmniozIvmhETkklcoqrkFNSiUtVFlwor8GF8hrsO1UCoHYDm8fujsCz93d37jJLRNQZvPHGG5g5cyaeeuopALUj1Hv27EFycjJWrFjRoP0777yDiIgIrF27FgDQq1cvHDlyBKtXr3YW3d9//z2GDBmCxx57DAAQFRWFqVOn4tChQy2+bnsX4Fn7wW6J0XW0v74I5/RyIqLOh0U3tWuSJCHIW4Mgbw2G1t2qrF55tQXZFytxqsiAUxeN+OlcBTIuVGDzgTx8dPgcpt8bhcfviUBXHy03tSGiDs1iseDo0aNYtGiRy+OjRo3CgQMHGj3n+++/x6hRo1weGz16NDZu3Air1QqlUonExERs2bIFhw4dwqBBg3DmzBns3r0b06dPb/F127v6D3QbjnRzejkRUWfFops6LB+dCoOifTEo2hdA7aj4gZxL+PueU0g/V4530nLwTloOArzU6B/ug77hPpDLJFTUWGGosaLGasddUb4YHR8MXw/+kURE7VdpaSnsdjuCgoJcHg8KCkJRUVGj5xQVFTXa3mazobS0FCEhIZgyZQpKSkqQmJgIIQRsNhueeeYZZ5HdkusCgNlshtn8a9FqMBia9Xrd6UZFN2dZERF1Piy6qdOQJAlDuvvj3jv8sDerGMlpOfjpXDlKjGZ8nXkRX2debHDOpz9ewJLPj+PeO/zw0J0hGNsnBF4apRt6T0R0866e1SOEuO5Mn8baX/l4amoqli9fjvXr1+Puu+/G6dOnMWfOHISEhGDp0qUtvu6KFSvw17/+tWkvqo25VtF9qW5NN6eXExF1Piy6qdORJAkj4oIwIi4IJqsdxy9U4Fh+OU4UVEAuk8Fbq4C3RgkB4NuTF3H8ggHf/VKK734pxbJdmXi4f1f8/u4IxIfq3f1SiIiaxN/fH3K5vMHocnFxcYNR6HrBwcGNtlcoFPDz8wMALF26FNOmTXOu1+7Tpw+qqqrw9NNPY/HixS26LgC88MILmDdvnvNng8GA8PDwpr9gN3IW3ZVmlw8XSnnLMCKiTotFN3VqGqUcCVG+SIjybfT4vJE9kVdahS8zCvHpj+eRU1KFD3/Ix4c/5KNfuA/+MCQKY/uEuNw7nIiorVGpVBg4cCBSUlLwm9/8xvl4SkoKHn744UbPGTx4MHbt2uXy2Ndff42EhAQolbUzfqqrqyGTuf7+k8vlEEJACNGi6wKAWq2GWt0+i9P6NdtWu0BFjRU+OhWsdgfKqq0AAD+u6SYi6nRYKRDdQJS/B569vzu+mTcM256+B+P7hkIpl5B+rhxztqVj6Gv7kJyag4q6P6iIiNqiefPm4Z///Cfee+89ZGVlYe7cucjPz8esWbMA1I4uP/HEE872s2bNwtmzZzFv3jxkZWXhvffew8aNG/H8888724wfPx7JycnYtm0bcnNzkZKSgqVLl2LChAmQy+VNum5Ho1bI4aOr/VCiuG6K+eWq2qnlMgnoomPRTUTU2XCkm6iJJEnCPd38cE83P5QY4/D/DuXj/e/PorDChFVfncTqr08h2t8DscFeznuCD4xsfASdiOh2mzx5Mi5duoRly5ahsLAQvXv3xu7duxEZGQkAKCwsRH5+vrN9dHQ0du/ejblz5+Ltt99GaGgo3nzzTeftwgBgyZIlkCQJS5YswYULFxAQEIDx48dj+fLlTb5uRxTgqUZ5tRUlRjN6Bnk513f7eqghl/FuGUREnY0k6ndFaYcMBgP0ej0qKirg7e3t7u5QJ2S22bEzvQAb9+fiZJGxwfEZ90bhxbG9oFJwUglRZ8HcdOu1t5g+tuEgDuRcwtrJ/TCxf1eknirGjE2HERvsha+Shrq7e0REdAs0JzdxpJvoJqgVcjyaEI7fDQzDRYMZJ4sMOFlkxE/nyvHv40XYfCAPx/LL8NZjAxDuq3N3d4mI6Da4egfz+p3LebswIqLOiUU30S0gSRKC9RoE6zW4LyYQALA36yLmffwTfjpfgXFvfof5o2MQF6pHpJ8Ofh6q694uh4iI2q8Az193MAe4czkRUWfHopuolQzvFYQvZyfiuQ+PIf1cOZb+3wnnMQ+VHH3C9BgeG4ThvQLRLcDTjT0lIqJbKdDbdaT716Kbm6gREXVGLLqJWlFYFx0+/p/BeCctBwdySpF/qRqFBhOqLHYcPHMZB89cxvLdWYj290BMkBe6eCjho1PBV6dC90BP9AnTc2SEiKidqZ9GXmw0AQBK66aX+/H3ORFRp8Sim6iVqRQyzB7eA7OH9wAAmKx25F+uxn9Pl+Lbk8U4eOYSckurkFta1ej5oXoN+oTpkdgjACN6BSJEr72d3SciomYK8NQAaGykm0U3EVFnxKKb6DbTKOXoGeSFnkFe+MOQaBhNVhw8cxmFFTUoq7KirNqC0kozsgoNOFNahYIKEwoqTNhz4iKWfg7Eh3pjRK8gTB0UgWC9xt0vh4iIrnL1Rmr1I92cXk7kPkII2Gw22O12d3eF2hG5XA6FQnHTezGx6CZyMy+NEiPjgho9ZjRZcaLAgKNny/DtyWL8mF+GEwUGnCgwIDk1B78dGIZnht2BCD/ujE5E1FbUF91l1VZYbA6OdBO5mcViQWFhIaqrq93dFWqHdDodQkJCoFK1/INTFt1EbZiXRol7uvnhnm5+ePb+7iitNGPfyWJ8cuQ8DuVdxv87lI+Pj5zDmPhg9ArxQqiPFqE+Wvh7qqGQSZDXfakVMnhqFFAr5O5+SUREHZ6PVgmFTILNIVBSacblKt4yjMhdHA4HcnNzIZfLERoaCpWKd5ChphFCwGKxoKSkBLm5uejRowdkMlmLnotFN1E74u+pxqMJ4Xg0IRyHci/j7X2nkZZdgi8zCvFlRuENz1cpZPBSK+DnqUJYFx3CumjR1UcLpVyGaosNlWY7aiw2RPh54O5oX/QK8YZcxsRERNQcMpkEf081igwmZF80wu4QAABfD04vJ7rdLBYLHA4HwsPDodNxZiA1j1arhVKpxNmzZ2GxWKDRtGxpJ4tuonZqULQvBkUPwvELFUjJvIiC8hoUVNSgoNyES5VmOARgczhgdwhY7bV/8FlsDlyyWXCpyoLsi5U3vIaXWoGBUV0Q3kWHLjol9DoVfD2U8PdUI9BLgwAvNbrolPzEmIjoKoHetUV3VqEBAOCjU0Ipb9kICRHdvJaOUBLdivcOi26idq53Vz16d9Vft43N7kCVxQ6jyQqjyYYSoxnny2pwvqwa58tqIFB773APtQIqhQwnCw04klcGo9mG1FMl131ulUKGnkGeiAvxRq8Qb8SH6hEf6g0PNX+9EFHnFVC3fjuzoLbo5npuIqLOi38VE3UCCrkMeq0Meq0SANAr5Mbn2B0CWYUG/JhfhlKjGWXVVpTXWFFWZUGJ0Yxio8m5SdDxCwYcv2BwniuTgJ5BXugb5oMBkT4Y1jOQO60TUadSv377ZJERAHcuJyLqzFh0E1Gj5DLphqPoFpsDBeU1OFlkQGaBAZmFRhy/UIEigwkni4w4WWTER0fOAQDiQrwxvFcgBkX7IkSvRZC3Gl4a5e16OUREt1V90X2mpHYpD0e6iYgauu+++9CvXz+sXbvW3V1pVW4tupOTk5GcnIy8vDwAQHx8PF566SU8+OCD7uwWETWRSiFDlL8Hovw9MKb3r8PnFw0m/HSuHOnnyvH9mUtIP1eOzEIDMgsNLud7qOQI66JDjyBPxAR5oUeQF0J9NPDWKOGtVcJLo+AaSCJql+qL7ro91Fh0E1GrslqtUCo75mCGEAJ2ux0KRfsdL3brX7NhYWFYuXIljhw5giNHjuCBBx7Aww8/jBMnTrizW0R0k4K8NRgVH4wFY2Lx2Z+G4MjiEXj90b4Yd2cIugd6wktT+0uzymLHqYtGfPFzIV5PycasLUcx4a3/4r7VqRjwtxT0WPxv3PnKHox4Iw2PbTiIpG3H8PL/HcfqPafwTloOPvwhH18dL8ThvMs4U1KJimorrHaHm189EdGva7qdP/N2YUTUTA6HA6tWrUL37t2hVqsRERGB5cuXIy8vD5Ik4eOPP8Z9990HjUaDLVu2wOFwYNmyZQgLC4NarUa/fv3w1VdfOZ/PYrHgueeeQ0hICDQaDaKiorBixQrn8VdeeQURERFQq9UIDQ3F7Nmzr9u/iooKPP300wgMDIS3tzceeOAB/PTTTy7P169fP3zwwQeIioqCXq/HlClTYDTWLruZMWMG0tLSsG7dOkiSBEmSkJeXh9TUVEiShD179iAhIQFqtRrfffcdzGYzZs+ejcDAQGg0GiQmJuLw4cPO69Wf9+WXX6Jv377QaDS4++67kZGRAQCoqqqCt7c3tm/f7vI6du3aBQ8PD2e/WoNbPy4YP368y8/Lly9HcnIyDh48iPj4eDf1iohuNT9PNX47MAy/HRjmfKzKbMNFgwl5l6pwqqgSv1w04pfiSpRWmmE02VBptgEADCYbDKZKnC6+8W7r9VRyGXRqOXRKOTQqOXQqObRKOfw81Ogf4YOBkV3Qu6seGiXvW05ErSPQ27XI5ppuorZBCIEaq90t19Yq5c2648sLL7yADRs2YM2aNUhMTERhYSFOnjzpPL5w4UK8/vrr2LRpE9RqNdatW4fXX38d7777Lvr374/33nsPEyZMwIkTJ9CjRw+8+eab2LlzJz7++GNERETg3LlzOHeudhng9u3bsWbNGmzbtg3x8fEoKipyKaCvJoTAuHHj4Ovri927d0Ov1+Pdd9/F8OHDkZ2dDV9fXwBATk4OPv/8c3zxxRcoKyvDpEmTsHLlSixfvhzr1q1DdnY2evfujWXLlgEAAgICnLOgFyxYgNWrV6Nbt27w8fHBggULsGPHDvzrX/9CZGQkXnvtNYwePRqnT592Xg8A5s+fj3Xr1iE4OBgvvvgiJkyYgOzsbHh4eGDKlCnYtGkTfve73znb1//s5eXV5H+b5mozY/R2ux2ffPIJqqqqMHjwYHd3h4hamYdagW4BnugW4IkHYoMaHLc7BIwmK0orzSg2mHHRaEKJ0QxDTW1BbjBZYaix4XKVGZeqLLhUaXEW6ha7A5ZqB8phbfC8X50oAgAo5RLCu+igUsiglMugUsigU8nhrVVCX/cV7K1BhJ8Okb46hNW1dTgErA4HHA5Ao5TxdmlE1KgAT9fNI/08ONJN1BbUWO2Ie2mPW66duWw0dKqmlV9GoxHr1q3DW2+9henTpwMA7rjjDiQmJjqL0qSkJDzyyCPOc1avXo2FCxdiypQpAIBVq1Zh3759WLt2Ld5++23k5+ejR48eSExMhCRJiIyMdJ6bn5+P4OBgjBgxAkqlEhERERg0aNA1+7dv3z5kZGSguLgYarXaef3PP/8c27dvx9NPPw2gdrR+8+bNzoJ22rRp2Lt3L5YvXw69Xg+VSgWdTofg4OAG11i2bBlGjhwJoHaUOjk5GZs3b3YuRd6wYQNSUlKwceNGzJ8/33neyy+/7DzvX//6F8LCwvDZZ59h0qRJeOqpp3DvvfeioKAAoaGhKC0txRdffIGUlJQm/bu0lNuL7oyMDAwePBgmkwmenp747LPPEBcX12hbs9kMs9ns/NlgMDTajojaP7lMgo9OBR+dCt0Dm/bJo9lmR43FjmqLHdUWG6otdT9b7TBZ7DhXVo0fz5bjyNkylFaacaa0qsn9kSRAwq/rM4HaEXU/TxX8PdXw81Shi04FvVYJH11t0e6hVkCnksNDpXAW9PVFvVohg8XmqP2yO+ChVsCTt1kj6jD8vVRX/cyim4iaLisrC2azGcOHD79mm4SEBOf3BoMBBQUFGDJkiEubIUOGOEesZ8yYgZEjRyImJgZjxozBQw89hFGjRgEAHn30UaxduxbdunXDmDFjMHbsWIwfPx4KhQKvvvoqXn31VedzZmZm4ujRo6isrISfn5/L9WpqapCTk+P8OSoqymUEOSQkBMXFxU2KwZWvLycnB1ar1eX1KZVKDBo0CFlZWS7nXTmA6+vri5iYGGebQYMGIT4+Hu+//z4WLVqEDz74ABERERg6dGiT+tRSbv8LLyYmBunp6SgvL8eOHTswffp0pKWlNVp4r1ixAn/961/d0Esiag/UCjnUCjl8dNdvJ4TA+bIaFJTXwGoXsNodMNscqLbYUFFjRUWNFeXVVhSU1yD/cjXOXqpGjdUOcdXzWOwOFFaYUFhhuum+SxIQ7e+BO+t2jO/qo4VCLoNCJkEuk9BFp0KwXgM/DxVkMo6uE7V1OlXtB2n1M3A4vZyobdAq5chcNtpt125yW632hm08PDwaPHb1DDwhhPOxAQMGIDc3F//+97/xzTffYNKkSRgxYgS2b9+O8PBwnDp1CikpKfjmm2/wpz/9CX//+9+RlpaGWbNmYdKkSc7nDA0NhcPhQEhICFJTUxv0wcfHx/n91Zu7SZIEh6Np++9c+fqEEDd8fddzZZunnnoKb731FhYtWoRNmzbhD3/4Q6vPXHR70a1SqdC9e3cAtZ9mHD58GOvWrcO7777boO0LL7yAefPmOX82GAwIDw+/bX0loo5BkiSE++oQ7nuD6ryOEAKXqiywOwSUchkUcglySUJ5jRWlRjNKK824VGlBeY0F5XX3M6+osaLGYkeV2YYaqx2Vptop8RU1VljtruW7XCbB7hA4U1KFMyVV+Dy94Jp9UcolBHiqIUkSTFY7aqx2WGwOqBUyaFUKeKhrR9a7dtEiwlfn/Arx0SBEr4W3RsEp8US3SYCX+oqimyPdRG2BJElNnuLtTj169IBWq8XevXvx1FNP3bC9t7c3QkNDsX//fpdR2wMHDrhME/f29sbkyZMxefJk/O53v8OYMWNw+fJl+Pr6QqvVYsKECZgwYQKeffZZxMbGIiMjAwMGDHBZMw3UFvBFRUVQKBSIiopq8etUqVSw22+8xr579+5QqVTYv38/HnvsMQC1O7YfOXIESUlJLm0PHjyIiIgIAEBZWRmys7MRGxvrPP74449jwYIFePPNN3HixAnn9P3W1ObecUIIlynkV1Kr1c41A0REt4skSY3+weyhVqCrz40/ib6SEAJmmwNmqwMqRe1acrlMQmmlGRkXKnD8fAV+vlCB8moLbA4Bu0PAYnOgrNqCYqMZVrtAQSMj6zaLHVUWO0rr9pu7+vZs9XQqOQK91NDVFehalQJeGgX8PFTw81DD11MFPw8VfK/40muV17x1mxACRrMNlyotuFRpRlm1FUIIyGUSZDIJSpkMPjql87m4eR11JgGeauSWVsFLreB7n4iaRaPRYOHChViwYAFUKhWGDBmCkpISnDhx4ppTzufPn4+XX34Zd9xxB/r164dNmzYhPT0dW7duBQCsWbMGISEh6NevH2QyGT755BMEBwfDx8cHmzdvht1ux9133w2dTocPPvgAWq3WZd33lUaMGIHBgwdj4sSJWLVqFWJiYlBQUIDdu3dj4sSJLlPDrycqKgo//PAD8vLy4Onp2aC4r+fh4YFnnnkG8+fPh6+vLyIiIvDaa6+huroaM2fOdGm7bNky+Pn5ISgoCIsXL4a/vz8mTpzoPN6lSxc88sgjmD9/PkaNGoWwsDC0NrcW3S+++CIefPBBhIeHw2g0Ytu2bUhNTXXZ2p6IqCORJAkapbzBH+D+nmrcHxOI+2MCr3mu1e5AidGMiwYTJEmCVimHRllbuFtsDlSZ7aix1k6Rv1BWOzU+/3I1zl2uQWFFDcqqrai22JF3qbrZ/VbJZfBQy52jAyarHWabAyarHTbH1RPvr02rlNetX5c717zLJAkyqXYavVYlR5C3GsHeGgR5a+DnqYJWqai7thzeGiV8dCqoFLx/O7V9AXU7mHM9NxG1xNKlS6FQKPDSSy+hoKAAISEhmDVr1jXbz549GwaDAX/5y19QXFyMuLg47Ny5Ez169AAAeHp6YtWqVfjll18gl8tx1113Yffu3ZDJZPDx8cHKlSsxb9482O129OnTB7t27WqwZrueJEnYvXs3Fi9ejCeffBIlJSUIDg7G0KFDERTUcIPca3n++ecxffp0xMXFoaamBrm5uddsu3LlSjgcDkybNg1GoxEJCQnYs2cPunTp0qDdnDlz8Msvv6Bv377YuXMnVCrXJT4zZ87Ehx9+iCeffLLJfb0ZkqifIO8GM2fOxN69e1FYWAi9Xo8777wTCxcudO42dyMGgwF6vR4VFRXw9vZu5d4SEbVvNRY7CitqUFppQbXF5tx0zmCy4nKVBaXO0WoLLlVZcLmqdrp8U3io5PDzVKOLTglJkiCEgF3UjtKXV9c+f3OK8xvxVCvQxUMJ37rN9rroaotxjVIOpVyCQla7DEAIAYcAHEJACEClkEGtkEGtlNf+VyFzfgiiUcgQG+wNvU554w5cB3PTrddeY/rKzhPYfCAPCZFdsP2Ze93dHaJOyWQyITc3F9HR0dBoNDc+gdqt1NRU3H///SgrK3NZV96YrVu3Ys6cOSgoKGhQkF/tWu+h5uQmt450b9y40Z2XJyLqVLQqed1t2pp+js1eO4JeabGh2lx7uzZZ3Wh9fcHqo1PecOqsEAIGkw3l1RZUme2ostQ+l8lih72+MHbUTlW/WGHCRYMJRQYTKmqsteviLXZU1l3fIeD8/tzlmpuMiqv3nxyEoT2bESCi6wioG+Hmem4iorahuroaubm5WLFiBf7nf/7nhgX3rdLm1nQTEVHboZDLoNfJbnr0V5Ik5/3Pb4bDIZwj82XVFpRVWVFWXTsiX1ZtgcXmgM0hYLE7YLcLyGS1167f8N1qEzDbfp0ab7I6YLLV/tdss8P7JvtHdKWH7gzBgZxS/P6eCHd3hYiIALz22mtYvnw5hg4dihdeeOG2Xdet08tvVnudbkZERB0Xc9Otx5gSUUtxejndrFsxvZw70RARERERERG1EhbdRERERERERK2ERTcREREREXVo7XhFLbnZrXjvsOgmIiIiIqIOSams3SCzurrazT2h9qr+vVP/XmoJ7l5OREREREQdklwuh4+PD4qLiwEAOp0OkiS5uVfUHgghUF1djeLiYvj4+EAuv/7tUa+HRTcREREREXVYwcHBAOAsvImaw8fHx/keaikW3URERERE1GFJkoSQkBAEBgbCarW6uzvUjiiVypsa4a7HopuIiIiIiDo8uVx+SwoooubiRmpERERERERErYRFNxEREREREVErYdFNRERERERE1Era9Zru+huVGwwGN/eEiIioVn1Oqs9RdPOY74mIqK1pTr5v10W30WgEAISHh7u5J0RERK6MRiP0er27u9EhMN8TEVFb1ZR8L4l2/FG8w+FAQUEBvLy8bvom9waDAeHh4Th37hy8vb1vUQ87PsatZRi3lmHcmo8xa5mbiZsQAkajEaGhoZDJuIrrVmC+dz/GrWUYt5Zh3JqPMWuZ25Xv2/VIt0wmQ1hY2C19Tm9vb75RW4BxaxnGrWUYt+ZjzFqmpXHjCPetxXzfdjBuLcO4tQzj1nyMWcu0dr7nR/BERERERERErYRFNxEREREREVErYdFdR61W4+WXX4ZarXZ3V9oVxq1lGLeWYdyajzFrGcat4+K/bcswbi3DuLUM49Z8jFnL3K64teuN1IiIiIiIiIjaMo50ExEREREREbUSFt1ERERERERErYRFNxEREREREVErYdFdZ/369YiOjoZGo8HAgQPx3XffubtLbcaKFStw1113wcvLC4GBgZg4cSJOnTrl0kYIgVdeeQWhoaHQarW47777cOLECTf1uG1asWIFJElCUlKS8zHGrXEXLlzA448/Dj8/P+h0OvTr1w9Hjx51HmfcXNlsNixZsgTR0dHQarXo1q0bli1bBofD4WzDmAH/+c9/MH78eISGhkKSJHz++ecux5sSI7PZjD//+c/w9/eHh4cHJkyYgPPnz9/GV0E3i/n+2pjvbw3m+6Zjvm8e5vumaZP5XpDYtm2bUCqVYsOGDSIzM1PMmTNHeHh4iLNnz7q7a23C6NGjxaZNm8Tx48dFenq6GDdunIiIiBCVlZXONitXrhReXl5ix44dIiMjQ0yePFmEhIQIg8Hgxp63HYcOHRJRUVHizjvvFHPmzHE+zrg1dPnyZREZGSlmzJghfvjhB5Gbmyu++eYbcfr0aWcbxs3V//7v/wo/Pz/xxRdfiNzcXPHJJ58IT09PsXbtWmcbxkyI3bt3i8WLF4sdO3YIAOKzzz5zOd6UGM2aNUt07dpVpKSkiB9//FHcf//9om/fvsJms93mV0MtwXx/fcz3N4/5vumY75uP+b5p2mK+Z9EthBg0aJCYNWuWy2OxsbFi0aJFbupR21ZcXCwAiLS0NCGEEA6HQwQHB4uVK1c625hMJqHX68U777zjrm62GUajUfTo0UOkpKSIYcOGOZMw49a4hQsXisTExGseZ9waGjdunHjyySddHnvkkUfE448/LoRgzBpzdRJuSozKy8uFUqkU27Ztc7a5cOGCkMlk4quvvrptfaeWY75vHub75mG+bx7m++Zjvm++tpLvO/30covFgqNHj2LUqFEuj48aNQoHDhxwU6/atoqKCgCAr68vACA3NxdFRUUuMVSr1Rg2bBhjCODZZ5/FuHHjMGLECJfHGbfG7dy5EwkJCXj00UcRGBiI/v37Y8OGDc7jjFtDiYmJ2Lt3L7KzswEAP/30E/bv34+xY8cCYMyaoikxOnr0KKxWq0ub0NBQ9O7dm3FsB5jvm4/5vnmY75uH+b75mO9vnrvyveLmut3+lZaWwm63IygoyOXxoKAgFBUVualXbZcQAvPmzUNiYiJ69+4NAM44NRbDs2fP3vY+tiXbtm3Djz/+iMOHDzc4xrg17syZM0hOTsa8efPw4osv4tChQ5g9ezbUajWeeOIJxq0RCxcuREVFBWJjYyGXy2G327F8+XJMnToVAN9rTdGUGBUVFUGlUqFLly4N2jBftH3M983DfN88zPfNx3zffMz3N89d+b7TF931JEly+VkI0eAxAp577jn8/PPP2L9/f4NjjKGrc+fOYc6cOfj666+h0Wiu2Y5xc+VwOJCQkIBXX30VANC/f3+cOHECycnJeOKJJ5ztGLdfffTRR9iyZQs+/PBDxMfHIz09HUlJSQgNDcX06dOd7RizG2tJjBjH9oX/HzQN833TMd+3DPN98zHf3zq3O993+unl/v7+kMvlDT61KC4ubvAJSGf35z//GTt37sS+ffsQFhbmfDw4OBgAGMOrHD16FMXFxRg4cCAUCgUUCgXS0tLw5ptvQqFQOGPDuLkKCQlBXFycy2O9evVCfn4+AL7fGjN//nwsWrQIU6ZMQZ8+fTBt2jTMnTsXK1asAMCYNUVTYhQcHAyLxYKysrJrtqG2i/m+6Zjvm4f5vmWY75uP+f7muSvfd/qiW6VSYeDAgUhJSXF5PCUlBffee6+betW2CCHw3HPP4dNPP8W3336L6Ohol+PR0dEIDg52iaHFYkFaWlqnjuHw4cORkZGB9PR051dCQgJ+//vfIz09Hd26dWPcGjFkyJAGt6jJzs5GZGQkAL7fGlNdXQ2ZzPXXuVwud95ChDG7sabEaODAgVAqlS5tCgsLcfz4ccaxHWC+vzHm+5Zhvm8Z5vvmY76/eW7L9y3afq2Dqb+FyMaNG0VmZqZISkoSHh4eIi8vz91daxOeeeYZodfrRWpqqigsLHR+VVdXO9usXLlS6PV68emnn4qMjAwxderUTnd7gqa4cjdTIRi3xhw6dEgoFAqxfPly8csvv4itW7cKnU4ntmzZ4mzDuLmaPn266Nq1q/MWIp9++qnw9/cXCxYscLZhzGp3Fj527Jg4duyYACDeeOMNcezYMeftopoSo1mzZomwsDDxzTffiB9//FE88MADvGVYO8J8f33M97cO8/2NMd83H/N907TFfM+iu87bb78tIiMjhUqlEgMGDHDeHoNqt9pv7GvTpk3ONg6HQ7z88ssiODhYqNVqMXToUJGRkeG+TrdRVydhxq1xu3btEr179xZqtVrExsaKf/zjHy7HGTdXBoNBzJkzR0RERAiNRiO6desmFi9eLMxms7MNYybEvn37Gv1dNn36dCFE02JUU1MjnnvuOeHr6yu0Wq146KGHRH5+vhteDbUU8/21Md/fOsz3TcN83zzM903TFvO9JIQQLRsjJyIiIiIiIqLr6fRruomIiIiIiIhaC4tuIiIiIiIiolbCopuIiIiIiIiolbDoJiIiIiIiImolLLqJiIiIiIiIWgmLbiIiIiIiIqJWwqKbiIiIiIiIqJWw6CYiIiIiIiJqJSy6iYiIiIiIiFoJi24iIiIiIiKiVsKim4iIiIiIiKiVsOgmakeEEHjttdfQrVs3aLVa9O3bF9u3bwcApKamQpIkfPnll+jbty80Gg3uvvtuZGRkuDzHjh07EB8fD7VajaioKLz++usux4uLizF+/HhotVpER0dj69atiIqKwtq1awEAeXl5kCQJ6enpznPKy8shSRJSU1Odj2VmZmLs2LHw9PREUFAQpk2bhtLS0laJCxERUUfCfE/UsbDoJmpHlixZgk2bNiE5ORknTpzA3Llz8fjjjyMtLc3ZZv78+Vi9ejUOHz6MwMBATJgwAVarFQBw9OhRTJo0CVOmTEFGRgZeeeUVLF26FJs3b3aeP2PGDOTl5eHbb7/F9u3bsX79ehQXFzern4WFhRg2bBj69euHI0eO4KuvvsLFixcxadKkWxIHIiKijoz5nqiDEUTULlRWVgqNRiMOHDjg8vjMmTPF1KlTxb59+wQAsW3bNuexS5cuCa1WKz766CMhhBCPPfaYGDlypMv58+fPF3FxcUIIIU6dOiUAiIMHDzqPZ2VlCQBizZo1QgghcnNzBQBx7NgxZ5uysjIBQOzbt08IIcTSpUvFqFGjXK5z7tw5AUCcOnXqpuJARETUkTHfE3U8CveU+kTUXJmZmTCZTBg5cqTL4xaLBf3793f+PHjwYOf3vr6+iImJQVZWFgAgKysLDz/8sMv5Q4YMwdq1a2G325GVlQWFQoGEhATn8djYWPj4+DSrr0ePHsW+ffvg6enZ4FhOTg569uzZrOcjIiLqLJjviToeFt1E7YTD4QAAfPnll+jatavLMbVajZycnGueK0kSgNo1YvXf1xNCNPj+6jZXkslkDc6rn852ZV/Hjx+PVatWNTg/JCTkms9NRETU2THfE3U8LLqJ2om4uDio1Wrk5+dj2LBhDY7XJ+GDBw8iIiICAFBWVobs7GzExsY6n2P//v0u5x04cAA9e/aEXC5Hr169YLPZcOTIEQwaNAgAcOrUKZSXlzvbBwQEAKhdx1X/ifuVm6wAwIABA7Bjxw5ERUVBoeCvGSIioqZivifqePh/B1E74eXlheeffx5z586Fw+FAYmIiDAYDDhw4AE9PT0RGRgIAli1bBj8/PwQFBWHx4sXw9/fHxIkTAQB/+ctfcNddd+Fvf/sbJk+ejO+//x5vvfUW1q9fDwCIiYnBmDFj8Mc//hH/+Mc/oFAokJSUBK1W6+yHVqvFPffcg5UrVyIqKgqlpaVYsmSJS1+fffZZbNiwAVOnTsX8+fPh7++P06dPY9u2bdiwYQPkcvntCRoREVE7w3xP1AG5bzk5ETWXw+EQ69atEzExMUKpVIqAgAAxevRokZaW5txYZdeuXSI+Pl6oVCpx1113ifT0dJfn2L59u4iLixNKpVJERESIv//97y7HCwsLxbhx44RarRYRERHi/fffF5GRkc6NVYQQIjMzU9xzzz1Cq9WKfv36ia+//tplYxUhhMjOzha/+c1vhI+Pj9BqtSI2NlYkJSUJh8PRmiEiIiJq95jviToWSYgrFmoQUbuVmpqK+++/H2VlZc3eCOVGoqKikJSUhKSkpFv6vERERNQ8zPdE7Q/v001ERERERETUSlh0ExEREREREbUSTi8nIiIiIiIiaiUc6SYiIiIiIiJqJSy6iYiIiIiIiFoJi24iIiIiIiKiVsKim4iIiIiIiKiVsOgmIiIiIiIiaiUsuomIiIiIiIhaCYtuIiIiIiIiolbCopuIiIiIiIiolbDoJiIiIiIiImol/x+9+9CiKpTIIgAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1000x400 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "if __name__ == \"__main__\":\n",
    "    d, l = read_cifar_batch(\"data/cifar-10-batches-py/data_batch_1\")\n",
    "    num_epoch=100\n",
    "    dh=64\n",
    "    train_param=0.1\n",
    "    d_train, l_train, d_test, l_test = split_dataset(d, l, 0.9)\n",
    "\n",
    "    train_accuracy,loss,test_accuracy=run_mlp_cross_entropy_training(d_train, l_train, d_test, l_test,dh,train_param,num_epoch)\n",
    "    fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10, 4))\n",
    "\n",
    "    ax1.plot(range(num_epoch),loss,label=\"cross-entropy\")\n",
    "    ax1.set_xlabel('epoque')\n",
    "    ax1.set_ylabel('loss')\n",
    "    ax1.set_title('evolution de la fonction loss par epoque')\n",
    "    ax1.legend()\n",
    "\n",
    "    ax2.plot(range(num_epoch),train_accuracy,label=\"cross-entropy\")\n",
    "    ax2.set_xlabel('epoque')\n",
    "    ax2.set_ylabel('accuracy')\n",
    "    ax2.set_title('evolution de la accuracy')\n",
    "    ax2.legend()\n",
    "    plt.tight_layout()\n",
    "    plt.show()\n",
    "\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.5"
  },
  "polyglot_notebook": {
   "kernelInfo": {
    "defaultKernelName": "csharp",
    "items": [
     {
      "aliases": [],
      "name": "csharp"
     }
    ]
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}