{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "722b2d4b-4338-4a2b-a71b-ac19c3fe9a86",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "from matplotlib import pyplot as plt\n",
    "import seaborn as sns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "45cd9598-b286-4532-a4dc-1fc30f5fdfdb",
   "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>price</th>\n",
       "      <th>area</th>\n",
       "      <th>bedrooms</th>\n",
       "      <th>bathrooms</th>\n",
       "      <th>stories</th>\n",
       "      <th>mainroad</th>\n",
       "      <th>guestroom</th>\n",
       "      <th>basement</th>\n",
       "      <th>hotwaterheating</th>\n",
       "      <th>airconditioning</th>\n",
       "      <th>parking</th>\n",
       "      <th>prefarea</th>\n",
       "      <th>furnishingstatus</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>13300000</td>\n",
       "      <td>7420</td>\n",
       "      <td>4</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>no</td>\n",
       "      <td>no</td>\n",
       "      <td>yes</td>\n",
       "      <td>2</td>\n",
       "      <td>yes</td>\n",
       "      <td>furnished</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>12250000</td>\n",
       "      <td>8960</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>no</td>\n",
       "      <td>no</td>\n",
       "      <td>yes</td>\n",
       "      <td>3</td>\n",
       "      <td>no</td>\n",
       "      <td>furnished</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>12250000</td>\n",
       "      <td>9960</td>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>no</td>\n",
       "      <td>2</td>\n",
       "      <td>yes</td>\n",
       "      <td>semi-furnished</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>12215000</td>\n",
       "      <td>7500</td>\n",
       "      <td>4</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>yes</td>\n",
       "      <td>3</td>\n",
       "      <td>yes</td>\n",
       "      <td>furnished</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>11410000</td>\n",
       "      <td>7420</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>yes</td>\n",
       "      <td>yes</td>\n",
       "      <td>yes</td>\n",
       "      <td>no</td>\n",
       "      <td>yes</td>\n",
       "      <td>2</td>\n",
       "      <td>no</td>\n",
       "      <td>furnished</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      price  area  bedrooms  bathrooms  stories mainroad guestroom basement  \\\n",
       "0  13300000  7420         4          2        3      yes        no       no   \n",
       "1  12250000  8960         4          4        4      yes        no       no   \n",
       "2  12250000  9960         3          2        2      yes        no      yes   \n",
       "3  12215000  7500         4          2        2      yes        no      yes   \n",
       "4  11410000  7420         4          1        2      yes       yes      yes   \n",
       "\n",
       "  hotwaterheating airconditioning  parking prefarea furnishingstatus  \n",
       "0              no             yes        2      yes        furnished  \n",
       "1              no             yes        3       no        furnished  \n",
       "2              no              no        2      yes   semi-furnished  \n",
       "3              no             yes        3      yes        furnished  \n",
       "4              no             yes        2       no        furnished  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.read_csv('Housing.csv')\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "921a52a1-e9ef-43ca-a9c1-4574165305e3",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "price               0\n",
       "area                0\n",
       "bedrooms            0\n",
       "bathrooms           0\n",
       "stories             0\n",
       "mainroad            0\n",
       "guestroom           0\n",
       "basement            0\n",
       "hotwaterheating     0\n",
       "airconditioning     0\n",
       "parking             0\n",
       "prefarea            0\n",
       "furnishingstatus    0\n",
       "dtype: int64"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.isnull().sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "a37f4137-43d7-4ba5-9a9f-4aee570e117e",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "545"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(df)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "903a2c09-0ebc-4353-bb25-b3b409695cef",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Columns with more than 30% missing values:\n",
      "Series([], dtype: float64)\n"
     ]
    }
   ],
   "source": [
    "missing_percentage = df.isnull().mean() * 100\n",
    "# Filter columns with more than 30% (or 50%) missing values\n",
    "columns_with_missing_30 = missing_percentage[missing_percentage > 30]\n",
    "# Display the columns with more than 30% missing values\n",
    "print(\"Columns with more than 30% missing values:\")\n",
    "print(columns_with_missing_30)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "ecccf042-b368-41e9-8fb1-f8b9672e3924",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Columns dropped: []\n",
      "Remaining columns: Index(['price', 'area', 'bedrooms', 'bathrooms', 'stories', 'mainroad',\n",
      "       'guestroom', 'basement', 'hotwaterheating', 'airconditioning',\n",
      "       'parking', 'prefarea', 'furnishingstatus'],\n",
      "      dtype='object')\n"
     ]
    }
   ],
   "source": [
    "missing_percentage = df.isnull().mean() * 100\n",
    "threshold = 30\n",
    "# Filter columns with more than the threshold percentage of missing values\n",
    "columns_to_drop = missing_percentage[missing_percentage > threshold].index\n",
    "# Drop the columns\n",
    "df_cleaned = df.drop(columns=columns_to_drop)\n",
    "# Display the resulting dataframe after removing columns with too many missing valu\n",
    "print(f\"Columns dropped: {list(columns_to_drop)}\")\n",
    "print(f\"Remaining columns: {df_cleaned.columns}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "abe417d2-6c67-4695-8eda-d5cac3373441",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Columns dropped: []\n",
      "Remaining columns: Index(['price', 'area', 'bedrooms', 'bathrooms', 'stories', 'mainroad',\n",
      "       'guestroom', 'basement', 'hotwaterheating', 'airconditioning',\n",
      "       'parking', 'prefarea', 'furnishingstatus'],\n",
      "      dtype='object')\n"
     ]
    }
   ],
   "source": [
    "print(f\"Columns dropped: {list(columns_to_drop)}\")\n",
    "print(f\"Remaining columns: {df_cleaned.columns}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "d2bdf674-3a2c-412e-a04c-5026e7f6c783",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "        price   area  bedrooms  bathrooms  stories mainroad guestroom  \\\n",
      "0    13300000   7420         4          2        3      yes        no   \n",
      "1    12250000   8960         4          4        4      yes        no   \n",
      "2    12250000   9960         3          2        2      yes        no   \n",
      "3    12215000   7500         4          2        2      yes        no   \n",
      "4    11410000   7420         4          1        2      yes       yes   \n",
      "..        ...    ...       ...        ...      ...      ...       ...   \n",
      "395   3500000   3600         6          1        2      yes        no   \n",
      "401   3500000   9500         3          1        2      yes        no   \n",
      "403   3500000  12944         3          1        1      yes        no   \n",
      "472   3010000   3630         4          1        2      yes        no   \n",
      "536   1960000   3420         5          1        2       no        no   \n",
      "\n",
      "    basement hotwaterheating airconditioning  parking prefarea  \\\n",
      "0         no              no             yes        2      yes   \n",
      "1         no              no             yes        3       no   \n",
      "2        yes              no              no        2      yes   \n",
      "3        yes              no             yes        3      yes   \n",
      "4        yes              no             yes        2       no   \n",
      "..       ...             ...             ...      ...      ...   \n",
      "395       no              no              no        1       no   \n",
      "401       no              no              no        3      yes   \n",
      "403       no              no              no        0       no   \n",
      "472       no              no              no        3       no   \n",
      "536       no              no              no        0       no   \n",
      "\n",
      "    furnishingstatus  price_Outlier  area_Outlier  bedrooms_Outlier  \\\n",
      "0          furnished           True         False             False   \n",
      "1          furnished           True         False             False   \n",
      "2     semi-furnished           True         False             False   \n",
      "3          furnished           True         False             False   \n",
      "4          furnished           True         False             False   \n",
      "..               ...            ...           ...               ...   \n",
      "395      unfurnished          False         False              True   \n",
      "401      unfurnished          False         False             False   \n",
      "403      unfurnished          False          True             False   \n",
      "472   semi-furnished          False         False             False   \n",
      "536      unfurnished          False         False              True   \n",
      "\n",
      "     bathrooms_Outlier  stories_Outlier  parking_Outlier  \n",
      "0                False            False            False  \n",
      "1                 True             True             True  \n",
      "2                False            False            False  \n",
      "3                False            False             True  \n",
      "4                False            False            False  \n",
      "..                 ...              ...              ...  \n",
      "395              False            False            False  \n",
      "401              False            False             True  \n",
      "403              False            False            False  \n",
      "472              False            False             True  \n",
      "536              False            False            False  \n",
      "\n",
      "[82 rows x 19 columns]\n"
     ]
    }
   ],
   "source": [
    "# تعريف دالة للكشف عن القيم الشاذة باستخدام IQR\n",
    "def detect_outliers_iqr(column):\n",
    "    Q1 = column.quantile(0.25)\n",
    "    Q3 = column.quantile(0.75)\n",
    "    IQR = Q3 - Q1\n",
    "    lower_bound = Q1 - 1.5 * IQR\n",
    "    upper_bound = Q3 + 1.5 * IQR\n",
    "    # إرجاع سلسلة بوليانية تشير إلى ما إذا كانت القيمة شاذة أم لا\n",
    "    return (column < lower_bound) | (column > upper_bound)\n",
    "\n",
    "# تطبيق طريقة IQR على كل عمود في DataFrame\n",
    "for col in data.select_dtypes(include=['float64', 'int64']).columns:\n",
    "    data[f'{col}_Outlier'] = detect_outliers_iqr(data[col])\n",
    "\n",
    "# تصفية DataFrame لعرض الصفوف التي تحتوي على أي علامة شاذة\n",
    "outliers_only = data[data.filter(like='_Outlier').any(axis=1)]\n",
    "\n",
    "# عرض DataFrame المصفى الذي يحتوي على القيم الشاذة\n",
    "print(outliers_only)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "88924d60-a623-4aed-a6ed-811dd581850b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABV6klEQVR4nO3dd5wV1d0/8O/uwi516VURAUUQRYwFsaGR2LE9ggUNGokx4KMmStQYRaPGnmiM3SiJjYi9ImpUoqKxIVYExa7YaCrS9vz+8Lf34cIiy7o7u8D7/Xrx0p05M/M9s3fPufO5ZQpSSikAAAAAIEOFtV0AAAAAAGseoRQAAAAAmRNKAQAAAJA5oRQAAAAAmRNKAQAAAJA5oRQAAAAAmRNKAQAAAJA5oRQAAAAAmRNKAQAAAJA5oRSrvIKCgjj99NMzOda4ceOiT58+0aBBgygoKIhZs2ZlctwfI8vzA1DXmTMAVg+r63h++umnR0FBQXzxxRc1doxyO+ywQ+ywww41fhz4IUIplmv06NFRUFCQ969t27ax4447xoMPPljb5f1or7/+epx++unx7rvvVqr9l19+GYMHD46GDRvGZZddFjfccEM0bty4ZosEWEWYM/KZM4BVlfE8n/Ecala92i6Auu+Pf/xjdOnSJVJKMWPGjBg9enTsvvvuce+998aee+5Z2+VV2euvvx5nnHFG7LDDDrHuuuuusP1zzz0Xc+fOjTPPPDMGDBhQ8wVWk3nz5kW9ev7UgWyYM763qs4ZAOWM598znkPNcqXKCu22226x+eab534+4ogjol27dnHLLbes0hPSyvrss88iIqJ58+bVts9vvvmmRl5pKSsriwULFkSDBg2iQYMG1b5/gOUxZ3xvVZozamq/wKrNeP69VWk8rwnfffddFBcXR2GhD1lRMzyyWGnNmzePhg0bLvPum2+++SaOP/746NSpU5SUlMQGG2wQF154YaSUIuL7d+z06NEjevToEfPmzctt99VXX0WHDh1i6623jsWLF0dExGGHHRZNmjSJd955J3bZZZdo3LhxdOzYMf74xz/m9vdDXnrppdhtt92itLQ0mjRpEjvttFM888wzufWjR4+OQYMGRUTEjjvumHtr8uOPP17h/nbYYYcYOnRoRERsscUWUVBQEIcddlhu/dixY2OzzTaLhg0bRuvWreOQQw6Jjz76KG8f5X16++23Y/fdd4+mTZvGkCFDltuH8s+Tv/nmmzF48OAoLS2NVq1axbHHHhvfffddXtuCgoI4+uij46abbopevXpFSUlJjBs3Lrdu6c/bf/TRR3HEEUdEx44do6SkJLp06RK//vWvY8GCBbk2s2bNiuOOOy73+1xvvfXivPPOi7KysuXWDLA0c0Y2c8Z7770Xw4cPjw022CAaNmwYrVq1ikGDBi3z8ZTyj+U88cQTMXz48Gjbtm2svfbaufUPPvhgbLfddtG4ceNo2rRp7LHHHvHaa6/l7WPy5Mlx2GGHRdeuXaNBgwbRvn37+MUvfhFffvnlcusDVn3G82zG83JffPHFCq8BIiJuvPHGXA0tW7aMAw88MD744INl2l199dXRrVu3aNiwYWy55Zbxn//8Z5k2jz/+eBQUFMSYMWPiD3/4Q6y11lrRqFGjmDNnTqX7GxHx73//OzeXNG/ePPbee+9444038tqUX+u89dZbccghh0SzZs2iTZs2ceqpp0ZKKT744IPYe++9o7S0NNq3bx8XXXTRMse59NJLo1evXtGoUaNo0aJFbL755nHzzTev8NxSt3inFCs0e/bs+OKLLyKlFJ999llceuml8fXXX8chhxySa5NSir322isee+yxOOKII6JPnz7x0EMPxciRI+Ojjz6Kv/zlL9GwYcP4xz/+Edtss02ccsop8ec//zkiIkaMGBGzZ8+O0aNHR1FRUW6fixcvjl133TW22mqrOP/882PcuHExatSoWLRoUfzxj39cbr2vvfZabLfddlFaWhq/+93von79+nHVVVfFDjvsEE888UT07ds3tt9++zjmmGPir3/9a/z+97+Pnj17RkTk/ru0U045JTbYYIO4+uqrc29l7tatW0R8P7kdfvjhscUWW8Q555wTM2bMiEsuuSSeeuqpeOmll/JeVVm0aFHssssuse2228aFF14YjRo1WuH5Hzx4cKy77rpxzjnnxDPPPBN//etfY+bMmfHPf/4zr92///3vuPXWW+Poo4+O1q1bL/ftyB9//HFsueWWMWvWrDjyyCOjR48e8dFHH8Vtt90W3377bRQXF8e3334b/fv3j48++ih+9atfxTrrrBNPP/10nHzyyfHJJ5/ExRdfvMK6gTWTOaN25oznnnsunn766TjwwANj7bXXjnfffTeuuOKK2GGHHeL1119fZtvhw4dHmzZt4rTTTotvvvkmIiJuuOGGGDp0aOyyyy5x3nnnxbfffhtXXHFFbLvttvHSSy/l5pWHH3443nnnnTj88MOjffv28dprr8XVV18dr732WjzzzDNRUFCw3DqBVYfxvO5fA5x99tlx6qmnxuDBg2PYsGHx+eefx6WXXhrbb799Xg1///vf41e/+lVsvfXWcdxxx8U777wTe+21V7Rs2TI6deq0zLHPPPPMKC4ujhNOOCHmz58fxcXFle7vI488Ervttlt07do1Tj/99Jg3b15ceumlsc0228SLL764zDXKAQccED179oxzzz037r///jjrrLOiZcuWcdVVV8VPf/rTOO+88+Kmm26KE044IbbYYovYfvvtIyLimmuuiWOOOSb233//XGA3efLkePbZZ+Pggw9e4fmlDkmwHNdff32KiGX+lZSUpNGjR+e1veuuu1JEpLPOOitv+f77758KCgrStGnTcstOPvnkVFhYmCZMmJDGjh2bIiJdfPHFedsNHTo0RUT63//939yysrKytMcee6Ti4uL0+eef55ZHRBo1alTu53322ScVFxent99+O7fs448/Tk2bNk3bb799bln5sR977LGVOh/PPfdcbtmCBQtS27Zt00YbbZTmzZuXW37fffeliEinnXbaMn066aSTKnW8UaNGpYhIe+21V97y4cOHp4hIL7/8cm5ZRKTCwsL02muvLbOfpc/Pz3/+81RYWJjXj3JlZWUppZTOPPPM1Lhx4/TWW2/lrT/ppJNSUVFRev/99yvVB2DNYc6o+HxkNWd8++23yyybOHFiioj0z3/+c5m6tt1227Ro0aLc8rlz56bmzZunX/7yl3n7+PTTT1OzZs3ylld0rFtuuSVFRJowYUKl6gXqLuN5xeejrl0DvPvuu6moqCidffbZee1eeeWVVK9evdzy8lr79OmT5s+fn2t39dVXp4hI/fv3zy177LHHUkSkrl275o31K9PfPn36pLZt26Yvv/wyt+zll19OhYWF6ec///ky/TzyyCNzyxYtWpTWXnvtVFBQkM4999zc8pkzZ6aGDRumoUOH5pbtvffeqVevXj98Mlkl+PgeK3TZZZfFww8/HA8//HDceOONseOOO8awYcPijjvuyLV54IEHoqioKI455pi8bY8//vhIKeXdqeP000+PXr16xdChQ2P48OHRv3//ZbYrd/TRR+f+v/wjagsWLIhHHnmkwvaLFy+O8ePHxz777BNdu3bNLe/QoUMcfPDB8eSTT+beflodnn/++fjss89i+PDhed/dtMcee0SPHj3i/vvvX2abX//61yt1jBEjRuT9/L//+78R8f05X1L//v1jww03/MF9lZWVxV133RUDBw7M+46AcuWvbo8dOza22267aNGiRXzxxRe5fwMGDIjFixfHhAkTVqoPwJrDnLF8NTlnNGzYMPf/CxcujC+//DLWW2+9aN68ebz44ovLtP/lL3+Z986Ehx9+OGbNmhUHHXRQ3rhfVFQUffv2jccee6zCY3333XfxxRdfxFZbbRURUeGxgFWT8Xz56sI1wB133BFlZWUxePDgvHG7ffv2sf766+fG7fJajzrqqCguLs7t77DDDotmzZpVeOyhQ4fmjfWV7e8nn3wSkyZNisMOOyxatmyZa9e7d+/42c9+tsz1S0TEsGHDcv9fVFQUm2++eaSU4ogjjsgtb968eWywwQbxzjvv5C378MMP47nnnlveKWQV4eN7rNCWW26ZF2AcdNBBsemmm8bRRx8de+65ZxQXF8d7770XHTt2jKZNm+ZtW/5W2Pfeey+3rLi4OK677rrYYostokGDBnH99ddX+Fb/wsLCvEklIqJ79+4REcu9hevnn38e3377bWywwQbLrOvZs2eUlZXFBx98EL169apc51egvF8VHa9Hjx7x5JNP5i2rV69e3nd3VMb666+f93O3bt2isLBwmXPQpUuXFe7r888/jzlz5sRGG230g+2mTp0akydPjjZt2lS4vvwLHwGWZs5YvpqcM+bNmxfnnHNOXH/99fHRRx/lfffK7Nmzl2m/9JwxderUiIj46U9/WuH+S0tLc///1VdfxRlnnBFjxoxZZj6o6FjAqsl4vnx14Rpg6tSpkVJapl25+vXr59W6dLv69esvc57LLT1HVLa/P9SuZ8+e8dBDDy3zJe/rrLNOXrtmzZpFgwYNonXr1sssX/K7C0888cR45JFHYsstt4z11lsvdt555zj44INjm222qbBP1F1CKVZaYWFh7LjjjnHJJZfE1KlTqzS4P/TQQxHx/SusU6dOrVSgsjooKSn50XeuWN53dSz5asaPVVZWFj/72c/id7/7XYXry58YAKyIOaPqVmbO+N///d+4/vrr47jjjot+/fpFs2bNoqCgIA488MAKb1Cx9JxR3uaGG26I9u3bL9N+yS82Hjx4cDz99NMxcuTI6NOnTzRp0iTKyspi1113dTMMWI0Zz6uuJq4BysrKoqCgIB588MG8d76Wa9KkSZWPVZ3XFStSUe0VLYuIvBdcevbsGVOmTIn77rsvxo0bF7fffntcfvnlcdppp8UZZ5xRY/VS/YRSVMmiRYsiIuLrr7+OiIjOnTvHI488EnPnzs17peTNN9/MrS83efLk+OMf/xiHH354TJo0KYYNGxavvPLKMm8fLSsri3feeScvAHnrrbciIpb7Jd5t2rSJRo0axZQpU5ZZ9+abb0ZhYWHuy/yq44tYy/s1ZcqUZV5dnjJlSl6/q2rpCXvatGlRVla23HPwQ9q0aROlpaXx6quv/mC7bt26xddffx0DBgxY6WMALM2c8b2anDNuu+22GDp0aN7dib777ruYNWtWpbYv/+Letm3b/uDYP3PmzHj00UfjjDPOiNNOOy23vPydVsDqzXj+vbpwDdCtW7dIKUWXLl1+8AXj8lqmTp2aV+vChQtj+vTpsckmm6ywlsr2d8l2S3vzzTejdevWee+S+rEaN24cBxxwQBxwwAGxYMGC2G+//eLss8+Ok08+Oe9jhtRtvlOKlbZw4cIYP358FBcX596au/vuu8fixYvjb3/7W17bv/zlL1FQUBC77bZbbtvDDjssOnbsGJdcckmMHj06ZsyYEb/5zW8qPNaS+0spxd/+9reoX79+7LTTThW2Lyoqip133jnuvvvuvLf3zpgxI26++ebYdtttcx9BKB8QK/uEvSKbb755tG3bNq688sqYP39+bvmDDz4Yb7zxRuyxxx5V3ne5yy67LO/nSy+9NCIid05XRmFhYeyzzz5x7733xvPPP7/M+vJXHwYPHhwTJ07MvZq1pFmzZuWekACsiDnj/9TknFFUVLTM7dIvvfTS3G3WV2SXXXaJ0tLS+NOf/hQLFy5cZv3nn3+eO05ELHMsd2WF1Z/x/P/UhWuA/fbbL4qKiuKMM85YZkxOKeU+6rb55ptHmzZt4sorr4wFCxbk2owePbrS56Cy/e3QoUP06dMn/vGPf+Tt+9VXX43x48fH7rvvXrnOV8KSH+WL+P7joRtuuGGklCqcx6i7vFOKFXrwwQdzr3Z89tlncfPNN8fUqVPjpJNOyg3uAwcOjB133DFOOeWUePfdd2OTTTaJ8ePHx9133x3HHXdc7hXYs846KyZNmhSPPvpoNG3aNHr37h2nnXZa/OEPf4j9998/b6Bq0KBBjBs3LoYOHRp9+/aNBx98MO6///74/e9/v9zvOio/xsMPPxzbbrttDB8+POrVqxdXXXVVzJ8/P84///xcuz59+kRRUVGcd955MXv27CgpKYmf/vSn0bZt20qfm/r168d5550Xhx9+ePTv3z8OOuig3O1R11133eVOtCtj+vTpsddee8Wuu+4aEydOjBtvvDEOPvjgSr2qUZE//elPMX78+Ojfv38ceeSR0bNnz/jkk09i7Nix8eSTT0bz5s1j5MiRcc8998See+4Zhx12WGy22WbxzTffxCuvvBK33XZbvPvuu8t8zhsgwpzxQ2pyzthzzz3jhhtuiGbNmsWGG24YEydOjEceeSRatWpVqe1LS0vjiiuuiEMPPTR+8pOfxIEHHhht2rSJ999/P+6///7YZptt4m9/+1uUlpbG9ttvH+eff34sXLgw1lprrRg/fnxMnz69yrUDdZPxfPnqwjVAt27d4qyzzoqTTz453n333dhnn32iadOmMX369LjzzjvjyCOPjBNOOCHq168fZ511VvzqV7+Kn/70p3HAAQfE9OnT4/rrr1/ud0r9mP5ecMEFsdtuu0W/fv3iiCOOiHnz5sWll14azZo1i9NPP/1Hn5dyO++8c7Rv3z622WabaNeuXbzxxhvxt7/9LfbYY49lvuOMOi7z+/2xyqjodrANGjRIffr0SVdccUUqKyvLaz937tz0m9/8JnXs2DHVr18/rb/++umCCy7ItXvhhRdSvXr18m7xmtL3t/7cYostUseOHdPMmTNTSt/fOrVx48bp7bffTjvvvHNq1KhRateuXRo1alRavHhx3vax1O1gU0rpxRdfTLvssktq0qRJatSoUdpxxx3T008/vUwfr7nmmtS1a9dUVFS0wlvDVnQ72HL/+te/0qabbppKSkpSy5Yt05AhQ9KHH36Y16a8T5VVfpvU119/Pe2///6padOmqUWLFunoo4/OuxVr+TkYMWJEhfup6Py899576ec//3lq06ZNKikpSV27dk0jRozIu03s3Llz08knn5zWW2+9VFxcnFq3bp223nrrdOGFF6YFCxZUuh/AmsGcUfH5yGrOmDlzZjr88MNT69atU5MmTdIuu+yS3nzzzdS5c+e8W2j/UF0pfX87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vHmx8cYbx7777vuj+70yx6/J/gGrvpUZJ5bXdsGCBXHnnXfGK6+8Eg0bNoydd945fvKTn1R6vKnOsWrx4sUxadKkmDRpUkRE9OnTJ/r06ZOrs7rnobqkqufRXAGwrA8//DCGDRsW8+fPj5KSkrj22mtj7bXXru2yak3Wc6hQCtYAt912Wzz66KOxePHi3LK77rorIiLat28fw4cPj+233z5vmwkTJsTll18en3766XL3W9E+rrzyyhg7dmzesa688soYNGhQHHXUUVWqv6Jalld3TWxfmf2fd9558c033+SWPfnkk3HVVVfF4MGDq9zvlTl+TfYPWPWtzDixvLbdunWLiRMnRllZWW75ww8/HI0aNYqTTjppheNNdY5VEyZMiD//+c8xa9as3LIbbrghmjdvHr169YpnnnmmWuehuqSq59FcAbCsnXbaKW+++O677+KQQw6JoqKiePTRR2uxstpRE9dyK+Lje7AGGD9+fDRo0CAiIjbffPM4+OCDo3nz5hERUVhYGKNGjYoJEybk2k+YMCFGjRoVXbt2jcsuuyz+53/+JyIi92pqt27dKtzHKaecEmPGjInS0tI44YQT4vbbb48TTjghSktLY8yYMXHllVeudO1L1/LAAw/EZZddFl27dl2m7prYvjL1nXbaafHNN99E06ZN45hjjolzzjknunXrFmVlZVXu98ocvyb7B6z6XnzxxUqPE8sbUwoLC+Opp56KsrKy6NatW5xzzjlxzDHHRNOmTePbb7+N00477QfHm+ocq8rH3VmzZsXGG28cf/7zn+Oiiy6KjTfeOGbNmhVPPfVUNGjQoNrmobqkqufRXAGwrCUDqdLS0jj++OOjtLQ0Ir5/Z+lOO+1Um+Vl7sorr6z2a7nKEErBamzRokUREdG0adNo3LhxbL311nH++efHkUceGbfddlu0aNEiZsyYEX379o0rrrgiFi9eHIsXL47LL788+vXrF2eddVasv/76cdddd0WLFi2iZcuW0aJFi/j222/jiCOOyNvHFltsEU899VQ0b948xo4dG3vuuWe0atUq9txzzxg7dmy0aNEixo4dGwsWLKh0/UvX0qtXr2jUqFH06tUrzjrrrOjXr1+u7prYvjL1XXbZZRER0bx587jzzjtjv/32i379+sU111wT/fr1i8LCwrj11ltXqt8rc/ya7B+wehg7dmylxonljSnrr79+7t01xcXFceWVV0a/fv1iv/32izvvvDNatGgRERGXX355heNNdY5V5eNuSUlJ9OvXLy655JL4yU9+EptttllccMEFuXZNmzaN3Xbb7UfPQ3VJVc+juQJgWR9++GFu3LvtttvinnvuiYEDB8Y999wTt912W0R8P35++OGHtVlmZhYsWJA3V1bHtVxlVfrje/Pnz4/58+fnfp4zZ061FfHee+9V275qw6pef01xXmrfHXfcERERW221VTz88MMxatSoKCz8PouuV69e/OIXv4iLLroo1lprrXjmmWdi8uTJERHx6aefxqmnnhqFhYVx9913x+LFi+NnP/tZ3HrrrXH88cfHRRddFJMnT45NN900t4/vvvsuIiJ23nnnqFcvf2hZ8lh33313DBo0qFL1T548Oa+WJRUWFsaQIUNixIgRuVqqe/vK1DdjxoyIiBg2bFhevwsLC+OQQw6JiRMnRkSsVL9X5vg12b+qMFf8n1Wt3priPNSe8nP/5ZdfxpAhQ1Y4TkREhWPK3XffnfvI3oIFC+LVV1/NjSlLju+ffvppheNNdY5VS467hxxySN7+7r333tz/L11LVeehuqSq59FcsWZyHir2ySefxFtvvVXbZdQJa/pjZNiwYRHx/TukWrdunbeudevW0bRp05g7d24MGzYsxo0bVxslZqr8mu+II46otmu5yqp0KHXOOefEGWecUa0HL3f22WfXyH6pXX6vdUebNm0iIqJLly55y/v16xcRkXti+NVXX+XWlbf9+OOPIyJirbXWytumvG35z7Nnz46IiI4dO1ZYQ3m78v1VRvkxlq576RqXrLs6t69sfRH/17+K9h+xcv1e2ePXVP+qwlzB0vze6oaVGSeWbrv0+LX0mLLk+FfReFOdY1V11FkT43EWqnoezRXwf6677rq47rrrarsM6oDy659f/vKXFa4//PDD469//WtegL46K58bK7qmWXJ5TcyhlQ6lTj755Pjtb3+b+3nOnDnRqVOnainilFNOic6dO1fLvmrDe++9ZwKswKr+e10d3HrrrfHII4/E559/HhER06dPj169euXWl7+Lp6SkJCIiWrZsmVtX3rY8ZCq/4175NuVty39u1qxZRCx/oCpvt7zQqiLlx1i67iVrXLru6ty+svVFfN+/Pffcs8L9R6xcv1f2+DXVv6owV/wfc8P3VrXf2+pkycfgyowTS7ddevxaekwpH98rWrfksuoYq6qjzpoYj7NQ1fNorlgzmYMq9otf/CK22mqr2i6jTljTHyMlJSXx3XffxTXXXBMDBw5cZv3111+fa7cmKJ8bK7qmKV++ZLvqVOlQqqSkpMZ+IZ07d47u3bvXyL6pPX6vtW+//faLRx55JJ555plo27Zt3HTTTXHWWWdFYWFhLFq0KK677rooKiqKjz76KDp06BC9e/eOiO/vxlPedu+9944rr7wyHn744WjTpk1cd911ubZL7qP8i9THjx8fRx55ZN7bPpdst/fee1e6/t69e+fVsuTHDsrKyuKmm27Kq7u6t69Mfe3atYsZM2bEtddeG7vuumuu32VlZXHjjTfmjrky/V6Z49dk/6rCXMHS/N5qX6tWrSo9TlQ0puy9995xxRVXRFlZWRQXF8dGG22U20f5+F6+bUXjTXWOVeXj7qxZs+LGG2+Ms88+O7e/gQMH5r7nb+laqjoP1SVVPY/mCvg/HTp08PggIiKuvfbaOOSQQ2LOnDnxxRdf5H2E74svvoi5c+fm2q0Jyq/5/v73v+dd00TU/Bzqi85hNVY+mMydOze++eabePrpp+N3v/tdXHXVVbH//vvHzJkzo127dvHss8/Gr3/96ygqKoqioqIYPnx4TJw4Mf7whz/E1KlTY5999omZM2fGV199FTNnzoxGjRrFtddem7eP5557LrbZZpuYNWtWDBo0KO6999744osv4t57741BgwbFzJkzY9CgQVFcXFzp+peu5bXXXotvv/02XnvttfjDH/4QEydOzNVdE9tXpr4RI0ZERMSsWbNi3333jdtvvz2eeuqpGDZsWO7W6YMHD16pfq/M8Wuyf8DqYdCgQZUaJ5Y3pkydOjXat28fEd9/p9SvfvWreOqpp+L222+PfffdN2bOnBkREcOHD69wvKnOsap83J0/f35MnDgxjj322HjhhRfihRdeiJEjR+bazZ07Nx544IEfPQ/VJVU9j+YKgGWtvfbauXFv//33j4EDB8Ydd9wRAwcOjP333z8ivh8/11577dosMzPFxcV5c2V1XMtVVkFKKVVlwzlz5kSzZs1i9uzZudsmrqy33norjjzyyLj66qtX6cS6vB/fbLhXlDVuveINqqjwmy+i8ev31PhxfqzyOlf13+vqoPyxufPOO8ejjz5a4Z11OnToEL/+9a9j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gw8+WNtl1RkVPW9Zk5x++ulRUFCQ969Hjx61XVatW9Hzw2qXasmYMWNScXFxuu6669Jrr72WfvnLX6bmzZunGTNmVNj+4IMPTpdddll66aWX0htvvJEOO+yw1KxZs/Thhx9mXPnKW9m+lps+fXpaa6210nbbbZf23nvvbIr9kVa2r/Pnz0+bb7552n333dOTTz6Zpk+fnh5//PE0adKkjCtfeSvb15tuuimVlJSkm266KU2fPj099NBDqUOHDuk3v/lNxpWvvAceeCCdcsop6Y477kgRke68884fbP/OO++kRo0apd/+9rfp9ddfT5deemkqKipK48aNy6bgH2Fl+3rsscem8847L/33v/9Nb731Vjr55JNT/fr104svvphNwauJXXbZJV1//fXp1VdfTZMmTUq77757WmedddLXX3+da3PUUUelTp06pUcffTQ9//zzaauttkpbb711bv2iRYvSRhttlAYMGJBeeuml9MADD6TWrVunk08+OdemJh+b//3vf9O6666bevfunY499tg6X/dXX32VOnfunA477LD07LPPpnfeeSc99NBDadq0abk25557bmrWrFm666670ssvv5z22muv1KVLlzRv3rxcm1133TVtsskm6Zlnnkn/+c9/0nrrrZcOOuig3PrZs2endu3apSFDhqRXX3013XLLLalhw4bpqquuqnLtZ599dmrVqlW677770vTp09PYsWNTkyZN0iWXXFLnal/RmJJVnU899VQqKipK559/fnr99dfTH/7wh1S/fv30yiuvVKn2WbNmpQEDBqR//etf6c0330wTJ05MW265Zdpss83y9lEXa1/SHXfckTbZZJPUsWPH9Je//GWVqH3atGmpZcuWaeTIkenFF19M06ZNS3fffXfe84+6Ou7UhJWdt1d3lZlP1yT33HNPuv/++9Nbb72VpkyZkn7/+9+n+vXrp1dffbW2S6t1y3vesiYZNWpU6tWrV/rkk09y/z7//PPaLqtWVeb5YXWrtVBqyy23TCNGjMj9vHjx4tSxY8d0zjnnVGr7RYsWpaZNm6Z//OMfNVVitalKXxctWpS23nrrdO2116ahQ4euMqHUyvb1iiuuSF27dk0LFizIqsRqs7J9HTFiRPrpT3+at+y3v/1t2mabbWq0zupWmSd8v/vd71KvXr3ylh1wwAFpl112qcHKql9Vn9xuuOGG6Ywzzqj+gtYgn332WYqI9MQTT6SUvr8Arl+/fho7dmyuzRtvvJEiIk2cODGl9P2FSWFhYfr0009zba644opUWlqa5s+fn1Kqucfm3Llz0/rrr58efvjh1L9//9yTu7pc94knnpi23Xbb5a4vKytL7du3TxdccEFu2axZs1JJSUm65ZZbUkopvf766yki0nPPPZdr8+CDD6aCgoL00UcfpZRSuvzyy1OLFi1yfSk/9gYbbFDl2vfYY4/0i1/8Im/Zfvvtl4YMGVKna196TMmyzsGDB6c99tgjr56+ffumX/3qV1WqvSL//e9/U0Sk9957b5Wo/cMPP0xrrbVWevXVV1Pnzp3zQqm6XPsBBxyQDjnkkOVuU5fHnZomlFrW0vMpKbVo0SJde+21tV1GrVre85Y1zahRo9Imm2xS22XUKSt6flgTauXjewsWLIgXXnghBgwYkFtWWFgYAwYMiIkTJ1ZqH99++20sXLgwWrZsWVNlVouq9vWPf/xjtG3bNo444ogsyqwWVenrPffcE/369YsRI0ZEu3btYqONNoo//elPsXjx4qzKrpKq9HXrrbeOF154IfcRv3feeSceeOCB2H333TOpOUsTJ07MOzcREbvsskul/75XZWVlZTF37tw6PzbVdbNnz46IyJ3HF154IRYuXJj3uOrRo0ess846ucfVxIkTY+ONN4527drl2uyyyy4xZ86ceO2113JtauKxOWLEiNhjjz2W2Xddrvuee+6JzTffPAYNGhRt27aNTTfdNK655prc+unTp8enn36ad9xmzZpF375982pv3rx5bL755rk2AwYMiMLCwnj22WdzbbbffvsoLi7Oq33KlCkxc+bMKtW+9dZbx6OPPhpvvfVWRES8/PLL8eSTT8Zuu+1W52tfUpZ1ZjEuz549OwoKCqJ58+Z1vvaysrI49NBDY+TIkdGrV69l1tfV2svKyuL++++P7t27xy677BJt27aNvn375n1krS6PO2Rv6fl0TbZ48eIYM2ZMfPPNN9GvX7/aLqdWLe95y5po6tSp0bFjx+jatWsMGTIk76PQa6IVPT+sCbUSSn3xxRexePHivIkwIqJdu3bx6aefVmofJ554YnTs2LHO/yFVpa9PPvlk/P3vf6/xX351q0pf33nnnbjtttti8eLF8cADD8Spp54aF110UZx11llZlFxlVenrwQcfHH/84x9j2223jfr160e3bt1ihx12iN///vdZlJypTz/9tMJzM2fOnJg3b14tVZWNCy+8ML7++usYPHhwbZeyyiorK4vjjjsuttlmm9hoo40i4vvHVHFxce5it9ySf3PLe9yVr/uhNj/msTlmzJh48cUX45xzzllmXV2u+5133okrrrgi1l9//XjooYfi17/+dRxzzDHxj3/8I+/YPzTOffrpp9G2bdu89fXq1YuWLVuuVP9W1kknnRQHHnhg9OjRI+rXrx+bbrppHHfccTFkyJA6X/uSsqxzeW2qox8R33+H0YknnhgHHXRQlJaW1vnazzvvvKhXr14cc8wxFa6vq7V/9tln8fXXX8e5554bu+66a4wfPz723Xff2G+//eKJJ57IHbOujjtkq6L5dE30yiuvRJMmTaKkpCSOOuqouPPOO2PDDTes7bJqzQ89b1nT9O3bN0aPHh3jxo2LK664IqZPnx7bbbddzJ07t7ZLqzUren5YE+rV2J5r0LnnnhtjxoyJxx9/PBo0aFDb5VSruXPnxqGHHhrXXHNNtG7durbLqXFlZWXRtm3buPrqq6OoqCg222yz+Oijj+KCCy6IUaNG1XZ51erxxx+PP/3pT3H55ZdH3759Y9q0aXHsscfGmWeeGaeeemptl0c1uPnmm+OMM86Iu+++e5mLGSpvxIgR8eqrr8aTTz5Z26Ws0AcffBDHHntsPPzww6vcfFRWVhabb755/OlPf4qIiE033TReffXVuPLKK2Po0KG1XN0Pu/XWW+Omm26Km2++OXr16hWTJk2K4447Ljp27Fjna18dLVy4MAYPHhwppbjiiitqu5wVeuGFF+KSSy6JF198MQoKCmq7nJVSVlYWERF77713/OY3v4mIiD59+sTTTz8dV155ZfTv3782y6OOWZXm05q0wQYbxKRJk2L27Nlx2223xdChQ+OJJ55YI4OpVfl5S00of4d1RETv3r2jb9++0blz57j11ltXqU8sVafaeH5YK++Uat26dRQVFS1zF5AZM2ZE+/btf3DbCy+8MM4999wYP3589O7duybLrBYr29e333473n333Rg4cGDUq1cv6tWrF//85z/jnnvuiXr16sXbb7+dVekrrSq/1w4dOkT37t2jqKgot6xnz57x6aefxoIFC2q03h+jKn099dRT49BDD41hw4bFxhtvHPvuu2/86U9/inPOOSf3JHN10b59+wrPTWlpaTRs2LCWqqpZY8aMiWHDhsWtt95a59/BWZcdffTRcd9998Vjjz0Wa6+9dm55+/btY8GCBTFr1qy89kv+zS3vcVe+7ofaVPWx+cILL8Rnn30WP/nJT3Jj9hNPPBF//etfo169etGuXbs6WXfE9+Pv0k/Ie/bsmXvbevmxf2ica9++fXz22Wd56xctWhRfffXVSvVvZY0cOTL3bqmNN944Dj300PjNb36Te9W3Lte+pCzrXF6bH9uP8kDqvffei4cffjj3Lqm6XPt//vOf+Oyzz2KdddbJ/d2+9957cfzxx8e6665bp2tv3bp11KtXb4V/u3V13CE7y5tP10TFxcWx3nrrxWabbRbnnHNObLLJJnHJJZfUdlm1YkXPW+r6V6jUtObNm0f37t1j2rRptV1KrVnR88OaUCuhVHFxcWy22Wbx6KOP5paVlZXFo48++oOf7z3//PPjzDPPjHHjxuV9xr8uW9m+9ujRI1555ZWYNGlS7t9ee+0VO+64Y0yaNCk6deqUZfkrpSq/12222SamTZuWF8q89dZb0aFDh7zvaKhrqtLXb7/9NgoL8//kysO4tMRtzFcH/fr1yzs3EREPP/zwavv5/VtuuSUOP/zwuOWWW2KPPfao7XJWSSmlOProo+POO++Mf//739GlS5e89ZtttlnUr18/73E1ZcqUeP/993OPq379+sUrr7ySdyFZfpFcPrlW92Nzp512WmbM3nzzzWPIkCG5/6+LdUd8P/4ufZvwt956Kzp37hwREV26dIn27dvnHXfOnDnx7LPP5tU+a9aseOGFF3Jt/v3vf0dZWVn07ds312bChAmxcOHCvNo32GCDaNGiRZVqX954Wj6X1OXal5RlnTXxGCoPpKZOnRqPPPJItGrVKm99Xa390EMPjcmTJ+f93Xbs2DFGjhwZDz30UJ2uvbi4OLbYYosf/Nutq+Ml2VjRfMr3z9nnz59f22XUihU9b1nyjQJroq+//jrefvvt6NChQ22XUmtW9PywRmT6tepLGDNmTCopKUmjR49Or7/+ejryyCNT8+bNc3cBOfTQQ9NJJ52Ua3/uueem4uLidNttt+XdsnHu3Lm11YVKW9m+Lm1Vuvveyvb1/fffT02bNk1HH310mjJlSrrvvvtS27Zt01lnnVVbXai0le3rqFGjUtOmTdMtt9yS3nnnnTR+/PjUrVu3NHjw4NrqQqXNnTs3vfTSS+mll15KEZH+/Oc/p5deeil3h6WTTjopHXroobn25beRHjlyZHrjjTfSZZddVidvI12Rle3rTTfdlOrVq5cuu+yyvLFp1qxZtdWFVdKvf/3r1KxZs/T444/nncdvv/021+aoo45K66yzTvr3v/+dnn/++dSvX7/Ur1+/3PryW5zvvPPOadKkSWncuHGpTZs2Fd7ivCYfm0vfxaau1v3f//431atXL5199tlp6tSp6aabbkqNGjVKN954Y67Nueeem5o3b57uvvvuNHny5LT33nunLl26pHnz5uXa7LrrrmnTTTdNzz77bHryySfT+uuvnw466KDc+lmzZqV27dqlQw89NL366qtpzJgxqVGjRumqq66qcu1Dhw5Na621VrrvvvvS9OnT0x133JFat26dfve739W52lc0pmRV51NPPZXq1auXLrzwwvTGG2+kUaNGpfr166dXXnmlSrUvWLAg7bXXXmnttddOkyZNyvu7XfJudHWx9oosffe9ulz7HXfckerXr5+uvvrqNHXq1HTppZemoqKi9J///Ce3j7o67tSElf1dr+4qM5+uSU466aT0xBNPpOnTp6fJkyenk046KRUUFKTx48fXdml1xpp8973jjz8+Pf7442n69OnpqaeeSgMGDEitW7dOn332WW2XVmsq8/ywutVaKJVSSpdeemlaZ511UnFxcdpyyy3TM888k1vXv3//NHTo0NzPnTt3ThGxzL9Ro0ZlX3gVrExfl7YqhVIprXxfn3766dS3b99UUlKSunbtms4+++y0aNGijKuumpXp68KFC9Ppp5+eunXrlho0aJA6deqUhg8fnmbOnJl94Svpscceq/Dvr7x/Q4cOTf37919mmz59+qTi4uLUtWvXdP3112ded1WsbF/79+//g+2pnIrOYUTkPW7mzZuXhg8fnlq0aJEaNWqU9t133/TJJ5/k7efdd99Nu+22W2rYsGFq3bp1Ov7449PChQvz2tT0Y3PpJ3d1ue577703bbTRRqmkpCT16NEjXX311Xnry8rK0qmnnpratWuXSkpK0k477ZSmTJmS1+bLL79MBx10UGrSpEkqLS1Nhx9++DIvGL388stp2223TSUlJWmttdZK55577o+qe86cOenYY49N66yzTmrQoEHq2rVrOuWUU/LCkLpS+4rGlCzrvPXWW1P37t1TcXFx6tWrV7r//vurXPv06dOX+3f72GOP1enaK1JRKFWXa//73/+e1ltvvdSgQYO0ySabpLvuuitvH3V53KluK/u7Xt1VZj5dk/ziF79InTt3TsXFxalNmzZpp512EkgtZU0OpQ444IDUoUOHVFxcnNZaa610wAEHpGnTptV2WbVuRc8Pq1tBSqvZ54YAAAAAqPNq5TulAAAAAFizCaUAAAAAyJxQCgAAAIDMCaUAAAAAyJxQCgAAAIDMCaUAAAAAyJxQCgAAAIDMCaUAAAAAyJxQCpbj3XffjYKCgpg0aVJtlwI5EyZMiIEDB0bHjh2joKAg7rrrrpXa/vTTT4+CgoJl/jVu3LhmCgYAqCN22GGHOO6446p1n6NHj47mzZtX6z5hTSKUguXo1KlTfPLJJ7HRRhvVdimQ880338Qmm2wSl112WZW2P+GEE+KTTz7J+7fhhhvGoEGDqrlSAACAHyaUggosWLAgioqKon379lGvXr3aLgdydttttzjrrLNi3333rXD9/Pnz44QTToi11lorGjduHH379o3HH388t75JkybRvn373L8ZM2bE66+/HkcccURGPYDV08KFC2u7BADqoAULFtR2CVCnCaVYI+ywww5x9NFHx9FHHx3NmjWL1q1bx6mnnhoppYiIWHfddePMM8+Mn//851FaWhpHHnlkhR/fe+2112LPPfeM0tLSaNq0aWy33Xbx9ttv59Zfe+210bNnz2jQoEH06NEjLr/88qy7yhru6KOPjokTJ8aYMWNi8uTJMWjQoNh1111j6tSpFba/9tpro3v37rHddttlXCnUbePGjYttt902mjdvHq1atYo999wzN96Xzw//+te/on///tGgQYO46aabImLF88CJJ54Y3bt3j0aNGkXXrl3j1FNPFWgBZGjRokXLvSZY0Yt7Ed9/XG+dddaJRo0axb777htffvll3vrTTz89+vTpE9dee2106dIlGjRoEBER77//fuy9997RpEmTKC0tjcGDB8eMGTPytr3iiiuiW7duUVxcHBtssEHccMMNeesLCgriqquuij333DMaNWoUPXv2jIkTJ8a0adNihx12iMaNG8fWW2+dd33y8ssvx4477hhNmzaN0tLS2GyzzeL555+vrtMJP16CNUD//v1TkyZN0rHHHpvefPPNdOONN6ZGjRqlq6++OqWUUufOnVNpaWm68MIL07Rp09K0adPS9OnTU0Skl156KaWU0ocffphatmyZ9ttvv/Tcc8+lKVOmpOuuuy69+eabKaWUbrzxxtShQ4d0++23p3feeSfdfvvtqWXLlmn06NG11W1WcxGR7rzzztzP7733XioqKkofffRRXruddtopnXzyyctsP2/evNSiRYt03nnn1XSpsMq57bbb0u23356mTp2aXnrppTRw4MC08cYbp8WLF+fmh3XXXTc35n/88ceVmgfOPPPM9NRTT6Xp06ene+65J7Vr187fIEBGVnRNMGzYsLT11lunCRMmpGnTpqULLrgglZSUpLfeeiullNIzzzyTCgsL03nnnZemTJmSLrnkktS8efPUrFmz3DFGjRqVGjdunHbdddf04osvppdffjktXrw49enTJ2277bbp+eefT88880zabLPNUv/+/XPb3XHHHal+/frpsssuS1OmTEkXXXRRKioqSv/+979zbSIirbXWWulf//pXmjJlStpnn33Suuuum37605+mcePGpddffz1ttdVWadddd81t06tXr3TIIYekN954I7311lvp1ltvTZMmTarZEw0rQSjFGqF///6pZ8+eqaysLLfsxBNPTD179kwpfR9K7bPPPnnbLB1KnXzyyalLly5pwYIFFR6jW7du6eabb85bduaZZ6Z+/fpVY0/g/ywdSt13330pIlLjxo3z/tWrVy8NHjx4me1vvvnmVK9evfTpp59mWDWsmj7//PMUEemVV17JzQ8XX3xxXpuqzAMXXHBB2myzzWqkZgDy/dA1QWVe3DvooIPS7rvvnrf+gAMOWCaUql+/fvrss89yy8aPH5+KiorS+++/n1v22muvpYhI//3vf1NKKW299dbpl7/8Zd6+Bw0alHe8iEh/+MMfcj9PnDgxRUT6+9//nlt2yy23pAYNGuR+btq0qRfJqdN8WQ5rjK222ioKCgpyP/fr1y8uuuiiWLx4cUREbL755j+4/aRJk2K77baL+vXrL7Pum2++ibfffjuOOOKI+OUvf5lbvmjRomjWrFk19QB+2Ndffx1FRUXxwgsvRFFRUd66Jk2aLNP+2muvjT333DPatWuXVYmwypg6dWqcdtpp8eyzz8YXX3wRZWVlEfH9xy823HDDiMifNyo7D/zrX/+Kv/71r/H222/H119/HYsWLYrS0tKMegXA8q4JXnnllVi8eHF07949r/38+fOjVatWERHxxhtvLPO9nv369Ytx48blLevcuXO0adMm9/Mbb7wRnTp1ik6dOuWWbbjhhtG8efN44403Yosttog33ngjjjzyyLz9bLPNNnHJJZfkLevdu3fu/8ufw2288cZ5y7777ruYM2dOlJaWxm9/+9sYNmxY3HDDDTFgwIAYNGhQdOvWbcUnCjIilIL/r3Hjxj+4vmHDhstd9/XXX0dExDXXXBN9+/bNW7d0OAA1ZdNNN43FixfHZ599tsLviJo+fXo89thjcc8992RUHaxaBg4cGJ07d45rrrkmOnbsGGVlZbHRRhvlfWHtkvNGZeaBiRMnxpAhQ+KMM86IXXbZJZo1axZjxoyJiy66KIMeAfBDVvbFvR+youuKH2PJF8jLw7WKlpW/mHL66afHwQcfHPfff388+OCDMWrUqBgzZsxyb5oDWRNKscZ49tln835+5plnYv311690aNS7d+/4xz/+EQsXLlzm3VLt2rWLjh07xjvvvBNDhgyptpphaV9//XVMmzYt9/P06dNj0qRJ0bJly+jevXsMGTIkfv7zn8dFF10Um266aXz++efx6KOPRu/evWOPPfbIbXfddddFhw4dYrfddquNbkCd9uWXX8aUKVPimmuuyQW8Tz755A9uU5l54Omnn47OnTvHKaecklv23nvvVV/hAKzQ8q4JKvPiXs+ePSvcfkV69uwZH3zwQXzwwQe5d0u9/vrrMWvWrNy7b3v27BlPPfVUDB06NLfdU089lVv/Y3Tv3j26d+8ev/nNb+Kggw6K66+/XihFnSGUYo3x/vvvx29/+9v41a9+FS+++GJceumlK/Xq9NFHHx2XXnppHHjggXHyySdHs2bN4plnnoktt9wyNthggzjjjDPimGOOiWbNmsWuu+4a8+fPj+effz5mzpwZv/3tb2uwZ6xJnn/++dhxxx1zP5c/toYOHRqjR4+O66+/Ps4666w4/vjj46OPPorWrVvHVlttFXvuuWdum7Kyshg9enQcdthh3skHFWjRokW0atUqrr766ujQoUO8//77cdJJJ61wuxXNA+uvv368//77MWbMmNhiiy3i/vvvjzvvvDODHgFQbnnXBJV5ce+YY46JbbbZJi688MLYe++946GHHlrmo3sVGTBgQGy88cYxZMiQuPjii2PRokUxfPjw6N+/f+6j4CNHjozBgwfHpptuGgMGDIh777037rjjjnjkkUeq3Nd58+bFyJEjY//9948uXbrEhx9+GM8991z8z//8T5X3CdWutr/UCrLQv3//NHz48HTUUUel0tLS1KJFi/T73/8+9yWHnTt3Tn/5y1/ytln6i85TSunll19OO++8c2rUqFFq2rRp2m677dLbb7+dW3/TTTelPn36pOLi4tSiRYu0/fbbpzvuuCOLLgJQjR5++OHUs2fPVFJSknr37p0ef/zx3M0FKpofyq1oHhg5cmRq1apVatKkSTrggAPSX/7yl7wvyAWg5qzommDBggXptNNOS+uuu26qX79+6tChQ9p3333T5MmTc/v4+9//ntZee+3UsGHDNHDgwHThhRcu80Xnm2yyyTLHfu+999Jee+2VGjdunJo2bZoGDRq0zM1mLr/88tS1a9dUv3791L179/TPf/4zb30sdZObiuajxx57LEVEmjlzZpo/f3468MADU6dOnVJxcXHq2LFjOvroo9O8efOqfhKhmhWklFJthmKQhR122CH69OkTF198cW2XAgAAAEREYW0XAAAAAMCaRygFAAAAQOZ8fA8AAACAzHmnFAAAAACZE0oBAAAAkDmhFAAAAACZE0oBAAAAkDmhFAAAAACZE0oBAAAAkDmhFAAAAACZE0oBAAAAkDmhFAAAAACZ+39QHwpuL+9d2gAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1200x600 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "\n",
    "plt.figure(figsize=(12, 6))\n",
    "for i, col in enumerate(df.columns[:3]): # Only plotting the first 3 features\n",
    "    plt.subplot(1, 3, i+1) # Create subplots for each feature\n",
    "    sns.boxplot(x=df[col])\n",
    "    plt.title(f\"Boxplot for {col}\")\n",
    "plt.tight_layout()\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "81dac199-6663-476e-b999-3a1b4d12861d",
   "metadata": {},
   "outputs": [],
   "source": [
    "furnishing_counts = df['furnishingstatus'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "12c6ba30-f123-4370-8622-644cb5a5747b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "furnishingstatus\n",
      "semi-furnished    227\n",
      "unfurnished       178\n",
      "furnished         140\n",
      "Name: count, dtype: int64\n"
     ]
    }
   ],
   "source": [
    "print(furnishing_counts)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "cdb550ee-5425-46a7-9707-175a13b62396",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Empty DataFrame\n",
      "Columns: [price, area, bedrooms, bathrooms, stories, mainroad, guestroom, basement, hotwaterheating, airconditioning, parking, prefarea, furnishingstatus]\n",
      "Index: []\n"
     ]
    }
   ],
   "source": [
    "print(completed_houses)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "57b69f0f-9109-42d7-b89c-534ae953599c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAHWCAYAAABt3aEVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABIaUlEQVR4nO3deVgVdf//8ddBkEU2cQMUQXFDwxU1JHNDEctccitT3O/K9fYuzTQVc2sxLcssu1Mz9K5M7c7M3JfMzCU1zUy51RZBzQVcEWF+f/TjfD2yCAgeHJ+P6+K6mJnPfOY958xwXsz5nDkWwzAMAQAAACbgYO8CAAAAgIJCuAUAAIBpEG4BAABgGoRbAAAAmAbhFgAAAKZBuAUAAIBpEG4BAABgGoRbAAAAmAbhFgAAAKZBuAXuE5s2bZLFYtHSpUvtXUqunDp1Sl26dFGpUqVksVg0a9Yse5dU5FksFg0ZMsTeZdx1FotFEydOzNM6zZs31wMPPHDbdsePH5fFYtGCBQvyVxyAu45wCxSgBQsWyGKxyMXFRX/++Wem5bl9QYX0z3/+U998843GjBmjRYsWqW3bttm2zSnUZTwnu3btKqxS7ysZ/yRl9dOjRw97l2c6x48fV9++fRUcHCwXFxf5+vrq4Ycf1oQJE2zazZkz544C+MmTJzVx4kTt3bv3zgoGigBHexcAmFFKSoqmT5+u2bNn27uUe9aGDRvUoUMHPffcc/YuBVkYNmyYGjZsaDMvKCjILrVcvXpVjo6F83IWGBioq1evysnJqVD6z8nRo0fVsGFDubq6ql+/fgoKClJCQoL27NmjV155RbGxsda2c+bMUenSpdWnT598bevkyZOKjY1VUFCQ6tatWzA7ANgJ4RYoBHXr1tW8efM0ZswY+fv727ucu+ry5csqUaLEHfdz+vRpeXt733lBKBRNmzZVly5dCrzfa9euqXjx4nJwyP0biy4uLgVeR4aMd2LsYebMmbp06ZL27t2rwMBAm2WnT5+2S03AvYBhCUAhePHFF5WWlqbp06fn2C6n8Xy3jiOcOHGiLBaLfv31Vz311FPy8vJSmTJl9NJLL8kwDP3+++/q0KGDPD095evrqxkzZmS5zbS0NL344ovy9fVViRIl9Nhjj+n333/P1G7Hjh1q27atvLy85ObmpmbNmmnbtm02bTJq+vnnn/Xkk0+qZMmSeuihh3Lc5//973/q2rWrfHx85ObmpgcffFBfffWVdXnGMALDMPTOO+9Y3/IuaBs2bFDTpk1VokQJeXt7q0OHDjp06JBNmz59+mR5NTJjv2+2du1aPfTQQ/L29pa7u7uqV6+uF1980aZNSkqKJkyYoCpVqsjZ2VkBAQEaNWqUUlJS8txXTuLi4lS9enW5uLioQYMG2rJli3XZxo0bZbFYtHz58kzrLV68WBaLRdu3b8/1trISFBSU5RXE5s2bq3nz5tbpjCEO//nPfzRu3DiVL19ebm5uSk5OVp8+feTu7q4///xTHTt2lLu7u8qUKaPnnntOaWlpNv3eeq5cvHhRI0aMUFBQkJydnVW2bFm1bt1ae/bsyVTTzz//rBYtWsjNzU3ly5fXq6++arM8q3M0L7WdPXtWvXr1kqenp7y9vRUTE6N9+/blahxvfHy8KlSokCnYSlLZsmWtvwcFBengwYPavHmz9XzJeJzPnTun5557TqGhoXJ3d5enp6eio6O1b98+m+ch4yp83759rX1k1Jfb51OSZs+erVq1asnNzU0lS5ZUWFiYFi9enON+AgWNK7dAIahUqZJ69+6tefPm6YUXXijQq7fdu3dXSEiIpk+frq+++kqTJ0+Wj4+P3nvvPbVs2VKvvPKK4uLi9Nxzz6lhw4Z6+OGHbdafMmWKLBaLRo8erdOnT2vWrFmKjIzU3r175erqKunv4BcdHa0GDRpowoQJcnBw0Pz589WyZUtt3bpVjRo1sumza9euqlq1qqZOnSrDMLKt/dSpU2rSpImuXLmiYcOGqVSpUlq4cKEee+wxLV26VJ06ddLDDz+sRYsWqVevXmrdurV69+6dq8fl2rVr+uuvvzLNv3TpUqZ569atU3R0tCpXrqyJEyfq6tWrmj17tiIiIrRnz548v71+8OBBPfroo6pdu7YmTZokZ2dnHT161OafgfT0dD322GP69ttvNWjQIIWEhOinn37SzJkz9euvv2rFihW57isnmzdv1ieffKJhw4bJ2dlZc+bMUdu2bfXDDz/ogQceUPPmzRUQEKC4uDh16tTJZt24uDgFBwcrPDz8ttu5ePFipsfbx8cnT1dcM7z88ssqXry4nnvuOaWkpKh48eKS/v5HLCoqSo0bN9brr7+udevWacaMGQoODtYzzzyTbX9PP/20li5dqiFDhqhmzZo6e/asvv32Wx06dEj169e3tjt//rzatm2rzp07q1u3blq6dKlGjx6t0NBQRUdH51hzbmpLT09X+/bt9cMPP+iZZ55RjRo19MUXXygmJiZXj0tgYKDWrVunDRs2qGXLltm2mzVrloYOHSp3d3eNHTtWklSuXDlJf/8zuWLFCnXt2lWVKlXSqVOn9N5776lZs2b6+eef5e/vr5CQEE2aNEnjx4/XoEGD1LRpU0lSkyZNclVnhnnz5mnYsGHq0qWLhg8frmvXrmn//v3asWOHnnzyyTz1BdwRA0CBmT9/viHJ2LlzpxEfH284Ojoaw4YNsy5v1qyZUatWLev0sWPHDEnG/PnzM/UlyZgwYYJ1esKECYYkY9CgQdZ5N27cMCpUqGBYLBZj+vTp1vnnz583XF1djZiYGOu8jRs3GpKM8uXLG8nJydb5n376qSHJePPNNw3DMIz09HSjatWqRlRUlJGenm5td+XKFaNSpUpG69atM9X0xBNP5OrxGTFihCHJ2Lp1q3XexYsXjUqVKhlBQUFGWlqazf4PHjw4V/1Kuu3Pzp07re3r1q1rlC1b1jh79qx13r59+wwHBwejd+/e1nkxMTFGYGBgpu1l7HeGmTNnGpKMM2fOZFvjokWLDAcHB5t9NwzDmDt3riHJ2LZtW677ut3jsGvXLuu8EydOGC4uLkanTp2s88aMGWM4OzsbFy5csM47ffq04ejoaHPMZSXjOMrq59ixY4ZhGEZgYKDNsZehWbNmRrNmzTL1VblyZePKlSs2bWNiYgxJxqRJk2zm16tXz2jQoEGm/b65bi8vr9seO82aNTMkGR999JF1XkpKiuHr62s8/vjj1nlZnaO5re3zzz83JBmzZs2yzktLSzNatmyZ7Xl/swMHDhiurq6GJKNu3brG8OHDjRUrVhiXL1/O1LZWrVo2j22Ga9eu2ZxXGfvk7OxsU//OnTuzrSm3z2eHDh1s/r4B9sKwBKCQVK5cWb169dL777+vhISEAut3wIAB1t+LFSumsLAwGYah/v37W+d7e3urevXq+t///pdp/d69e8vDw8M63aVLF/n5+WnVqlWSpL179+rIkSN68skndfbsWf3111/666+/dPnyZbVq1UpbtmxRenq6TZ9PP/10rmpftWqVGjVqZDN0wd3dXYMGDdLx48f1888/5+5ByEKHDh20du3aTD/PP/+8TbuEhATt3btXffr0kY+Pj3V+7dq11bp1a+vjkBcZY4O/+OKLTI9Nhs8++0whISGqUaOG9TH966+/rFfkNm7cmOu+chIeHq4GDRpYpytWrKgOHTrom2++sb5l3rt3b6WkpNjcFu6TTz7RjRs39NRTT+VqO+PHj8/0WPv6+ua5XkmKiYmxvmtwq1uPraZNm2Z5XN/M29tbO3bs0MmTJ3Ns5+7ubrO/xYsXV6NGjW7bf25rW716tZycnDRw4EDrPAcHBw0ePDhX/deqVUt79+7VU089pePHj+vNN99Ux44dVa5cOc2bNy9XfTg7O1uvpqelpens2bPWoS5ZDdO4E97e3vrjjz+0c+fOAu0XyCvCLVCIxo0bpxs3btx27G1eVKxY0Wbay8tLLi4uKl26dKb558+fz7R+1apVbaYtFouqVKmi48ePS5KOHDki6e/AUaZMGZufDz74QCkpKUpKSrLpo1KlSrmq/cSJE6pevXqm+SEhIdbl+VWhQgVFRkZm+qlZs2amGiRlW0dGkM+L7t27KyIiQgMGDFC5cuXUo0cPffrppzbh9MiRIzp48GCmx7RatWqS/u8DQrnpKye3Pr+SVK1aNV25ckVnzpyRJNWoUUMNGzZUXFyctU1cXJwefPBBValSJVfbCQ0NzfRY5/eDV9kdPy4uLipTpozNvJIlS2Z5XN/s1Vdf1YEDBxQQEKBGjRpp4sSJWQbWChUqZBo7nZv+c1vbiRMn5OfnJzc3N5t2uX2Mpb+fu0WLFumvv/7S/v37NXXqVDk6OmrQoEFat27dbddPT0/XzJkzVbVqVTk7O6t06dIqU6aM9u/fn+k8vlOjR4+Wu7u7GjVqpKpVq2rw4MG5Hk4DFCTG3AKFqHLlynrqqaf0/vvv64UXXsi0PLsPSt36oZSbFStWLFfzJOU4/jU7GSHqtddey/aWQO7u7jbT2V11u9fl9vlxdXXVli1btHHjRn311VdavXq1PvnkE7Vs2VJr1qxRsWLFlJ6ertDQUL3xxhtZ9hkQEJDrvgpC7969NXz4cP3xxx9KSUnR999/r7fffrtA+s7pccuq/uyOn/zua7du3dS0aVMtX75ca9as0WuvvaZXXnlFy5YtsxlLeyfnTUE9D7lVrFgxhYaGKjQ0VOHh4WrRooXi4uIUGRmZ43pTp07VSy+9pH79+unll1+2joseMWJErv9hyu3zGRISosOHD2vlypVavXq1Pv/8c82ZM0fjx4+3uW0ZUNgIt0AhGzdunD7++GO98sormZaVLFlSknThwgWb+XdyBfN2Mq7MZjAMQ0ePHlXt2rUlScHBwZIkT0/P275w5lVgYKAOHz6caf4vv/xiXV7YMraRXR2lS5e23sqsZMmSmZ4bKevnx8HBQa1atVKrVq30xhtvaOrUqRo7dqw2btyoyMhIBQcHa9++fWrVqtVt7/5wu75ycuvzK0m//vqr3NzcbK409ujRQyNHjtSSJUus93Ht3r17jn3nVk6PW+XKlQtkG7fj5+enZ599Vs8++6xOnz6t+vXra8qUKbf9oFhBCgwM1MaNG3XlyhWbq7dHjx69o37DwsIkyWa4U3bH1NKlS9WiRQv9+9//tpl/4cIFm3d7cjom8/J8lihRQt27d1f37t11/fp1de7cWVOmTNGYMWPsdks13H8YlgAUsuDgYD311FN67733lJiYaLPM09NTpUuXtrlVk/T3DdkLy0cffaSLFy9ap5cuXaqEhATri36DBg0UHBys119/Pcs7DWS8tZ0f7dq10w8//GBzq6nLly/r/fffV1BQUKYhBIXBz89PdevW1cKFC21esA8cOKA1a9aoXbt21nnBwcFKSkrS/v37rfMSEhIy3Ubr3LlzmbaTcdU74zZf3bp1059//pnlWMmrV69ah0Lkpq+cbN++3WYs5e+//64vvvhCbdq0sbnKVrp0aUVHR+vjjz9WXFyc2rZtm2loS34FBwfr+++/1/Xr163zVq5cmeUt5wpaWlpaprfby5YtK39//1w9fgUpKipKqampNs95enq63nnnnVytv3XrVqWmpmaanzEu/OahNSVKlMgygBYrVizTlejPPvss0zcoZvxDl1UfuX0+z549azNdvHhx1axZU4ZhZLkfQGHhyi1wF4wdO1aLFi3S4cOHVatWLZtlAwYM0PTp0zVgwACFhYVpy5Yt+vXXXwutFh8fHz300EPq27evTp06pVmzZqlKlSrWD704ODjogw8+UHR0tGrVqqW+ffuqfPny+vPPP7Vx40Z5enrqyy+/zNe2X3jhBS1ZskTR0dEaNmyYfHx8tHDhQh07dkyff/55vm4jlR+vvfaaoqOjFR4erv79+1tvBebl5WVzv9QePXpo9OjR6tSpk4YNG6YrV67o3XffVbVq1WwC5KRJk7RlyxY98sgjCgwM1OnTpzVnzhxVqFDB+uG5Xr166dNPP9XTTz+tjRs3KiIiQmlpafrll1/06aef6ptvvlFYWFiu+srJAw88oKioKJtbgUnK8m3h3r17W7+I4eWXX76Th9TGgAEDtHTpUrVt21bdunVTfHy8Pv74Y+u7AoXp4sWLqlChgrp06aI6derI3d1d69at086dO7O993Nh6dixoxo1aqR//etfOnr0qGrUqKH//ve/1n9gbncF/5VXXtHu3bvVuXNn6zsre/bs0UcffSQfHx+NGDHC2rZBgwZ69913NXnyZFWpUkVly5ZVy5Yt9eijj2rSpEnq27evmjRpop9++klxcXGZrrgGBwfL29tbc+fOlYeHh0qUKKHGjRurUqVKuX4+27RpI19fX0VERKhcuXI6dOiQ3n77bT3yyCM2H2IFCp09b9UAmM3NtwK7Vcbtg269Vc6VK1eM/v37G15eXoaHh4fRrVs34/Tp09neCuzWW0TFxMQYJUqUyLS9W287lnHbpSVLlhhjxowxypYta7i6uhqPPPKIceLEiUzr//jjj0bnzp2NUqVKGc7OzkZgYKDRrVs3Y/369betKSfx8fFGly5dDG9vb8PFxcVo1KiRsXLlykztlMdbgWXXNrvnZN26dUZERITh6upqeHp6Gu3btzd+/vnnTOuvWbPGeOCBB4zixYsb1atXNz7++ONMtwJbv3690aFDB8Pf398oXry44e/vbzzxxBPGr7/+atPX9evXjVdeecWoVauW4ezsbJQsWdJo0KCBERsbayQlJeWpr5weh48//tioWrWq4ezsbNSrV8/YuHFjlu1TUlKMkiVLGl5eXsbVq1dv279h/N9x9Nlnn+XYbsaMGUb58uUNZ2dnIyIiwti1a1e2twLLqq/sjutbH3vDsL0VWEpKivH8888bderUMTw8PIwSJUoYderUMebMmWOzzq3nx83bvfn2b9ndCiy3tZ05c8Z48sknDQ8PD8PLy8vo06ePsW3bNkOS8Z///CdTHzfbtm2bMXjwYOOBBx4wvLy8DCcnJ6NixYpGnz59jPj4eJu2iYmJxiOPPGJ4eHgYkqyP87Vr14x//etfhp+fn+Hq6mpEREQY27dvz/RcGIZhfPHFF0bNmjUNR0fHTPucm+fzvffeMx5++GHr34zg4GDj+eeftx7bwN1iMYx8fOIEAHDPu3Hjhvz9/dW+fftMYzJReFasWKFOnTrp22+/VUREhL3LAUyHMbcAcJ9asWKFzpw5k+tvgUPeXb161WY6LS1Ns2fPlqenp823pQEoOIy5BYD7zI4dO7R//369/PLLqlevnpo1a2bvkkxr6NChunr1qsLDw5WSkqJly5bpu+++09SpU017Cz3A3gi3AHCfeffdd/Xxxx+rbt26WrBggb3LMbWWLVtqxowZWrlypa5du6YqVapo9uzZGjJkiL1LA0yLMbcAAAAwDcbcAgAAwDQItwAAADANxtzq72+MOXnypDw8PG57U20AAADcfYZh6OLFi/L398/xS38It5JOnjypgIAAe5cBAACA2/j9999VoUKFbJcTbiXr1wL+/vvv8vT0tHM1AAAAuFVycrICAgJu+3XOhFv93/d7e3p6Em4BAACKsNsNIeUDZQAAADANwi0AAABMg3ALAAAA0yDcAgAAwDQItwAAADANwi0AAABMg3ALAAAA0yDcAgAAwDQItwAAADANwi0AAABMg3ALAAAA0yDcAgAAwDQItwAAADANwi0AAABMg3ALAAAA03C0dwEoeBaLvStATgzD3hUAAGBeXLkFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJgG4RYAAACmQbgFAACAaRBuAQAAYBqEWwAAAJiGXcPttGnT1LBhQ3l4eKhs2bLq2LGjDh8+bNPm2rVrGjx4sEqVKiV3d3c9/vjjOnXqlE2b3377TY888ojc3NxUtmxZPf/887px48bd3BUAAAAUAXYNt5s3b9bgwYP1/fffa+3atUpNTVWbNm10+fJla5t//vOf+vLLL/XZZ59p8+bNOnnypDp37mxdnpaWpkceeUTXr1/Xd999p4ULF2rBggUaP368PXYJAAAAdmQxDMOwdxEZzpw5o7Jly2rz5s16+OGHlZSUpDJlymjx4sXq0qWLJOmXX35RSEiItm/frgcffFBff/21Hn30UZ08eVLlypWTJM2dO1ejR4/WmTNnVLx48dtuNzk5WV5eXkpKSpKnp2eh7uPdYLHYuwLkpOiccQAA3Dtym9cc72JNt5WUlCRJ8vHxkSTt3r1bqampioyMtLapUaOGKlasaA2327dvV2hoqDXYSlJUVJSeeeYZHTx4UPXq1cu0nZSUFKWkpFink5OTJUmpqalKTU0tlH27m1xd7V0BcmKCQwwAgLsutxmtyITb9PR0jRgxQhEREXrggQckSYmJiSpevLi8vb1t2pYrV06JiYnWNjcH24zlGcuyMm3aNMXGxmaav2bNGrm5ud3prtjdkiX2rgA5WbXK3hUAAHDvuXLlSq7aFZlwO3jwYB04cEDffvttoW9rzJgxGjlypHU6OTlZAQEBatOmjSmGJXh52bsC5OT/v0EBAADyIOOd9tspEuF2yJAhWrlypbZs2aIKFSpY5/v6+ur69eu6cOGCzdXbU6dOydfX19rmhx9+sOkv424KGW1u5ezsLGdn50zznZyc5OTkdKe7Y3dXr9q7AuTEBIcYAAB3XW4zml3vlmAYhoYMGaLly5drw4YNqlSpks3yBg0ayMnJSevXr7fOO3z4sH777TeFh4dLksLDw/XTTz/p9OnT1jZr166Vp6enataseXd2BAAAAEWCXa/cDh48WIsXL9YXX3whDw8P6xhZLy8vubq6ysvLS/3799fIkSPl4+MjT09PDR06VOHh4XrwwQclSW3atFHNmjXVq1cvvfrqq0pMTNS4ceM0ePDgLK/OAgAAwLzseiswSzb3rJo/f7769Okj6e8vcfjXv/6lJUuWKCUlRVFRUZozZ47NkIMTJ07omWee0aZNm1SiRAnFxMRo+vTpcnTMXXbnVmC4m7gVGAAAeZfbvFak7nNrL4Rb3E2ccQAA5F1u85pdx9wCAAAABYlwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDUd7FwAARcbmXfauANlpFmbvCgDcI7hyCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANOwa7jdsmWL2rdvL39/f1ksFq1YscJmeZ8+fWSxWGx+2rZta9Pm3Llz6tmzpzw9PeXt7a3+/fvr0qVLd3EvAAAAUFTYNdxevnxZderU0TvvvJNtm7Zt2yohIcH6s2TJEpvlPXv21MGDB7V27VqtXLlSW7Zs0aBBgwq7dAAAABRBjvbceHR0tKKjo3Ns4+zsLF9f3yyXHTp0SKtXr9bOnTsVFhYmSZo9e7batWun119/Xf7+/lmul5KSopSUFOt0cnKyJCk1NVWpqan52ZUixdXV3hUgJyY4xMzLSLd3BcgOJw5w38ttRrNruM2NTZs2qWzZsipZsqRatmypyZMnq1SpUpKk7du3y9vb2xpsJSkyMlIODg7asWOHOnXqlGWf06ZNU2xsbKb5a9askZubW+HsyF10y8VtFDGrVtm7AuAetCrB3hUAsLMrV67kql2RDrdt27ZV586dValSJcXHx+vFF19UdHS0tm/frmLFiikxMVFly5a1WcfR0VE+Pj5KTEzMtt8xY8Zo5MiR1unk5GQFBASoTZs28vT0LLT9uVu8vOxdAXKSlGTvCpCtbT/auwJkJ6KevSsAYGcZ77TfTpEOtz169LD+Hhoaqtq1ays4OFibNm1Sq1at8t2vs7OznJ2dM813cnKSk5NTvvstKq5etXcFyIkJDjHzsnADmSKLEwe47+U2o91Tf8krV66s0qVL6+jRo5IkX19fnT592qbNjRs3dO7cuWzH6QIAAMC87qlw+8cff+js2bPy8/OTJIWHh+vChQvavXu3tc2GDRuUnp6uxo0b26tMAAAA2IldhyVcunTJehVWko4dO6a9e/fKx8dHPj4+io2N1eOPPy5fX1/Fx8dr1KhRqlKliqKioiRJISEhatu2rQYOHKi5c+cqNTVVQ4YMUY8ePbK9UwIAAADMy65Xbnft2qV69eqpXr2/PygwcuRI1atXT+PHj1exYsW0f/9+PfbYY6pWrZr69++vBg0aaOvWrTbjZePi4lSjRg21atVK7dq100MPPaT333/fXrsEAAAAO7IYhmHYuwh7S05OlpeXl5KSkkxxtwSLxd4VICeccUXY5l32rgDZaRZ2+zYATC23ee2eGnMLAAAA5IRwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATINwCwAAANMg3AIAAMA0CLcAAAAwDcItAAAATMPR3gUAAIB7myWWr8YsqowJ99/XYnLlFgAAAKZBuAUAAIBpEG4BAABgGoRbAAAAmAbhFgAAAKZBuAUAAIBpEG4BAABgGoRbAAAAmAbhFgAAAKZBuAUAAIBpEG4BAABgGoRbAAAAmAbhFgAAAKZBuAUAAIBp5CvcVq5cWWfPns00/8KFC6pcufIdFwUAAADkR77C7fHjx5WWlpZpfkpKiv788887LgoAAADID8e8NP7vf/9r/f2bb76Rl5eXdTotLU3r169XUFBQgRUHAAAA5EWewm3Hjh0lSRaLRTExMTbLnJycFBQUpBkzZhRYcQAAAEBe5CncpqenS5IqVaqknTt3qnTp0oVSFAAAAJAfeQq3GY4dO1bQdQAAAAB3LF/hVpLWr1+v9evX6/Tp09Yruhk+/PDDOy4MAAAAyKt8hdvY2FhNmjRJYWFh8vPzk8ViKei6AAAAgDzLV7idO3euFixYoF69ehV0PQAAAEC+5es+t9evX1eTJk0KuhYAAADgjuQr3A4YMECLFy8u6FoAAACAO5KvYQnXrl3T+++/r3Xr1ql27dpycnKyWf7GG28USHEAAABAXuQr3O7fv19169aVJB04cMBmGR8uAwAAgL3kK9xu3LixoOsAAAAA7li+xtwCAAAARVG+rty2aNEix+EHGzZsyHdBAAAAQH7lK9xmjLfNkJqaqr179+rAgQOKiYkpiLoAAACAPMtXuJ05c2aW8ydOnKhLly7dUUEAAABAfhXomNunnnpKH374YUF2CQAAAORagYbb7du3y8XFpSC7BAAAAHItX8MSOnfubDNtGIYSEhK0a9cuvfTSSwVSGAAAAJBX+Qq3Xl5eNtMODg6qXr26Jk2apDZt2hRIYQAAAEBe5Svczp8/v6DrAAAAAO5YvsJtht27d+vQoUOSpFq1aqlevXoFUhQAAACQH/kKt6dPn1aPHj20adMmeXt7S5IuXLigFi1a6D//+Y/KlClTkDUCAAAAuZKvuyUMHTpUFy9e1MGDB3Xu3DmdO3dOBw4cUHJysoYNG1bQNQIAAAC5kq8rt6tXr9a6desUEhJinVezZk298847fKAMAAAAdpOvK7fp6elycnLKNN/JyUnp6el3XBQAAACQH/kKty1bttTw4cN18uRJ67w///xT//znP9WqVasCKw4AAADIi3yF27ffflvJyckKCgpScHCwgoODValSJSUnJ2v27NkFXSMAAACQK/kacxsQEKA9e/Zo3bp1+uWXXyRJISEhioyMLNDiAAAAgLzI05XbDRs2qGbNmkpOTpbFYlHr1q01dOhQDR06VA0bNlStWrW0devWwqoVAAAAyFGewu2sWbM0cOBAeXp6Zlrm5eWlf/zjH3rjjTcKrDgAAAAgL/IUbvft26e2bdtmu7xNmzbavXv3HRcFAAAA5Eeewu2pU6eyvAVYBkdHR505c+aOiwIAAADyI0/htnz58jpw4EC2y/fv3y8/P787LgoAAADIjzyF23bt2umll17StWvXMi27evWqJkyYoEcffbTAigMAAADyIk+3Ahs3bpyWLVumatWqaciQIapevbok6ZdfftE777yjtLQ0jR07tlAKBQAAAG4nT+G2XLly+u677/TMM89ozJgxMgxDkmSxWBQVFaV33nlH5cqVK5RCAQAAgNvJ85c4BAYGatWqVTp//ryOHj0qwzBUtWpVlSxZsjDqAwAAAHItX99QJkklS5ZUw4YNC7IWAAAA4I7k6QNlAAAAQFFGuAUAAIBpEG4BAABgGoRbAAAAmIZdw+2WLVvUvn17+fv7y2KxaMWKFTbLDcPQ+PHj5efnJ1dXV0VGRurIkSM2bc6dO6eePXvK09NT3t7e6t+/vy5dunQX9wIAAABFhV3D7eXLl1WnTh298847WS5/9dVX9dZbb2nu3LnasWOHSpQooaioKJtvSOvZs6cOHjyotWvXauXKldqyZYsGDRp0t3YBAAAARUi+bwVWEKKjoxUdHZ3lMsMwNGvWLI0bN04dOnSQJH300UcqV66cVqxYoR49eujQoUNavXq1du7cqbCwMEnS7Nmz1a5dO73++uvy9/e/a/sCAAAA+7NruM3JsWPHlJiYqMjISOs8Ly8vNW7cWNu3b1ePHj20fft2eXt7W4OtJEVGRsrBwUE7duxQp06dsuw7JSVFKSkp1unk5GRJUmpqqlJTUwtpj+4eV1d7V4CcmOAQMy8j3d4VIDucOEWaqwMvPEWVGXJNhtzuS5ENt4mJiZKU6et8y5UrZ12WmJiosmXL2ix3dHSUj4+PtU1Wpk2bptjY2Ezz16xZIzc3tzst3e6WLLF3BcjJqlX2rgC4B61KsHcFyMGS2rzwFFWrTPSic+XKlVy1K7LhtjCNGTNGI0eOtE4nJycrICBAbdq0kaenpx0rKxheXvauADlJSrJ3BcjWth/tXQGyE1HP3hUgB17TeeEpqpJeMM+LTsY77bdTZMOtr6+vJOnUqVPy8/Ozzj916pTq1q1rbXP69Gmb9W7cuKFz585Z18+Ks7OznJ2dM813cnKSk5NTAVRvX1ev2rsC5MQEh5h5Wbg7YpHFiVOkXU3nhaeoMkOuyZDbfSmyf8krVaokX19frV+/3jovOTlZO3bsUHh4uCQpPDxcFy5c0O7du61tNmzYoPT0dDVu3Piu1wwAAAD7suuV20uXLuno0aPW6WPHjmnv3r3y8fFRxYoVNWLECE2ePFlVq1ZVpUqV9NJLL8nf318dO3aUJIWEhKht27YaOHCg5s6dq9TUVA0ZMkQ9evTgTgkAAAD3IbuG2127dqlFixbW6YxxsDExMVqwYIFGjRqly5cva9CgQbpw4YIeeughrV69Wi4uLtZ14uLiNGTIELVq1UoODg56/PHH9dZbb931fQEAAID9WQzDMOxdhL0lJyfLy8tLSUlJpvhAmcVi7wqQE864ImzzLntXgOw0C7t9G9iNJZYXnqLKmGCeF53c5rUiO+YWAAAAyCvCLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyjSIfbiRMnymKx2PzUqFHDuvzatWsaPHiwSpUqJXd3dz3++OM6deqUHSsGAACAPRXpcCtJtWrVUkJCgvXn22+/tS775z//qS+//FKfffaZNm/erJMnT6pz5852rBYAAAD25GjvAm7H0dFRvr6+meYnJSXp3//+txYvXqyWLVtKkubPn6+QkBB9//33evDBB+92qQAAALCzIh9ujxw5In9/f7m4uCg8PFzTpk1TxYoVtXv3bqWmpioyMtLatkaNGqpYsaK2b9+eY7hNSUlRSkqKdTo5OVmSlJqaqtTU1MLbmbvE1dXeFSAnJjjEzMtIt3cFyA4nTpHm6sALT1FlhlyTIbf7UqTDbePGjbVgwQJVr15dCQkJio2NVdOmTXXgwAElJiaqePHi8vb2tlmnXLlySkxMzLHfadOmKTY2NtP8NWvWyM3NrSB3wS6WLLF3BcjJqlX2rgC4B61KsHcFyMGS2rzwFFWrTPSic+XKlVy1sxiGYRRyLQXmwoULCgwM1BtvvCFXV1f17dvX5gqsJDVq1EgtWrTQK6+8km0/WV25DQgI0F9//SVPT89Cq/9u8fKydwXISVKSvStAtrb9aO8KkJ2IevauADnwms4LT1GV9IJ5XnSSk5NVunRpJSUl5ZjXivSV21t5e3urWrVqOnr0qFq3bq3r16/rwoULNldvT506leUY3Zs5OzvL2dk503wnJyc5OTkVdNl33dWr9q4AOTHBIWZeliL/Gdv7FydOkXY1nReeosoMuSZDbvflnvpLfunSJcXHx8vPz08NGjSQk5OT1q9fb11++PBh/fbbbwoPD7djlQAAALCXIn3l9rnnnlP79u0VGBiokydPasKECSpWrJieeOIJeXl5qX///ho5cqR8fHzk6empoUOHKjw8nDslAAAA3KeKdLj9448/9MQTT+js2bMqU6aMHnroIX3//fcqU6aMJGnmzJlycHDQ448/rpSUFEVFRWnOnDl2rhoAAAD2ck99oKywJCcny8vL67YDlO8VFou9K0BOOOOKsM277F0BstMszN4VIAeWWF54iipjgnledHKb1+6pMbcAAABATgi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3CLQAAAEyDcAsAAADTINwCAADANAi3AAAAMA3ThNt33nlHQUFBcnFxUePGjfXDDz/YuyQAAADcZaYIt5988olGjhypCRMmaM+ePapTp46ioqJ0+vRpe5cGAACAu8gU4faNN97QwIED1bdvX9WsWVNz586Vm5ubPvzwQ3uXBgAAgLvI0d4F3Knr169r9+7dGjNmjHWeg4ODIiMjtX379izXSUlJUUpKinU6KSlJknTu3DmlpqYWbsF3gYuLvStATs6etXcFyNalZHtXgOxw4hRpLtd54Smqzpro3Ll48aIkyTCMHNvd8+H2r7/+UlpamsqVK2czv1y5cvrll1+yXGfatGmKjY3NNL9SpUqFUiNws9Kl7V0BAOB+UXqq+V50Ll68KC8vr2yX3/PhNj/GjBmjkSNHWqfT09N17tw5lSpVShaLxY6V4VbJyckKCAjQ77//Lk9PT3uXA9wzOHeAvOO8KdoMw9DFixfl7++fY7t7PtyWLl1axYoV06lTp2zmnzp1Sr6+vlmu4+zsLGdnZ5t53t7ehVUiCoCnpyd/aIB84NwB8o7zpujK6Ypthnv+A2XFixdXgwYNtH79euu89PR0rV+/XuHh4XasDAAAAHfbPX/lVpJGjhypmJgYhYWFqVGjRpo1a5YuX76svn372rs0AAAA3EWmCLfdu3fXmTNnNH78eCUmJqpu3bpavXp1pg+Z4d7j7OysCRMmZBpGAiBnnDtA3nHemIPFuN39FAAAAIB7xD0/5hYAAADIQLgFAACAaRBuAQAAYBqEWxSYPn36qGPHjjm2uXLlih5//HF5enrKYrHowoULhVpTUFCQZs2aVeBt8yI3jwvuT9u2bVNoaKicnJwK/RjZtGlTrs+5vLTNK4vFohUrVhR4vzAXwzA0aNAg+fj4yGKxaO/evYW2rebNm2vEiBEF3jYvJk6cqLp16xZ4v/crU9wtAUXDm2++edvve164cKG2bt2q7777TqVLl87VzZjvxM6dO1WiRIlC3QaQXyNHjlTdunX19ddfy93dvVC31aRJEyUkJBT6OQcUhNWrV2vBggXatGmTKleurNKF+L3ly5Ytk5OTU6H1j7uPcIsCk5sXzfj4eIWEhOiBBx64o22lpqbm6o9RmTJl7mg7QGGKj4/X008/rQoVKuS7j+vXr6t48eK3bVe8ePFsv7URKGri4+Pl5+enJk2a5LuP3L5O+Pj45HsbKJoYlmBiS5cuVWhoqFxdXVWqVClFRkbq8uXLkqQPPvhAISEhcnFxUY0aNTRnzhzresePH5fFYtGnn36qpk2bytXVVQ0bNtSvv/6qnTt3KiwsTO7u7oqOjtaZM2es693u7ffmzZtrxowZ2rJliywWi5o3by4p67cpvb29tWDBApt6PvnkEzVr1kwuLi6Ki4uzbu/111+Xn5+fSpUqpcGDBys1NdXaz81DDQzD0MSJE1WxYkU5OzvL399fw4YNs9nulStX1K9fP3l4eKhixYp6//33bZb//vvv6tatm7y9veXj46MOHTro+PHj1uVpaWkaOXKkvL29VapUKY0aNeq2V7Nxb8pqGEvdunU1ceJESX8f1x988IE6deokNzc3Va1aVf/9738l/d8xffbsWfXr108Wi0ULFizQggULMn0V+IoVK2SxWKzTGW9ffvDBB6pUqZJcXFxuuz0p81CDEydOqH379ipZsqRKlCihWrVqadWqVTbb3r17t8LCwuTm5qYmTZro8OHDNsu/+OIL1a9fXy4uLqpcubJiY2N148YN6/IjR47o4YcflouLi2rWrKm1a9fm+XHG/adPnz4aOnSofvvtN1ksFgUFBd32fJP+PgfeffddPfbYYypRooSmTJliPV8WLVqkoKAgeXl5qUePHrp48aJ1vVuHGsyZM0dVq1aVi4uLypUrpy5duthsNz09XaNGjZKPj498fX1tapCkCxcuaMCAASpTpow8PT3VsmVL7du3z6bN9OnTVa5cOXl4eKh///66du3aHT1msEW4NamEhAQ98cQT6tevnw4dOqRNmzapc+fOMgxDcXFxGj9+vKZMmaJDhw5p6tSpeumll7Rw4UKbPiZMmKBx48Zpz549cnR01JNPPqlRo0bpzTff1NatW3X06FGNHz8+1zUtW7ZMAwcOVHh4uBISErRs2bI87dMLL7yg4cOH69ChQ4qKipIkbdy4UfHx8dq4caMWLlxoDQhZ+fzzzzVz5ky99957OnLkiFasWKHQ0FCbNjNmzFBYWJh+/PFHPfvss3rmmWesL+ipqamKioqSh4eHtm7dqm3btsnd3V1t27bV9evXresvWLBAH374ob799ludO3dOy5cvz9N+wjxiY2PVrVs37d+/X+3atVPPnj117tw5BQQEKCEhQZ6enpo1a5YSEhLUvXv3XPd79OhRff7551q2bJnNWMTstpeVwYMHKyUlRVu2bNFPP/2kV155JdPQiLFjx2rGjBnatWuXHB0d1a9fP+uyrVu3qnfv3ho+fLh+/vlnvffee1qwYIGmTJki6e8A0LlzZxUvXlw7duzQ3LlzNXr06Dw8erhfvfnmm5o0aZIqVKighIQE7dy5M9frTpw4UZ06ddJPP/1kPV7j4+O1YsUKrVy5UitXrtTmzZs1ffr0LNfftWuXhg0bpkmTJunw4cNavXq1Hn74YZs2CxcuVIkSJbRjxw69+uqrmjRpks0/bl27dtXp06f19ddfa/fu3apfv75atWplPRc//fRTTZw4UVOnTtWuXbvk5+dnc4EJBcCAKe3evduQZBw/fjzTsuDgYGPx4sU2815++WUjPDzcMAzDOHbsmCHJ+OCDD6zLlyxZYkgy1q9fb503bdo0o3r16tbpmJgYo0OHDjnWNXz4cKNZs2Y28yQZy5cvt5nn5eVlzJ8/36aeWbNm2bSJiYkxAgMDjRs3bljnde3a1ejevbt1OjAw0Jg5c6ZhGIYxY8YMo1q1asb169ezrC0wMNB46qmnrNPp6elG2bJljXfffdcwDMNYtGiRUb16dSM9Pd3aJiUlxXB1dTW++eYbwzAMw8/Pz3j11Vety1NTU40KFSrc9nHBvefmYytDnTp1jAkTJhiG8fdxPW7cOOuyS5cuGZKMr7/+2jrv5uPcMAxj/vz5hpeXl02fy5cvN27+Uz1hwgTDycnJOH36tE27221v48aNhiTj/PnzhmEYRmhoqDFx4sQs9y2j7bp166zzvvrqK0OScfXqVcMwDKNVq1bG1KlTbdZbtGiR4efnZxiGYXzzzTeGo6Oj8eeff1qXf/3111me78CtZs6caQQGBlqnb3e+Gcbf58CIESNs2kyYMMFwc3MzkpOTrfOef/55o3HjxtbpZs2aGcOHDzcMwzA+//xzw9PT06b9zZo1a2Y89NBDNvMaNmxojB492jAMw9i6davh6elpXLt2zaZNcHCw8d577xmGYRjh4eHGs88+a7O8cePGRp06dbLcJvKOK7cmVadOHbVq1UqhoaHq2rWr5s2bp/Pnz+vy5cuKj49X//795e7ubv2ZPHmy4uPjbfqoXbu29feMrzK++UpnuXLldPr06Sy3HxcXZ9P/1q1b73ifwsLCMs2rVauWihUrZp328/PLtqauXbvq6tWrqly5sgYOHKjly5fbvIUq2e6zxWKRr6+vtb99+/bp6NGj8vDwsO6Xj4+Prl27pvj4eCUlJSkhIUGNGze29uHo6Jhl3bg/3Hw8lShRQp6entken3kRGBiY5XjyvGxv2LBhmjx5siIiIjRhwgTt378/x/78/PwkyeZ8mDRpks15PnDgQCUkJOjKlSs6dOiQAgIC5O/vb+0jPDw8fzsM5FJWf2+DgoLk4eFhnc7pdaJ169YKDAxU5cqV1atXL8XFxenKlSs2bW4+L27tb9++fbp06ZJKlSplc24cO3bM+hp76NAhm9cJiXOjoPGBMpMqVqyY1q5dq++++05r1qzR7NmzNXbsWH355ZeSpHnz5mU6uW4OiZJsBuJnjPm7dV56enqW23/sscds+i9fvny2tVoslkzjUm8eN5shq7se3PphgZxqCggI0OHDh7Vu3TqtXbtWzz77rF577TVt3rzZ2k9O/V26dEkNGjRQXFxcpr754Nr9x8HB4bbHbV6Oz9z2KWV9LuR1ewMGDFBUVJS++uorrVmzRtOmTdOMGTM0dOjQLPvL+Btw8/kQGxurzp07Z+o7YxwwUFDu5NzIy3nh4eGhPXv2aNOmTVqzZo3Gjx+viRMnaufOndbx8Ld7nfDz89OmTZsy9X3reHoUHsKtiVksFkVERCgiIkLjx49XYGCgtm3bJn9/f/3vf/9Tz549C23bHh4eNv8p56RMmTJKSEiwTh85ciTTf8oFxdXVVe3bt1f79u01ePBg1ahRQz/99JPq169/23Xr16+vTz75RGXLlpWnp2eWbfz8/LRjxw7rGK0bN25Yx1zBXG49bpOTk3Xs2LE77vPixYu6fPmy9UW6MO/vGRAQoKefflpPP/20xowZo3nz5tmE25zUr19fhw8fVpUqVbJcHhISot9//10JCQnWq77ff/99gdWO+0thnG/ZcXR0VGRkpCIjIzVhwgR5e3trw4YNWf4jd6v69esrMTFRjo6OCgoKyrJNSEiIduzYod69e1vncW4ULMKtSe3YsUPr169XmzZtVLZsWe3YsUNnzpxRSEiIYmNjNWzYMHl5ealt27ZKSUnRrl27dP78eY0cOfKu19qyZUu9/fbbCg8PV1pamkaPHl0o9xxcsGCB0tLS1LhxY7m5uenjjz+Wq6urAgMDc7V+z5499dprr6lDhw7WDzucOHFCy5Yt06hRo1ShQgUNHz5c06dPV9WqVVWjRg298cYbhf5FFbCPli1basGCBWrfvr28vb01fvz4TO9+5FXGsfniiy9q2LBh2rFjR7YfkLxTI0aMUHR0tKpVq6bz589r48aNCgkJyfX648eP16OPPqqKFSuqS5cucnBw0L59+3TgwAFNnjxZkZGRqlatmmJiYvTaa68pOTlZY8eOLZR9gfkVxvmWlZUrV+p///ufHn74YZUsWVKrVq1Senq6qlevnqv1IyMjFR4ero4dO+rVV19VtWrVdPLkSX311Vfq1KmTwsLCNHz4cPXp00dhYWGKiIhQXFycDh48qMqVKxf4/tyvGHNrUp6entqyZYvatWunatWqady4cZoxY4aio6M1YMAAffDBB5o/f75CQ0PVrFkzLViwQJUqVbJLrTNmzFBAQICaNm2qJ598Us8995zc3NwKfDve3t6aN2+eIiIiVLt2ba1bt05ffvmlSpUqlav13dzctGXLFlWsWFGdO3dWSEiI9RYuGVdy//Wvf6lXr16KiYlReHi4PDw81KlTpwLfF9jfmDFj1KxZMz366KN65JFH1LFjRwUHB99Rnz4+Pvr444+1atUqhYaGasmSJZluM1RQ0tLSNHjwYIWEhKht27aqVq1anj6xHRUVpZUrV2rNmjVq2LChHnzwQc2cOdP6z6KDg4OWL1+uq1evqlGjRhowYID1TgpAXhXG+ZYVb29vLVu2TC1btlRISIjmzp2rJUuWqFatWrla32KxaNWqVXr44YfVt29fVatWTT169NCJEyesn13p3r27XnrpJY0aNUoNGjTQiRMn9MwzzxT4vtzPLMatg1gAAACAexRXbgEAAGAahFsAAACYBuEWAAAApkG4BQAAgGkQbgEAAGAahFsAAACYBuEWAAAApkG4BQAAgGkQbgHgLpg4caLq1q1bYG2bN2+uESNG3HFdAGA2hFsA95U+ffrIYrFk+jl69Gihbve5557T+vXrC6y/ZcuW6eWXXy6w/rJz7NgxPfnkk/L395eLi4sqVKigDh066JdffpEkHT9+XBaLRXv37s1z3xaLRStWrCjYggHc9xztXQAA3G1t27bV/PnzbeaVKVMmX31dv35dxYsXv207d3d3ubu752sbWfHx8SmwvrKTmpqq1q1bq3r16lq2bJn8/Pz0xx9/6Ouvv9aFCxcKffsAkB9cuQVw33F2dpavr6/NT7FixdSnTx917NjRpu2IESPUvHlz63Tz5s01ZMgQjRgxQqVLl1ZUVJQ2bdoki8Wi9evXKywsTG5ubmrSpIkOHz5sXe/WoQabNm1So0aNVKJECXl7eysiIkInTpyw2faiRYsUFBQkLy8v9ejRQxcvXrSp4+ZhCUFBQZo6dar69esnDw8PVaxYUe+//75Nf999953q1q0rFxcXhYWFacWKFTledT148KDi4+M1Z84cPfjggwoMDFRERIQmT56sBx98UJJUqVIlSVK9evVksVisj9XOnTvVunVrlS5dWl5eXmrWrJn27NljU68kderUSRaLxTqdm+dg6dKlCg0Nlaurq0qVKqXIyEhd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",
      "text/plain": [
       "<Figure size 800x500 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8, 5))\n",
    "furnishing_counts.plot(kind='bar', color=['blue', 'pink', 'green'])\n",
    "plt.xticks(rotation=0)\n",
    "plt.title('Number of Houses by Furnishing Status')\n",
    "plt.xlabel('Furnishing Status')\n",
    "plt.ylabel('Count')\n",
    "plt.grid(axis='y')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c75fb250-9715-467b-a998-8daf34d3c39f",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "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.12.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
