{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true,
"ExecuteTime": {
"end_time": "2023-06-20T09:46:02.486093400Z",
"start_time": "2023-06-20T09:46:02.161449400Z"
}
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"import warnings\n",
"from sklearn.decomposition import PCA\n",
"from sklearn.manifold import TSNE\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.neighbors import KNeighborsClassifier\n",
"from sklearn.metrics import accuracy_score\n",
"from sklearn.tree import DecisionTreeClassifier"
]
},
{
"cell_type": "code",
"execution_count": 3,
"outputs": [
{
"data": {
"text/plain": " City Year Sport Discipline Event \\\n0 Montreal 1976.0 Aquatics Diving 3m springboard \n1 Montreal 1976.0 Aquatics Diving 3m springboard \n2 Montreal 1976.0 Aquatics Diving 3m springboard \n3 Montreal 1976.0 Aquatics Diving 3m springboard \n4 Montreal 1976.0 Aquatics Diving 10m platform \n\n Athlete Gender Country_Code Country Event_gender \\\n0 KÖHLER, Christa Women GDR East Germany W \n1 KOSENKOV, Aleksandr Men URS Soviet Union M \n2 BOGGS, Philip George Men USA United States M \n3 CAGNOTTO, Giorgio Franco Men ITA Italy M \n4 WILSON, Deborah Keplar Women USA United States W \n\n Medal \n0 Silver \n1 Bronze \n2 Gold \n3 Silver \n4 Bronze ",
"text/html": "
",
"image/png": "iVBORw0KGgoAAAANSUhEUgAABi0AAAQxCAYAAABS9M4qAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeZjd4/0//ufMZE8QiSR20VTGEiQiQtWSBG0QS8TeELFE1a4oRYui+iX6kTT42FJLUbFr7FtREhIqFSqJ0tgiqCWbSTLz+8Mv8zGdBInEvCfzeFzXuTj3+z7v8zrnjl7NPOe+XyVVVVVVAQAAAAAAqGOldV0AAAAAAABAIrQAAAAAAAAKQmgBAAAAAAAUgtACAAAAAAAoBKEFAAAAAABQCEILAAAAAACgEIQWAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhSC0AAAAAACABuCjjz7KjjvumDFjxixyzhNPPJF+/fqla9eu6du3bx577LEa16+88spsu+226dq1awYOHJjXX399qdYotAAAAAAAgOXcuHHjsu++++bf//73Iue88cYbOeaYY3Lcccfl+eefzzHHHJPjjz8+06ZNS5Lccccduf7663P11VdnzJgx2WijjXLsscemqqpqqdUptAAAAAAAgOXYHXfckZ///Oc54YQTvnbe5ptvnh122CGNGjXKzjvvnB49euSWW25Jkvz5z3/OAQcckPXWWy9NmzbNSSedlHfeeecrd24sLqEFAAAAAADUMxUVFZkxY0aNR0VFxULn/vCHP8xDDz2UnXfe+SvvOXny5HTu3LnG2Pe///28+uqrC73euHHjdOzYsfr60tBoqd0JAAAAAADqmSbdBtd1CUvk4sHdMnz48BpjRx99dI455phac9u1a/eN7jlz5sw0b968xlizZs0ya9asb3R9aRBaAAAAAABAPTNkyJAccsghNcaaNGnyre7ZvHnzzJkzp8bYnDlz0rJly290fWlwPBQAAAAAANQzTZo0SatWrWo8vm1o0blz50yaNKnG2OTJk7PeeuslSdZbb70a1+fOnZs33nij1pFS34bQAgAAAACABquktKxePpaF3XbbLWPHjs3o0aMzb968jB49OmPHjs3uu++eJNlrr71yww035NVXX83nn3+eiy++OKussko233zzpVaD0AIAAAAAABqobt265e67706SdOrUKX/4wx9yxRVXpEePHhkxYkSGDRuWddddN0kyYMCADBo0KD/72c+y5ZZbZuLEibniiivSuHHjpVZPSVVVVdVSuxsAAAAAANQjTbsfXtclLJHPx11Z1yUsE3ZaAAAAAAAAhdCorgsAAAAAAIC6sqz6Q7Bk7LQAAAAAAAAKQWgBAAAAAAAUguOhAAAAAABosBwPVSx2WgAAAAAAAIUgtAAAAAAAAApBaAEAAAAAABSCnhYAAAAAADRYeloUi50WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADVZJmZ4WRWKnBQAAAAAAUAhCCwAAAAAAoBAcDwUAAAAAQINVWup4qCKx0wIAAAAAACgEoQUAAAAAAFAIQgsAAAAAAKAQ9LQAAAAAAKDBKtHTolDstAAAAAAAAApBaAEAAAAAABSC46EAAAAAAGiwHA9VLHZaAAAAAAAAhSC0AAAAAAAACkFoAQAAAAAAFIKeFnwjVVVVKSkpqesyAAAAAACWqpJSv9tfJFZjOVZRUZHRo0dnyJAh6dOnTzbeeOP06NEjBxxwQK6//vpUVFTUmD9s2LCUl5fnkksuqTH+l7/8JSeeeOJ3WToAAAAAAA2QnRbLqcmTJ+f444/PpEmT0rx585SXl2ejjTbK+++/nwkTJmTcuHG55ZZbMnLkyKyyyiqLvM9zzz2XE088MZttttl3WD0AAAAAAA2R0GI59Oabb2afffbJzJkzM3DgwPzsZz/LyiuvXH39vffey+mnn56nn346Bx98cG677bY0a9YsBx54YHbeeecacysrK+viIwAAAAAA0AAJLZYzVVVVOemkkzJz5swceeSROeGEE2rNWXXVVTN8+PDsueeemTx5cm699dYMHDgwbdq0SZs2beqgagAAAACAulFSWlbXJfAlelosZ8aNG5cJEyakXbt2+elPf7rIeS1atMiQIUOy+eabV4/9d0+LX/ziFznooIOSJOPHj095eXkGDhyYf/zjHykvL89222230J0Yn3/+eXr06JHu3btnzpw5S/kTAgAAAACwvLLTYjkzevToJMkOO+yQZs2afeXc/v37p3///ou83q1bt0ybNi1/+9vf0qZNm2y99dbp1KlTunTpkvXXXz+vvvpqxowZk6222qrG6x5++OF8+umn2Xfffb+2BgAAAAAAWEBosZx5/fXXkySbbrrpt77Xvvvum44dO+Zvf/tbOnbsmIsuuqj62l577ZXzzjsvd911V63Q4o477kiSrwxEAAAAAACKwPFQxeJ4qOXM9OnTkyRt27Zdpu+z2267pUmTJnnggQcye/bs6vEFOzO+973vpWvXrsu0BgAAAAAAli9Ci+VMWdkXqeD8+fOX6fu0bt06ffr0yaxZs/LQQw9Vj991112ZP3++XRYAAAAAACw2ocVypl27dkmSDz/8cJm/14ABA5J8EVQscOedd6asrCy77777Mn9/AAAAAACWL0KL5UyXLl2SJC+99NLXzv3ss89y4YUX5oknnsi8efMW+71+8IMfZPXVV88zzzyT6dOnZ8KECZkyZUq22WabtG/ffrHvBwAAAADwXSspLauXj+WV0GI506dPnyTJY489ls8///wr595///255ppr8otf/CIlJSWL/V6lpaXZc889M3/+/Dz88MN58MEHk2jADQAAAADAkhFaLGc22WSTbL755nn//fdz+eWXL3Lexx9/nCuuuCJJsu+++1b3wvhvXxdm9O/fPyUlJXnwwQfzyCOPpHXr1unVq9eSfwAAAAAAABosocVy6Ne//nWaNWuWESNG5MILL8ynn35a4/rUqVNz5JFHZurUqenYsWMOP/zwRd6radOmSZIZM2Ys9Pqaa66ZLbfcMs8++2ymTJmSfv36pUmTJkvvwwAAAAAA0GA0qusCWPrWW2+9/PGPf8yRRx6Za665JjfddFO6dOmSVVZZJe+9915eeumlzJ8/P507d84VV1yRli1bLvJea665ZsrKyvLaa6/l4IMPTnl5eU4//fQacwYMGJBnnnkmSbLXXnst088GAAAAALA0lSziFBrqhp0Wy6muXbtm9OjROeaYY7Leeuvl1VdfzYMPPpjXX3893bt3z69+9avcdtttWX311b/yPm3bts15552XNddcM+PGjctjjz1Wa0737t2TJBtssEE22GCDZfJ5AAAAAABY/pVUVVVV1XUR1G/XXnttfvvb3+ass87KgQceWNflAAAAAAB8Y6v0+21dl7BEPrjnF3VdwjLheCiWyJw5c9KsWbO89tprueqqq9KqVavsvvvudV0WAAAAAMBiKSl1PFSRCC1YIiNGjMjIkSPz+eefJ0lOOeWUtGrVqo6rAgAAAACgPhNasEQ23HDDtGjRIi1btsz++++fwYMH13VJAAAAAADUc0ILlsiPf/zj/PjHP67rMgAAAAAAWI4ILQAAAAAAaLD0tCiW0rouAAAAAAAAIBFaAAAAAAAABeF4KAAAAAAAGqxSx0MVip0WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADVaJnhaFYqcFAAAAAABQCEILAAAAAACgEIQWAAAAAABAIehpAQAAAABAg6WnRbHYaQEAAAAAABSC0AIAAAAAACgEx0MBAAAAANBgOR6qWOy0AAAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQAAAAAAaLD0tCgWOy0AAAAAAIBCEFoAAAAAAACF4HgoAAAAAAAaLMdDFYudFgAAAAAAQCEILQAAAAAAgEIQWgAAAAAAAIWgpwUAAAAAAA1WSZmeFkVipwUAAAAAAFAIQgsAAAAAAKAQhBYAAAAAAEAh6GkBAAAAAECDVVKqp0WRCC0ojCbdBtd1CXxLFS9cU9clAAAAAAD1mOOhAAAAAACAQrDTAgAAAACABsvxUMVipwUAAAAAAFAIQgsAAAAAAKAQhBYAAAAAAEAh6GkBAAAAAECDpadFsdhpAQAAAAAAFILQAgAAAAAAKATHQwEAAAAA0GCVlpbUdQl8iZ0WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADVaJnhaFYqcFAAAAAABQCEILAAAAAACgEIQWAAAAAABAIehpAQAAAABAg1VSoqdFkdhpAQAAAAAAFILQAgAAAAAAKATHQwEAAAAA0GCVljoeqkjstAAAAAAAAApBaAEAAAAAABSC0AIAAAAAACgEPS0AAAAAAGiwSvS0KBQ7LQAAAAAAgEIQWgAAAAAAAIXgeCgAAAAAABqshnA81IcffpgzzzwzY8eOTVlZWXbbbbeceuqpadSoZkRw2GGHZdy4cTXGZs2alX333TfnnHNOKisr071791RVVaWk5P++t6effjotWrRYKrUKLQAAAAAAYDl2/PHHp0OHDnnyySfzwQcf5Kc//WlGjhyZww47rMa8q666qsbzUaNGZfjw4Tn66KOTJJMnT87cuXMzfvz4NGnSZJnU6ngoAAAAAABYTr355psZO3ZsTj755DRv3jxrrbVWjjrqqNx4441f+brXX3895557bi666KK0b98+STJhwoSUl5cvs8AiEVoAAAAAAEC9U1FRkRkzZtR4VFRU1Jo3adKktG7dOh06dKge69SpU9555518+umni7z/2WefnT322CObb7559diECRPy+eefZ6+99sqWW26ZAw88MOPHj1+qn0toAQAAAABAg1VaUlIvH1dccUW6d+9e43HFFVfU+nwzZ85M8+bNa4wteD5r1qyFfifPP/98/v73v1cfC7VAs2bNsskmm2TEiBF5/PHH07t37xx66KGZOnXqUloNoUW9c+GFF6a8vDw9e/bMhx9++JVz33333Wy22WYpLy/PHXfc8R1VCAAAAADAsjZkyJCMGzeuxmPIkCG15rVo0SKzZ8+uMbbgecuWLRd671tuuSV9+/ZNu3btaoz/4he/yPnnn58OHTqkWbNmOfTQQ7P66qvniSeeWEqfSmhR7xx//PFZd9118/HHH+fcc8/9yrlnnXVWZs6cmR122CF77rnnd1QhAAAAAADLWpMmTdKqVasaj4X1mlhvvfXy8ccf54MPPqgemzJlSlZdddWssMIKtebPmzcvjzzySHbbbbda1y655JJMnDixxlhFRUWaNm26FD7RF4QW9UzTpk1zwQUXpLS0NPfdd18efvjhhc6744478te//jVt27b92nCD70aPLt/L7Oevyrbdy+u6FAAAAACggejYsWO6d++e888/PzNmzMjUqVMzYsSIDBgwYKHz//nPf+bzzz/PZpttVuvaa6+9lvPOOy/Tp09PRUVFhg8fnhkzZmTHHXdcavUKLeqhbt265eCDD06S/PrXv67VLGX69Om54IILkiTnnHNO2rRp853XSE3fX7t9bh16dMrK/CcHAAAAAEVSUlpSLx+L49JLL828efPSp0+f7LPPPtlmm21y1FFHJfni581333139dypU6dmpZVWWujuiQsuuCBrr712dt999/Ts2TNjx47Ntddem9atW3+rNfiykqqqqqqldje+M3PmzMnuu++eN954I3vttVfOP//86mvHHHNMHnzwwfTv3786vEiS0aNH56abbsrEiRMzb968dOzYMXvuuWcOPPDANG7cuMb9582blzvuuCP33ntvXn311cyYMSMtW7ZMeXl59t133+y666415vfu3Tuffvpp/vSnP+UXv/hFXnvttbRr1y4XX3zxQhO5hWnSbfC3+EaKa/dem+WKXw1Km5VaJUl2OOzC/HXcP+u4qmWj4oVr6roEAAAAAFgsXX5+b12XsET+cdGuXz+pHvJr3/VUs2bNcv7556e0tDS33357xo0blyR58MEH8+CDD2aNNdbIL3/5y+r5Z5xxRk444YS89NJL2XDDDbP11lvnvffeywUXXJAhQ4akoqKiem5VVVWOOeaYnHHGGXn11VezySabpFevXmnTpk3Gjh2bk046Kdddd12tmubOnZsjjjgin3zySbbbbruUlJRk/fXXX/ZfRoHdeelxuXXo0Xnvg09y833P1nU5AAAAAACF1qiuC2DJde/ePQMHDswf//jHnHvuubn++utz7rnnpqSkJBdccEFatfriN/tHjRqVW2+9NZ07d86IESOy1lprJUlmzJiR4447Lk899VT+8Ic/5IQTTkiSPPTQQ3n00Uez6aab5o9//GOaN29e/Z7/+7//m4svvjg33HBDDjrooBr1zJkzJ23atMlNN92Upk2bprKyMqWlDTsXK++4Ws4YNiq/v/7BnDp4l7ouBwAAAAD4L4t71BLLVsP+ifJy4MQTT8w666yTV155Jfvvv3/ef//9HHzwwenZs2f1nKuvvjpJcv7551cHFknSqlWrnH/++WncuHFuvPHG6t0Wc+fOTe/evXPSSSfVCCySZL/99kuSvPXWWwutZ//9968+66yhBxZJsuleZ+R314xOxdx5dV0KAAAAAEDh+alyPfflY6ImTZqUTp065cQTT6y+/v777+f111/PCiuskI033rjW6zt06JD1118/n332WSZOnJgk2WWXXXLZZZfVCD4qKiryyiuv5J577kmSzJ8/P/Pnz691v86dOy/tj1ivCSsAAAAAAL45x0MtBzbffPN07do148ePzyGHHFKjq/t7772XJPnss89SXl7+lfd5991307Vr1yRfHB315z//OU8++WT+9a9/Zdq0aamsrExJyf9tlVpYD/cVV1xxKXwiAAAAAAAaIqHFcqJRoy+WsqysrMb4gt0QrVu3zjbbbPOV92jXrl2SZNKkSTn44IPz4Ycfpm3btunSpUv69u2bDTbYIFtssUW22267Rd7DkVAAAAAAQH1SqqdFoQgtlnMLgoimTZvmoosu+kavOeecc/Lhhx/m8MMPz4knnlgjiPjkk0+WSZ0AAAAAAODX4pdza665ZlZfffVMmzYtr776aq3rs2fPTv/+/fOTn/ykurn2iy++mCQZMmRIrZ0TTz/9dPW/V1ZWLrvCAQAAAABocIQWDcDBBx+cJDnllFPy73//u3q8oqIiZ599dl5++eXMmDEja665ZpKkTZs2SZJHHnmkxn2ee+65nHvuuTVeDwAAAAAAS4vjoRqAgw46KH//+98zevTo7Lrrrtl4443TunXrvPTSS3n//ffTtm3bDB06tHr+IYcckgsuuCCnnnpqbrnllrRr1y7//ve/88orr6R169Zp165dpk+fnunTp6dVq1Z1+MkAAAAAAL6dEr/aXyiWowEoLS3N0KFDc+GFF2bjjTfOq6++mqeeeiqtWrXKoEGDcuedd+Z73/te9fxBgwZl6NCh2WSTTTJp0qT87W9/y/z58zNw4MDcfffd+fGPf5wkeeyxx+rqIwEAAAAAsBwqqaqqqqrrIiBJmnQbXNcl8C1VvHBNXZcAAAAAAIul6+mj67qEJfLi+TvXdQnLhOOhAAAAAABosEpKSuq6BL7E8VAAAAAAAEAhCC0AAAAAAIBCEFoAAAAAAACFoKcFAAAAAAANVmmpnhZFYqcFAAAAAABQCEILAAAAAACgEBwPBQAAAABAg1XieKhCsdMCAAAAAAAoBKEFAAAAAABQCEILAAAAAACgEPS0AAAAAACgwdLToljstAAAAAAAAApBaAEAAAAAABSC0AIAAAAAACgEPS0AAAAAAGiwSkv0tCgSOy0AAAAAAIBCEFoAAAAAAACF4HgoAAAAAAAarJJSx0MViZ0WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADZaeFsVipwUAAAAAAFAIQgsAAAAAAKAQHA8FAAAAAECDVep4qEKx0wIAAAAAACgEoQUAAAAAAFAIQgsAAAAAAKAQ9LQAAAAAAKDBKinR06JI7LQAAAAAAAAKQWgBAAAAAAAUgtACAAAAAAAoBD0tAAAAAABosEr8an+hWA4AAAAAAKAQ7LQAlpom3QbXdQl8SxUvXFPXJQAAAADQgAktAAAAAABosEpLS+q6BL7E8VAAAAAAAEAhCC0AAAAAAIBCEFoAAAAAAACFoKcFAAAAAAANVomeFoVipwUAAAAAAFAIQgsAAAAAAKAQHA8FAAAAAECDVVLieKgisdMCAAAAAAAoBKEFAAAAAABQCEILAAAAAACgEPS0AAAAAACgwSot1dOiSOy0AAAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQAAAAAAaLBK9LQoFDstAAAAAACAQhBaAAAAAAAAheB4KAAAAAAAGqwyx0MVip0WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADZaeFsVipwUAAAAAAFAIQgsAAAAAAKAQhBYAAAAAAEAh6GkBAAAAAECDpadFsdhpAQAAAAAAFILQAgAAAAAAKATHQwEAAAAA0GA5HqpY7LQAAAAAAAAKQWjBUldVVVXXJQAAAAAAUA85HqrAPvroo1x33XX561//mn//+9/5/PPPs/LKK2fjjTfOLrvskr59+6akpFhbl/7yl7/k4YcfziWXXFLXpQAAAAAAUM/YaVFQEyZMyI9//ONcdtll+fjjj9OjR4/06tUr7du3z2OPPZYTTjghhx12WCoqKuq61GrPPfdcTjzxxLz33nt1XUoh9ejyvcx+/qps2728rkthCVlDAAAAgOVPWWlJvXwsr+y0KKB58+bluOOOyyeffJKzzjorBx54YI3r//rXv3L00UfnqaeeytChQ/OLX/yijiqtqbKysq5LKKzvr90+tw49OmVlcsL6yhoCAAAAwLLnp28FNG7cuLz99tvp3r17rcAiSdZdd9387ne/S5LccsstekgU3O69NstT152R1du1rutSWELWEAAAAAC+G3ZaFNCHH36YJCkrK1vknI022ij9+/dP48aNM3v27LRo0SIDBw7M2LFj89RTT+WWW27J7bffng8++CBrrrlm9thjjwwaNChNmjSpda/HH388119/fSZMmJDZs2dn9dVXzw477JDDDz88rVu3rjG3vLw866+/fn75y1/mrLPOyttvv53VV189m266ae66664kyfjx41NeXp4tttgi119//dL7YuqhOy89Ljtvs2kmTnk7D/7tH9mv75Z1XRKLyRoCAAAALN8aLcdHLdVHdloUUHn5F+fljx07NsOHD8+MGTMWOu+CCy7IOeeckxYtWtQYP/PMMzNs2LC0a9cu22yzTaZPn56LL744Q4YMydy5c2vMveiiizJkyJA888wzKS8vT69evTJ79uxcddVV6d+/f6ZOnVrrfT/88MP89Kc/TaNGjfLDH/4wTZs2zWabbZYf/OAHSZI2bdqkX79+1c8bsvKOq+WMYaOyxf5nZ9Kb0+q6HJaANQQAAACA746dFgXUqVOn7LXXXrntttsybNiwXHHFFdliiy3So0ePbL755tl0003TuHHjRb7+iSeeyNChQ7PLLrsk+SJkOOSQQ/K3v/0t1113XQ499NAkyaOPPporr7wyrVu3zlVXXZWNN944SVJRUZFzzjknt956a4477rjcdtttKSn5v7Rx+vTp6dWrV0aMGJHS0tJUVlamtLQ06667bv72t7+lY8eOueiii5bhN1R/bLrXGamYO6+uy+BbsIYAAAAA8N2x06KgzjnnnBx33HFp0aJFKioq8tRTT+WSSy7JgQcemC222CInnnhiXnvttYW+dsCAAdWBRZK0bds2v/nNb5Ikf/rTn6rHR44cmSQ55ZRTqgOLJGnSpEl+/etfZ5111snLL7+cZ599ttZ7HHTQQSkt/eKPz4J/Upsfdtd/1hAAAAAAvjt+2lxQjRo1ylFHHZWnnnoqv//977P33ntnnXXWSZLMmjUrf/nLX7Lnnnvm5ptvrvXaLwcWC2yyySbp0KFD3nrrrbz99tuZN29exo8fn5KSkvzoRz9a6PvvtNNOSZIxY8bUut65c+dv+xEBAAAAAOpcWWlJvXwsrxwPVXAtW7ZM375907dv3yTJtGnT8te//jV//OMfM2nSpJx99tnp3r171ltvverXdOzYcaH3Wm211TJt2rS8//77adq0aebOnZuVV145rVq1Wuj8NddcM8kXx0H9txVXXPFbfjIAAAAAAKjJTosCmjx5cp555plaTbOTpEOHDtl7771z++23p1u3bqmsrMy9995bY86ijmuqqqpKkpSVlVX/+5d7VSxqfpMmTWpdcyQUAAAAAABLm588F9DPfvazDBo0KK+88soi5zRp0iT9+vVLkvznP/+pcW3atGkLfc0777yT5IsdF61bt07jxo3z8ccfZ8aMGQudP3Xq1CRf9MQAAAAAAIBlTWhRQJtttlmS5I9//ONXzvvXv/6VpHZ/iSeeeKLW3BdffDHTp0/P+uuvn3bt2qVx48bVOzUeeuihWvPnzZtXPd6zZ89vVPdX7doAAAAAACiiuu5NoadFTUKLAjrssMPSrFmz3HvvvTnrrLPy8ccf17heWVmZP//5z7n55pvTtm3b7LHHHjWuX3311XnhhReqn0+fPj1nnHFGkmTQoEHV4wcffHCS5He/+10mTpxYPT537tycffbZ+fe//50NNtgg3bt3/0Z1N23aNEkWuXMDAAAAAAC+ikbcBdSpU6cMGzYsJ510Um655Zbcfvvt6dKlSzp06JA5c+bkH//4Rz744IOsssoqufzyy2s10l5xxRVz4IEHZosttkiLFi3y7LPPZubMmdljjz2y5557Vs/bYYcdMnjw4FxzzTUZMGBAunfvnpVXXjl///vf895772WNNdbIJZdc8o37V6y55popKyvLa6+9loMPPjjl5eU5/fTTl+p3AwAAAADA8qukakG3ZQrno48+yk033ZSnn346b775Zj755JM0b948a6+9dnr37p2BAwdmxRVXrJ4/cODAjB07NpdffnnGjRuXu+66K5999lm+//3v54ADDkj//v0X+j6PPPJIbrjhhvzjH//I559/njXXXDM77bRTDjnkkKy00ko15paXlydJXn755TRqVDvzuuOOOzJ8+PBMmzYtq6222kKPnlqUJt0Gf+O5wLJR8cI1dV0CAAAAwHdq0J/G13UJS2TkAZvVdQnLhNBiObIgtLj22mvzgx/8oK7LWWxCC6h7QgsAAACgoRFaFIueFgAAAAAAQCEILQAAAAAAgELQiBsAAAAAgAarrLSkrkvgS4QWy5Hrr7++rksAAAAAAIAl5ngoAAAAAACgEOy0AAAAAACgwXI8VLHYaQEAAAAAABSC0AIAAAAAACgEoQUAAAAAAFAIQgsAAAAAABqsstKSevlYHB9++GGOOuqobL755unZs2fOO++8zJs3b6FzDzvssGy88cbp1q1b9eOvf/1r9fUrr7wy2267bbp27ZqBAwfm9ddf/1bf/38TWgAAAAAAwHLs+OOPT4sWLfLkk09m1KhReeaZZzJy5MiFzv3HP/6Rq6++Oi+88EL1Y9ttt02S3HHHHbn++utz9dVXZ8yYMdloo41y7LHHpqqqaqnVKrQAAAAAAIDl1JtvvpmxY8fm5JNPTvPmzbPWWmvlqKOOyo033lhr7tSpU/PJJ59kww03XOi9/vznP+eAAw7Ieuutl6ZNm+akk07KO++8kzFjxiy1eoUWAAAAAABQz1RUVGTGjBk1HhUVFbXmTZo0Ka1bt06HDh2qxzp16pR33nknn376aY25EyZMSMuWLXPCCSdkyy23zK677ppRo0ZVX588eXI6d+5c/bxx48bp2LFjXn311aX2uRottTsBAAAAAEA9U1ayeP0hiuKKK67I8OHDa4wdffTROeaYY2qMzZw5M82bN68xtuD5rFmzsuKKK1aPV1RUpGvXrjnhhBOy3nrrZcyYMTnmmGPSsmXL9O3bd6H3atasWWbNmrXUPpfQAgAAAAAA6pkhQ4bkkEMOqTHWpEmTWvNatGiR2bNn1xhb8Lxly5Y1xvfYY4/sscce1c9/+MMfZo899sh9992Xvn37pnnz5pkzZ06N18yZM6fWfb4Nx0MBAAAAAEA906RJk7Rq1arGY2GhxXrrrZePP/44H3zwQfXYlClTsuqqq2aFFVaoMXfUqFG57777aoxVVFSkadOm1feaNGlS9bW5c+fmjTfeqHFk1LcltAAAAAAAoMEqKy2pl49vqmPHjunevXvOP//8zJgxI1OnTs2IESMyYMCAWnNnzJiRc889NxMnTkxlZWUef/zx3Hvvvdl3332TJHvttVduuOGGvPrqq/n8889z8cUXZ5VVVsnmm2++1NbD8VAAAAAAALAcu/TSS3POOeekT58+KS0tzR577JGjjjoqSdKtW7ecffbZ2W233XLwwQdn1qxZOfroo/Phhx9mrbXWyoUXXlgdSgwYMCCfffZZfvazn+Wjjz7KxhtvnCuuuCKNGzdearWWVFVVVS21u8G30KTb4LouARq8iheuqesSAAAAAL5Tx90xoa5LWCL/s+fGdV3CMuF4KAAAAAAAoBAcDwUAAAAAQIO1OP0hWPbstAAAAAAAAApBaAEAAAAAABSC46EAAAAAAGiwGjkeqlDstAAAAAAAAApBaAEAAAAAABSC0AIAAAAAACgEPS0AAAAAAGiwyvS0KBQ7LQAAAAAAgEIQWgAAAAAAAIUgtAAAAAAAAApBTwsAAAAAABosPS2KxU4LAAAAAACgEIQWAAAAAABAITgeCoBqTboNrusS+BYqXrimrksAAACAesfxUMVipwUAAAAAAFAIQgsAAAAAAKAQhBYAAAAAAEAh6GkBAAAAAECDpadFsdhpAQAAAAAAFILQAgAAAAAAKATHQwEAAAAA0GA5HqpY7LQAAAAAAAAKQWgBAAAAAAAUgtACAAAAAAAoBD0tAAAAAABosPS0KBY7LQAAAAAAgEIQWgAAAAAAAIUgtAAAAAAAAApBTwsAAAAAABosPS2KxU4LAAAAAACgEIQWAAAAAABAITgeCgAAAACABsvxUMVipwUAAAAAAFAIQgsAAAAAAKAQhBYAAAAAAEAh6GkBAAAAAECDpadFsdhpAQAAAAAAFILQAgAAAAAAKAShBQAAAAAAUAh6WgAAAAAA0GDpaVEsdloAAAAAAACFILQAAAAAAAAKwfFQAAAAAAA0WGUljocqEjstAAAAAACAQhBaAAAAAAAAhdDgQosxY8akvLy81mPDDTdMt27d8uMf/zhnnnlmXnnllVqvHTZsWMrLy3PJJZd8Z3Xuv//+3+o+Cz7fvHnzqsd69+6d8vLyvPnmm9+2TAAAAAAAWGoabE+LFi1apE+fPtXPq6qqMnPmzEyePDl//vOfc9ttt+Wkk07KoYceWodVAgAAAACwLJXqaVEoDTa0WHnllXPRRRct9Npf/vKXnHHGGfnd736X9u3bp1+/fkmSAw88MDvvvHNWXnnlZV7fJptsktGjR6d58+ZL/d4jR47M3Llzs/rqqy/1e7NoPbp8L38deXp+NOT/5a/j/lnX5bAErGH9Zw0BAAAAiq3BhhZfZZdddklVVVVOOumk/O53v8uOO+6YZs2apU2bNmnTps13UkPz5s3TqVOnZXLvtddee5ncl0X7/trtc+vQo1NW1uBOZFtuWMP6zxoCAAAAFJ+f3CzCrrvumo033jjvv/9+Hn744SSL7mnx+OOP59BDD80222yTLl26pFevXjnttNMyZcqUhd772WefzVFHHZWtt9463bp1S79+/XLFFVdk9uzZ1XMW1tNiwdg555yTV155JYcccki6deuWrbbaKkcddVRefvnlb/TZFtbTonfv3tl8881TUVGRYcOGZccdd0yXLl2y3Xbb5Te/+U3+85//LPReTz/9dA477LD07NkzG2+8cfr27Zthw4Zl1qxZ36iWhmD3XpvlqevOyOrtWtd1KSwha1j/WUMAAABgUcpK6udjeSW0+Aq9e/dOkjzzzDOLnPPwww/npz/9acaMGZNOnTqld+/eadasWW6//fbsvffemTx5co35V155ZQYNGpTHHnssHTt2zNZbb53//Oc/GTp0aA4//PBUVFR8bV2TJk3KAQcckIkTJ+aHP/xhVl999TzyyCPZf//988QTTyzx562srMyQIUNy+eWXp3379tlmm23y6aef5vrrr88hhxxSo5l3klx22WUZPHhwnnnmmay77rrZfvvtM2PGjAwfPjwHHHBAPvnkkyWuZXlx56XH5dahR+e9Dz7Jzfc9W9flsASsYf1nDQEAAADqD6HFV/je976XJPnXv/61yDm//e1vU1pamjvvvDMjR47MpZdemtGjR+eggw7KzJkzc+2111bPnTBhQoYOHZqWLVvmhhtuyI033pjhw4fnwQcfzBZbbJHnnnsuf/rTn762rrFjx6a8vDwPPvhghg0blttuuy1nn312Pv/88/zyl7/MjBkzlujzzpw5M6+99lpuu+223Hjjjbnsssty7733pnXr1nnllVfy5JNPVs995pln8vvf/z4dOnTIqFGjcvPNN2fYsGF55JFH0r9//7zyyis599xzl6iO5Ul5x9VyxrBR2WL/szPpzWl1XQ5LwBrWf9YQAAAAoP4QWnyFFVdcMUkWeTRSkkyfPj2NGjVK27Ztq8dKSkpy5JFH5swzz8yee+5ZPX7LLbeksrIyRx55ZLp371493qJFi5x88slZe+218/77739tXY0aNcrQoUOz0korVY/tt99+2W677TJ9+vTq46yWxBFHHJH111+/+vkaa6xRveNk0qRJ1eNXX311kuT000/PBhtsUD3epEmTnHXWWWnbtm1Gjx6dadMa9g8IN93rjPzumtGpmDvv6ydTSNaw/rOGAAAAAPWH0OIrzJ07N8kXIcSi9OjRI3PmzMmee+6Z4cOH56WXXkplZWXatm2bn/zkJ9l8882r544dOzbJ/x079WWbbLJJHnrooZxyyilfW1e3bt2y+uqr1xrfcccdk3zR+2JJdevWrdZY+/btk6S658b8+fPz/PPPJ0m22mqrWvObN2+eHj161JjXUPkhaf1nDes/awgAAAB8ldLSknr5WF41qusCiuzjjz9Okho7Gv7bb37zmxx99NGZMGFChg0blmHDhqV169bZbrvtMmDAgGyxxRbVc6dPn54kCw0cFsc666yz0PFVV101Sb7Rbo1FWbC75MsaNfrij0llZWWSL76XBQHGlz/fwrz77rtLXAsAAAAAAA2L0OIrvPrqq0mS8vLyRc5ZddVVM2rUqIwbNy4PP/xw/va3v+Wf//xn7rrrrtx11105/PDD8/Of/zxJajWyXlJlZWULHa+qqvrK69/EV+0qWWD+/PlJvjgK6kc/+tFXzl1UwAIAAAAAAP9NaPEVHn/88STJD37wg6+d27179+o+FR9++GFuu+22XHLJJbn66qszcODAdOjQIe3atcvbb7+d9957L+uuu26te9x8883p0KFDevXq9ZXvtag+Ee+8806S/9txsay0bt06jRs3zrx583L++eenSZMmy/T9AAAAAABoGPS0WITRo0fn9ddfz6qrrprtt99+oXNef/319OvXL4cddliN8bZt2+aII45IeXl5Kisrq0OGBaHGX//611r3mjJlSn71q19l2LBhX1vbc889lxkzZtQaf+ihh5Ik22677dfe49to0qRJunbtmsrKyjz55JO1rldVVWXQoEHZb7/98tJLLy3TWgAAAAAAvo2ykpJ6+VheCS3+S1VVVe67776ceeaZSZIzzjhjkTsJ1llnnXzwwQd56qmncv/999e49o9//CNTpkxJy5Yt873vfS9JcuCBB6akpCQjRoyoPnoqSWbOnJlzzjknSbLbbrt9bY0zZ87MWWedlYqKiuqxG264IU899VTWXXfdZR5aJMmgQYOSJOeee24mTpxYPV5ZWZnf//73eeaZZzJ16tSsv/76y7wWAAAAAACWDw32eKj//Oc/1b0mki9+2P7pp5/m1VdfzfTp01NWVpYzzzwzO+644yLvUVZWlnPOOSfHHHNMjjvuuGy00UZZc80185///Cfjxo3L/Pnzc+aZZ6ZVq1ZJkq5du+bEE0/MxRdfnL322is9evRI8+bN8/e//z0ffvhhtt122xx00EFfW3ubNm3y4IMPZvz48dlkk00yderUTJw4Ma1bt87vfve77+S4ph122CGDBw/ONddck7333jsbbbRR2rdvn1dffTVTp05N8+bNc+mllzo6CgAAAACAb6zBhhazZs3KPffcU/28pKQkzZs3z5prrpmddtopBx54YDp16vS199lxxx1z9dVXZ+TIkZkwYUL++c9/ZsUVV8y2226bQw45JD179qwx/4gjjsgGG2yQa6+9NhMmTMjs2bOz1lpr5aCDDsrgwYNTWvr1m186duyYn//85xk6dGieeOKJrLjiitlrr73y05/+NGuttdbifxlL6NRTT02PHj1y4403ZsKECXnllVey2mqrZcCAATniiCM04QYAAAAACq90OT5qqT4qqaqqqqrrIvhmxowZk4MOOiibbbZZbrrpprouZ6lr0m1wXZcAUK9VvHBNXZcAAAAA9c7149+q6xKWyMDN1qzrEpYJPS0AAAAAAIBCEFoAAAAAAACF0GB7WgAAAAAAQJmWFoUitKhHevbsmX/+8591XQYAAAAAACwTjocCAAAAAAAKwU4LAAAAAAAarNJS50MViZ0WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCn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5plnsu6662b77bfPjBkzMnz48BxwwAH55JNPat1n+vTp2XvvvfPQQw9lww03TLdu3fL666/nt7/9bc4///zqeTvssEM6d+6cJOncuXP69euX8vLypfVx66U7Lz0utw49Ou998Eluvu/Zui6HJWAN6z9rWL9ZPwAAAGhYhBb12DbbbJO2bdtmzJgx+fDDD2tcmzJlSl555ZV07tw566+/fpLkmWeeye9///t06NAho0aNys0335xhw4blkUceSf/+/fPKK6/k3HPPrfU+L730UtZaa608+OCDufLKK3PdddflD3/4Q5Lk5ptvzqeffpokOf3007PTTjsl+WLXxUUXXVT9vKEq77hazhg2Klvsf3YmvTmtrsthCVjD+s8a1m/WDwAAABoWPS0K5u233/7a3Ql77rlnfvvb36ZRo0bZeeedc/311+f+++/PgQceWD1nwS6LBbsxkuTqq69O8kW4sMEGG1SPN2nSJGeddVaeeOKJjB49OieffHI6dOhQ4z3PPPPMtGnTpvp57969s+aaa+att97K66+/nq5duy7pR16ubbrXGamYO6+uy+BbsIb1nzWs36wfAAAAy1ppNLUoEqFFwbRo0SJ9+vT5yjndunWr/vc99tgj119/ff7yl7/UCC1Gjx6d0tLS7LrrrkmS+fPn5/nnn0+SbLXVVrXu2bx58/To0SP3339/nn/++eyyyy41ri0sSGnfvn3eeuutzJ49e/E+ZAPiB231nzWs/6xh/Wb9AAAAoGERWhTMyiuvnIsuuugbz+/SpUu+//3vZ/z48Xnvvfey6qqr5qWXXsobb7yRrbfeunrHxMcff1wdLmyxxRZfec933323xvMVVlghJSW108ZGjb7441NVVfWN6wUAAAAAgEURWiwHdt9991x88cUZPXp0Bg8enL/85S/V4wvMnz8/yRdHQf3oRz/6yvuts846NZ4vLLAAAAAAAIClTWixHNhtt91yySWX5P77788hhxyS++67Ly1atMiOO+5YPad169Zp3Lhx5s2bl/PPPz9NmjSpw4oBAAAAAIrB72wXS2ldF8C3t+qqq6Znz5556aWX8sADD2TatGnZcccd06JFi+o5TZo0SdeuXVNZWZknn3yy1j2qqqoyaNCg7LfffnnppZeWuBa7MgAAAAAAWFJCi+XE7rvvnqqqqlxwwQVJvmjQ/d8GDRqUJDn33HMzceLE6vHKysr8/ve/zzPPPJOpU6dm/fXXX+I6FuzgmDFjxhLfAwAAAACAhsnxUAXzn//8Jz//+c+/dl6PHj2y7777Vj/faaedcs455+S9995L+/bts+WWW9Z6zQ477JDBgwfnmmuuyd57752NNtoo7du3z6uvvpqpU6emefPmufTSS7/V0VEdO3ZMktx666157733sv3222fvvfde4vsBAAAAACxLpQ6PKRShRcHMmjUr99xzz9fOa9SoUY3QomXLltlhhx1y9913p1+/fiktXfgmmlNPPTU9evTIjTfemAkTJuSVV17JaqutlgEDBuSII46o1YR7ce2www4ZNGhQ7rrrrvz1r3/NCiusILQAAAAAAOAbKamqqqqq6yIgSZp0G1zXJQBAnap44Zq6LgEAAKDBeXXap3VdwhJZv8OKdV3CMqGnBQAAAAAAUAiOhwIAAAAAoMEq0dOiUOy0AAAAAAAACkFoAQAAAAAAFILjoQAAAAAAaLBK43yoIrHTAgAAAAAAKAShBQAAAAAAUAhCCwAAAAAAoBD0tAAAAAAAoMEq0dKiUOy0AAAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQAAAAAAaLBK9bQoFDstAAAAAACAQhBaAAAAAAAAheB4KAAAAAAAGiynQxWLnRYAAAAAAEAhCC0AAAAAAIBCEFoAAAAAAACFoKcFAAAAAAANVmmJrhZFYqcFAAAAAABQCEILAAAAAACgEBwPBQAAAABAg+V0qGKx0wIAAAAAACgEoQUAAAAAAFAIQgsAAAAAAKAQ9LQAAAAAAKDB8pv9xWI9AAAAAACAQhBaAAAAAAAAhSC0AAAAAAAACkFPCwAAAAAAGqySkpK6LoEvsdMCAAAAAAAoBKEFAAAAAABQCI6HAgAAAACgwSp1OlSh2GkBAAAAAAAUgp0WAAAF0aTb4LougW+p4oVr6roEAACAes1OCwAAAAAAoBDstAAAAAAAoMEq0dOiUOy0AAAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQAAAAAAaLD8Zn+xWA8AAAAAAKAQhBYAAAAAAEAhOB4KAAAAAIAGq6SkpK5L4EvstAAAAAAAAApBaAEAAAAAABSC0AIAAAAAACgEPS0AAAAAAGiwSrW0KBQ7LQAAAAAAgEIQWgAAAAAAAIXgeCgAAAAAABosp0MVi50WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADVapphaFYqcFAAAAAABQCEILAAAAAACgEIQWAAAAAABAIehpAQAAAABAg1VSoqlFkdhpAQAAAAAAFILQAgAAAAAAKATHQwEAAAAA0GCVOh2qUOy0AAAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQqqqqoqJSXFOUytaPUAAAAAACwNfupZLHZafEfeeeedrL/++ikvL8+FF164yHnz58/PjTfemPPOO6/G+O23357y8vL8/Oc//0bv99Zbb6W8vDzbbrvtt6p7UfUAAAAAAMDSJrT4jtx+++2pqqpKs2bNcvvtt6eiomKh8+65556cc845+fjjj7/bAhehaPUAAAAAALD8Elp8B6qqqnL77benbdu2GTBgQD7++OPcd999C51bWVn5HVf31YpWT33Wo8v3Mvv5q7Jt9/K6LoUlZA3rP2tYv1m/+s8aAgAARVRaUlIvH8srocV34Nlnn83bb7+drbfeOrvuumuS5Oabb67jqvgufX/t9rl16NEpK/OfXH1lDes/a1i/Wb/6zxoCAADwTfhb43fgtttuS5Jst9126datWzp27Jjx48fnn//8Z415AwcOzGmnnZbki2OZysvL84tf/KLW/f7+97/nsMMOS/fu3dOtW7cccMABefzxx79xPZ9++mmGDh2aH//4x9l4443Ts2fPDBkyJM8///xi1/PSSy/l2GOPzVZbbZUuXbqkT58+ueCCC/LRRx9943qWd7v32ixPXXdGVm/Xuq5LYQlZw/rPGtZv1q/+s4YAAAB8U0KLZeyzzz7LQw89lJYtW6Z3795Jkj333DNJ7d0WP/jBD9KtW7ckyZprrpl+/fpVP1/gxRdfzIEHHpjXX389W221VdZcc82MGzcuRx55ZB5++OGvreedd95J//79c8UVV2T27Nn54Q9/mPXWWy9PPvlkBg4cmFtvvfUb13PHHXdkv/32y4MPPpjVVlstvXv3TmlpaUaOHJkBAwbkrbfeWoJvbPly56XH5dahR+e9Dz7Jzfc9W9flsASsYf1nDes361f/WUMAAAAWh9BiGbv33nszZ86c7LzzzmnRokWSL0KL0tLS3H333Zk1a1b13J/+9KfZZ599kiTdunXLRRddlH333bfG/aZOnZr99tsvDz/8cIYPH5677747BxxwQKqqqnLNNdd8bT0nn3xypk6dmoMPPjgPP/xwLrvsstxwww256aab0qpVq5x99tmZPHny19YzZcqUnHnmmWnatGmuvfba3H777bn00kvzwAMP5Mgjj8zbb7+dk08++dt/gfVcecfVcsawUdli/7Mz6c1pdV0OS8Aa1n/WsH6zfvWfNQQAAIqupKR+PhbHhx9+mKOOOiqbb755evbsmfPOOy/z5s1b6Nwnnngi/fr1S9euXdO3b9889thjNa5feeWV2XbbbdO1a9cMHDgwr7/++pJ+9QsltFjGFhwN1b9//+qxDh06ZOutt86MGTNy7733Ltb92rZtm1NPPTWlpV8sXUlJSQYPHpwktY6b+m9///vf8/zzz1cf89S4cePqa5tuummOPPLIzJ07N9ddd93X1nHddddl7ty5Ofroo7PVVltVj5eWlub4449P586dM378+Lz44ouL9fmWN5vudUZ+d83oVMxd+P8AUHzWsP6zhvWb9av/rCEAAEDdO/7449OiRYs8+eSTGTVqVJ555pmMHDmy1rw33ngjxxxzTI477rg8//zzOeaYY3L88cdn2rQvfgntjjvuyPXXX5+rr746Y8aMyUYbbZRjjz02VVVVS61WocUyNGnSpEyYMCHrrrtuNttssxrXFoQYi9uQe6ONNqoRNiTJaqutliSZMWNGKisrF/naZ5/94kiGLbbYojr0+LLtttsuSTJ27NivrWPBvb4cWCxQUlKSbbbZ5hvfa3nmBzT1nzWs/6xh/Wb96j9rCAAAULfefPPNjB07NieffHKaN2+etdZaK0cddVRuvPHGWnPvuOOObL755tlhhx3SqFGj7LzzzunRo0duueWWJMmf//znHHDAAVlvvfXStGnTnHTSSXnnnXcyZsyYpVZvo6V2J2pZsMtixowZGThwYI1rc+fOTZK8/PLLeemll7LJJpt8o3uuuOKKtcYaNfq/ZaysrFxoIJEk7777bpLk+uuvz/XXX7/I93jvvfe+to4Fcxb051iUBe8JAAAAAMDSU1FRkYqKihpjTZo0SZMmTWqMTZo0Ka1bt06HDh2qxzp16pR33nknn376aY2fOU+ePDmdO3eu8frvf//7efXVV6uvH3744dXXGjdunI4dO+bVV1/NlltuuVQ+l9BiGZk7d27uvvvuJMn06dMzffr0Rc696aabvnFoUbK4h5V9yYJdGBtvvHE6duz4rd5j/vz5SZJddtllkSFJkqy//vqLVyQAAAAAwHeoZCkebfRduuKKKzJ8+PAaY0cffXSOOeaYGmMzZ85M8+bNa4wteD5r1qwaocXC5jZr1qy6N/PXXV8ahBbLyOOPP54PP/ww3bp1W+QRUC+99FL23nvv3HfffTnttNMWuotiaWrXrl2SZOutt84JJ5zwre7Vvn37vP322znuuOOyzjrrLI3yAAAAAAD4hoYMGZJDDjmkxth/77JIkhYtWmT27Nk1xhY8b9myZY3x5s2bZ86cOTXG5syZUz3v664vDXpaLCMLjobaZZddFjlnk002SadOnTJ79uzceeedSb7dToqv06NHjyTJk08+udDeFw8//HB23XXXnH322dVji6pnwb2eeOKJhV4/5ZRTss8+++TRRx/9tmUDAAAAAPBfmjRpklatWtV4LCy0WG+99fLxxx/ngw8+qB6bMmVKVl111aywwgo15nbu3DmTJk2qMTZ58uSst9561ff68vW5c+fmjTfeqHWk1LchtFgGpk+fnieffDJlZWXp27fvV87dY489kvxfQ+6mTZsm+aIPxtLWs2fPbLjhhnn55Zfzu9/9rsZ5Z2+++WZ+85vfZNKkSTWOjlpUPQMHDkxZWVn+53/+J88880yNazfffHPuuuuuvPLKK9/42CsAAAAAgDpRVVk/H99Qx44d071795x//vmZMWNGpk6dmhEjRmTAgAG15u62224ZO3ZsRo8enXnz5mX06NEZO3Zsdt999yTJXnvtlRtuuCGvvvpqPv/881x88cVZZZVVsvnmmy+15RBaLAN33nln5s2bly233DKrrLLKV87dbbfdUlpamilTpmTs2LHVRy09/vjjGTJkSC6//PKlVldJSUmGDh2aDh065Nprr02fPn1y5JFHZtCgQdlll13y7rvvZqeddspPfvKT6tcsqp4uXbrk9NNPz8yZMzNo0KDsueeeOeaYY7LrrrvmV7/6VcrKyvL//t//+9rPDwAAAADAsnXppZdm3rx56dOnT/bZZ59ss802Oeqoo5Ik3bp1q+7P3KlTp/zhD3/IFVdckR49emTEiBEZNmxY1l133STJgAEDMmjQoPzsZz/LlltumYkTJ+aKK65I48aNl1qtelosA3fccUeSZNddd/3auauuumq23HLL/O1vf8vNN9+coUOH5qSTTsr111+fp59+OrNnz86RRx651Gpbd911c+edd+aqq67KI488kqeffjotW7ZMly5dss8++2S33XZLWVlZ9fyNNtpokfX85Cc/yQYbbJBrr70248aNy6RJk9K+ffv07ds3RxxxRDbccMOlVjcAAAAAAEtmlVVWyaWXXrrQay+88EKN59tss0222Wabhc4tKSnJ4MGDM3jw4KVeY/V7VFXV09boLHeadFt2f9ABAL4LFS9cU9clAAAAi2nOrJl1XcISadZi6TW/LhI7LQAAAAAAaLBKFqM/BMuenhYAAAAAAEAhCC0AAAAAAIBCcDwUAAAAAAANl+OhCsVOCwAAAAAAoBCEFgAAAAAAQCEILQAAAAAAgELQ0wIAAAAAgIarqqquK+BL7LQAAAAAAAAKQWgBAAAAAAAUgtACAAAAAAAoBD0tAAAAAABouKoq67oCvsROCwAAAAAAoBCEFgAAAAAAQCE4HgoAAAAAgAarxPFQhWKnBQAAAAAAUAhCCwAAAAAAoBCEFgAAAAAAQCHoaQEAAAAAQMOlp0Wh2GkBAAAAAAAUgtACAAAAAAAoBMdDAQAAAADQcDkeqlDstAAAAAAAAApBaAEAAAAAABSC0AIAAAAAACgEPS0AAAAAAGi49LQoFDstAAAAAACAQhBaAAAAAAAAhSC0AAAAAAAACkFPCwAAAAAAGq5KPS2KxE4LAAAAAACgEIQWAAAAAABAITgeCgAAAACABqukyvFQRWKnBQAAAAAAUAhCCwAAAAAAoBAcDwUAAEtJk26D67oEvqWKF66p6xIAAKBBE1oAAAAAANBw6WlRKI6HAgAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQAAAAAAaLiqquq6Ar7ETgsAAAAAAKAQhBYAAAAAAEAhOB4KAAAAAICGq6qyrivgS+y0AAAAAAAACkFoAQAAAAAAFILQAgAAAAAAKAQ9LQAAAAAAaLBK9LQoFDstAAAAAACAQhBaAAAAAAAAheB4KAAAAAAAGi7HQxWKnRYAAAAAAEAhCC0AAAAAAIBCEFoAAAAAAACFoKcFAAAAAAANl54WhWKnBQAAAAAAUAhCCwAAAAAAoBCEFgAAAAAAQCHoaQEAAAAAQMOlp0Wh2GkBAAAAAAAUgtACAAAAAAAoBMdDAQAAAADQYJU4HqpQ7LQAAAAAAAAKQWgBAAAAAAAUgtACAAAAAAAoBD0tAAAAAABouCr1tCgSOy0AAAAAAIBCsNNiKaqsrMzf/va33HXXXZk4cWKmTZuWuXPnpk2bNtlkk03St2/f/OhHP0pJSUldl1rt9ttvz2mnnZZ+/frloosuqutyAAAAAABowIQWS8m///3vHH/88Xn55ZeTJJ07d84WW2yRsrKyvPnmm3nggQdy//33p3v37vnDH/6QlVdeuY4rBgAAAAAgVVV1XQFf4niopWDatGk54IAD8vLLL6dXr1556KGHcs8992TEiBEZNmxY7r777owePTqbb755xo0bl1NPPbWuS6YO9Ojyvcx+/qps2728rkthCVnD+s8a1m/Wr/6zhvWfNQQAAJY1ocVS8Otf/zrTp09P3759c9lll2XttdeuNed73/terrzyyqyxxhp54okn8sILL9RBpdSV76/dPrcOPTplZf6Tq6+sYf1nDes361f/WcP6zxoCAADfBX/j+Jb+/e9/59FHH03Lli3z61//+iv7VbRo0SLHHntsBg4cmBYtWtS49tJLL+XYY4/NVlttlS5duqRPnz654IIL8tFHH9W6T3l5eXbfffd89tlnOe+887L99tunS5cu2XHHHfP73/8+s2fPrvWazz77LEOHDs2OO+6YTTbZJDvvvHNuueWWr/xs//rXv3Lqqadmm222SZcuXbLtttvml7/8Zd5+++1ac3v37p3NN988r732Wvr3758uXbqkV69eGT9+/Fe+R0Owe6/N8tR1Z2T1dq3ruhSWkDWs/6xh/Wb96j9rWP9ZQwAA4LsitPiW7r777iRJr1690rp166+dv8cee+SMM85Iefn/bam/4447st9+++XBBx/Maqutlt69e6e0tDQjR47MgAED8tZbb9W6z+zZs3PAAQfkz3/+czp27Jitttoq7777bi677LKccMIJNeZ+8sknOfDAA3PFFVdkzpw52X777dOsWbOcddZZufrqqxda51NPPZU999wzd955Z1q3bp1evXplpZVWyqhRo9K/f//84x//qPWauXPn5ogjjsgnn3yS7bbbLiUlJVl//fW/9jtZnt156XG5dejRee+DT3Lzfc/WdTksAWtY/1nD+s361X/WsP6zhgAALPeqKuvnYzkltPiWJkyYkCTp2bPnEr1+ypQpOfPMM9O0adNce+21uf3223PppZfmgQceyJFHHpm33347J598cq3Xvfnmm5k/f37uvffejBw5MldeeWVuvvnmNG7cOI899lhee+216rmXXnpp/vnPf1b327j00ktz++235ze/+U0mT55c694fffRRTjzxxFRUVGTo0KG55557MmzYsNxzzz0555xz8vHHH+f4449PRUVFjdfNmTMnbdq0yejRo/OHP/whDz/8cK0dJQ1NecfVcsawUdli/7Mz6c1pdV0OS8Aa1n/WsH6zfvWfNaz/rCEAAPBdalTXBdR37733XpKkffv2C71+1llnZdasWbXG11133fzsZz/Lddddl7lz5+aEE07IVlttVX29tLQ0xx9/fB599NGMHz8+L774Yrp27VrjHieeeGLWWmut6uddunTJZpttljFjxmTSpEnp3LlzKioqcvvtt6dx48Y577zz0qxZs+r5e++9dx577LE88sgjNe47atSo6t0Zu+yyS41r++67bx599NE8/vjjeeihh2pd33///dO0adPqz9DQbbrXGamYO6+uy+BbsIb1nzWs36xf/WcN6z9rCAAAfJf8VPlbqqz86m04o0ePzj333FPr8dRTTyVJnn32iy32Xw4sFigpKck222yTJBk7dmyt6926das1tiA8WdDXYsKECZk1a1a6dOmStm3b1pq/00471RobM2bMImtKkm233bbGvC/r3LnzQl/TUPkLfv1nDes/a1i/Wb/6zxrWf9YQAAD4Ltlp8S116NAhr732WqZPn77Q688//3yN52PGjMlBBx1U/XzBTo0999zzK9/n3XffrTW24oor1hpr1OiLJa2qqkqSvP/++9V1Lsyaa665yPc6+uijv7KmBbV/XU0AAAAAAEVVshz3h6iPhBbf0gYbbJAnn3wy48ePz957773Yr58/f36SZJdddvnK45QW1tC6pKTka+//dXPKysoWWVOvXr3SqlWrRb72+9//fq0xR0IBAAAAALCkhBbf0m677Zb//d//zUMPPZTTTjttsXcatG/fPm+//XaOO+64rLPOOku9vlVXXTVJ8vbbby/0+oKdGP9d0xtvvJGDDjooP/jBD5Z6TQAAAAAAsDB+Lf5bWm+99bLjjjvms88+yy9/+cuv7XExceLEGs979OiRJHniiScWOv+UU07JPvvsk0cffXSJ6ttoo42y0korZeLEiXnnnXdqXX/88cdrjX1dTRdffHH69++fW2+9dYlqAgAAAAAojKrK+vlYTgktloLzzjsva6yxRh588MEcdNBBeeWVV2rNmTJlSk444YT89re/TZLqptgDBw5MWVlZ/ud//ifPPPNMjdfcfPPNueuuu/LKK69kk002WaLaGjdunAMOOCDz58/PKaeckhkzZlRfe+ihh3LnnXfWes2+++6bFi1a5IYbbshf/vKXGtcee+yxXHvttXn55ZfTpUuXJaoJAAAAAAAWxvFQS8FKK62UUaNG5fTTT89jjz2WPfbYI+uss07WXXfdNGrUKG+88UYmT56cJGnVqlUOPfTQHH744UmSLl265PTTT89vfvObDBo0KBtuuGHWXHPN/Otf/8qkSZNSVlaW//f//l9WWWWVJa7vqKOOyvjx4zNmzJjssMMO6dGjRz744IOMHz8+3bp1ywsvvFBjfocOHXLhhRfmxBNPzIknnpg//OEP+d73vpd33303//jHP5Ikp512WjbYYIMlrgkAAAAAAP6b0GIpadOmTS6//PK88MILufvuuzNu3Li8+OKLmTVrVtq0aZPtt98+22yzTfbYY49aza1/8pOfZIMNNsi1116bcePGZdKkSWnfvn369u2bI444IhtuuOG3qq1Jkya56qqrMnLkyNxxxx154okn0q5du5x00knp1q1bfvKTn9R6zU477ZTbbrstV111VZ599tk8/vjjadu2bbbffvsMHjw4PXv2/FY1AQAAAADAfyupqqqqqusiIEmadBtc1yUAANDAVbxwTV2XAADAd6xy8rN1XcISKf3+lnVdwjKhpwUAAAAAAFAIQgsAAAAAAKAQ9LQAAAAAAKDhqpxf1xXwJXZaAAAAAAAAhSC0AAAAAAAACkFoAQAAAAAAFIKeFgAAAAAANFhVlZV1XQJfYqcFAAAAAABQCEILAAAAAACgEIQWAAAAAABAIehpAQAAAABAw1U5v64r4EvstAAAAAAAAApBaAEAAAAAABSC46EAAAAAAGi4HA9VKHZaAAAAAAAAhSC0AAAAAAAACkFoAQAAAAAAFIKeFgAAAAAANFhV8/W0KBI7LQAAAAAAgEIQWgAAAAAAAIXgeCgAAAAAABquysq6rqBOzZo1K+eee24effTRzJs3L3369MmvfvWrtGzZcqHzH3jggYwYMSJTp05N69at079//xx11FEpLf1ij0Tfvn3zzjvvVD9PklGjRqVTp07fqB6hBQAAAAAANFDnnntu3n333TzwwAOZP39+jj/++Fx00UX51a9+VWvuP/7xj5xyyin5/e9/n+222y7/+te/cvjhh6dFixYZPHhwZsyYkX/961955JFHssYaayxRPY6HAgAAAACABmj27Nm55557cuyxx6Z169Zp27Ztfv7zn+f222/P7Nmza81/++23s99++6VXr14pLS1Np06dsuOOO+a5555L8kWo0bp16yUOLBI7LQAAAAAAoN6pqKhIRUVFjbEmTZqkSZMmNcbmzJmTadOmLfQes2fPzty5c9O5c+fqsU6dOmXOnDl54403ssEGG9SY/6Mf/Sg/+tGPatz78ccfT79+/ZIkEyZMSPPmzfOTn/wkkyZNyhprrJFjjjkmvXr1+safS2gBAAAAAEDDVTm/ritYIldccUWGDx9eY+zoo4/OMcccU2Ps73//ew466KCF3uO4445LkrRo0aJ6rHnz5kmSmTNnfuX7z5gxI8cdd1yaNWuWQYMGJUlKSkqy8cYb58QTT8zqq6+e+++/P8ccc0xuuOGGdO3a9Rt9rpKqqqqqbzQTlrEm3QbXdQkAADRwFS9cU9clAADwHZs37i91XcISqdx4x2+00+KrTJw4MXvuuWfGjx9f3Xh7xowZ6d69e+66666sv/76C33d66+/nmOPPTZt27bNpZdempVWWmmR73HEEUekU6dOOfXUU79RTXpaAAAAAABAPdOkSZO0atWqxmNxAoskWXfdddO4ceNMnjy5emzKlClp3LhxOnbsuNDXPPHEE9l7772zzTbb5Oqrr64RWFx99dV55plnasyvqKhI06ZNv3FNQgsAAAAAAGiAmjdvnr59++aiiy7KRx99lI8++igXXXRRdt111zRr1qzW/BdffDE/+9nPctppp+XUU09No0Y1O1C8++67OfvsszN16tTMmzcvo0aNygsvvJA999zzG9fkeCgKw/FQAADUNcdDAQA0PHOfu7uuS1gijXvstlTuM2PGjFx44YV59NFHM3fu3PTp0ydnnnlmdZ+LXXbZJf369cuRRx6ZI488Mo8//nh134sFunfvnquuuioVFRW56KKLct999+Wzzz7L97///Zx88snp2bPnN65HaEFhCC0AAKhrQgsAgIanoYcWReN4KAAAAAAAoBAaff0UAAAAAABYTlVW1nUFfImdFgAAAAAAQCEILQAAAAAAgEIQWgAAAAAAAIWgpwUAAMD/r0m3wXVdAt9CxQvX1HUJAEA9VFU5v65L4EvstAAAAAAAAApBaAEAAAAAABSC0AIAAAAAACgEPS0AAAAAAGi49LQoFDstAAAAAACAQhBaAAAAAAAAheB4KAAAAAAAGq7KyrqugC+x0wIAAAAAACgEoQUAAAAAAFAIQgsAAAAAAKAQ9LQAAAAAAKDBqpo/v65L4EvstAAAAAAAAApBaAEAAAAAABSC46EAAAAAAGi4Kh0PVSR2WgAAAAAAAIUgtAAAAAAAAApBaAEAAAAAABSCnhYAAAAAADRceloUip0WAAAAAABAIQgtAAAAAACAQhBaAAAAAAAAhaCnBQAAAAAADVZVZWVdl8CX2GkBAAAAAAAUgtACAAAAAAAoBMdDAQAAAADQcFXOr+sK+BI7LQAAAAAAgEIQWgAAAAAAAIUgtAAAAAAAAApBTwsAAAAAABouPS0KxU4LAAAAAACgEIQWAAAAAABAITgeKklVVVVKSkrqugwAAAAAAL5jVZWVdV0CX7LEOy0qKioyevToDBkyJH369MnGG2+cHj165IADDsj111+fioqKpVnnMvPUU09l8ODBdV3GIr388ss5++yz069fv3Tv3j2bbLJJfvzjH+fcc8/Nm2++uczff9iwYSkvL88ll1yyzN8LAAAAAICGbYlCi8mTJ6d///454YQTMmbMmKyyyirp1atXOnXqlAkTJuQ3v/lN+vfvnw8++GBp17tUvfPOOzn00EMzZcqUui6lls8//zy//vWv079///zpT3/K/Pnz06NHj/To0SMzZszIDTfckF133TUPPvhgXZfKN9Sjy/cy+/mrsm338rouhSVkDes/a1i/Wb/6zxrWf9aw/rOGAAAU3WIfD/Xmm29mn332ycyZMzNw4MD87Gc/y8orr1x9/b333svpp5+ep59+OgcffHBuu+22NGvWbKkWvbRUFnTbT1VVVY499tg8/vjj2XDDDXP22Wdnk002qb4+d+7c3HDDDbnwwgtz4okn5n//93/zgx/8oA4r5ut8f+32uXXo0Skr00amvrKG9Z81rN+sX/1nDes/a1j/WUMAAOqDxfp/q1VVVTnppJMyc+bMHHnkkTnjjDNqBBZJsuqqq2b48OHp2LFjJk+enFtvvXWpFtwQ/OlPf8rjjz+eTp065brrrqsRWCRJ48aNc8ghh2TIkCGZO3duLrroojqqlG9i916b5anrzsjq7VrXdSksIWtY/1nD+s361X/WsP6zhvWfNQQA+AqV8+vnYzm1WKHFuHHjMmHChLRr1y4//elPFzmvRYsWGTJkSDbffPNa1+66664ccMAB2WyzzbLJJpukX79+ueyyyzJ79uwa88aMGZPy8vLsv//+C32P3r17p7y8PG+99Vb12MCBA1NeXp6PP/44f/zjH7Prrrtm4403zg9+8IOcdtppeeedd6rnDhs2LH369EmSTJs2LeXl5endu3eS5K233kp5eXmOOuqo3HfffenVq1d1raeddlrKy8szdOjQhdb1l7/8JeXl5TnzzDMX+f18nZEjRyZJTjzxxKywwgqLnDd48OBssMEGWX/99fPxxx/XuDZp0qScfPLJ+eEPf5guXbrkhz/8YU4++eRMnjx5ofd6//33c84551R/1v79++eBBx74yjpfeumlHHvssdlqq63SpUuX9OnTJxdccEE++uijxfq8y7M7Lz0utw49Ou998Eluvu/Zui6HJWAN6z9rWL9Zv/rPGtZ/1rD+s4YAANQnixVajB49Okmyww47fO2RT/3798+NN96YgQMHJvniKKaTTjopp5xySiZMmJBu3bpl2223zfvvv5/f//732X///fOf//xnCT9GTWeccUbOP//8tGjRItttt13mz5+f22+/Pfvvv38+++yzJEl5eXl22GGHJEnz5s3Tr1+/6ucLvPbaa/n5z3+etm3bpmfPnunQoUMOOuigJMk999yTqqqqWu99++23V3/+JTFhwoT8+9//TsuWLdOrV6+vnLvSSivlzjvvzPnnn5/WrVtXjz/88MPp379/7r777rRp0yZ9+vRJmzZtcvfdd2evvfbKY489VuM+b731VvbZZ5/ceOONady4cbbffvvMmTMnxx57bO6///6Fvvcdd9yR/fbbLw8++GBWW2219O7dO6WlpRk5cmQGDBhQI0xqyMo7rpYzho3KFvufnUlvTqvrclgC1rD+s4b1m/Wr/6xh/WcN6z9rCABAfbJYPS1ef/31JMmmm2662G90ww035N57781aa62Va665JmuvvXaSZMaMGTnppJPy+OOP56yzzsqwYcMW+97/7amnnsrIkSOz1VZbJUk+/vjj7LPPPnnzzTdz11135Sc/+Ul22mmnbLjhhnn44Yez4oorLvSIpalTp+aAAw7Ir371qyRfBC+lpaXZcMMNM3HixIwdOzY9e/asnj9t2rQ888wzWXfdddOtW7clqn3Bd7zRRhulrKxssV8/ffr0/PznP8/cuXNz/vnnZ6+99qq+NmrUqJxxxhk56aSTct9996VDhw5Jkt/85jd59913s+++++ZXv/pVysrKUlVVlUsvvTQjRoyo9R5TpkzJmWeemaZNm2bEiBHV33NlZWX+53/+J5dffnlOPvnk3HTTTUvyFSxXNt3rjFTMnVfXZfAtWMP6zxrWb9av/rOG9Z81rP+sIQAA9cli7bSYPn16kqRt27aL/UZ//OMfk3zxA/IFgUWStGrVKhdddFFWWGGFPPjgg3nzzTcX+97/bZ999qn+QXqStG7dOrvttluSL3ZPLI5BgwZV/3tp6Rdf14ABA5Ikd955Z425d911V+bPn7/EuyyS//uOV1lllSV6/S233JLZs2dn9913rxFYJF/Uvccee2TmzJnVgcJ7772Xxx57LG3bts0ZZ5xRHZSUlJTk2GOPzQYbbFDrPa677rrMnTs3Rx99dI3vubS0NMcff3w6d+6c8ePH58UXX1yiz7A88ZfD+s8a1n/WsH6zfvWfNaz/rGH9Zw0BAL5GXfem0NOihsUKLRb8QHv+/MX7Qt5999289dZbWXnllbPlllvWur7CCitkm222SZKMHTt2se69MF27dq01tmBXwZw5c77xfZo1a5Z11lmn1ni/fv3StGnTPPDAAzXud+edd6asrCy777774hf9/2vU6IvNL4v7HS/w3HPPJUn69u270Os777xzkv/7nhf8c6uttkqTJk1qzC0pKal1ZFaSPPvss9Wv+W8lJSVLdS0BAAAAAGg4Fut4qHbt2uWf//xnPvzww8V6k/fffz9JssYaayxyzpprrpnk/3YafBsrrbRSrbEFgUtlZeU3vs+immCvuOKK2XHHHXPvvffmkUceyS677JKXXnopU6ZMyXbbbVcdkCyJdu3aJclif8cLfN13/d/f84L5i6p5wfwve++995Ike+6551fW8u67736DigEAAAAA4AuLFVp06dIlTz31VF566aXqI5IW5bPPPsuIESOy5ZZbpmXLlkm++C38RVnQ1Pq/f9t/Ub5qJ8JXvc/iWHAc1MIMGDAg9957b+6+++7ssssu1UdFfZujoZIvelkkycSJEzN37tw0btz4K+f/8Y9/TIsWLbL99tunXbt21d/jor6D//6ev+67WrDz48sWfPe7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p3379mndunW6dOmSatasqYCAAHMeX19flShRQna7XVu2bEm2DsMw1K5dO7355pvat2/fI7flcfUQKFeunCRp8+bNyd67evWq9u/fn2Ra0aJF5efnp0OHDiVLHkjSpUuXVLt2bbVv317R0dGP1KYKFSpIuleQ+6/u3Llj1rxwyJEjh7Jly6ZLly7p0KFDyZaJjY1Vo0aN1Lp1679NhAAAAAAAAACAOzBshlu+nlVOTVpI94aCMgxDn3/+uaR7Bbr/ql27dpKkIUOG6MCBA+Z0u92usWPHatu2bYqMjFShQoUeuR2OHhx37tx55HVIUuPGjRUQEKCFCxcmSbLExsaqb9++5vBRjiRJQECAmjVrppiYGH344Ye6du2auUx0dLT69u2rEydOKCAgINnwUA+qWrVqyp07t37//XfNnDnTnG61WjVw4MD7bnPbtm0lSb1799aZM2eSLDN48GD9+eefunPnjnLkyPFIbQIAAAAAAAAA4K8e2/BQN27cUK9evf51vjJlyqh58+bm36+++qo+/fRTXbx4UZkzZ9ZLL72UbJkaNWrorbfe0vTp09W0aVMVKVJEmTNn1qFDhxQZGSl/f3+NGzfuPw0dlSdPHknSokWLdPHiRVWpUkVNmzZ96PVkzpxZgwYNUp8+fdSpUyeVKlVKQUFB2r17t2JiYhQUFKRr164lqSPRs2dPHTx4UNu3b1fNmjVVtGhR+fv7KyIiQjdv3lSePHk0ePDgR942X19fjRgxQh07dtTnn3+uH3/8Ubly5dK+fft07do1FSlSRH/++WeSZdq0aaO9e/dq9erVqlevnooWLar06dNr3759unz5soKCgjR69OhHbhMAAAAAAAAAAH/lYfy1MvRDCg8PV5s2bR54/jfeeENffPFFkmkffvihli9frg4dOqh3795/u+ymTZs0b9487d+/X7GxsXr++edVpkwZvf3220mKcJ89e1bVq1dXlixZ9OuvvyZbT2hoqHbs2KEZM2aYQyfZ7XYNHz5cy5YtU3R0tOrWrZusnQ/jt99+05QpU8zhoEqVKqVevXqpb9++OnDggFauXJmk5oXVatWCBQu0fPlyHT9+XNK9YZpee+01tWnTRmnTpjXnXbJkifr27av69evft+aExWKRJP35559JkiMnT57UpEmTtG3bNkVFRalIkSL64IMPtHTpUi1evDjJ9yHdG3pr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1LBhQydvUcrl6emp+Ph4ffTRRzpw4IA6deqkd999V35+foqLi9OiRYv02Wefafv27dq2bZtq166tQoUKaezYsXr//fe1adMmvf/++xo7diyJi6fEcR5apUoVc59at26dDMNQhw4dVKxYMUlS0aJFZbfb9fHHH8tms933OLh7925dv35d1apVU0BAgLM2KcVK/GT+pUuXtHHjRpUsWVJ9+vSRl5eXcuTIoRw5cuj111/XqlWrFB4eroULF6pHjx4KCQlRQECAFixYoFq1apH8dTLH+efEiRM1efJkhYSEqEOHDkqdOrUuX76sSZMmacmSJbpx44Z69OihggULKjQ0VNK9xMWYMWNks9nUokULriWegjFjxujKlSvq1auXMmbMaP6uStKhQ4fM0RRSp04tSbJarRo0aJAKFy6smTNnqkuXLvrtt98UGhqqadOmqVChQpKkadOm6dKlS1zjA26KX1+kSLt371arVq00d+5cxcfHy8/PT6VKlVKuXLnMeQzDMC/2HEW6s2bNqpdeeklTp07VzJkz1ahRI508eVIJCQk6deqUZs6cKUmc2DxljhOagwcPmsOZOJ4ctVqt+uSTT1S0aFGtXbtWZcqUUWRkpEJDQ81x1yVp1KhR+vXXX5UvXz6nbENKdb+xRRM/CfP666/riy++kCSNGzdOU6dOlZR8nFnDMFSoUCE1b96chIUTOBIUkrR8+XJ99tlnCg0N1Xfffadjx45Jkho0aKD27dtLuneDtXz58ipatKi5jh07dmjy5MlKlSqVKleu/PQ3AmYdhDfeeENdu3bVzp07VaVKFfn7+8tms8lms8nHx0e9evVSu3btdO3aNQ0bNkw///yzYmJiJEklSpTQ22+/rQ8//JCExVPk+D1csmSJbDabMmfOrKNHj+qbb74xi6NLUrt27dS7d29J9548bd68ucLCwtS4cWONGDFCqVKl0pgxY8zeiHg6/nosPHnypLZt26aKFSuqW7duZhLXz89Py5cvl7e3t2rXrq3atWvrxIkTiouLU6FChfTVV18pQ4YM2rFjBzVJniIPDw/zWuHll1/WO++8o9KlS2vDhg2aNWuWWeOiTp06Cg0NNY+Z5cqVS3Ic3Llzp77++mulSpVKVatWdcq2pFSO4bscCYuJEyfqq6++0oULF/Tmm2+qWLFi5jBfjkLOdevW1aeffqq5c+eqffv2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JERdunRR0aJFVaZMGXXr1k3jx483b5q+++67OnjwoH7//Xf16NGD+hVO8MILL6hdu3aSpIULF2r8+PEyDEO1a9eWJGXPnl0VKlTQTz/9pIiICF29ejVZwkKS/vjjD/n6+po35uA8u3btkq+vr955550kx8EaNWoob968CggI0LJly+Tp6al27dqpRIkSypYtm5mkSIzj4NPRokULXbhwQd99951atmypu3fv6tVXXzXrwZQvX15jxozR+++/r+XLlytVqlQaMmTI3yYuHA8CpEqVSn5+foqMjFRsbKw5pA0ev7feekuenp766quvNGrUKEkyExfSvd9SSfryyy+1b98+LVy4UBUrVtQHH3xgJiyk/7vGTHzNiKfD8d3HxMSYD60lJCTo1q1bWr16taR75y2OoaLSpUsnHx8fnTlzRvHx8TIMQwsXLtTixYtVokQJs1YJgGcDSQs88w4cOKDp06dr7969ioyMlHTvKdK6devqvffeU+fOnZU2bVrNnTvXHIvdkbgICQlJkriw2WyqXbu2Zs2apaCgIE2cOFE+Pj4yDEMff/yxbty4oTRp0iguLo4T1Mfg3Llz5slm4ps03bp10/bt280xZqV7RdJ79+6t8uXLK0OGDEqXLp28vb3NuiU2m03ff/+9fvjhB5UoUUIlSpRw0lbB4eTJk7p165Z69eqlggULyjAMc/iZXLlyqWnTprp9+7Zmz56tTZs2qWLFipKkevXq6e7du7p27RoJi6ckPDxcbdu21YcffqgOHTqY0/fs2aNp06aZQyaUK1dOkuTj42M+JVqyZEl16tRJkszEhZeXl8qWLSsp+dOkJHyfPMcFYmxsrEaMGKE9e/bowIEDypo1q7JkyaJu3bqpcOHCypIli0aOHGkmLrp27fq3iQsSFk+Ho4ZMbGysWrdurQMHDujll1/Wq6++qkOHDun48ePatGmTtm3bpmnTpql06dLmfjlx4kT99NNP2rFjh27evKnMmTMneaoUT1fevHnVvn17BQYGavr06ebDM3Xr1lWmTJnUsGFD/fHHH7py5YrKlSunZs2aJUlYzJ07V7/++qtKlSpF4smJDMPQ3bt3zeFJE/8+OjiSVGfOnNGGDRvk7e0tT09PFStWzFxH4mMfx8GnIzAwUAMHDtT27dt15swZ+fr66pVXXlGuXLmS9A4dO3as3n//fS1atEiGYWjo0KH3TVx4enrKZrNp0KBBunz5sl588cX7DiWFx8Px/bdr104JCQmaOHGimbh44403lC5dOlWuXFmNGzfWDz/8oEWLFqlkyZIaMmRIkmThzp07tW3bNhUpUkTp0qVjOK+nyDAM83w0NDRUhw4dMh9G/PPPP3Xx4kV9//338vT0VJcuXZQhQwZlzJhRWbJkUXh4uJo3b24+mJolSxYNGzaMERSAZwyPcOCZtn37drVv314rV65UunTpVKVKFZUoUUIeHh6yWq3y9vbW888/r5YtW6ply5a6cuWKpk2bpmXLlslqtZo9LgYMGKAXX3xR69evV8+ePbV3716VKlXKPKHZvXu3zp8/r+zZs+uDDz4gYfEYDB061EwiOW7SxMXFqX379tq+fbteffVVTZ06VWPGjNEbb7yhixcvql+/flq9erViYmKUKVMmZcqUySzS1aRJEw0ZMkTe3t6c0DiZo3bF4cOHJcksXikpycVdlixZVL9+ffn5+em7777T8ePHzURV48aN9fbbbydZH56cffv2SZIiIiIUHx9vTi9RooT69u0rb29v2e12RUZG6saNG5Jk1huRZCYuqlSpovDwcE2cOFG///67OR+eHkeSISYmRq1atdJ3332nuLg4ValSRenSpdPevXv1/vvv65tvvtHp06fNxEWZMmV08OBBde3aVefOnTMTFsTvyfprUsExNOWIESN04MABdejQQePHj1fTpk01YMAADR8+XOnTp5ckbdmyxUwElylTRj169NArr7yiu3fvqlChQpoxY8Z9n/LGk5WQkCBJio+P1+nTpxUbG6u0adPq4MGDmj59ulatWiXp3gM0YWFh8vX1VXh4uL7++mvNmzdPW7ZsUb9+/TR8+HClTZtWn3zyidKlS+fMTUrRPDw85Ofnp/z58ys2NlYXL16Ul5dXst/GF198UVWqVDGHL506dar27t1rrgPOsWHDBp08eVIZM2aU1WrViBEjtG3bNnl4eJjnMY7ERbp06bR48WL1799f0r1zVsf+7BAZGandu3crX758+uijj6gT9JR07NhRzZs3l7e3t0aPHq3ly5fr+vXrkqQPPvhAlStXlmEYunjxom7fvm32ptm8ebNGjRqluLg4hYaGKnPmzOyPT5GHh4cSEhI0ZMgQ/fnnn+rUqZOWL1+uL774QrNmzdInn3yiPHnyaM6cOZo0aZKuXbum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"
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"warnings.filterwarnings('ignore')\n",
"msno.heatmap(df)\n",
"warnings.filterwarnings('default')"
],
"metadata": {
"collapsed": false,
"ExecuteTime": {
"end_time": "2023-06-20T09:46:05.067628400Z",
"start_time": "2023-06-20T09:46:04.681718300Z"
}
}
},
{
"cell_type": "code",
"execution_count": 12,
"outputs": [
{
"data": {
"text/plain": " City Year Sport Discipline Event Athlete Gender Country_Code Country \\\n770 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n771 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n772 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n773 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n774 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n.. ... ... ... ... ... ... ... ... ... \n882 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n883 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n884 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n885 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n886 NaN NaN NaN NaN NaN NaN NaN NaN NaN \n\n Event_gender Medal \n770 NaN NaN \n771 NaN NaN \n772 NaN NaN \n773 NaN NaN \n774 NaN NaN \n.. ... ... \n882 NaN NaN \n883 NaN NaN \n884 NaN NaN \n885 NaN NaN \n886 NaN NaN \n\n[117 rows x 11 columns]",
"text/html": "
"
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# verify if there are outliners defined as out of 3 standard deviation\n",
"numerical_cols = df.select_dtypes(include=['float64', 'int64'])\n",
"\n",
"means = numerical_cols.mean()\n",
"stds = numerical_cols.std()\n",
"\n",
"# set the threshold to 3 standard deviations\n",
"threshold = 3\n",
"\n",
"outliers = pd.DataFrame()\n",
"\n",
"for col in numerical_cols.columns:\n",
" col_outliers = df[(df[col] < means[col] - threshold * stds[col]) |\n",
" (df[col] > means[col] + threshold * stds[col])]\n",
" col_outliers['feature'] = col\n",
" outliers = pd.concat([outliers, col_outliers])\n",
"\n",
"outliers.head()"
],
"metadata": {
"collapsed": false,
"ExecuteTime": {
"end_time": "2023-06-20T09:46:05.225119700Z",
"start_time": "2023-06-20T09:46:05.146554900Z"
}
}
},
{
"cell_type": "code",
"execution_count": null,
"outputs": [],
"source": [],
"metadata": {
"collapsed": false
}
},
{
"cell_type": "code",
"execution_count": 19,
"outputs": [
{
"data": {
"text/plain": "array([[]], dtype=object)"
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"text/plain": "",
"image/png": "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"
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# check distribution\n",
"df_numeric_ = df.select_dtypes(include=[np.number])\n",
"df_numeric_.hist()"
],
"metadata": {
"collapsed": false,
"ExecuteTime": {
"end_time": "2023-06-20T09:47:41.224385500Z",
"start_time": "2023-06-20T09:47:41.114550700Z"
}
}
},
{
"cell_type": "code",
"execution_count": 16,
"outputs": [
{
"ename": "ValueError",
"evalue": "No variables found for grid columns.",
"output_type": "error",
"traceback": [
"\u001B[1;31m---------------------------------------------------------------------------\u001B[0m",
"\u001B[1;31mValueError\u001B[0m Traceback (most recent call last)",
"Cell \u001B[1;32mIn[16], line 2\u001B[0m\n\u001B[0;32m 1\u001B[0m \u001B[38;5;66;03m# check relation with df pairplot\u001B[39;00m\n\u001B[1;32m----> 2\u001B[0m \u001B[43msns\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mpairplot\u001B[49m\u001B[43m(\u001B[49m\u001B[43mdf\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;28;43mvars\u001B[39;49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mnumerical_cols\u001B[49m\u001B[38;5;241;43m.\u001B[39;49m\u001B[43mcolumns\u001B[49m\u001B[43m[\u001B[49m\u001B[43m:\u001B[49m\u001B[38;5;241;43m-\u001B[39;49m\u001B[38;5;241;43m1\u001B[39;49m\u001B[43m]\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mhue\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[38;5;124;43mGender\u001B[39;49m\u001B[38;5;124;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\n",
"File \u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\seaborn\\axisgrid.py:2114\u001B[0m, in \u001B[0;36mpairplot\u001B[1;34m(data, hue, hue_order, palette, vars, x_vars, y_vars, kind, diag_kind, markers, height, aspect, corner, dropna, plot_kws, diag_kws, grid_kws, size)\u001B[0m\n\u001B[0;32m 2112\u001B[0m \u001B[38;5;66;03m# Set up the PairGrid\u001B[39;00m\n\u001B[0;32m 2113\u001B[0m grid_kws\u001B[38;5;241m.\u001B[39msetdefault(\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mdiag_sharey\u001B[39m\u001B[38;5;124m\"\u001B[39m, diag_kind \u001B[38;5;241m==\u001B[39m \u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mhist\u001B[39m\u001B[38;5;124m\"\u001B[39m)\n\u001B[1;32m-> 2114\u001B[0m grid \u001B[38;5;241m=\u001B[39m \u001B[43mPairGrid\u001B[49m\u001B[43m(\u001B[49m\u001B[43mdata\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;28;43mvars\u001B[39;49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[38;5;28;43mvars\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mx_vars\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mx_vars\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43my_vars\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43my_vars\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mhue\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mhue\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m 2115\u001B[0m \u001B[43m \u001B[49m\u001B[43mhue_order\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mhue_order\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mpalette\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mpalette\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mcorner\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mcorner\u001B[49m\u001B[43m,\u001B[49m\n\u001B[0;32m 2116\u001B[0m \u001B[43m \u001B[49m\u001B[43mheight\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mheight\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43maspect\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43maspect\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mdropna\u001B[49m\u001B[38;5;241;43m=\u001B[39;49m\u001B[43mdropna\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[38;5;241;43m*\u001B[39;49m\u001B[43mgrid_kws\u001B[49m\u001B[43m)\u001B[49m\n\u001B[0;32m 2118\u001B[0m \u001B[38;5;66;03m# Add the markers here as PairGrid has figured out how many levels of the\u001B[39;00m\n\u001B[0;32m 2119\u001B[0m \u001B[38;5;66;03m# hue variable are needed and we don't want to duplicate that process\u001B[39;00m\n\u001B[0;32m 2120\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m markers \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m:\n",
"File \u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\seaborn\\axisgrid.py:1266\u001B[0m, in \u001B[0;36mPairGrid.__init__\u001B[1;34m(self, data, hue, vars, x_vars, y_vars, hue_order, palette, hue_kws, corner, diag_sharey, height, aspect, layout_pad, despine, dropna)\u001B[0m\n\u001B[0;32m 1263\u001B[0m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39msquare_grid \u001B[38;5;241m=\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39mx_vars \u001B[38;5;241m==\u001B[39m \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39my_vars\n\u001B[0;32m 1265\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m x_vars:\n\u001B[1;32m-> 1266\u001B[0m \u001B[38;5;28;01mraise\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m(\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mNo variables found for grid columns.\u001B[39m\u001B[38;5;124m\"\u001B[39m)\n\u001B[0;32m 1267\u001B[0m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m y_vars:\n\u001B[0;32m 1268\u001B[0m \u001B[38;5;28;01mraise\u001B[39;00m \u001B[38;5;167;01mValueError\u001B[39;00m(\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mNo variables found for grid rows.\u001B[39m\u001B[38;5;124m\"\u001B[39m)\n",
"\u001B[1;31mValueError\u001B[0m: No variables found for grid columns."
]
}
],
"source": [
"# check relation with df pairplot\n",
"sns.pairplot(df, vars=numerical_cols.columns[:-1], hue=\"Gender\")"
],
"metadata": {
"collapsed": false,
"ExecuteTime": {
"end_time": "2023-06-20T09:46:05.364587500Z",
"start_time": "2023-06-20T09:46:05.162190600Z"
}
}
},
{
"cell_type": "raw",
"source": [
"The best data would be to have already an information on how 2 persons are vewing each other and try to infere the missings. But in reality it would be harder have that and we could try another approach.\n",
"\n",
"We could propose how similar one person is to another and then propose a % of match.\n",
"\n",
"We only have the biological gender and not the sexual orientation, we would greatly increase the precision of the outcome having that information to do a better match.\n",
"\n",
"The idea could be to propose how similar these peoples are. One Idea is to try apply a dimension reduction an see the distance between 2 persons. That would be how similar 2 persons are based on the most important features.\n",
"\n",
"Another way would be to use all most important dimensions and find the eucledian distance.\n",
"\n",
"A third way is would be applyying a clustering model, and find groups of people that are in the same cluster and suppose they would be a couple.\n",
"\n",
"I dont have the time to do all so i will try the third option. Which is definetly possible with out data. Because the clustering is not a superviosiond learning alghoritm.\n",
"\n",
"In all cases would be good to apply a scaling of the data and having ranges between 0 and 1. Also since we miss the sexual preference we should pair with male/female sex only."
],
"metadata": {
"collapsed": false
}
},
{
"cell_type": "code",
"execution_count": null,
"outputs": [],
"source": [
"from sklearn.preprocessing import LabelEncoder, OrdinalEncoder, OneHotEncoder\n",
"from sklearn.preprocessing import MinMaxScaler, StandardScaler\n",
"\n"
],
"metadata": {
"collapsed": false,
"ExecuteTime": {
"start_time": "2023-06-20T09:46:05.333335800Z"
}
}
},
{
"cell_type": "code",
"execution_count": 20,
"outputs": [
{
"ename": "ValueError",
"evalue": "could not convert string to float: 'Montreal'",
"output_type": "error",
"traceback": [
"\u001B[1;31m---------------------------------------------------------------------------\u001B[0m",
"\u001B[1;31mValueError\u001B[0m Traceback (most recent call last)",
"\u001B[1;32m~\\AppData\\Local\\Temp\\ipykernel_21052\\2525431524.py\u001B[0m in \u001B[0;36m?\u001B[1;34m()\u001B[0m\n\u001B[1;32m----> 3\u001B[1;33m \u001B[1;32mfrom\u001B[0m \u001B[0msklearn\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mcluster\u001B[0m \u001B[1;32mimport\u001B[0m \u001B[0mKMeans\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0m\u001B[0;32m 4\u001B[0m \u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 5\u001B[0m \u001B[0mkmeans\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0mKMeans\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0mn_clusters\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;36m2\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mrandom_state\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;36m0\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mn_init\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;34m\"auto\"\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mfit\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0mdf\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n",
"\u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\sklearn\\cluster\\_kmeans.py\u001B[0m in \u001B[0;36m?\u001B[1;34m(self, X, y, sample_weight)\u001B[0m\n\u001B[0;32m 1413\u001B[0m \u001B[0mFitted\u001B[0m \u001B[0mestimator\u001B[0m\u001B[1;33m.\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 1414\u001B[0m \"\"\"\n\u001B[0;32m 1415\u001B[0m \u001B[0mself\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0m_validate_params\u001B[0m\u001B[1;33m(\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 1416\u001B[0m \u001B[1;33m\u001B[0m\u001B[0m\n\u001B[1;32m-> 1417\u001B[1;33m X = self._validate_data(\n\u001B[0m\u001B[0;32m 1418\u001B[0m \u001B[0mX\u001B[0m\u001B[1;33m,\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 1419\u001B[0m \u001B[0maccept_sparse\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;34m\"csr\"\u001B[0m\u001B[1;33m,\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 1420\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;33m[\u001B[0m\u001B[0mnp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mfloat64\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mnp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mfloat32\u001B[0m\u001B[1;33m]\u001B[0m\u001B[1;33m,\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n",
"\u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\sklearn\\base.py\u001B[0m in \u001B[0;36m?\u001B[1;34m(self, X, y, reset, validate_separately, **check_params)\u001B[0m\n\u001B[0;32m 531\u001B[0m \u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 532\u001B[0m \u001B[1;32mif\u001B[0m \u001B[0mno_val_X\u001B[0m \u001B[1;32mand\u001B[0m \u001B[0mno_val_y\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 533\u001B[0m \u001B[1;32mraise\u001B[0m \u001B[0mValueError\u001B[0m\u001B[1;33m(\u001B[0m\u001B[1;34m\"Validation should be done on X, y or both.\"\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 534\u001B[0m \u001B[1;32melif\u001B[0m \u001B[1;32mnot\u001B[0m \u001B[0mno_val_X\u001B[0m \u001B[1;32mand\u001B[0m \u001B[0mno_val_y\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[1;32m--> 535\u001B[1;33m \u001B[0mX\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0mcheck_array\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0mX\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0minput_name\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;34m\"X\"\u001B[0m\u001B[1;33m,\u001B[0m \u001B[1;33m**\u001B[0m\u001B[0mcheck_params\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0m\u001B[0;32m 536\u001B[0m \u001B[0mout\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0mX\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 537\u001B[0m \u001B[1;32melif\u001B[0m \u001B[0mno_val_X\u001B[0m \u001B[1;32mand\u001B[0m \u001B[1;32mnot\u001B[0m \u001B[0mno_val_y\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 538\u001B[0m \u001B[0my\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0m_check_y\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0my\u001B[0m\u001B[1;33m,\u001B[0m \u001B[1;33m**\u001B[0m\u001B[0mcheck_params\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n",
"\u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\sklearn\\utils\\validation.py\u001B[0m in \u001B[0;36m?\u001B[1;34m(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, estimator, input_name)\u001B[0m\n\u001B[0;32m 875\u001B[0m \u001B[0marray\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0mxp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mastype\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mcopy\u001B[0m\u001B[1;33m=\u001B[0m\u001B[1;32mFalse\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 876\u001B[0m \u001B[1;32melse\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 877\u001B[0m \u001B[0marray\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0m_asarray_with_order\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0morder\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0morder\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mdtype\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mxp\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mxp\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 878\u001B[0m \u001B[1;32mexcept\u001B[0m \u001B[0mComplexWarning\u001B[0m \u001B[1;32mas\u001B[0m \u001B[0mcomplex_warning\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[1;32m--> 879\u001B[1;33m raise ValueError(\n\u001B[0m\u001B[0;32m 880\u001B[0m \u001B[1;34m\"Complex data not supported\\n{}\\n\"\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mformat\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 881\u001B[0m ) from complex_warning\n\u001B[0;32m 882\u001B[0m \u001B[1;33m\u001B[0m\u001B[0m\n",
"\u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\sklearn\\utils\\_array_api.py\u001B[0m in \u001B[0;36m?\u001B[1;34m(array, dtype, order, copy, xp)\u001B[0m\n\u001B[0;32m 181\u001B[0m \u001B[1;32mif\u001B[0m \u001B[0mxp\u001B[0m \u001B[1;32mis\u001B[0m \u001B[1;32mNone\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 182\u001B[0m \u001B[0mxp\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0m_\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0mget_namespace\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 183\u001B[0m \u001B[1;32mif\u001B[0m \u001B[0mxp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0m__name__\u001B[0m \u001B[1;32min\u001B[0m \u001B[1;33m{\u001B[0m\u001B[1;34m\"numpy\"\u001B[0m\u001B[1;33m,\u001B[0m \u001B[1;34m\"numpy.array_api\"\u001B[0m\u001B[1;33m}\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 184\u001B[0m \u001B[1;31m# Use NumPy API to support order\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[1;32m--> 185\u001B[1;33m \u001B[0marray\u001B[0m \u001B[1;33m=\u001B[0m \u001B[0mnumpy\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0masarray\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0morder\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0morder\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mdtype\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0m\u001B[0;32m 186\u001B[0m \u001B[1;32mreturn\u001B[0m \u001B[0mxp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0masarray\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mcopy\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mcopy\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 187\u001B[0m \u001B[1;32melse\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0;32m 188\u001B[0m \u001B[1;32mreturn\u001B[0m \u001B[0mxp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0masarray\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0marray\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mdtype\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mcopy\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mcopy\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n",
"\u001B[1;32m~\\miniconda3\\envs\\MchineLearning\\lib\\site-packages\\pandas\\core\\generic.py\u001B[0m in \u001B[0;36m?\u001B[1;34m(self, dtype)\u001B[0m\n\u001B[0;32m 2069\u001B[0m \u001B[1;32mdef\u001B[0m \u001B[0m__array__\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0mself\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m:\u001B[0m \u001B[0mnpt\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mDTypeLike\u001B[0m \u001B[1;33m|\u001B[0m \u001B[1;32mNone\u001B[0m \u001B[1;33m=\u001B[0m \u001B[1;32mNone\u001B[0m\u001B[1;33m)\u001B[0m \u001B[1;33m->\u001B[0m \u001B[0mnp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0mndarray\u001B[0m\u001B[1;33m:\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[1;32m-> 2070\u001B[1;33m \u001B[1;32mreturn\u001B[0m \u001B[0mnp\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0masarray\u001B[0m\u001B[1;33m(\u001B[0m\u001B[0mself\u001B[0m\u001B[1;33m.\u001B[0m\u001B[0m_values\u001B[0m\u001B[1;33m,\u001B[0m \u001B[0mdtype\u001B[0m\u001B[1;33m=\u001B[0m\u001B[0mdtype\u001B[0m\u001B[1;33m)\u001B[0m\u001B[1;33m\u001B[0m\u001B[1;33m\u001B[0m\u001B[0m\n\u001B[0m",
"\u001B[1;31mValueError\u001B[0m: could not convert string to float: 'Montreal'"
]
}
],
"source": [
"from sklearn.cluster import KMeans\n",
"\n",
"kmeans = KMeans(n_clusters=5, random_state=0, n_init=\"auto\").fit(df)"
],
"metadata": {
"collapsed": false,
"ExecuteTime": {
"end_time": "2023-06-20T09:48:49.160378200Z",
"start_time": "2023-06-20T09:48:49.066666900Z"
}
}
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 0
}