{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"gpuType":"V28","authorship_tag":"ABX9TyNFsavRsbMSlQB8V41bPfJ2"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"},"accelerator":"TPU"},"cells":[{"cell_type":"code","source":["!pip install seaborn matplotlib scikit-learn\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"QS4Zv5o3S8kO","executionInfo":{"status":"ok","timestamp":1725105479506,"user_tz":-60,"elapsed":12643,"user":{"displayName":"Mail Cloud","userId":"01708480096028966588"}},"outputId":"0f4396e7-bcbe-427a-a194-9170820261eb"},"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["Requirement already satisfied: seaborn in /usr/local/lib/python3.10/dist-packages (0.13.1)\n","Requirement already satisfied: matplotlib in /usr/local/lib/python3.10/dist-packages (3.7.1)\n","Requirement already satisfied: scikit-learn in /usr/local/lib/python3.10/dist-packages (1.3.2)\n","Requirement already satisfied: numpy!=1.24.0,>=1.20 in /usr/local/lib/python3.10/dist-packages (from seaborn) (1.26.4)\n","Requirement already satisfied: pandas>=1.2 in /usr/local/lib/python3.10/dist-packages (from seaborn) (2.1.4)\n","Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (1.2.1)\n","Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (0.12.1)\n","Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (4.53.1)\n","Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (1.4.5)\n","Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (24.1)\n","Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (9.4.0)\n","Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (3.1.4)\n","Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.10/dist-packages (from matplotlib) (2.8.2)\n","Requirement already satisfied: scipy>=1.5.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (1.13.1)\n","Requirement already satisfied: joblib>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (1.4.2)\n","Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn) (3.5.0)\n","Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.2->seaborn) (2024.1)\n","Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.2->seaborn) (2024.1)\n","Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)\n"]}]},{"cell_type":"code","source":["# Import necessary libraries\n","import pandas as pd\n","from sklearn.model_selection import train_test_split, cross_val_score, GridSearchCV\n","from sklearn.impute import SimpleImputer\n","from sklearn.svm import SVC\n","from sklearn.metrics import accuracy_score, classification_report, confusion_matrix, roc_curve, auc\n","import matplotlib.pyplot as plt\n","import seaborn as sns\n","from sklearn.preprocessing import LabelBinarizer\n","\n","# Load the dataset\n","filename = \"dataset.csv\"\n","df = pd.read_csv(filename)\n","\n","# Separate features and labels\n","X = df.drop(columns=[\"Label\"]) # Features (all columns except the label)\n","y = df[\"Label\"] # Labels\n","\n","# Handle missing values by filling them with the mean of each column\n","imputer = SimpleImputer(strategy=\"mean\")\n","X = imputer.fit_transform(X)\n","\n","# Split the data into training and testing sets\n","X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)\n","\n","print(\"Training features shape:\", X_train.shape)\n","\n","# Initialize and train the SVM model\n","svm_model = SVC(kernel='linear', probability=True)\n","svm_model.fit(X_train, y_train)\n","\n","# Make predictions and evaluate the model\n","y_pred = svm_model.predict(X_test)\n","accuracy = accuracy_score(y_test, y_pred)\n","print(f\"Accuracy: {accuracy:.2f}\")\n","print(\"Classification Report:\\n\", classification_report(y_test, y_pred))\n","\n","# Confusion Matrix\n","conf_matrix = confusion_matrix(y_test, y_pred)\n","sns.heatmap(conf_matrix, annot=True, fmt='d', cmap='Blues')\n","plt.title('Confusion Matrix')\n","plt.xlabel('Predicted Label')\n","plt.ylabel('True Label')\n","plt.show()\n","\n","# Cross-Validation\n","cv_scores = cross_val_score(svm_model, X, y, cv=5)\n","print(f\"Cross-Validation Accuracy: {cv_scores.mean():.2f} ± {cv_scores.std():.2f}\")\n","\n","# ROC Curve and AUC (for binary classification only)\n","if len(set(y)) == 2:\n"," lb = LabelBinarizer()\n"," y_test_binarized = lb.fit_transform(y_test)\n"," y_pred_prob = svm_model.predict_proba(X_test)[:, 1]\n"," fpr, tpr, thresholds = roc_curve(y_test_binarized, y_pred_prob)\n"," roc_auc = auc(fpr, tpr)\n","\n"," plt.figure()\n"," plt.plot(fpr, tpr, color='darkorange', lw=2, label=f'ROC curve (area = {roc_auc:.2f})')\n"," plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')\n"," plt.xlim([0.0, 1.0])\n"," plt.ylim([0.0, 1.05])\n"," plt.xlabel('False Positive Rate')\n"," plt.ylabel('True Positive Rate')\n"," plt.title('Receiver Operating Characteristic (ROC)')\n"," plt.legend(loc=\"lower right\")\n"," plt.show()\n","\n","# Hyperparameter Tuning using Grid Search\n","param_grid = {'C': [0.1, 1, 10, 100], 'kernel': ['linear', 'rbf']}\n","grid_search = GridSearchCV(SVC(probability=True), param_grid, cv=5)\n","grid_search.fit(X_train, y_train)\n","print(f\"Best parameters: {grid_search.best_params_}\")\n","print(f\"Best cross-validation score: {grid_search.best_score_:.2f}\")\n"],"metadata":{"id":"Tn0Yi-ckCJpu","colab":{"base_uri":"https://localhost:8080/","height":1000},"executionInfo":{"status":"ok","timestamp":1725116993957,"user_tz":-60,"elapsed":11448407,"user":{"displayName":"Mail Cloud","userId":"01708480096028966588"}},"outputId":"9247f6cb-5e01-4b39-f1c2-931e8f018047"},"execution_count":2,"outputs":[{"output_type":"stream","name":"stdout","text":["Training features shape: (1864, 2)\n","Accuracy: 0.97\n","Classification Report:\n"," precision recall f1-score support\n","\n"," 0 0.97 1.00 0.99 408\n"," 1 1.00 0.80 0.89 59\n","\n"," accuracy 0.97 467\n"," macro avg 0.99 0.90 0.94 467\n","weighted avg 0.98 0.97 0.97 467\n","\n"]},{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAAhsAAAHHCAYAAAAWM5p0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABEHElEQVR4nO3de1xUdf7H8feAMCg4ICi3VfGaSl5Tw0nzkiaaupq2ZpqiWa4uuiVpRmt56UJrF00zbdtK17SLbdZmpZnXSrxkkaZlahaVXLwEisqgcH5/9HB+jaAyOgeEeT33cR4P53u+8z2fwy7rx8/3+z3HYhiGIQAAAJP4lHcAAACgciPZAAAApiLZAAAApiLZAAAApiLZAAAApiLZAAAApiLZAAAApiLZAAAApiLZAAAApiLZAEy0b98+9ezZU8HBwbJYLHr33Xc9Ov6PP/4oi8WiRYsWeXTciqxr167q2rVreYcB4A9INlDpHThwQH/961/VoEEDBQQEyGazqWPHjnruued0+vRpU6+dkJCgXbt26fHHH9eSJUvUrl07U69XlkaOHCmLxSKbzVbiz3Hfvn2yWCyyWCx6+umn3R7/0KFDmj59utLS0jwQLYDyVKW8AwDM9MEHH+gvf/mLrFarRowYoebNm6ugoECfffaZJk+erN27d+tf//qXKdc+ffq0UlNT9Y9//EPjx4835RoxMTE6ffq0/Pz8TBn/UqpUqaJTp07p/fff1+DBg13OLV26VAEBAcrPz7+ssQ8dOqQZM2aoXr16at26dam/9/HHH1/W9QCYh2QDldbBgwc1ZMgQxcTEaN26dYqKinKeS0xM1P79+/XBBx+Ydv3Dhw9LkkJCQky7hsViUUBAgGnjX4rValXHjh31+uuvF0s2li1bpj59+ui///1vmcRy6tQpVatWTf7+/mVyPQClxzQKKq1Zs2YpLy9PL7/8skuicU6jRo107733Oj+fPXtWjz76qBo2bCir1ap69erpoYceksPhcPlevXr11LdvX3322We6/vrrFRAQoAYNGug///mPs8/06dMVExMjSZo8ebIsFovq1asn6ffph3N//qPp06fLYrG4tK1Zs0adOnVSSEiIgoKC1KRJEz300EPO8xdas7Fu3TrdeOONCgwMVEhIiPr3769vv/22xOvt379fI0eOVEhIiIKDgzVq1CidOnXqwj/Y8wwdOlQfffSRcnJynG3bt2/Xvn37NHTo0GL9jx07pkmTJqlFixYKCgqSzWZT79699fXXXzv7bNiwQe3bt5ckjRo1yjkdc+4+u3btqubNm2vHjh3q3LmzqlWr5vy5nL9mIyEhQQEBAcXuPz4+XjVq1NChQ4dKfa8ALg/JBiqt999/Xw0aNNANN9xQqv533323HnnkEV133XWaPXu2unTpopSUFA0ZMqRY3/379+u2227TzTffrGeeeUY1atTQyJEjtXv3bknSwIEDNXv2bEnSHXfcoSVLlmjOnDluxb9792717dtXDodDM2fO1DPPPKM///nP+vzzzy/6vU8++UTx8fHKzs7W9OnTlZSUpM2bN6tjx4768ccfi/UfPHiwTpw4oZSUFA0ePFiLFi3SjBkzSh3nwIEDZbFY9M477zjbli1bpqZNm+q6664r1v+HH37Qu+++q759++rZZ5/V5MmTtWvXLnXp0sX5F3+zZs00c+ZMSdKYMWO0ZMkSLVmyRJ07d3aOc/ToUfXu3VutW7fWnDlz1K1btxLje+6551SrVi0lJCSosLBQkvTiiy/q448/1rx58xQdHV3qewVwmQygEsrNzTUkGf379y9V/7S0NEOScffdd7u0T5o0yZBkrFu3ztkWExNjSDI2bdrkbMvOzjasVqtx//33O9sOHjxoSDKeeuoplzETEhKMmJiYYjFMmzbN+OOv5OzZsw1JxuHDhy8Y97lrvPrqq8621q1bG+Hh4cbRo0edbV9//bXh4+NjjBgxotj17rrrLpcxb731ViMsLOyC1/zjfQQGBhqGYRi33Xab0b17d8MwDKOwsNCIjIw0ZsyYUeLPID8/3ygsLCx2H1ar1Zg5c6azbfv27cXu7ZwuXboYkoyFCxeWeK5Lly4ubatXrzYkGY899pjxww8/GEFBQcaAAQMueY8APIPKBiql48ePS5KqV69eqv4ffvihJCkpKcml/f7775ekYms7YmNjdeONNzo/16pVS02aNNEPP/xw2TGf79xaj/fee09FRUWl+k5GRobS0tI0cuRIhYaGOttbtmypm2++2XmffzR27FiXzzfeeKOOHj3q/BmWxtChQ7VhwwZlZmZq3bp1yszMLHEKRfp9nYePz+//11NYWKijR486p4i+/PLLUl/TarVq1KhRperbs2dP/fWvf9XMmTM1cOBABQQE6MUXXyz1tQBcGZINVEo2m02SdOLEiVL1/+mnn+Tj46NGjRq5tEdGRiokJEQ//fSTS3vdunWLjVGjRg399ttvlxlxcbfffrs6duyou+++WxERERoyZIjeeuutiyYe5+Js0qRJsXPNmjXTkSNHdPLkSZf28++lRo0akuTWvdxyyy2qXr263nzzTS1dulTt27cv9rM8p6ioSLNnz1bjxo1ltVpVs2ZN1apVSzt37lRubm6pr/mnP/3JrcWgTz/9tEJDQ5WWlqa5c+cqPDy81N8FcGVINlAp2Ww2RUdH65tvvnHre+cv0LwQX1/fEtsNw7jsa5xbT3BO1apVtWnTJn3yyScaPny4du7cqdtvv10333xzsb5X4kru5Ryr1aqBAwdq8eLFWrFixQWrGpL0xBNPKCkpSZ07d9Zrr72m1atXa82aNbr22mtLXcGRfv/5uOOrr75Sdna2JGnXrl1ufRfAlSHZQKXVt29fHThwQKmpqZfsGxMTo6KiIu3bt8+lPSsrSzk5Oc6dJZ5Qo0YNl50b55xfPZEkHx8fde/eXc8++6z27Nmjxx9/XOvWrdP69etLHPtcnHv37i127rvvvlPNmjUVGBh4ZTdwAUOHDtVXX32lEydOlLio9py3335b3bp108svv6whQ4aoZ8+e6tGjR7GfSWkTv9I4efKkRo0apdjYWI0ZM0azZs3S9u3bPTY+gIsj2UCl9cADDygwMFB33323srKyip0/cOCAnnvuOUm/TwNIKrZj5Nlnn5Uk9enTx2NxNWzYULm5udq5c6ezLSMjQytWrHDpd+zYsWLfPfdwq/O3454TFRWl1q1ba/HixS5/eX/zzTf6+OOPnfdphm7duunRRx/V888/r8jIyAv28/X1LVY1Wb58uX799VeXtnNJUUmJmbumTJmi9PR0LV68WM8++6zq1aunhISEC/4cAXgWD/VCpdWwYUMtW7ZMt99+u5o1a+byBNHNmzdr+fLlGjlypCSpVatWSkhI0L/+9S/l5OSoS5cu2rZtmxYvXqwBAwZccFvl5RgyZIimTJmiW2+9VX//+9916tQpLViwQNdcc43LAsmZM2dq06ZN6tOnj2JiYpSdna0XXnhBtWvXVqdOnS44/lNPPaXevXvLbrdr9OjROn36tObNm6fg4GBNnz7dY/dxPh8fH02dOvWS/fr27auZM2dq1KhRuuGGG7Rr1y4tXbpUDRo0cOnXsGFDhYSEaOHChapevboCAwMVFxen+vXruxXXunXr9MILL2jatGnOrbivvvqqunbtqocfflizZs1yazwAl6Gcd8MApvv++++Ne+65x6hXr57h7+9vVK9e3ejYsaMxb948Iz8/39nvzJkzxowZM4z69esbfn5+Rp06dYzk5GSXPobx+9bXPn36FLvO+VsuL7T11TAM4+OPPzaaN29u+Pv7G02aNDFee+21Yltf165da/Tv39+Ijo42/P39jejoaOOOO+4wvv/++2LXOH976CeffGJ07NjRqFq1qmGz2Yx+/foZe/bscelz7nrnb6199dVXDUnGwYMHL/gzNQzXra8XcqGtr/fff78RFRVlVK1a1ejYsaORmppa4pbV9957z4iNjTWqVKnicp9dunQxrr322hKv+cdxjh8/bsTExBjXXXedcebMGZd+EydONHx8fIzU1NSL3gOAK2cxDDdWgQEAALiJNRsAAMBUJBsAAMBUJBsAAMBUJBsAAMBUJBsAAMBUJBsAAMBUJBsAAMBUlfIJolXbjC/vEICr0m/bny/vEICrTkAZ/E3oqb+XTn9VMX+HqWwAAABTVcrKBgAAVxWLd//b3rvvHgCAsmCxeOa4Ak8++aQsFovuu+8+Z1t+fr4SExMVFhamoKAgDRo0qNhbstPT09WnTx9Vq1ZN4eHhmjx5ss6ePevWtUk2AAAwm8XHM8dl2r59u1588UW1bNnSpX3ixIl6//33tXz5cm3cuFGHDh3SwIEDnecLCwvVp08f59uyFy9erEWLFumRRx5x6/okGwAAVGJ5eXkaNmyYXnrpJdWoUcPZnpubq5dfflnPPvusbrrpJrVt21avvvqqNm/erC1btkiSPv74Y+3Zs0evvfaaWrdurd69e+vRRx/V/PnzVVBQUOoYSDYAADCbh6ZRHA6Hjh8/7nI4HI6LXjoxMVF9+vRRjx49XNp37NihM2fOuLQ3bdpUdevWVWpqqiQpNTVVLVq0UEREhLNPfHy8jh8/rt27d5f69kk2AAAwm4emUVJSUhQcHOxypKSkXPCyb7zxhr788ssS+2RmZsrf318hISEu7REREcrMzHT2+WOice78uXOlxW4UAAAqiOTkZCUlJbm0Wa3WEvv+/PPPuvfee7VmzRoFBASURXgXRGUDAACzeWgaxWq1ymazuRwXSjZ27Nih7OxsXXfddapSpYqqVKmijRs3au7cuapSpYoiIiJUUFCgnJwcl+9lZWUpMjJSkhQZGVlsd8q5z+f6lAbJBgAAZiuH3Sjdu3fXrl27lJaW5jzatWunYcOGOf/s5+entWvXOr+zd+9epaeny263S5Lsdrt27dql7OxsZ581a9bIZrMpNja21LEwjQIAQCVUvXp1NW/e3KUtMDBQYWFhzvbRo0crKSlJoaGhstlsmjBhgux2uzp06CBJ6tmzp2JjYzV8+HDNmjVLmZmZmjp1qhITEy9YUSkJyQYAAGa7wgdymWX27Nny8fHRoEGD5HA4FB8frxdeeMF53tfXVytXrtS4ceNkt9sVGBiohIQEzZw5063rWAzDMDwdfHnjRWxAyXgRG1BcmbyI7YaHPDLO6c1PeGScssaaDQAAYCqmUQAAMNtVOo1SVkg2AAAwm5e/9ZVkAwAAs3l5ZcO7Uy0AAGA6KhsAAJiNaRQAAGAqL082vPvuAQCA6ahsAABgNh/vXiBKsgEAgNmYRgEAADAPlQ0AAMzm5c/ZINkAAMBsTKMAAACYh8oGAABmYxoFAACYysunUUg2AAAwm5dXNrw71QIAAKajsgEAgNmYRgEAAKZiGgUAAMA8VDYAADAb0ygAAMBUTKMAAACYh8oGAABmYxoFAACYysuTDe++ewAAYDoqGwAAmM3LF4iSbAAAYDYvn0Yh2QAAwGxeXtnw7lQLAACYjsoGAABmYxoFAACYimkUAAAA85BsAABgMovF4pHDHQsWLFDLli1ls9lks9lkt9v10UcfOc937dq12Phjx451GSM9PV19+vRRtWrVFB4ersmTJ+vs2bNu3z/TKAAAmMzdRMETateurSeffFKNGzeWYRhavHix+vfvr6+++krXXnutJOmee+7RzJkznd+pVq2a88+FhYXq06ePIiMjtXnzZmVkZGjEiBHy8/PTE0884VYsJBsAAFRC/fr1c/n8+OOPa8GCBdqyZYsz2ahWrZoiIyNL/P7HH3+sPXv26JNPPlFERIRat26tRx99VFOmTNH06dPl7+9f6liYRgEAwGwWDx2XqbCwUG+88YZOnjwpu93ubF+6dKlq1qyp5s2bKzk5WadOnXKeS01NVYsWLRQREeFsi4+P1/Hjx7V79263rk9lAwAAk3lqGsXhcMjhcLi0Wa1WWa3WEvvv2rVLdrtd+fn5CgoK0ooVKxQbGytJGjp0qGJiYhQdHa2dO3dqypQp2rt3r9555x1JUmZmpkuiIcn5OTMz0624STYAAKggUlJSNGPGDJe2adOmafr06SX2b9KkidLS0pSbm6u3335bCQkJ2rhxo2JjYzVmzBhnvxYtWigqKkrdu3fXgQMH1LBhQ4/GTbIBAIDJPFXZSE5OVlJSkkvbhaoakuTv769GjRpJktq2bavt27frueee04svvlisb1xcnCRp//79atiwoSIjI7Vt2zaXPllZWZJ0wXUeF8KaDQAATOapra9Wq9W5lfXccbFk43xFRUXFpmHOSUtLkyRFRUVJkux2u3bt2qXs7GxnnzVr1shmszmnYkqLygYAACYrj62vycnJ6t27t+rWrasTJ05o2bJl2rBhg1avXq0DBw5o2bJluuWWWxQWFqadO3dq4sSJ6ty5s1q2bClJ6tmzp2JjYzV8+HDNmjVLmZmZmjp1qhITE91KcCSSDQAAKqXs7GyNGDFCGRkZCg4OVsuWLbV69WrdfPPN+vnnn/XJJ59ozpw5OnnypOrUqaNBgwZp6tSpzu/7+vpq5cqVGjdunOx2uwIDA5WQkODyXI7SshiGYXjy5q4GVduML+8QgKvSb9ufL+8QgKtOQBn8szt46BKPjJO7bLhHxilrVDYAADBZeUyjXE1YIAoAAExFZQMAAJN5e2WDZAMAAJN5e7LBNAoAADAVlQ0AAEzm7ZUNkg0AAMzm3bkG0ygAAMBcVDYAADAZ0ygAAMBUJBsAAMBU3p5ssGYDAACYisoGAABm8+7CBskGAABmYxoFAADARFQ2AAAwmbdXNkg2AAAwmbcnG0yjAAAAU1HZAADAZN5e2SDZAADAbN6dazCNAgAAzEVlAwAAkzGNAgAATEWyAQAATOXtyQZrNgAAgKmobAAAYDbvLmyQbAAAYDamUQAAAExEsoErMmnUzTr91fN6atIgZ5vVv4pmPzhYv6z/pw5//oxef/puhYdWd/le29i6+nDhBGVsmqVDG2fpf/MT1eKaP5V1+ECZe2PZUvW++Sa1b9NCw4b8Rbt27izvkFAGLBaLR46KimQDl61tbF2NHtRRO7//xaV91qRB6tO5uYY98LJ63j1HUbWC9cYzdzvPB1b113vzE/Vz5m/qPPxpdR/1rPJO5et/8xNVpQr/k0TlteqjD/X0rBT99W+JemP5CjVp0lTj/jpaR48eLe/QYDKSDeAyBFb116tPjNTfHn1dOcdPO9ttQQEaOcCuKc++o43bv9dX3/6sMdNek711Q13fop4kqUn9SIWFBOrRBSu176dsfftDph5/8SNF1rSpblRoOd0RYL4li1/VwNsGa8Ctg9SwUSNNnTZDAQEBeved/5Z3aICpyjXZOHLkiGbNmqVbb71Vdrtddrtdt956q5566ikdPny4PEPDJcxJvl2rPv1G67fudWlv06yu/P2qaN2W/2///scspWccU1zL+s7PR37LU8KAG+RXxVcBVj+NHGDXtz9k6KdDx8r0PoCycqagQN/u2a0O9hucbT4+PurQ4Qbt/PqrcowMZYHKRjnZvn27rrnmGs2dO1fBwcHq3LmzOnfurODgYM2dO1dNmzbVF198UV7h4SL+Et9WrZvW0cPz/lfsXGSYTY6CM8rNO+3Snn30uCLCbJKkvFMOxd/znO64pb1+2zJbRz5/Rjff0EwDxr+gwsKiMrkHoKz9lvObCgsLFRYW5tIeFhamI0eOlFNUKDMWDx0VVLltfZ0wYYL+8pe/aOHChcWyNcMwNHbsWE2YMEGpqakXHcfhcMjhcLh+v6hQFh9fj8cMqXZEiJ6aPEh9xz0vR8HZyxojwOqnhdOGKfXrH5SQ/Kp8fX1034juemfuOHW68ynlO854OGoAQHkqt2Tj66+/1qJFi0osC1ksFk2cOFFt2rS55DgpKSmaMWOGS5tvRHv5RV3vsVjx/9o0q6uIMJtSl01xtlWp4qtO1zXU2Ns7q1/ifFn9/RQcVNWluhEeZlPW0eOSpNt7t1Pd6FB1SXhGhmFIkhKSFylj0yz169pSy1fvKNubAspAjZAa8vX1LbYY9OjRo6pZs2Y5RYWyUpGnQDyh3KZRIiMjtW3btgue37ZtmyIiIi45TnJysnJzc12OKhFtPRkq/mD9tr1qe9vjihvypPPYsfsnvfHhF4ob8qS+3JOugjNn1S2uifM7jWPCVTcqVFt3HpQkVQvwV1GR4Uw0JKnIMGQYko+X/0Ki8vLz91ez2Gu1dcv/V2uLioq0dWuqWra69D+sULGVx5qNBQsWqGXLlrLZbLLZbLLb7froo4+c5/Pz85WYmKiwsDAFBQVp0KBBysrKchkjPT1dffr0UbVq1RQeHq7Jkyfr7Fn3q9rlVtmYNGmSxowZox07dqh79+7OxCIrK0tr167VSy+9pKeffvqS41itVlmtVpc2plDMk3fKoT0HMlzaTp4u0LHck872Re+m6p/3D9Sx3JM6cTJfz075i7Z8/YO27fpRkrR2y3d64r4BmpM8WAve2Cgfi0WTRvXU2cJCbfzi+7K+JaDMDE8YpYcfmqJrr22u5i1a6rUli3X69GkNuHVgeYcGk5XHv6Nq166tJ598Uo0bN5ZhGFq8eLH69++vr776Stdee60mTpyoDz74QMuXL1dwcLDGjx+vgQMH6vPPP5ckFRYWqk+fPoqMjNTmzZuVkZGhESNGyM/PT0888YRbsViMP/7zsoy9+eabmj17tnbs2KHCwkJJkq+vr9q2baukpCQNHjz4ssat2ma8J8PEJax+6V7t3PuLJj/9+/Y9q38VPZk0UIN7tZXVv4o+2fyt7k15U1lHTzi/c1NcU/3jr70V2yhKRUWGvv7uF02f/74zIYE5ftv+fHmH4PVeX/qaFr/6so4cOawmTZtpykNT1bJlq/IOy6sFlME/uxtN+ujSnUph/9O9r+j7oaGheuqpp3TbbbepVq1aWrZsmW677TZJ0nfffadmzZopNTVVHTp00EcffaS+ffvq0KFDzoLAwoULNWXKFB0+fFj+/v6lvm65JhvnnDlzxrkau2bNmvLz87ui8Ug2gJKRbADFlUWy0XjyKo+M881j3Yptiiipwn++wsJCLV++XAkJCfrqq6+UmZmp7t2767ffflNISIizX0xMjO677z5NnDhRjzzyiP73v/8pLS3Nef7gwYNq0KCBvvzyy1Ktqzznqniol5+fn6KiohQVFXXFiQYAAFcbi8UzR0pKioKDg12OlJSUC153165dCgoKktVq1dixY7VixQrFxsYqMzNT/v7+LomGJEVERCgzM1OSlJmZWWzt5LnP5/qUFm99BQCggkhOTlZSUpJL28WqGk2aNFFaWppyc3P19ttvKyEhQRs3bjQ7zGJINgAAMJmntr6WZsrkj/z9/dWoUSNJUtu2bbV9+3Y999xzuv3221VQUKCcnByX6kZWVpYiIyMllbxr9NxulXN9SuuqmEYBAKAy89Q0ypUqKiqSw+FQ27Zt5efnp7Vr1zrP7d27V+np6bLb7ZIku92uXbt2KTs729lnzZo1stlsio2Ndeu6VDYAAKiEkpOT1bt3b9WtW1cnTpzQsmXLtGHDBq1evVrBwcEaPXq0kpKSFBoaKpvNpgkTJshut6tDhw6SpJ49eyo2NlbDhw/XrFmzlJmZqalTpyoxMdGt6opEsgEAgOl8fMr+QRvZ2dkaMWKEMjIyFBwcrJYtW2r16tW6+eabJUmzZ8+Wj4+PBg0aJIfDofj4eL3wwgvO7/v6+mrlypUaN26c7Ha7AgMDlZCQoJkzZ7ody1Wx9dXT2PoKlIytr0BxZbH19dp/fOyRcXY/3tMj45Q11mwAAABTMY0CAIDJvP1FbCQbAACYzMtzDZINAADM5u2VDdZsAAAAU1HZAADAZN5e2SDZAADAZF6eazCNAgAAzEVlAwAAkzGNAgAATOXluQbTKAAAwFxUNgAAMBnTKAAAwFRenmswjQIAAMxFZQMAAJMxjQIAAEzl5bkGyQYAAGbz9soGazYAAICpqGwAAGAyLy9skGwAAGA2plEAAABMRGUDAACTeXlhg2QDAACzMY0CAABgIiobAACYzMsLGyQbAACYjWkUAAAAE1HZAADAZN5e2SDZAADAZF6ea5BsAABgNm+vbLBmAwAAmIrKBgAAJvPywgbJBgAAZmMaBQAAwEQkGwAAmMxi8czhjpSUFLVv317Vq1dXeHi4BgwYoL1797r06dq1qywWi8sxduxYlz7p6enq06ePqlWrpvDwcE2ePFlnz551KxamUQAAMJlPOUyjbNy4UYmJiWrfvr3Onj2rhx56SD179tSePXsUGBjo7HfPPfdo5syZzs/VqlVz/rmwsFB9+vRRZGSkNm/erIyMDI0YMUJ+fn564oknSh0LyQYAAJXQqlWrXD4vWrRI4eHh2rFjhzp37uxsr1atmiIjI0sc4+OPP9aePXv0ySefKCIiQq1bt9ajjz6qKVOmaPr06fL39y9VLEyjAABgMk9NozgcDh0/ftzlcDgcpYohNzdXkhQaGurSvnTpUtWsWVPNmzdXcnKyTp065TyXmpqqFi1aKCIiwtkWHx+v48ePa/fu3aW+f5INAABMdv66iMs9UlJSFBwc7HKkpKRc8vpFRUW677771LFjRzVv3tzZPnToUL322mtav369kpOTtWTJEt15553O85mZmS6JhiTn58zMzFLfP9MoAACYzMdDSzaSk5OVlJTk0ma1Wi/5vcTERH3zzTf67LPPXNrHjBnj/HOLFi0UFRWl7t2768CBA2rYsKFnghaVDQAAKgyr1SqbzeZyXCrZGD9+vFauXKn169erdu3aF+0bFxcnSdq/f78kKTIyUllZWS59zn2+0DqPkpBsAABgMk9No7jDMAyNHz9eK1as0Lp161S/fv1LfictLU2SFBUVJUmy2+3atWuXsrOznX3WrFkjm82m2NjYUsfCNAoAACYrjweIJiYmatmyZXrvvfdUvXp15xqL4OBgVa1aVQcOHNCyZct0yy23KCwsTDt37tTEiRPVuXNntWzZUpLUs2dPxcbGavjw4Zo1a5YyMzM1depUJSYmlmr65hwqGwAAVEILFixQbm6uunbtqqioKOfx5ptvSpL8/f31ySefqGfPnmratKnuv/9+DRo0SO+//75zDF9fX61cuVK+vr6y2+268847NWLECJfncpQGlQ0AAExmUdmXNgzDuOj5OnXqaOPGjZccJyYmRh9++OEVxUKyAQCAyTy1G6WiKlWysXPnzlIPeG6eBwAAQCplstG6dWtZLJYLlmTOnbNYLCosLPRogAAAVHTe/or5UiUbBw8eNDsOAAAqLS/PNUqXbMTExJgdBwAAqKQua+vrkiVL1LFjR0VHR+unn36SJM2ZM0fvvfeeR4MDAKAy8LFYPHJUVG4nGwsWLFBSUpJuueUW5eTkONdohISEaM6cOZ6ODwCACs9Tb32tqNxONubNm6eXXnpJ//jHP+Tr6+tsb9eunXbt2uXR4AAAqAzK43HlVxO3k42DBw+qTZs2xdqtVqtOnjzpkaAAAEDl4XayUb9+feeLWv5o1apVatasmSdiAgCgUvH2aRS3nyCalJSkxMRE5efnyzAMbdu2Ta+//rpSUlL073//24wYAQCo0Cry4k5PcDvZuPvuu1W1alVNnTpVp06d0tChQxUdHa3nnntOQ4YMMSNGAABQgV3Wu1GGDRumYcOG6dSpU8rLy1N4eLin4wIAoNLw7rrGFbyILTs7W3v37pX0+yrbWrVqeSwoAAAqk4q8k8QT3F4geuLECQ0fPlzR0dHq0qWLunTpoujoaN15553Kzc01I0YAAFCBuZ1s3H333dq6das++OAD5eTkKCcnRytXrtQXX3yhv/71r2bECABAheZj8cxRUbk9jbJy5UqtXr1anTp1crbFx8frpZdeUq9evTwaHAAAlQHTKG4KCwtTcHBwsfbg4GDVqFHDI0EBAIDKw+1kY+rUqUpKSlJmZqazLTMzU5MnT9bDDz/s0eAAAKgMeKhXKbRp08alBLRv3z7VrVtXdevWlSSlp6fLarXq8OHDrNsAAOA83j6NUqpkY8CAASaHAQBA5VWRF3d6QqmSjWnTppkdBwAAqKQu+6FeAACgdJhGcVNhYaFmz56tt956S+np6SooKHA5f+zYMY8FBwBAZeDdqcZl7EaZMWOGnn32Wd1+++3Kzc1VUlKSBg4cKB8fH02fPt2EEAEAQEXmdrKxdOlSvfTSS7r//vtVpUoV3XHHHfr3v/+tRx55RFu2bDEjRgAAKjQfi8UjR0XldrKRmZmpFi1aSJKCgoKc70Pp27evPvjgA89GBwBAJeDtz9lwO9moXbu2MjIyJEkNGzbUxx9/LEnavn27rFarZ6MDAAAVntvJxq233qq1a9dKkiZMmKCHH35YjRs31ogRI3TXXXd5PEAAACo6i8XikaOicns3ypNPPun88+23366YmBht3rxZjRs3Vr9+/TwaHAAAlUEFzhM8wu3Kxvk6dOigpKQkxcXF6YknnvBETAAAoBK54mTjnIyMDF7EBgBACbx9NwpPEAUAwGQVOE/wCJINAABMVpEXd3qCx6ZRAADA1SMlJUXt27dX9erVFR4ergEDBmjv3r0uffLz85WYmKiwsDAFBQVp0KBBysrKcumTnp6uPn36qFq1agoPD9fkyZN19uxZt2IpdWUjKSnpoucPHz7s1oXNlJ06t7xDAK5KWbmO8g4BuOrEhJn/jKjy+Jf9xo0blZiYqPbt2+vs2bN66KGH1LNnT+3Zs0eBgYGSpIkTJ+qDDz7Q8uXLFRwcrPHjx2vgwIH6/PPPJf3+PrQ+ffooMjJSmzdvVkZGhkaMGCE/Pz+3NoVYDMMwStOxW7dupRpw/fr1pb64WU7kF5V3CMBV6djJM+UdAnDVKYtk4+/vfueRceYOaHrZ3z18+LDCw8O1ceNGde7cWbm5uapVq5aWLVum2267TZL03XffqVmzZkpNTVWHDh300UcfqW/fvjp06JAiIiIkSQsXLtSUKVN0+PBh+fv7l+rapa5sXA1JBAAAuDznXi8SGhoqSdqxY4fOnDmjHj16OPs0bdpUdevWdSYbqampatGihTPRkKT4+HiNGzdOu3fvVps2bUp1bRaIAgBgMh8PrQ91OBxyOFynQ61W6yVfF1JUVKT77rtPHTt2VPPmzSX9/q4zf39/hYSEuPSNiIhQZmams88fE41z58+dKy0WiAIAYDIfi2eOlJQUBQcHuxwpKSmXvH5iYqK++eYbvfHGG2Vwt8VR2QAAoIJITk4utmHjUlWN8ePHa+XKldq0aZNq167tbI+MjFRBQYFycnJcqhtZWVmKjIx09tm2bZvLeOd2q5zrUxpUNgAAMJmnXsRmtVpls9lcjgslG4ZhaPz48VqxYoXWrVun+vXru5xv27at/Pz8nC9XlaS9e/cqPT1ddrtdkmS327Vr1y5lZ2c7+6xZs0Y2m02xsbGlvn8qGwAAmMxTazbckZiYqGXLlum9995T9erVnWssgoODVbVqVQUHB2v06NFKSkpSaGiobDabJkyYILvdrg4dOkiSevbsqdjYWA0fPlyzZs1SZmampk6dqsTExEtWVP7osiobn376qe68807Z7Xb9+uuvkqQlS5bos88+u5zhAACAhy1YsEC5ubnq2rWroqKinMebb77p7DN79mz17dtXgwYNUufOnRUZGal33nnHed7X11crV66Ur6+v7Ha77rzzTo0YMUIzZ850Kxa3Kxv//e9/NXz4cA0bNkxfffWVc1Vsbm6unnjiCX344YfuDgkAQKVWHk8rL81jtAICAjR//nzNnz//gn1iYmKu+O92tysbjz32mBYuXKiXXnpJfn5+zvaOHTvqyy+/vKJgAACojHjrq5v27t2rzp07F2sPDg5WTk6OJ2ICAKBS8fbdGG7ff2RkpPbv31+s/bPPPlODBg08EhQAAKg83E427rnnHt17773aunWrLBaLDh06pKVLl2rSpEkaN26cGTECAFChWSyeOSoqt6dRHnzwQRUVFal79+46deqUOnfuLKvVqkmTJmnChAlmxAgAQIVWkddbeEKp3/p6voKCAu3fv195eXmKjY1VUFCQp2O7bLz1FSgZb30FiiuLt74+vGqfR8Z5tFdjj4xT1i77oV7+/v5uPT0MAABv5eWFDfeTjW7duslykZ/aunXrriggAAAqm/J4gujVxO1ko3Xr1i6fz5w5o7S0NH3zzTdKSEjwVFwAAKCScDvZmD17dont06dPV15e3hUHBABAZePtC0Q99pyRO++8U6+88oqnhgMAoNLw9q2vHks2UlNTFRAQ4KnhAABAJeH2NMrAgQNdPhuGoYyMDH3xxRd6+OGHPRYYAACVBQtE3RQcHOzy2cfHR02aNNHMmTPVs2dPjwUGAEBlYZF3ZxtuJRuFhYUaNWqUWrRooRo1apgVEwAAlYq3VzbcWrPh6+urnj178nZXAABQam4vEG3evLl++OEHM2IBAKBS8rF45qio3E42HnvsMU2aNEkrV65URkaGjh8/7nIAAABXFovFI0dFVeo1GzNnztT999+vW265RZL05z//2eXGDcOQxWJRYWGh56MEAAAVVqmTjRkzZmjs2LFav369mfEAAFDpVOQpEE8odbJx7k30Xbp0MS0YAAAqowo8A+IRbq3ZqMjzRQAAoHy49ZyNa6655pIJx7Fjx64oIAAAKhtvfxGbW8nGjBkzij1BFAAAXBxrNtwwZMgQhYeHmxULAACohEqdbLBeAwCAy+Ptf4W6vRsFAAC4x4cXsZVOUVGRmXEAAFBpeXtlw+3HlQMAALjDrQWiAADAfexGAQAApvL252wwjQIAAExFZQMAAJN5eWGDZAMAALMxjQIAAGAikg0AAExmsXjmcNemTZvUr18/RUdHy2Kx6N1333U5P3LkSFksFpejV69eLn2OHTumYcOGyWazKSQkRKNHj1ZeXp5bcZBsAABgMh8PHe46efKkWrVqpfnz51+wT69evZSRkeE8Xn/9dZfzw4YN0+7du7VmzRqtXLlSmzZt0pgxY9yKgzUbAABUUr1791bv3r0v2sdqtSoyMrLEc99++61WrVql7du3q127dpKkefPm6ZZbbtHTTz+t6OjoUsVBZQMAAJOdP1VxuYfD4dDx48ddDofDcUWxbdiwQeHh4WrSpInGjRuno0ePOs+lpqYqJCTEmWhIUo8ePeTj46OtW7eW+hokGwAAmMzioSMlJUXBwcEuR0pKymXH1atXL/3nP//R2rVr9c9//lMbN25U7969VVhYKEnKzMxUeHi4y3eqVKmi0NBQZWZmlvo6TKMAAGAyT219TU5OVlJSkkub1Wq97PGGDBni/HOLFi3UsmVLNWzYUBs2bFD37t0ve9zzUdkAAKCCsFqtstlsLseVJBvna9CggWrWrKn9+/dLkiIjI5Wdne3S5+zZszp27NgF13mUhGQDAACTeWoaxWy//PKLjh49qqioKEmS3W5XTk6OduzY4eyzbt06FRUVKS4urtTjMo0CAIDJyusBonl5ec4qhSQdPHhQaWlpCg0NVWhoqGbMmKFBgwYpMjJSBw4c0AMPPKBGjRopPj5ektSsWTP16tVL99xzjxYuXKgzZ85o/PjxGjJkSKl3okhUNgAAqLS++OILtWnTRm3atJEkJSUlqU2bNnrkkUfk6+urnTt36s9//rOuueYajR49Wm3bttWnn37qMjWzdOlSNW3aVN27d9ctt9yiTp066V//+pdbcVgMwzA8emdXgRP5ReUdAnBVOnbyTHmHAFx1YsI8t+bhQl7/6lePjHNHmz95ZJyyxjQKAAAm8/ZpBG+/fwAAYDIqGwAAmMzi5a+YJ9kAAMBk3p1qMI0CAABMRmUDAACTMY0CAABM5e3TCCQbAACYzNsrG96ebAEAAJNR2QAAwGTeXdcg2QAAwHRePovCNAoAADAXlQ0AAEzm4+UTKSQbAACYjGkUAAAAE1HZAADAZBamUQAAgJmYRgEAADARlQ0AAEzGbhQAAGAqb59GIdkAAMBk3p5ssGYDAACYisoGAAAmY+srAAAwlY935xpMowAAAHNR2QAAwGRMowAAAFOxGwUAAMBEVDYAADAZ0ygAAMBU7EYBAAAwEZUNXLEvd2zXkkWv6Ntvd+vI4cN6evY8db2phyTp7JkzeuH55/T5Z5v06y+/KKh6kK6Ps2vCvferVnh4OUcOlJ03/vOyXln4nG4dPEzj7puizIxfNWJQ7xL7Tn3saXW+qWcZRwgzMY0CXKHTp0+rcZMm+vOAgZqc9HeXc/n5+fruuz26e8w4NW7SVCeO5+rpf6Yo6d6/acnrb5dTxEDZ2rvnG33w3nI1aHSNs61WeKTeeH+dS78P33tby5ctUvsOnco6RJjM23ejkGzginXs1FkdO3Uu8VxQ9ep64cVXXNoeSJ6qhGGDlZlxSJFR0WURIlBuTp86pSdnJGvig9O1bNG/nO2+vr4KDavp0vfzjevU+aZ4Va1WrazDhMm8PNdgzQbKXl7eCVksFgVVt5V3KIDp5j3zuK6/4UZd177DRft9/90eHdj3nXr1u7WMIoM32LRpk/r166fo6GhZLBa9++67LucNw9AjjzyiqKgoVa1aVT169NC+fftc+hw7dkzDhg2TzWZTSEiIRo8erby8PLfiuKqTjZ9//ll33XXXRfs4HA4dP37c5XA4HGUUIdzlcDg0b84ziu/dR0FBQeUdDmCq9Ws+0v6932r02Hsv2XfV+++obr0GurZFa/MDQ5nzsVg8crjr5MmTatWqlebPn1/i+VmzZmnu3LlauHChtm7dqsDAQMXHxys/P9/ZZ9iwYdq9e7fWrFmjlStXatOmTRozZox79+925GXo2LFjWrx48UX7pKSkKDg42OV45qknyyhCuOPsmTN6cPJEGYahB/8xrbzDAUyVnZWpBXP+qQenPyl/q/WifR2OfK1f85F69aWqUVlZPHS4q3fv3nrsscd0663F/7dlGIbmzJmjqVOnqn///mrZsqX+85//6NChQ84KyLfffqtVq1bp3//+t+Li4tSpUyfNmzdPb7zxhg4dOlTqOMp1zcb//ve/i57/4YcfLjlGcnKykpKSXNoKDL8riguedy7RyMw4pAUvvUpVA5Xevu/2KOe3Y/rbqNudbUWFhdqVtkPv/fcNfbDhC/n6+kqSPl23Ro780+rRu195hYsKwuFwFKveW61WWS+R0Jbk4MGDyszMVI8ePZxtwcHBiouLU2pqqoYMGaLU1FSFhISoXbt2zj49evSQj4+Ptm7dWmISU5JyTTYGDBggi8UiwzAu2MdyibJRST/kE/lFHokPnnEu0UhP/0kv/nuxQkJqlHdIgOnatIvTi0v+69L2zOOPqE5MfQ2+c5Qz0ZCkVStXqEOnrgqpEVrWYaKseGiFaEpKimbMmOHSNm3aNE2fPt3tsTIzMyVJERERLu0RERHOc5mZmQo/7zEFVapUUWhoqLNPaZRrshEVFaUXXnhB/fv3L/F8Wlqa2rZtW8ZRwV2nTp3Uz+npzs+//vqL9n73rYKDg1WzZi09MOk+7f12j2bPW6DCokIdOXJY0u8ZtJ+ff3mFDZiqWmCg6jds7NIWULWqbMHBLu2//pKuXWk79NgzJc+po3Lw1HM2SqrmX05Vo6yVa7LRtm1b7dix44LJxqWqHrg67Nm9W2PvTnB+nv30PyVJff88QGPGjtemDb8/S2DoYNdy28J/L1a79teXXaDAVWj1yhWqGR6httffUN6hoAK43CmTkkRGRkqSsrKyFBUV5WzPyspS69atnX2ys7Ndvnf27FkdO3bM+f3SKNdkY/LkyTp58uQFzzdq1Ejr168vw4hwOdq1v15ffP3tBc9f7BzgTZ6e/0qxtrvG3qu7SrFbBRXb1fhQr/r16ysyMlJr1651JhfHjx/X1q1bNW7cOEmS3W5XTk6OduzY4ZxpWLdunYqKihQXF1fqa5VrsnHjjTde9HxgYKC6dOlSRtEAAGCO8so18vLytH//fufngwcPKi0tTaGhoapbt67uu+8+PfbYY2rcuLHq16+vhx9+WNHR0RowYIAkqVmzZurVq5fuueceLVy4UGfOnNH48eM1ZMgQRUeX/qGMPEEUAIBK6osvvlC3bt2cn8+t90hISNCiRYv0wAMP6OTJkxozZoxycnLUqVMnrVq1SgEBAc7vLF26VOPHj1f37t3l4+OjQYMGae7cuW7FYTEq4aIIdqMAJTt28kx5hwBcdWLCzF9guf1grkfGaV8/2CPjlDUqGwAAmIy3vgIAAFNdjQtEy9JV/bhyAABQ8VHZAADAZF5e2CDZAADAdF6ebTCNAgAATEVlAwAAk7EbBQAAmIrdKAAAACaisgEAgMm8vLBBsgEAgOm8PNtgGgUAAJiKygYAACZjNwoAADCVt+9GIdkAAMBkXp5rsGYDAACYi8oGAABm8/LSBskGAAAm8/YFokyjAAAAU1HZAADAZOxGAQAApvLyXINpFAAAYC4qGwAAmM3LSxskGwAAmIzdKAAAACaisgEAgMnYjQIAAEzl5bkGyQYAAKbz8myDNRsAAMBUVDYAADCZt+9GIdkAAMBk3r5AlGkUAABgKiobAACYzMsLGyQbAACYzsuzDaZRAACohKZPny6LxeJyNG3a1Hk+Pz9fiYmJCgsLU1BQkAYNGqSsrCxTYiHZAADAZBYP/cdd1157rTIyMpzHZ5995jw3ceJEvf/++1q+fLk2btyoQ4cOaeDAgZ68bSemUQAAMFl57UapUqWKIiMji7Xn5ubq5Zdf1rJly3TTTTdJkl599VU1a9ZMW7ZsUYcOHTwaB5UNAAAqCIfDoePHj7scDofjgv337dun6OhoNWjQQMOGDVN6erokaceOHTpz5ox69Ojh7Nu0aVPVrVtXqampHo+bZAMAAJNZPHSkpKQoODjY5UhJSSnxmnFxcVq0aJFWrVqlBQsW6ODBg7rxxht14sQJZWZmyt/fXyEhIS7fiYiIUGZmpsfvn2kUAADM5qFplOTkZCUlJbm0Wa3WEvv27t3b+eeWLVsqLi5OMTExeuutt1S1alXPBFRKJBsAAJjMU48rt1qtF0wuLiUkJETXXHON9u/fr5tvvlkFBQXKyclxqW5kZWWVuMbjSjGNAgCAF8jLy9OBAwcUFRWltm3bys/PT2vXrnWe37t3r9LT02W32z1+bSobAACYrDx2o0yaNEn9+vVTTEyMDh06pGnTpsnX11d33HGHgoODNXr0aCUlJSk0NFQ2m00TJkyQ3W73+E4UiWQDAADTlcfO119++UV33HGHjh49qlq1aqlTp07asmWLatWqJUmaPXu2fHx8NGjQIDkcDsXHx+uFF14wJRaLYRiGKSOXoxP5ReUdAnBVOnbyTHmHAFx1YsIubw2EO34+duHtqe6oE2p+rGagsgEAgMm8/RXzJBsAAJjOu7MNdqMAAABTUdkAAMBkTKMAAABTeXmuwTQKAAAwF5UNAABMxjQKAAAwlafejVJRkWwAAGA27841WLMBAADMRWUDAACTeXlhg2QDAACzefsCUaZRAACAqahsAABgMnajAAAAc3l3rsE0CgAAMBeVDQAATOblhQ2SDQAAzMZuFAAAABNR2QAAwGTsRgEAAKZiGgUAAMBEJBsAAMBUTKMAAGAyb59GIdkAAMBk3r5AlGkUAABgKiobAACYjGkUAABgKi/PNZhGAQAA5qKyAQCA2by8tEGyAQCAydiNAgAAYCIqGwAAmIzdKAAAwFRenmswjQIAgOksHjouw/z581WvXj0FBAQoLi5O27Ztu6JbuRwkGwAAVFJvvvmmkpKSNG3aNH355Zdq1aqV4uPjlZ2dXaZxWAzDMMr0imXgRH5ReYcAXJWOnTxT3iEAV52YMKvp1zjtoV+9qn7u9Y+Li1P79u31/PPPS5KKiopUp04dTZgwQQ8++KBngioFKhsAAJjMYvHM4Y6CggLt2LFDPXr0cLb5+PioR48eSk1N9fAdXhwLRAEAqCAcDoccDodLm9VqldVavDpz5MgRFRYWKiIiwqU9IiJC3333nalxnq9SJhvVAyjYXA0cDodSUlKUnJxc4i8Cyl71AP57uBrwu+F9Ajz0t+30x1I0Y8YMl7Zp06Zp+vTpnrmASSrlmg1cHY4fP67g4GDl5ubKZrOVdzjAVYPfDVwudyobBQUFqlatmt5++20NGDDA2Z6QkKCcnBy99957ZofrRAkAAIAKwmq1ymazuRwXqo75+/urbdu2Wrt2rbOtqKhIa9euld1uL6uQJVXSaRQAACAlJSUpISFB7dq10/XXX685c+bo5MmTGjVqVJnGQbIBAEAldfvtt+vw4cN65JFHlJmZqdatW2vVqlXFFo2ajWQDprFarZo2bRoL4IDz8LuBsjR+/HiNHz++XGNggSgAADAVC0QBAICpSDYAAICpSDYAAICpSDYAAICpSDZgmvnz56tevXoKCAhQXFyctm3bVt4hAeVq06ZN6tevn6Kjo2WxWPTuu++Wd0hAmSDZgCnefPNNJSUladq0afryyy/VqlUrxcfHKzs7u7xDA8rNyZMn1apVK82fP7+8QwHKFFtfYYq4uDi1b99ezz//vKTfH5Fbp04dTZgwQQ8++GA5RweUP4vFohUrVri8swKorKhswOMKCgq0Y8cO9ejRw9nm4+OjHj16KDU1tRwjAwCUB5INeNyRI0dUWFhY7HG4ERERyszMLKeoAADlhWQDAACYimQDHlezZk35+voqKyvLpT0rK0uRkZHlFBUAoLyQbMDj/P391bZtW61du9bZVlRUpLVr18put5djZACA8sBbX2GKpKQkJSQkqF27drr++us1Z84cnTx5UqNGjSrv0IByk5eXp/379zs/Hzx4UGlpaQoNDVXdunXLMTLAXGx9hWmef/55PfXUU8rMzFTr1q01d+5cxcXFlXdYQLnZsGGDunXrVqw9ISFBixYtKvuAgDJCsgEAAEzFmg0AAGAqkg0AAGAqkg0AAGAqkg0AAGAqkg0AAGAqkg0AAGAqkg0AAGAqkg3gKjBy5EgNGDDA+blr16667777yjyODRs2yGKxKCcnx7RrnH+vl6Ms4gTgOSQbwAWMHDlSFotFFotF/v7+atSokWbOnKmzZ8+afu133nlHjz76aKn6lvVfvPXq1dOcOXPK5FoAKgfejQJcRK9evfTqq6/K4XDoww8/VGJiovz8/JScnFysb0FBgfz9/T1y3dDQUI+MAwBXAyobwEVYrVZFRkYqJiZG48aNU48ePfS///1P0v9PBzz++OOKjo5WkyZNJEk///yzBg8erJCQEIWGhqp///768ccfnWMWFhYqKSlJISEhCgsL0wMPPKDz3xpw/jSKw+HQlClTVKdOHVmtVjVq1Egvv/yyfvzxR+e7NmrUqCGLxaKRI0dK+v1NuykpKapfv76qVq2qVq1a6e2333a5zocffqhrrrlGVatWVbdu3VzivByFhYUaPXq085pNmjTRc889V2LfGTNmqFatWrLZbBo7dqwKCgqc50oTO4CKg8oG4IaqVavq6NGjzs9r166VzWbTmjVrJElnzpxRfHy87Ha7Pv30U1WpUkWPPfaYevXqpZ07d8rf31/PPPOMFi1apFdeeUXNmjXTM888oxUrVuimm2664HVHjBih1NRUzZ07V61atdLBgwd15MgR1alTR//97381aNAg7d27VzabTVWrVpUkpaSk6LXXXtPChQvVuHFjbdq0SXfeeadq1aqlLl266Oeff9bAgQOVmJioMWPG6IsvvtD9999/RT+foqIi1a5dW8uXL1dYWJg2b96sMWPGKCoqSoMHD3b5uQUEBGjDhg368ccfNWrUKIWFhenxxx8vVewAKhgDQIkSEhKM/v37G4ZhGEVFRcaaNWsMq9VqTJo0yXk+IiLCcDgczu8sWbLEaNKkiVFUVORsczgcRtWqVY3Vq1cbhmEYUVFRxqxZs5znz5w5Y9SuXdt5LcMwjC5duhj33nuvYRiGsXfvXkOSsWbNmhLjXL9+vSHJ+O2335xt+fn5RrVq1YzNmze79B09erRxxx13GIZhGMnJyUZsbKzL+SlTphQb63wxMTHG7NmzL3j+fImJicagQYOcnxMSEozQ0FDj5MmTzrYFCxYYQUFBRmFhYaliL+meAVy9qGwAF7Fy5UoFBQXpzJkzKioq0tChQzV9+nTn+RYtWris0/j666+1f/9+Va9e3WWc/Px8HThwQLm5ucrIyFBcXJzzXJUqVdSuXbtiUynnpKWlydfX161/0e/fv1+nTp3SzTff7NJeUFCgNm3aSJK+/fZblzgkyW63l/oaFzJ//ny98sorSk9P1+nTp1VQUKDWrVu79GnVqpWqVavmct28vDz9/PPPysvLu2TsACoWkg3gIrp166YFCxbI399f0dHRqlLF9VcmMDDQ5XNeXp7atm2rpUuXFhurVq1alxXDuWkRd+Tl5UmSPvjgA/3pT39yOWe1Wi8rjtJ44403NGnSJD3zzDOy2+2qXr26nnrqKW3durXUY5RX7ADMQ7IBXERgYKAaNWpU6v7XXXed3nzzTYWHh8tms5XYJyoqSlu3blXnzp0lSWfPntWOHTt03XXXldi/RYsWKioq0saNG9WjR49i589VVgoLC51tsbGxslqtSk9Pv2BFpFmzZs7Fruds2bLl0jd5EZ9//rluuOEG/e1vf3O2HThwoFi/r7/+WqdPn3YmUlu2bFFQUJDq1Kmj0NDQS8YOoGJhNwrgQcOGDVPNmjXVv39/ffrppzp48KA2bNigv//97/rll18kSffee6+efPJJvfvuu/ruu+/0t7/97aLPyKhXr54SEhJ011136d1333WO+dZbb0mSYmJiZLFYtHLlSh0+fFh5eXmqXr26Jk2apIkTJ2rx4sU6cOCAvvzyS82bN0+LFy+WJI0dO1b79u3T5MmTtXfvXi1btkyLFi0q1X3++uuvSktLczl+++03NW7cWF988YVWr16t77//Xg8//LC2b99e7PsFBQUaPXq09uzZow8//FDTpk3T+PHj5ePjU6rYAVQw5b1oBLha/XGBqDvnMzIyjBEjRhg1a9Y0rFar0aBBA+Oee+4xcnNzDcP4fUHovffea9hsNiMkJMRISkoyRowYccEFooZhGKdPnzYmTpxoREVFGf7+/kajRo2MV155xXl+5syZRmRkpGGxWIyEhATDMH5f1DpnzhyjSZMmhp+fn1GrVi0jPj7e2Lhxo/N777//vtGoUSPDarUaN954o/HKK6+UaoGopGLHkiVLjPz8fGPkyJFGcHCwERISYowbN8548MEHjVatWhX7uT3yyCNGWFiYERQUZNxzzz1Gfn6+s8+lYmeBKFCxWAzjAqvSAAAAPIBpFAAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYCqSDQAAYKr/AyOYrkFBsnQkAAAAAElFTkSuQmCC\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["Cross-Validation Accuracy: 0.97 ± 0.02\n"]},{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["Best parameters: {'C': 0.1, 'kernel': 'linear'}\n","Best cross-validation score: 0.98\n"]}]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"18Cjv_dT8hBl","executionInfo":{"status":"ok","timestamp":1724882440219,"user_tz":-60,"elapsed":242718,"user":{"displayName":"Mail Cloud","userId":"01708480096028966588"}},"outputId":"d8a450f3-8e65-4300-fc30-3f050dfaf01c"},"outputs":[{"output_type":"stream","name":"stdout","text":["Training features shape: (1864, 5)\n","Accuracy: 0.94\n","Classification Report:\n"," precision recall f1-score support\n","\n"," 0 0.94 1.00 0.97 434\n"," 1 1.00 0.15 0.26 33\n","\n"," accuracy 0.94 467\n"," macro avg 0.97 0.58 0.62 467\n","weighted avg 0.94 0.94 0.92 467\n","\n"]}],"source":["import pandas as pd\n","from sklearn.model_selection import train_test_split\n","from sklearn.impute import SimpleImputer\n","from sklearn.svm import SVC\n","from sklearn.metrics import accuracy_score, classification_report\n","\n","# Load the dataset\n","filename = \"dataset.csv\"\n","df = pd.read_csv(filename)\n","\n","# Separate features and labels\n","X = df.drop(columns=[\"Label\"]) # Features (all columns except the label)\n","y = df[\"Label\"] # Labels\n","\n","# Handle missing values by filling them with the mean of each column\n","imputer = SimpleImputer(strategy=\"mean\")\n","X = imputer.fit_transform(X)\n","\n","# Split the data into training and testing sets\n","X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)\n","\n","print(\"Training features shape:\", X_train.shape)\n","\n","# Initialize and train the SVM model\n","svm_model = SVC(kernel='linear', probability=True)\n","svm_model.fit(X_train, y_train)\n","\n","# # Make predictions and evaluate the model\n","y_pred = svm_model.predict(X_test)\n","accuracy = accuracy_score(y_test, y_pred)\n","print(f\"Accuracy: {accuracy:.2f}\")\n","print(\"Classification Report:\\n\", classification_report(y_test, y_pred))\n"]},{"cell_type":"code","source":["import joblib\n","\n","# Save the model to a file\n","joblib.dump(svm_model, \"ais_modelv4.pkl\")\n","\n","# Load the model from the file\n","loaded_model = joblib.load(\"ais_modelv4.pkl\")\n"],"metadata":{"id":"6EcngT3N_Zh5"},"execution_count":null,"outputs":[]}]}