{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "from sklearn.metrics import silhouette_score\n", "from sklearn.preprocessing import MinMaxScaler\n", "from sklearn.cluster import DBSCAN\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Prvih 5 instanci\n", " breed height weight\n", "0 Border Collie 19 45\n", "1 Boston Terrier 12 20\n", "2 Brittany Spaniel 18 35\n", "3 Bullmastiff 29 120\n", "4 Chihuahua 8 8\n" ] } ], "source": [ "#ucitavanje skupa\n", "df = pd.read_csv(\"C:/Users/student/Desktop/ipVezbe122021/primeri/dogs.csv\")\n", "\n", "#prikaz imena kolona + 5 prvih instanci\n", "print('Prvih 5 instanci')\n", "print(df.head())\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Za klasterovanje ce se koristiti atributi visina i tezina psa,\n", "# a rasa nece biti uzeta u obzir.\n", "features = df.columns[1:]\n", "\n", "#vrednost atributa breed (tj. rasa) postaje oznaka (indeks) instance\n", "df.set_index('breed', inplace=True)\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "#normalizacija vrednosti atributa\n", "scaler = MinMaxScaler().fit(df)\n", "x = pd.DataFrame(scaler.transform(df), columns=features, index=df.index)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\"\"\"\n", "Density-Based Spatial Clustering of Applications with Noise\n", "\n", "parametri:\n", "\n", "eps : maksimalna udaljenost za instance-komsije\n", " default:0.5\n", "min_samples : broj suseda koje mora da ima instanca u jezgru\n", " default:5\n", "metric : metrika za racunanje rastojanja\n", " default:'euclidean'\n", "\n", "atributi:\n", "core_sample_indices_ : indeksi instanci u jezgru\n", "labels_ : oznake klastera za svaku instancu. Instance koje se smatraju sumom imaju\n", "oznaku -1\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# Definisanje boja koje se koriste pri crtanju instanci klastera.\n", "# Instance jednog klastera ce biti prikazane istom bojom.\n", "# Sum ce biti prikazan crvenom bojom.\n", "colors = ['darkcyan', 'magenta', 'gold', 'blue', 'navy', 'green', 'red']\n" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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bs4//3xGjRrF7bffDkS9JcOHD2f69OkUFRXxzjvvHLHNkpISCgsLO36nRUSyjHKxiHSWZG4Ukp22AxVAAigGKoEBqa9248aNTJkyhXnz5jF69GiWL19+eN65557LypUrycvLY+nSpdx6660sWrSIhx56iBtuuIGrr76a/fv3c/DgQebMmUNNTQ2JRAKAJUuWUFtby+rVq3F3Jk2axIoVKxg8eDC1tbXMnz+fsWPHpr4DIiKdSblYRHJA7hTIFUTfENoQHiuAFamtsr6+nvLychYvXsyIESOazd+9ezczZsygtrYWM+PAgQMAlJWVceedd1JXV8dVV13FsGHDmr12yZIlLFmyhJKSEgD27t1LbW0tgwcPZsiQIUrIItI1KReLSA7InSEWCaKETHhMpL7Kfv36MXjwYF5++eUW5992221MmDCBmpoannnmGT744AMApk2bRlVVFb179+byyy9n2bJlzV7r7syePZtEIkEikWDTpk3MnBl973+fPn1SD15EJBMSKBeLSJeXOwVyMR/1h+eF5ynq2bMnTz31FI899hiPP/54s/m7d+9m0KBBAMybN+9w++bNmznrrLO4/vrrKS8v54033qBv377s2bPn8DKXXnopc+fOZe/evQBs3bqVHTt2pB60iEgmFaNcLCJdXu4UyJVAGdA3PFamZ7V9+vTh2Wef5d5776WqquqIeTfddBOzZ8+mpKSEhoaGw+0LFy6kqKiI4uJiampqmD59Ov3792fcuHEUFRUxa9YsLrnkEqZNm0ZZWRkjR45k8uTJRyTt1tx3330UFBRQV1fHqFGj+MpXvpKeHRURSQflYhHJARbdkTSzSktLvbq6+oi2DRs2cN5552Uooq5Px08ku5nZGncvzXQcccrF6aVjJ5Ld2srDudODLCIiIiKSBiqQRURERERiVCCLiEibsmEoXlejYybStbVbIJvZXDPbYWY1sba7zew3ZvaGmT1lZqfE5s02s01mttHMLu2guEVEupVM5eJevXqxc+dOFXzHwN3ZuXMnvXr1ynQoIpKko7lRyDzgfuCxWNsLwGx3bzCzu4DZwM1mNgKYAnwCGAgsNbNz3P1gesMWkW5r+3aoqIBEAoqLobISBqThVm3Zbx4ZyMWN39RQX1+f8g50J7169aKgoCDTYYh0nBzPxe0WyO6+wswKm7QtiT19BZgcpsuBJ9z9Q+BtM9sEjCG6n5KISOoqKmDVKmhoiB4rKmBFirdq6wIylYt79OjB0KFDkwtaRHJXjufidIxB/jLwizA9CHgnNq8utDVjZteaWbWZVWdjz8SWLVsoKipq1r58+XKuuOKKY17frl27eOCBB1KO6+qrr2b48OEUFRXx5S9/+fAtVUW6jUQiSsgQPSYSmYwmm+RkLhaRLJXjuTilAtnM/hfRzUR/fKyvdfeH3b3U3Uvz8/NTCaNLSKZAdncOHTp0RNvVV1/Nb37zG9atW8ef//xnHnnkkXSGKZL9ioshL3z4lZcXPe/mlItFpNPleC5OukA2sy8BVwBX+0dXb2wFzowtVhDaurTNmzdTUlLCa6+9dkT76tWrKSsro6SkhAsuuICNGzcCsH79esaMGUNxcTGjRo2itraWW265hbfeeovi4mJmzZoFwN13383555/PqFGjuP3224Go53r48OFMnz6doqIi3nnnnSO2efnll2NmmBljxoyhrq6uE46ASBaprISyMujbN3qsTNOt2rqo7pSLRSSL5HguPpqL9Joxs4nATcBn3P1PsVlVwONmdg/RhSHDgNUpR3k0GrbD1gr4MAEnFMOgSshLfbD4xo0bmTJlCvPmzWP06NEsX7788Lxzzz2XlStXkpeXx9KlS7n11ltZtGgRDz30EDfccANXX301+/fv5+DBg8yZM4eamhoS4SOIJUuWUFtby+rVq3F3Jk2axIoVKxg8eDC1tbXMnz+fsWPHthrXgQMH+I//+A9+8IMfpLyPIl3KgAE5Nc4tFVmZi0Wke8jxXNxugWxmC4CLgNPNrA64nehK6ROAF8wM4BV3/5q7rzezhcCbRB/3Xddp32CxtQL+vCra7J9XRc+HpHbi6uvrKS8vZ/HixYwYMaLZ/N27dzNjxgxqa2sxs8PjgcvKyrjzzjupq6vjqquuYtiwYc1eu2TJEpYsWUJJSQkAe/fupba2lsGDBzNkyJA2i2OAr3/964wfP54LL7wwpX0Uka6hy+RiEZEccDTfYjG1heZH21j+TuDOVIJKyocJov8DRI8fJlJeZb9+/Rg8eDAvv/xyiwXybbfdxoQJE3jqqafYsmULF110EQDTpk3jU5/6FD/72c+4/PLL+fd//3fOOuusI17r7syePZuvfvWrR7Rv2bKFPn36tBnXd7/7Xerr6/n3f//31HZQRLqMLpOLRURyQO7cSe+EYj6q9/PC89T07NmTp556iscee4zHH3+82fzdu3czaFB0Yfi8efMOt2/evJmzzjqL66+/nvLyct544w369u3Lnj17Di9z6aWXMnfuXPbu3QvA1q1b2bFjR7sxPfLIIzz//PMsWLCA447LndMnIiIiki1yp8IaVAm9y+C4vtHjoPQMFu/Tpw/PPvss9957L1VVVUfMu+mmm5g9ezYlJSU0NH7VCbBw4UKKioooLi6mpqaG6dOn079/f8aNG0dRURGzZs3ikksuYdq0aZSVlTFy5EgmT558RAHdmq997Wts376dsrIyiouL+d73vpeW/RQRERGRiGXD7UNLS0u9urr6iLYNGzZw3nnnZSiirk/HTyS7mdkady/NdBxxLeViEZFc1VYezp0eZBERERGRNFCBLCIiIiISk9UFcjYM/+iKdNxEREREkpe1BXKvXr3YuXOnir1j5O7s3LmTXr16ZToUERERkS4pqTvpdYaCggLq6uqor6/PdChdTq9evSgoKMh0GCIiIiJdUtYWyD169GDo0KGZDkNEREREupmsHWIhIiIiIpIJKpBFRERERGJUIIuIiIiIxKhAFhERERGJUYEsIiIiIhLTboFsZnPNbIeZ1cTaTjOzF8ysNjyeGtrNzO4zs01m9oaZfbIjgxcR6S6Ui0VEOs/R9CDPAyY2absFeNHdhwEvhucAlwHDws+1wIPpCVNEpNubh3KxiEinaLdAdvcVwPtNmsuB+WF6PnBlrP0xj7wCnGJmZ6QpVhGRbku5WESk8yQ7BnmAu78bpn8PDAjTg4B3YsvVhTYREUk/5WIRkQ6Q8kV67u6AH+vrzOxaM6s2s2rdTlpEJDXKxSIi6ZNsgby98eO68LgjtG8FzowtVxDamnH3h9291N1L8/PzkwxDRKRbUy4WEekAyRbIVcCMMD0D+GmsfXq4gnossDv28Z+IiKSXcrGISAfIa28BM1sAXAScbmZ1wO3AHGChmc0Efgt8ISz+c+ByYBPwJ+BvOyBmEZFuR7lYRKTztFsgu/vUVmZd3MKyDlyXalAiInIk5WIRkc6jO+mJiIiIiMSoQBYRERERiVGBLCIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRGBXIIiIiIiIxKpBFRERERGJUIIuIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJEYFsoiIiIhIjApkEREREZEYFcgiIiIiIjEpFchmdqOZrTezGjNbYGa9zGyomb1qZpvM7Cdm1jNdwYqISHPKxSIi6ZV0gWxmg4DrgVJ3LwKOB6YAdwH3uvvZwB+AmekIVEREmlMuFhFJv1SHWOQBvc0sDzgReBf4LPBkmD8fuDLFbYiISNuUi0VE0ijpAtndtwLfB35HlIx3A2uAXe7eEBarAwa19Hozu9bMqs2sur6+PtkwRLquhu3w2/Hw3ydHjw3bMx2RdEHKxSKp2b5vH+MXLODk++5j/IIFbN+3L9MhSRZIZYjFqUA5MBQYCPQBJh7t6939YXcvdffS/Pz8ZMMQ6bq2VsCfV8GhPdHj1opMRyRdkHKxSGoqqqpYtW0be/bvZ9W2bVRUVWU6JMkCqQyx+BzwtrvXu/sBYDEwDjglfMwHUABsTTFGkdz0YQJo7OBrCM9FjplysUgKEvX1NLgD0OBOQp+kCKkVyL8DxprZiWZmwMXAm8BLwOSwzAzgp6mFKJKjTigmGjpK9HhCceZika5MuVgkBcX5+eSZAZBnRrE+SRFSG4P8KtEFIGuBdWFdDwM3A980s01Af+DRNMQpknsGVULvMjiub/Q4qDLTEUkXpFwskprKSZMoGziQvj17UjZwIJWTJmU6JMkC5uFjhUwqLS316urqTIchItJpzGyNu5dmOo445WIR6U7aysO6k56IiIiISIwKZBERERGRGBXIIiIiIiIxKpBFugLdVEREJON0U5HuQwWySFegm4qIiGScbirSfahAFukKdFMREZGM001Fug8VyCJdgW4qIiKScbqpSPehAlmkK9BNRUREMk43Fek+8tpfREQyLm8ADFmR6ShERLq1AX36sGLq1EyHIZ1APcjSPW3fDuPHw8knR4/b9a0QIiKdTd8KIdlKBbJ0TxUVsGoV7NkTPVboWyFERDqbvhVCspUKZOmeEgloCN8K0dAQPRcRkU6lb4WQbKUCWbqn4mLIC0Pw8/Ki5yIi0qn0rRCSrVQgS/dUWQllZdC3b/RYqW+FEBHpbPpWCMlWKX2LhZmdAjwCFAEOfBnYCPwEKAS2AF9w9z+ksh2RtBswAFboWyEkNygXS1elb4WQbJVqD/IPgOfc/VxgNLABuAV40d2HAS+G5yIi0nGUi0VE0ijpAtnM+gHjgUcB3H2/u+8CyoH5YbH5wJWphSgiIq1RLhYRSb9UepCHAvXAj8zs12b2iJn1AQa4+7thmd8DA1p6sZlda2bVZlZdr6tWRUSSpVwsIpJmqRTIecAngQfdvQTYR5OP8NzdicbDNePuD7t7qbuX5uuqVRGRZCkXi4ikWSoFch1Q5+6vhudPEiXp7WZ2BkB43JFaiCIi0gblYhGRNEu6QHb33wPvmNnw0HQx8CZQBcwIbTOAn6YUoYiItEq5WEQk/VL6mjfgG8CPzawnsBn4W6Kie6GZzQR+C3whxW2IiEjblItFRNIopQLZ3RNAaQuzLk5lvSIicvSUi0VE0kt30hMRERERiVGBLCIiIiISowJZRERERCQm1Yv0RCRm+759VFRVkaivpzg/n8pJkxjQp0+mwxIR6VaUiyVV6kEWSaOKqipWbdvGnv37WbVtGxVVVZkOSUSk21EullSpQBZJo0R9PQ0e3bCswZ2Ebt0rItLplIslVSqQRdKoOD+fPDMA8swo1q17RUQ6nXKxpEoFskgaVU6aRNnAgfTt2ZOygQOpnDQp0yGJiHQ7ysWSKl2kJ5JGA/r0YcXUqZkOQ0SkW1MullSpQJZuSVc4i4hknnKxZCsNsZBuSVc4i4hknnKxZCsVyNIt6QpnEZHMUy6WbKUCWbolXeEsIpJ5ysWSrVQgS7ekK5xFRDJPuViyVcoX6ZnZ8UA1sNXdrzCzocATQH9gDfA37r4/1e2IpJOucJZco1wsXZFysWSrdPQg3wBsiD2/C7jX3c8G/gDMTMM2RESkbcrFIiJpklKBbGYFwOeBR8JzAz4LPBkWmQ9cmco2RESkbcrFIiLplWoP8r8BNwGHwvP+wC53bwjP64BBLb3QzK41s2ozq67XVasiIqn4N5SLRUTSJukC2cyuAHa4+5pkXu/uD7t7qbuX5uuqVRGRpCgXi4ikXyoX6Y0DJpnZ5UAv4GTgB8ApZpYXei4KgK2phykiIq1QLhYRSbOke5Ddfba7F7h7ITAFWObuVwMvAZPDYjOAn6YcpYiItEi5WEQk/Trie5BvBr5pZpuIxsE92gHbEGlm+759jF+wgJPvu4/xCxawfd++TIckkknKxZIRysWSC9JSILv7cne/Ikxvdvcx7n62u1e4+4fp2IZIeyqqqli1bRt79u9n1bZtVFRVZTokkU6lXCzZQLlYcoHupCc5I1FfT4M7AA3uJHRFvohIp1MullygAllyRnF+PnlmAOSZUawr8kVEOp1yseQCFciSMyonTaJs4ED69uxJ2cCBVE6alOmQRES6HeViyQWpfM2bSFYZ0KcPK6ZOzXQYIiLdmnKx5AL1IIuIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJEYFsoiIiIhIjApkEREREZEYFcgiIiIiIjEqkEVEREREYlQgi4iIiIjEqEAWEREREYlJukA2szPN7CUze9PM1pvZDaH9NDN7wcxqw+Op6QtXRETilItFRNIvlR7kBuBb7j4CGAtcZ2YjgFuAF919GPBieC4dZft2GD8eTj45ety+PdMRiUjnUi7OBtuB8cDJ4VGpWKRLS7pAdvd33X1tmN4DbAAGAeXA/LDYfODKFGOUtlRUwKpVsGdP9FhRkemIRKQTKRdniQpgFbAnPCoVi3RpaRmDbGaFQAnwKjDA3d8Ns34PDGjlNdeaWbWZVdfX16cjjO4pkYCGhmi6oSF6LiLdknJxBiWI+vIJj4mMRSIiaZBygWxmJwGLgH9w9z/G57m7A97S69z9YXcvdffS/Pz8VMPovoqLIS8vms7Li56LSLejXJxhxUBIxeSF5yLSZaVUIJtZD6KE/GN3Xxyat5vZGWH+GcCO1EKUNlVWQlkZ9O0bPVZWZjoiEelkysVZoBIoA/qGR6VikS4tr/1FWmZmBjwKbHD3e2KzqoAZwJzw+NOUIpS2DRgAK1ZkOgoRyRDl4iwxAFAqFskZSRfIwDjgb4B1ZpYIbbcSJeOFZjYT+C3whZQiFBGRtigXi4ikWdIFsru/DFgrsy9Odr0iInL0lItFRNJPd9ITEREREYlRgSwiIiIiEqMCWUREREQkRgWyiIiIiEiMCmQRERERkRgVyCIiIiIiMSqQm9oOjAdODo/bMxuOiEi3ozwsIhnWdQvkjkqgFcAqYE94rEjTekVEco3ysIjkqK5bIHdUAk0ADWG6ITwXEZHmlIdFJEd13QI5Qcck0GI+ur9gXnguIiLNJVAeFpGc1HUL5GI6JoFWAmVA3/BYmab1iojkmmKUh0UkJ+W1v0iWqiT6OC9BlJTTlUAHACvStC4RkVymPCwiOarrFshKoCIimaU8LCI5qusOsRARERER6QAdViCb2UQz22hmm8zslo7ajoiItEx5WEQkOR1SIJvZ8cD/Ay4DRgBTzWxER2xLRESaUx4WEUleR/UgjwE2uftmd98PPAGUd9C2RESkOeVhEZEkdVSBPAh4J/a8LrQdZmbXmlm1mVXX19d3UBgiIt1Wu3kYlItFRFqSsW+xcPeHgYcBzKzezH4bm3068F5GAut4ubxvkNv7l8v7Brm9f9m4b0MyHQC0mYuz8ZilUy7vXy7vG+T2/uXyvkH27V+rebijCuStwJmx5wWhrUXunh9/bmbV7l7aQbFlVC7vG+T2/uXyvkFu718u71sbjikPw5G5ONePWS7vXy7vG+T2/uXyvkHX2r+OGmLxGjDMzIaaWU9gClDVQdsSEZHmlIdFRJLUIT3I7t5gZn8PPA8cD8x19/UdsS0REWlOeVhEJHkdNgbZ3X8O/DzJlz+czliyTC7vG+T2/uXyvkFu718u71urlIfblMv7l8v7Brm9f7m8b9CF9s/cPdMxiIiIiIhkDd1qWkREREQkRgWyiIiIiEhMVhXIZrbFzNaZWcLMqjMdT6rMbK6Z7TCzmljbaWb2gpnVhsdTMxljslrZtzvMbGs4fwkzuzyTMabCzM40s5fM7E0zW29mN4T2Ln/+2ti3nDh/ZtbLzFab2eth/74b2oea2atmtsnMfhK+2UFakEu5OJfzMOR2Ls7lPAy5nYtzIQ9n1RhkM9sClLp7Nn2JdNLMbDywF3jM3YtC278C77v7HDO7BTjV3W/OZJzJaGXf7gD2uvv3MxlbOpjZGcAZ7r7WzPoCa4ArgS/Rxc9fG/v2BXLg/JmZAX3cfa+Z9QBeBm4AvgksdvcnzOwh4HV3fzCTsWarXMrFuZyHIbdzcS7nYcjtXJwLeTirepBzjbuvAN5v0lwOzA/T84n+GLqcVvYtZ7j7u+6+NkzvATYQ3aa3y5+/NvYtJ3hkb3jaI/w48FngydDeJc+dHLtczsOQ27k4l/Mw5HYuzoU8nG0FsgNLzGyNmV2b6WA6yAB3fzdM/x4YkMlgOsDfm9kb4WO/LvmxV1NmVgiUAK+SY+evyb5Bjpw/MzvezBLADuAF4C1gl7s3hEXqyJF/RB0k13NxTv0dtyIn/pYb5XIehtzMxV09D2dbgfxpd/8kcBlwXfjoKGd5NL4le8a4pO5B4ONAMfAu8H8yGk0amNlJwCLgH9z9j/F5Xf38tbBvOXP+3P2guxcT3V55DHBuZiPqcrpNLu7qf8etyJm/ZcjtPAy5m4u7eh7OqgLZ3beGxx3AU0QHNNdsD+OOGscf7chwPGnj7tvDH8Qh4Id08fMXxk0tAn7s7otDc06cv5b2LdfOH4C77wJeAsqAU8ys8eZIBcDWTMWV7bpBLs6Jv+PW5NLfci7nYegeubir5uGsKZDNrE8YpI6Z9QEuAWraflWXVAXMCNMzgJ9mMJa0akxYwV/Thc9fuMDgUWCDu98Tm9Xlz19r+5Yr58/M8s3slDDdG/grorF9LwGTw2Jd8tx1hm6Si7v833FbcuhvOWfzMOR2Ls6FPJw132JhZmcR9VRAdAvsx939zgyGlDIzWwBcBJwObAduB54GFgKDgd8CX3D3LneBRSv7dhHRR0IObAG+Ghsn1qWY2aeBlcA64FBovpVofFiXPn9t7NtUcuD8mdkooos/jifqBFjo7t8LOeYJ4DTg18A17v5h5iLNTrmWi3M5D0Nu5+JczsOQ27k4F/Jw1hTIIiIiIiLZIGuGWIiIiIiIZAMVyCIiIiIiMSqQRURERERiVCCLiIiIiMSoQBYRERERiVGBLCIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRGBXIIiIiIiIxKpBFRERERGJUIIuIiIiIxKhA7gRmdtDMEma23sxeN7NvmdlxYd5FZrY7zH/DzJaa2cfCvOFmtjzM22BmD8fWOcbMVpjZRjP7tZk9YmYnxuY/bWavNInjDjP7U+P6Q9vejj8CzZnZX5rZOjPbZGb3mZm1sMzV4ZisM7Nfmdno2LwtoT1hZtXHsN1SM7svTH/JzO5PMv5TzOzrSbwu5eNtZieE35OEmX0xnPsRbSw/ycxuCdNfM7PpSW630MymtTF/hpnVhp8ZbSz3DTP7Tfh7+Ncm8wab2V4z+3YyMYq0Rbm4uVRycTguidjPH83sH45yu8rFGczF4Xdwa+zcXR7ar25yTg+ZWXEycXZ57q6fDv4B9samPwYsBb4bnl8EPBub/y+xec8D5bF5I8PjAOC3QFls3mRgQJg+BXgH2ACcFVvmDuB3wF0txdbJx2Q1MBYw4BfAZS0scwFwapi+DHg1Nm8LcHqKMXwJuD/J1xYCNan8LqQQ91hgaQbO2RG/q03mnQZsDo+nhulTW1huQvj9PyE8/1iT+U8ClcC3O3v/9JP7P8rFLR6TlHJxbJnjgd8DQ5KIQbn42Labjlx8R3t5FhgJvNXZ+5ctP+pB7mTuvgO4Fvj7pu/Uw/O+wB9C0xlAXey168LkdcB8d18Vm/eku28PT68CngGeAKY0CWEu8EUzO+1oYw49DL80szVm9ryZnRHal5vZD8K7zBozGxPaPxN79/lrM+vbZH1nACe7+yse/RU+BlzZdLvu/it3bzwWrwAFRxtz2E5FiOt1M1sR2i4ys2dbWHaemU2OPd8bm55lZq+FHpTvhuY5wMfDPt5tZieZ2Ytmtjb0spS3E9vpZrbKzD4fegOWhfW/aGaDwzL5ZrYobPs1MxsXepz+Ezg/bPvj4TyUhtdMDDG8bmYvhrbDvTOh1+DbYfrjZvZcOK8rzezc2LG4L/QUbY4dlznAhWG7NzbZpUuBF9z9/XDOXgAmtrDrfwfMcfcP4fDfQ+MxuRJ4G1jf1rETSQfl4rTn4ouJiqnfthC3cjFZl4uPxlSi393uKdMVenf4oYV3qsAuot6Hi4DdQIKop+E3RAkL4G/DvF8ANwKnhPbFxHozWlj3C8CFwDnAulj7HcC3gX/ko56RNt9FAz2AXwH54fkXgblhejnwwzA9nvAunugfwrgwfRKQF6YT4bGU2LvuEGuL74Zjy3wbeCT2/G1gLbAGuLaV16wDBoXpxmN3UeO2iPVaAPOAyU3PGXAJ8DBR78pxwLNhXwuJ9VoAebHzdjqwCbCWfhfCeX8V+KvY8ZoRpr8MPB2mHwc+HaYHAxua7kPsPJQC+eF3aGhoP62F/byD0GsAvAgMC9OfApbFjkVl2N8RwKaWttvC+flO7PlttNA7QfR7/t2w/78Ezo/9nqwKj3e09Fr96CfVH5SL056LY+1zgb9v5TXKxc338w4ym4vvIPok9o1w7lrqZX4LKMr0322mfvKQbLDS3a8AMLObgX8FvubuPzKz54ne/ZUDX7XYONyWmNkAYBjwsru7mR0wsyJ3r4ktdh+QMLPvH0Vsw4Ei4IXQyXI88G5s/gIAd19hZieb2SnAfwH3mNmPgcXuXheWKT6K7bW0TxOAmcCnY82fdvet4V38C2b2G3df0eSl/wXMM7OFRP/IknFJ+Pl1eH4S0fH9XdMwgf9tZuOBQ8AgouT7+ybL9SBKhte5+y9DWxlRTxPAfxCdf4DPASNinVsnm9lJbcQ6Fljh7m8DuPv7rS0Y1nMBUBlb/wmxRZ5290PAm+F3Kl3yiD76GwucDyw0s7OIkvW97r7Xmg+BFOksysVt71NLuRgz6wlMAma38lLl4lZkMBc/CPwT4OHx/xC9KWiM61PAn5r8vnYrKpAzIBQEB4EdwHlNZlcBixqfuPs2ond3c82shihBrgf+EvhpC6v/AtG4o7fDH9vJRB+T/K/YOneZ2eNEHw+2Gy6w3t3LWpnvTZ+7+xwz+xlwOfBfZnapu/8mtsxWjvyIriC0Nd+42SjgEaJxcTtjG9kaHneY2VPAGOCIAtndvxb+yD8PrDGzv2xjPxsIF61adNFOz8YQgH9x939vEldhk9dfTdRr8JfufsDMtgC9WtnOGqKPwX7Zwvy444Cx7v5Bk22387Kjchywq41/lB/GN3kU69tK1KvRqICoN6WpOqJ/1A6sNrNDRL08nwImW3TR3inAITP7wN2TunBH5GgoF6eei4PLgLX+0dCSpoEoF7e97k7PxfFzZWY/JOqRj5tCeNPVXWkMciczs3zgIaKPWZomNIjemb8Vlp1oZj3C9F8A/Yl++e8HZoSE07jeq8K7y6nARHcvdPdCouTddOwbwD3AV4m9SQpjrgY1WW4jkG9mZWGZHmb2idj8L4b2TwO73X23mX3c3de5+13Aa8C58RW6+7vAH81srEUZZjot/IMJ478WA3/j7v8da+9jYSydmfUh6lVo9i43xPGqu/8jUA+c2cJxaLSF6FhB1BPSI0w/D3y5sbfAzAaFXus9RGMUG/UDdoSEPAEY0sp2nOhd+rmhhwqij00bz9HVwMowvQT4Rmx/ituIH6KxgePNbGhYvtWxje7+R6J/3BVhWWuvR4zm+xz3PHCJmZ1qZqcSnZPnW1juaaIL9TCzc4j++b3n7hfGfmf/DfjfKo6lIykXp56LY6bSRjGlXJx9udjC+PXgr4n9Dw1vTL5Adx5/jHqQO0tvM0sQ/aE3EH10c09s/oVhvhGNc/tKaL8E+IGZNb5rneXuvwcwsynA90OCOETUe/obomRw+CuF3P1ti7666HACD+3vhZ7XG8P6jgPOBt5vstx+iy4MuM/M+hH9zvwbH11I9YGZ/TrsW+PHM/8QEtOhsNwvwjYSsXfJXycaX9U7zG9c5mthuw8Rjc/rDzwQ3qk3uHsp0cdlT4W2POBxd3+O5u42s2HhuL4IvA58poXlAH4I/NTMXgeeA/aFOJaY2XnAqrC9vcA17v6Wmf1X6En6BXAX8IyZrQOqic5Fi9z9oJlNBarMbA9R4v2Rmc0i+ufxt2HR64H/Z2ZvhP1cAXytjfXWm9m1wOJwPncAf9XSouHxauBBM/sO0fl7Ihyj1rwBHAzHaJ673xvb9vtm9k9E/4QBvtf4saKZPQI85O7VHNkDt59ovF9LxYlIR1AuJq25uLGT4q+IivzWKBdnXy7+11DoO9Gbkvj5Gw+84+6b24gh55n+NwmAmRUBX3b3bx7Da5YTDf4/6u8hlswys/9L9FHojzIdi4g0p1zcPSgXZz8NsRAA3L3mWBKydD2hV+FTRGMrRSQLKRfnPuXirkE9yCIiIiIiMepBFhERERGJUYEsIiIiIhKTFd9icfrpp3thYWGmwxAR6TRr1qx5z93zMx1HnHKxiHQnbeXhrCiQCwsLqa7Wxbci0n2Y2W8zHUNTysUi0p20lYc1xEJEREREJEYFsoiIiIhIjApkEREREZGYdscgm9lc4Aqie5sXxdq/AVwHHAR+5u43hfbZwMzQfr27N7sH+NE4cOAAdXV1fPDBB+0vLEfo1asXBQUF9OjRo/2FRaRLUC7uWpSHRbq2o7lIbx5wP/BYY0O4t3s5MNrdPwz3oMfMRgBTgE8AA4GlZnaOux881sDq6uro27cvhYWFhPuuy1Fwd3bu3EldXR1Dhw7NdDgikj7zUC7uEpSHRbq+dodYuPsK4P0mzX8HzHH3D8MyO0J7OfCEu3/o7m8Dm4AxyQT2wQcf0L9/fyXkY2Rm9O/fX709Ih1p+3YYPx5OPjl63L69wzepXNx1KA+LdJIOzMXJjkE+B7jQzF41s1+a2fmhfRDwTmy5utCWFCXk5Oi4iXSwigpYtQr27IkeKyoyFYlycZbSMRPpBB2Yi5P9HuQ84DRgLHA+sNDMzjqWFZjZtcC1AIMHD04yDBGRDEgkoKEhmm5oiJ5nhnKxiHRfHZiLk+1BrgMWe2Q1cAg4HdgKnBlbriC0NePuD7t7qbuX5udn1c2kRETaVlwMeaF/IS8vep4ZysUi0n11YC5OtkB+GpgAYGbnAD2B94AqYIqZnWBmQ4FhwOo0xCkikj0qK6GsDPr2jR4rKzMVydMoF4tId9WBubjdAtnMFgCrgOFmVmdmM4G5wFlmVgM8AcwIPRjrgYXAm8BzwHXJXDWdlA4YqL1v3z4+//nPM3r0aIqKivjJT35CYWEh7733HgDV1dVcdNFFANxxxx3MmDGDCy+8kCFDhrB48WJuuukmRo4cycSJEzlw4EDK8YhIlhgwAFasgD/+MXocMKDDN9ldc7HysIi0qgNz8dF8i8VUdz/D3Xu4e4G7P+ru+939GncvcvdPuvuy2PJ3uvvH3X24u/8ibZG2pwMGaj/33HMMHDiQ119/nZqaGiZOnNjm8m+99RbLli2jqqqKa665hgkTJrBu3Tp69+7Nz372s5TjEZHuq7vmYuVhEcmE3LmTXgcM1B45ciQvvPACN998MytXrqRfv35tLn/ZZZfRo0cPRo4cycGDBw8n8pEjR7Jly5aU4xERyXppzsXKwyKSCblTIHfAQO1zzjmHtWvXMnLkSL7zne/wve99j7y8PA4dOgTQ7DsuTzjhBACOO+44evTocfhrfo477jgaGv9hiIjksjTnYuVhEcmE3CmQO2Cg9rZt2zjxxBO55pprmDVrFmvXrqWwsJA1a9YAsGjRopS3ISKSU9Kci5WHRSQTkv0e5OzTOFA7jdatW8esWbMO90Q8+OCD/PnPf2bmzJncdttthy8MERGRIM25WHlYRDLB3D3TMVBaWurV1dVHtG3YsIHzzjsvQxF1fTp+ItnNzNa4e2mm44hTLk4vHTuR7NZWHs6dIRYiIiIiImmgAllEREREJEYFsoiIiIhIjApkEREREZEYFcgiIiIiIjEqkEVEREREYlQgt2LLli0UFRU1a1++fDlXXHHFMa9v165dPPDAAynH9fbbb/OpT32Ks88+my9+8Yvs378/5XWKiGQr5WIRyQQVyJ0kmaTs7odvp9ro5ptv5sYbb2TTpk2ceuqpPProo+kMU0QkpykXi8jRyJkCefu+fYxfsICT77uP8QsWsH3fvrSte/PmzZSUlPDaa68d0b569WrKysooKSnhggsuYOPGjQCsX7+eMWPGUFxczKhRo6itreWWW27hrbfeori4mFmzZgFw9913c/755zNq1Chuv/12IOotGT58ONOnT6eoqIh33nnn8PbcnWXLljF58mQAZsyYwdNPP522/RQRSZVysYjkgpy51XRFVRWrtm2jwZ1V27ZRUVXFiqlTU17vxo0bmTJlCvPmzWP06NEsX7788Lxzzz2XlStXkpeXx9KlS7n11ltZtGgRDz30EDfccANXX301+/fv5+DBg8yZM4eamhoSiQQAS5Ysoba2ltWrV+PuTJo0iRUrVjB48GBqa2uZP38+Y8eOPSKWnTt3csopp5CXF522goICtm7dmvI+ioiki3KxiOSCdgtkM5sLXAHscPeiJvO+BXwfyHf398zMgB8AlwN/Ar7k7mvTH3Zzifp6GsJtsxvcSdTXp7zO+vp6ysvLWbx4MSNGjGg2f/fu3cyYMYPa2lrMjAMHDgBQVlbGnXfeSV1dHVdddRXDhg1r9tolS5awZMkSSkpKANi7dy+1tbUMHjyYIUOGNEvIItK9KRcrF4tI5zmaIRbzgIlNG83sTOAS4Hex5suAYeHnWuDB1EM8OsX5+eSZAZBnRnF+fsrr7NevH4MHD+bll19ucf5tt93GhAkTqKmp4ZlnnuGDDz4AYNq0aVRVVdG7d28uv/xyli1b1uy17s7s2bNJJBIkEgk2bdrEzJkzAejTp0+L2+vfvz+7du2ioaEBgLq6OgYNGpTyfopIlzAP5eIW5ysXi0i6tVsgu/sK4P0WZt0L3AR4rK0ceMwjrwCnmNkZaYm0HZWTJlE2cCB9e/akbOBAKidNSnmdPXv25KmnnuKxxx7j8ccfbzZ/9+7dh5PivHnzDrdv3ryZs846i+uvv57y8nLeeOMN+vbty549ew4vc+mllzJ37lz27t0LwNatW9mxY0eb8ZgZEyZM4MknnwRg/vz5lJeXp7qbItIFKBcrF4tI50lqDLKZlQNb3f11Cz0FwSDgndjzutD2bgvruJaoZ4PBgwcnE8YRBvTpk5Zxbk316dOHZ599lr/6q7/ipJNO4uSTTz4876abbmLGjBn88z//M5///OcPty9cuJD/+I//oEePHvzFX/wFt956K6eddhrjxo2jqKiIyy67jLvvvpsNGzZQVlYGwEknncR//ud/cvzxx7cZz1133cWUKVP4zne+Q0lJyeGeDhHpfpSLI8rFIpJu5u7tL2RWCDzr7kVmdiLwEnCJu+82sy1AaRj39iwwx91fDq97EbjZ3avbWn9paalXVx+5yIYNGzjvvPOS2SdBx08k25nZGncvPcbXFKJc3GXo2Ilkt7bycDI9yB8HhgKNPRYFwFozGwNsBc6MLVsQ2kREJL2Ui0VEOsgxfw+yu69z94+5e6G7FxJ9dPdJd/89UAVMt8hYYLe7N/tIT0REUqNcLCLScdotkM1sAbAKGG5mdWbW1kCrnwObgU3AD4GvpyVKEZFuLpO5+GiG4smRdMxEurZ2h1i4e5tXW4Sei8ZpB65LPSwREYnLVC7u1asXO3fupH///jS5EFBa4e7s3LmTXr16ZToUEUlSztxJT0RE0q+goIC6ujrq03DDj+6kV69eFBQUZDoMEUmSCmQREWlVjx49GDp0aKbDEBHpVMd8kV53sWXLFoqKipq1L1++nCuuuOKY17dr1y4eeOCBlOO6//77OfvsszEz3nvvvZTXJyIiIiJHUoHcSZIpkN2dQ4cOHdE2btw4li5dypAhQ9IZnoiIiIgEuVMgbwfGAyeHx+3pW/XmzZspKSnhtddeO6J99erVlJWVUVJSwgUXXMDGjRsBWL9+PWPGjKG4uJhRo0ZRW1vLLbfcwltvvUVxcTGzZs0C4O677+b8889n1KhR3H777UDUcz18+HCmT59OUVER77zzzhHbLCkpobCwMH07JyIiIiJHyJ0xyBVEX4DUEB4rgBWpr3bjxo1MmTKFefPmMXr0aJYvX3543rnnnsvKlSvJy8tj6dKl3HrrrSxatIiHHnqIG264gauvvpr9+/dz8OBB5syZQ01NDYlEAoAlS5ZQW1vL6tWrcXcmTZrEihUrGDx4MLW1tcyfP5+xY8emvgMiIiIickxyp0BOEBXHhMdE6qusr6+nvLycxYsXM2LEiGbzd+/ezYwZM6itrcXMOHDgAABlZWXceeed1NXVcdVVVzFs2LBmr12yZAlLliyhpKQEgL1791JbW8vgwYMZMmSIimMRERGRDMmdIRbFfFTu54XnKerXrx+DBw/m5ZdfbnH+bbfdxoQJE6ipqeGZZ57hgw8+AGDatGlUVVXRu3dvLr/8cpYtW9bste7O7NmzSSQSJBIJNm3axMyZ0ff+9+nTJ/XgRURERCQpuVMgVwJlQN/wWJn6Knv27MlTTz3FY489xuOPP95s/u7duxk0aBAA8+bNO9y+efNmzjrrLK6//nrKy8t544036Nu3L3v27Dm8zKWXXsrcuXPZu3cvAFu3bmXHjh2pBy0iIiIiKcmdAnkA0ZjjP4bHAelZbZ8+fXj22We59957qaqqOmLeTTfdxOzZsykpKaGhoeFw+8KFCykqKqK4uJiamhqmT59O//79GTduHEVFRcyaNYtLLrmEadOmUVZWxsiRI5k8efIRBXRr7rvvvsNf3D9q1Ci+8pWvpGdHRURERAQAy4b7xZeWlnp1dfURbRs2bOC8887LUERdn46fSHYzszXuXprpOOJaysUiIrmqrTycOz3IIiIiIiJpoAJZRERERCQmqwvkbBj+0RXpuImIiIgkr90C2czmmtkOM6uJtd1tZr8xszfM7CkzOyU2b7aZbTKzjWZ2abKB9erVi507d6rYO0buzs6dO+nVq1emQxGRNMpULhYR6Y6O5kYh84D7gcdibS8As929wczuAmYDN5vZCGAK8AlgILDUzM5x94PHGljjNzXU19cf60u7vV69elFQUJDpMEQ6xvbtUFEBiQQUF0NlJQxI09fWZLd5ZCAXi4i0KMdzcbsFsruvMLPCJm1LYk9fASaH6XLgCXf/EHjbzDYBY4hu/nxMevTowdChQ4/1ZSKS6yoqYNUqaGiIHisqYEUa7iuf5TKVi0VEWpTjuTgdY5C/DPwiTA8C3onNqwttzZjZtWZWbWbV6iUWkaOWSEQJGaLHRCKT0WQT5WIR6Tw5notTKpDN7H8BDcCPj/W17v6wu5e6e2l+fn4qYYhId1JcDHnhw6+8vOh5N6dcLCKdLsdzcdIFspl9CbgCuNo/upJuK3BmbLGC0CYikh6VlVBWBn37Ro+VabivfBemXCwiGZHjufhoLtJrxswmAjcBn3H3P8VmVQGPm9k9RBeGDANWpxyliEijAQNyapxbKpSLRSRjcjwXt1sgm9kC4CLgdDOrA24nulL6BOAFMwN4xd2/5u7rzWwh8CbRx33X6appEZHUKReLiHQey4bvGS4tLfXq6upMhyEi0mnMbI27l2Y6jjjlYhHpTtrKw1l9Jz0RERERkc6mAllEREREJEYFsoiIiIhIjApkEREREZEYFcgiIiIiIjEqkEVEREREYlQgi4iIiIjEqEAWEREREYlRgSwiIiIiEqMCWUREREQkRgWyiIiIiEiMCmQRERERkRgVyCIiIiIiMSqQRURERERi2i2QzWyume0ws5pY22lm9oKZ1YbHU0O7mdl9ZrbJzN4ws092ZPAiIt2FcrGISOc5mh7kecDEJm23AC+6+zDgxfAc4DJgWPi5FngwPWGKiHR781AuFhHpFO0WyO6+Ani/SXM5MD9MzweujLU/5pFXgFPM7Iw0xSoi0m0pF4uIdJ5kxyAPcPd3w/TvgQFhehDwTmy5utDWjJlda2bVZlZdX1+fZBgiIt2acrGISAdI+SI9d3fAk3jdw+5e6u6l+fn5qYYhItKtKReLiKRPsgXy9saP68LjjtC+FTgztlxBaBMRkfRTLhYR6QDJFshVwIwwPQP4aax9eriCeiywO/bxn4iIpJdysYhIB8hrbwEzWwBcBJxuZnXA7cAcYKGZzQR+C3whLP5z4HJgE/An4G87IGYRkW5HuVhEpPO0WyC7+9RWZl3cwrIOXJdqUCIiciTlYhGRzqM76YmIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJEYFsoiIiIhIjApkEREREZEYFcgiIiIiIjEqkEVEREREYlQgi4iIiIjEqEAWEREREYlRgSwiIiIiEqMCWUREREQkRgWyiIiIiEiMCmQRERERkZiUCmQzu9HM1ptZjZktMLNeZjbUzF41s01m9hMz65muYEVEpDnlYhGR9Eq6QDazQcD1QKm7FwHHA1OAu4B73f1s4A/AzHQEKiIizSkXi4ikX6pDLPKA3maWB5wIvAt8FngyzJ8PXJniNkREpG3KxSIiaZR0gezuW4HvA78jSsa7gTXALndvCIvVAYNaer2ZXWtm1WZWXV9fn2wYIl3W9n37GL9gASffdx/jFyxg+759mQ5JuiDlYpHUKBdLS1IZYnEqUA4MBQYCfYCJR/t6d3/Y3UvdvTQ/Pz/ZMES6rIqqKlZt28ae/ftZtW0bFVVVmQ5JuiDlYpHUKBdLS1IZYvE54G13r3f3A8BiYBxwSviYD6AA2JpijCI5KVFfT4M7AA3uJNR7J8lRLhZJgXKxtCSVAvl3wFgzO9HMDLgYeBN4CZgclpkB/DS1EEVyU3F+PnlmAOSZUazeO0mOcrFICpSLpSWpjEF+legCkLXAurCuh4GbgW+a2SagP/BoGuIUyTmVkyZRNnAgfXv2pGzgQConTcp0SNIFKReLpEa5WFpiHj5WyKTS0lKvrq7OdBgiIp3GzNa4e2mm44hTLhaR7qStPKw76YmIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJCav/UVEJNO279tHRVUVifp6ivPzqZw0iQF9+mQ6LBGRbkW5uPtQD7JIF6A7PYmIZJ5ycfehAlmkC9CdnkREMk+5uPtQgSzSBehOTyIimadc3H2oQBbpAnSnJxGRzFMu7j50kZ50S13tQosBffqwYurUTIchIpJWysWSrdSDLN2SLrQQEck85WLJViqQpVvShRYiIpmnXCzZSgWydEu60EJEJPOUiyVbqUCWbkkXWoiIZJ5ysWSrlC7SM7NTgEeAIsCBLwMbgZ8AhcAW4Avu/odUtiOSbrrQQnKJcrF0VcrFkq1S7UH+AfCcu58LjAY2ALcAL7r7MODF8FxERDqOcrGISBolXSCbWT9gPPAogLvvd/ddQDkwPyw2H7gytRBFRKQ1ysUiIumXSg/yUKAe+JGZ/drMHjGzPsAAd383LPN7YEBLLzaza82s2syq63XVqohIspSLRUTSLJUCOQ/4JPCgu5cA+2jyEZ67O9F4uGbc/WF3L3X30nxdtSoikizlYhGRNEulQK4D6tz91fD8SaIkvd3MzgAIjztSC1FERNqgXCwikmZJF8ju/nvgHTMbHpouBt4EqoAZoW0G8NOUIhQRkVYpF4uIpF9KX/MGfAP4sZn1BDYDf0tUdC80s5nAb4EvpLgNERFpm3KxiEgapVQgu3sCKG1h1sWprFdERI6ecrGISHrpTnoiIiIiIjEqkEVEREREYlQgi4iIiIjEqEAWEREREYlJ9VssRCRm+759VFRVkaivpzg/n8pJkxjQp0+mwxIR6VaUiyVV6kEWSaOKqipWbdvGnv37WbVtGxVVVZkOSUSk21EullSpQBZJo0R9PQ0e3dG3wZ1EfX2GIxIR6X6UiyVVKpBF0qg4P588MwDyzCjOz89wRCIi3Y9ysaRKBbJIGlVOmkTZwIH07dmTsoEDqZw0KdMhiYh0O8rFkipdpCeSRgP69GHF1KmZDkNEpFtTLpZUqUCWbklXOIuIZJ5ysWQrDbGQbklXOIuIZJ5ysWQrFcjSLekKZxGRzFMulmylAlm6JV3hLCKSecrFkq1SLpDN7Hgz+7WZPRueDzWzV81sk5n9xMx6ph6mSHrpCmfJNcrF0hUpF0u2SsdFejcAG4CTw/O7gHvd/QkzewiYCTyYhu2IpI2ucJYcpFwsXY5ysWSrlHqQzawA+DzwSHhuwGeBJ8Mi84ErU9mGiIi0TblYRCS9Uh1i8W/ATcCh8Lw/sMvdG8LzOmBQSy80s2vNrNrMqus1KF9EJBX/hnKxiEjaJF0gm9kVwA53X5PM6939YXcvdffSfA3KFxFJinKxiEj6pTIGeRwwycwuB3oRjXv7AXCKmeWFnosCYGvqYYqISCuUi0VE0izpHmR3n+3uBe5eCEwBlrn71cBLwOSw2AzgpylHKSIiLVIuFhFJv474HuSbgW+a2SaicXCPdsA2RJrZvm8f4xcs4OT77mP8ggVs37cv0yGJZJJysWSEcrHkgrQUyO6+3N2vCNOb3X2Mu5/t7hXu/mE6tiHSHt2yVLo75WLJBsrFkgt0Jz3JGbplqYhI5ikXSy5QgSw5Q7csFRHJPOViyQUqkCVn6JalIiKZp1wsuSAdt5oWyQq6ZamISOYpF0suUA+yiIiIiEiMCmQRERERkRgVyCIiIiIiMSqQRURERERiVCCLiIiIiMSoQBYRERERiVGBLCIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRmKQLZDM708xeMrM3zWy9md0Q2k8zsxfMrDY8npq+cEVEJE65WEQk/VLpQW4AvuXuI4CxwHVmNgK4BXjR3YcBL4bnIiLSMZSLRUTSLOkC2d3fdfe1YXoPsAEYBJQD88Ni84ErU4xR2rIdGA+cHB63ZzYcEelcysXZYfu+fYxfsICT77uP8QsWsH3fvkyHJCIpSMsYZDMrBEqAV4EB7v5umPV7YEA6tiGtqABWAXvCY0VmwxGRzFEuzpyKqipWbdvGnv37WbVtGxVVVZkOSURSkHKBbGYnAYuAf3D3P8bnubsD3srrrjWzajOrrq+vTzWM7itB9AEr4TGRsUhEJIOUizMrUV9Pg0eHuMGdhI6lSJeWUoFsZj2IEvKP3X1xaN5uZmeE+WcAO1p6rbs/7O6l7l6an5+fShjdWzGQF6bzwnMR6VaUizOvOD+fPDMA8swo1rEU6dJS+RYLAx4FNrj7PbFZVcCMMD0D+Gny4Um7KoEyoG94rMxsOCLSuZSLs0PlpEmUDRxI3549KRs4kMpJkzIdkoikIK/9RVo1DvgbYJ2ZJULbrcAcYKGZzQR+C3whpQilbQOAFZkOQkQySLk4Cwzo04cVU6dmOgwRSZOkC2R3fxmwVmZfnOx6RUTk6CkXi4ikn+6kJyIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRGBXIIiIiIiIxKpBFRERERGJUIDe1HRgPnBwet2c2HBGR7mb7vn2MX7CAk++7j/ELFrB9375MhyQi3YwK5KYqgFXAnvBYkdlwRES6m4qqKlZt28ae/ftZtW0bFVVVmQ5JRLqZrlsgd1RPbwJoCNMN4bmIiDTTUT29ifp6GtwBaHAnUV+flvWKiBytrlsgd1RPbzEf3V8wLzwXEZFmOqqntzg/nzyLbg6YZ0Zxfn5a1isicrS6boGcoGN6eiuBMqBveKxM03pFRHJMR/X0Vk6aRNnAgfTt2ZOygQOpnDQpLesVETlaee0vkqWKiXqOG0hvT+8AYEWa1iUiksOK8/NZtW0bDe5p7ekd0KcPK6ZOTcu6RESS0XV7kNXTKyKSUerpFZFc1XV7kNXTKyKSUerpFZFc1WE9yGY20cw2mtkmM7ulo7YjIiItUx4WEUlOhxTIZnY88P+Ay4ARwFQzG9ER2xIRkeaUh0VEktdRPchjgE3uvtnd9wNPAOUdtC0REWlOeVhEJEkdVSAPAt6JPa8LbSIi0jmUh0VEkpSxi/TM7Frg2vB0r5ltjM0+HXiv86PqFLm8b5Db+5fL+wa5vX/ZuG9DMh0AtJmLs/GYpVMu718u7xvk9v7l8r5B9u1fq3m4owrkrcCZsecFoe0wd38YeLilF5tZtbuXdlBsGZXL+wa5vX+5vG+Q2/uXy/vWhnbzMLSei3P9mOXy/uXyvkFu718u7xt0rf3rqCEWrwHDzGyomfUEpgDpuQepiIgcDeVhEZEkdUgPsrs3mNnfA88DxwNz3X19R2xLRESaUx4WEUleh41BdvefAz9P8uUtDr3IEbm8b5Db+5fL+wa5vX+5vG+tUh5uUy7vXy7vG+T2/uXyvkEX2j9z90zHICIiIiKSNTrsTnoiIiIiIl2RCmQRERERkZisKpDNbIuZrTOzhJlVZzqeVJnZXDPbYWY1sbbTzOwFM6sNj6dmMsZktbJvd5jZ1nD+EmZ2eSZjTIWZnWlmL5nZm2a23sxuCO1d/vy1sW85cf7MrJeZrTaz18P+fTe0DzWzV81sk5n9JHyzg7Qgl3JxLudhyO1cnMt5GHI7F+dCHs6qMchmtgUodfds+hLppJnZeGAv8Ji7F4W2fwXed/c5ZnYLcKq735zJOJPRyr7dAex19+9nMrZ0MLMzgDPcfa2Z9QXWAFcCX6KLn7829u0L5MD5MzMD+rj7XjPrAbwM3AB8E1js7k+Y2UPA6+7+YCZjzVa5lItzOQ9DbufiXM7DkNu5OBfycFb1IOcad18BvN+kuRyYH6bnE/0xdDmt7FvOcPd33X1tmN4DbCC6TW+XP39t7FtO8Mje8LRH+HHgs8CTob1Lnjs5drmchyG3c3Eu52HI7VycC3k42wpkB5aY2RqLbn+aiwa4+7th+vfAgEwG0wH+3szeCB/7dcmPvZoys0KgBHiVHDt/TfYNcuT8mdnxZpYAdgAvAG8Bu9y9ISxSR478I+oguZ6Lc+rvuBU58bfcKJfzMORmLu7qeTjbCuRPu/sngcuA68JHRznLo/Et2TPGJXUPAh8HioF3gf+T0WjSwMxOAhYB/+Duf4zP6+rnr4V9y5nz5+4H3b2Y6PbKY4BzMxtRl9NtcnFX/ztuRc78LUNu52HI3Vzc1fNwVhXI7r41PO4AniI6oLlmexh31Dj+aEeG40kbd98e/iAOAT+ki5+/MG5qEfBjd18cmnPi/LW0b7l2/gDcfRfwElAGnGJmjTdHKgC2ZiqubNcNcnFO/B23Jpf+lnM5D0P3yMVdNQ9nTYFsZn3CIHXMrA9wCVDT9qu6pCpgRpieAfw0g7GkVWPCCv6aLnz+wgUGjwIb3P2e2Kwuf/5a27dcOX9mlm9mp4Tp3sBfEY3tewmYHBbrkueuM3STXNzl/47bkkN/yzmbhyG3c3Eu5OGs+RYLMzuLqKcColtgP+7ud2YwpJSZ2QLgIuB0YDtwO/A0sBAYDPwW+IK7d7kLLFrZt4uIPhJyYAvw1dg4sS7FzD4NrATWAYdC861E48O69PlrY9+mkgPnz8xGEV38cTxRJ8BCd/9eyDFPAKcBvwaucfcPMxdpdsq1XJzLeRhyOxfnch6G3M7FuZCHs6ZAFhERERHJBlkzxEJEREREJBuoQBYRERERiVGBLCIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRGBXIIiIiIiIxKpBFRERERGJUIIuIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJEYFcicws4NmljCz9Wb2upl9y8yOC/MuMrPdYf4bZrbUzD4W5g03s+Vh3gYzezi2zjFmtsLMNprZr83sETM7MTb/aTN7pUkcd5jZnxrXH9r2dvwRaM7M/tLM1pnZJjO7z8yshWWuDsdknZn9ysxGx+bdGI5njZktMLNeR7ndSWZ2S5i+w8y+nWT8hWY2LYnX1CSzvSbryTezV8N5v9DMfm5mp7Sx/NfMbHqY/p6ZfS7J7Rab2eVtzJ8dzudGM7u0lWXmmdnb4Xc6YWbFoX1WrK0m/M2clkycIkdDebm5o8zL5eGYJMys2sw+fQzrf8TMRoTpLWZ2epJxXtm4nmN4TdL5vsl6KsJ5f8nMSs3svnaWP5yfzexXKWz3S2Y2sJV5p5nZC2ZWGx5PbWW5xt/5hJlVxdpXxtq3mdnTycaZU9xdPx38A+yNTX8MWAp8Nzy/CHg2Nv9fYvOeB8pj80aGxwHAb4Gy2LzJwIAwfQrwDrABOCu2zB3A74C7Woqtk4/JamAsYMAvgMtaWOYC4NQwfRnwapgeBLwN9A7PFwJfSiKGO4BvJxn/EeftKF9TCNSk4dhNAR7JwDn7EnB/K/NGAK8DJwBDgbeA41tYbh4wuZ3t/H/Ass7eP/10rx/l5RaPydHk5ZMAC9OjgN8kua0twOlJvrbdPNLCa5LO903W8xzw6Qycm+VAaSvz/hW4JUzfEv9darJcu79XwCJgemfvXzb+qAe5k7n7DuBa4O+bvjsPz/sCfwhNZwB1sdeuC5PXAfPdfVVs3pPuvj08vQp4BniCqJiKmwt88Vh650Kvwi/NbI2ZPW9mZ4T25Wb2g1iv35jQ/pnYu9Ffm1nfJus7AzjZ3V/x6C/yMeDKptt191+5e+OxeAUoiM3OA3qbWR5wIrCthbivN7M3Q2/HE6HtS2Z2fwvLLjez0jB9upltCdPHm9ndZvZaWM9Xw0vmABeGfbzRot7hlWa2Nvxc0M4xPSscm/Mt6pl9Jaz/qcZ3/2b2cTN7Lhz3lWZ2rkU9rv8KlIdt9473xJjZ9LCe183sP0Lb4Z4Ti3pwJ4fpts7rXWa22sz+26Je6p7A94h+dxJm9sUmu1QOPOHuH7r728AmYExbx6ANU4EFSb5W5JgpLx9TXt4b5gP0AbzpMmbWx8x+FvJQTWO+iOfZ2LJHfLJmZt82szvCdEs58AJgEnB32JePm9n/DDn6dTNbZLFe+1aO3f80s1+E/PnNEGONmf1DbJlrQg5MmNm/h/8F/wh8Gng0/F+4yMyeDcufZGY/sqgH/g0z+x+hPZ6f98bWPyv2f+W7sWOxwcx+aNEnG0tCjJOBUuDHjXm/yS6VA/PD9HxaOG9Hw8xOBj4LPJ3M63NOpiv07vBDC+/agF1EPQ4XAbuBBFHvwm+IkhTA34Z5vwBuBE4J7YuJ9WC0sO4XgAuBc4B1sfY7gG8D/8hHvSFtvqMEegC/AvLD8y8Cc8P0cuCHYXo8oXeU6J/AuDB9EpAXphPhsRRYGtvGhbTTGxvifiT2/AZgL1AP/LiV12wDTgjTjcfuS4ReUGI9CsTenQOnA1vC9LXAd8L0CUA1UQ/pRRzZw3Qi0CtMDwOqW4inEKgBhgO/BkaH9jeAz4Tp7wH/FqZfBIaF6U8RelVp0pNL6IkBPgH8N6FXBjithf2cR9Sr1d55/T9h+vLGc9V0u0327X7gmtjzR2mhhydsf2PY53sbz0+T4/h+Y+z60U9H/aC8nHReBv46HJP3ifWYx+b/j8YYwvN+sdga8+wWorxVSOyTtXAs7gjTreXAefH8AvSPTf8z8I0WYmo8zn8P/JQon/8lsI6o0D8JWA+UAOeF49UjvPYBQq9qk324qPEYAXcRcnd4fmp8P+PnFbgEeJiop/444NlwrgqBBqA4LLeQkFdpuwd5V2za4s+bLNdA9D/sFeDKFuZPB57M9N9mtvzkIdlgpbtfAWBmNxP1EH7N3X9kZs8DE4neIX7VYuNwW2JmA4gKtJfd3c3sgJkVuXt87Ot9QMLMvn8UsQ0HioAXQsfK8cC7sfkLANx9hZmdbNFYq/8C7jGzHwOL3b0uLFN8FNtraZ8mADOJ3rljUQ9rOVGhuguoNLNr3P0/m7z0DaJ33E+T/DviS4BRjb2uQD+i47u/yXI9gPst6uE9SPRPsCX5RMn5Knd/08z6Ef2D/WWYPz/sz0lEQ0wqYx1aJ7QT62eBSnd/D8Dd329j2fbO6+LwuIYoaafLbOD3QE+ifxA3E70paPT/Af/VTuwinUF5uRXu/hTwlJmNB/4JaHpdwzrg/5jZXUQF5Mpj3cYx5sAiM/tnomEsJxENg2nJdKI3PFe6+wGLxk8/5e77wjYXE70xOERUPL8Wtt0b2NFOyJ8j9smAf/TpZ0suCT+/Ds9PIvr9+B3wtrsnQvsx59/w+9WsVz8Y4u5bzewsYJmZrXP3t2LzpwKPHMv2cpmGWGRA+OU8SMt/cFVE7yQBcPdt7j7X3cuJ3v0VEb3L/ctWVv8F4FTgbYuGCRQS/dIf5u67gMeJPhJsN1xgvbsXh5+R7n5JfHVNlnd3nwN8hSip/JeZndtkma0cOVyiILQ137jZKKI/2HJ33xmaP0eUROrd/QBRMdfSkIbPA/8P+CRRomvrDWEDH/09xC/4M6LeiMb9H+ruS1p4/Y3AdmA0UU9Mz1a2s5soCbZ3YctxRL0AxbGf89p5zbFo77x+GB4PwlG9kd4KnBl73uI5dfd3PfIh8COaD8OYgoZXSAYoLx99Xo6tdAVwljW52M7d/5so764D/jkMTWhNPPfCR/n3WHLgPODv3X0k8F2OzOFx64iOfUEr8xsZ0XCZxu0Od/c72nnNsTDgX2LrP9vdHw3zPowtd7T5d7t9NMTmDFop5t19a3jcTNQjXXI4oOgcjgF+doz7krNUIHcyM8sHHiL6qLqld3mfJrrACTObaGY9wvRfAP2JEtb9wAwz+1RsvVeFXoqpwER3L3T3QqKE3XS8G8A9wFeJ/fGZ2YtmNqjJchuBfDMrC8v0MLNPxOY3ji37NLDb3Xeb2cfdfZ273wW8BhyRiN39XeCPZjbWorfn04l6VZseq8FExe/fhITb6HfAWDM7Mbz+YqILX+KvPQ44091fIuql7Ef0Lr01W/jon9vkWPvzwN/FzsM5ZtYH2EM0LrFRP+Bddz8E/A1Rj05L9hN9PDndzKa5+27gD2Z2YZj/N8Av3f2PRP9MK8J2rb1eKmAZUGFm/cNr2hrP2N55bUnTfY6rAqaY2QlmNpSoN2R104ViSdyIxsnFxx72Az5DC78LIh1JefmY8vLZYT5m9kmiXt2dTZYZCPwpfKp3N1Gx3JrtwMfMrL+ZnQBcEeJpKwc2zUV9gXfDebm6jW39muj4VoUYVwJXhv8lfYhy80qioR2T7aNvLjnNzIa0sV6IhtAcfnNjrXyTRPA88OXQS46ZDbLYt5i0or38OyNMz6Dl83ZqOL6NxfA44M3YIpOJevs/aCeObkNDLDpHbzNLEH0M3wD8B1EibHRhmG9EPYxfCe2XAD8ws8Zf2Fnu/nsAM5sCfD/8UR0CVhCNCRtCNL4IAHd/26KvKzqctEP7e2b2FFHPZ2NBeTbRmLL4cvstGl5wXyhg8oB/I+otAfjAzH4d9u3Loe0fLBoWcSgs94uwjUTs47yvE73r7x3mNy7ztbDdh4jG5PUHHgj5uMHdS939VTN7ElgbjueviT6ujzse+M8QswH3ufsua/6tRY2+Dyw0s2s58h30I0Q9DmvDP4V6osLuDeCgmb0e9uMBYJFFX6f2HLCvtQ25+z4zu4Lo49G9RAntIYsuLNlMNMYRokT/oJl9h+j4PkH0TRGtrXe9md0J/NLMDobj8qWWF233vLbkJeCW8Lv6L+7+kybbXkiUcBuA69z9IERfcwR8xd23EQ15ySc6Jwnga7H1/zWwpPHjTpEOprxMUnn5fxC9wT8A/Bn4YgtvKkYSXUR3CDgA/B2tCEMdvkf0hnprOF6NWsuBTwA/NLPriQq724BXifLzq7ReSOLuL1t00fLPgL8K+9v4Zv4Rd/912OfvAEvCOThAVPz+trX1Eo19/n8WXXB4kKgne3GTZTzEsMTMzgNWhf9Je4FrwutaM4/o/8SficZ9/zk2bw7R/6+ZIcYvhH0oJRoW9BWicdX/Hs7JccAcd48XyFPCeiSw5r/X0h2ZWRHwZXf/5jG8ZjnRxV/VHRaYpJWZPQPcE3rWRSSLKS/nDos+2Vvr7u31REuW0BALAcDda44lCUvXY2Zzib4l4uVMxyIi7VNezg1hOMcqok8qpYtQD7KIiIiISIx6kEVEREREYlQgi4iIiIjEZMW3WJx++uleWFiY6TBERDrNmjVr3nP3/EzHEadcLCLdSVt5OCsK5MLCQqqrdcGtiHQfZtbWV0ZlhHKxiHQnbeVhDbEQEREREYlRgSwiIiIiEqMCWUREREQkJivGILfkwIED1NXV8cEHui34serVqxcFBQX06NEj06GISBenXJwc5WGRrq3dAjncfesKYIe7F8Xav0F0b/KDwM/c/abQPhuYGdqvd/fnkwmsrq6Ovn37UlhYSLhXuRwFd2fnzp3U1dUxdOjQTIcjImmiXNx1KA+LdH1HM8RiHjAx3mBmE4ByYLS7f4Jw+0QzGwFMAT4RXvOAmR2fTGAffPAB/fv3V0I+RmZG//791dsj0pG2b4fx4+Hkk6PH7ds7Y6vzUC7uEpSHRTrJdmA8cHJ4TGMqbrdAdvcVwPtNmv8OmOPuH4ZldoT2cuAJd//Q3d8GNgFjkg1OCTk5Om4iHayiAlatgj17oseKig7fpHJx16JjJtIJKoBVwJ7wmMZUnOxFeucAF5rZq2b2SzM7P7QPAt6JLVcX2poxs2vNrNrMquvr65MMQ0QkAxIJaGiIphsaoueZoVwsIt1XAgipmIbwPE2SLZDzgNOAscAsYKEd49tld3/Y3UvdvTQ/P6tuJiUi0rbiYsgLl3Dk5UXPM0O5WES6r2I+upouLzxPk2QL5DpgsUdWA4eA04GtwJmx5QpCm4hI7qishLIy6Ns3eqyszFQkysUi0n1VAmVA3/CYxlScbIH8NDABwMzOAXoC7wFVwBQzO8HMhgLDgNVpiDMj9u3bx+c//3lGjx5NUVERP/nJTygsLOS9994DoLq6mosuugiAO+64gxkzZnDhhRcyZMgQFi9ezE033cTIkSOZOHEiBw4cyOCeiEhaDRgAK1bAH/8YPQ4YkKlInibHc7HysIi0agCwAvhjeExjKm63QDazBURDn4ebWZ2ZzQTmAmeZWQ3wBDAj9GCsBxYCbwLPAde5+8H0hduGDriq/LnnnmPgwIG8/vrr1NTUMHHixDaXf+utt1i2bBlVVVVcc801TJgwgXXr1tG7d29+9rOfpRyPiHRf3TUXKw+LSCYczbdYTHX3M9y9h7sXuPuj7r7f3a9x9yJ3/6S7L4stf6e7f9zdh7v7Lzo2/JgOuKp85MiRvPDCC9x8882sXLmSfv36tbn8ZZddRo8ePRg5ciQHDx48nMhHjhzJli1bUo5HRLqv7pqLlYdFJBOy9k56x6wDrio/55xzWLt2LT//+c/5zne+w8UXX0xeXh6HDh0CaPYdlyeccAIAxx13HD169Dj8NT/HHXccDY2xiYjksjTnYuVhEcmEZMcgZ58OuKp827ZtnHjiiVxzzTXMmjWLtWvXUlhYyJo1awBYtGhRytsQEckpac7FysMikgm504NcWRl9lJdIRAk5DVeVr1u3jlmzZh3uiXjwwQf585//zMyZM7ntttsOXxgiIiJBmnOx8rCIZIK5e6ZjoLS01Kurq49o27BhA+edd16GIur6dPxEspuZrXH30kzHEadcnF46diLZra08nDtDLERERERE0kAFsoiIiIhIjApkEREREZEYFcgiIiIiIjEqkEVEREREYlQgi4iIiIjEqEBuxZYtWygqKmrWvnz5cq644opjXt+uXbt44IEHUo7r7bff5lOf+hRnn302X/ziF9m/f3/K6xQRyVbKxSKSCSqQO0kySdndD99OtdHNN9/MjTfeyKZNmzj11FN59NFH0xmmiEhOUy4WkaOhAvkobN68mZKSEl577bUj2levXk1ZWRklJSVccMEFbNy4EYD169czZswYiouLGTVqFLW1tdxyyy289dZbFBcXM2vWLADuvvtuzj//fEaNGsXtt98ORL0lw4cPZ/r06RQVFfHOO+8c3p67s2zZMiZPngzAjBkzePrppzvhCIiIZJ5ysYh0lpy51fT2ffuoqKoiUV9PcX4+lZMmMaBPn5TXu3HjRqZMmcK8efMYPXo0y5cvPzzv3HPPZeXKleTl5bF06VJuvfVWFi1axEMPPcQNN9zA1Vdfzf79+zl48CBz5syhpqaGRCIBwJIlS6itrWX16tW4O5MmTWLFihUMHjyY2tpa5s+fz9ixY4+IZefOnZxyyink5UWnraCggK1bt6a8jyIi6aJcLCK5oN0C2czmAlcAO9y9qMm8bwHfB/Ld/T0zM+AHwOXAn4Avufva9IfdXEVVFau2baPBnVXbtlFRVcWKqVNTWmd9fT3l5eUsXryYESNGNJu/e/duZsyYQW1tLWbGgQMHACgrK+POO++krq6Oq666imHDhjV77ZIlS1iyZAklJSUA7N27l9raWgYPHsyQIUOaJWQR6d6Ui5WLRaTzHM0Qi3nAxKaNZnYmcAnwu1jzZcCw8HMt8GDqIR6dRH09De4ANLiTqK9PeZ39+vVj8ODBvPzyyy3Ov+2225gwYQI1NTU888wzfPDBBwBMmzaNqqoqevfuzeWXX86yZcuavdbdmT17NolEgkQiwaZNm5g5cyYAfVrpbenfvz+7du2ioaEBgLq6OgYNGpTyfopIlzAP5eIW5ysXi0i6tVsgu/sK4P0WZt0L3AR4rK0ceMwjrwCnmNkZaYm0HcX5+eSZAZBnRnF+fsrr7NmzJ0899RSPPfYYjz/+eLP5u3fvPpwU582bd7h98+bNnHXWWVx//fWUl5fzxhtv0LdvX/bs2XN4mUsvvZS5c+eyd+9eALZu3cqOHTvajMfMmDBhAk8++SQA8+fPp7y8PNXdFJEuQLlYuVhEOk9SF+mZWTmw1d1fbzJrEPBO7HldaGtpHdeaWbWZVdenoYehctIkygYOpG/PnpQNHEjlpEkprxOiHoRnn32We++9l6qqqiPm3XTTTcyePZuSkpLDPQkACxcupKioiOLiYmpqapg+fTr9+/dn3LhxFBUVMWvWLC655BKmTZtGWVkZI0eOZPLkyUck7dbcdddd3HPPPZx99tns3LnzcE+HiHQ/ysUR5WIRSTdz9/YXMisEnnX3IjM7EXgJuMTdd5vZFqA0jHt7Fpjj7i+H170I3Ozu1W2tv7S01Kurj1xkw4YNnHfeecnsk6DjJ5LtzGyNu5ce42sKUS7uMnTsRLJbW3k4mW+x+DgwFHg9ug6EAmCtmY0BtgJnxpYtCG0iIpJeysUiIh3kmIdYuPs6d/+Yuxe6eyHRR3efdPffA1XAdIuMBXa7+7vpDVlERJSLRUQ6TrsFspktAFYBw82szszaGmj1c2AzsAn4IfD1VII7muEf0pyOm0juyWQuFhHpbtodYuHubX6BZei5aJx24LrUw4JevXqxc+dO+vfvT/j4UI6Cu7Nz50569eqV6VBEJI0ylYtFRLqjrL2TXkFBAXV1daTjquruplevXhQUFGQ6DBEREZEuKWsL5B49ejB06NBMhyEiIiIi3UxS34MsIiLSGbZs2UJRUVGz9uXLl3PFFVcc8/p27drFAw88kHJc999/P2effTZmxnvvvZfy+kQku6hAFhGRbiOZAtndOXTo0BFt48aNY+nSpQwZMiSd4YlIllCBLCIiXcLmzZspKSnhtddeO6J99erVlJWVUVJSwgUXXMDGjRsBWL9+PWPGjKG4uJhRo0ZRW1vLLbfcwltvvUVxcTGzZs0C4O677+b8889n1KhR3H777UDUcz18+HCmT59OUVER77zzzhHbLCkpobCwsON3WkQyImvHIIuISBe0HagAEkAxUAkMSH21GzduZMqUKcybN4/Ro0ezfPnyw/POPfdcVq5cSV5eHkuXLuXWW29l0aJFPPTQQ9xwww1cffXV7N+/n4MHDzJnzhxqampIJBIALFmyhNraWlavXo27M2nSJFasWMHgwYOpra1l/vz5jB07NvUdEJEuRQWyiIikTwXRtzU3hMcKYEVqq6yvr6e8vJzFixczYsSIZvN3797NjBkzqK2txcw4cOAAAGVlZdx5553U1dVx1VVXMWzYsGavXbJkCUuWLKGkpASAvXv3Ultby+DBgxkyZIiKY5FuSkMsREQkfRJExTHhMZH6Kvv168fgwYN5+eWXW5x/2223MWHCBGpqanjmmWf44IMPAJg2bRpVVVX07t2byy+/nGXLljV7rbsze/ZsEokEiUSCTZs2MXNmdA+WPn36pB68iHRJKpBFRCR9ivnos8m88DxFPXv25KmnnuKxxx7j8ccfbzZ/9+7dDBo0CIB58+Ydbt+8eTNnnXUW119/PeXl5bzxxhv07duXPXv2HF7m0ksvZe7cuezduxeArVu3smPHjtSDFpEuTQWyiIikTyVQBvQNj5XpWW2fPn149tlnuffee6mqqjpi3k033cTs2bMpKSmhoaHhcPvChQspKiqiuLiYmpoapk+fTv/+/Rk3bhxFRUXMmjWLSy65hGnTplFWVsbIkSOZPHnyEQV0a+67777DN7QaNWoUX/nKV9KzoyKSFSy6I2lmlZaWenV1dabDEBHpNGa2xt1LMx1HXEu5eMOGDZx33nkZiqhr07ETyW5t5WH1IIuIiIiIxKhAFhERERGJUYEsIiJtyoaheF2NjplI19ZugWxmc81sh5nVxNruNrPfmNkbZvaUmZ0SmzfbzDaZ2UYzu7SD4hYR6VYylYt79erFzp07VfAdA3dn586d9OrVK9OhiEiSjuZGIfOA+4HHYm0vALPdvcHM7gJmAzeb2QhgCvAJYCCw1MzOcfeD6Q1bRLqt7duhogISCSguhspKGJCGW7Vlv3lkIBc3flNDfX19yjvQnfTq1YuCgoJMhyHScTrorpnZot0C2d1XmFlhk7YlsaevAJPDdDnwhLt/CLxtZpuAMUT3UxIRSV1FBaxaBQ0N0WNFBaxI8VZtXUCmcnGPHj0YOnRockGLSO7qgLtmZpN0jEH+MvCLMD0IeCc2ry60NWNm15pZtZlVq2dCRI5aIhEVxxA9JhKZjCabKBeLSOdJkPa7ZmaTlApkM/tfRIflx8f6Wnd/2N1L3b00Pz8/lTBEpDspLoa88OFXXl70vJtTLhaRTldM2u+amU2SLpDN7EvAFcDV/tHVG1uBM2OLFYQ2EZH0qKyEsjLo2zd6rEzTrdq6KOViEcmIDrprZrY4mov0mjGzicBNwGfc/U+xWVXA42Z2D9GFIcOA1SlHKSLSaMCAbjHm+GgoF4tIxgwgp8YcN9VugWxmC4CLgNPNrA64nehK6ROAF8wM4BV3/5q7rzezhcCbRB/3XadvsBARSZ1ysYhI57Fs+G7L0tJSr66uznQYIiKdxszWuHtppuOIUy4Wke6krTysO+mJiIiIiMSoQBYRERERiVGBLCIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRGBXIIiIiIiIxKpBFRERERGJUIIuIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJEYFsoiIiIhIjApkEREREZGYdgtkM5trZjvMrCbWdpqZvWBmteHx1NBuZnafmW0yszfM7JMdGbyISHehXCwi0nmOpgd5HjCxSdstwIvuPgx4MTwHuAwYFn6uBR5MT5giIt3ePJSLRUQ6RbsFsruvAN5v0lwOzA/T84ErY+2PeeQV4BQzOyNNsYqIdFvKxSIinSfZMcgD3P3dMP17YECYHgS8E1uuLrQ1Y2bXmlm1mVXX19cnGYaISLemXCwi0gFSvkjP3R3wJF73sLuXuntpfn5+qmGIiHRrysUiIumTbIG8vfHjuvC4I7RvBc6MLVcQ2kREJP2Ui0VEOkCyBXIVMCNMzwB+GmufHq6gHgvsjn38JyIi6aVcLCLSAfLaW8DMFgAXAaebWR1wOzAHWGhmM4HfAl8Ii/8cuBzYBPwJ+NsOiFlEpNtRLhYR6TztFsjuPrWVWRe3sKwD16UalIiIHEm5WESk8+hOeiIiIiIiMSqQRURERERiVCCLiIiIiMSoQBYRERERiVGBLCIiIiISowJZRERERCRGBbKIiIiISIwKZBERERGRGBXIIiIiIiIxKpBFRERERGJUIIuIiIiIxKhAFhERERGJUYEsIiIiIhKjAllEREREJCalAtnMbjSz9WZWY2YLzKyXmQ01s1fNbJOZ/cTMeqYrWBERaU65WEQkvZIukM1sEHA9UOruRcDxwBTgLuBedz8b+AMwMx2BiohIc8rFIiLpl+oQizygt5nlAScC7wKfBZ4M8+cDV6a4DRERaZtysYhIGiVdILv7VuD7wO+IkvFuYA2wy90bwmJ1wKBUgxQRkZYpF4uIpF8qQyxOBcqBocBAoA8w8Rhef62ZVZtZdX19fbJhiHRZ2/ftY/yCBZx8332MX7CA7fv2ZTok6YKUi0VSo1wsLUlliMXngLfdvd7dDwCLgXHAKeFjPoACYGtLL3b3h9291N1L8/PzUwhDpGuqqKpi1bZt7Nm/n1XbtlFRVZXpkKRrUi4WSYFysbQklQL5d8BYMzvRzAy4GHgTeAmYHJaZAfw0tRBFclOivp4GdwAa3Emo906So1wskgLlYmlJKmOQXyW6AGQtsC6s6+H/v737DZGtvu84/v7iuqTdXOufDIurttomtEgpa1ikS8IlRFqaVEYLWcnShNsi2AdJMVio1idNCwVb2jS9UCy3mnILdq2rts6DQCup5SZwMd1rNjV6W7SixLvXvVOs5LoPsmz99sEey0R3N3HmzD0zv3m/QGbmzJ/z/e1hPn7vmfM7B7gbuCsiXgSuAB6soU6pOPOtFlMRAExFMO/eO/XBLJYGYxZrL5HVv5qatLCwkGtra02XIV1Qm1tbLHU6rHe7zLdarLbbzM7MNF2WLpCIOJWZC03X0css1iQyiyfXQTk8tddCScM3OzPDieXlpsuQpIlmFmsvXmpakiRJ6mGDLEmSJPWwQZYkSZJ6eAyyNAacRCJJzTOLJ4d7kKUx4InsJal5ZvHksEGWxoAnspek5pnFk8MGWRoDnshekppnFk8OG2RpDKy22yzOzXFoeprFuTlW2+2mS5KkiWMWTw4n6UljwBPZS1LzzOLJYYOsieRMZElqnlmsUeUhFppIzkSWpOaZxRpVNsiaSM5ElqTmmcUaVTbImkjORJak5pnFGlUDNcgRcWlEPBoR/xERpyNiMSIuj4gnI+KF6vayuoqV6uJMZJXELNa4Mos1qiKrnzb6enPEceDrmflAREwDPw7cC7yemfdFxD3AZZl590Gfs7CwkGtra33XIUnjJiJOZeZCTZ9lFkvSe3RQDve9BzkifgI4DDwIkJnbmfkGcAtwvHrZceDWftchSTqYWSxJ9RvkEIvrgC7wNxHxrYh4ICJmgNnMPFu95jVgdtAiJUn7MoslqWaDNMhTwIeB+zPzBmALuKf3Bbl7/Maex3BExB0RsRYRa11nrUpSv8xiSarZIA3yq8Crmfl09fhRdkN6MyKuBKhuz+315sw8lpkLmbnQctaqJPXLLJakmvXdIGfma8B3I+Jnq0U3Ac8DHeBItewI8MRAFUqS9mUWS1L9Br3U9G8DD1Wzpl8CfpPdpvuRiLgdeAW4bcB1SJIOZhZLUo0GapAzcx3Y6/QYNw3yuZKkH51ZLEn18kp6kiRJUg8bZEmSJKmHDbIkSZLUwwZZkiRJ6jHoWSwk9djc2mKp02G922W+1WK13WZ2ZqbpsiRpopjFGpR7kKUaLXU6nNzY4Pz2Nic3NljqdJouSZImjlmsQdkgSzVa73bZyd0r+u5ksu6leyXpgjOLNSgbZKlG860WUxEATEUw76V7JemCM4s1KBtkqUar7TaLc3Mcmp5mcW6O1Xa76ZIkaeKYxRqUk/SkGs3OzHBiebnpMiRpopnFGpQNsiaSM5wlqXlmsUaVh1hoIjnDWZKaZxZrVNkgayI5w1mSmmcWa1TZIGsiOcNZkppnFmtU2SBrIjnDWZKaZxZrVA08SS8iLgLWgDOZeXNEXAc8DFwBnAI+m5nbg65HqpMznFUas1jjyCzWqKpjD/KdwOmex38M/HlmfhD4H+D2GtYhSTqYWSxJNRmoQY6Iq4FfBR6oHgfwceDR6iXHgVsHWYck6WBmsSTVa9A9yF8Gfhd4q3p8BfBGZu5Uj18FrtrrjRFxR0SsRcRa11mrkjSIL2MWS1Jt+m6QI+Jm4Fxmnurn/Zl5LDMXMnOh5axVSeqLWSxJ9Rtkkt5HgHZEfBJ4H3AJ8BfApRExVe25uBo4M3iZkqR9mMWSVLO+9yBn5u9l5tWZeS3waeBfMvPXgaeAT1UvOwI8MXCVkqQ9mcWSVL9hnAf5buCuiHiR3ePgHhzCOqR32dza4vDKCpccPcrhlRU2t7aaLklqklmsRpjFKkEtDXJm/mtm3lzdfykzb8zMD2bmUmZ+v451SD/MUqfDyY0Nzm9vc3Jjg6VOp+mSpAvKLNYoMItVAq+kp2Ksd7vsZAKwk8m6M/Il6YIzi1UCG2QVY77VYioCgKkI5p2RL0kXnFmsEtggqxir7TaLc3Mcmp5mcW6O1Xa76ZIkaeKYxSrBIKd5k0bK7MwMJ5aXmy5DkiaaWawSuAdZkiRJ6mGDLEmSJPWwQZYkSZJ62CBLkiRJPWyQJUmSpB42yJIkSVIPG2RJkiSphw2yJEmS1MMGWZIkSephgyxJkiT16LtBjohrIuKpiHg+Ip6LiDur5ZdHxJMR8UJ1e1l95UqSepnFklS/QfYg7wC/k5nXA78IfC4irgfuAb6WmR8CvlY91pBsbm1xeGWFS44e5fDKCptbW02XJOnCMotHgFkslaXvBjkzz2bmM9X988Bp4CrgFuB49bLjwK0D1qgDLHU6nNzY4Pz2Nic3NljqdJouSdIFZBaPBrNYKkstxyBHxLXADcDTwGxmnq2eeg2Y3ec9d0TEWkSsdbvdOsqYSOvdLjuZAOxksu7fUppYZnFzzGKpLAM3yBHxfuAx4AuZ+b3e5zIzgdzrfZl5LDMXMnOh1WoNWsbEmm+1mIoAYCqCef+W0kQyi5tlFktlGahBjoiL2Q3khzLz8WrxZkRcWT1/JXBusBJ1kNV2m8W5OQ5NT7M4N8dqu910SZIuMLO4eWaxVJapft8YEQE8CJzOzC/1PNUBjgD3VbdPDFShDjQ7M8OJ5eWmy5DUELN4NJjFUln6bpCBjwCfBZ6NiPVq2b3shvEjEXE78Apw20AVSpIOYhZLUs36bpAz8xtA7PP0Tf1+riTpR2cWS1L9vJKeJEmS1MMGWZIkSephgyxJkiT1sEGWJEmSetggS5IkST1skCVJkqQeg5wHuUibW1ssdTqsd7vMt1qsttvMzsw0XZYkTQxzWFLTxnYP8ubWFodXVrjk6FEOr6ywubVVy+cudTqc3Njg/PY2Jzc2WOp0avlcSSqNOSypVGPbIA8rQNe7XXYyAdjJZL3breVzJak05rCkUo1tgzysAJ1vtZiK3YtSTUUw32rV8rmSVBpzWFKpxrZBHlaArrbbLM7NcWh6msW5OVbb7Vo+V5JKYw5LKlVk9a//Ji0sLOTa2tp7eo+TOCSNs4g4lZkLTdfR671msTksaZwdlMNjexaL2ZkZTiwvN12GJE0sc1hSqcb2EAtJkiRpGIbWIEfEr0TEf0bEixFxz7DWI0namzksSf0ZSoMcERcBfwl8ArgeWI6I64exLknSu5nDktS/Ye1BvhF4MTNfysxt4GHgliGtS5L0buawJPVpWA3yVcB3ex6/Wi37fxFxR0SsRcRa15PAS1LdfmgOg1ksSXtp7CwWmXkMOAYQEd2IeKXn6Q8A/91IYcNX8tig7PGVPDYoe3yjOLafaroAODCLR/FvVqeSx1fy2KDs8ZU8Nhi98e2bw8NqkM8A1/Q8vrpatqfM/IGzy0fE2qidH7QuJY8Nyh5fyWODssdX8tgO8J5yGH4wi0v/m5U8vpLHBmWPr+SxwXiNb1iHWPwb8KGIuC4ipoFPA50hrUuS9G7msCT1aSh7kDNzJyI+D/wTcBHwlcx8bhjrkiS9mzksSf0b2jHImflV4Kt9vv1YnbWMmJLHBmWPr+SxQdnjK3ls+zKHD1Ty+EoeG5Q9vpLHBmM0vsjMpmuQJEmSRoaXmpYkSZJ62CBLkiRJPUaqQY6IlyPi2YhYj4i1pusZVER8JSLORcR3epZdHhFPRsQL1e1lTdbYr33G9sWIOFNtv/WI+GSTNQ4iIq6JiKci4vmIeC4i7qyWj/32O2BsRWy/iHhfRHwzIr5dje8PquXXRcTTEfFiRPx9dWYH7aGkLC45h6HsLC45h6HsLC4hh0fqGOSIeBlYyMxROol03yLiMPAm8LeZ+fPVsj8BXs/M+yLiHuCyzLy7yTr7sc/Yvgi8mZl/2mRtdYiIK4ErM/OZiDgEnAJuBX6DMd9+B4ztNgrYfhERwExmvhkRFwPfAO4E7gIez8yHI+KvgG9n5v1N1jqqSsriknMYys7iknMYys7iEnJ4pPYglyYzTwCvv2PxLcDx6v5xdr8MY2efsRUjM89m5jPV/fPAaXYv0zv22++AsRUhd71ZPby4+i+BjwOPVsvHctvpvSs5h6HsLC45h6HsLC4hh0etQU7gnyPiVETc0XQxQzKbmWer+68Bs00WMwSfj4h/r372G8ufvd4pIq4FbgCeprDt946xQSHbLyIuioh14BzwJPBfwBuZuVO95FUK+R/RkJSexUV9j/dRxHf5bSXnMJSZxeOew6PWIH80Mz8MfAL4XPXTUbFy9/iW0TnGZXD3Az8DzANngT9rtJoaRMT7gceAL2Tm93qfG/ftt8fYitl+mfm/mTnP7uWVbwR+rtmKxs7EZPG4f4/3Ucx3GcrOYSg3i8c9h0eqQc7MM9XtOeAf2P2DlmazOu7o7eOPzjVcT20yc7P6QrwF/DVjvv2q46YeAx7KzMerxUVsv73GVtr2A8jMN4CngEXg0oh4++JIVwNnmqpr1E1AFhfxPd5PSd/lknMYJiOLxzWHR6ZBjoiZ6iB1ImIG+GXgOwe/ayx1gCPV/SPAEw3WUqu3A6vya4zx9qsmGDwInM7ML/U8Nfbbb7+xlbL9IqIVEZdW938M+CV2j+17CvhU9bKx3HYXwoRk8dh/jw9S0He52ByGsrO4hBwembNYRMRPs7unAnYvgf13mflHDZY0sIhYAT4GfADYBH4f+EfgEeAngVeA2zJz7CZY7DO2j7H7k1ACLwO/1XOc2FiJiI8CXweeBd6qFt/L7vFhY739DhjbMgVsv4j4BXYnf1zE7k6ARzLzD6uMeRi4HPgW8JnM/H5zlY6m0rK45ByGsrO45ByGsrO4hBwemQZZkiRJGgUjc4iFJEmSNApskCVJkqQeNsiSJElSDxtkSZIkqYcNsiRJktTDBlmSJEnqYYMsSZIk9fg/WstuYjmp0BwAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# pravljenje slike sa graficima\n", "fig = plt.figure(figsize=(10,10))\n", "\n", "#oznaka celije na slici u kojoj se vrse naredna crtanja\n", "plt_ind=1\n", "#Primena algoritma dbscan sa razlicitim vrednostima za parametar eps, a parametar za\n", "# broj suseda koje mora da ima instanca u jezgru je 2.\n", "for eps in [0.1, 0.2, 0.25, 0.27, 0.28, 0.3]:\n", "\n", " est=DBSCAN(eps=eps, min_samples=2)\n", " est.fit(x)\n", "\n", " # Originalnom skupu se dodaje jos jedan atribut 'label', koji sadrzi\n", " # podatak kom klasteru pripada koja instanca.\n", " # Oznake klastera su u intervalu [0, n_clusters-1]\n", " # Instance tipa sum imaju oznaku -1.\n", " df['label']= est.labels_\n", "\n", " num_clusters=max(est.labels_)+1\n", "\n", " # Podela slike na 3x2 celije i zadavanje\n", " # celije (plt_ind) u kojoj ce se izvrsiti naredna crtanja.\n", " fig.add_subplot(3,2,plt_ind)\n", "\n", " #obrada svakog klastera\n", " for j in range(-1,num_clusters):\n", "\n", " # izdvajanje instanci klastera koji se obradjuje\n", " cluster= df.loc[df['label'] == j, :]\n", "\n", " # dodela oznake klasteru za legendu\n", " if j==-1:\n", " label='sum'\n", " else:\n", " label = \"klaster {0}\".format(j)\n", "\n", " # crtanje instanci klastera pomocu seme sa rasprsenim elementima\n", " plt.scatter(cluster['height'], cluster['weight'], color=colors[j], s=15, marker='o', label=label)\n", "\n", " # postavljanje legende i naslova (koji sadrzi vrednost parametra eps i silueta koeficijent)\n", " # za svaku celiju\n", " plt.legend()\n", " plt.title('DBSCAN, eps:{0:0.2} silueta koeficijent {1:0.2}'.format(eps, silhouette_score(x, df['label'])), fontsize=10)\n", "\n", " # Prelazak u narednu celiju u kojoj ce se prikazati\n", " # rezultat klasterovanja sa novim parametrima.\n", " plt_ind+=1\n", "\n", "# prikaz slike bez poklapanja celija\n", "plt.tight_layout()\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.6" } }, "nbformat": 4, "nbformat_minor": 2 }