From d5e564b5948587e6d3ea8a6a7f01f245753ce67b Mon Sep 17 00:00:00 2001
From: "Taha Silat (tas574)" <taha.silat@usask.ca>
Date: Mon, 11 Dec 2023 00:17:37 -0600
Subject: [PATCH] Code for generating figures for methods report

---
 methods_report.ipynb | 542 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 542 insertions(+)
 create mode 100644 methods_report.ipynb

diff --git a/methods_report.ipynb b/methods_report.ipynb
new file mode 100644
index 0000000..232ec35
--- /dev/null
+++ b/methods_report.ipynb
@@ -0,0 +1,542 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Requirement already satisfied: statsmodels in c:\\users\\tahas\\anaconda3\\lib\\site-packages (0.13.2)\n",
+      "Requirement already satisfied: numpy>=1.17 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from statsmodels) (1.21.5)\n",
+      "Requirement already satisfied: scipy>=1.3 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from statsmodels) (1.7.3)\n",
+      "Requirement already satisfied: pandas>=0.25 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from statsmodels) (1.4.2)\n",
+      "Requirement already satisfied: patsy>=0.5.2 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from statsmodels) (0.5.2)\n",
+      "Requirement already satisfied: packaging>=21.3 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from statsmodels) (21.3)\n",
+      "Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from packaging>=21.3->statsmodels) (3.0.4)\n",
+      "Requirement already satisfied: pytz>=2020.1 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from pandas>=0.25->statsmodels) (2021.3)\n",
+      "Requirement already satisfied: python-dateutil>=2.8.1 in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from pandas>=0.25->statsmodels) (2.8.2)\n",
+      "Requirement already satisfied: six in c:\\users\\tahas\\anaconda3\\lib\\site-packages (from patsy>=0.5.2->statsmodels) (1.16.0)\n"
+     ]
+    }
+   ],
+   "source": [
+    "!pip install statsmodels"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import pandas as pd\n",
+    "import numpy as np\n",
+    "import matplotlib.pyplot as plt\n",
+    "import seaborn as sns\n",
+    "from sklearn.model_selection import train_test_split\n",
+    "from sklearn.preprocessing import StandardScaler\n",
+    "from sklearn.linear_model import LogisticRegression\n",
+    "from sklearn.metrics import accuracy_score, classification_report, confusion_matrix\n",
+    "from scipy.stats import chi2\n",
+    "import statsmodels.api as sm"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "df = pd.read_csv(\"NGS_data.csv\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<div>\n",
+       "<style scoped>\n",
+       "    .dataframe tbody tr th:only-of-type {\n",
+       "        vertical-align: middle;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe tbody tr th {\n",
+       "        vertical-align: top;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe thead th {\n",
+       "        text-align: right;\n",
+       "    }\n",
+       "</style>\n",
+       "<table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       "    <tr style=\"text-align: right;\">\n",
+       "      <th></th>\n",
+       "      <th>PUMFID</th>\n",
+       "      <th>PGM_P405</th>\n",
+       "      <th>FATHEDP</th>\n",
+       "      <th>MOTHEDP</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <th>0</th>\n",
+       "      <td>28111</td>\n",
+       "      <td>1</td>\n",
+       "      <td>6</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>1</th>\n",
+       "      <td>28113</td>\n",
+       "      <td>2</td>\n",
+       "      <td>2</td>\n",
+       "      <td>2</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>2</th>\n",
+       "      <td>28114</td>\n",
+       "      <td>3</td>\n",
+       "      <td>6</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>3</th>\n",
+       "      <td>28116</td>\n",
+       "      <td>2</td>\n",
+       "      <td>4</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>4</th>\n",
+       "      <td>28117</td>\n",
+       "      <td>1</td>\n",
+       "      <td>4</td>\n",
+       "      <td>4</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>...</th>\n",
+       "      <td>...</td>\n",
+       "      <td>...</td>\n",
+       "      <td>...</td>\n",
+       "      <td>...</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>19559</th>\n",
+       "      <td>63858</td>\n",
+       "      <td>1</td>\n",
+       "      <td>6</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>19560</th>\n",
+       "      <td>63864</td>\n",
+       "      <td>1</td>\n",
+       "      <td>5</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>19561</th>\n",
+       "      <td>63865</td>\n",
+       "      <td>2</td>\n",
+       "      <td>3</td>\n",
+       "      <td>4</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>19562</th>\n",
+       "      <td>63866</td>\n",
+       "      <td>1</td>\n",
+       "      <td>1</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>19563</th>\n",
+       "      <td>63868</td>\n",
+       "      <td>1</td>\n",
+       "      <td>2</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table>\n",
+       "<p>19564 rows × 4 columns</p>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "       PUMFID  PGM_P405  FATHEDP  MOTHEDP\n",
+       "0       28111         1        6        6\n",
+       "1       28113         2        2        2\n",
+       "2       28114         3        6        6\n",
+       "3       28116         2        4        5\n",
+       "4       28117         1        4        4\n",
+       "...       ...       ...      ...      ...\n",
+       "19559   63858         1        6        6\n",
+       "19560   63864         1        5        5\n",
+       "19561   63865         2        3        4\n",
+       "19562   63866         1        1        5\n",
+       "19563   63868         1        2        5\n",
+       "\n",
+       "[19564 rows x 4 columns]"
+      ]
+     },
+     "execution_count": 3,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "columns_of_interest = ['PUMFID', 'PGM_P405', 'FATHEDP', 'MOTHEDP']\n",
+    "df = df[columns_of_interest]\n",
+    "df"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<div>\n",
+       "<style scoped>\n",
+       "    .dataframe tbody tr th:only-of-type {\n",
+       "        vertical-align: middle;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe tbody tr th {\n",
+       "        vertical-align: top;\n",
+       "    }\n",
+       "\n",
+       "    .dataframe thead th {\n",
+       "        text-align: right;\n",
+       "    }\n",
+       "</style>\n",
+       "<table border=\"1\" class=\"dataframe\">\n",
+       "  <thead>\n",
+       "    <tr style=\"text-align: right;\">\n",
+       "      <th></th>\n",
+       "      <th>PUMFID</th>\n",
+       "      <th>grade_average</th>\n",
+       "      <th>FATHEDP</th>\n",
+       "      <th>MOTHEDP</th>\n",
+       "    </tr>\n",
+       "  </thead>\n",
+       "  <tbody>\n",
+       "    <tr>\n",
+       "      <th>0</th>\n",
+       "      <td>28111</td>\n",
+       "      <td>1</td>\n",
+       "      <td>6</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>1</th>\n",
+       "      <td>28113</td>\n",
+       "      <td>2</td>\n",
+       "      <td>2</td>\n",
+       "      <td>2</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>2</th>\n",
+       "      <td>28114</td>\n",
+       "      <td>3</td>\n",
+       "      <td>6</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>3</th>\n",
+       "      <td>28116</td>\n",
+       "      <td>2</td>\n",
+       "      <td>4</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>4</th>\n",
+       "      <td>28117</td>\n",
+       "      <td>1</td>\n",
+       "      <td>4</td>\n",
+       "      <td>4</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>...</th>\n",
+       "      <td>...</td>\n",
+       "      <td>...</td>\n",
+       "      <td>...</td>\n",
+       "      <td>...</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>17582</th>\n",
+       "      <td>63858</td>\n",
+       "      <td>1</td>\n",
+       "      <td>6</td>\n",
+       "      <td>6</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>17583</th>\n",
+       "      <td>63864</td>\n",
+       "      <td>1</td>\n",
+       "      <td>5</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>17584</th>\n",
+       "      <td>63865</td>\n",
+       "      <td>2</td>\n",
+       "      <td>3</td>\n",
+       "      <td>4</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>17585</th>\n",
+       "      <td>63866</td>\n",
+       "      <td>1</td>\n",
+       "      <td>1</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "    <tr>\n",
+       "      <th>17586</th>\n",
+       "      <td>63868</td>\n",
+       "      <td>1</td>\n",
+       "      <td>2</td>\n",
+       "      <td>5</td>\n",
+       "    </tr>\n",
+       "  </tbody>\n",
+       "</table>\n",
+       "<p>17587 rows × 4 columns</p>\n",
+       "</div>"
+      ],
+      "text/plain": [
+       "       PUMFID  grade_average  FATHEDP  MOTHEDP\n",
+       "0       28111              1        6        6\n",
+       "1       28113              2        2        2\n",
+       "2       28114              3        6        6\n",
+       "3       28116              2        4        5\n",
+       "4       28117              1        4        4\n",
+       "...       ...            ...      ...      ...\n",
+       "17582   63858              1        6        6\n",
+       "17583   63864              1        5        5\n",
+       "17584   63865              2        3        4\n",
+       "17585   63866              1        1        5\n",
+       "17586   63868              1        2        5\n",
+       "\n",
+       "[17587 rows x 4 columns]"
+      ]
+     },
+     "execution_count": 4,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# Assuming your dataframe is named df\n",
+    "# Filter the rows based on the specified conditions\n",
+    "df = df[(df['FATHEDP'] != 99) & (df['MOTHEDP'] != 99) & (df['PGM_P405'] != 9)]\n",
+    "\n",
+    "# Rename the 'PGM_P405' column to 'grade_average'\n",
+    "df = df.rename(columns={'PGM_P405': 'grade_average'})\n",
+    "\n",
+    "# If you want to reset the index after filtering\n",
+    "df = df.reset_index(drop=True)\n",
+    "\n",
+    "# Display the resulting dataframe\n",
+    "df\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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H3zwAQsssICDtBqSWGCBBTrUy+hAzczMzBrCQdondXSfOFAzMzOzbqlnz54MGjRo0s+IESOm+Lw333yTs846a9L9YcOGseWWW3ZRK6fNOWpmZmbWcEsfff1Mfb8Rp20x3ef06dOHhx56aLrPawvUDjzwwJnQMhg/fjyzzTZzQiz3qJmZmdksYezYsWy00UasttpqrLzyylx9ddbPP/roo3n22WcZNGgQRxxxxKTn7rDDDiy33HLsuuuutJUzu//++1lvvfVYffXV2XTTTXn55ZcBWH/99Tn22GNZb731+NWvfjXT2uweNTMzM+uW3n//fQYNGgTAgAED+Mtf/sKVV17J3HPPzWuvvcaQIUPYeuutOe200xg+fPik3rdhw4bx4IMP8thjj7HYYouxzjrr8K9//YvPf/7zHHzwwVx99dX069ePSy+9lOOOO47zzjsPyJ652267bab+DQ7UzMzMrFtqP/Q5btw4jj32WG6//XZ69OjBSy+9xCuvvDLF16655pr0759Ljbflt80777wMHz6cTTbZBIAJEyaw6KKLTnrNTjvtNNP/BgdqZmZmNku46KKLGD16NPfffz+9evVi6aWXnmqpjN69e0+63bNnT8aPH09EsOKKK3L33XdP8TV9+/ad6W12jpqZmZnNEt566y0WWmghevXqxT//+U/++9//AjDXXHPxzjvvTPf1yy67LKNHj54UqI0bN47HHnusoW12j1qrOnGeJn72W837bDMzs07adddd2WqrrRg8eDCDBg1iueWWA2CBBRZgnXXWYaWVVmLzzTdniy2mPKN09tln5/LLL+eQQw7hrbfeYvz48Rx22GGsuOKKDWuzF2VvVQ7UzMyswp544gmWX375Zjejkqa0b6a2KLuHPs3MzMwqyoGamZmZWUU5UDMzMzOrKAdqZmZmZhXlQM3MzMysohyomZmZmVWUAzUzMzPrliSx++67T7o/fvx4+vXrx5ZbbjnN1w0bNoy77rpr0v299tqLyy+/vGHtnBYXvDUzM7PGm9n1P+uo6dm3b1+GDx/O+++/T58+fbj55ptZfPHFp/u6YcOGMeecc7L22mvPcDMjgoigR4/O9Y25R83MzMy6rc0335zrr78egKFDh7LLLrtMeuz1119n2223ZeDAgQwZMoRHHnmEESNGcM455/CLX/yCQYMGcccddwBw++23s/baa/Pp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",
+      "text/plain": [
+       "<Figure size 720x432 with 1 Axes>"
+      ]
+     },
+     "metadata": {
+      "needs_background": "light"
+     },
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "\n",
+    "# Define the mapping for substitutions\n",
+    "education_mapping = {\n",
+    "    1: '< High School',\n",
+    "    2: 'High school',\n",
+    "    3: 'Trade certificate/diploma',\n",
+    "    4: 'College/other non-university certificate',\n",
+    "    5: 'University <= Bachelor',\n",
+    "    6: 'University > Bachelor'\n",
+    "}\n",
+    "\n",
+    "education_df = df.copy()\n",
+    "\n",
+    "# Replace values in the 'FATHEDP' and 'MOTHEDP' columns using the mapping\n",
+    "education_df['FATHEDP'] = education_df['FATHEDP'].map(education_mapping)\n",
+    "education_df['MOTHEDP'] = education_df['MOTHEDP'].map(education_mapping)\n",
+    "\n",
+    "# Count the occurrences of each education level\n",
+    "fath_edu_counts = education_df['FATHEDP'].value_counts()\n",
+    "moth_edu_counts = education_df['MOTHEDP'].value_counts()\n",
+    "\n",
+    "# Plotting the bar chart\n",
+    "fig, ax = plt.subplots(figsize=(10, 6))\n",
+    "\n",
+    "bar_width = 0.35\n",
+    "bar_positions = range(len(fath_edu_counts))\n",
+    "\n",
+    "ax.bar(bar_positions, fath_edu_counts, width=bar_width, label='Father')\n",
+    "ax.bar([pos + bar_width for pos in bar_positions], moth_edu_counts, width=bar_width, label='Mother')\n",
+    "\n",
+    "ax.set_xticks([pos + bar_width/2 for pos in bar_positions])\n",
+    "ax.set_xticklabels(fath_edu_counts.index, rotation=45, ha='right')\n",
+    "\n",
+    "ax.set_ylabel('Number of Graduates')\n",
+    "ax.set_title('Education Level of Father and Mother')\n",
+    "ax.legend()\n",
+    "\n",
+    "plt.show()\n",
+    "\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "grade_mapping = {\n",
+    "    1: 'A',\n",
+    "    2: 'B',\n",
+    "    3: 'C - D',\n",
+    "    4: 'No grade assigned',\n",
+    "}\n",
+    "\n",
+    "education_df['grade_average'] = education_df['grade_average'].map(grade_mapping)\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Optimization terminated successfully.\n",
+      "         Current function value: 0.690982\n",
+      "         Iterations 4\n",
+      "                           Logit Regression Results                           \n",
+      "==============================================================================\n",
+      "Dep. Variable:           grade_binary   No. Observations:                14069\n",
+      "Model:                          Logit   Df Residuals:                    14063\n",
+      "Method:                           MLE   Df Model:                            5\n",
+      "Date:                Tue, 21 Nov 2023   Pseudo R-squ.:                0.003039\n",
+      "Time:                        18:09:29   Log-Likelihood:                -9721.4\n",
+      "converged:                       True   LL-Null:                       -9751.1\n",
+      "Covariance Type:            nonrobust   LLR p-value:                 1.720e-11\n",
+      "=======================================================================================================================\n",
+      "                                                          coef    std err          z      P>|z|      [0.025      0.975]\n",
+      "-----------------------------------------------------------------------------------------------------------------------\n",
+      "const                                                  -0.1134      0.053     -2.128      0.033      -0.218      -0.009\n",
+      "MOTHER_EDU_College/other non-university certificate     0.0083      0.066      0.127      0.899      -0.120       0.137\n",
+      "MOTHER_EDU_High school                                  0.1146      0.063      1.807      0.071      -0.010       0.239\n",
+      "MOTHER_EDU_Trade certificate/diploma                    0.0532      0.082      0.648      0.517      -0.108       0.214\n",
+      "MOTHER_EDU_University <= Bachelor                       0.1861      0.062      2.985      0.003       0.064       0.308\n",
+      "MOTHER_EDU_University > Bachelor                        0.4358      0.073      5.987      0.000       0.293       0.578\n",
+      "=======================================================================================================================\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Create dummy variables for education levels\n",
+    "education_df = pd.get_dummies(education_df, columns=['MOTHEDP'], prefix='MOTHER_EDU')\n",
+    "\n",
+    "# Map grade to binary outcome (1 if A, 0 otherwise)\n",
+    "education_df['grade_binary'] = (education_df['grade_average'] == 'A').astype(int)\n",
+    "\n",
+    "# Define independent variables (mother's education levels) and dependent variable (grade)\n",
+    "X = education_df.iloc[:, 4:-1]  # Independent variables (education levels)\n",
+    "y = education_df['grade_binary']  # Dependent variable (grade)\n",
+    "\n",
+    "# Add a constant to the independent variables for the logistic regression\n",
+    "X = sm.add_constant(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",
+    "# Fit logistic regression model on the training set\n",
+    "logit_model = sm.Logit(y_train, X_train)\n",
+    "result = logit_model.fit()\n",
+    "\n",
+    "# Display logistic regression summary\n",
+    "print(result.summary())\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfMAAAGECAYAAAAiKMkyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAA/bElEQVR4nO3deVxU5f4H8M8MM+wqLoBd81ppgormUqmEWJrihivuiWWSmmZZSioobrhdw62y8Na1fu4patYNrcwyMUu6N8UlUq9bKmCo7DDMeX5/wBxmgHEGYQYPfN6vl8U5Z5j5zsPy4VnOOSohhAAREREplrq6CyAiIqLKYZgTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzKlCrl27hg4dOlTZ83377bdYsmTJPR9z+PBhrF271urHG7t27RpatWqFQYMGyf969eqFcePG4erVq5Wq3Va2bduG2NhYu7zW7Nmz0a1bN5P2GTRoEFJSUrB27Vrs3bsXAPDuu+/im2++AQCcPHkS8+fPr/BrLVq0COvXrzfZl52djY4dO+K///1vmcdPnjwZmzZtMvt848aNQ3x8fIXrqE45OTlYsWIFgoKCEBwcjODgYKxevRp5eXkAqv7nq6qlp6fDx8enusugcmiquwCq3Xr27ImePXve8zGnTp3C3bt3rX58ac7Ozti3b5+8LYTAkiVLsHr1asTExFS8aBsbPXq0XV/vxRdfxMsvv1xm/+uvvy5/fPz4cbRo0QIAcP78eaSkpFTJa7u5uWHQoEHYtWsX2rdvL++/efMmfv75Z6xcubJKXudBUFhYiJdeegnt27fH3r174eLigtzcXLzzzjt4+eWX8cknn1R3iaRgDHOqMpmZmVi4cCHOnTsHlUqFbt264c0334RGo8H333+PVatWQa1Wo1WrVkhISMDWrVvx888/48CBA/jwww9x8OBBbNiwASqVCg4ODggPD4ejoyO2b98OvV6POnXqoFmzZvLj09LSEBUVhYsXL0KtVmPUqFEIDQ21WGd+fj5SU1PRqFEjAEBBQQFWrVqFX375BXq9Hq1bt0ZkZCTc3d1x8uRJLFiwADqdDn//+99x/fp1zJ49GwAQHR0NV1dXZGdnY/fu3fjxxx+xYcMG6HQ6ODs74+2330aHDh1w4cIFREREoKCgAEIIhISEYOzYsWb3r1+/Hrdv38b8+fPxxx9/YNGiRbhz5w5UKhUmTJiAwYMH4/jx41i9ejWaNm2KP/74A4WFhVi4cCE6depUZV/P2bNn4/HHH4ezszOSkpKwcuVK5OXlYd26dcjMzMScOXOwbNkyHDp0qNz3nZWVhYiICJw7dw5eXl5wcHAot76xY8di5MiRmDt3LlxdXQEAu3btQv/+/aHRaBAeHo7Lly/jzp07cHNzw6pVq/DYY4/Jn3/t2jUEBwfjP//5T7nbn332GbZt2wZJkuDh4YF58+ahefPmOHHiBJYvXw5JkgAAkyZNQlBQkEltb731Ftq0aYMJEyYAgPw9Gx0djTlz5uDy5ctQq9Vo06YNFi1aBLXa/GBnfHw8JEnCnDlz5H0uLi6IiIjA4MGD8fXXX6Nt27aQJAkRERE4ffo0NBoNIiMj0b59e7PfLwCwYcMGHDx4EJIkoUmTJoiKioK3tzfGjRuHevXq4eLFixg5ciTef/99HDlyBI6OjtDr9Xj22WexadMmeHl5ITo6GsnJydDpdOjatSvCw8Oh0Whw8OBBrF69Gi4uLvDz86vw9xHZiSCqgKtXr4r27duXeyw8PFwsXrxYSJIk8vPzxYQJE8SHH34o0tPTxdNPPy3Onj0rhBAiLi5OtGzZUly9elXs3r1bvPLKK0IIIXr27Cn+85//CCGEOHLkiFi/fr0QQoh169aJhQsXCiGEyeOnTp0qVqxYIYQQIiMjQ/Tv319cunSpTL2+vr5i4MCBYsCAAaJr166iT58+IiYmRmRlZQkhhFi/fr1Yvny5kCRJCCHEO++8I6KiooROpxOBgYHi8OHDQgghjh07Jnx8fMRPP/0kfvrpJ+Hr6yuuXbsmhBDif//7nxgwYIBIT08XQgiRnJwsnnnmGZGdnS3mzJkjPvzwQyGEEKmpqeKNN94Qer3e7H7D+9XpdKJnz57iwIEDQgghbt68Kbp16yZ+/fVX8dNPP4lWrVqJM2fOCCGE+Oijj8TYsWMr/PV8++23RUBAgBg4cKD8b+fOnfKxf/7zn0IIIV544QXx1Vdflfka3Ot9R0dHi/DwcCFJkvjrr79EYGCgWLduXbl1vPDCC2L37t1CCCH0er149tlnxdmzZ8VXX30lFi9eLD9u3rx5YtGiRSY1lf6eNN4+fvy4GDNmjMjJyRFCFH1f9enTRwghRGhoqPjiiy+EEEKcPXtWLFiwoExdx44dEwMGDJC3Q0JCxNGjR8WePXvEhAkThBBCFBYWioiIiDLfe6UtWrRILF++vNxjy5YtE4sXLxZXr14VLVu2FF9++aVcb2BgoMjPzzf7/bJnzx7xxhtvCJ1OJ4QQYvv27WLixIlyG82ZM0d+nbFjx8pfx8OHD4tRo0YJIYSYPXu2+PTTT+X3M3PmTBEbGyvS0tJEp06dxB9//CGEEOKDDz4QLVu2vOf7pOrBnjlVmR9++AHbtm2DSqWCo6MjRo0ahU8++QSPPvoomjdvDl9fXwDAkCFDyp337t+/P6ZNm4bu3bvjmWeeQVhY2D1fLyEhAbNmzQIA1KlTB1988UW5jzMeZj9y5AhmzZqF5557Dm5ubgCK5uQzMzORkJAAANDpdGjYsCGSk5MBAN27dwcAdOnSBY8//rj8vA899BCaNGkCADh69ChSU1Px4osvysdVKhWuXLmCXr164e2338bJkyfRtWtXREZGQq1Wm91vcOnSJeTn56N3794AAG9vb/Tu3RtHjhxB586d8be//Q2tWrUCALRu3Rp79uy5Z3uZY26Y3Rr3et/Hjh3D3LlzoVKp0KBBA/Tq1cvs84wZMwabN2/G0KFD8cMPP+Chhx6Cr68vfH190bRpU/zf//0fLl++jJ9//rlCc8qHDx/G5cuXMWrUKHlfRkYG7ty5g759+2LRokU4dOgQ/P398eabb5b5/M6dOyM/Px+nTp2Ci4sL0tPT0bVrV1y7dg2rV6/GuHHj4O/vj/Hjx6NZs2YW6yksLCx3f0FBARwcHAAAdevWRb9+/QAAAQEBAICLFy+a/X757rvvcOrUKQwbNgwAIEkScnNz5ed+8skn5Y9DQkKwZ88e9OnTB3FxcRgxYoTcTqdOncKuXbsAQJ7DT0xMRMuWLeUplpEjRz6QU1PEYXaqQpIkQaVSmWwXFhbCwcEBotQtAMobjpwxYwaGDRuGo0ePIi4uDh9//LH8y6U8Go3G5PWuXr2K+vXrw93d3ezndOvWDS+99BJef/11fPnll3B3d4ckSZg7d64c2tnZ2cjPz0daWlqZug2/cAHIQ8KG99q1a1esWbNG3nfjxg14eXnB19cXBw4cQEJCAo4dO4b33nsPcXFxeO6558rdb6DX603eH1A0328IBGdnZ3m/SqUqUysArF27FocOHQIA9OjRw2QevCrc630b6jUwbrvSevXqhaVLl+LSpUvYuXOnPHy8detWeTs4OBgeHh64du2ayeeWfu86nc6kvkGDBsl/9EmShNTUVNSrVw+jRo3Cc889h6NHj+LIkSN49913ER8fDycnJ5PnDgkJwb59+6DVahESEgKVSoWmTZvi66+/xvHjx/HTTz/hpZdewqJFi9CjRw+z77Fjx4745z//CUmSTL7/JUnCL7/8gilTpgAo+7MhSRK0Wq3Z7xdJkjBx4kSMGTMGQNEfBoY1JoDp92nfvn2xfPlyXLhwAb/88guWL18uv8batWvRvHlzAEV/8KhUKiQkJJi0rUbDyHhQcTU7VZmAgABs3rwZQggUFBRg586d8Pf3R8eOHXHp0iWcO3cOAHDgwAH5l4VBYWEhevTogdzcXIwePRpRUVH4/fff5R5LeT2arl27Yvfu3QCK5uvHjx+PS5cuWaxzwoQJcHNzw7p16+S6t2zZgoKCAkiShHnz5iEmJgbNmzeHo6MjfvjhBwBFq7iTk5PLBKyhlqNHj+LChQsAgO+//x4DBw5EXl4e3nrrLfz73/9G//79ERUVBXd3d1y5csXsfoPHHntMnrMEgJSUFBw4cAD+/v7WfDkAFC1i27dvH/bt21epIDf+Ghh/fK/33a1bN+zatQuSJOHu3bv49ttvzT6/RqPBiBEj8Omnn+LMmTPyaMSPP/6IIUOGYPjw4Xj00Udx6NAh6PV6k8+tW7cudDodzp8/DwD48ssv5WMBAQH48ssvkZqaCqDoTIHx48cDAEaNGoWzZ89i6NChWLx4MTIyMpCWllamtiFDhuDQoUM4cOAAhg4dCqDoj4w5c+YgICAAs2bNQkBAAM6cOXPPNgwKCoKLiwuWLl0q93zz8vKwePFiuLm5ySMXd+7cwXfffQcAOHToEJydndGsWTOz3y8BAQHYtWsXsrKyABT9ARceHl5uDU5OTujfvz9mz56N3r17w8XFRW6nTZs2yT+7U6ZMwebNm/HUU0/h/Pnz8s+u8R+b9GDhn1lUYTk5OWWGOrdv347IyEgsWbIEwcHB0Ol06NatGyZPngxHR0fExMTg7bffhlqthp+fHzQajfyLBCj6ZT537lzMnDlT7nEvXboUjo6O6NKlC2bOnInFixejTZs28ufMnz8fCxYsQHBwMIQQmDRpklULdLRaLebNm4eJEyciJCQEr776KlasWIEhQ4ZAr9ejVatWmD17NjQaDdavX4+oqCjExMTgkUceQaNGjeDs7GwyjAkALVq0wKJFi/Dmm29CCAGNRoMNGzbAzc0Nr776KiIiIrBjxw44ODjg+eefx1NPPYWGDRuWu//48eNyne+//z6WLFmC9evXQ6/XY+rUqejSpYv8GHvp0aMHYmJioNPp0LFjR7z33nuYNm0a3n33XbPv+7XXXkNUVBT69u2LBg0aoGXLlvd8jREjRqBnz5545ZVXoNVqART94TV//nx5hKZ9+/by9IdBnTp1MGvWLISFhaFBgwbo06ePfCwgIABhYWGYMGECVCoV3N3d8e6770KlUmHmzJlYunQp1qxZA5VKhWnTpuHhhx8uU5enpydat26NwsJCeHt7AwAGDx6Mn3/+Gf369YOLiwseeughjBs3DgAQFhaGUaNGlTnrQqPR4OOPP8b777+PoUOHQq1WQ6/Xo0ePHvj444/l99ywYUMcPHgQa9asgYuLC9avXw+NRmP2++jJJ59ESkoKRowYAZVKhYceekjucZdn+PDh2Lx5MxYsWCDvi4iIQHR0tPyz6+/vj4kTJ0Kr1WLVqlWYOXMmtFotnnrqqXt+Dan6qER5Y3NEVSgrKwvvv/8+XnvtNbi4uOD06dOYNGkSjhw5Um4v90GyYsUKvPzyy2jUqBFu3LiBQYMG4ZtvvkHdunWruzQiIhl75mRz7u7u8nyjRqOBRqORe0MPuiZNmuDFF1+ERqORz09nkBPRg4Y9cyIiIoXjAjgiIiKFY5gTEREpnCLnzCVJQnZ2NrRarSLmXYmIiCpLCAGdTgc3N7cy1yNQZJhnZ2eXOT2FiIioNmjZsiXq1Kljsk+RYW44H7Nly5ZwdHSstjqSkpJ44wE7Y5vbH9vc/tjm9qeENi8oKEBycrKcgcYUGeaGoXVHR0eTSy9Wh+p+/dqIbW5/bHP7Y5vbn1LavLzpZS6AIyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECmfTMM/KysKAAQNw7dq1MsfOnj2LoUOHIigoCBERESgsLLRlKURERDWWzcL8t99+w+jRo3Hp0qVyj8+aNQvz58/HgQMHIITAzp07bVUKERFRjWazy7nu3LkTUVFRCA8PL3Pszz//RF5eHtq3bw8AGDp0KNatW4cxY8bYqpx7Cn5rn/zx/ncGVfj4g0IpdVbGgq3XgK1FIz019T1aqzZ8vYmUyt4/nzbrmUdHR+PJJ58s91hqaio8PT3lbU9PT6SkpNiqlHsybvD72X5QKKXOyqgN79FabAuiB1d1/HxWy41WJEkyuVC8EOK+7kuelJRUlWXJEhMTrT5u6bHV6UGurarUhvdoLVu2BdvZ/tjm9qfkn6FqCfPGjRsjLS1N3r516xa8vLwq/Dx+fn6Vv8vN1rKL8zp16mTV8cTERNPHVidL76MmqA3v0Vp2bIsH6vu8lmCb21+VtrmNfj7z8/PNdmKr5dS0Jk2awMnJSf5LZd++fQgMDKyOUsrMZVR0+0GhlDoroza8R2uxLYgeXNXx82nXnnlYWBimT5+Otm3bYtWqVYiMjERWVhbatGmD0NBQe5ZiwlJDK+UXpVLqrIwFYx5mj6VYbfh6EymVvX8+bR7mhw4dkj/euHGj/LGvry927dpl65cnIiKq8XgFOCIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESmcTcN8//796NevH3r37o0tW7aUOX769GkMGzYMAwcOxKRJk5CRkWHLcoiIiGokm4V5SkoKVq9eja1bt2Lv3r3YsWMHzp8/b/KY6OhoTJ8+HZ9//jkeffRRfPTRR7Yqh4iIqMayWZgnJCSgS5cu8PDwgKurK4KCghAfH2/yGEmSkJ2dDQDIzc2Fs7OzrcohIiKqsWwW5qmpqfD09JS3vby8kJKSYvKY2bNnIzIyEgEBAUhISMCoUaNsVQ4REVGNpbHVE0uSBJVKJW8LIUy28/LyEBERgU2bNqFdu3b417/+hbfffhuxsbFWv0ZSUlKV1nw/EhMTq7uEWodtbn9sc/tjm9ufktvcZmHeuHFjnDhxQt5OS0uDl5eXvJ2cnAwnJye0a9cOADBy5EisXbu2Qq/h5+cHJyenqin4PiQmJqJTp07V9vq1Edvc/tjm9sc2tz8ltHl+fr7ZTqzNhtn9/f1x7NgxpKenIzc3FwcPHkRgYKB8vFmzZrh58yYuXrwIAPj222/Rtm1bW5VDRERUY9msZ+7t7Y0ZM2YgNDQUOp0OISEhaNeuHcLCwjB9+nS0bdsWy5YtwxtvvAEhBBo2bIilS5faqhwiIqIay2ZhDgDBwcEIDg422bdx40b54+7du6N79+62LIGIiKjG4xXgiIiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhNJYeUFhYiF9//RX/+9//oFar8dhjj6FTp072qI2IiIiscM8w37JlCz788EN4eHjg4YcfhkajwbZt23D79m2EhYVh9OjRUKlU9qqViIiIymE2zF977TW0atUKu3btgpeXl8mxv/76C9u2bcPUqVPx/vvv27xIIiIiMs9smEdERKBx48blHmvYsCGmTZuGmzdv2qwwIiIiso7ZMHd2dsadO3fMfqKHh4fZsCciIiL7MRvmXbp0gUqlghCizDGVSoWzZ8/atDAiIiKyjtkwP3funD3rICIiovtk8dS0goICfP/998jOzgYA6PV6XLlyBTNmzLB5cURERGSZxTCfMWMGrl69irS0NLRu3Rq//fYbnn76aXvURkRERFaweAW4s2fPIi4uDj179sTcuXOxbds23L171x61ERERkRUshrmXlxc0Gg0eeeQRJCcn4/HHH0dmZqY9aiMiIiIrWAxzV1dX7N+/H76+vvjqq6/w+++/Iycnxx61ERERkRUshvm8efNw9uxZPPPMM1Cr1XjhhRcwYcIEe9RGREREVrC4AO7RRx9FeHg4AGDNmjW2roeIiIgqyGKYT548udz9H3zwgcUn379/PzZs2IDCwkKMHz8eY8eONTl+8eJFREVF4e7du/D09ERMTAzq1atnZelEREQEWDHMHhQUJP/r0aMHdDodfHx8LD5xSkoKVq9eja1bt2Lv3r3YsWMHzp8/Lx8XQmDKlCkICwvD559/jlatWiE2NrZy74aIiKgWstgzHzJkSJntcePGWXzihIQEdOnSBR4eHgCK/iiIj4/HtGnTAACnT5+Gq6srAgMDARSNAGRkZFS0fiIiolrPYs+8NCEEUlNTLT4uNTUVnp6e8raXlxdSUlLk7StXrqBRo0aYO3cuhgwZgqioKLi6ula0HCIiolqvwnPmycnJeOqppyw+sSRJUKlU8rYQwmS7sLAQP//8MzZv3oy2bdtizZo1WL58OZYvX2518UlJSVY/1lYSExOru4Rah21uf2xz+2Ob25+1ba5SqeR/ACAJAFBBAEX/hErOPAcUlnvDsqpmMcyDgoLkj1UqFUaPHo1u3bpZfOLGjRvjxIkT8nZaWhq8vLzkbU9PTzRr1gxt27YFAAwYMADTp0+vUPF+fn5wcnKq0OdUpcTERHTq1KnaXr82YpvbH9vc/tjm9vfrr7+iY8eO8rYkCeglAUkISJIESRKQpKL9khDQ6wX0kgRJCAgAEEVBbszFUYMG9ZyrrMb8/HyznViLYX758mW88cYbJvuWLFmCyMjIe36ev78/1q9fj/T0dLi4uODgwYNYvHixfLxDhw5IT0/HuXPn4Ovri0OHDqFNmzZWvB0iIqKKE0KUhLQhqIWApBco0Kvx153c4gCXinvbKDekH0Rmw3zdunXIyMjAv//9b2RlZcn7dTodfvzxR4th7u3tjRkzZiA0NBQ6nQ4hISFo164dwsLCMH36dLRt2xbvvfceIiMjkZubi8aNG2PlypVV986IiKhWMISzXpLkwDb0oo2P3asXfTcrD3k6fTVUXzXMhvkTTzyBU6dOQa1WyyvSAcDBwQGrVq2y6smDg4MRHBxssm/jxo0mr7Fr164KlkxERDWdEEVBrJcEhCSgL+5BSya96+Lhb/lz7FujJAnk5OmQlatDVk7R/7NzdcjKLUBWjg713J3wQh9fODhUeK15hZkN8+7du6N79+4IDAxE/fr10bRpU2RlZeHKlSto3bq1zQsjIqKaR6+X5Dln42FuSRQdq65hbiEEsvOKQjk7V4esnIKikJaDuiigDY/JytUhJ1dnsbYOPp5o18LTwqMqz+Kc+W+//YadO3di//79uH37Nl577TVMnjwZw4cPt3lxRET04JMDWhL3PcxdlYQQyCvQF/eSdcjMKUB2cQAbQrmkF10S3EJYPu36Xpy0DnB31cLdRQt3V0c0864Dn2YNquhd3ZvFMN+xYwe2b98OAGjatCn27t2LMWPGMMyJiGowwzC3ZAhjQw+6Aqu5q0qBTm/SQ842GtaWw7nUtl6qXDVajRp1XB3h7qKFm4sW7q5auDlrUcdVC7fi/e6G/cUfazUOJs/h4qiBk9bBzCtULYthrtfr4e7uLm/XqVPH5HxxIiJSDsNcs14vIGA0Jy2heOhbkk/JAlDlIV2ol4zCuMBkvtnQQy4d1gU6yfIT34PGQQU3F8eiIC4OXjcXrRzW7q5apKX8Cb9WLeWetaOdQriqWAzzxx57DKtWrcLIkSMBAHFxcXjkkUdsXRcREVlJDuhyhrlL5qeLjwNVFtCSJIzmkEsNX5cX1rkFyMuv3IpxtUpl0hsuCl/H4nAuGeI2Pu6kdbDYCU2SbuHvjetUqrbqZDHMFy5ciIULF2Lw4MHQaDTw9/fHggUL7FAaEVHt5ODgYHoudKmLlpQ7D43KreYWQiA3v9BCT9konHMKkJNXWKk/ClQAXE16ykXBbBrWjibHXZw0HB0uh8Uwb9SoEdavX2+y7/vvv0f37t1tVhQRUU1kfLqVJBWt2DY53aq4B307qxAp6dnFn3R/vegCnV4O4EyjcM4uvULbKLylSs4zOzs5FIVxcfC6FQezcQ/aOJhdnbVQq2teMKsM/7HjW7MY5gZ5eXnYs2cPPv30U9y6dQu//PKLLesiIlKM8uahK3O6VYGu0KSXbc08c+kFYLrCys0zazVqkwB2LzWELQ9pFw9xu7tqobHD+dS2YtzZl8O4mBqAWl1yPXYH+eOiYX+1uuhy52qVClBBPq624wiCxTBPSUnB5s2bsXPnTmRnZ+OVV17Biy++aIfSiIiqj9nV3KUvCSpJRRctsbIHLQmBnLxCkxA2vtBIVq4O11Nu48tff5G3c/MLK/Ve1GqVaSCb9JjLD2cnR2UtADNQlfpABcihay6MVWqgQV1XNKjrJIewSqWCWq2CWgVFDOubDfOTJ09i06ZN+Pbbb9G1a1dERUVh1apVFb4ZChHRg8T4oiWVXc0thECBTio6j9nonOVMeSFYUUBnGp9Slauzcm67wOwRN2eNySKvOq6m88yGbUM4OztZXgD2ICgdxIYPS8JYDbUKxSFb0iNWGUIXRh8bBbdVry10cHHSVvVbshuzYT5ixAgMHDgQ33zzjXxf8nfeecduhRERWeted7iqyEVLDMPZmTkFRsPWOmSXvhqY0XZlh7NLX2jE3UWLvJwMPNL0obLzza5auDpr4KB+MIezjYenVYBJD7dk6NkwZA25d6xC0fC0WmW8Xzm94geB2TCPiIjAjh07MHToUAwcOBCDBw+2Y1lEVNuVvsOVXhh60GaGuQGTkJYMq7NzSnrLhuHszBzD8HZB8RXCqua0KQe1yiR4SwexIbDruGjh5lr+hUYAICkpCX5+j1SqlvtReq64pFesloPW0Cs2fGzcK1arVfLcsrU9YqoaZsN83LhxGDduHI4fP45t27ZhyJAhUKvV2Lt3LwYMGACNxuq1c0REAEoC2twwt6EHXd4w971WZ2caneds6Fln5xaWPMd9Mgxnm5trlsO6+GNnx+obzi5v0ZahV2yYBzb0iA3zxHLv16RnXNIjrokrzWsqi4ncuXNndO7cGbdu3cKOHTuwdu1arFmzBocPH7ZDeUT0oDN3j2jTgDacilU0zK3XSyYrsOU553K2M6todbaT1qFkoZfJucvGYa2Vw7u6hrNVADQODkWhCxgtxFKV7RUb/m80V2w8tE21h9Xd60aNGmHq1KmYMmUKvvvuO1vWRETVzLgHDbUGufk6eVW3JJneP1ovScjN1xcNZRt6yUYXGzGZfy7en5NXdauz67g4ykPWZReDlVzC0x6X5zQ/TK0ymgcuNVytNp0rdlCrkFJHi8YN3BjIZDWzYT5lyhRMmzYNbdq0MdmvVqvRs2dPnDx5Eu+//z4++OADmxdJRJVn3HMWUskpVkX7Soa48wv0yMjJl+eVz/1xG2dTzptesrOKb2rh6qSBm6vptbLNDWnXsfHq7NKLuOQhauNhasM8sdGirpLeceWHqSVJzyCnCjEb5gsWLMC8efOQnp6OZ599Fs2aNYMkSbh69SqOHDmCOnXqYOHChfaslYiMmMw/G67JXeqKYjq9hKzsAmRk5yPDaCV2ZqmecmZOyYrtvILyFoHdtbou+WIjztpS883G26YXInGo4ouNmLvoh1qlNukVq9VlA1meY1ZzERcph9kw9/b2RmxsLE6ePImvvvoKX375JQDg0Ucfxdy5c/HEE0/YrUii2qLc3rN8sRIgN78Qd7PycDerAJnFoZyZU1DmlCnj854rswZMpQKctSrUq+NSshLbcJlO4/ln+faQjlV2sZEygWy42pZKXaqHXHYxl3EP2RDORDWZxTnzdu3aoV27dvaohahGkcoMZRtCuuhYoV7C3eJec2Z2Ae5mF5icNiX3nI0WhVV2EZizo0PRwi9XozA2urFF6cVgrs5anDlzGn5+fvf9msahXNRDVpcs5jJeXV08bF1eD5nnGxPdG88vI7JCyZA2yu0166WiS3RmZOXjbnE4Z+ToSoVz1d5xSq1WyWHs5qKR55XrGF+e0zDXXDykXd45zda8zr0uBqIuFbjyVbmMFnSVzDczkIlsgWFOtZK5+WbDRUkKdHpkZBUgIycfd7IKjOaZC5CZXc58c24BCvWVWwTm4qQxOZ+57BC26Rz0/dwKsqKhrFar0KCuMxp5uJg8hogeLAxzUpTywkte+GUIZanoYiQlp1EVXaLzTlbxQrDsAmQYhq9zyu85V/bGFhoHldGVvhzh7qIpOU3KtdR8c/H5ztbecepeFwcxHr4u77Qn4x6y1Yu7pEK7nNZFRPfPbJhbusXpU089VeXFEMmLv4x6zKJ4aFvSCxTo1Uj5KwcZWfnIyCkO5xzTm1kUrcyu2lOnylwJrNSQtnup06qctNadOlV6PllVKmyNV12bXhyEi7uIqITZMF+0aBEAIDc3F9evX0eLFi2g0WiQnJyM5s2bY9++fXYrkpTHuLdsmGM27i0bFoYV6gWyc3XIyM4r7jGXLPrKLOfUqbvZ+dAVXq5UbVqN2iR4yy78MvSgi/ZX5EpgZRd7GU6HUsHBoSSAS3rORf83BDcR0f0wG+b79+8HALzxxhtYuXIlOnbsCAA4ffo0LxRTi8hzyUZzzMa9ZWEUznqp6MYWGdn58lW/DFcDyyznblNZVXD9bJUKcHMu2zMuuciI6cVG3F2tvxJY6dsxqg03nFCbLuoy7jXLx9hjJiI7sjhn/r///U8OcgBo06YNLl+uXM+Iqoe1vWXDuc6Fer0cwiXhXDKvLF+qM7dkzrlAV8nrZzs6GM0zl7o3s6sW6Wk30NqnhRzYrs4aqK0MTZXRwi/j+WMHo6FsQ0+ZK7GJSEkshrmzszPi4uIwaNAgCCHw2WefoW7duvaojcywtODLJLTlFdt65BboSy7FadxbLn36VPF8c06urtKnThlf5ct4nrnMELeVp04lJd1Gi6YeFs9dlueTjVZnM5iJqKayGOZLly7FzJkzERkZCZVKhTZt2uCdd96xR201mvF5y8aBXDJ8XdJTFnJvWir6P4ruOpWdp0NmtuntH02HsU3nnAv1les1uzhpzN+f2Tiw7/PUKZOALj2kXRzEDeu5omFdZ6hKDXUTEdVmFsO8efPm2LNnD+7cuQMA8PDwsHFJyqCXBNRqBxTo9CbzyMb/Lwpqo7A2rMqWJBjHqpAEcvP18q0ejQM5M6fAaGV2yXZOFZw65eZSKoRLzzcbrdKuyKlTgIVgNr6wSAV7ziqhg7MTz6gkIjJm8bdiWloaIiIicPnyZWzduhUvv/wyli1bBi8vL3vUZzdCCOQVFMo9ZSGZLv7SGw1pG+7J/FemDrfu5JYZitYVSsjKLQpd4xXZWeWcOmWYc5aq+tSp0necctWaDHE7OVbsrlNm7yRl1HM2PZWqZB+HtImIbMtimC9cuBDPP/88Nm/ejLp168LX1xeRkZGIjY21R312IwngdmZ+mZtSSKLoMp2lAzkrR4dLV+/g+IXT8h2osovnofPLveuU9eS7Thndi/let4Z0c7H+1Cljpr1n056xvCK7dM9ZreZ1somIHjAWw/zPP//EiBEjsHXrVmi1WsyaNQvBwcH2qM1u/rqbiwM/Xca11EyTi49Yd9epnHs+t0oF+QpfJZfoLP/UKUPPuTJX2yrdg3YoPs+56Bzn4h6zgwoOpUOb4UxEpFgWw1ylUkGSSmZ4s7KyTLZrgq0HfsfB49adbmd81yno8/CQV4OSnnKpXnMdV0e4VODUqfKYuwhJ6VXbpS9CwnsxExHVHhbDvHfv3pg5cyYyMzOxfft2fPbZZ+jbt689arOb55/6O+5k5kMvJJP55jpGC8HcioNaqykZzk5KSoKfX5sKv165Aa1Wm845F/eeeYUwIiKyxGKYT548GXv37oUkSUhISMDIkSMxfPhwe9RmN60ebYC5Lz2NlPRsC0Pq92YIacN5z3I4GxaCyT1pNXvPRERUZSyG+fbt2zFgwAAMHjzYDuU8eO7Vi/Zwd0E9N0e5N+3gUHKMiIjIXiyG+fHjx7FmzRr06NEDI0aMQPv27e1Qlv2pUHRRFMOQduledHnD3Bp1IdxdHaunYCIiomIWw3z16tW4e/cuvvjiCyxZsgR5eXkYPnw4xo8fb4/67EatVqF+HefqLoOIiKjCrDo5uV69ehg5ciQmTZoEV1dXbNy40dZ1ERERkZUs9szPnDmD3bt3Iz4+Hq1bt8bEiRPRo0cPe9RGREREVrAY5q+++ipCQkLw2Wef4W9/+5s9aiIiIqIKsBjmnTp1wrRp0+xRCxEREd0Hi3Pmf/zxB0RlTr4mIiIim7LYM/f09ET//v3xxBNPwM3NTd4fGRlp08KIiIjIOhbDvEOHDujQoYM9aiEiIqL7YDHMp02bhry8PFy+fBmPP/448vPz4eLiYo/aiIiIyAoW58x/++03PP/885g0aRJSU1Px7LPP4tdff7VHbURERGQFi2G+YsUKbNq0CR4eHmjcuDFWrlyJ6Ohoe9RGREREVrAY5nl5eWjRooW83b17d+j1epsWRURERNazGOYajQZ3796FSlV0k5GLFy/avCgiIiKynsUwnzJlCl544QXcvHkTb775JkaPHo0pU6ZY9eT79+9Hv3790Lt3b2zZssXs4w4fPsxLxBIREd0ni6vZn3vuOTz22GM4evQoJEnC1KlT0bx5c4tPnJKSgtWrVyMuLg6Ojo4YNWoUOnfubDJkDwC3bt3CihUr7v8dEBER1XJW3TVNrVZjzJgxaNKkCeLj45GZmWnxcxISEtClSxd4eHjA1dUVQUFBiI+PL/O4yMhIXi6WiIioEiyG+fz587Fx40ZcuHAB8+bNw7Vr1zB37lyLT5yamgpPT09528vLCykpKSaP+fTTT9G6dWs88cQT91E6ERERAVYMsyclJWHXrl2IjY3FkCFD8NZbb2Ho0KEWn1iSJHnRHAAIIUy2k5OTcfDgQWzatAk3b968r+KTkpLu6/OqUmJiYnWXUOuwze2PbW5/bHP7U3KbWwxzIQTUajWOHj2KyZMnAyg6Xc2Sxo0b48SJE/J2WloavLy85O34+HikpaVh2LBh0Ol0SE1NxZgxY7B161ari/fz84OTk5PVj69qiYmJ6NSpU7W9fm3ENrc/trn9sc3tTwltnp+fb7YTa3GY/e9//zvCwsJw7do1PPXUU3jrrbfg6+tr8UX9/f1x7NgxpKenIzc3FwcPHkRgYKB8fPr06Thw4AD27duH2NhYeHl5VSjIiYiIqIjFnvmyZcvw9ddf48knn4SjoyOefPJJDB482OITe3t7Y8aMGQgNDYVOp0NISAjatWuHsLAwTJ8+HW3btq2K+omIiGo9i2Hu6uoKPz8/fPfdd9BoNPD397f6RivBwcEIDg422bdx48Yyj3v44Ydx6NAhK0smIiIiYxaH2Xfv3o3Q0FCcPHkSJ06cwNixY3HgwAF71EZERERWsNgz37RpE/bs2SMvXrt+/TomTZqEoKAgmxdHREREllnsmWu1WpNV6H/729+g1WptWhQRERFZz2zP/PTp0wAAHx8fLFq0CCNHjoSDgwPi4uLQsWNHuxVIRERE92Y2zF977TWT7cOHD8sfq1QqREZG2qwoIiIisp7ZMOfqciIiImW45wK4lJQUxMbGIjExESqVCh07dkRYWBgaN25sr/qIiIjIArML4G7cuIHhw4dDrVbj9ddfx+TJkyGEQEhICP7880971khERET3YLZnvmbNGrz55psmV3sLCgpCmzZtsGbNGvzjH/+wR31ERERkgdme+ZkzZ8q9bOuwYcNw8uRJW9ZEREREFWA2zIUQZj/J0dHRJsUQERFRxZkNcwcHB6SkpJTZn5KSwjAnIiJ6gJgN81GjRmHu3LnIysqS9/31118IDw/HmDFj7FIcERERWWZ2Adzo0aNx5coVdOvWDS1atEBhYSEuXbqE0NBQDBs2zJ41EhER0T3c8zzzt99+Gy+++CJ+++03AMATTzwBb29vuxRGRERE1rF41zRvb2/07t3bHrUQERHRfbB41zQiIiJ6sDHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAMcyIiIoVjmBMRESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFM6mYb5//37069cPvXv3xpYtW8oc/+abbzBo0CAMHDgQr776Ku7evWvLcoiIiGokm4V5SkoKVq9eja1bt2Lv3r3YsWMHzp8/Lx/PysrCggULEBsbi88//xw+Pj5Yv369rcohIiKqsWwW5gkJCejSpQs8PDzg6uqKoKAgxMfHy8d1Oh2ioqLg7e0NAPDx8cGNGzdsVQ4REVGNZbMwT01Nhaenp7zt5eWFlJQUebt+/fro1asXACAvLw+xsbF4/vnnbVUOERFRjaWx1RNLkgSVSiVvCyFMtg0yMzMxdepU+Pr6YsiQIRV6jaSkpErXWVmJiYnVXUKtwza3P7a5/bHN7U/JbW6zMG/cuDFOnDghb6elpcHLy8vkMampqXj55ZfRpUsXzJ07t8Kv4efnBycnp0rXer8SExPRqVOnanv92ohtbn9sc/tjm9ufEto8Pz/fbCfWZsPs/v7+OHbsGNLT05Gbm4uDBw8iMDBQPq7X6zF58mT07dsXERER5fbaiYiIyDKb9cy9vb0xY8YMhIaGQqfTISQkBO3atUNYWBimT5+Omzdv4syZM9Dr9Thw4ACAop52dHS0rUoiIiKqkWwW5gAQHByM4OBgk30bN24EALRt2xbnzp2z5csTERHVCrwCHBERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwNg3z/fv3o1+/fujduze2bNlS5vjZs2cxdOhQBAUFISIiAoWFhbYsh4iIqEbS2OqJU1JSsHr1asTFxcHR0RGjRo1C586d0aJFC/kxs2bNwpIlS9C+fXvMnTsXO3fuxJgxY2xVklnBb+2TP97/zqAKH39QKKXOyliw9Rqw9RqAmvserVUbvt5ESmXvn0+b9cwTEhLQpUsXeHh4wNXVFUFBQYiPj5eP//nnn8jLy0P79u0BAEOHDjU5bi/GDX4/2w8KpdRZGbXhPVqLbUH04KqOn0+b9cxTU1Ph6ekpb3t5eeHkyZNmj3t6eiIlJaVCr5GUlFT5QsuRmJho9XFLj61OD3JtVaU2vEdr2bIt2M72xza3PyX/DNkszCVJgkqlkreFECbblo5bw8/PD05OTpUrtHjI1linTp2sOp6YmGj62Opk6X3UBLXhPVrLjm3xQH2f1xJsc/ur0ja30c9nfn6+2U6szYbZGzdujLS0NHk7LS0NXl5eZo/funXL5Li9lJ7LqOj2g0IpdVZGbXiP1mJbED24quPn02Y9c39/f6xfvx7p6elwcXHBwYMHsXjxYvl4kyZN4OTkJP81tG/fPgQGBtqqnHuy1NBK+UWplDorY8GYh9ljKVYbvt5ESmXvn0+b9cy9vb0xY8YMhIaGYvDgwRgwYADatWuHsLAwnDp1CgCwatUqLFu2DH369EFOTg5CQ0NtVQ4REVGNZbOeOQAEBwcjODjYZN/GjRvlj319fbFr1y5blkBERFTj8QpwRERECscwJyIiUjiGORERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4Wx60RhbEUIAAAoKCqq5kqIL35N9sc3tj21uf2xz+3vQ29yQeYYMNKYS5e19wGVmZiI5Obm6yyAiIrK7li1bok6dOib7FBnmkiQhOzsbWq22wrdNJSIiUiIhBHQ6Hdzc3KBWm86SKzLMiYiIqAQXwBERESkcw5yIiEjhGOZEREQKxzAnIiJSOIY5ERGRwjHMiYiIFI5hTkREpHAM8wq4fv06xo4diz59+mDKlCnIzs42+9ijR49i/PjxdqyuZtm/fz/69euH3r17Y8uWLWWOnz17FkOHDkVQUBAiIiJQWFhYDVXWLJba3CA8PBxxcXF2rKzmstTm33zzDQYNGoSBAwfi1Vdfxd27d6uhyprFUpt//fXXCA4ORv/+/TF79uwH4rLhVhFktVdeeUV88cUXQggh3n33XbFy5coyj9Hr9eKjjz4STz/9tHjhhRfsXWKNcPPmTfHcc8+J27dvi+zsbBEcHCz++OMPk8f0799f/Oc//xFCCDFnzhyxZcuWaqi05rCmzW/evCkmTZok2rVrJ3bv3l1NldYclto8MzNTPPPMM+LmzZtCCCHWrFkjFi9eXF3l1giW2jw7O1sEBASItLQ0IYQQb7zxhti+fXt1lVsh7JlbSafT4ZdffkFQUBAAYOjQoYiPjy/zuAsXLuDChQtYvHixvUusMRISEtClSxd4eHjA1dUVQUFBJm39559/Ii8vD+3btwdg/mtB1rPU5kBRj6Znz57o27dvNVVZs1hqc51Oh6ioKHh7ewMAfHx8cOPGjeoqt0aw1Oaurq44dOgQGjVqhNzcXPz111+oW7duNVZsPYa5lW7fvg13d3doNEU3mvP09ERKSkqZxz3++OOIjo5GvXr17F1ijZGamgpPT09528vLy6StSx8397Ug61lqcwCYOHEihg8fbu/SaixLbV6/fn306tULAJCXl4fY2Fg8//zzdq+zJrHm+1yr1eL777/Hs88+i9u3byMgIMDeZd4XRd4C1da++uorLFu2zGRfs2bNytzUhTd5sQ1JkkzaVghhsm3pOFUc29T+rG3zzMxMTJ06Fb6+vhgyZIg9S6xxrG3z7t274/jx44iJicGCBQvwzjvv2LPM+8KeeTn69u2LH374weTfxx9/jMzMTOj1egBAWloavLy8qrnSmqlx48ZIS0uTt0u3denjt27d4teikiy1OVU9a9o8NTUVY8aMgY+PD6Kjo+1dYo1jqc3v3LmDH3/8Ud4ODg7G77//btca7xfD3EparRZPPvkk/v3vfwMA9u7di8DAwGquqmby9/fHsWPHkJ6ejtzcXBw8eNCkrZs0aQInJyckJiYCAPbt28evRSVZanOqepbaXK/XY/Lkyejbty8iIiI4UlIFLLW5EAKzZs3C9evXAQDx8fHo2LFjdZVbIRxmr4CoqCjMnj0bGzZswEMPPYSYmBgAwLZt25CamorXX3+9miusGby9vTFjxgyEhoZCp9MhJCQE7dq1Q1hYGKZPn462bdti1apViIyMRFZWFtq0aYPQ0NDqLlvRrGlzqlqW2vzmzZs4c+YM9Ho9Dhw4AADw8/NjD70SrPk+X7x4MSZNmgSVSoUWLVpg4cKF1V22VXg/cyIiIoXjMDsREZHCMcyJiIgUjmFORESkcAxzIiIihWOYExERKRzDnEhBfHx8EBwcjEGDBsn/IiIiAACDBg1CRkYGMjMzTU7Ve/fdd/HNN99U+LU6dOiAa9eumezbs2cP+vTpU+axt27dQvv27XHr1q1yn+vatWvo0KFDhWsgIuvwPHMihfnkk0/QoEGDMvv37dsHoCg4T506Je8/fvw4WrRoUSWv3a9fPyxfvhyJiYno1KmTvH/37t3o2bMnGjVqVCWvQ0QVwzAnqiF8fHxw7NgxzJkzB3l5eRg0aBBGjBiBpKQkrFy5Eg4ODujevTtWrVqFX375BXq9Hq1bt0ZkZCTc3d1x4sQJLF68GCqVCm3btoUkSWVew8nJCcOGDcPu3bvlMBdC4LPPPsPKlSvx3//+F//4xz9QUFCAtLQ0+Pv7Y+nSpSbPsX79ety+fRvz588vs52ZmYno6GgkJydDp9Oha9euCA8Ph0ajwbp16/D1119Dq9Wifv36WLZsGS85S1SMw+xECjN+/HiTYfa//vrL5PiyZcvg7OyMffv2YezYsfDz80N4eDh69eqF2NhYODg4IC4uDp9//jm8vLywatUqFBQU4PXXX8fs2bOxd+9edO7cGXl5eeW+/ujRo3HgwAFkZ2cDKLqtpLu7Ozp27IhPP/0U06dPx2effYYvv/wShw4dQlJSktXvbenSpWjTpg3i4uKwd+9e3L59G//6179w48YNfPLJJ9i9ezfi4uLwzDPP4OTJk/ffiEQ1DHvmRApjbpjdGocPH0ZmZiYSEhIAFN0zu2HDhkhOToZGo0HXrl0BAAMGDJB7zqU1bdoUnTp1wldffYWQkBDs2LEDY8eOBQAsX74cP/zwAz744ANcvHgR+fn5yMnJgYeHh9X1nTp1Crt27QIA+Q8Kb29v+a5hgYGBCAwMlGslIoY5Ua0iSRLmzp2L7t27AwCys7ORn5+P69evo/SVnTUa878exowZgw8++AA9evRAYmIiVq5cCQB44YUX4OPjg27duqFv37747bffyjyvSqUy2afT6UzqW7t2LZo3bw4AyMjIgEqlglqtxubNm3Hq1CkcO3YMS5cuRbdu3RAeHl65BiGqITjMTlTDaDQa6PV6OTAdHBxQWFgIAAgICMCWLVtQUFAASZIwb948xMTEwMfHB0IIfP/99wCAb7/9Fnfv3jX7GoGBgbh16xY2bNiAgQMHwtnZGRkZGTh16hRmzpyJ3r174+bNm7hy5UqZuff69evj9OnTEEIgKysL3333nXwsICAAmzZtghACBQUFmDJlCjZv3oxz585hwIABaN68OSZNmoQXX3zRZJEfUW3HnjlRDePp6Yl27dqhf//+2LJlC3r06IGYmBjodDq8+uqrWLFiBYYMGQK9Xo9WrVph9uzZ0Gq1eO+997BgwQLExMSgVatWaNiwodnXUKvVGDVqFGJiYhAfHw8AqFu3Ll555RUMGTIErq6u8Pb2RseOHXH58mU0bdpU/tyBAwfiyJEj6N27N7y9vfH000/Lf3hEREQgOjoawcHB0Ol08Pf3x8SJE6HVatG3b18MGzYMrq6ucHZ2RmRkpG0bkkhBeNc0IiIiheMwOxERkcIxzImIiBSOYU5ERKRwDHMiIiKFY5gTEREpHMOciIhI4RjmRERECscwJyIiUrj/BxBH+7l9Zu7FAAAAAElFTkSuQmCC",
+      "text/plain": [
+       "<Figure size 576x432 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "# Visualize logistic regression\n",
+    "sns.set(style=\"whitegrid\")\n",
+    "plt.figure(figsize=(8, 6))\n",
+    "sns.regplot(x=result.fittedvalues, y=y_train, logistic=True, scatter_kws={'s': 10})\n",
+    "plt.title('Logistic Regression - Fitted Values vs. Observed')\n",
+    "plt.xlabel('Fitted Values')\n",
+    "plt.ylabel('Observed (Actual)')\n",
+    "plt.show()\n",
+    "\n",
+    "# Predict on the test set\n",
+    "y_pred = result.predict(X_test)\n",
+    "\n",
+    "# You can use y_pred for further evaluation if needed"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.9.12"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
-- 
GitLab