From c5c10d1fcfc54ffd4a06bc3f48699d284b1bb542 Mon Sep 17 00:00:00 2001 From: dan Date: Fri, 12 Dec 2025 23:27:23 +0300 Subject: [PATCH] fully working spam hypot --- .../category_mix_uplift/analysis.ipynb | 541 ------------------ alternative/category_mix_uplift/eda_utils.py | 154 ----- .../contact_frequency_orders/analysis.ipynb | 353 ------------ .../contact_frequency_orders/eda_utils.py | 154 ----- alternative/device_orders/analysis.ipynb | 509 ---------------- alternative/device_orders/eda_utils.py | 154 ----- .../ent_passive_ctr_uplift/analysis.ipynb | 112 ---- .../ent_passive_ctr_uplift/eda_utils.py | 154 ----- .../passive_share_orders/analysis.ipynb | 458 --------------- alternative/passive_share_orders/eda_utils.py | 154 ----- alternative/saturation_effect/analysis.ipynb | 421 -------------- alternative/saturation_effect/eda_utils.py | 154 ----- spam_hypot/01_stat_analysis.ipynb | 188 ------ spam_hypot/02_models.ipynb | 161 ------ spam_hypot/03_best_model.ipynb | 206 ------- spam_hypot/best_bins.png | Bin 111523 -> 102568 bytes spam_hypot/best_model_prob.png | Bin 46486 -> 41723 bytes spam_hypot/model_compare.py | 48 +- spam_hypot/stat_bins.png | Bin 99361 -> 89471 bytes 19 files changed, 39 insertions(+), 3882 deletions(-) delete mode 100644 alternative/category_mix_uplift/analysis.ipynb delete mode 100644 alternative/category_mix_uplift/eda_utils.py delete mode 100644 alternative/contact_frequency_orders/analysis.ipynb delete mode 100644 alternative/contact_frequency_orders/eda_utils.py delete mode 100644 alternative/device_orders/analysis.ipynb delete mode 100644 alternative/device_orders/eda_utils.py delete mode 100644 alternative/ent_passive_ctr_uplift/analysis.ipynb delete mode 100644 alternative/ent_passive_ctr_uplift/eda_utils.py delete mode 100644 alternative/passive_share_orders/analysis.ipynb delete mode 100644 alternative/passive_share_orders/eda_utils.py delete mode 100644 alternative/saturation_effect/analysis.ipynb delete mode 100644 alternative/saturation_effect/eda_utils.py delete mode 100644 spam_hypot/01_stat_analysis.ipynb delete mode 100644 spam_hypot/02_models.ipynb delete mode 100644 spam_hypot/03_best_model.ipynb diff --git a/alternative/category_mix_uplift/analysis.ipynb b/alternative/category_mix_uplift/analysis.ipynb deleted file mode 100644 index 18b2dd0..0000000 --- a/alternative/category_mix_uplift/analysis.ipynb +++ /dev/null @@ -1,541 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Категорийный микс и вероятность заказа\n", - "\n", - "**Вопрос:** влияет ли высокая доля показов в развлечениях (ent) при контроле объёма на вероятность заказа?\n", - "\n", - "**Гипотеза:** клиенты с высокой долей коммуникаций в ent чаще оформляют заказы, даже при одинаковом объёме контактов. Проверяем через ML-классификацию `has_order`." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:34:48.794887Z", - "iopub.status.busy": "2025-12-12T19:34:48.794342Z", - "iopub.status.idle": "2025-12-12T19:34:55.568140Z", - "shell.execute_reply": "2025-12-12T19:34:55.565812Z" - } - }, - "outputs": [], - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.linear_model import LogisticRegression\n", - "from sklearn.metrics import roc_auc_score\n", - "from sklearn.impute import SimpleImputer\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:34:55.575403Z", - "iopub.status.busy": "2025-12-12T19:34:55.574914Z", - "iopub.status.idle": "2025-12-12T19:34:58.188645Z", - "shell.execute_reply": "2025-12-12T19:34:58.187063Z" - } - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
idimp_totalclick_totalorders_amt_totalimp_cat_entimp_cat_superimp_cat_transportimp_cat_shoppingimp_cat_hotelimp_cat_aviaagegender_cddevice_platform_cdhas_ordershare_imp_entshare_imp_supershare_imp_transportshare_imp_shoppingshare_imp_hotelshare_imp_avia
0168.017.0013.017.010.014.012258.0MAndroid00.1911760.2500000.1470590.2058820.1764710.029412
12116.023.0314.014.025.015.0341454.0MAndroid10.1206900.1206900.2155170.1293100.2931030.120690
23293.037.0246.031.084.071.0253670.0FAndroid10.1569970.1058020.2866890.2423210.0853240.122867
3457.015.009.011.06.011.061443.0FAndroid00.1578950.1929820.1052630.1929820.1052630.245614
4543.016.013.08.06.08.071146.0MAndroid10.0697670.1860470.1395350.1860470.1627910.255814
\n", - "
" - ], - "text/plain": [ - " id imp_total click_total orders_amt_total imp_cat_ent imp_cat_super \\\n", - "0 1 68.0 17.0 0 13.0 17.0 \n", - "1 2 116.0 23.0 3 14.0 14.0 \n", - "2 3 293.0 37.0 2 46.0 31.0 \n", - "3 4 57.0 15.0 0 9.0 11.0 \n", - "4 5 43.0 16.0 1 3.0 8.0 \n", - "\n", - " imp_cat_transport imp_cat_shopping imp_cat_hotel imp_cat_avia age \\\n", - "0 10.0 14.0 12 2 58.0 \n", - "1 25.0 15.0 34 14 54.0 \n", - "2 84.0 71.0 25 36 70.0 \n", - "3 6.0 11.0 6 14 43.0 \n", - "4 6.0 8.0 7 11 46.0 \n", - "\n", - " gender_cd device_platform_cd has_order share_imp_ent share_imp_super \\\n", - "0 M Android 0 0.191176 0.250000 \n", - "1 M Android 1 0.120690 0.120690 \n", - "2 F Android 1 0.156997 0.105802 \n", - "3 F Android 0 0.157895 0.192982 \n", - "4 M Android 1 0.069767 0.186047 \n", - "\n", - " share_imp_transport share_imp_shopping share_imp_hotel share_imp_avia \n", - "0 0.147059 0.205882 0.176471 0.029412 \n", - "1 0.215517 0.129310 0.293103 0.120690 \n", - "2 0.286689 0.242321 0.085324 0.122867 \n", - "3 0.105263 0.192982 0.105263 0.245614 \n", - "4 0.139535 0.186047 0.162791 0.255814 " - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "cats = [\"ent\", \"super\", \"transport\", \"shopping\", \"hotel\", \"avia\"]\n", - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "cat_cols = []\n", - "for c in cats:\n", - " df[f\"imp_cat_{c}\"] = df[f\"active_imp_{c}\"] + df[f\"passive_imp_{c}\"]\n", - " cat_cols.append(f\"imp_cat_{c}\")\n", - "\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " **{col: \"sum\" for col in [\"imp_total\", \"click_total\", \"orders_amt_total\"] + cat_cols},\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ").reset_index()\n", - "\n", - "client[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\n", - "for c in cats:\n", - " client[f\"share_imp_{c}\"] = eda.safe_divide(client[f\"imp_cat_{c}\"], client[\"imp_total\"])\n", - "\n", - "client.head()\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Визуализация: заказы vs доля ent" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:34:58.290489Z", - "iopub.status.busy": "2025-12-12T19:34:58.290200Z", - "iopub.status.idle": "2025-12-12T19:34:58.652384Z", - "shell.execute_reply": "2025-12-12T19:34:58.650453Z" - } - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/tmp/ipykernel_1067833/2853593271.py:2: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.\n", - " rate = client.groupby(bins)[\"has_order\"].mean().reset_index()\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABKAAAAGACAYAAACazRotAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA0GtJREFUeJzs3Xl4TNcfBvB3ZjKTfbKQhGyySVCCWGNL7EXtS1Gqam9qrbaorfZS1dqK0mopSu1aWlr79mvRWmpLImQhIpF1MpnJzP39EbkyEpF9It7P83hi7j33zrnJme2dc79XIgiCACIiIiIiIiIiolIiNXYHiIiIiIiIiIioYmMARUREREREREREpYoBFBERERERERERlSoGUEREREREREREVKoYQBERERERERERUaliAEVERERERERERKWKARQREREREREREZUqBlBERERERERERFSqGEAREREREREREVGpYgBFRERERERERESligEUERERERERERGVKhNjd4CIiKgwDh06hPHjx+e5rnr16jhw4EAZ94iIqPRcvHgRp0+fxpAhQ6BUKo3dHSIioiJjAEVERC+l0aNHw8vLS7y9Zs0aI/aGiKh0XLp0CStXrkTPnj0ZQBER0UuNARQREb2UmjVrhiZNmoi3f/75Zzx+/NiIPSIiIiIioudhDSgiInqpaLVaAIBUWrCXsMjISIwbNw6NGzdG3bp10a9fPxw7dizPtlOmTIGfn1+ufytWrDBod+jQIfTq1Qv169c3aLdhw4Z8+7Jr1y74+fkhKipKXHb79m00atQIo0aNQmZmpkH7wYMH59mfXbt2GbQZPHiwwXaXL18W2z5r79696NWrF/z9/dG4cWNMnDgR9+/fz3W/b7zxRq5tN2zYYND/Nm3a5Nm/7H9t2rQRt1WpVFi0aBGCgoJQu3ZtdOzYERs2bIAgCAb3kXP7mjVromXLlpgxYwaSk5Pz/d3mPL4+ffqgbt26aNSoEd566y2cOnUq321WrFiBzp07o379+ggICEC/fv1w5MgRgzZ///03xo0bh+DgYNSuXRtBQUFYsGAB1Gq1QbspU6YYHHd2n2rUqIF169aJy27cuIEpU6agbdu2qFOnDpo3b46pU6fmClG3bNmCbt26oUGDBqhXrx66deuGHTt25DqGs2fPYuDAgahXrx4aNmyIMWPGICwsLNdx+vn5ITAw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b6HVauHi4oLRo0dj5MiRJXUILx2NVoedR0Ox/2Q40tK1sDSX443mnuja0gt37ydDLwABfo7oGeyNutUdCjW9joiIiIiIiIgIKGcBFAB4e3tj48aN+bbZtGnTC/eTV5tRo0Zh1KhRRe1ahaPWZGLn0VBs+/2muCwtXYufjtwCAEwcEACFXAaPqiwsTkRERERERERFx/OoXmEyqRT7T4bnue7A6TvwdLZh+ERERERERERExcYA6hWWptYiLV2b97p0LVTqvNcRERERERERERUGA6hXmKWZHJbPuYqdpbkcFma8wh0RERERERERFR8DqFeYTq9Ht5Zeea7r1tILOr2+jHtERERERERERBVRuStCTmXHTGGCPm2qAwD25bgKXreWXujTpjoUcpmRe0hEREREREREFQEDqFecQi5Dr9Y+6NvWF6mqDFhZmEKn1zN8IiIiIiIiIqISw1PwCGYKE2g1asREhkOrUcNMwVySiIiIiIiIiEoOAygSqdVqY3eBiIiIiIiIiCogBlBERERERERERFSqJIIgCMbuxMvs4sWLEAQBCoXC2F0pFkEQoNVqIZfLIZFIjN0deklw3FBRcNxQYXHMUFFw3FBRcNxQUXDcUFFUlHGj0WggkUgQEBDwwrYs9lNML/NAyUkikbz0IRqVPY4bKgqOGyosjhkqCo4bKgqOGyoKjhsqiooybiQSSYFzEc6AIiIiIiIiIiKiUsUaUEREREREREREVKoYQBERERERERERUaliAEVERERERERERKWKARQREREREREREZUqBlBERERERERERFSqGEAREREREREREVGpYgBFRERERERERESligEUERERERERERGVKgZQRERERERERERUqhhAERERERERERFRqWIARUREREREREREpYoBFBERERERERERlSoGUPRSyczMNHYX6CWl1+uN3QUiqiCuXbuGhIQEY3eDXjIcN1QUHDdUFHfu3IFOpzN2N4hyYQBFL42PP/4YP/30EwRBMHZX6CVz7do1fPHFF4iNjTV2V6icO3LkCM6ePQsAfK6hPH388cfo3bs3fv/9d2RkZBi7O/SS4LihouC4oaKYOnUqOnXqJL6fIcoWHx+P/v3749SpU0brg0TgO2wq55KSktCtWzfExsbC3NwcX375JYKCgozdLXpJ7NixAzNmzIBCocDo0aPx7rvvwszMzNjd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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
share_imp_enthas_order
0(-0.001, 0.0508]0.440191
1(0.0508, 0.0833]0.517177
2(0.0833, 0.109]0.534192
3(0.109, 0.135]0.555661
4(0.135, 0.161]0.590513
5(0.161, 0.192]0.602649
6(0.192, 0.241]0.609542
7(0.241, 0.6]0.670192
\n", - "
" - ], - "text/plain": [ - " share_imp_ent has_order\n", - "0 (-0.001, 0.0508] 0.440191\n", - "1 (0.0508, 0.0833] 0.517177\n", - "2 (0.0833, 0.109] 0.534192\n", - "3 (0.109, 0.135] 0.555661\n", - "4 (0.135, 0.161] 0.590513\n", - "5 (0.161, 0.192] 0.602649\n", - "6 (0.192, 0.241] 0.609542\n", - "7 (0.241, 0.6] 0.670192" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "bins = pd.qcut(client[\"share_imp_ent\"], 8, duplicates=\"drop\")\n", - "rate = client.groupby(bins)[\"has_order\"].mean().reset_index()\n", - "rate[\"share_imp_ent\"] = rate[\"share_imp_ent\"].astype(str)\n", - "plt.figure(figsize=(12, 4))\n", - "sns.lineplot(data=rate, x=\"share_imp_ent\", y=\"has_order\", marker=\"o\")\n", - "plt.xticks(rotation=40)\n", - "plt.title(\"Доля клиентов с заказом vs доля ent показов\")\n", - "plt.tight_layout()\n", - "plt.show()\n", - "rate\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## ML-модель с контролем объёма\n", - "Target: `has_order`. Фичи: доли показов по категориям, общий объём, возраст, пол, платформа." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:34:58.656262Z", - "iopub.status.busy": "2025-12-12T19:34:58.655938Z", - "iopub.status.idle": "2025-12-12T19:34:58.792732Z", - "shell.execute_reply": "2025-12-12T19:34:58.791212Z" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(0.6390716662864897,\n", - " num__imp_total 0.350725\n", - " cat__device_platform_cd_Android 0.266848\n", - " num__share_imp_ent 0.222672\n", - " cat__device_platform_cd_iPadOS -0.169334\n", - " num__share_imp_avia -0.164523\n", - " num__share_imp_super -0.160224\n", - " num__share_imp_transport 0.154995\n", - " num__share_imp_hotel -0.124555\n", - " num__age -0.070436\n", - " cat__gender_cd_F 0.050009\n", - " dtype: float64)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "X = client[[f\"share_imp_{c}\" for c in cats] + [\"imp_total\", \"age\", \"gender_cd\", \"device_platform_cd\"]]\n", - "y = client[\"has_order\"]\n", - "X = X.copy()\n", - "X[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\n", - "X[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n", - "\n", - "numeric_cols = [f\"share_imp_{c}\" for c in cats] + [\"imp_total\", \"age\"]\n", - "cat_cols = [\"gender_cd\", \"device_platform_cd\"]\n", - "\n", - "pre = ColumnTransformer(\n", - " [\n", - " (\"num\", Pipeline([(\"imputer\", SimpleImputer(strategy=\"median\")), (\"scaler\", StandardScaler())]), numeric_cols),\n", - " (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n", - " ]\n", - ")\n", - "\n", - "model = Pipeline([(\"pre\", pre), (\"clf\", LogisticRegression(max_iter=1000))])\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\n", - "model.fit(X_train, y_train)\n", - "proba = model.predict_proba(X_test)[:, 1]\n", - "auc = roc_auc_score(y_test, proba)\n", - "coef = model.named_steps[\"clf\"].coef_[0]\n", - "features = model.named_steps[\"pre\"].get_feature_names_out()\n", - "coef_series = pd.Series(coef, index=features).sort_values(key=abs, ascending=False)\n", - "auc, coef_series.head(10)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Вывод по гипотезе\n", - "- Линейный рост доли клиентов с заказом при росте доли ent-показов.\n", - "- В модели `share_imp_ent` входит в топ-коэффициенты с положительным знаком, AUC ~0.61: эффект слабее, чем у спама, но значимый.\n", - "- Гипотеза подтверждается: ставка на развлечения (ent) коррелирует с заказами при контроле общего объёма." - ] - } - ], - "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.13.5" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/alternative/category_mix_uplift/eda_utils.py b/alternative/category_mix_uplift/eda_utils.py deleted file mode 100644 index 802a6d8..0000000 --- a/alternative/category_mix_uplift/eda_utils.py +++ /dev/null @@ -1,154 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import Dict, Iterable, List - -import numpy as np -import pandas as pd - -# Paths and column groups -DATA_PATH = Path("dataset/ds.csv") -CATEGORIES: List[str] = ["ent", "super", "transport", "shopping", "hotel", "avia"] - -ACTIVE_IMP_COLS = [f"active_imp_{c}" for c in CATEGORIES] -PASSIVE_IMP_COLS = [f"passive_imp_{c}" for c in CATEGORIES] -ACTIVE_CLICK_COLS = [f"active_click_{c}" for c in CATEGORIES] -PASSIVE_CLICK_COLS = [f"passive_click_{c}" for c in CATEGORIES] -ORDER_COLS = [f"orders_amt_{c}" for c in CATEGORIES] - -NUMERIC_COLS = ( - ACTIVE_IMP_COLS - + PASSIVE_IMP_COLS - + ACTIVE_CLICK_COLS - + PASSIVE_CLICK_COLS - + ORDER_COLS - + ["age"] -) -CAT_COLS = ["gender_cd", "device_platform_cd"] - - -def safe_divide(numerator: pd.Series | float, denominator: pd.Series | float) -> pd.Series: - """Divide with protection against zero (works for Series and scalars).""" - if isinstance(denominator, pd.Series): - denom = denominator.replace(0, np.nan) - else: - denom = np.nan if float(denominator) == 0 else denominator - return numerator / denom - - -def normalize_gender(series: pd.Series) -> pd.Series: - cleaned = series.fillna("UNKNOWN").astype(str).str.strip().str.upper() - mapping = {"M": "M", "MALE": "M", "F": "F", "FEMALE": "F"} - return cleaned.map(mapping).fillna("UNKNOWN") - - -def normalize_device(series: pd.Series) -> pd.Series: - cleaned = series.fillna("unknown").astype(str).str.strip() - lowered = cleaned.str.lower().str.replace(" ", "").str.replace("_", "") - mapping = {"android": "Android", "ios": "iOS", "ipados": "iPadOS", "ipad": "iPadOS"} - mapped = lowered.map(mapping) - fallback = cleaned.str.title() - return mapped.fillna(fallback) - - -def add_age_group(df: pd.DataFrame) -> pd.DataFrame: - bins = [0, 25, 35, 45, 55, np.inf] - labels = ["<25", "25-34", "35-44", "45-54", "55+"] - df["age_group"] = pd.cut(df["age"], bins=bins, labels=labels, right=False) - return df - - -def add_totals(df: pd.DataFrame) -> pd.DataFrame: - df["active_imp_total"] = df[ACTIVE_IMP_COLS].sum(axis=1) - df["passive_imp_total"] = df[PASSIVE_IMP_COLS].sum(axis=1) - df["active_click_total"] = df[ACTIVE_CLICK_COLS].sum(axis=1) - df["passive_click_total"] = df[PASSIVE_CLICK_COLS].sum(axis=1) - df["orders_amt_total"] = df[ORDER_COLS].sum(axis=1) - df["click_total"] = df["active_click_total"] + df["passive_click_total"] - df["imp_total"] = df["active_imp_total"] + df["passive_imp_total"] - df["active_ctr"] = safe_divide(df["active_click_total"], df["active_imp_total"]) - df["passive_ctr"] = safe_divide(df["passive_click_total"], df["passive_imp_total"]) - df["ctr_all"] = safe_divide(df["click_total"], df["imp_total"]) - df["cr_click2order"] = safe_divide(df["orders_amt_total"], df["click_total"]) - df["cr_imp2order"] = safe_divide(df["orders_amt_total"], df["imp_total"]) - return df - - -def add_flags(df: pd.DataFrame) -> pd.DataFrame: - df["has_active_comm"] = (df[ACTIVE_IMP_COLS + ACTIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_passive_comm"] = (df[PASSIVE_IMP_COLS + PASSIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_any_order"] = (df[ORDER_COLS].sum(axis=1) > 0).astype(int) - df["order_categories_count"] = (df[ORDER_COLS] > 0).sum(axis=1) - return df - - -def load_data(path: Path | str = DATA_PATH) -> pd.DataFrame: - df = pd.read_csv(path) - df["business_dt"] = pd.to_datetime(df["business_dt"]) - df["gender_cd"] = normalize_gender(df["gender_cd"]) - df["device_platform_cd"] = normalize_device(df["device_platform_cd"]) - df = add_age_group(df) - df = add_totals(df) - df = add_flags(df) - return df - - -def describe_zero_share(df: pd.DataFrame, cols: Iterable[str]) -> pd.DataFrame: - stats = [] - for col in cols: - series = df[col] - stats.append( - { - "col": col, - "count": series.count(), - "mean": series.mean(), - "median": series.median(), - "std": series.std(), - "min": series.min(), - "q25": series.quantile(0.25), - "q75": series.quantile(0.75), - "max": series.max(), - "share_zero": (series == 0).mean(), - "p95": series.quantile(0.95), - "p99": series.quantile(0.99), - } - ) - return pd.DataFrame(stats) - - -def build_daily(df: pd.DataFrame) -> pd.DataFrame: - agg_cols = ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS - daily = df.groupby("business_dt")[agg_cols].sum().reset_index() - daily = add_totals(daily) - daily["day_of_week"] = daily["business_dt"].dt.day_name() - return daily - - -def build_client(df: pd.DataFrame) -> pd.DataFrame: - agg_spec: Dict[str, str] = {col: "sum" for col in ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS} - meta_spec: Dict[str, str | callable] = { - "age": "median", - "gender_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "UNKNOWN", - "age_group": lambda s: s.mode().iat[0] if not s.mode().empty else np.nan, - "device_platform_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "Other", - } - agg_spec.update(meta_spec) - client = df.groupby("id").agg(agg_spec).reset_index() - contact_days = df.groupby("id")["business_dt"].nunique().rename("contact_days") - imp_day = df.copy() - imp_day["imp_day_total"] = imp_day[ACTIVE_IMP_COLS + PASSIVE_IMP_COLS].sum(axis=1) - max_imp_day = imp_day.groupby("id")["imp_day_total"].max().rename("max_impressions_per_day") - client = add_totals(client) - client = add_flags(client) - client = client.merge(contact_days, on="id", how="left") - client = client.merge(max_imp_day, on="id", how="left") - client = add_contact_density(client) - return client - - -def add_contact_density(df: pd.DataFrame) -> pd.DataFrame: - # contact_days must already be present - if "contact_days" in df.columns: - df["avg_impressions_per_contact_day"] = safe_divide(df["imp_total"], df["contact_days"]) - return df - return df diff --git a/alternative/contact_frequency_orders/analysis.ipynb b/alternative/contact_frequency_orders/analysis.ipynb deleted file mode 100644 index 16188a0..0000000 --- a/alternative/contact_frequency_orders/analysis.ipynb +++ /dev/null @@ -1,353 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Частота контактов и заказы\n\n**Вопрос:** влияет ли среднее число кликов на контактный день на вероятность заказа?\n\n**Гипотеза:** клиенты, которые кликают чаще каждого контактного дня, чаще совершают заказ (позитивная зависимость), даже при контроле общего объёма показов." - ] - }, - { - "cell_type": "code", - "metadata": { - "ExecuteTime": { - "end_time": "2025-12-12T19:27:14.925005Z", - "start_time": "2025-12-12T19:27:13.730791Z" - } - }, - "source": [ - "import sqlite3\nfrom pathlib import Path\nimport sys\nimport numpy as np\nimport pandas as pd\nimport seaborn as sns\nimport matplotlib.pyplot as plt\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.preprocessing import StandardScaler, OneHotEncoder\nfrom sklearn.compose import ColumnTransformer\nfrom sklearn.pipeline import Pipeline\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.metrics import roc_auc_score\n\nsns.set_theme(style=\"whitegrid\")\nplt.rcParams[\"figure.figsize\"] = (10, 5)\n\nproject_root = Path.cwd().resolve()\nwhile not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n project_root = project_root.parent\nsys.path.append(str(project_root / \"preanalysis\"))\nimport eda_utils as eda\n\ndb_path = project_root / \"dataset\" / \"ds.sqlite\"\nconn = sqlite3.connect(db_path)\ndf = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\nconn.close()\n" - ], - "outputs": [], - "execution_count": 1 - }, - { - "cell_type": "code", - "metadata": { - "ExecuteTime": { - "end_time": "2025-12-12T19:27:15.582784Z", - "start_time": "2025-12-12T19:27:14.934830Z" - } - }, - "source": [ - "for cols, name in [\n (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n (eda.ORDER_COLS, \"orders_amt_total\"),\n]:\n df[name] = df[cols].sum(axis=1)\n\ndf[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\ndf[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n\ncontact_days = df.groupby(\"id\")[\"business_dt\"].nunique().rename(\"contact_days\")\nclient = df.groupby(\"id\").agg(\n {\n \"imp_total\": \"sum\",\n \"click_total\": \"sum\",\n \"orders_amt_total\": \"sum\",\n \"age\": \"median\",\n \"gender_cd\": lambda s: s.mode().iat[0],\n \"device_platform_cd\": lambda s: s.mode().iat[0],\n }\n).reset_index().merge(contact_days, on=\"id\", how=\"left\")\n\nclient[\"clicks_per_day\"] = eda.safe_divide(client[\"click_total\"], client[\"contact_days\"])\nclient[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\nclient.head()\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - " id imp_total click_total orders_amt_total age gender_cd \\\n", - "0 1 68.0 17.0 0 58.0 M \n", - "1 2 116.0 23.0 3 54.0 M \n", - "2 3 293.0 37.0 2 70.0 F \n", - "3 4 57.0 15.0 0 43.0 F \n", - "4 5 43.0 16.0 1 46.0 M \n", - "\n", - " device_platform_cd contact_days clicks_per_day has_order \n", - "0 Android 13 1.307692 0 \n", - "1 Android 15 1.533333 1 \n", - "2 Android 31 1.193548 1 \n", - "3 Android 12 1.250000 0 \n", - "4 Android 10 1.600000 1 " - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
idimp_totalclick_totalorders_amt_totalagegender_cddevice_platform_cdcontact_daysclicks_per_dayhas_order
0168.017.0058.0MAndroid131.3076920
12116.023.0354.0MAndroid151.5333331
23293.037.0270.0FAndroid311.1935481
3457.015.0043.0FAndroid121.2500000
4543.016.0146.0MAndroid101.6000001
\n", - "
" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 2 - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Визуализация: заказы vs клики на контактный день" - ] - }, - { - "cell_type": "code", - "metadata": { - "ExecuteTime": { - "end_time": "2025-12-12T19:27:15.715340Z", - "start_time": "2025-12-12T19:27:15.610539Z" - } - }, - "source": [ - "bins = pd.qcut(client[\"clicks_per_day\"], 8, duplicates=\"drop\")\norder_rate = client.groupby(bins)[\"has_order\"].mean().reset_index()\norder_rate[\"clicks_per_day\"] = order_rate[\"clicks_per_day\"].astype(str)\nplt.figure(figsize=(12, 4))\nsns.lineplot(data=order_rate, x=\"clicks_per_day\", y=\"has_order\", marker=\"o\")\nplt.xticks(rotation=40)\nplt.title(\"Доля клиентов с заказом vs клики на контактный день\")\nplt.tight_layout()\nplt.show()\norder_rate\n" - ], - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/var/folders/mx/y1qcnthj1154ngqj00r8gz480000gn/T/ipykernel_83535/2771825794.py:2: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.\n", - " order_rate = client.groupby(bins)[\"has_order\"].mean().reset_index()\n" - ] - }, - { - "data": { - "text/plain": [ - "
" - ], - "image/png": "iVBORw0KGgoAAAANSUhEUgAABKAAAAGACAYAAACazRotAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAoTZJREFUeJzt3QV4nFXaxvEnSaN1T92FKnRrUFoKRRcr7iwui0txWGCxRRdZnOIOH1LcipdSKNBSd6Hujdt8133aM51MkzRJozP/33XlSjIzSSaTk1fu9znPiQkEAgEDAAAAAAAAKklsZX1jAAAAAAAAgAAKAAAAAAAAlY4KKAAAAAAAAFQqAigAAAAAAABUKgIoAAAAAAAAVCoCKAAAAAAAAFQqAigAAAAAAABUKgIoAAAAAAAAVCoCKAAAAAAAAFQqAigAAAAAAABUKgIoAECVu+aaa6xHjx5Fvuk+AEDN9sILL9i5555rq1evtpkzZ9rAgQNt3bp11f20AAA1WJ3qfgIAgOjUvHlze+SRRwrdduGFF1bb8wEAlN6RRx5p77zzju25554WExNj559/vjVp0oSXEABQLAIoAECVy8/Pt5SUFNt1110L3Z6QkMBfAwBqgXr16tnbb79tixYtch/rogIAACVhCh4AoMrl5eVZUlJSqR67cOFCu/jii23YsGEusDrllFPs119/LfSYffbZp8jpfLrd09eccMIJtttuuxX7mHATJ050j9F7mT17tu277752/PHHBx9T3FRCPc/Qxzz88MPBzwOBgPseun3p0qXB23/55Rc7+eSTrX///jZ48GC7+uqrC01p+b//+7/tvsb//n7qYnHPR2/eRx995KoX9Frodb3pppts48aNwfv1XEO/rl+/fnb44Yfb999/X+LfKicnx/773//aqFGj3NcccsghrkKiJBMmTHDPRX/bv//97/b5558Xun/SpEl25pln2qBBg6xPnz7ud9XzKygocPfrtdBz1GsjK1eutNGjR9vw4cNL/T38a6Kfr+eh56O/RagffvjBTjzxRPvb3/5mQ4YMsSuuuMKWL1++3d9Gb3oOof7zn/9sNyZCrVixwnbZZRd76aWXCt2uv33v3r3tueeeCz6HY4891v3d9Luo4mTevHnFvraleW1K878TOr68yy+/vND/hh8z3ocffuie43333bfd85Ds7Gw3TkK/ZkfP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70tO3Bo69WttAwidAAAAgMgKoC699FJLSUmxSZMm2RVXXGEnnniiu33q1Kl2xhln2Pnnn1/RzxMAEGWh04yF61yVk0KntYVCpzo2eGulk0KnxPi4an2uAAAAACopgIqJibFzzz3XvYV67bXXyvPtAACwfIVOC9ZuqXSauszWbcoOviopSXVscO9U27Nfa9utRwvXWBwAAABA7VHuBhkrV6500+9ycnKCtxUUFFhmZqb98ssv9sADD1TUcwQA1GJJSUklhk7T56+17//4yyZMXW7rN28Lneom1bEhfVq5Sqfduje3+DqETgAAAEBUBVCffPKJXXnllZaXl+eqofxqRP7jzp07V+yzBADUOlk5eRafkGSt2na2+IRE97kag+fnF9i0BQqdlrnQaUNo6JQcb0NU6dS/te1K6AQAAABEdwD1+OOPW+/eve1f//qXvfzyy5afn29nn322ffPNN3b//ffbddddV/HPFABQa+Tk5tvb4+fauO/mW3pmrguWDh3e2UaP6GK3PD3BZixcH3xsveR4G7q10ql/N1U6xVbrcwcAAABQQwKoBQsW2H333We9evWyIUOG2NixY61Lly7ubc2aNS6gGjZsWMU/WwBAjZeVnWdvfz3XXvtsVvA2hVD6PFAQsCP37mYPvf6bC5327N/G+nVrZnXiCJ0AAACASFauACo2NtYaNmzoPu7QoYPNnz/f9X/S7SNGjLB33nmnop8nAKAaZefm28bN2bYhLds2bn3bkJaz9X22u29jWo7lFxTYvZeMcJVPRfnghwX2ws0H2As3H0joBAAAAESRcgVQ6vE0efJkGzRokPtYjchnzpzpKqI2bdpUqDE5AKDmUfPvzekhAVLw/dbbXKC05XPdnpmdV6rv2yG1vgujVPFUFN2emZVnDeslVvBvBAAAACDiAqjjjz/e9X/KyMiwyy67zIYOHWrXXnutHX300fbSSy+5/lAAgKqjhSAUEm2pRsoJq1QKCZa23rYpPccCgbL9DE2Ta1QvwRrWT3QBUqN6/n2Ce6+3Jg2SrEnDZNfzqagQSrenJMVX3C8OAAAAIHIDqGOOOcZVOS1dutR9fuutt9o555xjt99+u7Vp08auv/76in6eABB1cvMKbFO6r0YqOlQK3rY523LyCsr8M+qnJFij+gnWqF6SNayn94khAVNCoaApJalOcLXTkmi1u8OGd7ZXQ3pAebpd0/TijZ5PAAAAQDQpVwAlJ510kqWnp9uKFSusTp069vTTT9u6deusWbNmFfsMASBCFBQELC0zt1Al0pa+SoWrk3x/peKmsZUkKSGuUGjkQqWtgVJ4qNSgboLFVULz76SEOnb0Pt3cx++HrIKn8Em3J8THVfjPBAAAABCBAdTixYvt8ssvt2nTphX7mBkzZuzM8wKAWkHVPoWmtwUbdW8fKm1p0l22eW+xsTGFprgVCpa2VisFb6ubYEmJ5b6uUKEUMh25d1c7ZlR3S8vItnopia7yifAJAAAAiE7lOlO55ZZbbMmSJXbeeedZ27Zt3ep3ABAJ8vMLbFOGwqMc27A5K1idtK0xd+FgKSsnv8w/Q9VARYVKRfVXqpcc70Ko2kiVUOoVuGzJAuvUqZOlpKRU91MCAAAAUJsCKK2Apybko0ePrvhnBAAV3Jw7IysvbLW3raFSSLWSv29zRtmbc8fXiQ1Oc2sUWp1UKGDaMhWuQd1E9/hokpWVVd1PAQAAAEBtDKDq1q1rzZs3r/hnA6DGSkpKspoiNy8/GBptqUoqHCyF91fKyy9bc2712VZ/pCKnvIWGSq55d6IlJ5auOTcAAAAARKtyBVCHH364vfDCCzZ06FCLi6OZLBDpPY7iE5KsVdvOFp+Q6D7X1KqKbs6tyiPfJ2lbpVLIlLeQoCk9K6/MP0Mhka9EcgFS/e2DJf++vppz19JpbwAAAABQE5X6LPLaa68NfpyXl2ffffed7bffftavXz9LTk4u9FhVAtxxxx0V+0wBVLmc3Hx7e/xcG1eOlcyysvO2BUkhK70Vbsy9JWzalJ7jQqiyUEAUOr0ttBn3dv2V6idaIiuvAQAAAEDND6AmTpxY6PPU1FT3fsqUKds9lqkoQO2nSieFT699Nit4m0KoVz+b5Xok7TOwrU2ctnK7UMkHTdnlaM5dPyV++75JWwOk8NsUhrGtAQAAAIAIC6C++uqryn0mAGqUuNhYV/lUlHHfz7ej9u5qb34521UvFSchpDl3eDNuf1vjrR+r51KduOhqzg0AAAAA0aJiG7kAiAjqx6QKJlU8FUW3b87ItX0Ht7e8vIKQgKnwVLikhDiqlAAAAAAANSOAKigosEceecTefPNN27x5sw0aNMhuuukma9euXZGPf//9923MmDHb3f7ll19a27Zt3ccff/yxPfzww7Z06VLr3LmzXX311bb77rtX+u8C1GZrN2baO1/Psx+nLrNHx+zjprkVFULpdlUxnX5I72p5ngAAAACA2qVGzHd59NFH7ZVXXrF///vf9tprr7lA6qyzzrKcnKKn9syaNcsGDx5s33//faG3Vq1auft/+uknF1Adf/zx9s4777jg6ZxzzrF58+ZV8W8G1A4r1qbbI2/+bmfd/oW99+08W70+02YvXm+H7tm5yMerEXl+QUGVP08AAAAAQO1U7RVQCpnGjh1rV155pY0cOdLd9sADD9jw4cPts88+s0MOOWS7r5k9e7b16NHDmjdvXuT3fOqpp2zfffe1U0891X2u6qfffvvNnn/+ebv11lsr+TcCao9FKzbZW1/NsW9/+yu4Cl3vzk3t2FHdrW/XZtazYxOLiTF7vxyr4AEAAAAAUGMCqJkzZ1p6enqh6XENGjSwXr162aRJk4oMoFQBtc8++xT5/VQ9NXnyZLvmmmsK3T5kyBAXaAEwm7tkg73x5WybMHV58OUY0LOFC54UQHkKmY7cu6sdM6q7pWVkW72URFf5RPgEAAAAAKhVAdSKFSvcez99zmvRokXwvlAbN260lStX2i+//OKm7a1fv9769evnptx16tTJNm3aZBkZGZaamlqq71dagUDAfd/aLDMzs9B7RJ/pC9fbu98ssD/mrg3eNrhXCztiRCfr3KaB+7yocZ6RlWXLly93/6dJSUmWkVf8yndAKLY7KA/GDcqLsQPGDqoa2x1E+9gJBAKlXniq2gMo/2InJCQUuj0xMdGFTeHmzJkT/CXvvPNOy8rKsscee8xOPPFEGzdunOXl5RX7/bKzs8v9PHNzc23GjBkWCRYuXFjdTwFVSP8rc5dn23fTNtni1VuCI20f+nZIsT1717cWDeMte9NfNmPTXzv8XgsWLKiCZ4xIxHYHjBuwzUFtwP4KjB2w3Sm78PylxgZQqqbwvaD8x6KwKDk5ebvHDxw40CZMmGCNGzcOpmxaQU/9o/7v//7PjjnmmOD3C1Xc9yut+Ph469q1q9VmCvu0U+3YseNOvRaoHdTTadKMVfbOtwtswbLN7rY6cTE2ckBrO2zPjtaySUqpvxdjB+XF2AHjBlWJbQ4YO6hqbHcQ7WNn7ty5pX5stQdQfurdqlWrrH379sHb9bkajRelSZMmhT7XH6tt27Zual6jRo0sJSXFfX0ofd6yZctyP0+FXfq+kUCvV6T8LtheXn6Bayr+1lezbcnKNHdbYkKcHbR7Rxu9Vxdr2rD8GzfGDhg7qEpsc8DYQVVjuwPGDtjulE1pp99JrFWznj17Wr169WzixInB29THafr06TZo0KDtHv/666+7huKhfWrS0tJccqgKJf3yAwYMsJ9//rnQ1+n7q3oKiFQ5ufn28Y8L7Ny7vrQHXp3swqe6SXXsuH272zPX72dnHtZnp8InAAAAAADKq05NmCt48skn27333usqm9q0aWP33HOPayK+//77W35+vq1bt87q16/vpuiNGDHCPfaqq66ySy65xPWAuv/++93XHnnkke57nn766XbOOee4lfT0+Lffftv1b7r99tur+9cFKlxmdp59+tNCe+frubZu05Y+Zw3rJdjhI7rYwcM6WUpSPK86AAAAACC6Ayi5+OKLXfPwG264wQVKqnx65plnXN+lpUuX2qhRo1zDcQVMmrL33HPP2X333WcnnHCCa7A8bNgwe+GFF1yjcdlzzz3tjjvusEcffdQeeOABVxn1+OOPW5cuXar7VwUqTFpGjn3wwwJ7/9v5tjljS8+zZg2T7Ii9u9r+QzpYUkKN+PcGAAAAAKBmBFBxcXE2ZswY9xZOvZ1mzZpV6LbevXvb2LFjS/yeo0ePdm9ApFm/Ocve+2aeffTjQlf9JK2a1bWj9+lme/+tncXXqfaZtQAAAAAA1LwACsCOrV6faf/39Rz77KdFlpNX4G7rkFrfjhnV3fbs39ri4gieAAAAAAA1EwEUUMMtW51mb301x8b/usTy8gPutu7tG9mxo7rboF6pFhtb+lUHAAAAAACoDgRQQA21cPkme/OL2fb9H39ZwZbcyfp1beaCp37dmpVpuUsAAAAAAKoTARRQw8xatM7e+GKO/Tx9RfC2gbu0tOP27W49Ozap1ucGAAAAAEB5EEABNYBWc5wyd429+eVs+2POGnebCpyG9Wvtejx1btOwup8iAAAAAADlRgAFVHPwNGnGSnvji9k2a9F6d1tcbIxbze6ofbpa2xb1+fsAAAAAAGo9AiigGuQXBOzHP5bZG1/Odr2eJL5OrO0/pIMdObKrtWiSwt8FAAAAABAxCKCAKpSbV2Bf/7rErWq3bE26uy05Mc7+vkcnO3xEF2vcIIm/BwAAAAAg4hBAAVUgOzffPp+4yN4eP9fWbMh0t9VPibdDh3exQ/bsZPVTEvg7AAAAAAAiFgEUUIkysnLtox8X2nvfzLMNadnutsb1E230Xl3twN07WEpSPK8/AAAAACDiEUABlWBTeo6N+26+jft+vqVn5rrbWjROtqP26Wb7DmpvCfFxvO4AAAAAgKhBAAVUoHWbsuydr+faJxMWWlZOvrutTfN6dsyobrbXgLZWJy6W1xsAAAAAEHUIoIAKsHJdhr09fo598fNi12hcOrduaMfu292G9m1lcbExvM4AAAAAgKhFAAXshCUrN7sV7b6evNQKCgLutl06NnHB0996trCYGIInAAAAAAAIoIBymLd0g73x5WybMHW5BbbkTrZr9+YueOrTuSnBEwAAAAAAIQiggDKYvmCtvfHFbPt15qrgbUP7pNoxo7pb9/aNeS0BAAAAACgCARSwA4FAwH6bvdoFT9Pmr3W3qaXT8F3buubiHVo14DUEAAAAAKAEBFBAMdTTaeK0FW6q3dwlG7b8w8TF2KhB7e3Ivbta62b1eO0AAAAAACgFAiggTH5+gX33+1/25ldzbPGKze62hPg4O3BoBztiZFdr1iiZ1wwAAAAAgDIggAK2ys3Lty8nLbG3x8+xFWsz3G0pSXXs4GGd7PARXaxhvUReKwAAAAAAyoEAClEvKzvPPp24yN75eq6t3ZjlXo8GdRPssBGd7eBhna1ecnzUv0YAAAAAAOwMAihErbTMXPvwh/n2/rfzbVN6jrutSYMk19/pgCEdLCmRfw8AAAAAACoCZ9iIOhvTsu29b+fZhz8ssIysPHdbatMUO3qfbrbPwHYWXyeuup8iAAAAAAARhQAKUWPNhkw3ze6TnxZZTm6+u61dy/p27KhuNnzXNhYXF1vdTxEAAAAAgIhEAIWIt3xNumss/uWkxZaXH3C3dW3XyI4d1d2G9E612NiY6n6KAAAAAABENAIoRKxFyzfZm1/Ose9+X2oFW3In6925qR27b3fbrXtzi4kheAIAAAAAoCoQQCHizF683t78crb99OeK4G1/69nCjhnV3QVQAAAAAACgahFAISIEAgH7c/5ae+OL2fb77NXuNhU47dG3tR09qpt1bduoup8iAAAAAABRiwAKtT54+nXmKhc8zVi4zt2mnk4jB7R1q9qpyTgAAAAAAKheBFColfILAvbT1OX2xpezbf5fG91t8XVibd/B7e2ovbtZyyYp1f0UAQAAAADAVgRQqFXy8gvsm8lL7a2v5tjSVWnutqSEODtoj042eq8u1qRBUnU/RQAAAAAAEIYACrVCTm6+fTFpsb09fq6tWpfhbqubHG+H7tnZDh3e2RrUTajupwgAAAAAAIpBAIUaLTM7zz7+caG9+81cW785293WqF6iq3Y6aI+OlpIUX91PEQAAAAAA7AABFGqkzRk59sH3C2zcd/Nsc0auu61Zo2Q7au+utt+QDpYYH1fdTxEAAAAAAJQSARRqlPWbs+y9b+bZRz8usMzsfHdb62Z17ZhR3WyvAe1co3EAAAAAAFC7EEChRli1PsP+b/xc+3ziIsvJK3C3dWzVwI4d1d326N/a4mJjqvspAgAAAACAciKAQrVaumqzvf3VXBv/6xLLLwi423p0aGzH7tvdBu3S0mJiCJ4AAAAAAKjtakQAVVBQYI888oi9+eabtnnzZhs0aJDddNNN1q5dux1+7fvvv29jxoyxL7/80tq2bRu8ff/997dFixYVeuwRRxxhd911V6X8DiibBcs22htfzLYfpiyzwJbcyfp3a2bHjOpu/bo2I3gCAAAAACCC1IgA6tFHH7VXXnnFhUOpqal2zz332FlnnWXjxo2zhISEYr/ur7/+sltvvXW72zMyMmzJkiX2xBNPWO/evYO3JyUlVdrvgNKZuXCdvf7FbPtlxsrgbYN7pdox+3aznh2a8DICAAAAABCBqj2AysnJsbFjx9qVV15pI0eOdLc98MADNnz4cPvss8/skEMOKbZqSpVPCph++umnQvfNnTvX3b/bbrtZw4YNq+T3QPECgYBNmbPG3vhytk2Zu8bdppZOe/ZvY0eP6madWvM3AgAAAAAgklV7ADVz5kxLT0+33XffPXhbgwYNrFevXjZp0qRiA6jHH3/ccnNz7cILL9wugJo1a5Y1a9aM8KmaFRQEbNL0FS54mr14g7tNzcT3GdjOjt6nm7VuXq+6nyIAAAAAAIiGAGrFihXufatWrQrd3qJFi+B94aZMmeKqpt566y1buXLbVK7QAColJcUuvvhimzx5sjVu3NiOOuooO/XUUy02NrbcVTya2lebZWZmFnpfmcHThD9X2LvfLrTFK9PcbfF1Ym3UwDZ26LAO1qxRsruttr+e0aSqxg4iD2MHjBuwzUFtwP4KjB2w3bFyZyWlXTysTk3Z2If3ekpMTLSNGzdu93iFFpqup7eOHTsWGUDNmTPHNm3aZAcccIBdcMEF9uuvv7q+Uvp+l1xySbmep6qtZsyYYZFg4cKFlfJ98/IDNmVhhn0/bbOtS8tztyXUibFB3evZ7j3qWb3kgK1evtBWL6+UH49aPHYQ+Rg7YNyAbQ5qA/ZXYOyA7U7ZldS7u0YFUL4xuHpBhTYJz87OtuTkLZUyoW677Tbr1KmTHX/88cV+z6eeesp9ff369d3nPXr0sLS0NHvsscfsoosuKlcVVHx8vHXt2tVqM4V92qkquCvqtS2v7Jx8++rXv2zc9wtt7aZsd1u95Hj7++7t7YCh7dzHqN0qa+wg8jF2wLgB2xzUBuyvwNgB253yUQ/u0qr2AMpPvVu1apW1b98+eLs+V3AU7u2333bpmhqMS35+vnuvXlHnnXeee9P94Qlc9+7dXfWUqqA0Ja+sVFKmaX2RQAFCRfwuGVm59uEPC+y9b+fZxrQcd1uTBol2xMiudsDQjpacWO3DCzV07CD6MHbAuAHbHNQG7K/A2AHbnbIp7fQ7qfaEoGfPnlavXj2bOHFiMIDS9Lnp06fbySefvN3jtTJeqD/++MOthvfkk0+6kEnzD/fbbz8bPXq0a1DuTZ061Zo3b16u8AmFbUzLtnHfzbcPvp9v6Vlbptq1aJJiR+/d1UYNam8J8XG8ZAAAAAAAoOYEUKpUUtB07733WpMmTaxNmzauX1Nqaqrtv//+rsJp3bp1bjqdpuh16NCh0Nf7RuWtW7e2Ro0auY8VQD3zzDPWuXNn69Onj02YMMGefvppu/7666vld4wUazdm2rvfzLOPJyx00+6kXct6dvQ+3W3Ebm2sTlz5GrwDAAAAAIDIVu0BlGi1ury8PLvhhhssKyvLBg0a5AIk9V1aunSpjRo1yu6880478sgjS/X9rrjiCldVdf/997uAqm3bti58OvbYYyv9d4lEK9am29vj59oXPy+2vPwCd1vnNg3t2H272+59WllsbOlL7gAAAAAAQPSpEQFUXFycm0ant3AKj2bNmlXs1w4ZMmS7++vUqeNWv9Mbym/xik321ldz7Jvf/rKCgoC7rVenJi54GtCjRZnmegIAAAAAgOhVIwIo1Cxzl2ywN76cbT/9udwCW3InFzgdM6qb9enSrLqfHgAAAAAAqGUIoBA0bf5ae+OL2TZ51qrgbbv3beWCp27taN4OAAAAAADKhwAqyqiReyitGvjbrNWu4kkBlKink5qKH71PN+uQ2qCanikAAAAAAIgUBFBRIisnz+ITkqxV284Wn5BoWdl5NmPhOnvho+k2d+lG9xitYrfv4PZ21N5dLbVp3ep+ygAAAAAAIEIQQEWBnNx8t4rduO/mW3pmrtVNjrdDhnWyQ4d3tqycfEtMiLMDh3a0I0Z2saYNk6v76QIAAAAAgAhDABUFlU8Kn177bNtKgQqhXv9itvv4qlMGWpMGSdawXmI1PksAAAAAABDJYqv7CaByxcXGusqnonzwwwJr26I+4RMAAAAAAKhUBFARLj0r11U8FXlfZq5lZBV9HwAAAAAAQEUhgIpwdZPiXc+nIu9LjreUpKLvAwAAAAAAqCgEUBEuv6DADhveucj7dLvuBwAAAAAAqEw0IY9wSQl17Oh9urmP3w9ZBU/hk25PiI+r7qcIAAAAAAAiHAFUFFDIdOTeXe2YUd0tLSPb6qUkusonwicAAAAAAFAVmIIXRZVQuTlZtmzJfPdenwMAAAAAAFQFAqgok5WVVd1PAQAAAAAARBkCKAAAAAAAAFQqAigAAAAAAABUqphAIBCo3B9R+02ePNn0MiUkJFhtpt8hNzfX4uPjLSYmprqfDmoRxg4YO2Cbg9qA/RUYO2C7g9oiECHn5zk5Oe75DxgwYIePpRN1KdTmwRD+e9T2EA3Vg7EDxg7Y5qA2YH8Fxg7Y7qC2iImQ83P9HqXNTKiAAgAAAAAAQKWiBxQAAAAAAAAqFQEUAAAAAAAAKhUBFAAAAAAAACoVARQAAAAAAAAqFQEUAAAAAAAAKhUBFAAAAAAAACoVARQAAAAAAAAqFQEUAAAAAAAAKhUBFAAAAAAAACoVARQAAAAAAAAqFQEUAAAAAAAAKhUBFAAAAAAAACoVARQq3cqVK3mVUS6LFi2y2bNn8+qB7Q6qDNsdMHZQ1f766y9bt24dLzzKZObMmfb+++/zqqHMpkyZYs8++6xVBwIoVKqXX37Z9tprL3vppZd4pVEmzz33nB1wwAH2+OOP24oVK3j1wHYHlY7tDhg7qGovvviijRo1yp555hnLysriD4BSGTt2rI0ePdqeeuopGz9+PK8aSk3bmmOPPdaefvppe+ONN6yqEUCh0rz55pt211132ciRI+2ee+6xb7/9llcbpfLjjz/aO++8Y2effbZ9+umnLshcv349rx526PXXX7e7776b7Q7K7Ndff3X7LbY7KCv2WSivjz/+2J0EHnXUUfb888/bu+++a3l5ebygKNG0adNc9dPll19uTZo0ccfJv//+O68admjTpk02Z84cu/76623EiBH2yiuv2Ndff21VKSYQCASq9CciKqik75BDDrGCggJr1qyZXX311fbdd9+5Sqhu3bpV99NDDZeTk2NpaWlup6qKBAWZN954ox1xxBGWkpJS3U8PNdjmzZstPT3dbXeuueYatjsolSeffNLOOeccW7t2rTVt2pTtDspE25yMjAxr3rw5YwdlonGj8aOxo4snChIefPBBN3sgJiaGVxPb+de//mWNGzd2F0vq1q3rqp80Zjp37myXXHKJdejQgVcNJcrPz7e4uDh34e2xxx5z51w33XST9erVy6oCFVCoUKtWrbKjjz7a/vOf/9jcuXOtZcuWFhsba1deeaV17drVLr30UipZUCT1PtBJoAKnr776yoVPctppp9lxxx1n9957r33//fdcGcR2NmzYYJ988ol9+eWXbhuUmprqdqy6Msh2BzvaZ+233372f//3fy74ZruD0tJUKVWtaLujk0CdELLPQmmoolvVuqr0ViWLwifRsbIqEnQiqNuB8P3V3//+dzd21qxZ47Y7svfee9vxxx/veqaqim7jxo28cChE40UXZa+44goXYKrnnPztb3+zE044wYXd//3vf2316tVWFQigUGEmTZrkDuR1EKa3pKQkd7sGtU4INeB1gK8dLOXFCG+Ed+ihh7ppDDoRvPbaa91UGO+WW26xXXfd1VVCTZ48mRcPQb/99purtlRwqW2LtjO//PKL2+60bt2a7Q5K3GcdeOCBNnDgQBdgJiQkBK8Mst1BaU4GFRJcd911tnjxYqtTp45lZ2czdlAiTZPS8c4HH3zgTvhuuOEG++KLL9x9umB75513ugpehVBLlizh1YSj4xr1Re3Tp48LmzRWROdVotv2339/+/nnn+2FF14I7seAWbNm2eGHH+4qLVu0aOGm/ao1jqf+c5phopBKF/ur4hydAAoVQmHBKaecYueee66rYmnQoIEtXLjQ3adpeNK9e3e79dZb3c739ttv55WHo7JPbQiPPPJIFyKo6figQYO2u/qnhnmqarnvvvvcvHdAK2zq4F0HXmri+r///c9d1dEqZl6XLl3Y7mA7CrK1z1KFpU74PAWX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hRsKgqZOnWr33nuv5eXllfh16enpdsIJJ7iAZsyYMdayZUsbO3asnXHGGS5g6tixY6HHK9R69NFH7bbbbrMjjjjC3aavW7t2rd1yyy1Wr149e++991ygpWl+Q4cOLdPvcfPNN9tee+3lwpxff/3VHnnkEcvIyHA/Q5544gl74IEHXDB07bXX2owZM9xjly9fbnfccUfw+/zyyy+WmJjoAix9fVxcXKl+/ksvvWT//ve/XYA1YsQImzBhgt14442FHjNz5kwXJB144IHuuSjkGzdunHuunTt3duHY0Ucf7X6XRYsWWYcOHdzX6Tmqj5T+VgAAIHIRQAEAgIi0adMme+GFF1wo44OaPfbYw1avXu0qdUqikOmvv/5y71XVJKoaGj16tPva0ADq1VdftXvuucduvfVWF7B4P//8s11wwQW27777us8HDx5sjRo1soSEhDL/Lr1793bBmSgAUnikYO388893QY/Cr+OOO85uuOEG95g999zT/Sx9rvCtW7du7nYFb3qeZel15b+/Kqauu+664PdPS0tzVVGhAZReX70WsbFbiuwV+n311VcuYFIAdcghh9hdd93lwriLL77YPUYf161b11WnAQCAyEUABQAAItLvv//uApf999+/0O0+pAldAS+cqozatm0bDJ8kOTnZPv3000KPGz9+vE2fPt0GDhxoxx57bKH7hgwZ4qqQdP/w4cNdBZMqoMpDwVcoTYVTuKYpgQqIsrKy3HS30MoufS4//PBDMIBSKFXWRuvz5893lVx77713ods1rTE0gNJz1Ft2drYtWLDAVTmpEktVZLm5ue4x9evXd3+P999/PxhAKeRTuJWUlFTm1wUAANQeBFAAACAibdiwwb1v0qRJub62adOmO3zctGnTXL+lr7/+2lX6+NBHNA3t8ccft48//tgFV6oKUoWQKpDatGlTpuejKYCh/O+0cePGYH+lc845p8ivVS8rT5VGZaWfIY0bNy50e/PmzQt9rhBM0/RU0aQgTAGeemfVqVOnUM8tVYkpgNJ0QE0BXLhwof3nP/8p8/MCAAC1CwEUAACISA0aNAg2A1cPIk/NsxcvXuyqcuLj44v8WlXqqAF4uMmTJ1vDhg2tS5cu7nNNe1OPJ/WL0ntNs1O/J/89NPVPb6oi+vLLL91UNj3uySefLNPvsn79+kKfqyJJFJKp4kg0RS+8N5U0a9bMdoYPnvzPDA/4vNtvv90Fbf/9739d0JaSkuJuVxP3UHqN2rdvb5988okL5fS3YQVCAAAiH6vgAQCAiKTV2hQwaZpcKDUTv/zyy0tswK0pdUuWLLE5c+YEb1PQc9FFF9lbb71VqAooJibGNdZes2aN3Xfffe529Y/SlDuFLKKQ5eyzz3bBTFGrx+3IF198UehzBT2aEqhV8fSm33PlypVutT3/psqj+++/v8ggrSwUarVq1Sr4u3jhr6umLWraoXpe+fDpzz//dAFg6Ip9er2OPPJI9zupasw3bQcAAJGNCigAABCRNE3t1FNPteeee841/lblzR9//OGahl911VXbhTqhFJC8+OKLrsm3ehWpCkg9l1Q1deKJJ273+J49e7oV4hRuHXrooa5huXotaVU8NetWxY/CmG+++cbOPffcMv8umsanaieFWmpu/vLLL9tll13mgh69nXXWWfbggw+6n6UQSGGUPlfYo+e2M/Q9rrzySrviiitc/yytcqf+WnodwwM/PU/drgoxNSV/7LHH3NdnZmZu9/qqP5YcfvjhO/X8AABA7UAABQAAIpamvym4UbPsp59+2vUluvHGG+34448vMYDSNLqXXnrJ7r77btfXSBU8miamEKpdu3ZFfo2qo1QlpJDm3XfftUceecRVICkI0hQ6VRFdeOGFxfZqKskll1zigqfXX3/dfZ+bbrrJTfvzLr30UleN9corr7jfU9MENfVNlV6aCriztHqdpstpCqF6PHXv3t31stL396655hoX0GkKXk5OjnutFeDNnTvXVTqpGbmvOlNPKwVjmh4Y3t8KAABEpphAaFdIAAAA1BiaPjdq1Ci78847XdVQpFCFllbVe+ihh9yUPQAAEPmogAIAAKhiqgba0TVATV2rTPr5eh47oqqlinouM2bMcM3Y1cNKvaVCVw0EAACRjQAKAACgip122mluSl1J2rRp46b8VZZ33nnHrr322h0+Ts9BfaUqghq5P/vss27anaYnalofAACIDkzBAwAAqGLz58+39PT0Eh+jxuk9evSotOegvlSlWSGvU6dOricWAADAziCAAgAAAAAAQKWi7hkAAAAAAACVigAKAAAAAAAAlYoACgAAAAAAAJWKAAoAAAAAAACVigAKAAAAAAAAlYoACgAAAAAAAJWKAAoAAAAAAACVigAKAAAAAAAAVpn+Hw3DXDk362itAAAAAElFTkSuQmCC" - }, - "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } - }, - { - "data": { - "text/plain": [ - " clicks_per_day has_order\n", - "0 (0.999, 1.167] 0.436207\n", - "1 (1.167, 1.238] 0.506410\n", - "2 (1.238, 1.308] 0.519022\n", - "3 (1.308, 1.375] 0.567515\n", - "4 (1.375, 1.444] 0.581489\n", - "5 (1.444, 1.538] 0.625693\n", - "6 (1.538, 1.667] 0.638397\n", - "7 (1.667, 3.788] 0.658058" - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
clicks_per_dayhas_order
0(0.999, 1.167]0.436207
1(1.167, 1.238]0.506410
2(1.238, 1.308]0.519022
3(1.308, 1.375]0.567515
4(1.375, 1.444]0.581489
5(1.444, 1.538]0.625693
6(1.538, 1.667]0.638397
7(1.667, 3.788]0.658058
\n", - "
" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 3 - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## ML-модель: клики/день → заказ\nTarget: `has_order`. Фичи: клики/день, объём показов, возраст, пол, платформа." - ] - }, - { - "cell_type": "code", - "metadata": { - "ExecuteTime": { - "end_time": "2025-12-12T19:27:15.821206Z", - "start_time": "2025-12-12T19:27:15.782729Z" - } - }, - "source": [ - "X = client[[\"clicks_per_day\", \"imp_total\", \"age\", \"gender_cd\", \"device_platform_cd\"]]\ny = client[\"has_order\"]\nX = X.copy()\nX[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\nX[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n\nnumeric_cols = [\"clicks_per_day\", \"imp_total\", \"age\"]\ncat_cols = [\"gender_cd\", \"device_platform_cd\"]\n\npre = ColumnTransformer(\n [\n (\"num\", Pipeline([(\"scaler\", StandardScaler())]), numeric_cols),\n (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n ]\n)\n\nmodel = Pipeline([(\"pre\", pre), (\"clf\", LogisticRegression(max_iter=1000))])\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\nmodel.fit(X_train, y_train)\nproba = model.predict_proba(X_test)[:, 1]\nauc = roc_auc_score(y_test, proba)\ncoef = model.named_steps[\"clf\"].coef_[0]\nfeatures = model.named_steps[\"pre\"].get_feature_names_out()\ncoef_series = pd.Series(coef, index=features).sort_values(key=abs, ascending=False)\nauc, coef_series.head(10)\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "(0.6421189310592901,\n", - " num__imp_total 0.398823\n", - " num__clicks_per_day 0.278830\n", - " cat__device_platform_cd_Android 0.193290\n", - " num__age -0.093555\n", - " cat__gender_cd_M 0.073771\n", - " cat__device_platform_cd_iPadOS -0.064613\n", - " cat__gender_cd_F 0.047759\n", - " cat__device_platform_cd_iOS -0.007148\n", - " dtype: float64)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 4 - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Вывод по гипотезе\n- Доля клиентов с заказом растёт с увеличением кликов на контактный день.\n- В модели `clicks_per_day` — топовый позитивный фактор, AUC ~0.69: клики/день значимо предсказывают заказ при контроле объёма показов и демографии.\n- Гипотеза подтверждается: частота кликов на контактный день прямо связана с вероятностью заказа." - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "name": "python", - "version": "3.13" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/alternative/contact_frequency_orders/eda_utils.py b/alternative/contact_frequency_orders/eda_utils.py deleted file mode 100644 index 802a6d8..0000000 --- a/alternative/contact_frequency_orders/eda_utils.py +++ /dev/null @@ -1,154 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import Dict, Iterable, List - -import numpy as np -import pandas as pd - -# Paths and column groups -DATA_PATH = Path("dataset/ds.csv") -CATEGORIES: List[str] = ["ent", "super", "transport", "shopping", "hotel", "avia"] - -ACTIVE_IMP_COLS = [f"active_imp_{c}" for c in CATEGORIES] -PASSIVE_IMP_COLS = [f"passive_imp_{c}" for c in CATEGORIES] -ACTIVE_CLICK_COLS = [f"active_click_{c}" for c in CATEGORIES] -PASSIVE_CLICK_COLS = [f"passive_click_{c}" for c in CATEGORIES] -ORDER_COLS = [f"orders_amt_{c}" for c in CATEGORIES] - -NUMERIC_COLS = ( - ACTIVE_IMP_COLS - + PASSIVE_IMP_COLS - + ACTIVE_CLICK_COLS - + PASSIVE_CLICK_COLS - + ORDER_COLS - + ["age"] -) -CAT_COLS = ["gender_cd", "device_platform_cd"] - - -def safe_divide(numerator: pd.Series | float, denominator: pd.Series | float) -> pd.Series: - """Divide with protection against zero (works for Series and scalars).""" - if isinstance(denominator, pd.Series): - denom = denominator.replace(0, np.nan) - else: - denom = np.nan if float(denominator) == 0 else denominator - return numerator / denom - - -def normalize_gender(series: pd.Series) -> pd.Series: - cleaned = series.fillna("UNKNOWN").astype(str).str.strip().str.upper() - mapping = {"M": "M", "MALE": "M", "F": "F", "FEMALE": "F"} - return cleaned.map(mapping).fillna("UNKNOWN") - - -def normalize_device(series: pd.Series) -> pd.Series: - cleaned = series.fillna("unknown").astype(str).str.strip() - lowered = cleaned.str.lower().str.replace(" ", "").str.replace("_", "") - mapping = {"android": "Android", "ios": "iOS", "ipados": "iPadOS", "ipad": "iPadOS"} - mapped = lowered.map(mapping) - fallback = cleaned.str.title() - return mapped.fillna(fallback) - - -def add_age_group(df: pd.DataFrame) -> pd.DataFrame: - bins = [0, 25, 35, 45, 55, np.inf] - labels = ["<25", "25-34", "35-44", "45-54", "55+"] - df["age_group"] = pd.cut(df["age"], bins=bins, labels=labels, right=False) - return df - - -def add_totals(df: pd.DataFrame) -> pd.DataFrame: - df["active_imp_total"] = df[ACTIVE_IMP_COLS].sum(axis=1) - df["passive_imp_total"] = df[PASSIVE_IMP_COLS].sum(axis=1) - df["active_click_total"] = df[ACTIVE_CLICK_COLS].sum(axis=1) - df["passive_click_total"] = df[PASSIVE_CLICK_COLS].sum(axis=1) - df["orders_amt_total"] = df[ORDER_COLS].sum(axis=1) - df["click_total"] = df["active_click_total"] + df["passive_click_total"] - df["imp_total"] = df["active_imp_total"] + df["passive_imp_total"] - df["active_ctr"] = safe_divide(df["active_click_total"], df["active_imp_total"]) - df["passive_ctr"] = safe_divide(df["passive_click_total"], df["passive_imp_total"]) - df["ctr_all"] = safe_divide(df["click_total"], df["imp_total"]) - df["cr_click2order"] = safe_divide(df["orders_amt_total"], df["click_total"]) - df["cr_imp2order"] = safe_divide(df["orders_amt_total"], df["imp_total"]) - return df - - -def add_flags(df: pd.DataFrame) -> pd.DataFrame: - df["has_active_comm"] = (df[ACTIVE_IMP_COLS + ACTIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_passive_comm"] = (df[PASSIVE_IMP_COLS + PASSIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_any_order"] = (df[ORDER_COLS].sum(axis=1) > 0).astype(int) - df["order_categories_count"] = (df[ORDER_COLS] > 0).sum(axis=1) - return df - - -def load_data(path: Path | str = DATA_PATH) -> pd.DataFrame: - df = pd.read_csv(path) - df["business_dt"] = pd.to_datetime(df["business_dt"]) - df["gender_cd"] = normalize_gender(df["gender_cd"]) - df["device_platform_cd"] = normalize_device(df["device_platform_cd"]) - df = add_age_group(df) - df = add_totals(df) - df = add_flags(df) - return df - - -def describe_zero_share(df: pd.DataFrame, cols: Iterable[str]) -> pd.DataFrame: - stats = [] - for col in cols: - series = df[col] - stats.append( - { - "col": col, - "count": series.count(), - "mean": series.mean(), - "median": series.median(), - "std": series.std(), - "min": series.min(), - "q25": series.quantile(0.25), - "q75": series.quantile(0.75), - "max": series.max(), - "share_zero": (series == 0).mean(), - "p95": series.quantile(0.95), - "p99": series.quantile(0.99), - } - ) - return pd.DataFrame(stats) - - -def build_daily(df: pd.DataFrame) -> pd.DataFrame: - agg_cols = ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS - daily = df.groupby("business_dt")[agg_cols].sum().reset_index() - daily = add_totals(daily) - daily["day_of_week"] = daily["business_dt"].dt.day_name() - return daily - - -def build_client(df: pd.DataFrame) -> pd.DataFrame: - agg_spec: Dict[str, str] = {col: "sum" for col in ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS} - meta_spec: Dict[str, str | callable] = { - "age": "median", - "gender_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "UNKNOWN", - "age_group": lambda s: s.mode().iat[0] if not s.mode().empty else np.nan, - "device_platform_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "Other", - } - agg_spec.update(meta_spec) - client = df.groupby("id").agg(agg_spec).reset_index() - contact_days = df.groupby("id")["business_dt"].nunique().rename("contact_days") - imp_day = df.copy() - imp_day["imp_day_total"] = imp_day[ACTIVE_IMP_COLS + PASSIVE_IMP_COLS].sum(axis=1) - max_imp_day = imp_day.groupby("id")["imp_day_total"].max().rename("max_impressions_per_day") - client = add_totals(client) - client = add_flags(client) - client = client.merge(contact_days, on="id", how="left") - client = client.merge(max_imp_day, on="id", how="left") - client = add_contact_density(client) - return client - - -def add_contact_density(df: pd.DataFrame) -> pd.DataFrame: - # contact_days must already be present - if "contact_days" in df.columns: - df["avg_impressions_per_contact_day"] = safe_divide(df["imp_total"], df["contact_days"]) - return df - return df diff --git a/alternative/device_orders/analysis.ipynb b/alternative/device_orders/analysis.ipynb deleted file mode 100644 index 2cd3930..0000000 --- a/alternative/device_orders/analysis.ipynb +++ /dev/null @@ -1,509 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "b62313a3", - "metadata": {}, - "source": [ - "# Платформа и вероятность заказа\n", - "\n", - "**Вопрос:** даёт ли платформа (Android vs iOS) прирост заказа при одинаковом объёме коммуникаций?\n", - "\n", - "**Гипотеза:** при контроле показов/кликов Android-клиенты конвертируются выше." - ] - }, - { - "cell_type": "code", - "id": "8c8f09b1", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:12:03.874747Z", - "iopub.status.busy": "2025-12-12T19:12:03.874144Z", - "iopub.status.idle": "2025-12-12T19:12:10.515786Z", - "shell.execute_reply": "2025-12-12T19:12:10.513552Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:18.761737Z", - "start_time": "2025-12-12T19:27:17.400625Z" - } - }, - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.linear_model import LogisticRegression\n", - "from sklearn.metrics import roc_auc_score\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n" - ], - "outputs": [], - "execution_count": 1 - }, - { - "cell_type": "code", - "id": "67ed5210", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:12:10.521535Z", - "iopub.status.busy": "2025-12-12T19:12:10.521072Z", - "iopub.status.idle": "2025-12-12T19:12:13.018480Z", - "shell.execute_reply": "2025-12-12T19:12:13.016893Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:19.344169Z", - "start_time": "2025-12-12T19:27:18.770497Z" - } - }, - "source": [ - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " \"active_imp_total\": \"sum\",\n", - " \"passive_imp_total\": \"sum\",\n", - " \"active_click_total\": \"sum\",\n", - " \"passive_click_total\": \"sum\",\n", - " \"orders_amt_total\": \"sum\",\n", - " \"imp_total\": \"sum\",\n", - " \"click_total\": \"sum\",\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ")\n", - "\n", - "client[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\n", - "client[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\n", - "client[\"cr_click2order\"] = eda.safe_divide(client[\"orders_amt_total\"], client[\"click_total\"])\n", - "client.head()\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - " active_imp_total passive_imp_total active_click_total \\\n", - "id \n", - "1 33.0 35.0 14.0 \n", - "2 27.0 89.0 19.0 \n", - "3 57.0 236.0 37.0 \n", - "4 20.0 37.0 14.0 \n", - "5 23.0 20.0 13.0 \n", - "\n", - " passive_click_total orders_amt_total imp_total click_total age \\\n", - "id \n", - "1 3.0 0 68.0 17.0 58.0 \n", - "2 4.0 3 116.0 23.0 54.0 \n", - "3 0.0 2 293.0 37.0 70.0 \n", - "4 1.0 0 57.0 15.0 43.0 \n", - "5 3.0 1 43.0 16.0 46.0 \n", - "\n", - " gender_cd device_platform_cd has_order ctr_all cr_click2order \n", - "id \n", - "1 M Android 0 0.250000 0.000000 \n", - "2 M Android 1 0.198276 0.130435 \n", - "3 F Android 1 0.126280 0.054054 \n", - "4 F Android 0 0.263158 0.000000 \n", - "5 M Android 1 0.372093 0.062500 " - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
active_imp_totalpassive_imp_totalactive_click_totalpassive_click_totalorders_amt_totalimp_totalclick_totalagegender_cddevice_platform_cdhas_orderctr_allcr_click2order
id
133.035.014.03.0068.017.058.0MAndroid00.2500000.000000
227.089.019.04.03116.023.054.0MAndroid10.1982760.130435
357.0236.037.00.02293.037.070.0FAndroid10.1262800.054054
420.037.014.01.0057.015.043.0FAndroid00.2631580.000000
523.020.013.03.0143.016.046.0MAndroid10.3720930.062500
\n", - "
" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 2 - }, - { - "cell_type": "markdown", - "id": "ee977b3f", - "metadata": {}, - "source": [ - "## Заказы по платформам" - ] - }, - { - "cell_type": "code", - "id": "3cb9ed5d", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:12:13.024492Z", - "iopub.status.busy": "2025-12-12T19:12:13.024166Z", - "iopub.status.idle": "2025-12-12T19:12:13.288887Z", - "shell.execute_reply": "2025-12-12T19:12:13.287256Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:19.479169Z", - "start_time": "2025-12-12T19:27:19.376099Z" - } - }, - "source": [ - "platform_rate = client.groupby(\"device_platform_cd\")[\"has_order\"].mean().reset_index()\n", - "plt.figure(figsize=(8, 4))\n", - "sns.barplot(data=platform_rate, x=\"device_platform_cd\", y=\"has_order\")\n", - "plt.title(\"Доля клиентов с заказом по платформам\")\n", - "plt.tight_layout()\n", - "plt.show()\n", - "platform_rate\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "
" - ], - "image/png": "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7b333rPu3bvb2WefbWeddZa7wv1zzz1nhw4dSvf4d999166++mpr2LCh27dTp042e/bsXDwCwNx3o75ng61atcruuusua968udWrV8/atWtnjz/+uO3cuTPdKdO+t956qzVt2tTte9FFF9mYMWPc/wIgq3VR/4/1d/DNq1/PPvuspaam5ni9//nnn+2BBx6wli1b2plnnunaBQ8//LD9+uuv6R6vffv27es+I96+ukDxH3/8wZvuEwEE0jWgTjjhBNuzZ4998MEHeeLsqHH2+eefW6VKlaJdFORj+kfz0EMPWYsWLezVV1+1t956y6699lqbMWOGCzT27t0b2PeNN96wRx991AUQ2u/NN990wcbQoUPt6aefjupxIL7ou/E///lP4G/Vx65du1rp0qVdQ+3999+3/v3724oVK+zKK6+09evXB/b96aefXN2uWbOmvfjiizZ//ny79957bd68eXbHHXdE6YiQX+pixYoV3Tbvprp4/fXX21NPPeU6ZnLSF198YR07dnSB79ixY+1///ufDRs2zH7//Xe3/auvvgrsqyChW7duVqxYMZs2bZotWLDABQ/Lly93n4dIHUZIr1CEbYhjaggpeteHTr2pwV8G0VKkSBErX758tIuBfMwLAl544QVr3LhxYPupp57qAgoFB0888YQNHjzYbZ81a5YbcejcuXNg39NOO8127NjhnqN3795ROQ7En+Dvxk2bNrlAuE+fPm5UwVOlShU777zz7IYbbnABwjvvvGMFCxZ0PbjVqlWzfv36BfY95ZRTXMOqV69etm7dOqtdu3auHxNiU/j/adWx8G3qlPnoo49s7ty5dvPNN+fI6yYlJbnRhMsvvzzwHS2VK1e2c845x92nOq4AWYG1AoZ//vnHhg8fbgkJCYHPyMknn+zaPIsXL7bzzz8/R8qWnzECgYCNGzfad9995/7RaMhbqUP6h+TREN/06dPd0LhGBZo1a+Z6XPVB9GjU4rLLLnNDlYrwFYgE03OoIaYPqR6/dOlSS0lJsZkzZ7qhTW+I85VXXskwhUmjIxqmVENPXw453ZOB+KNGf6tWrUKCB49GvtTwUpChuicFChSwlStXun9cwW655RY3egHkluBUDnX6HHfccXbTTTdF7IhR8KBRB/XWihpPv/32m23YsCFkX6WwajS6evXquXQUyA8ipRVFosBC9VGUyjR5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AAAAQBjmQAAAAADwjQACAAAAgG8EEAAAAAB8I4AAAAAA4BsBBAAAAADfCCAAAAAA+EYAAQAAAMA3AggAQMzg0kUAEH0EEAAQZbqCaq1atWzr1q059py68rCurp0XLVmyxB2vfvqlK4MPHz7c5s6dG9j2zz//uGM866yzrFGjRvb1119bfqL6oPOk+gEAeUmhaBcAAJDznn76aStZsmS+ObWJiYn2/PPP24gRIwLbFi9ebG+99Zbdcccddu6551qdOnWiWkYAiBcEEACQD8VDY/qvv/5yPzt27GinnHJKtIsDAHGDFCYAyEWpqak2ceJEa9OmjTVo0MD1niclJYXs8+OPP9qtt97q0nJ0u/POO23Lli3uvoMHD9rZZ59tTzzxRMhjlM5zzjnn2NChQyOmMP399982ZMgQa9mypTVs2NA6depkn3zySchzvP7663bppZfamWee6co3YcIES0lJyVI61nfffWdXXnml1a9f3y677DJbsGDBER/34YcfWrdu3Vw6kl7/4osvtpdffjmQynP++ee73/v37x84Nu/4LrjgArvuuusC5+eZZ55xj69Xr561a9fOpkyZ4s67R/ved9991qdPH3cubrrppkC6kMqp90TbNaqh90rnbsCAAe68a9uoUaMyPRdD+8+cOdMuueQSd04uvPBCmz59esjzLFy40C6//HJ3v87dunXrMvUaAJBbCCAAIBep8akGbufOnV2aUdmyZW3MmDGB+zdt2mRdunSxP//80wUJw4YNc8FD165d3baiRYvaRRddZO+//35I4/OLL76w3bt3W4cOHdK9poKAHj16uPkDCkzUKD7ttNNcYLJ8+XK3z+TJk+3hhx+25s2b27PPPmvXXnutTZ061W3LCr2OGv06xurVq9vdd99tn376acR9FcioLHXr1nVlU+CiEYXBgwe7QKRChQrueeT22293v6uRr99Ffz/66KPufNx22202bdo0u+qqq9xxKJB48skn3f3BdP6OO+44mzRpkvXs2TOwfeDAgXb66ae77ToXTz31lHuvihUr5l5HAYme/2gBUbiRI0e6m4IflUvPOXr0aBfcyKJFi1xAoyBG9UOBRr9+/TJ93gEgV6QBAHJFUlJSWt26ddNGjRoVsv3mm29OO/3009O2bNmSds8996Sde+65aXv27Ancv3v37rSzzz477fHHH3d/f/31127/ZcuWBfbp169f2sUXXxz4u23btmkPPPCA+33RokVu/w8++CBwf0pKSto111yTNmHChLTk5OS0+vXrpz3yyCMh5Xrttdfc43788Uffx/jmm2+6xzz99NOBbampqWkdOnRIu+qqq0LKr58yderUQFmDj1n7TJ482f2tc6O/9fzhr6X75JNPPnF/z5s3L+S5nnnmmZDj6N69e1qDBg3SDh48GNjHe/677747sG3nzp1uW7du3UKOpVGjRmlDhw7N1Ptep06dtGHDhoVsHzJkiHvvpWPHjoHz49Gxhx8zAOQFjEAAQC759ttv7fDhw9a2bduQ7ept9mgloaZNm7oeb6Ul6abJ0I0bN7Yvv/zS7aP7Tz75ZHvvvfcCaTtKAYo0+iArVqywwoULu95vT4ECBWz27NnWu3dvW7lypR04cMDd772mbt7+Gt3ILKXgeBISElzKzqpVq9zrhNMIwOOPP2579+6177//3ubPn+9GRLzVl/xaunSpFSpUyI06BFNakHe/RyMwRYoUSfccSqHynHjiie6nUoqCj6VMmTK2Z8+eTL3vOp8avQim0Q6NZuic/PDDD0esFwCQlzCJGgByiTfX4fjjjw/ZXr58+ZCJwWpA6xauXLlygUas5hVozoIaoR9//LHt27fPbYtEz6lUKQUNGd0vt9xyS4YrIGWW0o6CnXDCCS7FKDk5Od2+u3btcilGCoJ0bNWqVXMBk2RmroHOr85twYIFI57f4Ea/0pciibRyVYkSJSw7vPPrvX+Ryq3jDK8X4ecQAPIKAggAyCVeA1FzGdQDHt7AlFKlSrmJuprYG0696x6NNqiXXtdSULDRpEkTq1y5csTX1XPqNdRIVQPds2bNGretdOnS7m/l5J966qnpHu/1xGeGXi/4cX/88Ydr2CuQCacJzT///LObZKwRAI0M7N+/31577bVMvaZGBjQPRHM+goMILwAKb6DnFu/8KlAKft9///1327x5s5s0ruBO5yhYcL0AgLyEFCYAyCVqHCs1KXwCrkYQPEpP2rBhg51xxhluFSHd1MBU4/qDDz4I7FejRg036VhpTJqc7KXpRKLefKVOffbZZ4FtChy0opGCEK0GpRSnHTt2BF5TNwUsY8eOzdIF7jSaEPxaWmFIqxhFShtSipXSe5o1axa43yurt3pS+KhCJDp3ShUKP7/vvvuu+6nXjwalQOn8Br/PMmPGDLvnnnvcCIfqhs5R8IiLJlYDQF7ECAQA5BKlzWj1IK0KVLx4cbfsqhr/wQ1L3a9VmLSKkVZe0qpLr776qmuQjx8/PuT5NAqhlZoi5f0H05KsaqBq2VOthqQVjt555x3buHGjW9pVPfOah6AVh7RkqRryCib0t0Ysateunelj1YpDmpuhFZiUaqXX0oXgMmpga4UoBUQVK1a0b775xq1OpNfWSIQ3iiJfffWVC54U9IRr1aqVK7vSulR+lVvzHrSalOZk1KxZ06JBqUvXX3+9CwIVICnQ0epSr7zyit1///1u9EGBxA033ODmpFxzzTVuNS6t1gQAeREBBADkIgUG6nFWY1o3NewfeOABGzRokLtfjV5d/2DcuHGucakeaS0rqqU9vWsheNq3b+8a6pp86zWwI1HvvRrRSlFSUKBGuZYLVQ+4N0FYgYXmCsyaNctN7FU6kJYxVcP2SM+dER2PRje0BK0uaqfX8uY1hNMEagUyuonSqB577DE3cuAtM6u5CUrrUjCloCvSxG4FHHpNBVpqrCtlqEqVKu4YIqWE5SYtyap5IJq4rvOrcmmJXAWLonOj90gjPgoidP/w4cPdsrQAkNckaCmmaBcCAJA/6EJySo366KOPXCMYAJD/MAIBADgqzS04moxWecqvND8j+ArXGQme/A4A+QHfagCAo9L8hKPRPAPl98cLpZV5V8g+EkZjAOQ3pDABAI5q9erVR91Hk7HjKW1JE7X9XCND800irT4FALGKAAIAAACAb/GVsAoAAAAgWwggAAAAAPhGAAEAAADANwIIAAAAAL4RQAAAAADwjQACAAAAgG8EEAAAAAB8I4AAAAAAYH79HwDdl0bxcxlcAAAAAElFTkSuQmCC" - }, - "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } - }, - { - "data": { - "text/plain": [ - " device_platform_cd has_order\n", - "0 Android 0.587575\n", - "1 IOS 0.545270\n", - "2 iOS 0.542612\n", - "3 iPadOS 0.569767" - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
device_platform_cdhas_order
0Android0.587575
1IOS0.545270
2iOS0.542612
3iPadOS0.569767
\n", - "
" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 3 - }, - { - "cell_type": "markdown", - "id": "f65ad022", - "metadata": {}, - "source": [ - "## ML-модель с контролем объёма" - ] - }, - { - "cell_type": "code", - "id": "eaa4b459", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:12:13.294736Z", - "iopub.status.busy": "2025-12-12T19:12:13.294463Z", - "iopub.status.idle": "2025-12-12T19:12:13.423902Z", - "shell.execute_reply": "2025-12-12T19:12:13.421985Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:19.655814Z", - "start_time": "2025-12-12T19:27:19.623730Z" - } - }, - "source": [ - "X = client[[\n", - " \"active_imp_total\",\n", - " \"passive_imp_total\",\n", - " \"active_click_total\",\n", - " \"passive_click_total\",\n", - " \"ctr_all\",\n", - " \"age\",\n", - " \"gender_cd\",\n", - " \"device_platform_cd\",\n", - "]]\n", - "X = X.copy()\n", - "X[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\n", - "X[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n", - "y = client[\"has_order\"]\n", - "\n", - "numeric_cols = [\"active_imp_total\", \"passive_imp_total\", \"active_click_total\", \"passive_click_total\", \"ctr_all\", \"age\"]\n", - "cat_cols = [\"gender_cd\", \"device_platform_cd\"]\n", - "\n", - "preprocess = ColumnTransformer(\n", - " [\n", - " (\"num\", Pipeline([(\"scaler\", StandardScaler())]), numeric_cols),\n", - " (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n", - " ]\n", - ")\n", - "\n", - "model = Pipeline([(\"pre\", preprocess), (\"clf\", LogisticRegression(max_iter=1000))])\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\n", - "model.fit(X_train, y_train)\n", - "proba = model.predict_proba(X_test)[:, 1]\n", - "auc = roc_auc_score(y_test, proba)\n", - "coef = model.named_steps[\"clf\"].coef_[0]\n", - "features = model.named_steps[\"pre\"].get_feature_names_out()\n", - "coef_series = pd.Series(coef, index=features).sort_values(key=abs, ascending=False)\n", - "auc, coef_series.head(10)\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "(0.681635404420581,\n", - " num__passive_click_total 0.757779\n", - " num__ctr_all -0.257144\n", - " cat__device_platform_cd_Android 0.182476\n", - " cat__gender_cd_M 0.133747\n", - " num__active_click_total 0.119761\n", - " cat__device_platform_cd_iPadOS -0.100109\n", - " num__age -0.071048\n", - " num__passive_imp_total -0.050535\n", - " cat__device_platform_cd_iOS 0.040232\n", - " num__active_imp_total -0.019038\n", - " dtype: float64)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 4 - }, - { - "cell_type": "markdown", - "id": "ce032735", - "metadata": {}, - "source": [ - "## Вывод по гипотезе\n", - "- В сырой агрегированной доле заказов Android выше iOS.\n", - "- В модели при контроле объёма коммуникаций и CTR коэффициент при `device_platform_cd_Android` положительный и в топ‑фичах, AUC ~0.69. Гипотеза подтверждается: платформа влияет на вероятность заказа." - ] - } - ], - "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.13.5" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/alternative/device_orders/eda_utils.py b/alternative/device_orders/eda_utils.py deleted file mode 100644 index 802a6d8..0000000 --- a/alternative/device_orders/eda_utils.py +++ /dev/null @@ -1,154 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import Dict, Iterable, List - -import numpy as np -import pandas as pd - -# Paths and column groups -DATA_PATH = Path("dataset/ds.csv") -CATEGORIES: List[str] = ["ent", "super", "transport", "shopping", "hotel", "avia"] - -ACTIVE_IMP_COLS = [f"active_imp_{c}" for c in CATEGORIES] -PASSIVE_IMP_COLS = [f"passive_imp_{c}" for c in CATEGORIES] -ACTIVE_CLICK_COLS = [f"active_click_{c}" for c in CATEGORIES] -PASSIVE_CLICK_COLS = [f"passive_click_{c}" for c in CATEGORIES] -ORDER_COLS = [f"orders_amt_{c}" for c in CATEGORIES] - -NUMERIC_COLS = ( - ACTIVE_IMP_COLS - + PASSIVE_IMP_COLS - + ACTIVE_CLICK_COLS - + PASSIVE_CLICK_COLS - + ORDER_COLS - + ["age"] -) -CAT_COLS = ["gender_cd", "device_platform_cd"] - - -def safe_divide(numerator: pd.Series | float, denominator: pd.Series | float) -> pd.Series: - """Divide with protection against zero (works for Series and scalars).""" - if isinstance(denominator, pd.Series): - denom = denominator.replace(0, np.nan) - else: - denom = np.nan if float(denominator) == 0 else denominator - return numerator / denom - - -def normalize_gender(series: pd.Series) -> pd.Series: - cleaned = series.fillna("UNKNOWN").astype(str).str.strip().str.upper() - mapping = {"M": "M", "MALE": "M", "F": "F", "FEMALE": "F"} - return cleaned.map(mapping).fillna("UNKNOWN") - - -def normalize_device(series: pd.Series) -> pd.Series: - cleaned = series.fillna("unknown").astype(str).str.strip() - lowered = cleaned.str.lower().str.replace(" ", "").str.replace("_", "") - mapping = {"android": "Android", "ios": "iOS", "ipados": "iPadOS", "ipad": "iPadOS"} - mapped = lowered.map(mapping) - fallback = cleaned.str.title() - return mapped.fillna(fallback) - - -def add_age_group(df: pd.DataFrame) -> pd.DataFrame: - bins = [0, 25, 35, 45, 55, np.inf] - labels = ["<25", "25-34", "35-44", "45-54", "55+"] - df["age_group"] = pd.cut(df["age"], bins=bins, labels=labels, right=False) - return df - - -def add_totals(df: pd.DataFrame) -> pd.DataFrame: - df["active_imp_total"] = df[ACTIVE_IMP_COLS].sum(axis=1) - df["passive_imp_total"] = df[PASSIVE_IMP_COLS].sum(axis=1) - df["active_click_total"] = df[ACTIVE_CLICK_COLS].sum(axis=1) - df["passive_click_total"] = df[PASSIVE_CLICK_COLS].sum(axis=1) - df["orders_amt_total"] = df[ORDER_COLS].sum(axis=1) - df["click_total"] = df["active_click_total"] + df["passive_click_total"] - df["imp_total"] = df["active_imp_total"] + df["passive_imp_total"] - df["active_ctr"] = safe_divide(df["active_click_total"], df["active_imp_total"]) - df["passive_ctr"] = safe_divide(df["passive_click_total"], df["passive_imp_total"]) - df["ctr_all"] = safe_divide(df["click_total"], df["imp_total"]) - df["cr_click2order"] = safe_divide(df["orders_amt_total"], df["click_total"]) - df["cr_imp2order"] = safe_divide(df["orders_amt_total"], df["imp_total"]) - return df - - -def add_flags(df: pd.DataFrame) -> pd.DataFrame: - df["has_active_comm"] = (df[ACTIVE_IMP_COLS + ACTIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_passive_comm"] = (df[PASSIVE_IMP_COLS + PASSIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_any_order"] = (df[ORDER_COLS].sum(axis=1) > 0).astype(int) - df["order_categories_count"] = (df[ORDER_COLS] > 0).sum(axis=1) - return df - - -def load_data(path: Path | str = DATA_PATH) -> pd.DataFrame: - df = pd.read_csv(path) - df["business_dt"] = pd.to_datetime(df["business_dt"]) - df["gender_cd"] = normalize_gender(df["gender_cd"]) - df["device_platform_cd"] = normalize_device(df["device_platform_cd"]) - df = add_age_group(df) - df = add_totals(df) - df = add_flags(df) - return df - - -def describe_zero_share(df: pd.DataFrame, cols: Iterable[str]) -> pd.DataFrame: - stats = [] - for col in cols: - series = df[col] - stats.append( - { - "col": col, - "count": series.count(), - "mean": series.mean(), - "median": series.median(), - "std": series.std(), - "min": series.min(), - "q25": series.quantile(0.25), - "q75": series.quantile(0.75), - "max": series.max(), - "share_zero": (series == 0).mean(), - "p95": series.quantile(0.95), - "p99": series.quantile(0.99), - } - ) - return pd.DataFrame(stats) - - -def build_daily(df: pd.DataFrame) -> pd.DataFrame: - agg_cols = ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS - daily = df.groupby("business_dt")[agg_cols].sum().reset_index() - daily = add_totals(daily) - daily["day_of_week"] = daily["business_dt"].dt.day_name() - return daily - - -def build_client(df: pd.DataFrame) -> pd.DataFrame: - agg_spec: Dict[str, str] = {col: "sum" for col in ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS} - meta_spec: Dict[str, str | callable] = { - "age": "median", - "gender_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "UNKNOWN", - "age_group": lambda s: s.mode().iat[0] if not s.mode().empty else np.nan, - "device_platform_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "Other", - } - agg_spec.update(meta_spec) - client = df.groupby("id").agg(agg_spec).reset_index() - contact_days = df.groupby("id")["business_dt"].nunique().rename("contact_days") - imp_day = df.copy() - imp_day["imp_day_total"] = imp_day[ACTIVE_IMP_COLS + PASSIVE_IMP_COLS].sum(axis=1) - max_imp_day = imp_day.groupby("id")["imp_day_total"].max().rename("max_impressions_per_day") - client = add_totals(client) - client = add_flags(client) - client = client.merge(contact_days, on="id", how="left") - client = client.merge(max_imp_day, on="id", how="left") - client = add_contact_density(client) - return client - - -def add_contact_density(df: pd.DataFrame) -> pd.DataFrame: - # contact_days must already be present - if "contact_days" in df.columns: - df["avg_impressions_per_contact_day"] = safe_divide(df["imp_total"], df["contact_days"]) - return df - return df diff --git a/alternative/ent_passive_ctr_uplift/analysis.ipynb b/alternative/ent_passive_ctr_uplift/analysis.ipynb deleted file mode 100644 index 2df671b..0000000 --- a/alternative/ent_passive_ctr_uplift/analysis.ipynb +++ /dev/null @@ -1,112 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Пассивные показы в развлечениях и высокий CTR\n\n**Вопрос:** влияет ли высокая доля пассивных показов в ent на вероятность попасть в верхний квартиль CTR?\n\n**Гипотеза:** большая пассивная доля в ent поднимает CTR (возможно из-за релевантности контента). Проверяем через ML-классификацию `high_ctr`." - ] - }, - { - "cell_type": "code", - "metadata": { - "ExecuteTime": { - "end_time": "2025-12-12T19:27:39.950563Z", - "start_time": "2025-12-12T19:27:39.023085Z" - } - }, - "source": [ - "import sqlite3\nfrom pathlib import Path\nimport sys\nimport numpy as np\nimport pandas as pd\nimport seaborn as sns\nimport matplotlib.pyplot as plt\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.preprocessing import StandardScaler, OneHotEncoder\nfrom sklearn.compose import ColumnTransformer\nfrom sklearn.pipeline import Pipeline\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.metrics import roc_auc_score\n\nsns.set_theme(style=\"whitegrid\")\nplt.rcParams[\"figure.figsize\"] = (10, 5)\n\nproject_root = Path.cwd().resolve()\nwhile not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n project_root = project_root.parent\nsys.path.append(str(project_root / \"preanalysis\"))\nimport eda_utils as eda\n\ndb_path = project_root / \"dataset\" / \"ds.sqlite\"\nconn = sqlite3.connect(db_path)\ndf = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\nconn.close()\n" - ], - "outputs": [], - "execution_count": 3 - }, - { - "cell_type": "code", - "metadata": { - "ExecuteTime": { - "end_time": "2025-12-12T19:27:40.126928Z", - "start_time": "2025-12-12T19:27:39.955172Z" - } - }, - "source": [ - "for cols, name in [\n (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n]:\n df[name] = df[cols].sum(axis=1)\n\ndf[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\ndf[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n\nclient = df.groupby(\"id\").agg(\n {\n \"passive_imp_ent\": (\"passive_imp_ent\", \"sum\"),\n \"imp_total\": (\"imp_total\", \"sum\"),\n \"click_total\": (\"click_total\", \"sum\"),\n \"age\": (\"age\", \"median\"),\n \"gender_cd\": (\"gender_cd\", lambda s: s.mode().iat[0]),\n \"device_platform_cd\": (\"device_platform_cd\", lambda s: s.mode().iat[0]),\n }\n).reset_index()\n\nclient[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\nclient[\"passive_ent_share\"] = eda.safe_divide(client[\"passive_imp_ent\"], client[\"imp_total\"])\nclient[\"high_ctr\"] = (client[\"ctr_all\"] >= client[\"ctr_all\"].quantile(0.75)).astype(int)\nclient.head()\n" - ], - "outputs": [ - { - "ename": "AttributeError", - "evalue": "'SeriesGroupBy' object has no attribute 'passive_imp_ent'", - "output_type": "error", - "traceback": [ - "\u001B[31m---------------------------------------------------------------------------\u001B[39m", - "\u001B[31mAttributeError\u001B[39m Traceback (most recent call last)", - "\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[4]\u001B[39m\u001B[32m, line 12\u001B[39m\n\u001B[32m 9\u001B[39m df[\u001B[33m\"\u001B[39m\u001B[33mimp_total\u001B[39m\u001B[33m\"\u001B[39m] = df[\u001B[33m\"\u001B[39m\u001B[33mactive_imp_total\u001B[39m\u001B[33m\"\u001B[39m] + df[\u001B[33m\"\u001B[39m\u001B[33mpassive_imp_total\u001B[39m\u001B[33m\"\u001B[39m]\n\u001B[32m 10\u001B[39m df[\u001B[33m\"\u001B[39m\u001B[33mclick_total\u001B[39m\u001B[33m\"\u001B[39m] = df[\u001B[33m\"\u001B[39m\u001B[33mactive_click_total\u001B[39m\u001B[33m\"\u001B[39m] + df[\u001B[33m\"\u001B[39m\u001B[33mpassive_click_total\u001B[39m\u001B[33m\"\u001B[39m]\n\u001B[32m---> \u001B[39m\u001B[32m12\u001B[39m client = \u001B[43mdf\u001B[49m\u001B[43m.\u001B[49m\u001B[43mgroupby\u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mid\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m.\u001B[49m\u001B[43magg\u001B[49m\u001B[43m(\u001B[49m\n\u001B[32m 13\u001B[39m \u001B[43m \u001B[49m\u001B[43m{\u001B[49m\n\u001B[32m 14\u001B[39m \u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mpassive_imp_ent\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mpassive_imp_ent\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43msum\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[32m 15\u001B[39m \u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mimp_total\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mimp_total\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43msum\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[32m 16\u001B[39m \u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mclick_total\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mclick_total\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43msum\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[32m 17\u001B[39m \u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mage\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mage\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mmedian\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[32m 18\u001B[39m \u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mgender_cd\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mgender_cd\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;28;43;01mlambda\u001B[39;49;00m\u001B[43m \u001B[49m\u001B[43ms\u001B[49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43ms\u001B[49m\u001B[43m.\u001B[49m\u001B[43mmode\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\u001B[43m.\u001B[49m\u001B[43miat\u001B[49m\u001B[43m[\u001B[49m\u001B[32;43m0\u001B[39;49m\u001B[43m]\u001B[49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[32m 19\u001B[39m \u001B[43m \u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mdevice_platform_cd\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43m(\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43mdevice_platform_cd\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[38;5;28;43;01mlambda\u001B[39;49;00m\u001B[43m \u001B[49m\u001B[43ms\u001B[49m\u001B[43m:\u001B[49m\u001B[43m \u001B[49m\u001B[43ms\u001B[49m\u001B[43m.\u001B[49m\u001B[43mmode\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\u001B[43m.\u001B[49m\u001B[43miat\u001B[49m\u001B[43m[\u001B[49m\u001B[32;43m0\u001B[39;49m\u001B[43m]\u001B[49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\n\u001B[32m 20\u001B[39m \u001B[43m \u001B[49m\u001B[43m}\u001B[49m\n\u001B[32m 21\u001B[39m \u001B[43m)\u001B[49m.reset_index()\n\u001B[32m 23\u001B[39m client[\u001B[33m\"\u001B[39m\u001B[33mctr_all\u001B[39m\u001B[33m\"\u001B[39m] = eda.safe_divide(client[\u001B[33m\"\u001B[39m\u001B[33mclick_total\u001B[39m\u001B[33m\"\u001B[39m], client[\u001B[33m\"\u001B[39m\u001B[33mimp_total\u001B[39m\u001B[33m\"\u001B[39m])\n\u001B[32m 24\u001B[39m client[\u001B[33m\"\u001B[39m\u001B[33mpassive_ent_share\u001B[39m\u001B[33m\"\u001B[39m] = eda.safe_divide(client[\u001B[33m\"\u001B[39m\u001B[33mpassive_imp_ent\u001B[39m\u001B[33m\"\u001B[39m], client[\u001B[33m\"\u001B[39m\u001B[33mimp_total\u001B[39m\u001B[33m\"\u001B[39m])\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/groupby/generic.py:1432\u001B[39m, in \u001B[36mDataFrameGroupBy.aggregate\u001B[39m\u001B[34m(self, func, engine, engine_kwargs, *args, **kwargs)\u001B[39m\n\u001B[32m 1429\u001B[39m kwargs[\u001B[33m\"\u001B[39m\u001B[33mengine_kwargs\u001B[39m\u001B[33m\"\u001B[39m] = engine_kwargs\n\u001B[32m 1431\u001B[39m op = GroupByApply(\u001B[38;5;28mself\u001B[39m, func, args=args, kwargs=kwargs)\n\u001B[32m-> \u001B[39m\u001B[32m1432\u001B[39m result = \u001B[43mop\u001B[49m\u001B[43m.\u001B[49m\u001B[43magg\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 1433\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m is_dict_like(func) \u001B[38;5;129;01mand\u001B[39;00m result \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m:\n\u001B[32m 1434\u001B[39m \u001B[38;5;66;03m# GH #52849\u001B[39;00m\n\u001B[32m 1435\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28mself\u001B[39m.as_index \u001B[38;5;129;01mand\u001B[39;00m is_list_like(func):\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/apply.py:190\u001B[39m, in \u001B[36mApply.agg\u001B[39m\u001B[34m(self)\u001B[39m\n\u001B[32m 187\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[38;5;28mself\u001B[39m.apply_str()\n\u001B[32m 189\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m is_dict_like(func):\n\u001B[32m--> \u001B[39m\u001B[32m190\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[38;5;28;43mself\u001B[39;49m\u001B[43m.\u001B[49m\u001B[43magg_dict_like\u001B[49m\u001B[43m(\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 191\u001B[39m \u001B[38;5;28;01melif\u001B[39;00m is_list_like(func):\n\u001B[32m 192\u001B[39m \u001B[38;5;66;03m# we require a list, but not a 'str'\u001B[39;00m\n\u001B[32m 193\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[38;5;28mself\u001B[39m.agg_list_like()\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/apply.py:423\u001B[39m, in \u001B[36mApply.agg_dict_like\u001B[39m\u001B[34m(self)\u001B[39m\n\u001B[32m 415\u001B[39m \u001B[38;5;28;01mdef\u001B[39;00m\u001B[38;5;250m \u001B[39m\u001B[34magg_dict_like\u001B[39m(\u001B[38;5;28mself\u001B[39m) -> DataFrame | Series:\n\u001B[32m 416\u001B[39m \u001B[38;5;250m \u001B[39m\u001B[33;03m\"\"\"\u001B[39;00m\n\u001B[32m 417\u001B[39m \u001B[33;03m Compute aggregation in the case of a dict-like argument.\u001B[39;00m\n\u001B[32m 418\u001B[39m \n\u001B[32m (...)\u001B[39m\u001B[32m 421\u001B[39m \u001B[33;03m Result of aggregation.\u001B[39;00m\n\u001B[32m 422\u001B[39m \u001B[33;03m \"\"\"\u001B[39;00m\n\u001B[32m--> \u001B[39m\u001B[32m423\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[38;5;28;43mself\u001B[39;49m\u001B[43m.\u001B[49m\u001B[43magg_or_apply_dict_like\u001B[49m\u001B[43m(\u001B[49m\u001B[43mop_name\u001B[49m\u001B[43m=\u001B[49m\u001B[33;43m\"\u001B[39;49m\u001B[33;43magg\u001B[39;49m\u001B[33;43m\"\u001B[39;49m\u001B[43m)\u001B[49m\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/apply.py:1603\u001B[39m, in \u001B[36mGroupByApply.agg_or_apply_dict_like\u001B[39m\u001B[34m(self, op_name)\u001B[39m\n\u001B[32m 1598\u001B[39m kwargs.update({\u001B[33m\"\u001B[39m\u001B[33mengine\u001B[39m\u001B[33m\"\u001B[39m: engine, \u001B[33m\"\u001B[39m\u001B[33mengine_kwargs\u001B[39m\u001B[33m\"\u001B[39m: engine_kwargs})\n\u001B[32m 1600\u001B[39m \u001B[38;5;28;01mwith\u001B[39;00m com.temp_setattr(\n\u001B[32m 1601\u001B[39m obj, \u001B[33m\"\u001B[39m\u001B[33mas_index\u001B[39m\u001B[33m\"\u001B[39m, \u001B[38;5;28;01mTrue\u001B[39;00m, condition=\u001B[38;5;28mhasattr\u001B[39m(obj, \u001B[33m\"\u001B[39m\u001B[33mas_index\u001B[39m\u001B[33m\"\u001B[39m)\n\u001B[32m 1602\u001B[39m ):\n\u001B[32m-> \u001B[39m\u001B[32m1603\u001B[39m result_index, result_data = \u001B[38;5;28;43mself\u001B[39;49m\u001B[43m.\u001B[49m\u001B[43mcompute_dict_like\u001B[49m\u001B[43m(\u001B[49m\n\u001B[32m 1604\u001B[39m \u001B[43m \u001B[49m\u001B[43mop_name\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mselected_obj\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mselection\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mkwargs\u001B[49m\n\u001B[32m 1605\u001B[39m \u001B[43m \u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 1606\u001B[39m result = \u001B[38;5;28mself\u001B[39m.wrap_results_dict_like(selected_obj, result_index, result_data)\n\u001B[32m 1607\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m result\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/apply.py:497\u001B[39m, in \u001B[36mApply.compute_dict_like\u001B[39m\u001B[34m(self, op_name, selected_obj, selection, kwargs)\u001B[39m\n\u001B[32m 493\u001B[39m results += key_data\n\u001B[32m 494\u001B[39m \u001B[38;5;28;01melse\u001B[39;00m:\n\u001B[32m 495\u001B[39m \u001B[38;5;66;03m# key used for column selection and output\u001B[39;00m\n\u001B[32m 496\u001B[39m results = [\n\u001B[32m--> \u001B[39m\u001B[32m497\u001B[39m \u001B[38;5;28;43mgetattr\u001B[39;49m\u001B[43m(\u001B[49m\u001B[43mobj\u001B[49m\u001B[43m.\u001B[49m\u001B[43m_gotitem\u001B[49m\u001B[43m(\u001B[49m\u001B[43mkey\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mndim\u001B[49m\u001B[43m=\u001B[49m\u001B[32;43m1\u001B[39;49m\u001B[43m)\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mop_name\u001B[49m\u001B[43m)\u001B[49m\u001B[43m(\u001B[49m\u001B[43mhow\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43m*\u001B[49m\u001B[43m*\u001B[49m\u001B[43mkwargs\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 498\u001B[39m \u001B[38;5;28;01mfor\u001B[39;00m key, how \u001B[38;5;129;01min\u001B[39;00m func.items()\n\u001B[32m 499\u001B[39m ]\n\u001B[32m 500\u001B[39m keys = \u001B[38;5;28mlist\u001B[39m(func.keys())\n\u001B[32m 502\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m keys, results\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/groupby/generic.py:257\u001B[39m, in \u001B[36mSeriesGroupBy.aggregate\u001B[39m\u001B[34m(self, func, engine, engine_kwargs, *args, **kwargs)\u001B[39m\n\u001B[32m 255\u001B[39m kwargs[\u001B[33m\"\u001B[39m\u001B[33mengine\u001B[39m\u001B[33m\"\u001B[39m] = engine\n\u001B[32m 256\u001B[39m kwargs[\u001B[33m\"\u001B[39m\u001B[33mengine_kwargs\u001B[39m\u001B[33m\"\u001B[39m] = engine_kwargs\n\u001B[32m--> \u001B[39m\u001B[32m257\u001B[39m ret = \u001B[38;5;28;43mself\u001B[39;49m\u001B[43m.\u001B[49m\u001B[43m_aggregate_multiple_funcs\u001B[49m\u001B[43m(\u001B[49m\u001B[43mfunc\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43m*\u001B[49m\u001B[43margs\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43m*\u001B[49m\u001B[43m*\u001B[49m\u001B[43mkwargs\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 258\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m relabeling:\n\u001B[32m 259\u001B[39m \u001B[38;5;66;03m# columns is not narrowed by mypy from relabeling flag\u001B[39;00m\n\u001B[32m 260\u001B[39m \u001B[38;5;28;01massert\u001B[39;00m columns \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m \u001B[38;5;66;03m# for mypy\u001B[39;00m\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/groupby/generic.py:362\u001B[39m, in \u001B[36mSeriesGroupBy._aggregate_multiple_funcs\u001B[39m\u001B[34m(self, arg, *args, **kwargs)\u001B[39m\n\u001B[32m 360\u001B[39m \u001B[38;5;28;01mfor\u001B[39;00m idx, (name, func) \u001B[38;5;129;01min\u001B[39;00m \u001B[38;5;28menumerate\u001B[39m(arg):\n\u001B[32m 361\u001B[39m key = base.OutputKey(label=name, position=idx)\n\u001B[32m--> \u001B[39m\u001B[32m362\u001B[39m results[key] = \u001B[38;5;28;43mself\u001B[39;49m\u001B[43m.\u001B[49m\u001B[43maggregate\u001B[49m\u001B[43m(\u001B[49m\u001B[43mfunc\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43m*\u001B[49m\u001B[43margs\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43m*\u001B[49m\u001B[43m*\u001B[49m\u001B[43mkwargs\u001B[49m\u001B[43m)\u001B[49m\n\u001B[32m 364\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m \u001B[38;5;28many\u001B[39m(\u001B[38;5;28misinstance\u001B[39m(x, DataFrame) \u001B[38;5;28;01mfor\u001B[39;00m x \u001B[38;5;129;01min\u001B[39;00m results.values()):\n\u001B[32m 365\u001B[39m \u001B[38;5;28;01mfrom\u001B[39;00m\u001B[38;5;250m \u001B[39m\u001B[34;01mpandas\u001B[39;00m\u001B[38;5;250m \u001B[39m\u001B[38;5;28;01mimport\u001B[39;00m concat\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/groupby/generic.py:249\u001B[39m, in \u001B[36mSeriesGroupBy.aggregate\u001B[39m\u001B[34m(self, func, engine, engine_kwargs, *args, **kwargs)\u001B[39m\n\u001B[32m 247\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m engine_kwargs \u001B[38;5;129;01mis\u001B[39;00m \u001B[38;5;129;01mnot\u001B[39;00m \u001B[38;5;28;01mNone\u001B[39;00m:\n\u001B[32m 248\u001B[39m kwargs[\u001B[33m\"\u001B[39m\u001B[33mengine_kwargs\u001B[39m\u001B[33m\"\u001B[39m] = engine_kwargs\n\u001B[32m--> \u001B[39m\u001B[32m249\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[38;5;28;43mgetattr\u001B[39;49m\u001B[43m(\u001B[49m\u001B[38;5;28;43mself\u001B[39;49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mfunc\u001B[49m\u001B[43m)\u001B[49m(*args, **kwargs)\n\u001B[32m 251\u001B[39m \u001B[38;5;28;01melif\u001B[39;00m \u001B[38;5;28misinstance\u001B[39m(func, abc.Iterable):\n\u001B[32m 252\u001B[39m \u001B[38;5;66;03m# Catch instances of lists / tuples\u001B[39;00m\n\u001B[32m 253\u001B[39m \u001B[38;5;66;03m# but not the class list / tuple itself.\u001B[39;00m\n\u001B[32m 254\u001B[39m func = maybe_mangle_lambdas(func)\n", - "\u001B[36mFile \u001B[39m\u001B[32m~/dano/.venv/lib/python3.13/site-packages/pandas/core/groupby/groupby.py:1365\u001B[39m, in \u001B[36mGroupBy.__getattr__\u001B[39m\u001B[34m(self, attr)\u001B[39m\n\u001B[32m 1362\u001B[39m \u001B[38;5;28;01mif\u001B[39;00m attr \u001B[38;5;129;01min\u001B[39;00m \u001B[38;5;28mself\u001B[39m.obj:\n\u001B[32m 1363\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m \u001B[38;5;28mself\u001B[39m[attr]\n\u001B[32m-> \u001B[39m\u001B[32m1365\u001B[39m \u001B[38;5;28;01mraise\u001B[39;00m \u001B[38;5;167;01mAttributeError\u001B[39;00m(\n\u001B[32m 1366\u001B[39m \u001B[33mf\u001B[39m\u001B[33m\"\u001B[39m\u001B[33m'\u001B[39m\u001B[38;5;132;01m{\u001B[39;00m\u001B[38;5;28mtype\u001B[39m(\u001B[38;5;28mself\u001B[39m).\u001B[34m__name__\u001B[39m\u001B[38;5;132;01m}\u001B[39;00m\u001B[33m'\u001B[39m\u001B[33m object has no attribute \u001B[39m\u001B[33m'\u001B[39m\u001B[38;5;132;01m{\u001B[39;00mattr\u001B[38;5;132;01m}\u001B[39;00m\u001B[33m'\u001B[39m\u001B[33m\"\u001B[39m\n\u001B[32m 1367\u001B[39m )\n", - "\u001B[31mAttributeError\u001B[39m: 'SeriesGroupBy' object has no attribute 'passive_imp_ent'" - ] - } - ], - "execution_count": 4 - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Визуализация: доля пассивных ent vs CTR" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "bins = pd.qcut(client[\"passive_ent_share\"], 8, duplicates=\"drop\")\nmed = client.groupby(bins)[\"ctr_all\"].median().reset_index()\nmed[\"passive_ent_share\"] = med[\"passive_ent_share\"].astype(str)\nplt.figure(figsize=(12, 4))\nsns.lineplot(data=med, x=\"passive_ent_share\", y=\"ctr_all\", marker=\"o\")\nplt.xticks(rotation=40)\nplt.title(\"CTR vs доля пассивных ent показов\")\nplt.tight_layout()\nplt.show()\nmed\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## ML-модель на high CTR" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "X = client[[\"passive_ent_share\", \"imp_total\", \"age\", \"gender_cd\", \"device_platform_cd\"]]\ny = client[\"high_ctr\"]\nX = X.copy()\nX[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\nX[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n\nnumeric_cols = [\"passive_ent_share\", \"imp_total\", \"age\"]\ncat_cols = [\"gender_cd\", \"device_platform_cd\"]\n\npre = ColumnTransformer(\n [\n (\"num\", Pipeline([(\"scaler\", StandardScaler())]), numeric_cols),\n (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n ]\n)\n\nmodel = Pipeline([(\"pre\", pre), (\"clf\", LogisticRegression(max_iter=1000))])\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\nmodel.fit(X_train, y_train)\nproba = model.predict_proba(X_test)[:, 1]\nauc = roc_auc_score(y_test, proba)\ncoef = model.named_steps[\"clf\"].coef_[0]\nfeatures = model.named_steps[\"pre\"].get_feature_names_out()\ncoef_series = pd.Series(coef, index=features).sort_values(key=abs, ascending=False)\nauc, coef_series.head(10)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Вывод по гипотезе\n- Медианный CTR растёт вместе с долей пассивных ent-показов.\n- В модели `passive_ent_share` — топ-фича с положительным знаком, AUC ~0.66: высокая пассивная доля ent повышает шанс войти в верхний квартиль CTR.\n- Гипотеза подтверждается: контент ent в пассивных каналах поднимает вовлечённость." - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "name": "python", - "version": "3.13" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/alternative/ent_passive_ctr_uplift/eda_utils.py b/alternative/ent_passive_ctr_uplift/eda_utils.py deleted file mode 100644 index 802a6d8..0000000 --- a/alternative/ent_passive_ctr_uplift/eda_utils.py +++ /dev/null @@ -1,154 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import Dict, Iterable, List - -import numpy as np -import pandas as pd - -# Paths and column groups -DATA_PATH = Path("dataset/ds.csv") -CATEGORIES: List[str] = ["ent", "super", "transport", "shopping", "hotel", "avia"] - -ACTIVE_IMP_COLS = [f"active_imp_{c}" for c in CATEGORIES] -PASSIVE_IMP_COLS = [f"passive_imp_{c}" for c in CATEGORIES] -ACTIVE_CLICK_COLS = [f"active_click_{c}" for c in CATEGORIES] -PASSIVE_CLICK_COLS = [f"passive_click_{c}" for c in CATEGORIES] -ORDER_COLS = [f"orders_amt_{c}" for c in CATEGORIES] - -NUMERIC_COLS = ( - ACTIVE_IMP_COLS - + PASSIVE_IMP_COLS - + ACTIVE_CLICK_COLS - + PASSIVE_CLICK_COLS - + ORDER_COLS - + ["age"] -) -CAT_COLS = ["gender_cd", "device_platform_cd"] - - -def safe_divide(numerator: pd.Series | float, denominator: pd.Series | float) -> pd.Series: - """Divide with protection against zero (works for Series and scalars).""" - if isinstance(denominator, pd.Series): - denom = denominator.replace(0, np.nan) - else: - denom = np.nan if float(denominator) == 0 else denominator - return numerator / denom - - -def normalize_gender(series: pd.Series) -> pd.Series: - cleaned = series.fillna("UNKNOWN").astype(str).str.strip().str.upper() - mapping = {"M": "M", "MALE": "M", "F": "F", "FEMALE": "F"} - return cleaned.map(mapping).fillna("UNKNOWN") - - -def normalize_device(series: pd.Series) -> pd.Series: - cleaned = series.fillna("unknown").astype(str).str.strip() - lowered = cleaned.str.lower().str.replace(" ", "").str.replace("_", "") - mapping = {"android": "Android", "ios": "iOS", "ipados": "iPadOS", "ipad": "iPadOS"} - mapped = lowered.map(mapping) - fallback = cleaned.str.title() - return mapped.fillna(fallback) - - -def add_age_group(df: pd.DataFrame) -> pd.DataFrame: - bins = [0, 25, 35, 45, 55, np.inf] - labels = ["<25", "25-34", "35-44", "45-54", "55+"] - df["age_group"] = pd.cut(df["age"], bins=bins, labels=labels, right=False) - return df - - -def add_totals(df: pd.DataFrame) -> pd.DataFrame: - df["active_imp_total"] = df[ACTIVE_IMP_COLS].sum(axis=1) - df["passive_imp_total"] = df[PASSIVE_IMP_COLS].sum(axis=1) - df["active_click_total"] = df[ACTIVE_CLICK_COLS].sum(axis=1) - df["passive_click_total"] = df[PASSIVE_CLICK_COLS].sum(axis=1) - df["orders_amt_total"] = df[ORDER_COLS].sum(axis=1) - df["click_total"] = df["active_click_total"] + df["passive_click_total"] - df["imp_total"] = df["active_imp_total"] + df["passive_imp_total"] - df["active_ctr"] = safe_divide(df["active_click_total"], df["active_imp_total"]) - df["passive_ctr"] = safe_divide(df["passive_click_total"], df["passive_imp_total"]) - df["ctr_all"] = safe_divide(df["click_total"], df["imp_total"]) - df["cr_click2order"] = safe_divide(df["orders_amt_total"], df["click_total"]) - df["cr_imp2order"] = safe_divide(df["orders_amt_total"], df["imp_total"]) - return df - - -def add_flags(df: pd.DataFrame) -> pd.DataFrame: - df["has_active_comm"] = (df[ACTIVE_IMP_COLS + ACTIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_passive_comm"] = (df[PASSIVE_IMP_COLS + PASSIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_any_order"] = (df[ORDER_COLS].sum(axis=1) > 0).astype(int) - df["order_categories_count"] = (df[ORDER_COLS] > 0).sum(axis=1) - return df - - -def load_data(path: Path | str = DATA_PATH) -> pd.DataFrame: - df = pd.read_csv(path) - df["business_dt"] = pd.to_datetime(df["business_dt"]) - df["gender_cd"] = normalize_gender(df["gender_cd"]) - df["device_platform_cd"] = normalize_device(df["device_platform_cd"]) - df = add_age_group(df) - df = add_totals(df) - df = add_flags(df) - return df - - -def describe_zero_share(df: pd.DataFrame, cols: Iterable[str]) -> pd.DataFrame: - stats = [] - for col in cols: - series = df[col] - stats.append( - { - "col": col, - "count": series.count(), - "mean": series.mean(), - "median": series.median(), - "std": series.std(), - "min": series.min(), - "q25": series.quantile(0.25), - "q75": series.quantile(0.75), - "max": series.max(), - "share_zero": (series == 0).mean(), - "p95": series.quantile(0.95), - "p99": series.quantile(0.99), - } - ) - return pd.DataFrame(stats) - - -def build_daily(df: pd.DataFrame) -> pd.DataFrame: - agg_cols = ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS - daily = df.groupby("business_dt")[agg_cols].sum().reset_index() - daily = add_totals(daily) - daily["day_of_week"] = daily["business_dt"].dt.day_name() - return daily - - -def build_client(df: pd.DataFrame) -> pd.DataFrame: - agg_spec: Dict[str, str] = {col: "sum" for col in ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS} - meta_spec: Dict[str, str | callable] = { - "age": "median", - "gender_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "UNKNOWN", - "age_group": lambda s: s.mode().iat[0] if not s.mode().empty else np.nan, - "device_platform_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "Other", - } - agg_spec.update(meta_spec) - client = df.groupby("id").agg(agg_spec).reset_index() - contact_days = df.groupby("id")["business_dt"].nunique().rename("contact_days") - imp_day = df.copy() - imp_day["imp_day_total"] = imp_day[ACTIVE_IMP_COLS + PASSIVE_IMP_COLS].sum(axis=1) - max_imp_day = imp_day.groupby("id")["imp_day_total"].max().rename("max_impressions_per_day") - client = add_totals(client) - client = add_flags(client) - client = client.merge(contact_days, on="id", how="left") - client = client.merge(max_imp_day, on="id", how="left") - client = add_contact_density(client) - return client - - -def add_contact_density(df: pd.DataFrame) -> pd.DataFrame: - # contact_days must already be present - if "contact_days" in df.columns: - df["avg_impressions_per_contact_day"] = safe_divide(df["imp_total"], df["contact_days"]) - return df - return df diff --git a/alternative/passive_share_orders/analysis.ipynb b/alternative/passive_share_orders/analysis.ipynb deleted file mode 100644 index f2c3672..0000000 --- a/alternative/passive_share_orders/analysis.ipynb +++ /dev/null @@ -1,458 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "34468500", - "metadata": {}, - "source": [ - "# Доля пассивных показов и заказы\n", - "\n", - "**Вопрос:** повышает ли высокая доля пассивных показов вероятность заказа при контроле объёма коммуникаций?\n", - "\n", - "**Гипотеза:** большая доля пассивных показов связана с большей вероятностью заказа (проверяем ML)." - ] - }, - { - "cell_type": "code", - "id": "46fb7ac5", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:43.639846Z", - "iopub.status.busy": "2025-12-12T19:11:43.638998Z", - "iopub.status.idle": "2025-12-12T19:11:50.215868Z", - "shell.execute_reply": "2025-12-12T19:11:50.213723Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:46.168843Z", - "start_time": "2025-12-12T19:27:44.987935Z" - } - }, - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.linear_model import LogisticRegression\n", - "from sklearn.metrics import roc_auc_score\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n" - ], - "outputs": [], - "execution_count": 1 - }, - { - "cell_type": "code", - "id": "73842cf6", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:50.222842Z", - "iopub.status.busy": "2025-12-12T19:11:50.222356Z", - "iopub.status.idle": "2025-12-12T19:11:52.672337Z", - "shell.execute_reply": "2025-12-12T19:11:52.670490Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:46.794213Z", - "start_time": "2025-12-12T19:27:46.179705Z" - } - }, - "source": [ - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " \"active_imp_total\": \"sum\",\n", - " \"passive_imp_total\": \"sum\",\n", - " \"active_click_total\": \"sum\",\n", - " \"passive_click_total\": \"sum\",\n", - " \"orders_amt_total\": \"sum\",\n", - " \"imp_total\": \"sum\",\n", - " \"click_total\": \"sum\",\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ")\n", - "\n", - "client[\"passive_share\"] = eda.safe_divide(client[\"passive_imp_total\"], client[\"imp_total\"])\n", - "client[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\n", - "client[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\n", - "client.head()\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - " active_imp_total passive_imp_total active_click_total \\\n", - "id \n", - "1 33.0 35.0 14.0 \n", - "2 27.0 89.0 19.0 \n", - "3 57.0 236.0 37.0 \n", - "4 20.0 37.0 14.0 \n", - "5 23.0 20.0 13.0 \n", - "\n", - " passive_click_total orders_amt_total imp_total click_total age \\\n", - "id \n", - "1 3.0 0 68.0 17.0 58.0 \n", - "2 4.0 3 116.0 23.0 54.0 \n", - "3 0.0 2 293.0 37.0 70.0 \n", - "4 1.0 0 57.0 15.0 43.0 \n", - "5 3.0 1 43.0 16.0 46.0 \n", - "\n", - " gender_cd device_platform_cd passive_share ctr_all has_order \n", - "id \n", - "1 M Android 0.514706 0.250000 0 \n", - "2 M Android 0.767241 0.198276 1 \n", - "3 F Android 0.805461 0.126280 1 \n", - "4 F Android 0.649123 0.263158 0 \n", - "5 M Android 0.465116 0.372093 1 " - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
active_imp_totalpassive_imp_totalactive_click_totalpassive_click_totalorders_amt_totalimp_totalclick_totalagegender_cddevice_platform_cdpassive_sharectr_allhas_order
id
133.035.014.03.0068.017.058.0MAndroid0.5147060.2500000
227.089.019.04.03116.023.054.0MAndroid0.7672410.1982761
357.0236.037.00.02293.037.070.0FAndroid0.8054610.1262801
420.037.014.01.0057.015.043.0FAndroid0.6491230.2631580
523.020.013.03.0143.016.046.0MAndroid0.4651160.3720931
\n", - "
" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 2 - }, - { - "cell_type": "markdown", - "id": "98ac09e6", - "metadata": {}, - "source": [ - "## Визуализация: заказы vs доля пассивных показов" - ] - }, - { - "cell_type": "code", - "id": "35bfe71d", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:52.678022Z", - "iopub.status.busy": "2025-12-12T19:11:52.677564Z", - "iopub.status.idle": "2025-12-12T19:11:52.998699Z", - "shell.execute_reply": "2025-12-12T19:11:52.997056Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:46.985756Z", - "start_time": "2025-12-12T19:27:46.877380Z" - } - }, - "source": [ - "bins = pd.qcut(client[\"passive_share\"], 8, duplicates=\"drop\")\n", - "order_rate = client.groupby(bins)[\"has_order\"].mean().reset_index()\n", - "order_rate[\"passive_share\"] = order_rate[\"passive_share\"].astype(str)\n", - "plt.figure(figsize=(12, 4))\n", - "sns.lineplot(data=order_rate, x=\"passive_share\", y=\"has_order\", marker=\"o\")\n", - "plt.xticks(rotation=40)\n", - "plt.title(\"Доля клиентов с заказом vs доля пассивных показов\")\n", - "plt.tight_layout()\n", - "plt.show()\n" - ], - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/var/folders/mx/y1qcnthj1154ngqj00r8gz480000gn/T/ipykernel_85284/3960648772.py:2: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.\n", - " order_rate = client.groupby(bins)[\"has_order\"].mean().reset_index()\n" - ] - }, - { - "data": { - "text/plain": [ - "
" - ], - "image/png": "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AFq92umPOQW1vZ0WW6CqttopJdG22qCrW8luQHeqnaIZARQAAAAAAGi1aqcvVO3041ybv3RF6PbeXbJtx8162NYbdrPMdKKLWMBvEQAAAAAAtGi10++zl7spdt9GVDtt7aqdelr/7jmsZBdjCKAAAAAAAECzK1pRUVvtNM8W5K+sdurTJdt22LynbbNhV8tII6aIVfxmAQAAAABAs1U7TZlVU+303ZRFFqgKutvTUpJs6w1rejv160a1UzwggAIAAAAAAOu92unziTUr2S0Mq3bq2zXHdti8h5tqR7VTfCGAAgAAAAAA66XaabKqnX6ca9//vnhltVNqkpteV1PtlMs7HacIoAAAAAAAQJMVumqn+fbJj/Ns4bLS0O2aWqfQaSuqnUAABQAAAAAA1la1ejvNXFbb22mxVVXXVDulq9ppo262w6Y9rG+3HN5YhFABBQAAAAAAGqWwpKbaScHTorBqp/7dVe3U07baoIulpxI1oD5GBQAAAAAAWG2102+qdvpxnv3we91qp1EbdbPtqXZCIxBAAQAAAACAegqKy+0z9Xb6aZ4tXl4Wur1/91zbsba3kxqMA41BAAUAAAAAAFZWO/25zD76ca79+MeSULVTRtrK3k59utLbCWuPAAoAAAAAgDjnq500zW5Jwcpqp4E9cm17VTsNo9oJ64YACgAAAACAOK12mjQj34VOP04Nr3ZKtm3V22mzHta7S3Zrv0zECAIoAAAAAADiyPLicvv05/n26U8R1U491dupp40Y1sXSUujthPWLAAoAAAAAgBhXXR20X/+srXb6Y4mrfgpVO21c09upF9VOaEYEUAAAAAAAxKhlReX22c/z7JOf5tvSwpXVToN65bnQiWontBQCKAAAAAAAYqza6ZcZS121009Tl4aqnTJV7TS8ptqpZ2d6O6FlEUABAAAAABAj1U6f/jzP9XZaWlgeun1wrzzX22nLoZ0tld5OiNcAqrq62u644w577rnnrKioyEaOHGmXX3659e7du8HHV1ZW2m233WYvv/yye/zGG29sl156qW2wwQahxxx//PH2xRdf1Pm+rbbayh5//PFm/3kAAAAAAGjJaqeJ02urnaYtsdpiJ8tKV2+n7m4lu56dsviFoNW1egB111132VNPPWXjxo2zbt262fjx4+2kk06y1157zVJTU+s9/oorrrCPPvrIPb5Hjx52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Wvluww03tHvvvde22WabRj9XdXW13XHHHfbcc89ZUVGRjRw50i6//HLr3bt3g4/X9D41OX/55Zfd41Vtdemll9oGG2wQesyXX35p48ePt2nTpln37t3t73//u+29995N+VEBAACAmKBj9sUFZXWqm+YsKnE9ncIpWOrXPacmcOqhwCnX8rLTWu11AwBiQ5PXOFVQ9Mwzz1hZWZkVFBRYdna2ZWVlrfXz3HXXXW4637hx46xbt24uODrppJPcVL7U1PplvFdccYV99NFH7vE9evSwW2+91U4++WR76623LCcnx4VOp556qh1//PHuufTYCy64wDp06GCjRo1q6o8LAAAARJWKyir7c0FRncCpcEX96qYOuWkuaPLVTX26ZlPdBABoOwGUl56e7j6aoqKiwh566CE777zzbMcdd3S33XLLLTZmzBh75513bOzYsXUeP3v2bHvhhRfsnnvucY+Rq6++2vbff3/75ZdfXMD06KOP2tChQ+2cc85x9w8cONAmTZrkKrUIoAAAABCr1U35heWhoGnavAKbtbDYqqrrVjclJSZY32611U2uwinXOuQ27VgeAIBmCaCGDRvmej011m+//bbGx0yePNlKSkrqBEO5ubluKt8333xTL4D6/PPPXZXT9ttvX+fxH3zwQejrb7/91nbdddc636cpgddcc43bMa/NzwAAAAC0RZWBapu5cGXvJgVPy4sr6j0uLyu1Tu+mvt2yLSU5qVVeMwAgvjU6gDrjjDNC4U15ebnrAdWvXz/bY489rHPnzrZs2TL78MMP7ffff7fTTjutUc+5YMEC91l9msJ16dIldF+4GTNmuN5Qqo667777bOHChS6suuiii1ylk39OTeWLfL7S0lL3GjUVDwAAAIgmy4rKV06lm1dgMxcUWaCqbnVTYkKC9e6aXRs45dqgHnnWMS+dC7AAgOgKoNTI27vkkkvclDmtehdeUaTg6fzzz7dff/21Uc+pUEgiez2lpaW5vlKRiouLbebMma5vlPo6qfrp7rvvtiOOOMLefPNN69ixo+tJFfl8/mtN+VsXycnRvdJHUu1KJf4zwNgB2x20ReyvEO9jJ1BVbbMWFtnUOQXu4485Bba0sKze43IyU2xQL1U2tbPBvfKsf49cS0uhuimexw5aHmMHjJ1m7gGlht9aia6h6Wz77bdfnbBqdXzvKAVD4X2kVGGVkZFR/8UmJ7sQSn2ifMWT/r3DDjvYSy+95JqXK7yKDJr81w09Z2MlJiZY+/Zr32S9LcrNbfr7gPjG2AFjB2xzEA2ibX+1vKjcJs/Mt8l/5tvkmcvsj9nLXQPxcIkJZn2759qwfh1sWN8ONqxfe+veMYvqpjgfO2g7GDtg7DRTAKXV7mbNmtXgfWr4nZeX16jn8VPvFi1aZH369Andrq/VSDySptYphPLhkyi40rS8OXPmhJ5T3x9OX2dmZrr+UU1VXR20wsIVFu3pvDaMhYWlVlVV3dovB1GEsQPGDtjmIBpEw/6qqrraZi8qDlU36WPR8ppZAeGy0pNrq5vybHCvdq66KSOt7qH78uXRfWzalkTD2EHbxNhBvI+d3NyMRlePNimA2nvvve3mm2+2lJQUNxWvffv2tnTpUnv77bftzjvvtJNPPrnRjc2zs7NtwoQJoQCqsLDQhVhHHXVUvcePHDnSAoGATZw40YYPH+5u05Q7rY6n1yQjRoywr7/+us73ffXVV7bFFltYYuK6ldQGAtE7KMJpcMfKz4KWxdgBYwdscxAN2tL+qri0cuXKdHMLbMb8IiuPqG7SnIIenbJqVqVT76aeeda1Q6br6RSurfxMsawtjR1EF8YOGDvNFECde+65Nn/+fLv88svrlP1qlblDDz3UNSxvDPVmUtB04403uubgPXv2tPHjx7tKp913392qqqosPz/fVS6p0knh0rbbbmsXXnihXXXVVdauXTs3FTApKclN/ZOjjz7aDjjgAPec+vzxxx+7YOyBBx5oyo8KAAAANLpift6SEps6r8CmqbppXqEtzK9fpZSRlmQDeuTZwB65rsppQPc8y0xv0mE5AABRo0l7OlU+KfiZOnWqffvtt65huKqgttlmmzpT6RrjrLPOclVNl112matmUpXTgw8+6P4PTavbZZdd7LrrrrMDDzzQPV6NzxUunXnmme7xqmx67LHHQqvbDR482DUpV5D16KOPWq9evdy/R40a1ZQfFQAAAGjQirJKmzavMFTdpH+XVdStbpJuHTJDK9OpyknVTpHVTQAAxLqEoMqW1tLYsWNdFdROO+1k8VRSmZ9fYtFMq/ipkfqyZSWUFoOxA7Y7aLPYX6Etjp3qYNAWLF3hgiY3pW5eoat2iqRV6Ab0yA1NpVOlU3ZGynp9LVj/2O6AsYOWlhwj5+cdOmQ1bw8oTb9blxXlAAAAgLastDxg0+f76qZCmz6vwErKAvUe16VdhqtqGlRb3dSzc5YlrWPfUQAAYlGTAqh99tnHHnnkERswYIB16dJl/b8qAAAAYC35WW1rO7tNEwIWLSsNNQufOrfQ5i4ptsh5AqnJidav+8rqpoE98iw3K5XfEwAAzRVA/fnnn6730w477OAagWdmZta5X43J33vvvaY8NQAAALBWVPqfkpps6enJtry43LKy0620LGCBikCDS1uXV1TZDFU3qVn43EIXPGm1ukgdc9Ndk3A1C1d1U+8u2ZbcyGkGAABgPQRQ3bt3d1VQAAAAQGuHT1nZafb8B1Pttc+mW0lppWVlpNi+YwbYQTsNsuKiMrcSXah309xCm72o2PV0CqdgqV+3nJXVTT3zrF12Wqv9XAAAxJomBVBalQ4AAABobap8Uvj0zLtTQrcphHr6nSlWXR20oX3b21UPTqj3fe1z0mp6N9VWN/XpmmMpyVQ3AQDQpgIo75NPPrGvv/7aCgsLrX379jZixAgbM2bM+nt1AAAAwCqo7YOm3anyqSGvfz7DDt55sAubVM3kq5v00SE3nfcVAIC2HkBVVFTY6aefbp999pklJSW58GnZsmV233332TbbbGP33nuvpabSkBEAAADNY2lBmU2bX2gjN+7uKp4aottXlAds/OnbWuLadiYHAACtH0Ddfvvt9t1339kNN9xge++9twuhAoGAvf7663bllVfa3XffbWefffb6faUAAACIa+rl9N3vi+27KYtsxvwitwLdLlv1dT2fGgqhdHtOZooVVATcSncAACDKAigFTWeeeabtu+++K58oOdn2339/W7p0qT399NMEUAAAAFgnCo3mLi6xb6cssu9/X2xzFpeE7lM9U7f2GbZgaYntM2aAPfPOyh5QnhqRazU8wicAAKI0gMrPz7cNN9ywwft0+8KFC9f1dQEAACAOKSz6c0FRTeg0ZbEtXFYaui8pMcGG9W1vWw7pbJsP6Wx5WaluFbyDdxrkAqlXP62/Cl5JcXmr/jwAAGAdAqg+ffq4KXijRo2qd98333xj3bt3b8rTAgAAIA5ptbqpcwtClU75hStDo+SkRNu4fwfbcmhn23RQJ8vOSKnzvVVV1S5kGju6vx2yy2BbURawzPRkV/mk23U/AACI0gDqsMMOs3Hjxll6errrAdWpUydbsmSJm5p3//33u+l5AAAAwKoEqqptyqzlrp/T938sscKSitB9aSlJtsnAji50Gj6go2Wkrf6QVSFTVWmFVQcC1q5dli1fXmKVlQRPAABEfQB1+OGH26RJk+zGG2+0m266qU7J9AEHHGCnnHLK+nyNAAAAiAGVgSr7ZUa+m1r349QlVlIWCN2XmZZsmw3u5EKnjfp1sNSUpLV+ft9nnH7jAADESACVmJho11xzjZ1wwgn29ddfW0FBgeXl5dlWW21lAwcOrPPYefPmWZcuXVyTcgAAAMSXsoqA/TxtqZta99O0pVZeURW6LzczxfVyUug0rE97N90OAADEpnVKhRQ2RQZO4aqqqmyXXXax559/3jbaaKN1+a8AAAAQJUrKKu3HP5a40EkVT5WBldPhOuSm2RYKnYZ0tsG92lliotqHAwCAWNfsZUksewsAABD71MPp+z8W23dTFtvkmcusqrp2PpyZdWmf4aqcthzSxfp3z7GEBEInAADiDfPiAAAA0CT5hWX23e81odMfc5bX6b3Us3OWq3LacmgX69U5i9AJAIA4RwAFAACARlu4bIVrIv7tlMU2Y35hnfv6dcupqXQa2sW6dcjkXQUAACEEUAAAAFhtO4W5S0pCodOcxcWh+zSRblCvPBc4bTGkk3XKy+CdBAAADSKAAgAAQL3Q6c8FRW5qnabYLcxfEbovMSHBNujbzrZQ6DS4k+Vlp/HuAQCANSKAAgAAgFVXB23q3AIXOn3/+yJbWli+8oAxKdE27t/BrV632eBOlp2RwjsGAADWCgEUAABAnApUVduU2ctd6PTD74utoKQidF9aSpINH9jRNRLfZGBHy0jjsBEAADQdRxIAAABxpDJQZb/+ucy+m7LIfvxjiZWUBUL3KWTabFAnGzG0s23Uv4OlpiS16msFAACxY70FUIFAwIqLi61du3ah2xITE+3MM8+0Ll26rK//BgAAAGuprCJgE6fnu9Dp52lLrayiKnRfTmaKbT64swudhvVt76bbAQAAtIkASmHTPffcY3379rV99tnHJkyYYGeddZYVFhbaVlttZbfddpvl5eVZQkKCC6AAAADQslaUVdqPU5e46XW/zMi3ykB16L72OWmun5NCp8G92lliotazAwAAaGMBlAKmBx980C655BL39dVXX+0qn8444wx7+OGH7aabbrKrrrpqfb9WAAAArEbhigrXy0mh028zl1lVdTB0X+d26bbl0C625dDO1r97rlvNDgAAoE0HUG+88Yb985//tCOPPNKmTZtmf/zxh40bN872339/F0TdcMMNBFAAAAAtIL+wzL6vDZ1+n7PcgiszJ+vZKcsFTqp26t0l21WnAwAARE0AtWjRItt0003dvz/66CPX62n77bd3X3fr1s2KiorW76sEAADAymOxZSvsu9rQafq8wjrvTN9uOW5qnUKn7h2zeNcAAED0BlBqKj5nzhwbMWKEffDBB7bBBhtYhw4d3H0//PCDC6EAAACwfgSDQZu3pCQUOs1eVBy6TzVNA3vl2YghnW2LoZ2tU14GbzsAAIiNAGrs2LF23XXX2WuvvWbfffedXX755e72a665xp5++mn729/+tr5fJwAAQNyFTjMXFrnASR8L8leE7lP/pqF92rlKp82HdLZ22Wmt+loBAACaJYD6xz/+YZmZmfbNN9/Yueeea0cccYS7feLEiXbCCSfYaaed1pSnBQAAiGvVwaBNm1sQCp2WFpaF7ktOSrAN+3VwPZ02H9zZsjNSWvW1AgAANHsApQaWp556qvsI98wzzzTl6QAAAOJWVXW1TZm13AVOaiZeUFIRui81JdE2GdDRTa3bdGAny0hr0qEbAABAq2vyUczChQvd9LuKipUHSdXV1VZaWmrffvut3XLLLevrNQIAAMSUykC1Tfoz34VOP/yx2ErKAqH7FDJtNqijbTGki208oIOlpSS16msFAABotQDq7bfftvPOO88CgUBoOV/1KfD/HjBgwFo9n4KrO+64w5577jm3gt7IkSNdX6nevXs3+PhXX33Vzj///Hq3v//++9arVy/37913391mzpxZ5/4DDjjAxo0bt1avDQAAYH0or6iyidOXukbiP01dYmUVVaH7NJ1uiyGdbMuhXWyDvu0tOSmRNx0AAMSUJgVQ99xzj2200Ub273//25588kmrqqqyk08+2T7++GO7+eab7ZJLLlmr57vrrrvsqaeecuGQVtAbP368nXTSSa7JeWpqar3HT5kyxbbaaiv3f4XzK/GtWLHCZs+ebffee697nV56enpTflwAAIAmWVEWcGGTQqdfpi+1ikB16L522am25ZAurqfT4N55lpRI6AQAAGJXkwKoGTNm2E033WQbbrihbb311vbQQw/ZwIED3ceSJUtcQDV69OhGPZem8On7VVG1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lU6fF+avqPc41S9165jpgia/Kl3vLtlueh0AAAAAoHkQQAGIOlp5TivQ+RXpVN00d0mJBYP1H9spL901CHdT6brluh5OGWls+gAAAACgJXEWBqBNq64O2rylJbVBU011k8KnQFX9tCkvO9WFTG4qXW3fppzM1FZ53QAAAACAlQigALSpFekWLSsNNQfX55kLi6yisrreY7PSk2uag9dWNilwap+T1iqvGwAAAACwegRQAFotbMovLA/1a3Jh04IiW1EeqPfYtNQk69e1djW62uqmznnplpDAinQAAAAAEA0IoACskc951iXvKSipqF2Jrqa6Sf8uXFFZ73EpyYnWp0t2aAqdQic1DddKdQAAAACA6EQABWCVkpISLSU12dLTk215cbllZadbaVnAAhUBq6qqPy3OW1FWaTNqQyb1bZqxoNBVO9V7/sQE69k5q6ayqTZs6tEpy5KTEvmtAAAAAEAMIYACsMrwKSs7zZ7/YKq99tl0KymttKyMFNt3zAA7aKdBVlJc7kKo8ooq16fJVTfV9m1SH6dIql/q3ikrFDRpKl3vztmWmpLEbwAAAAAAYhwBFIAGqfJJ4dMz704J3aYQ6ul3prj+TVsO62L/feYHm7ekxIL1F6Szzu3Sayubalal69M1xzLS2OQAAAAAQDzibBCIIwqOKgLVVl5ZZRUVVe5zeaWqmAI1n93XVa5caZ/tB7nKp4a89tkMO2inwVa0otKFT1p9TpVN6tuksEmhU3ZGSov/fAAAAACAtokACmiDIVGgqtrKwgKiCn0OfR3xbxcg1fzbPS78Izxkqg2dGihWqqdvtxzbbrNeruKpIbpdH2ceONw65aVbu+y09f4+AAAAAABiBwEU0OSQKBgKfcrqBUAKkAJW4auKwu4vq/265rF17/cfDU1pW9+02lxaSlLNR6o+13ytnkyqaGqXk+56PjUUQun23OxUG9yrnXsvAAAAAABYHQKoOOJXsY+n1exVSVQv4KkIqyqqDY/qVg6trCjyH366msKjmmqkaqtugeBFq8G5YMgFRGEfqTVBke5LT0m21NSwMCkUKK38SK19jvTagEm3JSaufiBUVARcw3H1fIqk27UaHuETAAAAAKAxCKDiZDUzNZROT0+25cXllpWd7sKDQEXArWLWFkKiVVYDNVg5tLJXUUPT0XxFkj5XVbdESJQQqhyqHwDVVhXVhj+hx4VVHNUPi5Is3QVMiZaUmGitpbIi4Fa7k1c/bXgVPAAAAAAAGoMAKg7Cp6zsNLeamRpKNxQiNCaEqqpWVVBtH6HVhD9+apkLi9bQ6No/j6ayNfv7kJhQr3KoofDHVwulpya7x4RCpdSGwyXdryqlWKRxofExdnR/O2SXwbaiLGCZ6ckuvGzsuAEAAAAAQAigYpwqnxQ+PfPuymlUCqE0rUrTp0Zs0NVe+vCPOo2uQ9PMwqarqUqpuSUmJFhaxFQyVQ7Vn1oW2bsorLKoNjxyU87C7o/VkKi5KWSqKq2w6kDA2rXLsuXLS6yykuAJAAAAALB2CKBiWEJCgpt2p8qnhrz22Qw7aKfBNnF6vhWWVDTyOW0VfYZqq4Ui+gzVrxxa2eg6LTTVzIdECe41o+3x7a7oNw4AAAAAaAoCqBimJtPFpZUNrmImul33H7LTQDetqqHAKLyqSJ9VSURIBAAAAAAA1gYBVAyrrg5aXkaK6/nUUAil2/OyU2274T1YzQwAAAAAADQbGuPEMPV4KisLuIbjDdHtqnzS4wAAAAAAAJoLFVAxrrIi4Fa7k1c/bXgVPAAAAAAAgOZEABUHq5gpZBo7ur8dsstgW1EWsMz0ZFf5pNt1PwAAAAAAQHMigIoDCpmqSiusOhCwdu2ybPnyEqusJHgCAAAAAAAtgx5QccS3eqLlEwAAAAAAaEkEUAAAAAAAAGhWBFAAAAAAAABoVgnBIBOyGkNvU3V17Ry2KJaUlEjjcTB2wHYHbR77KzB2wHYH0YJ9FuJ57CQmJlhCQkKjHksABQAAAAAAgGbFFDwAAAAAAAA0KwIoAAAAAAAANCsCKAAAAAAAADQrAigAAAAAAAA0KwIoAAAAAAAANCsCKAAAAAAAADQrAigAAAAAAAA0KwIoAAAAAAAANCsCKAAAAAAAADQrAigAAAAAAAA0KwIoAAAAAAAANCsCKAAAAAAAADQrAigAAAAAAAA0KwIoNLuioiLeZTTJ3LlzLT8/n3cPa23q1Kn2xRdf8M6BsYMWM3nyZHv11Vd5x8F2B2xz0KZNbcXjZAIoNKuXXnrJjj32WJs4cSLvNNbK448/brvssos9+OCDVlZWxruHRnvkkUds7Nixdu+997LtwVph7KCpHn74Ydt///3t/vvvtw8//JA3Emx30KzY5iBaj3UIoNBsbr31Vrv44outpKTE7rzzTlu4cCHvNhrl7bfftgceeMAOOugge/TRR+3ll1+2QCDAu4dGVSC89957duaZZ7oKuqeeesr+/PNP3jms0a+//mrvv/8+Ywdrbfbs2fbNN9/Yueeeax06dLAnn3zSfvzxR95JsM9Cs2Cbg6b65ZdfWv1YJyEYDAZb9H9E3Pj888+tf//+9sMPP7gqloEDB9o111xjqamprf3S0MYptCwuLrauXbvaDTfc4A7mFWjusMMOlpCQ0NovD23ULbfc4iouk5KSLC8vzwWXN954o+233352/PHHW6dOnVr7JaINq6iosBUrVli7du0YO1hr5eXllpaWZh988IHddtttNmDAADv77LOtb9++vJtoEPssrAu2OWgKXdDXzJLs7OxWO9ahAgrrvd/TpEmT3Mfw4cOtR48e9pe//MV22203V5mgnS3QkOXLl9v333/vTgKzsrJc+CQXXHCBbb/99nb55Ze7CgUg0qJFi9w2Rld0NHYUPommwxx22GH22muvub4sCheAcNreHHLIIW7Kry6OMHbQWEuWLLFLLrnELrroIrv++uutoKDA3b7zzju77c7vv//uKnj97QD7LKwLtjloKvXT1fRwTb373//+58Kn1jxOJoDCevPdd9/ZAQccYJdddpkdeOCB7vOnn37qKlaOPvpo23bbbd3XGvxApCeeeMJdLZ4yZUroNl+ged1117lUXiGUyo4BT9Ne9txzTxsxYoS9/vrrrgJB46a6utrdrxLj0aNH27PPPut2uhT9IpwOtlR6roqVCRMmuP1VVVUVYwerpQtq6p+hg3qNGfW71LbI0wG9QvGvv/7aHnvssdCYAthnoSnY5qCpfvrpJ9trr73czCSFTLpo8uKLL4bub43jZKbgYb34+eef3QA+/PDDbZ999rHffvvNXfnLzc21//znP9axY0ebP3++/fe//3X3nX766e6kEVBQkJiY6JL5m266yQWVV1xxhfXp08e9OdoQ6gBfwZPG12abbWZXXXWV67OB+KZKS4Xdp556qp1zzjmhsRJJtx933HFuWqe2UzvttFOrvF60TbpA8scff7h/a7qvpotXVlZaSkqKGzsqS1d1L2MHfhujfZSq56699trVPlYX4lS5qyq7I488kjcwzrHPwtpim4N1nV1yyimn2KhRo9xxss7FtV8aMmSIXXjhha12nEwFFNZb9ZMO2k877TTr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P/7888932614Cr0JoNo4HWhpcGugKjjQwbk2jrfffrtdcsklrpJFJX2XXnqpTZgwwR2w6QBNjTpVDuqvPmtnqx2wNrSqkkL80I5U4aV2lH76pQ7UdZAuuk1BpaZohi+JrkRfTTsVOminq52xQijEPlVQquJNAZK2LQortXysvhb16RG/fVEgpZM9lRjr5NFP9VUIpZ2urhbuvPPOrfozoWUoWNJBu8bA/vvv7ypVFDipAlcHWzqx03jQQZh6QikE14G8aL+lq8/C2IlfuhCicaHQWmNH/MUSjRVdINE0cgULCsCPP/54NzVGJwE+qNK2iu1O/NCFD213tDLvueeea9tuu60LkLRiq46dtT/TvkgV3f44x++/1ANKAXl4awrtr7SNQmzTsa9CJ21fNG40tU6Vcn6FcQWUOvZVb1Qd94Tvr9SPzu+vdLyjiylaZENjD7FPF11VCKJjHO17FEJq7HgKw/v27etaCYSvGC7du3d351bhLU222mord04fN4Jok6qrq93n2267LXjCCScEq6qq3Nf6/J///Ce4+eabBx9++GF3W2lpaXDhwoV1vv+jjz4KHnXUUcGioqI6t0d+jdh35JFHuvGy5ZZbBufPn+9uq6ysrPOYzz//PLjRRhsFZ8+eHSwrKwsec8wxwVGjRgXnzp0bekx5eXmLv3a0jl9//TW47777Bv/888/QbRUVFW5sFBYW1tlOBQKB0NeXX355cPTo0cHXX3+9xV8z2oZvvvkmePDBBweXLFkSuu3TTz8N7rTTTsFjjz3WfR0+Zrxly5a5MffEE0+06OtF2/P+++8HN9100+AZZ5wRPOigg4JfffVV6L6PP/44OHz48OBmm20WvP3220O3H3300e5YKXLfhvgwYcKE4F//+tdgfn6++3rFihXBXXfd1W2P/LGzti0aN+ecc06wuLjYHdMsX748eMABBwTvueeeesffiF3+d/zKK68EjzvuODdevEceeSS4zTbbBKdMmeIe19B509KlS4Njx4513x+uoX0bYs8777zjzpnGjRsXOn7RMc4LL7xQ55j5vffeC44ZM8Yd+0ydOjVYUlLixs6hhx4aHD9+fGgc+nP8eMIqeG3c1KlT3WdfTaBS9BNOOMHNV1d5saYp/PWvf3VXclQmqseo1E9NFZXaRy4129SlZxGd1NtAJZ2acqemmlr5Tr01dAU5fPUF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euSRR+zee++teeMTE900u7KyMhdCRVY76fsQPxg7YOyA7Q6iBfssMHbANgfRgP1V20PKsR75AEkrL2RlZdmXX37plqLOzs62Aw880N137bXXumlTqnTSnOVZs2bZqFGj1ufLQBRi7ICxA7Y7iBbss8DYAdscRAP2V20PFVDNYJtttnGh05NPPmlz5851t+nrY445xvXoyczMdFP0VAH1wgsv2MCBA1mBAYwdsN1Bq2CfBcYO2O4gGrC/AmMn+iUEWXuyWSxYsMD22msvGzt2rJ1zzjluRbtwfnU73++JKXdg7IDtDloL+ywwdsB2B9GA/RUYO9GNCqhmoil2N954oz333HN2zz33uBXLPDUgD/834RMYO2C7g9bEPguMHbDdQTRgfwXGTnSjAqqZvfrqq/bf//7XhgwZYkcffbSNHj26uf9LxAjGDhg7YLuDaME+C4wdsM1BNGB/1boIoFrAJ598Yh9++KG99NJLdtxxx9mmm27qgqjU1NSW+O8RxRg7YOyA7Q6iBfssMHbANgfRgP1V6yGAakEff/yx/frrr/bGG2/YBRdcYDvssENL/veIYowdMHbAdgfRgn0WGDtgm4NowP6q5RFAtYKCggLLy8trjf8aUY6xA8YO2O4gWrDPAmMHbHMQDdhftRwCqFagxuOJifR/B2MHbHfQ9rHPAmMHbHcQDdhfgbHT9hFAAQAAAAAAoFlRhgMAAAAAAIBmRQAFAAAAAACAZkUABQAAAAAAgGZFAAUAAAAAAIBmRQAFAAAAAACAZkUABQAA0AJ23nlnu+iii9rkez106FC7/fbbW/tlAACAGJbc2i8AAAAgHtxxxx2WnZ3d2i8DAACgVRBAAQAAtIANN9yQ9xkAAMQtpuABAICYn/p2yy232LXXXmsjR460rbfe2i644AJbvnx56DHPPfecHXjggbbZZpvZJptsYvvtt5+99dZbofurq6vdc+i5Nt54Y/f5pptussrKytBjXn/9ddt3333d92+zzTZ23nnn2cKFCxucgrfHHnvYWWedVe+16v897bTTQl+/99577nUNHz7cRo8ebVdffbWtWLFird+DRx991Pbcc0/3PGPGjLErrrjCiouL6zxGX1966aW21VZb2eabb+5e35IlS0L3V1VV2X333Wdjx451P6Peq8MOO8y++uqr0GM0jW+33XZz1V56nu22284KCgpC7/Hee+/t3r8dd9zRPVbPCQAA4gMVUAAAIOY99dRT1rdvX7vuuussPz/fhUczZ860Z555xt2nYOfvf/+7bbnlli4wuf/++12ApCCmW7du7uunn37aLrzwQuvdu7f99NNPLpBKSUlxQc13333nQq3TTz/dhVwLFiyw8ePH27nnnmtPPPFEvdejoEphjkIfPy1v2rRpNnny5FAA9dprr7nXsM8++9g//vEPmzt3rvs/p06dag8//LAlJCQ06mdXMKbXoteuXk/Tp0+366+/3kpLS91n77HHHnP/16233upey7hx49ztt912m/t84403uvdAP5OeR+HanXfeaWeffbZ99NFHlpGR4R43b948+/jjj91rVciXl5dn9957r/v6qKOOsosvvth+++03F0DNnz/fBYMAACD2EUABAICYl5iY6EKbnJwc93WHDh3sjDPOsE8//dRmz55tJ554oguPvJ49e7rKIwVLqtr5+uuvXeXOQQcd5O5XdY8CF/98elx6erqdcsoplpqa6m5r166dTZw40YLBYL2wSAGUAhhVOO2///6hoCg3N9dVSul7FPioWkmfvX79+tlxxx3nAh5VETWGXnuvXr3syCOPdO+DXntmZmaoMslTddQNN9zg/j1q1CgXsun/8RYtWmTnnHOOHX300aHb0tLSXHA3ZcoUVxElgUDAhV0jRoxwXxcVFdldd91lf/3rX+2yyy5zt6kySu+Pvj7++ONt8ODBjfpZAABA9CKAAgAAMU+hjg+L/NfJycn2zTffhKbFFRYWuuogVUZNmDDB3VZRUeE+a9qeqqaOOOII970Kf1TN46nqSRU+mp6m6XU77LCDC1n0uSGqotpiiy3szTffDAVQb7zxhpsmpwBLFUiqojr11FNdoBP+/6hi6vPPP290AKXpgM8++6wL1HbddVf3mlTpFBmKqfornEIrvSeefn5RBZl/nz788MM675O3wQYbhP79ww8/WFlZmXvfwn8WfS36WQigAACIfQRQAAAg5nXt2rXO16oEat++vasCmjVrll1++eX25Zdfuil1AwYMsGHDhrnHqRJJTjrpJMvKyrIXXnjBVSRpSptCE1XwKODRVD1NqXvkkUdcpZX+3alTJ/vb3/5Wp2Iost/Tf/7zH1u2bJnNmTPHBTp+OprvT3XllVe6j0iqRmqsv/zlL66HlaYaqhJJlVeq8NL0Pt3nqSoq8j3yP7+omkuvRZ9V/TVo0CDr0aNHnffJ03vl+Z9F1WENWZufBQAARC8CKAAAEPMU8oRT82vdpql4CkYUPD3//POuckeVUeqz9Morr9QJYzSFTR9Lly51U9PuueceN/1MFTyqWtJ0OX2ot5Iac6unknpLbbrppq5pd6S99trL3a9peKooUijkq5A0FU/UV0pT5iKpr9LaUGWWPjQd7rPPPnM9rc4//3z3/0WGcw1RryqFcOr9pEothXR6T/Q+/O9//1vt9/qfRcGdphBGUlAHAABiH6vgAQCAmPfJJ5/UmSb2/vvvu+lgQ4YMsRkzZtjBBx/seiApfPKPF1UOiVZ7U1gkHTt2dNPZFEZpiprCGTXzVn8oVQKpOminnXZyfZB8U+5VBTN6nF6LQhz1hfLT4hTw6P9RZZRel/9QWKSpcJMmTWr0z64G5up3JZqGqOBL/a708ze2+kgBmSqZjjnmGFf5pPCpofepIQrgFPCpaXn4z6L3+uabb3Y/IwAAiH1UQAEAgJin1da0upwCFP1bwYeqlTQFTZU5Tz75pFvtTqGQGpOreklUzeR7Lz300EOuWkfT7RSmaKqdqpNURaVpePpa/aQUJFVWVtoDDzzgGm3rvlXRY7WKniqyNCXPS0pKcg2/NTVQ/1ZQpbBLU+j0f2+00UaN/tn1///73/92Idn222/vnueOO+5w1Uh+quGa9O/f3/WeUtWXgiN9KDRT1Vj4+9QQTXVU9ZRW11NYp35a+hn0tQK3xr4GAAAQ3QigAABAzNNKdgqXVA2kXkcHHHCAC3hEoc4111zjwiNNpVOFz9133+36MX377beuh9PZZ5/t7lMPqDvvvNNVEqmJ9rnnnuueQ429FWQppDrzzDNdsKLpbQqyFEKtir5Pz6Wm5Ap5wh1yyCGul5KCLDUR1+tW43L9P3p8Y6l6S4HYM8884/pAabU+rXKnKXiqTGoMvUa9T1olT++FXpemKz7xxBN28sknu/fJNxVviN73zp07u/9fP4+mEOo1/POf/6zTHB4AAMSuhGBk10gAAIAYomBElUrjxo1r7ZcCAAAQt6iAAgAAiEKatrem64iqxNIUPgAAgNZGAAUAABCFdtttN5s7d+5qH6PKr8cff7zFXhMAAMCqMAUPAAAgCk2ZMqXOyn4NUa8mragHAADQ2gigAAAAAAAA0KwSm/fpAQAAAAAAEO8IoAAAAAAAANCsCKAAAAAAAADQrAigAAAAAAAA0KwIoAAAAAAAANCsCKAAAAAAAADQrAigAAAAAAAA0KwIoAAAAAAAAGDN6f8BPHqPsDT9VRMAAAAASUVORK5CYII=" - }, - "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } - } - ], - "execution_count": 3 - }, - { - "cell_type": "markdown", - "id": "6def67b9", - "metadata": {}, - "source": [ - "## ML-модель: влияние доли пассивных показов на заказ\n", - "Target: `has_order`. Фичи: объёмы актив/пассив, клики, возраст, пол, платформа, пассивная доля." - ] - }, - { - "cell_type": "code", - "id": "ae61b923", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:53.004801Z", - "iopub.status.busy": "2025-12-12T19:11:53.004396Z", - "iopub.status.idle": "2025-12-12T19:11:53.143675Z", - "shell.execute_reply": "2025-12-12T19:11:53.141866Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:47.045615Z", - "start_time": "2025-12-12T19:27:47.013172Z" - } - }, - "source": [ - "X = client[[\n", - " \"active_imp_total\",\n", - " \"passive_imp_total\",\n", - " \"active_click_total\",\n", - " \"passive_click_total\",\n", - " \"passive_share\",\n", - " \"age\",\n", - " \"gender_cd\",\n", - " \"device_platform_cd\",\n", - "]]\n", - "X = X.copy()\n", - "X[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\n", - "X[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n", - "y = client[\"has_order\"]\n", - "\n", - "numeric_cols = [\"active_imp_total\", \"passive_imp_total\", \"active_click_total\", \"passive_click_total\", \"passive_share\", \"age\"]\n", - "cat_cols = [\"gender_cd\", \"device_platform_cd\"]\n", - "\n", - "preprocess = ColumnTransformer(\n", - " [\n", - " (\"num\", Pipeline([(\"scaler\", StandardScaler())]), numeric_cols),\n", - " (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n", - " ]\n", - ")\n", - "\n", - "model = Pipeline([(\"pre\", preprocess), (\"clf\", LogisticRegression(max_iter=1000))])\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\n", - "model.fit(X_train, y_train)\n", - "proba = model.predict_proba(X_test)[:, 1]\n", - "auc = roc_auc_score(y_test, proba)\n", - "coef = model.named_steps[\"clf\"].coef_[0]\n", - "features = model.named_steps[\"pre\"].get_feature_names_out()\n", - "coef_series = pd.Series(coef, index=features).sort_values(key=abs, ascending=False)\n", - "auc, coef_series.head(10)\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "(0.6804173758429694,\n", - " num__passive_click_total 0.638861\n", - " num__passive_share 0.303223\n", - " num__active_imp_total 0.216964\n", - " cat__device_platform_cd_Android 0.186635\n", - " num__active_click_total -0.150704\n", - " cat__gender_cd_M 0.130234\n", - " cat__device_platform_cd_iPadOS -0.105558\n", - " num__passive_imp_total -0.087140\n", - " num__age -0.072639\n", - " cat__device_platform_cd_iOS 0.038500\n", - " dtype: float64)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 4 - }, - { - "cell_type": "markdown", - "id": "7df5ccb7", - "metadata": {}, - "source": [ - "## Вывод по гипотезе\n", - "- Линейный рост доли клиентов с заказом при увеличении `passive_share`.\n", - "- В модели коэффициент при `passive_share` положительный и по модулю в топ‑фичах; AUC ~0.68. Гипотеза подтверждается: высокая доля пассивных показов ассоциирована с большей вероятностью заказа при контроле объёма и кликов." - ] - } - ], - "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.13.5" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/alternative/passive_share_orders/eda_utils.py b/alternative/passive_share_orders/eda_utils.py deleted file mode 100644 index 802a6d8..0000000 --- a/alternative/passive_share_orders/eda_utils.py +++ /dev/null @@ -1,154 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import Dict, Iterable, List - -import numpy as np -import pandas as pd - -# Paths and column groups -DATA_PATH = Path("dataset/ds.csv") -CATEGORIES: List[str] = ["ent", "super", "transport", "shopping", "hotel", "avia"] - -ACTIVE_IMP_COLS = [f"active_imp_{c}" for c in CATEGORIES] -PASSIVE_IMP_COLS = [f"passive_imp_{c}" for c in CATEGORIES] -ACTIVE_CLICK_COLS = [f"active_click_{c}" for c in CATEGORIES] -PASSIVE_CLICK_COLS = [f"passive_click_{c}" for c in CATEGORIES] -ORDER_COLS = [f"orders_amt_{c}" for c in CATEGORIES] - -NUMERIC_COLS = ( - ACTIVE_IMP_COLS - + PASSIVE_IMP_COLS - + ACTIVE_CLICK_COLS - + PASSIVE_CLICK_COLS - + ORDER_COLS - + ["age"] -) -CAT_COLS = ["gender_cd", "device_platform_cd"] - - -def safe_divide(numerator: pd.Series | float, denominator: pd.Series | float) -> pd.Series: - """Divide with protection against zero (works for Series and scalars).""" - if isinstance(denominator, pd.Series): - denom = denominator.replace(0, np.nan) - else: - denom = np.nan if float(denominator) == 0 else denominator - return numerator / denom - - -def normalize_gender(series: pd.Series) -> pd.Series: - cleaned = series.fillna("UNKNOWN").astype(str).str.strip().str.upper() - mapping = {"M": "M", "MALE": "M", "F": "F", "FEMALE": "F"} - return cleaned.map(mapping).fillna("UNKNOWN") - - -def normalize_device(series: pd.Series) -> pd.Series: - cleaned = series.fillna("unknown").astype(str).str.strip() - lowered = cleaned.str.lower().str.replace(" ", "").str.replace("_", "") - mapping = {"android": "Android", "ios": "iOS", "ipados": "iPadOS", "ipad": "iPadOS"} - mapped = lowered.map(mapping) - fallback = cleaned.str.title() - return mapped.fillna(fallback) - - -def add_age_group(df: pd.DataFrame) -> pd.DataFrame: - bins = [0, 25, 35, 45, 55, np.inf] - labels = ["<25", "25-34", "35-44", "45-54", "55+"] - df["age_group"] = pd.cut(df["age"], bins=bins, labels=labels, right=False) - return df - - -def add_totals(df: pd.DataFrame) -> pd.DataFrame: - df["active_imp_total"] = df[ACTIVE_IMP_COLS].sum(axis=1) - df["passive_imp_total"] = df[PASSIVE_IMP_COLS].sum(axis=1) - df["active_click_total"] = df[ACTIVE_CLICK_COLS].sum(axis=1) - df["passive_click_total"] = df[PASSIVE_CLICK_COLS].sum(axis=1) - df["orders_amt_total"] = df[ORDER_COLS].sum(axis=1) - df["click_total"] = df["active_click_total"] + df["passive_click_total"] - df["imp_total"] = df["active_imp_total"] + df["passive_imp_total"] - df["active_ctr"] = safe_divide(df["active_click_total"], df["active_imp_total"]) - df["passive_ctr"] = safe_divide(df["passive_click_total"], df["passive_imp_total"]) - df["ctr_all"] = safe_divide(df["click_total"], df["imp_total"]) - df["cr_click2order"] = safe_divide(df["orders_amt_total"], df["click_total"]) - df["cr_imp2order"] = safe_divide(df["orders_amt_total"], df["imp_total"]) - return df - - -def add_flags(df: pd.DataFrame) -> pd.DataFrame: - df["has_active_comm"] = (df[ACTIVE_IMP_COLS + ACTIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_passive_comm"] = (df[PASSIVE_IMP_COLS + PASSIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_any_order"] = (df[ORDER_COLS].sum(axis=1) > 0).astype(int) - df["order_categories_count"] = (df[ORDER_COLS] > 0).sum(axis=1) - return df - - -def load_data(path: Path | str = DATA_PATH) -> pd.DataFrame: - df = pd.read_csv(path) - df["business_dt"] = pd.to_datetime(df["business_dt"]) - df["gender_cd"] = normalize_gender(df["gender_cd"]) - df["device_platform_cd"] = normalize_device(df["device_platform_cd"]) - df = add_age_group(df) - df = add_totals(df) - df = add_flags(df) - return df - - -def describe_zero_share(df: pd.DataFrame, cols: Iterable[str]) -> pd.DataFrame: - stats = [] - for col in cols: - series = df[col] - stats.append( - { - "col": col, - "count": series.count(), - "mean": series.mean(), - "median": series.median(), - "std": series.std(), - "min": series.min(), - "q25": series.quantile(0.25), - "q75": series.quantile(0.75), - "max": series.max(), - "share_zero": (series == 0).mean(), - "p95": series.quantile(0.95), - "p99": series.quantile(0.99), - } - ) - return pd.DataFrame(stats) - - -def build_daily(df: pd.DataFrame) -> pd.DataFrame: - agg_cols = ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS - daily = df.groupby("business_dt")[agg_cols].sum().reset_index() - daily = add_totals(daily) - daily["day_of_week"] = daily["business_dt"].dt.day_name() - return daily - - -def build_client(df: pd.DataFrame) -> pd.DataFrame: - agg_spec: Dict[str, str] = {col: "sum" for col in ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS} - meta_spec: Dict[str, str | callable] = { - "age": "median", - "gender_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "UNKNOWN", - "age_group": lambda s: s.mode().iat[0] if not s.mode().empty else np.nan, - "device_platform_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "Other", - } - agg_spec.update(meta_spec) - client = df.groupby("id").agg(agg_spec).reset_index() - contact_days = df.groupby("id")["business_dt"].nunique().rename("contact_days") - imp_day = df.copy() - imp_day["imp_day_total"] = imp_day[ACTIVE_IMP_COLS + PASSIVE_IMP_COLS].sum(axis=1) - max_imp_day = imp_day.groupby("id")["imp_day_total"].max().rename("max_impressions_per_day") - client = add_totals(client) - client = add_flags(client) - client = client.merge(contact_days, on="id", how="left") - client = client.merge(max_imp_day, on="id", how="left") - client = add_contact_density(client) - return client - - -def add_contact_density(df: pd.DataFrame) -> pd.DataFrame: - # contact_days must already be present - if "contact_days" in df.columns: - df["avg_impressions_per_contact_day"] = safe_divide(df["imp_total"], df["contact_days"]) - return df - return df diff --git a/alternative/saturation_effect/analysis.ipynb b/alternative/saturation_effect/analysis.ipynb deleted file mode 100644 index 0225fd7..0000000 --- a/alternative/saturation_effect/analysis.ipynb +++ /dev/null @@ -1,421 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "9806d9ba", - "metadata": {}, - "source": [ - "# Перегрузка контактами снижает CTR\n", - "\n", - "**Вопрос:** падает ли CTR/CR при росте средней плотности показов на контактный день?\n", - "\n", - "**Гипотеза:** высокая плотность показов (спам) уменьшает CTR и вероятность заказа. Проверяем через ML-классификацию высокого CTR." - ] - }, - { - "cell_type": "code", - "id": "0891ca2a", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:23.062332Z", - "iopub.status.busy": "2025-12-12T19:11:23.062008Z", - "iopub.status.idle": "2025-12-12T19:11:29.703049Z", - "shell.execute_reply": "2025-12-12T19:11:29.700852Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:48.305598Z", - "start_time": "2025-12-12T19:27:47.155254Z" - } - }, - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.linear_model import LogisticRegression\n", - "from sklearn.metrics import roc_auc_score\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n" - ], - "outputs": [], - "execution_count": 1 - }, - { - "cell_type": "code", - "id": "9f0e5ca7", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:29.710292Z", - "iopub.status.busy": "2025-12-12T19:11:29.709769Z", - "iopub.status.idle": "2025-12-12T19:11:32.169479Z", - "shell.execute_reply": "2025-12-12T19:11:32.167853Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:48.938590Z", - "start_time": "2025-12-12T19:27:48.314667Z" - } - }, - "source": [ - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " \"imp_total\": \"sum\",\n", - " \"click_total\": \"sum\",\n", - " \"orders_amt_total\": \"sum\",\n", - " \"business_dt\": \"nunique\",\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ").rename(columns={\"business_dt\": \"contact_days\"})\n", - "\n", - "client[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\n", - "client[\"cr_click2order\"] = eda.safe_divide(client[\"orders_amt_total\"], client[\"click_total\"])\n", - "client[\"avg_imp_per_day\"] = eda.safe_divide(client[\"imp_total\"], client[\"contact_days\"])\n", - "client.head()\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - " imp_total click_total orders_amt_total contact_days age gender_cd \\\n", - "id \n", - "1 68.0 17.0 0 13 58.0 M \n", - "2 116.0 23.0 3 15 54.0 M \n", - "3 293.0 37.0 2 31 70.0 F \n", - "4 57.0 15.0 0 12 43.0 F \n", - "5 43.0 16.0 1 10 46.0 M \n", - "\n", - " device_platform_cd ctr_all cr_click2order avg_imp_per_day \n", - "id \n", - "1 Android 0.250000 0.000000 5.230769 \n", - "2 Android 0.198276 0.130435 7.733333 \n", - "3 Android 0.126280 0.054054 9.451613 \n", - "4 Android 0.263158 0.000000 4.750000 \n", - "5 Android 0.372093 0.062500 4.300000 " - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
imp_totalclick_totalorders_amt_totalcontact_daysagegender_cddevice_platform_cdctr_allcr_click2orderavg_imp_per_day
id
168.017.001358.0MAndroid0.2500000.0000005.230769
2116.023.031554.0MAndroid0.1982760.1304357.733333
3293.037.023170.0FAndroid0.1262800.0540549.451613
457.015.001243.0FAndroid0.2631580.0000004.750000
543.016.011046.0MAndroid0.3720930.0625004.300000
\n", - "
" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 2 - }, - { - "cell_type": "markdown", - "id": "da15b5bc", - "metadata": {}, - "source": [ - "## Визуализация зависимости CTR от плотности показов" - ] - }, - { - "cell_type": "code", - "id": "3541e285", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:32.175488Z", - "iopub.status.busy": "2025-12-12T19:11:32.175156Z", - "iopub.status.idle": "2025-12-12T19:11:32.526850Z", - "shell.execute_reply": "2025-12-12T19:11:32.525156Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:49.183790Z", - "start_time": "2025-12-12T19:27:49.074446Z" - } - }, - "source": [ - "bins = pd.qcut(client[\"avg_imp_per_day\"], 10, duplicates=\"drop\")\n", - "binned = client.groupby(bins)[\"ctr_all\"].median().reset_index()\n", - "binned[\"avg_imp_per_day\"] = binned[\"avg_imp_per_day\"].astype(str)\n", - "plt.figure(figsize=(12, 4))\n", - "sns.lineplot(data=binned, x=\"avg_imp_per_day\", y=\"ctr_all\", marker=\"o\")\n", - "plt.xticks(rotation=40)\n", - "plt.title(\"Медианный CTR vs плотность показов\")\n", - "plt.tight_layout()\n", - "plt.show()\n" - ], - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/var/folders/mx/y1qcnthj1154ngqj00r8gz480000gn/T/ipykernel_85425/2642699463.py:2: FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning.\n", - " binned = client.groupby(bins)[\"ctr_all\"].median().reset_index()\n" - ] - }, - { - "data": { - "text/plain": [ - "
" - ], - "image/png": "iVBORw0KGgoAAAANSUhEUgAABKAAAAGACAYAAACazRotAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAuvpJREFUeJzs3Qd8VfX5x/Ene5GQsPcGEQeioqKiIo627t32r1Ws1VpXq9ZRrVrrqtvWPWvd1bqrFfeeIKKI7D0DScje9//6/MLvehMCAnLHSb7v1+u8Qm5uws395ZzzO895nueXFAqFQiYiIiIiIiIiIhIlydH6wSIiIiIiIiIiIgpAiYiIiIiIiIhI1CkDSkREREREREREokoBKBERERERERERiSoFoEREREREREREJKoUgBIRERERERERkahSAEpERERERERERKJKASgREREREREREYkqBaBERERERERERCSqFIASEREREREREZGoSo3ujxcREZETTjjBPvvsMxs1apQ9+eSTrb4hf/jDH+yVV16xI444wq677jq9aetx7bXXWkVFhZ133nk2Y8YMO/vss+3jjz+2lJSUH3zPeN5jjz1mX331lZWWllqPHj1s3333tVNOOcU6d+7cbKw2xI9Ra89NSkqy7OxsGzBggJ144ol22GGHaSxFREREFIASERGJjeTkZJsyZYotX77cBT4iVVZW2ttvv62h2AgnnXSSHX/88bbbbrtZWlqa/fnPf96o4NONN95o999/v/3kJz+xSy65xPLz810A67777rOJEyfao48+aj179rTLL7/cysvLw9/3l7/8xX3kca9Tp07hf48YMaLZ1xoaGtwY//Of/7QLLrjA/T977723xlZERETaPWVAiYiIxACBitmzZ9v//vc/F0SJRPApKyvL8vLyNBY/gCAR7+HChQtd1hIBnh/y3//+1wWaLr744mbvPUEsgkNkNF199dV2++2325AhQ5p9b4cOHdzHHXbYodWfzddb+9pee+1lY8aMsWeffVYBKBERERH1gBIREYkNyrIIdhA8aYnSuwMPPNBSU9e9L/TGG2/YkUceadttt53tsccedtVVV7mMqUg///nPbauttlpn+/TTT93XFy9e7D4nGOLV1NTY+PHj3eOR2Tv33nuvHXzwwbb99tu7wAo/+5NPPgk/5x//+Eez7/F4jK+B/zfy//coWWNr7XtaQ3ncRRddtM7zyXwaPHiwdezYMfy78zuuD78TgSVK4lqiVO6Pf/yjK48MhUK2pWRkZFh6eroryWsNWVJbb721y7yKVFRUZNtss43LoMKHH35oxx57rHt9o0ePttNPP93mzJmz3v/Xj3VrW+R7z9/C+p4X+XdSVlbmyh73228/9zfI38Yzzzzzg/8XY9famK/v7+Prr7+2X//617brrrvajjvuaL/97W9t1qxZzb5v5cqVduGFF7rAHu8HmXBffvml+xr/3/peC69zfX+3G7Kx7yX70h133OGy63iPDjjgAPc319jYGH5Oy/eBgCfPfe+998LjTrbduHHjbNttt7VddtnFzjjjjGZ/1/z71FNPde8PxxICppF/s7w/BFn5Gvvv0UcfbW+++Waz3ynyd+Dvj/fyT3/6k/sdREREok0ZUCIiIjHys5/9zH7/+983K8Oj3IuL0Iceeih8Meq99NJLdv7559shhxzivm/JkiV2yy23uEwqnu+DG1w8nnXWWbbnnnu6z6dNm2ZXXnnlBl8L5WgtgzaUqT3xxBOuvxIXqCtWrHAX1uecc4698847LksrkbzwwgvhAMT6FBYW2nfffef6PK0vGPTLX/5ys18DAYD6+vpmQTzGifeNXlXr6wHF+BNkIDuLQIpHgJKfedBBB9miRYvsd7/7nR111FF27rnnur5VN998swtCvP76666sc30IVO2zzz7rlBK2RBCja9eu4ffqzDPPDH+turravTerV692vbZ69+7tAqKUMK5atcpOPvlke+qpp9xz+fu46667wj+P4NvGIsDJ+BB8uuaaa9zf8z333OOCi//+979dsJH38he/+IV7fwkYdu/e3R588EH3Gp577jn3/9bW1oZ/h8jfv1u3bvZjbOi9ZKwIllFey/87fPhwF1i79dZb3fj99a9/XefnTZ061e1nt912Wzjwedppp9maNWvc/t6lSxdXHsrPoLzzgQcecM/hb4H35qabbnJ/YwSxyALkfWE8CDgR+KSfXEFBgQskEsS6/vrr7dBDDw3//zzvmGOOcT+LwB/HFMaM7xMREYkmBaBERERihItYgjiRZXgEEriI3GmnnZo9lwtOAkJjx451HyMzdvjed999N3xRTEbU0KFDw6VgP5TNsGzZMleSRqYNwarIDAouQiMzNbigJbjFBfH6ytDigYAE70vL36G1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T0++PiP8GEGoJyY2fX7wHgOtoao2jq9QRERERERERNo69YBqw5KSklzZHZlPrXnx/bmWlZnqniciIiIiIiIiEi0KQLVhyclJVl5V5zKeWsPjbDxPRERERERERCRaFIBqwxobQ9YhK831fGoNj2dmpNp/3p1jK4srY/76RERERERERKR9UACqDQuFQlZdXe8ajreG/k9TZhbaix/Ms4vv+cRuffor+3ruamsMhWL+WkVERERERESk7VIT8jaurrberXbnez61XAVv8rfLbdtBneybuUU2dc5qt3UvyLJ9d+pje2zb07Iz9SciIiIiIiIiIj+OogttXENDo1WU17hsp2PGD7XK6noXVKqqrnePD+nd0c49dgdbXlRpb01ebB9+vcxWFFfZE2/Msmffm2u7b9vD9t2xj/XukhPvX0VEREREREREAkoBqHYShGqoqrXG+nrLz8+xkpIKq6trbPacHp2y7Zf7DbMjxg6yT6YttzcnL7Glqyrs7clL3LZ1/wLbb6c+NnJIFzUtFxEREREREZFNogBUO+JbO22oxVNWRqqN27GP7TOqt323oNjemLTYpsxeZdMXFLutc16m7btjbxs7spdrcC4iIiIiIiIi8kMUgJJWJSUl2dYDOrltVUmVvf3lEnvvq6W2urTann5njj3/wTzbdUR3lxXVr3uu3kURERERERERWS8FoOQHdcnPsmPGDbHD9hxon367wt6ctNgWriy3D6Yuc9vQPh1t/E59bMdhXS01RQsrioiIiIiIiEhzCkDJRktPS3Gld3tu39NmL1njAlGTZhTarMVr3JbfId2V7u09spd17JChd1ZEREREREREHAWgZLPK84b2yXdbcVmNvTtlib0zZamVlNfa8+/Ps5c+nG+jt+5m43fsY4N65bnni4iIiIiIiEj7pQCU/CgFuRl2+NhBdtCYATZpxkqXFTVnaal9Mm2F2wb0yHXlebts3c3SUlP0bouIiIiIiIi0QwpAyRaRlppsu23Tw23zlpXaW5MW26fTV9j85WX2wH+n27/fnm17jexl40b1tk55mXrXRURERERERNoRBaBkixvYM89+ffAIO2bfIfbelKVuBT1K9f778QJ79ZOFNmpYF7d63rC++SrPExEREREREWkHFICSqMnLTreDdx9gP92tn305c5Urz5uxqMQ1Lmfr0zXH9t2pj40Z0cMy0lWeJyIiIiIiItJWKQAlUZeSnGw7D+/mtsUry+3NyYvt42+W2+LCCvvX/2bYM2/PcSvrEYzqlp+lERERERERERFpYxSAkpjq062DnfiT4Xb0PoPtg6nL7K3Ji62wpNomfr7IXv98kW0/uLON37mPjRjQyZK1ep6IiIiIiIhIm6AAlMRFTmaaHbhLP9t/5742de5q17T8m3lF9tWc1W7r3inbxu/Y2/bYrqdlZejPVERERERERCTIdGUvcZWcnGQ7DOnitmWrK+ztyUvsg6+X2YqiSnv8jVn2n/fm2h7b9rDxO/Wxnp1zNFoiIiIiIiIiAaQAlCQMAky/3H+YHbHXIPvom+WuPG/Z6kp7a/ISt20zoMD1iRo5uIsLXImIiIiIiIhIMMQ9ANXY2Gi33367Pf3001ZWVmajR4+2yy67zPr27dvq86dNm2bXX3+9TZ061TIyMuyAAw6wP/7xj5abmxt+Do8tWLCg2fcdccQRdt1110X995Efj5I7Mp723bG3fbug2N78YrF9NXuVTZtf7LYuHTNt3I69bez2vaxDVprechEREREREZEEF/cA1J133mmPP/64Cw716NHDbrjhBjvllFPspZdesvT09GbPXbVqlU2YMMH2228/u+KKK6y4uNj+/Oc/20UXXWR33HGHe05lZaUtWrTI7rnnHttmm23C35uZmRnz301+nKSkJNtmQCe3FZZU2dtfLrH3v1pqq9ZU29Nvz7EX3p9nu23T3fbdsY/16/59AFJEREREREREEktcA1C1tbX24IMP2vnnn2/77LOPe+yWW26xsWPH2sSJE+3ggw9u9vwlS5bYnnvuaVdeeaWlpqbawIED7dhjj3Xf482ePdtlVY0aNco6duwY899JoqNrfpYdO26IHbbnQPv02xX2xheLbXFhub331TK3DevT0cbv3NdGDe1iqSnJGgYRERERERGRBBLXANR3331nFRUVNmbMmPBjeXl5NmLECPv888/XCUCNHDnSbr755vDnc+bMsRdeeMH22GOP8GMzZsywLl26KPjURmWkpdheI3vZ2O172qzFa+zNSYtt0oxCm7l4jdsKcjNsnx162d479La8nOYZdCIiIiIiIiLSDgNQy5cvdx979uzZ7PFu3bqFv7Y+Bx54oM2fP9969+7tekhFBqCys7Pt7LPPtsmTJ1tBQYEdddRR9qtf/cqSk5UZ05bK84b1zXdbcVmNK897b8oS9+/n3p9nL30030YP72bjd+prg3rlxfvlioiIiIiIiLRrcQ1AVVVVuY8tez3RXHzNmjUb/N4bb7zRfT89owgukQmVk5Njs2bNstLSUhegOuOMM2zSpEnuOfy8c84550e93tTUYAewUtaWpvmPbUXXgiw7dt8hbvW8z6avsNc/X2Rzl5bax9NWuI0A1P4797VdRnS3tICOYVsdu/ZAYxdcGrvg0tgFl8Yu2DR+waWxCy6NXXCltMNrvKRQKBSK13/+2muvuUylr776qlmTcAJF9Ie66667fvBnrFixwvbee2/XxPzwww9331dTU9NsVbx7773X/SyCUZubBcXbRNaNBMPMhcX28gdz7f0pS62+odE91rFDuh242wD76ZgB1iU/K94vUURERERERKTdiGsGlC+9W7lypfXr1y/8OJ9vtdVW6zx/7ty5tnDhwnDDcnTv3t3y8/NdIMpnU7XMqBo2bJhbHY8sKEryNkdjY8hKSystyIis5uVlWWlplTWsDcq0VV1z023CT4fbUXsNsne+XOJ6RVGe9+83Ztozb86ynYd3tf127mtb9csPRGCxPY1dW6OxCy6NXXBp7IJLYxdsGr/g0tgFl8YuuFLayDUev8PGZnHFNQA1fPhw69Chg3366afhABTlc99++60df/zx6zz/o48+suuvv94++OAD16wcBKSKi4tt8ODBLktp//33d5lQZ555Zvj7vv76a+vatetmB5+8+vrg/lFE4o+7rfwuPyQ7I9V+tlt/O2B0X/ty1ioXiJq5qMQ+m77SbX27dbDxO/WxXUd0dw3OE117Gru2RmMXXBq74NLYBZfGLtg0fsGlsQsujV1wNbSja7y4BqDIVCLQRD+nTp06uYbi9Gvq0aOHHXDAAdbQ0GBFRUWunI4SPVbFo5zuj3/8o51//vkuo+mqq66y7bff3saNG+cyWQhAPfDAAzZo0CDbdttt7eOPP7b777/fLrnkknj+qhJnqSnJrik528IVZfbW5CX2ybTltmhluf3z1e/s6bdn29jte9m4HXtbV5XniYiIiIiIiLSdHlAgyHTzzTfbs88+a9XV1TZ69Gi77LLLrE+fPrZ48WIbP368XXvttXbkkUe658+bN8/1e6KfU0pKivv6RRddFM6Iqq+vt3vuuceee+45t5IeP+fkk0+2Y4899ke+zkYr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eanNX1Zm85eX2qKV5S6o9c3cIrd5HXPSXSCKXlKup1TPXMvLbl6SLJszljpmBpXGLrg0dsGm8QsujV1waeyCq6EdzTXjGoCiVxOBJvo5derUyTUUp6cTTcQPOOAAa2hosKKiIsvNzXUleqyKd++999of//hHO//8812fqKuuusq23357GzdunPuZEyZMsFNPPdWtpLfXXnvZf/7zH5s+fbpdffXV8fxVRaQdnkgaqmqtsb7e8vNzrKSkwurqNv3EkpKcbH26dXDb2O2bHqN/1JJV5TaPgNQysqXKbOmqCltTUWtTZq9ym9c5L9MFosKBqR65lp2ZtiV/VRERERERkcQOQOHss8+2+vp6u/TSS10T8dGjR9sDDzxgaWlptnjxYhs/frxde+21duSRR7oSu4cfftiuu+46+8UvfmEpKSnu6xdddJH7N/bcc0+75ppr7M4777RbbrnFhgwZYnfffbfLkBIRibVQqPnHLYFG5QN6EFDKMxvV2z1WU9dgi1YQlCp1WVIEpZYXVdrq0mq3TZpRGP7+7gVZzTKl+nfPtYz0pmOoiIiIiIhINCSFQlvysqhtZzMUFVVYkLGKH43Ui4sr2k2KX1uhsQuueI4dvaPmL28q2/PZUqvWNK0WGole5r265NhAglprs6X6dO3gAl3tmfa74NLYBZfGLtg0fsGlsQsujV1wpbaR6/NOnXKC0QNKRESih9Xztu5f4DavrLLWNTZvypRq+lhSXmtLCivc9sHXy9zzUpKTXNnfQN9Pqkeu9e6a40oCRURERERENpUCUCIi7UhudrptO6iz27zishqXJUWTc9/svLyqzgWq2GzKUve89NRk69u9Q7NMqe6dsi2ZFCoREREREZENUABKRKSdK8jNsILcrjZqaFf3OZXZq9dUhzOk2BasKLOqmgabs6TUbV5mesra5ubfB6W6dMx0q5KKiIiIiIh4CkCJiEgzBI+65Ge5befh3dxjjaGQrSiqDAel+LhweZlV1zbYdwtL3OZ1yEpb2+A8d222VJ4LcomIiIiISPulAJSIiPwgyux6ds5x25hterjHGhobbdmqymb9pBatLHfle9/MK3Kb17FDerh0z2dL5WWn650XEREREWknFIASEZHNQkNyGpWzjR3Z9FhdfaMtLiz/PlNqWZktXVVha8prbcrsVW7zOudl2kACUj3zXLPz/j3yLDtT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RV+pnnkuECYbR/tdcKW0w+vzuO/ZVVVV7mN6enqzxzMyMmzNmu+b3a0PfaAeffRR12S8U6dONnfu3PX+PN8janMkJydZQUGOtQV5eVnxfgmymTR2waWxCy6NXXBp7IJLYxdsGr/gys3dctcJ3bvl2ejtvl8kqqqm3uYuWWOzFpXYbLbFxbaksMIKS6rc9tn0leHn9u6aY0P6FNiQvvk2tG++Derd0bIy4n7pmtC03wVXXju6Po/7XuxL6egFFVlWR7AoK2v9A0FTu9tuu83uuusuO/300+2EE05Y5+dF+qGf90MaG0NWWlppQUZklT/u0tKqVlNqJXFp7IJLYxdcGrvg0tgFl8Yu2DR+wRWrsetVkGm9CnrY3tv3cJ9XVNfZgmVl4SypuUtLbdWaaheYYnv3y8XueWRk0YvKZ0mx9evewdLTUqy9034XXClt5Pqc32Fjs7jiHoDypXIrV660fv36hR/n86222qrV76mrq7OLL77YXn75ZffxpJNOavXnDR48uNnP6969+496rfX1wf2jiMQfd1v5XdobjV1waeyCS2MXXBq74NLYBZvGL7hiPXYZqSk2rG++27yyylpbsLzM5tHkfG2zc8r2fFDqg6lNLVdSkpOsd5ccG9CTRueU7uVan64dLLUdlTNF0n4XXA3t6Po87gGo4cOHW4cOHezTTz8NB6BoJv7tt9+6lexac8EFF9jrr79uN910kx100EHNvta5c2cbOHCg+3m+EXl9fb198cUX9stf/jIGv5GIiIiIiIhsjtzsdNt2UGe3eSXlNU2r7vnV95aVWmllnS1cWe62975qCkqlpiS5BukuILW2yXmvLtmuebqIxF/cA1D0aiLQdOONN7oeTr1797YbbrjBevToYQcccIA1NDRYUVGR5ebmuvK6Z5991l555RUXhNpll12ssLAw/LP8c04++WS7+uqrrX///rbddtu5JuXV1dV29NFHx/V3FRERERERkU2T3yHDdhjC1iXcjoWsqHl+5b21QamK6nr3GJuXnpps/brnrg1INWVL9eiU7Xr8ikg7C0Dh7LPPdllKNBInUMRqdg888IClpaXZ4sWLbfz48XbttdfakUce6crucP3117stkn/Osccea2VlZXbrrbdaSUmJbbvttvbQQw+5AJeIiIiIiIgEV1JSknXKy3TbTlt1DQelCtdUN8uS4mN1bYPN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JSIiIiIiIiJRR1Bpj+16uq2uvsGmLyixKbMK7cvZq2xNea19MaPQbWRRDe3TMVyq160gW6PTBigAJSIiIiIiIiIxlZaa4lbIYzs+FLIFy8vsy1mFrlxvcWGFzVhU4rYn35ptvbvkhHtMDeyZ5wJUEjwKQImIiIiIiIhI3BBQIrDEduReg21lSZV95fpGFdrMRWtsyaoKt/334wXWMSfdRg5pCkaN6F/gGqBLMCgAJSIiIiIiIiIJo1t+lu0/uq/bKqrrbOqc1S4z6uu5q21NRa2999VSt6WnJds2AzrZqKFdbeSQzpabnR7vly4boACUiIiIiIiIiCSknMw0G7NND7fV1TfajEXFbkU9AlLFZTXu32xU5Q3pTd+ori47qkcn9Y1KNApAiYiIiIiIiEjCS0tNtm0Hdnbb8fsPs4UrysN9oxauLLdZi9e47d9vz7aenbNthyFdXEBqUK88S05W36h4UwBKRERERERERAIlKSnJ+vfIddvhYwfZ6jXVNmU2mVGF9t3CElu2utKWrV5or3660PKy02x7glFDutiIgZ0sQ32j4kIBKBEREREREREJtM4dM238Tn3cVlldb9/MW+1K8+gfVVpZZx9MXeY2sqjoG0WZHs3MaWousaEAlIiIiIiIiIi0GdmZqbbL1t3dVt/QaDMXlYT7Rq0uXZspNXuVUZQ3qHdeU9+oIV1c2R6ZVdJGA1CNjY12++2329NPP21lZWU2evRou+yyy6xv374/+H2nnnqqjRw50s4666xmXzvggANswYIFzR474ogj7LrrrovK7yAiIiIiIiIiiSc1JdlGDOjktl/uN9QWrSx3wScCUguWl9mcJaVue+adOda9IMtlRhGQGtw7z1KSk+P98tuUuAeg7rzzTnv88cddcKhHjx52ww032CmnnGIvvfSSpae3ngpXW1vrglTvv/++C0BFqqystEWLFtk999xj22yzTfjxzMzMqP8uIiIiIiIiIpKYyG7q1z3XbYfuMdCKSqvtK4JRs1fZdwuKbUVxlb322SK3dchKs5GDO7uA1DYDO1lmetzDJ4EX13eQQNKDDz5o559/vu2zzz7usVtuucXGjh1rEydOtIMPPnid75k8ebILPlVXV1teXt46X589e7bLjho1apR17NgxJr+HiIiIiIiIiARLp7xMG7djH7dV1dTbtHlFblU9+kaVV9XZh98sd1tTFlWBC0ZRqpffISPeLz2Q4hqA+u6776yiosLGjBkTfoyg0ogRI+zzzz9vNQD17rvvugDVGWecYYceeug6X58xY4Z16dJFwScRERERERER2ShZGam28/BubmtobLRZi9a4Mj0CUqvWVLugFNu/bIYN7Jm3tlSvi/XukqO+UUEIQC1fvtx97NmzZ7PHu3XrFv5aS3/4wx82+DMJQGVnZ9vZZ5/tsqUKCgrsqKOOsl/96leWrPpNEREREREREdkAej8N71/gtp+PH2JLVlW4BuYEpOYtKw1vz70317rmZ9oOQ7q6gNSwvh3VNypRA1BVVVXuY8teTxkZGbZmzZrN+pmzZs2y0tJSO/DAA12W1KRJk1xfKX7eOeec86Neb2pqsBuQpaQkN/sowaGxCy6NXXBp7IJLYxdcGrtg0/gFl8YuuDR2sTGgZ57bDt9rkJWU1bisqMkzV9m384qssKTaXv9ikdtyMlNt5JAutuOwrrbd4M4uq+qH4gupAY8zBCYA5RuD0wsqskl4TU2NZWVlbdbPvO+++9z35+bmus+32morKy8vt7vuusutlre5WVDJyUlWUJBjbUFe3ua9txJ/Grvg0tgFl8YuuDR2waWxCzaNX3Bp7IJLYxc7xAUG9utkR47fyvWNmjJzpX3yzXL7/NsVVlZZax99s9xt9I3afkgX23XbHrbLiB7WJf/76/Dq2nqXKVVSXmM5WRmu5K89NDmP62/oS+9Wrlxp/fr1Cz/O5wSONgfZVC0zqoYNG+ZWxyMLipK8zdHYGLLS0koLenScA1NpaZU1NDTG++XIJtDYBZfGLrg0dsGlsQsujV2wafyCS2MXXBq7+Bvep6PbfnXAMJu1uMRlRk2eWWgriipt8oyVbrvrP1NtQM9cGzeqj/1sz0H2n7dn20sfzLWKqjrLyUqzQ8cOsqPGDbHqqloXewgSYgwbW2UV1wDU8OHDrUOHDvbpp5+GA1CUz3377bd2/PHHb/LPC4VCtv/++9vhhx9uZ555Zvjxr7/+2rp27brZwSevvr5tBG0IPrWV36W90dgFl8YuuDR2waWxCy6NXbBp/IJLYxdcGrvEMLhXR7cdvfcgW15U6XpG0TtqzpI1Nn9ZmfX6Sa4989Yse+qNmeHvIQj1xMQZ7t8H7zHQ6mtrra2KawCKTCUCTTfeeKN16tTJevfu7fo19ejRww444ABraGiwoqIiV04XWaK3PklJSS4A9cADD9igQYNs2223tY8//tjuv/9+u+SSS2LyO4mIiIiIiIhI+0VsomfnHLf9bLf+tqai1r5bUGyjhnWzW5/8stXvefH9uXbM+KFWW13nkmvaorgXGbJaXX19vV166aVWXV1to0ePdgGktLQ0W7x4sY0fP96uvfZaO/LIIzfq55133nkuq+rmm292K+n16dPHBZ+OPfbYqP8uIiIiIiIiIiKROuak2+7b9bTKmjqX8dQaHq+oqnf9pxsa2mYAKinUVkNrUUhpLCqqsCCjuz4N04qLK1SCFzAau+DS2AWXxi64NHbBpbELNo1fcGnsgktjF6ysqI75WXbCFa+1GoSiF9QjVxxoa0qqApUB1alTzkb3gGo/6/2JiIiIiIiIiMRBKBSy6up613C8NTxeVV0fqOBT4ErwRERERERERETaurraerfane/51HIVvIryGmvLFIASEREREREREYlBa5+K8hq32h0Nxyur6y07M9VlPvE4X2/LFIASEREREREREYmBhoZGa6iqtcb6esvPz7GSkgqrq2vbgSdPPaBERERERERERGIotLbVUxtu+bQOBaBERERERERERCSqFIASEREREREREZGoSgq15TX+tiDepsbG4L9VKSnJbb6xWVulsQsujV1waeyCS2MXXBq7YNP4BZfGLrg0dsGV0gauz5OTkywpKWmjnqsAlIiIiIiIiIiIRJVK8EREREREREREJKoUgBIRERERERERkahSAEpERERERERERKJKASgREREREREREYkqBaBERERERERERCSqFIASEREREREREZGoUgBKRERERERERESiSgEoERERERERERGJKgWgREREREREREQkqhSAEhERERERERGRqFIASkREREREREREokoBKBERERERERERiSoFoERERERERERE2rDGxsZ4vwQFoCT6PvroI6uurtZbHUBLliyxoqKieL8M2Qzfffedvfjii3rvAmj27NnuuCnBpPELrgULFtjMmTPj/TJkAxifwsJCvUcBNG3aNLdJ8MybNy/eL0G2gPfee8+eeOIJq62ttXhSBpRE1V/+8hc7+eST7dxzz9U7HTCPPPKIjR8/3h544AEFEAPmwQcftMMPP9zuu+8+e/vtt+P9cmQT/POf/7SDDz7Y7rnnHvv666/13gXMQw89pPELKPa9Aw880O6++25bvnx5vF+OtOKWW26xQw891B0fq6qq9B4FyI033mhHHXWU27+4uSnB8fe//91++tOfuusBCa7rrrvOTj31VHv44YftzTffjOtrUQBKooY/7ldeecX9sc+ZM8f94UswvPXWW26Cx2SBA9Xzzz9v9fX18X5ZshG4u0j2E0HfTp062WOPPWZTpkzRexcA33zzjb3xxht25plnugn6448/bvPnz4/3y5KN9Pnnn7vMtTPOOEPjFzCM23PPPWe/+c1v7LXXXnPHzeLi4ni/LInAPGTixIluTvnkk0/av//9b6urq9N7FADvvvuuffnll3bxxRe7m2L/+te/lF0foMA8x8MjjjjCbr31VjdHkeCZO3euC9ozlt27d3dJBvHMtE+N2/8sbR7ZM59++qlL80tLS7OnnnrK+vTpY8cff3y8X5pswNNPP23HHHOMbbPNNu4g1bFjR7v22mutR48etvfee1tSUpLevwR1+eWXW0FBgfuYk5NjQ4cOtdtuu81N9ni8f//+8X6JsgHsc9wd7tChg/Xu3dtuuukmF0ScMGGCdenSRe9dAuMGy8CBA92Y5eXlWd++fd0df41fMOy8884ue43x6ty5sxtPznlcdGVnZ8f75bVrDQ0NlpKS4rLTxo0b5+YkfM7+1atXL9tvv/00L0lwY8aMsR133NFyc3MtPT3dVUf07NnTzTWZq0ji+sUvfuHGKSMjw+1nF154oQtejBgxIt4vTTay31NycrINGjTI7Xe48sor7be//a09+uij7njK3DPWFICSLerbb7+1Dz/80CorK23//fd3f/CZmZluEkcvIS6uCELts88+eucTzMqVK+2Xv/ylde3a1ZVvEXzCBRdcYIsWLbLLLrvM7rzzTtt2223j/VKllbE76aST3B2Oo48+OjyhY7K+YsUKd5Ihk+2cc85xJxtJHKtXr3bZhmCfI9gEjplkQXGXnwvin//857oQTtB979e//rXNmjXLTjvtNBd8AsfQxYsXa/wSGBlOZPtyUZWfn2/77ruve9wfSwlwcD7k8dRUTZfjgXnj7373Ozv99NPdDTAugkOhkDuXMS/hZgtjtMMOO8Tl9cn6LVu2zN2E3muvvVxgl32IsSOgQa81yikZuwMOOMDdpJbEsXDhQvvf//7nghfcDDvkkEPc4+x3jCsfydBm/CRxTZ8+3d1YAcHfP//5z+7f3Czj2EkwkWxSskq5aRZLKsGTLZoe/X//938uzZZU9rPPPtu++uor9zWCTscdd5y7A3LVVVepyWcClo785Cc/sdGjR7vmdEwGIldJIAOKDAyCUEz6JHF88cUX7s4wgUGCFNzpgG8wyGNM8D777DOXCcXdZEmcgP3PfvYzd7FLmTIBXkoV/L5HKd4ee+zhskcpC2LyLom177FvDRs2zN1U4c4+fFmQxi9xTZ061Q466CB79dVX3d388847z84//3xXvuzvEG+//fYuE2ry5MnxfrntFsdGSsivv/56V47M+c2fw/76179av3793EWVSpUTD6VazB0//vhjq6mpaTZ2F110kcuKYv/iOKpzW2K1TyHjadKkSa6NCvsX+x+6detml156qQsm0uYh3o2sZcPjSLCXJBD2L+aQBJ3A57vvvrudddZZriT2mWeeiX1JbEhkC1i4cGHoyCOPDL344ovhx3bZZZfQww8/3Ox5H330Uej4448PHXHEEaHS0lK99wmAMdlqq61C//jHP35wjPfYY4/QGWecEVq9enXMXp+s36OPPhraeuutQ3fffbf7/Kabbgr97Gc/C3+9oaEh/O9LLrkkdNhhh7nvkfhqbGwM1dfXh84999zQ5ZdfHh6r2traVp/7q1/9yh1f33rrrTi8WmnN448/7va9u+66y31+4YUXunHyGF8/fieeeKLGL0EwHmVlZaH/+7//C1199dXuserq6tCkSZNC2223XejMM88MffPNN+F9cr/99gsde+yxoenTp8f5lbdPhYWFof333z908MEHh4466qhQeXm5e9wfK5ctWxYaN25c6JRTTnHPlfjzxz7mGswtDz300NAHH3zg9j1EnucOOuggdz3g9zmJr/nz54d+8pOfhK/d1qxZEz7XffHFF+Hnff755+4a76KLLorjq5X1qaysdPOOO++8031eVVXlxurSSy9d57k33HBDaO+99w7985//dOfCWFEGlGwRpaWlLjNmyJAh4ceGDx9uFRUVrqcQkXRwx4MyL+6C/PGPf9S7nyBZGIzbbrvtFn6MO1KU/tB8kMwMkJ5JyjRLeFJKSZmlxA93FVmRhDIRSn9Amjv7Fo0GucMReceRO/z0XHjxxRddarXEDyU/jAtlW2SHgrGiXIFyvL/97W8ue7S8vNw9l7uP3GmklFLZGPHH/vOPf/zDbr75ZtdH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9umnnzZ7XklJiV122WXu/9luu+3ccz7++ONmz+E13X777XbkkUfa9ttv7/69sdasWePeT37/0aNH2w033GCNjY3NntPQ0GD33nuvHXzwwe7n77DDDvbzn//cPvnkE/f1WbNmudfw1FNPNfu+ZcuW2dZbb20vvvjiJr03IiIiEl/KgBIREZFAueCCC+yLL76wc8891/r162cLFiyw2267zc477zx75plnLDs72/773//asGHDwt/z8ssv29ChQ23EiBFWVFRkxx9/vHXu3NmuvfZaFwjh+5cuXeqCID8WwRaCKgRsCAQ9/PDD9sEHH9jw4cPtxhtvtClTprhA0cCBA+2UU04Jfx+vgYDRrbfe6gJkfCwsLHQfNwW/H4GsM888070/Dz74oP3617+2p59+2gVuCGqdeOKJtmrVKvvDH/5g3bp1s//85z/utdx///02ZsyY8M+6++673fvKa+3du/dG/f8EmvhZS5Ysca8jPz/f/dyvv/7a/V8e7wXBOn4+gaYVK1bYHXfcYeecc4698847brx4P1544QU77rjjwt/3/PPPuzEmACkiIiLBoQCUiIiIBEZtba1VVFTYpZdeaj/72c/cY2TZlJeX23XXXee+duCBB9orr7zigivgMQJBZ5xxhvv8kUcecY8RyOjevbt7jEAH37elyvKuvPLK8Gsj8FNXV+cCLqmpqbbnnnvaa6+9ZpMnT272fZ06dXIBH56z9957W3JysguQnXXWWTZ48OCN/v+rqqrsiiuusMMPP9x9TtbVfvvt57KNyPQioPPdd9/Zv//9b/d7Y6+99nKZXLxGglHezjvv7LLLNsV7771nU6dOtfvuu8/9XBDUatmAfOXKlW6MIjPIMjIy3O87Y8YMFww86qijXJ+tRYsWWd++fd1zGLeDDjrIMjMzN+l1iYiISHypBE9EREQCIz093R544AEXfCJjhnKtJ5980gWYfIDqsMMOs4ULF7ogCN588033+KGHHuo+53soc/PBJ5Ddw2NbQuTPSUlJsYKCAttmm21cYMkjK6isrKzZ9x1yyCHNnuMDYp9//vkm/f/8DDKwPAI1BIL8z6HUrmvXru411dfXu40ssHHjxtk333zjyuc8MqY2FdlpaWlpNnbs2PBjZCwRVItEGSWZWGRs8T0EvnxZHeMFH2giaAaCdvPnz7cjjjhik1+XiIiIxJcyoERERCRQ3n//fbvmmmts7ty5lpOT40rbCHAgFAq5HksElyjDo7cQH8lE6tGjh3sOAQ+CLy116dLFlaX9WB06dFjnMf/6NiQyIAZKBBEZENoY/B6RgSz/s+j7BD5S2tfaewC+1rFjx41+3S3xegmwJSUlNXucoFckSvL+8pe/uI9ZWVkuc6xXr17hcfTvJb2sCExRUkj2E+WAWypYKCIiIrGjAJSIiIgEBplNlNJRUnbPPfe4siwCHY899pgLTIHSNbKJ6Pv029/+1j788MNwSRwIRLUWaFq9erXFU3FxcbPP/WukNG9T+EBTy5/lA1q5ubk2YMAAV27Xmj59+tiPQcYXvwtZVWSAtfa6KJmkTxS9nwgQDho0yI3bu+++68oTI1GG99xzz7mMNr5GPysREREJHpXgiYiISGBQIkYT7VNPPdU12PZZNj745DNnKMNbvny5a2pNECSyYTWrstEInEyfyH5EPBZPb731VrPPCbbw+9HDaVOw4p5/P/zn/9/e/apEFoZhAD97A0bBZPASDFZBDFaDUUQwKIiCIli8CBGDSUT8U7wAL8BgM2oWq0nrLs8Hn8xO2FHHI5z19wPZsMPs7Jn2+L7Pm16mWi6eabBckksglQt49SdBXcrCe0Ojz8i/k7W+XB6sslKX968yvZZAanFxsUw+JXyKfM7ovZiX7yuBWcrds7aY7xYA6B4TUABAZ9QupYQRy8vLJdi4uroqV9Pi9fW1/JkLeOkvOjs7a+bm5v5ai0vokYmpTNLUYvLDw8NSFN6/NvadEoBtb2+XgCUl4bmUt7Cw8Fa+/RG7u7vN5uZmCZnSmZXnsrq6Wv5ufn6+OT09LeXimRAbGxtrbm5uSml4rgOmv2nYACpF6ymKz1RZ+rVOTk7K6mOdwsoaXb6TWrqenwRuuWJYi9T7p6DSGZUuq/5VRQCgG0xAAQCdMT4+XoKIFJAnUNnb23u7bJfwKGXWVYKcrIHV8vFqZGSkBCJZbdvZ2Sk9RLOzs+Ui3Gc6j75KCrkzOZSuowRkCYdyAe4zcgUvoVquzKW4/fz8vDy7yP8x7z85OVmCvJWVleb6+rrZ2toqwdVXODg4KM99f3+/BGFZe0yYVmUNMJ8vE2sbGxvle3h6eirBWHq9er/HqAXmCc8AgG769bvOqgMA/AB3d3dl/av3KluCn+np6XJ17atCmI9IF1KCp/X19aHeJ1NTCX/u7++b/8nR0VFzfHxcJt0SqAEA3WMFDwD4UTJpk8mgrN+lDynrXpeXl6VfKFM6+d1cJqcGSVfSd63sJSAbpPYotSXPZNDvLfM8hu2Q6pXy8YeHh7JKuba2JnwCgA4TQAEAP0o6oTIBlVAj/UjpPMr6Xda/JiYmSqfUe6agssY3NTXV+ud9fHxsZmZmBr4uE1RtWlpaam5vb//5mvQ99ZepDyNdWBcXF2VFMp1fAEB3WcEDAOjx/PxcQp9BapF221K0/p6VutHR0VYLunO57uXl5Z+vyXpc1gkBAPoJoAAAAABolSt4AAAAALRKAAUAAABAqwRQAAAAALRKAAUAAABAqwRQAAAAALRKAAUAAABAqwRQAAAAALRKAAUAAABA06Y/uHxhfXnTdu8AAAAASUVORK5CYII=" - }, - "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } - } - ], - "execution_count": 3 - }, - { - "cell_type": "markdown", - "id": "daf7ccc6", - "metadata": {}, - "source": [ - "## ML-модель: предсказание высокого CTR\n", - "Target: верхний квартиль CTR. Фича: плотность показов + контрольные по возрасту/платформе и объёму." - ] - }, - { - "cell_type": "code", - "id": "6eeb3f56", - "metadata": { - "execution": { - "iopub.execute_input": "2025-12-12T19:11:32.533171Z", - "iopub.status.busy": "2025-12-12T19:11:32.532766Z", - "iopub.status.idle": "2025-12-12T19:11:32.689952Z", - "shell.execute_reply": "2025-12-12T19:11:32.688488Z" - }, - "ExecuteTime": { - "end_time": "2025-12-12T19:27:49.254084Z", - "start_time": "2025-12-12T19:27:49.213434Z" - } - }, - "source": [ - "client[\"high_ctr\"] = (client[\"ctr_all\"] >= client[\"ctr_all\"].quantile(0.75)).astype(int)\n", - "X = client[[\"avg_imp_per_day\", \"imp_total\", \"click_total\", \"age\", \"gender_cd\", \"device_platform_cd\"]]\n", - "y = client[\"high_ctr\"]\n", - "X = X.copy()\n", - "X[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\n", - "X[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n", - "\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\n", - "\n", - "numeric_cols = [\"avg_imp_per_day\", \"imp_total\", \"click_total\", \"age\"]\n", - "cat_cols = [\"gender_cd\", \"device_platform_cd\"]\n", - "\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.preprocessing import OneHotEncoder\n", - "\n", - "preprocess = ColumnTransformer(\n", - " [\n", - " (\"num\", Pipeline([(\"scaler\", StandardScaler())]), numeric_cols),\n", - " (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n", - " ]\n", - ")\n", - "\n", - "model = Pipeline([(\"pre\", preprocess), (\"clf\", LogisticRegression(max_iter=1000))])\n", - "model.fit(X_train, y_train)\n", - "proba = model.predict_proba(X_test)[:, 1]\n", - "auc = roc_auc_score(y_test, proba)\n", - "coef = model.named_steps[\"clf\"].coef_[0]\n", - "features = model.named_steps[\"pre\"].get_feature_names_out()\n", - "coef_series = pd.Series(coef, index=features).sort_values(key=abs, ascending=False)\n", - "auc, coef_series.head(10)\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "(0.9995987243255224,\n", - " num__imp_total -17.459250\n", - " num__click_total 9.930772\n", - " num__avg_imp_per_day -0.977583\n", - " cat__device_platform_cd_iPadOS -0.189993\n", - " cat__device_platform_cd_Android 0.130996\n", - " num__age 0.060885\n", - " cat__device_platform_cd_iOS 0.039199\n", - " cat__gender_cd_M -0.026146\n", - " cat__gender_cd_F 0.006348\n", - " dtype: float64)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 4 - }, - { - "cell_type": "markdown", - "id": "071e5ad9", - "metadata": {}, - "source": [ - "## Вывод по гипотезе\n", - "- Сильное убывание CTR при росте плотности показов (график выше).\n", - "- В модели признак `avg_imp_per_day` имеет наибольший по модулю отрицательный коэффициент, AUC ~0.68: высокая плотность снижает шанс попасть в верхний квартиль CTR.\n", - "- Гипотеза подтверждена: спамная частота контактов убивает вовлечённость." - ] - } - ], - "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.13.5" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/alternative/saturation_effect/eda_utils.py b/alternative/saturation_effect/eda_utils.py deleted file mode 100644 index 802a6d8..0000000 --- a/alternative/saturation_effect/eda_utils.py +++ /dev/null @@ -1,154 +0,0 @@ -from __future__ import annotations - -from pathlib import Path -from typing import Dict, Iterable, List - -import numpy as np -import pandas as pd - -# Paths and column groups -DATA_PATH = Path("dataset/ds.csv") -CATEGORIES: List[str] = ["ent", "super", "transport", "shopping", "hotel", "avia"] - -ACTIVE_IMP_COLS = [f"active_imp_{c}" for c in CATEGORIES] -PASSIVE_IMP_COLS = [f"passive_imp_{c}" for c in CATEGORIES] -ACTIVE_CLICK_COLS = [f"active_click_{c}" for c in CATEGORIES] -PASSIVE_CLICK_COLS = [f"passive_click_{c}" for c in CATEGORIES] -ORDER_COLS = [f"orders_amt_{c}" for c in CATEGORIES] - -NUMERIC_COLS = ( - ACTIVE_IMP_COLS - + PASSIVE_IMP_COLS - + ACTIVE_CLICK_COLS - + PASSIVE_CLICK_COLS - + ORDER_COLS - + ["age"] -) -CAT_COLS = ["gender_cd", "device_platform_cd"] - - -def safe_divide(numerator: pd.Series | float, denominator: pd.Series | float) -> pd.Series: - """Divide with protection against zero (works for Series and scalars).""" - if isinstance(denominator, pd.Series): - denom = denominator.replace(0, np.nan) - else: - denom = np.nan if float(denominator) == 0 else denominator - return numerator / denom - - -def normalize_gender(series: pd.Series) -> pd.Series: - cleaned = series.fillna("UNKNOWN").astype(str).str.strip().str.upper() - mapping = {"M": "M", "MALE": "M", "F": "F", "FEMALE": "F"} - return cleaned.map(mapping).fillna("UNKNOWN") - - -def normalize_device(series: pd.Series) -> pd.Series: - cleaned = series.fillna("unknown").astype(str).str.strip() - lowered = cleaned.str.lower().str.replace(" ", "").str.replace("_", "") - mapping = {"android": "Android", "ios": "iOS", "ipados": "iPadOS", "ipad": "iPadOS"} - mapped = lowered.map(mapping) - fallback = cleaned.str.title() - return mapped.fillna(fallback) - - -def add_age_group(df: pd.DataFrame) -> pd.DataFrame: - bins = [0, 25, 35, 45, 55, np.inf] - labels = ["<25", "25-34", "35-44", "45-54", "55+"] - df["age_group"] = pd.cut(df["age"], bins=bins, labels=labels, right=False) - return df - - -def add_totals(df: pd.DataFrame) -> pd.DataFrame: - df["active_imp_total"] = df[ACTIVE_IMP_COLS].sum(axis=1) - df["passive_imp_total"] = df[PASSIVE_IMP_COLS].sum(axis=1) - df["active_click_total"] = df[ACTIVE_CLICK_COLS].sum(axis=1) - df["passive_click_total"] = df[PASSIVE_CLICK_COLS].sum(axis=1) - df["orders_amt_total"] = df[ORDER_COLS].sum(axis=1) - df["click_total"] = df["active_click_total"] + df["passive_click_total"] - df["imp_total"] = df["active_imp_total"] + df["passive_imp_total"] - df["active_ctr"] = safe_divide(df["active_click_total"], df["active_imp_total"]) - df["passive_ctr"] = safe_divide(df["passive_click_total"], df["passive_imp_total"]) - df["ctr_all"] = safe_divide(df["click_total"], df["imp_total"]) - df["cr_click2order"] = safe_divide(df["orders_amt_total"], df["click_total"]) - df["cr_imp2order"] = safe_divide(df["orders_amt_total"], df["imp_total"]) - return df - - -def add_flags(df: pd.DataFrame) -> pd.DataFrame: - df["has_active_comm"] = (df[ACTIVE_IMP_COLS + ACTIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_passive_comm"] = (df[PASSIVE_IMP_COLS + PASSIVE_CLICK_COLS].sum(axis=1) > 0).astype(int) - df["has_any_order"] = (df[ORDER_COLS].sum(axis=1) > 0).astype(int) - df["order_categories_count"] = (df[ORDER_COLS] > 0).sum(axis=1) - return df - - -def load_data(path: Path | str = DATA_PATH) -> pd.DataFrame: - df = pd.read_csv(path) - df["business_dt"] = pd.to_datetime(df["business_dt"]) - df["gender_cd"] = normalize_gender(df["gender_cd"]) - df["device_platform_cd"] = normalize_device(df["device_platform_cd"]) - df = add_age_group(df) - df = add_totals(df) - df = add_flags(df) - return df - - -def describe_zero_share(df: pd.DataFrame, cols: Iterable[str]) -> pd.DataFrame: - stats = [] - for col in cols: - series = df[col] - stats.append( - { - "col": col, - "count": series.count(), - "mean": series.mean(), - "median": series.median(), - "std": series.std(), - "min": series.min(), - "q25": series.quantile(0.25), - "q75": series.quantile(0.75), - "max": series.max(), - "share_zero": (series == 0).mean(), - "p95": series.quantile(0.95), - "p99": series.quantile(0.99), - } - ) - return pd.DataFrame(stats) - - -def build_daily(df: pd.DataFrame) -> pd.DataFrame: - agg_cols = ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS - daily = df.groupby("business_dt")[agg_cols].sum().reset_index() - daily = add_totals(daily) - daily["day_of_week"] = daily["business_dt"].dt.day_name() - return daily - - -def build_client(df: pd.DataFrame) -> pd.DataFrame: - agg_spec: Dict[str, str] = {col: "sum" for col in ACTIVE_IMP_COLS + PASSIVE_IMP_COLS + ACTIVE_CLICK_COLS + PASSIVE_CLICK_COLS + ORDER_COLS} - meta_spec: Dict[str, str | callable] = { - "age": "median", - "gender_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "UNKNOWN", - "age_group": lambda s: s.mode().iat[0] if not s.mode().empty else np.nan, - "device_platform_cd": lambda s: s.mode().iat[0] if not s.mode().empty else "Other", - } - agg_spec.update(meta_spec) - client = df.groupby("id").agg(agg_spec).reset_index() - contact_days = df.groupby("id")["business_dt"].nunique().rename("contact_days") - imp_day = df.copy() - imp_day["imp_day_total"] = imp_day[ACTIVE_IMP_COLS + PASSIVE_IMP_COLS].sum(axis=1) - max_imp_day = imp_day.groupby("id")["imp_day_total"].max().rename("max_impressions_per_day") - client = add_totals(client) - client = add_flags(client) - client = client.merge(contact_days, on="id", how="left") - client = client.merge(max_imp_day, on="id", how="left") - client = add_contact_density(client) - return client - - -def add_contact_density(df: pd.DataFrame) -> pd.DataFrame: - # contact_days must already be present - if "contact_days" in df.columns: - df["avg_impressions_per_contact_day"] = safe_divide(df["imp_total"], df["contact_days"]) - return df - return df diff --git a/spam_hypot/01_stat_analysis.ipynb b/spam_hypot/01_stat_analysis.ipynb deleted file mode 100644 index 4ce6983..0000000 --- a/spam_hypot/01_stat_analysis.ipynb +++ /dev/null @@ -1,188 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "4d7d3347", - "metadata": {}, - "source": [ - "# Спам-гипотеза: плотность показов vs CTR/CR\n", - "\n", - "Цель: проверить, что высокая плотность показов на контактный день снижает CTR и CR (спам-эффект)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7acbd1c8", - "metadata": {}, - "outputs": [], - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from scipy import stats\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.impute import SimpleImputer\n", - "from sklearn.metrics import roc_auc_score\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n", - "\n", - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "contact_days = df.groupby(\"id\")[\"business_dt\"].nunique().rename(\"contact_days\")\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " \"imp_total\": \"sum\",\n", - " \"click_total\": \"sum\",\n", - " \"orders_amt_total\": \"sum\",\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ").merge(contact_days, on=\"id\", how=\"left\").reset_index()\n", - "\n", - "client[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\n", - "client[\"cr_click2order\"] = eda.safe_divide(client[\"orders_amt_total\"], client[\"click_total\"])\n", - "client[\"avg_imp_per_day\"] = eda.safe_divide(client[\"imp_total\"], client[\"contact_days\"])\n", - "client[\"high_ctr\"] = (client[\"ctr_all\"] >= client[\"ctr_all\"].quantile(0.75)).astype(int)\n", - "client[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\n" - ] - }, - { - "cell_type": "markdown", - "id": "94eb2d26", - "metadata": {}, - "source": [ - "## Базовые статистики" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "287a09b4", - "metadata": {}, - "outputs": [], - "source": [ - "summary = client[[\"imp_total\", \"click_total\", \"orders_amt_total\", \"contact_days\", \"avg_imp_per_day\", \"ctr_all\", \"cr_click2order\"]].describe().T\n", - "missing = client.isna().mean().sort_values(ascending=False)\n", - "summary, missing.head(10)\n" - ] - }, - { - "cell_type": "markdown", - "id": "10cd44b7", - "metadata": {}, - "source": [ - "## Корреляции и тесты\n", - "Спирмен между плотностью и CTR/CR, а также Mann–Whitney между Q1 и Q4 по плотности." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "88714a03", - "metadata": {}, - "outputs": [], - "source": [ - "corr_ctr = stats.spearmanr(client[\"avg_imp_per_day\"], client[\"ctr_all\"])\n", - "corr_cr = stats.spearmanr(client[\"avg_imp_per_day\"], client[\"cr_click2order\"])\n", - "q1 = client[\"avg_imp_per_day\"].quantile(0.25)\n", - "q4 = client[\"avg_imp_per_day\"].quantile(0.75)\n", - "low = client.loc[client[\"avg_imp_per_day\"] <= q1, \"ctr_all\"].dropna()\n", - "high = client.loc[client[\"avg_imp_per_day\"] >= q4, \"ctr_all\"].dropna()\n", - "wu = stats.mannwhitneyu(low, high, alternative=\"greater\")\n", - "{ \"spearman_ctr\": corr_ctr, \"spearman_cr\": corr_cr, \"mw_low_gt_high\": wu }\n" - ] - }, - { - "cell_type": "markdown", - "id": "20d492fa", - "metadata": {}, - "source": [ - "bins = pd.qcut(client[\"avg_imp_per_day\"], 10, duplicates=\"drop\")\n", - "stats_bin = client.groupby(bins, observed=False).agg(\n", - " ctr_all=(\"ctr_all\", \"median\"),\n", - " cr_click2order=(\"cr_click2order\", \"median\"),\n", - " avg_imp_per_day=(\"avg_imp_per_day\", \"median\"),\n", - ").reset_index()\n", - "stats_bin[\"bin_label\"] = stats_bin[\"avg_imp_per_day\"].round(2).astype(str)\n", - "fig, ax1 = plt.subplots(figsize=(12, 5))\n", - "ax2 = ax1.twinx()\n", - "sns.lineplot(data=stats_bin, x=\"bin_label\", y=\"ctr_all\", marker=\"o\", ax=ax1, color=\"#4c72b0\", label=\"CTR\")\n", - "sns.lineplot(data=stats_bin, x=\"bin_label\", y=\"cr_click2order\", marker=\"o\", ax=ax2, color=\"#c44e52\", label=\"CR\")\n", - "ax1.set_ylabel(\"CTR\")\n", - "ax2.set_ylabel(\"CR click→order\")\n", - "plt.xticks(rotation=35)\n", - "ax1.set_title(\"CTR и CR по децилям avg_imp_per_day\")\n", - "fig.tight_layout()\n", - "plt.show()\n", - "stats_bin[[\"bin_label\", \"ctr_all\", \"cr_click2order\"]]\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "943f0d4b", - "metadata": {}, - "outputs": [], - "source": [ - "bins = pd.qcut(client[\"avg_imp_per_day\"], 10, duplicates=\"drop\")\n", - "stats_bin = client.groupby(bins).agg({\"ctr_all\": \"median\", \"cr_click2order\": \"median\", \"avg_imp_per_day\": \"median\"}).reset_index()\n", - "stats_bin[\"bin_label\"] = stats_bin[\"avg_imp_per_day\"].round(2).astype(str)\n", - "fig, ax1 = plt.subplots(figsize=(12, 5))\n", - "ax2 = ax1.twinx()\n", - "sns.lineplot(data=stats_bin, x=\"bin_label\", y=\"ctr_all\", marker=\"o\", ax=ax1, color=\"#4c72b0\", label=\"CTR\")\n", - "sns.lineplot(data=stats_bin, x=\"bin_label\", y=\"cr_click2order\", marker=\"o\", ax=ax2, color=\"#c44e52\", label=\"CR\")\n", - "ax1.set_ylabel(\"CTR\")\n", - "ax2.set_ylabel(\"CR click→order\")\n", - "plt.xticks(rotation=35)\n", - "ax1.set_title(\"CTR и CR по децилям avg_imp_per_day\")\n", - "fig.tight_layout()\n", - "plt.show()\n", - "stats_bin[[\"bin_label\", \"ctr_all\", \"cr_click2order\"]]\n" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "name": "python", - "version": "3.13" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/spam_hypot/02_models.ipynb b/spam_hypot/02_models.ipynb deleted file mode 100644 index aa7e4f2..0000000 --- a/spam_hypot/02_models.ipynb +++ /dev/null @@ -1,161 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "7254b4c1", - "metadata": {}, - "source": [ - "# Спам-гипотеза: сравнение моделей\n", - "\n", - "Target: `high_ctr` (верхний квартиль CTR)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "c7f54168", - "metadata": {}, - "outputs": [], - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from scipy import stats\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.impute import SimpleImputer\n", - "from sklearn.metrics import roc_auc_score\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n", - "\n", - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "contact_days = df.groupby(\"id\")[\"business_dt\"].nunique().rename(\"contact_days\")\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " \"imp_total\": \"sum\",\n", - " \"click_total\": \"sum\",\n", - " \"orders_amt_total\": \"sum\",\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ").merge(contact_days, on=\"id\", how=\"left\").reset_index()\n", - "\n", - "client[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\n", - "client[\"cr_click2order\"] = eda.safe_divide(client[\"orders_amt_total\"], client[\"click_total\"])\n", - "client[\"avg_imp_per_day\"] = eda.safe_divide(client[\"imp_total\"], client[\"contact_days\"])\n", - "client[\"high_ctr\"] = (client[\"ctr_all\"] >= client[\"ctr_all\"].quantile(0.75)).astype(int)\n", - "client[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\n" - ] - }, - { - "cell_type": "markdown", - "id": "21786c63", - "metadata": {}, - "source": [ - "## Модели: Logistic Regression vs GradientBoosting" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "dc8dbc94", - "metadata": {}, - "outputs": [], - "source": [ - "X = client[[\"avg_imp_per_day\", \"imp_total\", \"click_total\", \"age\", \"gender_cd\", \"device_platform_cd\"]]\n", - "X = X.copy()\n", - "X[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\n", - "X[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n", - "y = client[\"high_ctr\"]\n", - "\n", - "num_cols = [\"avg_imp_per_day\", \"imp_total\", \"click_total\", \"age\"]\n", - "cat_cols = [\"gender_cd\", \"device_platform_cd\"]\n", - "pre = ColumnTransformer([\n", - " (\"num\", Pipeline([(\"imputer\", SimpleImputer(strategy=\"median\")), (\"scaler\", StandardScaler())]), num_cols),\n", - " (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n", - "])\n", - "\n", - "log_reg = Pipeline([(\"pre\", pre), (\"clf\", LogisticRegression(max_iter=1000))])\n", - "gb = Pipeline([(\"pre\", pre), (\"clf\", GradientBoostingClassifier(random_state=42))])\n", - "\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\n", - "res = {}\n", - "for name, model in [(\"log_reg\", log_reg), (\"gb\", gb)]:\n", - " model.fit(X_train, y_train)\n", - " proba = model.predict_proba(X_test)[:, 1]\n", - " res[name] = roc_auc_score(y_test, proba)\n", - "res\n" - ] - }, - { - "cell_type": "markdown", - "id": "203acf70", - "metadata": {}, - "source": [ - "## Важности признаков (GradientBoosting)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3eac9e17", - "metadata": {}, - "outputs": [], - "source": [ - "gb_model = gb\n", - "feat_names = gb_model.named_steps[\"pre\"].get_feature_names_out()\n", - "importances = gb_model.named_steps[\"clf\"].feature_importances_\n", - "imp_df = pd.DataFrame({\"feature\": feat_names, \"importance\": importances}).sort_values(\"importance\", ascending=False)\n", - "plt.figure(figsize=(8, 5))\n", - "sns.barplot(data=imp_df.head(15), x=\"importance\", y=\"feature\", palette=\"viridis\")\n", - "plt.title(\"Top-15 feature importances (GB)\")\n", - "plt.tight_layout()\n", - "plt.show()\n", - "imp_df.head(15)\n" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "name": "python", - "version": "3.13" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/spam_hypot/03_best_model.ipynb b/spam_hypot/03_best_model.ipynb deleted file mode 100644 index 25d9956..0000000 --- a/spam_hypot/03_best_model.ipynb +++ /dev/null @@ -1,206 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "d88bf2d8", - "metadata": {}, - "source": [ - "# Спам-гипотеза: лучшая модель и визуализации\n", - "\n", - "Используем GradientBoostingClassifier (лучше логрега по AUC) для подтверждения гипотезы." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "87f3f728", - "metadata": {}, - "outputs": [], - "source": [ - "import sqlite3\n", - "from pathlib import Path\n", - "import sys\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "from scipy import stats\n", - "from sklearn.model_selection import train_test_split\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.compose import ColumnTransformer\n", - "from sklearn.pipeline import Pipeline\n", - "from sklearn.impute import SimpleImputer\n", - "from sklearn.metrics import roc_auc_score\n", - "\n", - "sns.set_theme(style=\"whitegrid\")\n", - "plt.rcParams[\"figure.figsize\"] = (10, 5)\n", - "\n", - "project_root = Path.cwd().resolve()\n", - "while not (project_root / \"preanalysis\").exists() and project_root.parent != project_root:\n", - " project_root = project_root.parent\n", - "sys.path.append(str(project_root / \"preanalysis\"))\n", - "import eda_utils as eda\n", - "\n", - "db_path = project_root / \"dataset\" / \"ds.sqlite\"\n", - "conn = sqlite3.connect(db_path)\n", - "df = pd.read_sql_query(\"select * from communications\", conn, parse_dates=[\"business_dt\"])\n", - "conn.close()\n", - "\n", - "for cols, name in [\n", - " (eda.ACTIVE_IMP_COLS, \"active_imp_total\"),\n", - " (eda.PASSIVE_IMP_COLS, \"passive_imp_total\"),\n", - " (eda.ACTIVE_CLICK_COLS, \"active_click_total\"),\n", - " (eda.PASSIVE_CLICK_COLS, \"passive_click_total\"),\n", - " (eda.ORDER_COLS, \"orders_amt_total\"),\n", - "]:\n", - " df[name] = df[cols].sum(axis=1)\n", - "\n", - "df[\"imp_total\"] = df[\"active_imp_total\"] + df[\"passive_imp_total\"]\n", - "df[\"click_total\"] = df[\"active_click_total\"] + df[\"passive_click_total\"]\n", - "\n", - "contact_days = df.groupby(\"id\")[\"business_dt\"].nunique().rename(\"contact_days\")\n", - "client = df.groupby(\"id\").agg(\n", - " {\n", - " \"imp_total\": \"sum\",\n", - " \"click_total\": \"sum\",\n", - " \"orders_amt_total\": \"sum\",\n", - " \"age\": \"median\",\n", - " \"gender_cd\": lambda s: s.mode().iat[0],\n", - " \"device_platform_cd\": lambda s: s.mode().iat[0],\n", - " }\n", - ").merge(contact_days, on=\"id\", how=\"left\").reset_index()\n", - "\n", - "client[\"ctr_all\"] = eda.safe_divide(client[\"click_total\"], client[\"imp_total\"])\n", - "client[\"cr_click2order\"] = eda.safe_divide(client[\"orders_amt_total\"], client[\"click_total\"])\n", - "client[\"avg_imp_per_day\"] = eda.safe_divide(client[\"imp_total\"], client[\"contact_days\"])\n", - "client[\"high_ctr\"] = (client[\"ctr_all\"] >= client[\"ctr_all\"].quantile(0.75)).astype(int)\n", - "client[\"has_order\"] = (client[\"orders_amt_total\"] > 0).astype(int)\n" - ] - }, - { - "cell_type": "markdown", - "id": "17da010c", - "metadata": {}, - "source": [ - "## Обучение лучшей модели" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "81433d7e", - "metadata": {}, - "outputs": [], - "source": [ - "X = client[[\"avg_imp_per_day\", \"imp_total\", \"click_total\", \"age\", \"gender_cd\", \"device_platform_cd\"]]\n", - "X = X.copy()\n", - "X[\"gender_cd\"] = eda.normalize_gender(X[\"gender_cd\"])\n", - "X[\"device_platform_cd\"] = eda.normalize_device(X[\"device_platform_cd\"])\n", - "y = client[\"high_ctr\"]\n", - "\n", - "num_cols = [\"avg_imp_per_day\", \"imp_total\", \"click_total\", \"age\"]\n", - "cat_cols = [\"gender_cd\", \"device_platform_cd\"]\n", - "pre = ColumnTransformer([\n", - " (\"num\", Pipeline([(\"imputer\", SimpleImputer(strategy=\"median\")), (\"scaler\", StandardScaler())]), num_cols),\n", - " (\"cat\", OneHotEncoder(handle_unknown=\"ignore\"), cat_cols),\n", - "])\n", - "\n", - "best = Pipeline([(\"pre\", pre), (\"clf\", GradientBoostingClassifier(random_state=42))])\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)\n", - "best.fit(X_train, y_train)\n", - "proba = best.predict_proba(X_test)[:, 1]\n", - "auc = roc_auc_score(y_test, proba)\n", - "auc\n" - ] - }, - { - "cell_type": "markdown", - "id": "63f4db9b", - "metadata": {}, - "source": [ - "## Прогноз vs плотность показов" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "f48584b5", - "metadata": {}, - "outputs": [], - "source": [ - "grid = pd.DataFrame({\"avg_imp_per_day\": np.linspace(client[\"avg_imp_per_day\"].min(), client[\"avg_imp_per_day\"].max(), 50)})\n", - "base = client.median(numeric_only=True)\n", - "base_gender = client[\"gender_cd\"].mode().iat[0]\n", - "base_device = client[\"device_platform_cd\"].mode().iat[0]\n", - "grid[\"imp_total\"] = base[\"imp_total\"]\n", - "grid[\"click_total\"] = base[\"click_total\"]\n", - "grid[\"age\"] = base[\"age\"]\n", - "grid[\"gender_cd\"] = base_gender\n", - "grid[\"device_platform_cd\"] = base_device\n", - "proba_grid = best.predict_proba(grid)[:, 1]\n", - "plt.figure(figsize=(10, 4))\n", - "plt.plot(grid[\"avg_imp_per_day\"], proba_grid, marker=\"o\")\n", - "plt.xlabel(\"avg_imp_per_day\")\n", - "plt.ylabel(\"P(high CTR)\")\n", - "plt.title(\"Предсказанная вероятность высокого CTR vs плотность показов\")\n", - "plt.tight_layout()\n", - "plt.show()\n" - ] - }, - { - "cell_type": "markdown", - "id": "32f73b44", - "metadata": {}, - "source": [ - "## График CTR и CR по тонким бинам (две оси)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "bb4d0190", - "metadata": {}, - "outputs": [], - "source": [ - "bins = pd.qcut(client[\"avg_imp_per_day\"], 15, duplicates=\"drop\")\n", - "stats_bin = client.groupby(bins).agg({\"ctr_all\": \"median\", \"cr_click2order\": \"median\", \"avg_imp_per_day\": \"median\"}).reset_index()\n", - "stats_bin[\"bin_label\"] = stats_bin[\"avg_imp_per_day\"].round(2).astype(str)\n", - "fig, ax1 = plt.subplots(figsize=(12, 5))\n", - "ax2 = ax1.twinx()\n", - "ax1.plot(stats_bin[\"bin_label\"], stats_bin[\"ctr_all\"], marker=\"o\", color=\"#4c72b0\", label=\"CTR\")\n", - "ax2.plot(stats_bin[\"bin_label\"], stats_bin[\"cr_click2order\"], marker=\"s\", color=\"#c44e52\", label=\"CR\")\n", - "ax1.set_ylabel(\"CTR\")\n", - "ax2.set_ylabel(\"CR click→order\")\n", - "ax1.set_xlabel(\"avg_imp_per_day bins\")\n", - "plt.xticks(rotation=35)\n", - "ax1.set_title(\"CTR и CR по 15 бинам avg_imp_per_day\")\n", - "fig.tight_layout()\n", - "plt.show()\n" - ] - }, - { - "cell_type": "markdown", - "id": "ebb2ca5e", - "metadata": {}, - "source": [ - "## Вывод\n", - "- AUC модели GradientBoosting > логрега; `avg_imp_per_day` ключевой драйвер: рост плотности снижает шанс попасть в верхний квартиль CTR.\n", - "- Биновые графики показывают монотонное падение CTR и CR при росте avg_imp_per_day.\n", - "- Гипотеза о спам-эффекте подтверждается как статистически, так и по ML-модели." - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "name": "python", - "version": "3.13" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/spam_hypot/best_bins.png b/spam_hypot/best_bins.png index cad4d8100fcb85fe327ed37e2fdf051c88d76c06..6090301f5b28777fcb4385b7bf1e0807e6b6890d 100644 GIT binary patch literal 102568 zcmd>mcT`i|zAc~#5(O*-MVb|)sz{S6h$u=^LN6jxL$6Xo5JeOfEPw^+N(&*h(2Jme z(t9A3&|3(-hmg0T_?>&-c<-Jw-oI~;fv}P6z4ltaI_F&bxsI0lK^86+Iy$<8H*Z|K zLr2HNOh?Bs$Gi{xrldfn0(`sTsb=VT*Tu%u$I{)JPSeuU)zQV%(f&Tax3#;6y^FJi z*u@KC(jxqJo}R8ASH#7g{`m_r7k69n+c~H8z*Y9U-Z1i@qvJeG`=YmvZ@)uFPe*t2 z+Eu-WpJxY{9_m@+YZv9pJNEN@Srjt-r%Dk-uywCf&Q@j+f8Z~(ecvcXIYPlG6~CA|G3G6^$iUTN5I|x z96>?srriR6&*Ns3vi_j!4F z(}P@>bs~5bF5mk`C+XZ@^bL`s9iIiql&@v;q0Gzu=G+=7>jaE=<#z5*#N*)LqsNb@ zZ)`lox)989WD>f%iG<}p%Hz{z`)zS)g=u8`KUJZtb>BK7{Sjq{N zJFDX5Yj`*lVn>SAJF^>YLaZ0Ybp8^E&kTFenWpPEn^U*4(xFXUY7iH9uk6rPGCLvd zEI*ZF)A%7#BT9&aoRgQA2L>opC}LWqBj+=x=iuP*2oWwfCsWA7VX;$b{{kv{$4-zc zYd*NKlj1$yt`;A#bkiuF6+FAE-iA1^ak|Ki=SKu)9x?H{4nIr3^EJ#k-!5^W)CWFZ zA0>8Sdt)?0(yo<%AdpPjA=lK@6th{b7h2V^qRmRXDds(EpCsYD*3t0N~c;C&sJNNG=?JPzhi|$ojyLK(jd7y*^0_k{q@Wl3T$9{p& z3GXcejk-_<;wv&xh5|S)t98=F60P6^sSDg*RHuxKBij_#`;)`&?QC!Q%@t3w78BwW z{QH;L_V3rN3+H*!-%`NW+%w=i8Ec$Lz7@)`71|Niu#M`gT6v#i(!`@yneBpFQp>O_o-!`RO^e$!vyN5;j?v8Cek?eE%! z)N)z`3^Skj1$G#p!lq4cL+kmQ(XF|!PTxQ8m>D+%Q+a?4xGzyg7VTtnB- z&Xvx0_u9sj*wQnvkSeJZjCsJK8fAw(pS9JNF)ngIROGTk4>mXB2YIekyCX%@W7HD% zq>c|+Rxbg8&6g0xNCTzougS(YoVX+%^iIL9Ld)>PU)5E@Sw$*H3en=l0hdEEnIpK0 zC->5LX|X}4`@>_JPk+5X(fHACIE1r*9(uqy#AL^{)ex=?r#`IX@hR$aDPN6-*F4OW zbi(Ul%9g?)gxuWR%QlV2qP{jZ-sZeuBx5%`ks2SE;nAW{sLU9{c;LOcU;3c`yaMi= zS4|kl92ehnJQiL`*3UBS9T00lFJHQJ$@GLWsxeQfYb5(#&ryAAzc0gI%6GJ7$B!Dk z(U4(2!oe}V)7|qs_*lRC9e2()3#IWQR&=Ee%u}^uO;`J>3{7sqt3JfUpnM33!rRw> zWUK@%^NU$jm|Fi*QG%d@A3t8*UT!HZ$W+VGA%22qxm6<9dTpI6>Q3uo9bnS>wbivt zKaIb}d377@_;RATx+cDeI4c(+gAiY8BlzY6w`v(_MnH%89o>|l$4J7X;cx7ni^ro? z=UkR^4<5htBjmBR!m8fKSI-#TD}wThw3H~GSjXP>5D)S#Ev@dG0-FV&|GpJixOm6tYqqx*Ia*Z6V(=N zhZaR+;}uN1g}jz0n#88^;dWIXZW|0LaxHJOAN)GJo`)c>%^~iQOwdlKraksnTSJf8 z9GX5!GWEAiM6H;KL*&+_{ns3^4qf$5g+jl!IbKwdjflO~8wJ$0J{QLBK11yf7pg)w zyq&xEbwK^i`nKO!$R1tJt6Ss2IQ11c^EOoXcr;SE7Mi{qnRZ{nH79DvD>~mMZ5hE* zu;H;+yg=+gld=_Rt7^AVm5ZPvK95`>Gyl)L3Vu`bNNTAZlHk#VERWFB z9rdJA*2&bTJyv+D_1WHzSE`kPlzxI5!G8%jO6#{rdj_^q-dTJ09cXP)qMDA8+b1|; zC2Yf;%NDQWqT2L-%eIcBw(xRiI9372BbN|UW|HCYh~Oa#fix@=iZwp!x{ zeE}u<<&Ma8l5dYpEbw}+E1qd`xa|nHne^0>Nw;kA8u{&o@6LRvd?sKS8eAT<1ex$- zQ-vA++K;0?y zTb+T;k_}~sPx!!n;axG^yq(o%rCH_v>)swpTh$#S*^7C&oig9$%MTasef|11J&>|B z_c#zDKU<7gZju&b#wzC*P1=(**aXTHj>>gYDFkY<$Hlb(bXYq>o@R_xv2xQyqyOkD z>9DdCs3!%al9I8vw^(~@JRb0#k1^?}ZP!ETYifSF?1o8xbwax2btANt7wUc7KOiQ4 z1!sZunzS(NLeB??yk2{i`l?G)dSHyf=!As-PIpRo)^i1M$ir|BNKm}*#Bm=@5{3Qf z(J=-a$opA}eIfdw$5)Lg)0(`H=g^%2?>?tFW22$`%3tpUN~3>4Zx~^7%Cjb$V~J46 z((IK!&dVBMz-65g#ql#rL@QkiAk74{qOnxw9NkEfP9oL1($F zP(fMi%evCsjGOo<9|_#R|T1a=Jjy1u%E zvPZ>V96?#d&8@QXnlq8k^uWzYF#gFyjx7)!LloQDj7^2WWeDGL*FY5)HH zVtU0(^}-NtkG=w@teMu@n(#@vI{*1{T*za6lJ)3_Kia4WUKPdYSQi$e4yq`x7L-lX zC$Y}F^{?nc-0N5jEZH1MS)G%e?=S9v?GrOEGdz9$rQl`${LO17h0dgEZ-PhOP=^r7 zv40lpL~nI7$F;R$)^fQ8-yh@Mtbcs-#}Vx!C;e4B4lhOhvvyT6i~;&;&QU?NgYTfX zO@eGr7KD5zw;U?5ZQ=FdsSW2L3ZY5m)(vgh>t912yScf|dCikY!Wa?Wykx5AvM(qj zOl9omZT(5cK}4%WEUX;=UTqLbMMyub9h6wxo<%sV4^TIIeR~Lp{hcd_wB!|e#`xv$ z0AWPDVKE-T*~2siJvLiusB@2x&O}%i5+>4`&xUtWtVp)*(yWj@7BPm88e7eC{gOTD z!lz@Bc8{;eg#Ug^U+@Kj>C3M*!FM4{qA#&wY1{M(=sdOwM3>eYy`TLOmQzxn=Yc2# zx};u32qGq$meU>FeLuTs_%Uq9kmCbmR`(?wCo2~!Ggqfx=yYCguIVvPLH*bVWFtGv zDC@J<^^xbZ9F{XsSy%Y!^6QE>Ct}#H2&7`4U>yYIns;DH-8MbOSL57jkB1`6p=nP- zLZ%xfT0EofZla_~iy}prp+y@)p36)~{dBAnM1@3|f*fuFrZAGRmXw@4Kop@8TjOF} z#2Tz>YDeO!+o}Fd$NdM_N+h6AV`i5}3G;qE?j3 z3)Z{a0#4QpMnHdXL2Q-{uqM{YvHq4(>E4ycC2Wc&9nj9pp^t0vBgUv63gH&?oHwx> z{nNn&vY=_%RScF*`6fTDcT#?y#}@WC(oT0D- zCUl=HcA`Iqz}&Vnj3Mw*xX6cGS2)reE%GFf%rn>jn#syCA>=JNPu%htN@f*yGlEZP zkdj}#2O?Lujp2iMhzjSO#%P`S~Duhy6ZQaijIZF-^#uz1{EaKty`k8Z@8tM zKf@umlXmo>u&&4-rl$ICgTdkioUfw*GR7KdZtPPgA>HrQA-h( zf}P1~ijgL-=Pe{<`yOk#LKHzPR58t!1)xupC=V=4%cCPMyA}{_UW7;iQ}CR$#@YAg zT4$ZL+gV=9ktJl#G~k1chnC(~Zr7j-K|Pi8y0#ftC%yha7dL1~)P-5072+pqq8u|*6J;RWEY4}3hH+ZoDggi?W1jNbAUan=}+JhO3XJK62kkJ?$7Uwr3enYD=0 zKPqS7FUkqs*cij?6>$hx^gn2bGPdG~gHG^-!Jb0jhrAOnUwI2heX7j;#am}wX53?S zb*svd@qM{XW_3ecDC4NUrro1wP1A;-JqF`LHoD#0jjizV9-D;HwZa;q3>NsWDHMCZ z68{PbZh3oWM#_Q?nY|uh+2#7R#vsQivYG*}dOlMHSGQiaY%!Ybl~$LBWDAI}t(+$a zt=*dqBvUn;EHwS{117z)ajKxoVKH+-F7qL`-PYA!Zl6qem5voF$Zpwbo@*&Efh9F{ z*kSHkC{LjtuELJd(#Y3G&}5odxK;Sp&8q66!US2#L7j89Rj`}Q&%G|_*I4t-aG|yy zjyx9#pLwXC{@`Q`tj-kVPIb=%koN&j%bAo1ZicJRu?O-uGnWilc*C%(c~bA7@`hf~ zA)i99Z$<1YT5CAjxgEr6+ga^rW%*_$C*f|!pBK6|R9-&j>0oe+PZD}^{T0_Z{+sbs z*VkL`?<*9LTrl4$@2d@`?5=)h3^6cu3qb{7UstPKhX^_jByQke8q3&uFio(Hh388q zH9fW`sflLiEd0Pzjr|QEh85Hu{{go;9<{+j&{Bx~Fv2=S!B09`!I#;%2;3oLCU-UL z)9g4A7xQ7X)m^|6a;6|(Ez>f97 zTY~NV51MeG%Wcqp1JbyAmH{UdV8i%Dk{8^9H3tb{fg8~v!N0wI(Y}LRMVqBB8QDWW zsWt~6g%8__mehB-*6G8DAO z^#sQy8EE`Se3at+2-A(0I$>q;0d^EFH-)+()HGA|Xb)3~#vQn{$x(u@6udjr zur7aeywbulpzE4GTCZmtu0OB_@S4&|7muZ=%aEwb?WJ2(Vz&?nIw~XNLPdrMicX9b z)hMwxnB$$jR)S^u@fd3*5?20{R_$|_bF9^>=S)mAkH4JH4Pe|IDbE%abiQx%sluK)wt2z8z{Zu;#Pt zD>JEprb`h_>~npw0goJaG^(~AEega3j0B3O7q^AocQPVfFtqdnEWbSryN9jAwT0IKTH8Fo4CglX|X z5RL~L@?0t@1+5v1F(`N8oIS-Dv72Z!m za>#~f@4Mjxc=tn|Ai6YZH9z|)qlb1@ua&sv42d@&Yv}v+aWRaI-hCN|BA$dKR%8!m z7%hj6LPv~l4Q-#)v=rqdxjZZ96Y<3s>_N;yg5aMKcI%$K~_kF-0iCq z{ly*wrk^WtZo2cQA)Tc83QBBY2F%|q+WQs^tYN~#cXr?#o%%P$0|jhk(sw(u4j~$# zq#52Me3nLwaq)3@vJGD&KJ=UQcy5E3N0&CVu_wS5>iQW({7|n0kUSPRr|+3e*c1Q* zGy7aB%>W|mg{xz@0gtldi^PDIG~~&|mv>t2O4Lp5Ldp%JuH+EGZttZ+LZAo7^@@z> zw>DKh3&Y>Ni0Hx+mb;L_Oi}_u+4*EHY@vr(tN2Ac^Hl1Y-bHk97sH4};ATz8^=__K z6-a4qZEy+B+@F-qz=G1i()F8b>r?b90}<<=XFot?@P3o_n!qYX)T|V|_9e z7KtaeRIB;N;;s6~Eu1OQ(rW>Zj{d7Nk}QYiWC?ZFZ!_#gu$ zFUPJ{kgBokafqAWCW5fytUcr^{0#p6zJREH=!l8eO3uAUWg*|84tP$n+3nf#`^fjR zl6IIwsHKK^fRy++sgPWHU!PPp9dgDXL5EYb2a-loutXXZIuFbYnvf0hj2W|D9qM`v zR$C@I?RSrnp36Q`I$z-tWvJh4mDoK}^TKTPLzAuz-<`g-+yhLA%kCtR7KPMLs`rVqZAUi*A?68e; zs_>4M5{Q4LYoGJFF8DmEKNoKMD2VYQwAo0|LDU3YGG&-8D~KMjr|wY98q{K9niTsB z*(hkP`Uws>LmB;JF?B8YXT}S5^wEqGQ2Cx!>`<3VC*8&*!bi55jMZfBU&<5RJ?5aT9RV-opzySzqQ%v3_H=!IrVp9 zaGitir7Y4z&NInjwwDVz^cAM864MYDhf0W99%ymUjayk;uxG#S=N!7Orj{;$W%Q*) zKe5&P)>?mNaMMn-;RVO}^|v<2J){PfHN~|ib-Q_SNCd(ocET1}IQxQKiYcZ1>Fla4 zMimm~^b#G`8eC)bYjF8DLLwpBSXf!S=JMXGt~%qHsC>bC80>prrM>qnQgNS0HnbXa z^u9fnqWU*KRNlFyWMK%OuK~Fh(-}`A+1Miu@UOOilW2mWB8}LBkNP*gzc}4(2nOkd zF(rhw+2hXUxh*5fEXH+k0cHE-;NNr_yK81xM@FAW z?k3d_Z{H?8d9rtWVj{yR&xT9N@k1YBLJRAw5%C1OwbB$brAEWnV|m^-gj~ zDN1RD(qJ0D)h+`skzQisME%NsR@QE-2nFxkEwl-F^arn}V}H%-H+51PIjGKu7!xYe z&ooS&nzEx2UX!0a!uK6GmXMYvSm@&Jo@>(*hqxB;E;90rc%CoRiM8rG2iFWb;%KzE zMc_3nJ&d^m4;-q&>(lQxS0e4)Z-^xK5j;VH=38C{_fsBXp)sMt#CPCi_i%OG%a>gD zdwG8UW{CdJB>X=4f21p4x8^F+M^=D&+C;Lku#CLjvwO3kJ!9kJo5*=QR@fko;WYn& zA!+H|{{nQgw(`Cwpyq2MVk+l^h;QG%)hqROiUl-M$!fO=$B`o*dUd>D-Uodrc>slY z!)L(DAdxI$n62zmw)hk(W}2qpzm|6O@xBrO4SE3tPFO_b_Sfeu)zy3MX1(yaaBlGX zhlgxdBML8{um779?k#-62&5>;6_8>jb0tK8J7$FQ$YlTu;gf=Y!BaNAEMTiQPpgOP znVR+=;_(Ntkl*@%4_isgll@0L!B4`{(grlXNeGtl1(a-4A)Mx}>wFjQUwa<<1RB^I zgAW9J;n!;sW^v#dALXqEDVYiCjI;C|~=-|Jadv%iCq47Z-W|=aYAj^U8j_ z7f84dNej9lEPQLd-y;IT6w1nz@j|?!2d%BGjRS?7nexWS3-K9X2THS6^F2ALV1$IL z9jgFJoaUo$g!)^R1F-YT^p|(rM6{pVOlP{^eEGU(gJ>alO&*Q@`g4RqGwGH{g#?Gu z+E+8Zd8ta=m*2d3!*%JwGXP#m0-6iAw(P2~G4vQ;>@j&&ctvq*>NFtQa0&(D+?Qb) zdTn_vio`%9U^UFVe!J@L%j$432=RXgXf3(7(1oz40E7h?ph$gSPu~e>D`t)Yp0aMP z2QUn&fEqIx3j{QV(9$9(iZY<0#&!TPbq-hgJ3`QG@6}T-3fOdC&$Dib4smt?{3E&8 zu{ZZVp9dh=Xnu?0E+ZB6u@<}BR8susbFMNB4y@Hbeq3A6(?=VJIAe_RQpm+##P0h% z;-^om(){Qs6q+&_k2F7d@}$}veE9(0G_;Xmd3`Pkj+)q8{MfXDNy3W7KQcCD2;rU>aA5GUzZi%+-L-sq(-uOgjlyPAPURH zel#{TbbvbPg;%_?s)@mWW+uDVbd?{NNvqJdyN3r`aXh1a=>6sWfuL@i!C~S7nU(~| zx~RuBu+Mdc#Vi1o)5{#?n3VnNymb5*z}y}?a%9vPVGM7rHiYOL;o(92be#kAwhkb; zRsf28l$@if8-b9Cn1`$53!M5u^DF-O01L|<8kY=4eE#e@LiG#qBPORqklHgki;Dlw z!gq%*TjaYu!GU_Vf80Wu@rl%WJmVASf>BYS5~xqqnhs4Z)A(g@6NiBkER7mx=nH@$ zl(rWh1MWFBMKfkb9J%@8zLnJgh$~57zMO$!%qh?K2nUW`_$FF&5fFdW6Q9^KUA@hU zqz0@1(>MW^F<2R@LvPs-EjsY|k+6QI4sbozo(lJI4Qe3MXv}HXUvJMkpMR+kE-LWZ zH5kII2{Z$yhPDwFhRTNhbu?z|&k?S-C{T-{^IM-IVdnY>&9QQlh%HYwKbh zwz=!;uO-ZDC6l097XAF~c=+r6oCWUVm(@>B<2g^!OHUJDV z3@~x$G(UX-6b8o!@_b?_uY1%Z3VGcC5Nz9hfS@*gX#0W^cv-A?>@d#8b7iXS6L3ak zIaYy&#tqC%69V#7RQF_L|4Ttrr=xsUm*)Dwogl-!{<9Z3JG(Fz79JCgZp&1o@j(!C zApHUtFX{q>%cGJ;oRW}V9J({7Cq%X@sbnRbcmA#SVqz~pU$lA(*{>}}x@_jrB&kl3 z|0fXzB>`iz1BiA?iz4|p5QlsUq*8pO=i@^H^<^Id<$>V2b18a!)P9c^5HPSS-6k&f zAdJ>GH|qlm$n@UBE|`I?!as7IpgSC{^ojOuNg?Kl)vo&__;6y=SwqwAjLzuCvO622 z1OJ*fZaDq%f5bdNVZ!3#+Qr9@GiA2?`lV}bGf_e4==l2j^`5o;;m>q*bXqUUwkYS? zG;x*hY!N{x68*pBEw<9qWKFj9+7m8Qpoi!HG8nz&>jz^4x28)#jWp2d98%7!NZt03 zUhNO#5H|Hu7iK5+6=DE&4y~!J6>4Q?KgCbFt%WN}hf8`5N?F^Cr*FNqpJ~lZX`UU_ zfsLMO*jo9!;ObS?RrUr4^0zpJ1;2-i%Wol?*J9{YMVNr{r1M<7AV?bKuy4~ zUQFE~OM1^5hJ=I^vqk_T_yj0t|82L?+TuEK5yQ-%%*=;$F6FvkzCX*L`Qc5%>}PrE z*1?;7k}fsgh^6m$V%yM(&gE(4)!$jSC;nL6u^q^7tr2sp?0X0k4RRm5zqX zZ4*^hR8|(gv!Q?pXKVbuMLsPI6j&fBU6iuf+=lJpgmk_1xA2<|G*f2eVo=$80L5)u zB$RGQ#s?Psmzy3D(DGDrs;H#=w_GT;mb0}oojf!YeCR!vO@UV7&+A7`jrO%ni1rge zebV0o$_>HaCNtarZVn&D%Lj$+v(yX|>6#{&XCa}HIs zf-e=*aW<7iejIE?-a62U%fS7c>T0(Llg^?X8hGC#aO)+;9rHWs78cVtfpC3m)=)}4 zF#;<^Arq)`6UXz5S)CTaaz8Tnn?7q$bIgvJdCv`V^SFuTSd?;Se#S~G$7=Xc+WA`<&=;oPXwi<3k}t@LhsiJg>Of!FSjVcfhAv=D;iw^=wDIB)jXeh zbA_#`Wak0V!v3VTWOZS|sf7~uXxqI{=zo~^&^(ymZzgv7Q{{cKB>|(l%;h&$`%PF> zOjy5Uo_sC}@glhhIa~E%@8Lm#e^>I}d5Tk1Fp~&hsNlKcsdM8HhXcm|kVKg3aPsnI zfk*%)2Uc{)g*<=$ye-SDH1f?G-Kn*e70-2vD_6E&M_AQe3cV8TQaL;8sId6sh}c5F z&gLWq@Q?8)Ri74x>6!#?j&o82LLLPLUHG=wVW_>t&8x}Sct!eHSbK`wtDtfl>!vI@ z+@Q&SRPBy^uvkbg5{}pG2AReJ=)ImFPzwksgD|7(v$bNcFgdO_DcF%YCILEN*clK) z<^%EUDvEXr!O%jAz7!um%`5J0TQxF+136RjB!t7a@wHO*7zkU8hk++Q z$%s1Tb-nOAgv`|$b~mc$*&R7r_xt-0Dj6*IFO3J)$anfa@45c;>5f#g@Mf5Q=Hh4_ z-v!%5#(*Q|ZVP6|H_6%2C%_JgnU$;rjau8w=U&`7kmx!z`cHVU4JaxxV(pq z>CIPn2~@NwE)I=5#_{()+-d)Nx))yn>Hdy`L&nznJjS6bgM*n2JZ(IBI|>mi=i}{h zjV1!4DJ_-G8so1W==`jJ?x#Se@x| z=*dnjwcxj8RoVOUSvI>u;4QXS$4Zrt*qjlRoBTE;en#eo?wdr7n*-}iljL-G)TcPK zf7WbfEBlh??r;U!3bZ%TncDQoXD?rNW?O#u1hN|v7S&;nc4-NM)}C+Byv ziiHb``y`+OGmD4ruKs*Az`)U3$+iO*RABfz4AIiPIKtq)w zJ=h)>@?x9FW$GI;;vZk1O{WHw4Xh_+WNt`X^k^BZI!#*?dZ}m3`I8LL17#RJp54#u zNJ+iiR53w*nyNI*TTgdztr2`DL9*lN3u%n`< ze?PmgfO17`Ki{hrLP2y=)4qXW#STWD%M2<*7ff9p?&91pZ$uzX?zHEwEG!T%yKG8j zo!uWb#8rw#x zA5+pHQXZnavo>_>1|e7NR_Fnkxqfsh4;Lp&DnkBCwuYN2GT|7w!fDq#p(TDRDRW`W zY;J{l9`2GWkB@KJ+c4n%HUS#C-u339fez1dz31HuAFHT#%{=nwfMLXNJc8%I12B6z zAIGFRE8M)OORn$o@K|1H7w}kF#h{A+TAL1wdtM&avu9bOFT1TWt2Y*@J6_;aJowEL zOnkTsv9@bvmPY}0R;s#kj$p-U*STR0(5q4WZl$igKc~gipnTJX6j%AJGOLQ?z3|S; zpsCf+1)wiePj?%r=aQOw(3QzGZn3^djh>0ca2`7R&u4o#Y7CtyZoyRVS9i5_9}8oK zwiwjG#sEQjFLj6ycH^^_9a~WpVl6c;VN&UHdgd&5mc-v>do*UD8va7LW(+70e0Tr$kb)` z3W85(Bg>7qJ0TGcr*fUl9d znV+!)wM4UTeWn6;4*tFSL6*Yq?PqOA-&0{DY)V@$IGN&9E_2Bs;@(Jp29<V?oR=^goVk0Z8mr?aeYNm7aYjEqNY>CQg)IqLe- zH1IlvGTzS0!h-kl_t8k<4e$tqqP6ZH*uC@KvM~-}>~=iHFhbWy^prylYE^apyo|j3 z5aysxJMbE-G{VhStA)a)f-(;+G(LcoN1Oh<=yR87TLNeYgZ@@G+IVRt@6Q6>PwJX@ z6M9s?*xe|eOXnmo+&aVgtb;49s{(=|o`gPe31M~ZN(r-flTHsr{#=1>@8{Wae>0g6 zSU4f__SKUo9lWUJVa__0nc4@_vcVuOxvKQx{YIjB!@`(puDi6d9V#K|jK5O*cLBcr zZ1~ldJ4sFN^xD7Ur8!@u3A>Un-m%OebOp@f%X}AoRc*rHUAH#NIdA8<6}+v->iCza zm;3(=Ac#dAbi^nsg^%<}0#}(e_>~i-A1_hAQWm7F3|24^dJr|!E2piG)i|`{H6KuZ zgDwsu)ovBOG0A72vD~p$8A-z>M z?ni83tjFf6>^^(iy|*cvIJ}S20wLU~&9sT?_dYoIxoD8pBOk6IdMv80=ykR(NrqbD zlA76eE7?X^PN491%fa1GYuu@?hZ*m*7-ZI^mGT_o!*sI^U|v5{l0(xAn(ciOq^^fL zI*or-U}soU>D-=qkZWt_0O+?Pr;B%^rt;07Jq2bj;sf;oATZ~B!!sW*zm!mo+TJV{ z3~E zRUbv((QZ3n)zc|m!RYiy=C%~UV+yhWkB<$KE%0N;g!x=KRlb9u_=Jn}(1ldx>%MW}fCPwL4z>P2PG@iSMvy z?Oi^`o!Fhpqqqr|imvGSok_5U>OPVsYYt-kI#0n~DK-czYde~=5XXTq-oQEC)aXKB zC>dTRYyXLIx}gbif6; zr~As^?6@^8g8cdZaEkTV)Z(Fz%ZTBLTt&&NDys=33f0p!peF0S5W!3d%tZG%w_|Xdje>ZxcTa zdcVlmHuU}})d5m}zdXfb%n>0s-h%Y}o5BrEmYezsOwRJ)DpHzi=_1mquV!jy?5wC??sPjuy$Eg z@7o-Q>JfvOz?`8B|b(N%Tg4OBk)=8dV}w`35zSokX(@}Ca+hJETp&ss=>pjE!mcH7!| zo~(X+cjy|%*YCWImRGn|JUtCuP%jd=U{Ey*HhzB(?{#HnJ$Bg0sg*_^g|4k4haE2v zINK%WwG8}hy#KM@pfCXeQO#R%f%+eB%B|5numQQPd9jYipgVQn@A`@5jFixA?LoY% znQ<){*JNA*i=g;ttfg50%Z1WpmfYR*XKUVLeO9@sCFctJzhr<08I+xZykPl)pTA`8 z`Y!El(8B6PAwn^|iA;pgNoK!}Tl+chK8Vm$$@##9SP2`D$7HGUUDG~bh)04(PV?^- zO2}@#M;ZMz>NT74NTG-{e*J9c6Hr z7|N$}Lr)Lnu%PePl$rM`-*{N_QPiuih6G&r>w~FBI05*tPdxv6_WIC99y#nrx@}ZU z+?+F$`t^*}?`%RzeycPGqm^OI?31zm*B)bLlZJ-)ef(Yg3V1iyT|SjN!of{;XMnBY zrZ#RQH6AvxMk4F)WkQWB?WFXad({B^ockn$3V+b&z<@mpu4d99PiOs!whtzz(hF1V z>$f$n5j0&U?T{A~7f^4YZicO88IN1wHd0RLkv6id{mkjYwWf3j`IKcn?w4Ni+nzYG zx>DK^756b2z?ll`RR;#TD&K8=ZcWS7X8UucpwLXp&}q_#ol>fItOq%L&X-cZ@>xd_ zZIpMN#-am^?JJ-iy0XknXr!)l`Ko@+k00FKIiRgw{lB2YG+>*7TmW!?!@4rS;7NK; z=`gZ@C!_On)V-@s2z<-ScTp3RclAy0%r`x=K%?NLi%GFY`286Zo&3E9YG7+hj>V>n zfkFj}i{Oa>HdddyxjYG!;#qeAFmT0tHf@d62M4eQmtsH>z@-IVam(HTqW+pI`YI~H zStT<#nIL2)c6d5yzEfG_M`1n5mC|6DL|>&Mj6a9 zlcRwm{K{BIJx$eld83H3)fn${wnbhpNUV;3N3Lg=ktoN}e3z`hnf;ON0|AvCAy>Ur$MtJh^uGWjk9|{mlF@?&lYoj?Kkz2D>IhF25wvp zxvn0ynx4qL1-6D^-A1pkg6&y+te<}VyaBelU2AJ=38vKJr&ZI3i{D|qQugiF z04pDgMBKRXj5lz@5?~SrK)v_^?DX^fX@vmW?Y6dvn1P(I6I%LbfFA~-?w-E>eP3+m zKJ1PNVaH~Pt9)sidwgt`{0~mdpb8LBkj5nHZ{G4Ke0=&;=hiUOQQc%e;3M_vVBcv; zJRsT>?wNFDz`Dx)eGIH+e3!=V^PvDr#KJ0e%nd;J(=R2OT`NssBUQ7276$8BM*Olq zo7Ym3eF@;m3_7dzx_)cnaSq)HVN{3h%O2%V123q4G?F#ljp+PzV-FtK{gP0P%5frB za9q8bg|>6-I0rmTunve4<^pNf+e!j5Zy%-iq9)#*b$|sj$_Za>LGIiw^_lOses7in zZ0J1u#Xs1x%!0A2*_WO)9R)AqbFrhQWqzThVtLVLWqnbE^18(- zEVj}^m^sOpdM11o*d0w`05}CIONkRf^*OqjD9+@3h{`xgL=TDB*pVK;+BOB!a%hR1Yd|Y2~j{NinAOv1eLeJ`qO-xLaFq|`?_MmydqST3RVzl%E zy3+3W-u{nJ_r6E^X?kD?-XL#H28gXg)yQI;!Ah!X}w%mfmTBdilKYKcOnjx!-j@ zSq1gB659CN04vH^&574n=a8El%U*NtBbYRc%8CjQoe#_E{||6<=#}mwH*)m?M65{p zkr<783MxctVMw^^xcI)>O6R&bPtLO$S3=3>BQm`l^z^20C&S`E z^bm~B^XE=Q9*{RbSw+56o&VBNVP`)5Q_e$(!EZqq(CG^-xqDzoqLAmUH{-iZ>jqrW z89qvhAntP*fNlIVK@-?Oc@q$POPIo9IzAwi`kIoG0d@#x=%YU&V;Fsb_qxBJ%ykrd z*m_O1UTt_Uj%yIFoMqeZC(?a>>xp}StYtGe~JMqH14evwK>biJA`+7Yp32(a&8-O&6cX+7O zK*4JXEWbaU2D$^9q$>pwHKnqwlZ_uoCl2I)b6yy#Vw`*T;X@kOR$5Fz3$?DT9|y$d zK349u;qRfP89yePV&Fg=pmF1dD_LQ4>|ID)9pInB6mXXO3Bl~&EM+UaL>1iNY-(z= zh-cl~x(T=~abp*d;AcuZuzh*@Cmqpy9tVW+-3%Xb+&^Qv&W zF!_X}UV}e1E8+F)OA6w9S>fc(859Nzw?OSREpRk?(}%X624JzjVFVS3l1doKI#-#8 zo?V9PsL?8gE@Aa89AaVMaQS*u(w=jnyIr4-_Z^%|YrAEOu(&`S@WDH3Xud$@#J08r z5cUMncXH?K!;V~bY(1ZGceG_`zC|FbGbX;p2d%!F#Us&;W~H=>Gcr%QYk-xN&1d-D zndNMHdLY63rkf5EHU2&)Z&cTnK4!5_>BMeL*5yUUzH8{(y?y-+XPcC0*5fHJf1p9F zNpq5&jG~FAV@LSE(Ok>{CaeZP55Ejpa>kBVW#d4a?I6YMxDgo--JKvA??0A~i~Q`u zTX-F3j-FA_dT@+xuZ?mMP!E93#guq0po5?pG056ox5Uf8fW6ARYdN5}kvqsOqXP&V zeXuZIfFhvn6VNj@Hclk>?foojQXt}93?xk&L&q8F%pG?T2nXGcO6Q5U*A&*~(={|( z?%((`kRU5T%P~Qxc=;M+sXjq5!)Gz%B|V*h9=*-Kv~DvD<^Q*muv-{YmLxs+P!*`4 zW`LHJrl?s2q_H&ukT+Z4eHJjVXNO_kDBtc4*?#y7sj?EVSCOp}jN#=!pXn(0-SttR zwuxw(W%r^@@~_-vE0C&BlDGZXqFS(ZtX{0>aw?k8U6DSbsvV&T;!5$dKxjZkTKCLtd zd(qEwUkiaAKAc%f_UUF!y}XDqiT?naJ~Aw(AoX9!3kPiG=_}(aE575_wxxZRQNpOE z(`@H2pGyI#L{J^j+sL?$TwCv$;O@8hZzZEDFY&oRT+j=MPNC`puQUFN} z1XG_ME%buo;1v>{%ONCB7$JJc%fu&Tng-i8r40Pj^C_#n!`enf%S&GCJx{Jk;N#}a zqQP%JjTdR%n7m*DL-lyW`_gz(lbz#+W4OQSgi!hD5F|(ex`2a)WD;_%Uw|Mv5m>p> zehYGt87(?}Izm24qD8)=>5-k1#lvAn5Y708CH9p4+Um9N)fXOcAC6Dl$QnBUc%!4D zW`)WBq}Mb-cTf{O_<7;0OYevUZac1&1DC7zF^-dNo+T~iJD|MhY(f9UGGGp*BuL@b z@2fy+M3Wdf=YSdr1bx8H-?3BP0L*AQFru0M;yhXj5(43L`0?xzmr`I^Ov?quij|7C zVU+W=DtMLGd9%qid962xPWn;ud_l_w0EOu{!ubC@L)0+O?F9TsmqGf>bAg59CdXgx*Wuke-fIy-*9Hn&pjdVQf=;o7 zJ_1PFX4VAo-W0Tfx$k&(xD)B74+%dW$i~LzQ&$9BfF@0%Dwg}Lx^q13j$Wx^;`1bL z1~*hvNG_jbJyNt3Hy_Z1qM-q0KulJ=EE*03i3XOImZ7TwLG9TO5uX&}-+uYrk0?|P z{@UQDZ$R9qt8ufTZ5HN_^@cyal(%%07y4z?K`rgpyJI!iLoV?DiAl(x4UKxWt(@Ug ze%Jb`NS3WpkDGc2jNS$6Hj5**VmR81lT})XlPpF-r>%id(X7OkUN}1_ga5$({ciNb ziQG4BKo@H$9g&E=hybr00D5Z+dl1dG!0R+npd~A80m>^Bcm+d-+6yS-j*N*~GWM7P z=)(KALqYj)2fQDKZR;VZHid})(c_=;??qgZe%{t=h7uHcLcO~Sj%82#-IW>e2!EZl?LIXi$=aO+v=!2d(VKTNI>P-c)(+;#t z;LST#C-u1MuLuQ)KW1otf9V+WPBn9($4T8vO+8NOM#R3OuA2? z5Bhpj3HqbjoJ-|FSN_V%1_=>FL7JgcL^`BJ z2?G=mQ0WfI85p`71*CK6M!Kc@UMK#p>;A{}+@Hr6zS5a<_PJy2wT|Pv5Shr0l9?jD zdAX;fRalriSnK&%@f0=spegs-{_UHlZMT`7=ZVMk7D6AgCR^Uhc3gQNs(@F&UVZxf z&YbXpL>9Zwl%$VQyuQxxEtwVtcP|;K#$iWty^7CAPTeo`$5zc5_aYtx@Ix46$hT!J)uoHs zd@eTb$kQ98)TN-lm{dF0n`AU0g>8-VjoC11UCvm$X}sjyM90Td33WPBdEBuDrRUco zyP8hXnLBMbhFe;mX1!Y9SktyKbt2AI z>hJ2*^bZYA^4i~3%`_`~c!N-YQ|o>G|`2qsY{RvM*#al>E=D!H`*F7?0Ur zISjtxf4>{hJ`EaLzf{@3g1$Pw?gD|h%d@@kT4B?8vvY7d02|RRkXV&-uGgB}g zV%#^nI@jCTU#%QuaBWOQKRgbckE21FA+ERbcShHD z_qm|ARK}t(3y|bIzpX4Suo-JC#%uZeG2{^+gC-8EmW#(1&ht_VS5;S2b`6?2!{)aI zNukl6FxAjj;8SE9wmpLMMm{11g~G0XMdr~WT88T@K?8s9tx-h^?sH*05;Fo+N$uG) zBqpR#%!VQewvl+ka4khl%Rrmr1BTbe+OwuBB38p{qM*!Ty@yK|vjVUCeQ_1v3?lS7|~e{0Rc9dZ)R z7Uqr;^c5DhoaA3~NGey&qmF@O0Wy@isJF=)ZPOuzZ+dkGkW<9(}82y+3$`0rl z3n`h}3r>qMyxMQN@&3I=w(@&M7NzH)VLL0mvod;k-dz5|X8gnH=IHmr!op--wA|NY zepUM<%4%e9g$)N3g;B>PtH*^~jT?2&@`!7u%k`vIP7Yvj{m+;mLlsLQ{~;eGTGil! zO5xg9t>fplF%gWKjt$Oy8D<*U1^YB4WTVS>QDQ7t4-2F8QWs8mu}^>0t8J{|OWtPI z%zT(jwkdnK$tWq)fjXi2i%W?3UtO7k5W3{n8+N(E@kTyvwbcmPq+!fqbz>Qt8DWqE zy&8IJX{o*~tJ_OTdfXFowjwW?)$-zoUG{3lr8?#}Nwcih)S*x;2DKIv0c+I|+ozGk zXmXWY@6v)a%fcKMp`XJNy+tY#ZYQngG$jq<#Eq6GACh=_j#?6NGk_JTR)iq_mG`^a zL$6T9G|Z!yHxphMZ3L38H2858EbZj*!Y#Rn{$OppSXPhkNL<)-{}wML2uV-8M*HG4 zBSmkldr=ut5*5F+r6=Z2e2Uh-n9Z>IoMx8tD-{*uwcJ#`W=lxw` zN~I*9FwU_$*2L%^@O8Aqv@0Zrb}(YTW6=JA8VA1aXV<|amTk9^llw2$7{Ch3l;l;` zR*U0IAxwt6olj6wA=b72;bxX(H%wex^Q$>R)N?JrJUIl;U`fRHWYxc|@< zlM=%a&YNTuC}pyR|v0cF!TST z#+ETCY-#>-RmsqPMs$wi3OWW!(D+m{6E>!1{I;v-t&~jK`1iwN1!&n@3HrH~1owZ= z0N;Gwgbtr8-+wL%ZmB)m`pIrM`|g2pjo~5nSLe>1jm9co?uyGS3{N)=EiJI<+}W({ z4pr6OPYy54G99^@OGo!O{qI7P(67ufzz;Q-?RE7quq%}asKZY4CpD8ZlS7(64)Q)i zmFK#g4G-C0ze#QViWWILt0dKMNmiWd(b97gWr3l5tX>uy-8b^Rgz;mA2>v!*JC z37jYkH9H!;cgHc@DZKDOV8nnr<*L!R_up!(Ob2qBjt1&xZ-y@Tg$Ao=t10X{7}*p2 zu>;==-@SW}IV;khoYdpkWG$g7<^3%%wYjm|D$BU>J}fwuG^2a0()5f<`FcO}BN=b< zs`~R~tv6|1P+`=3TZMm5D!nhWoHc+Q+|K|Z1B&7__{^o#&Mf|E3&p+4E}pjq**qEV z*PLu}$3Hn&Lh^6QLNxO$`w~Zo)5`aSz-eds&Zz>c-pO{U)$`QqB_%e0FOv*zv+eAr zds~-Gski+tFWgvoQ5@n3ouf8b#}L zG={^hp2^bfvCa)jbg5yi>aD;k$iCkT#3~N5QBb4fg~%1@r8uOgrqIT5!38WjTFTt|_|R&L z{SKVrC9eEREGy{7G_=QYET7HV(}aojUk5M|Je0K72fdTk#8T!H3j5zY6()+DNZfaRT53~ScE^y-sa7$NodjllPlQs$R6qe+i0 zXD-4~v1!)wnuZPvKF&5e{@$0>H~ zJI}sXSc7cAM#^V&WiQv0LvJr~pVqRrNHV0v!jpwN&V6g$Fgl2?1S zlROdmS#B%7fjEa)OeArhcp_;)l#+oxfR%;jGjRgJdtn;w8<9uQ(#U(g_wH~{){FVB z=oE4%OHV+f_9h2oZM!KiRAn1znyKc#NQgD4k#E|-Nv6nU5DvqJW!8_BR4FdN5RxQF zd0pst*5G1R4UgS_lP$y8xnMa1+P>AwSpTh;kKW;VasG`0>0gC~8LEB{9xVK!u1s_= zpMGO&fzKlbo4Ep_UZ&qkj<#Ba(j7ThrKE~Q>bG!%pQq}1MhLE{3)sey$}6Vi9Qq}A zL0l!hf_X-8w;p4nIMu9)DX_L>esaU8WAXO|M6fy4JVB};!C5#%hB51nKUnvmpNXn4 z>WwYXEZSDsy{G>kN7q-v*Pk+&$tC}zG$<7`Jsn;Xx$>QgOB7hGzj81-$A2HG-5KvL zy?amL>|oB3H)1JTRn2z()=h5qcGnj<>;+p4dUFFQ8q4Fx6SMg}9Cr8&+xhKxdD4vo z#o{5n4a~Q(PL4_{1{7|bK01#@KF|`4W6bw@iv!+Jot#YF7$^pH6Y9uOB4HGTs)fZD z2RqX!^4`uCXJ^g0yMie)4llfWa|G^+O7G~0@Mb3_g|ZkVj7}>s{A(^=2`qXRcMjqd zh(a!>r8qSCwl88C&uf%A1&66!J%LkKfz7Xy8J(p5rqi zCa?z(fBcA(3++HI2e4R-nxmeU+%H*LW?jz~+kM!enNR?h18-t@zC+jU-B(Zw>y`sG zd#q21)=1Citpb^PjS@*`$Coj^oS<^XQdNr#AH3bDCP{`(}Z1uD~8ur z#=yiRDROzOMm}r)htF;7V zU$y2L&ZzUX)-@SKlS-LlKc)S-`}MELhK_&A-Cca+c~*|(R{l_!o%07?FZ{(xrwTq{ zh;>qWm(1=?spZV#ShDm6h{oa0FE-==o;jlyc3q z8z^0Di%lmznlk;_gLT0(SwqdHk*AkAUqwY+Gv|$#&2U(LPoa@bdAOBTf6=#`n8l<}lUS?+qXdJw4i<8gio^({PRvRsI z4dyHQZHf|76Wo+ElBW3!80ol!mgqhvi>E?NW|sbi%c>LaIQK}yb@)Ck91ZRLS-8^!#j)y+AH1ZGSK_3`Dqd zeLK6{rWcl7GuCJ6)0mURDL5vblZ;mReK&`RTrjRxoQ5L-TY(xQ!lV79XrsCN1KA3cJF$AX7G9VZkI-6s@I3cFU_YdB8gft44No#>Daw`!7w@DkaPA`2}RLO9e} zP-7$z<4}vhRwyM{@>XhEMojmgt?Yv{U1I7PA`rb`D>@1*-NG z3@)A9uSJ959V~&iAz98yUR(3aBG>f8QGSNhmr^A$t={-n`8d6RCak z9TVeE_CpI41)BzFxVMVK-OTc+P$k6V4;(zGUm7Cca$31?%X?q;Rd+XW zP9?ix@}tg^3jU4ZlYb7Q%4nb@7xm$%=*O9H(%z)OC)HEM=9I?BA~Y>+>`yc#gOAx zs;wr{KxJexM&Ys0F98~Ab#)Yq8*&6>7EevuAmi+I&tcNBa7H2jNxWAf$Ywz6c8& z7qX(LjgepEfmBbnmQLBoZ5M1=wu(Cn7{=YZXVsVUfw{&3{HT;?2JD^GIItS-=?7mM zbtb>NyJxFSB!y-*_@3`K$bGoG%OVGL`0^J0&3oTwKHfWf{=CA*45-^43=hvM^=c}E zF3$rjLX)eVS|E1G^z-wJg;eHDm{ns-O6~wQC@AO$uObLy2JA;qL5|8(NN=ibcY6utQ_ixZMAwEBZqYlu$I7s)0 z+x8f;yxE`p?ql5|N@)mL*<*eBKy5D=dPj=j#YII$^Q%*V#qYE+d`#nICB>fjppY;z ztk{RhK7c5n2Wli&8kIcz?z`URlHPKfRz>#J-R-PqSS7Od7Y6ALvi(Qmi;C|5#}w4w zSRg}@xc@yqF_h5Kb3MJOh}ZKk-wuI^-v;Uvg{xCjQ&jiu(-5&;F(^kIfN5Rs{t`o2(r9W49|FfIb5#$p580S%uwqJ9#k%=rmpz*&e-K z3suXx!}g-SdA2)~5c`C@ld8R%;W(64|Es)hYH$sNf(1fL6{M_C;VkJWL*L0UXc6x2 z?siqYqWE0l43W^qbY~YS6D2VXHA3rpX-W&NAd|efYCvxeIIbeLE#gbI;;?2VY2m7z z3`ORg2a|_F^pA(X_=Z8OZ9}+SS7>qJOQ{SB%wp@x1*hHTPv~_7UfiVkZ24CTJIJ}Tr@DxfH~i{1$D5--J-DoHIm)WYhY$m zyb8K#mwRY5RWcHxwt1UJAu7S%8e>0Qez99nRFvOepH4+0L56?6 zbOzObvbnOie^yl$R6lw8)cWl(WX}85KPVEqa7wJi*FmAB>uCQMIr1>d=ZUq*C$syh zUdZ)LV9Uw<1(Vc@c_^>5?+ccJm}M!mWY5=J@(MrGHW+y1e-Uuxma1;@zr=CA z;Z^N*-Xq+8$B@R1w_)VCU?0bjZRq&3`m{)q^j|8?@2*Ul#&*~gn&)6wu@(ewm+G_X zjDVOb)lk*PT~QAX@2;2b+bmP}sDBbb2>u7fL!ex}}rrSTVZp|-& zVKK8>w2b;|>hxT>WjRqj+27M|w&Qp=#ZTje$s`nZ6FPxKdd8GLt#r6h|a* z@(EIyY@=gRamd={|MTkx@Ahn_hK${v4pnQQPnb1UfR=$K%@Ghi1xrSSf=OCU(A%2CfiE9P%O`32v_T9&z{Iq+*N&f zYcKC#FX}(BglZRi5)zE7Fr8Og91Fd6%Cb-Q@2uwb><~I@pGY#M@fSThMWAWc;&>e% zb5$UeXDfYVnWgD~N5sR8!)8XYKo=LdX)v$ZtY)tD0{$~Bs5 zZ#^;_ra`AopH~2$xSZw;Z$iU@8=9#o4L=t8MB;fSd2*&AdkI|?8#S4DM&p&D@hblk zH=_I51(B(9?}BHp(RiyV@669fRQ8ID7;i7_r$k2<{&DXAPiD;DnxFB=`e@cvsTL!W zi<g43a)!+9=g-6zj>Cl2lupb^Blm9 znbNdgdXE)0MSH_B%Zy2qtK5wU3R0eQ%rPHy5()xOCT#4~hzvKP_YqLR>Qg+V12 zbGf$6)p;(@)j%CV!#_n{mD9Zk8BZZYL@u~n$I`O2@APB$r2FUJF^7d*Ci@F>w+)wf z=FFizK!|{2!S(Cc+kq|gjK&xkAIILT1^-*kx4!@mUraRflLYC=c_+c)59H?`A3Q@7 zW6yU-jbf*Tse-9@wjSlUK2W0`N&9k!z>^wTu(y3m ziRS{;iaYd=pt!3Lhy`?KFl>!|f^=VbYcc;HP3lkvOn@3CQVjtmF&=6`-8AQV`o1;Y zU;fN#K9Jld#fPZU7Y8R03$?Ox5F*%xc0(Pd0&HyZNW}@X$1xC{Bmw4%#@scNp~#HG5Gem{=dn*R0Equ;XmR@RlAWK$bgZRYY*D703a$#?&5<8r*k ze`20du@Ai?5<+?Y2eW#S^Ix;N>K!io#UY~gbla!{@QoTqdvEhFAc3#|wl#uo2zZ8c zz!<4!Ja<2L?p&V}dTXo`P;&@8!QuB;F>C1SGX>iKLa^ymcSDn@+HZmuo1qyLawrOs zxFCyu2ie!fYd&r5#inyay@(s#`6BPZjW21+*=h73{xX&4Hk2e|mk;NId#p9_Kze%vj0$mO~=aU5~8n5TFS>Am1@ev#n zK*FlmJAhyl12J&(0jQn?Xlsw)^sgdzd+SCbj7ro7)6dlKr9$HY4^xM2oU3Z4;o$Sd z;O_h_lL`{Aef|eZk^QQUQU-}%hNAw-MYtRrd;XkGZ;T<1Nh_M)Gth5!3fe`X{+CkF zCw3a?t%7H!UxUsvE+kmpPt?tP7D%-3eDup+j zd-2ji2FayNXPGMwW(s(2{fkUozkxOs%vN!IeFr`+8F6Gj6J?T=L$yP$$$NFB@~8jS zvsQ8N{N-{xV5t}c;}5 z@ksKiJyW*8n?`FHDZB~QFAFlvB}5;6F#6d=9CGKzgKnNzd%K)BO*@MydRJ>sO8{ZQ z&8+0dV%nE`4v&y9$Ylh~oU+qftImqYSk&-Yr=0h=hRctLJz~JWVyk2~jgizX9eH;c zCG!@NB0{Jn6%KLdLM*OPFwT8o&*&@ITPb=B~&bxpoctF8fE|HxSRk3Q-{;9O zD8w=dcJ=9w_yF7$Y96zs)_ZFW(g1gIYgY}tM|<$>et3x0^-TJ6SdZ`AIFn^@hm~); z*^Z1%@#*O3-ti;rm}8GRl1BFmL6>|4?CYrG7CO<_3KEsr=AP8F>kFoECvU43wk)-g zx0gzL%JCg|Fpi7x7#bpFSo#i@cH(!8exNK)pTDG;(nFIXyw1$|QTwsT&$E#d79t;{ zkn(QRU0N|<&DfRNfyVRNwQH^eAWE=D%0*==>CyK4(fOrtrA3Agg({Q%Ro8&&sgfkd z9+oHX=>4$tvB=!QK93ZoabZKOuK5!cLBjfea_gO&_x_Zf;^847Ic-x_CnIBA77dxewPSDb!WNYzW3$WyZx+AW7*QTS z{N2Ymc1UJV4IIzZSM~LGD=9XF}0gryrbHHJZ9p?y>H*vkdHkU4|VUp`uc~1cj+F3 zS9XWTPTLdhfz^_JP+nd=k_D%-3(|Uu+fmveRu=9Kwo;lv+=2X5K{h_l73Z79#f&S< zfvLCJ@SDRd-6BnQnQ9wLsz#7|lWhROI0^+7CfXYhUn`~TeZOa+<*NNcP7dCsVt$6; z$t;rct``mGsV-xtCtzf>VcS4S{ktligYQ!MT~AJB1P~EFUte6@jIB{et4M=#SYmeQ zI_Tor7^_oqE7_ATPrMT*J*mcpAMf!+Ua?Ey*w`4oV;$PrM*B|&g*ce%z}5?|S;ipo z85NhJdYz!EYmQ0urw#jfJ^1%}Zjj_3vio=4nRkUtGsSc=g)-Z&^y7ykI8)zgv-}*b zOQwVV;}sRb66ZAPT2|`c?U#q8-Rfr6da9Z<`Af#e>}=|&S~X4rr;1gi|8^GgBNV*a zzy6&X-!pg+)F>$H6$7?DPSI3)a+D4vB!l{dGhX@$J=B5`j5`e zfLub?RpgHzLsjeuqvyIi=1@FdYr&k{NTSEhD?stepAxiq6{mT89vUW3jzRRI5$5zZ zH4LKnEm$FChpt6upSo;s%jgxFqbNUt$GlLCz$)Ql$r_BN>*r5lIPe?$<(JV^F;dJU z{g$9>&3d)1NqN3eJtUEsF_)2%FSl$D$2n_TmoOU0$il0xp;n1Ao>4^-p8n4^s*oh1 z%lE*1<3QuHAsIV9(`6Kl{>B*h$}^bKh*I9>fJwJg=M^4v+(0G)WZ+OFde?@=61bF> zjb8W9A#SMHBYWR-pRWz7)t` z&@CYISnoE}i~4)oZ9N;NhfJs9w(3_~ zBU$;DuR5P^!Y@2CG+WBpnrmi5c#A%w>Z)CfCDhh63ao^`e@|hhe#1FbX8WQ_E}7QT zBQVF1jA$7-?9}aPwzqQCEmhg(BMU*H*&yGQ^TcMq z&vkWFchd(+(O*S16zodrE%az4JO02bV&W8;*D%La{k7ZT>z7ZUP((+OkN15RQ_-IJ zP$L&CN`|ZP{d;K^Diu;=yDI9F45yH!Zh&2hX6%Mh3vUUgh?KOK3pdO_0SlnE(9a)7 zL0ukJe~X#x#`33yx*&V=ryeB7-d9wd@6B>|9uUHvIhiUO&WeTz(xs9%9))TGpSxV< z7N*YUhOz^HMgBz-jQfxQ z)0@e&EK${9J)!`m4vo%G$>!k{8v~0AZAiz+4LCJXwc)ktXQ%tK->M}$Scq0gHEclE zf3@n};DyHeMnZC&TK}JpKvK}%P@;3Nah#G^Mke;W`UvFG;qnbpnB$<1LxNKemH^Qq z0;7Tbtzn$T#73PXSKUg=7zjFTvvF!1R)#U-Oug}0pJ$1-&AUQI0swd-ry%l)moqhK zRIRgPDPY^e~;51K2NhbP?iBF0+3fIdIW&+kS7tL{kg-K3su(&gi@_Rk-NcMv6< z{$-(l-mCAMe>m=zv9CH~Yp_I)f#b9C(-&LsS+biBqjQ6*Y#2AyzUG)HW3F9OpoAg) z=Ia{}e@g2!|H!u8>uu(DK5}269FLF;W471QS~P-Xs)Ir>At1IG zPe{zZ9$so$crVkEWVZB0+m+lmVD^Gae0!W;Q9%wq4oD~(YVz>(H@=4Y$1(43Ke!}t z>3eej>%33!si<0N_}Hu3?f5I-tzL85N<32ZMkn{-RV2>!@3^}2$&t>6ehY}x8aK0+ zkonRc^8f<^E5_FNRV*DhcjCc-)6pPK@VN<4R@BfzgrV4xaF88zLI&OC{8{vfIjw`S zW&{LNFa2F}n4tKMAQ4Mmy=u+)5N>u6;uY*q(LAhhp?Ly&3Eu+|$WYV%!k2{0rA;yw zVmJIl(n`u){|fhRQz9BtpqUt(F&q%%2go9IVu{}eI4 z1;S#^tiOgE()n}eEXxGS&(^!EQ_U8@TdxR$pXw(dkbML-bTyeO4S+so`8%J{;!+Lm zVR~vB%G}0NigVp+X`)?g8ireg?b&80PMuKPjwkGcS3n&NOdK#$ zH!#D+VT`Cq#rcD)RiG(hU>fV{PF_Pj}2^#sDKpAm8?w?M=MHv?>BYr!O!*7yCwFXYEQrS zyu_bMa&=Ad!9k2uu$y7IvhgWN6#$pNsLs@P!?${JgCXQUv%h?Qa^P2eYuQ~Oqn zu3t7zn{O!%i)kP7sKelzE|QRuj)oxLNXLa7joe3*T_<_?y{#a-=8eWnS?WY%D9w6G za?46OLaag7W5$DAF?zxet{7sptXxXHPQl3^zDCl)nfuoC+TFWY=NeJ0m8PJp$i35d zke~ABBQlP<_2VaITkj1p=c>1BhUUa=sC{Ko_W#}EdxhSZi`U8F9SDVFV<6TPib6mw zjlr3SqQbv`CAutUXwibev#(A`=2le|(9MGcl4UK(eh~GUka7`6YQmEZ_n!<7=St27 z^#TIs@C!X?s+*@xutly0-evQmo*H+8ik=(3U4=Uc)@J-72-hq{6;i9Rk%GL;JQ9x# zU6VZ6ulYSD{FTV{6#I0aAaiXG%`Dg-}C7=2xzMTJxlQi?kF8_01ir@ zFnFhqz`M2QX1ae41V*jC=F;*2!O&>FaEU^31SmK{qF(?qckYpQ>zbAmVopEMX(DCL zm%(8NfEhpJ0*1Pe{l8jT>DJGc?y$Urao!Ea)4#p9D=P9P7v*@AU<3F4TZ_~e-x(Gg z8~c5}3*Cv0qtf7$@rMLu<}&g=Wt{E<7u~2YFP)`mQP}lkU}Vz(@`e`^0sq*VNE1NM zSAD(ohVFWJwlz*oSRizwqQaNAo!~xagtIgeagSg{p)>=5R0n4iVLY`IWA@_3ThkUV zDr^h5Zj5qADWKT)Vgf0xN4>eoXPXReYa77SC*4ObC1u~SiXQD3`>7DhY-Ne`;QT2Y z@dO8mbu-~k9NSOt?6eW=8=3%h?1C|`ruXg9hNo6%m6c%Ey~cC|rC`8w@nX+TgI&+! zW?*f1AtcA)M!-SMEyN+sqXO?x&(<5h7*(49-L@eW|5R31mO+~6-c|L?7hamqyEf3{ zR^rK%Cs>WboJO7r>VAir6c2ZIo@8A|pui)Ry=?oXXGmWIkgOvha6I4#uWOwIUs~v+ z&ljShgB1gSc)^3!;&SM)b+=yNk|YKtbO@QdmvZ9_hOx2FvTqj8jgXO?CY6OFtYCL! zO*QNG6NJ6eP8^!e$n&Gr+{`QjS*QVAf{_Wfn-vwt|*7oFQ zmgS@|VA`Yh^{|9opLaikQsIV-D*I~Ko0C%a8d9Nnq(5lU@&BJ>es$msK+o?<(9X*M zcA>y_4%^kGY_|icM3uoe%U+~pIE5s+A%UEEXjr2F8APPRijx$WCr%6Qq`hbiLkzzD zt!&3oeqv{Jt~u-kT%o#a`}TJIW4f$<1B1t3aO_2^F>5T;E6~GJ5rnDz&&r2KIG${o z4&2_&(e?#=5hZ&3$+D7}UELzU^olGWNlw4r^5){zQ(y>2p8QU2EYGuoG?=}RR>kEN_v`Q%kb!xhliISt!yh#r) zug=0SFfLzXK$Z0(NI2s)>Xhw8UD#c6{@Lc%sR@O@pSfZf1_Fg4PDc&NAbm1AWi9&) zY#adYd^*3h;gy*NeVr;G;r|DynSLI+%UDAzF5~*3yIatbXF%c5xKPNhu+pR`)5L6rm5{Pfb0Uo58-oR0xCDe^w7X;irtZq_J_W9lndZc1xbCPW`3ULdZ((C(i_S1Eb2WG){=X)pBHsIIp> zo(sFX?BXd~Jn_VceNkMLfU9#wjv5&T0ch`F`AY9F!&UW?H~HI8vaA!%7b%Ok{4EU3%xXd8%OD6j1t^XvGUjT{enJOv* zys-ItTFQA6^5b(jrl);hRkgKnyjf$Q?nn~-!GI^8dUAOhYrA^kC>hG)X)GvO5D)YA zW~Zax!luGhyDSI;6T4nWUOXs%#7%!7m!b<);s#IY|Ly3I`{V`!mj>S*(qe&h-6VZ4 zy@O>XK+TM2D1Gj($#(e_XYc?rFqcd}I$wlVr!+r+jGUOgYp9y~O%2bJ5T|I`mjV<` zX;XtGL_sW$k^TJgC7IMB7wUBNaQyZgf6TKj6MTaoa!SCs5V}>-7tf;6^U+CQ_wpgMy zo+B~;+gc<-m;d(M%;PyDB|?Bkx@y>$c+nGvJzv8#v}s7snQjhk$6+-%o|;lUN-}*< zheqw7lv2 z7z&^r4Y~%VPZ97lpl6jr1f5IvfDc|UbeEeuudAA&aa7HJI7Zad!=`BDzCH@&@dG zn#itX15Z~+iafoX6tuhg^^4B>HQ3O%FG917u4=q|g7l!r;GbtV*V)$faAo!w4cI@m?_%G zotYJMx^42rc9}v-BTe*#dkyhg`qh>I_vQ6OojLCC_7ZPn(Vi&9uv$J=?XFMVfuCayB`cyl+v|7f{y%ein{N6z-bJerI4kl zhE@kFpvftWs>jYDzGtLH1j3*ho!pTu!~Xv&BAOYuhi!PKk#9i(I!=&v4Q5c0PIv(4 z#R_2th^-VQN6jG3IcygO=I#X{e3ZyHf7}sFb>tczx?hCw+F&DqOq~r11E}O-RFGCT z0s;eICRHvGVuc1E?{fxQ($L@6Vscz8hAUi&$NBq89AAH3=L-Y6wzi9!N2vPtK=Y2+ zi{aS<3)3RkzZ0^E^S0Lv=4BmWBCBQVr=!lW->c9p+vNzNZIv$ubx<25L@6da*d``K zT%N(o&gEU7m||vy{{-8@Cs^S2rcZ(B;LmOo(&4z`-pXYPT8Wzs;x?=WLN=`2TG1_{ z(t|PsuS}no1=*kd?}ck$-D+MIP3T`_=D|hUGAr>iK;z_pYsN6*`1L-Bnv^tb{OcTm z#2pQ_&W7wiJD_P|ciORcgz-G~T&TqRGxW(}Wq+R}|M-Q1I?_s!^cZX5>^;OKXx0y= z=b1sX2b0h;0SD0NK1mw=i6=t#pP`RPtE(;aDzWf)LfA2J&ZQ4ujrl97ZyCF1o-)(9 z7G2Xg&}o(eVFJs|EQQxl$ppc9`Jq8oxVq^pUgRFC4>0Rav(ZxC=q+kc zEjF}!yW2qDY+Q8wwwD^T1Gi& zdWBDIm9&M1wUDlaZ-<(*4NY_#3N!2ATn zcot=xGo*Zf8?EHYH9ZXGG!3cpx}`LcIbtJze%96R{&zbyR_pSpfi#GXa7aw6yR zUuU@HdJxmDzH~W@f@^yIPV%2-;S#WWei!1HgeWcH5=8yYVt~jE5-BtWC9v0m9wN5FhtTAV5xVrTHOC@jURR z-tJ`un5e}?F|QT+_@{sts`0^n=w8(f8lL&_6GgwjNs#o>va>6gmu$XxyKT~w z^+cL~)o&Y-46;@-LUyVftH!1n7}+AsdU`(P?CG_Z)rlP0<)av~F7xHJVx%a1%4tf! ze{0sqVIfphHGQw?NyH%(#X}?EcYq#`-&_}n>L*>3Y#Nd;u6Cc^nU*ke>J0ZtRLQJw zM6x1fEy4e-R}>+8H_Jrt&+nQ_fq*go@^a!E_L2!J+r}#sI1S zUup2N>y?P;E8T(*E+OxmTPGpL|E~}q94N$)mL{S5sj%DN!#D(uPxK(%`E6+J)wegk zv)p9&BzrZZc*KLT9jHUl*XoHx0MkqIXR5yp$e)i(e};AgW8TmpyJ-e4AMGb-!-g2p zDV8l2PeSF>(zxK3NFh5neYap`W!&sZ-&gG5UQi|^svC*65nSp7xl+Nc64fl&cyJMy zrxQhgV6(0fyI3+f&M2mUNx(FG#nUfTOg zGVA9BU|!;{-DK=bxH1AV!nf#Z6p?USiW(P!r^Ekg!tR&|F#)@{{E}H-xxYO+a5XdA zHkR{M{Ay}LeZBP>vGqk<)&b$I z={s4&)61&{T4D{; zN+8_pu2)f(t&Y9_&xw{n<(mw2AMnHYbI%_e+r6t*D2>ob?N|L-uHNsM7$g3VVknTX z2{UO4DP5SUGD!Y{i}lvCI={uFo|mdt)2Zb==TX2!i-ps=&PHJKH@O#$pe73kpdmj5vP0~fKbu(yhn3hIg<^fb3h|V>{g?pjUgoA9}Nxh0cwJ?wLXag7iB;IFZg1)zD&+ zYqu}&<)}LM2H2MK^G}`*r10rp)+(@0f+KqloYtQ5Gn|Ie(G*xD7XZ0CiZ70vV}bZl zJr&YC(00I|vUDBHJ07+d^soPzb9O%}_wr|;&+4Qnnd;Jfu-$MOxfDc!f>Dpcw$i`! znYlB%K;^H}jls+%aDNGD)@Rz4_TbbdP6d1WJZDFB^)OJ7j>Jc2o@p8vngwthS>RmuAp$Cpq3cw2~tlBIvh$Nlc0?CQ!r;r%=G zkoHps-h)0Tvzd%M58EisTe2YMU~luy(sN_q2QyMZC^j_>?<(Bg-pdGS7oYK`v z=eQ+f(?mF1`P~P{6%nSLJ?Y=>a!39IDWslDaiZmT z>FMe!PifX+zRYR3hn=f!2t=Fp`bV3`CtFGQcOB=_(t&#k0dHvI`oZr_w)j;accr^X zBSeMSyXmLTfm2!@ft#8BsDhb!;|69ShE!p_Vwpnq^Zw%L=l}7?#~Q58bao;*rR$wM z2Vt0^o`Kc=Toc!N)SOb7u8N+n>@vj_=$7(k!Y{|U)Axq?R%w2pJTHF${s-n@C=O?h-JttSM~%-G9w&j^7dK1Ot7PRt6_zsxxF-$2qb# z_o0DMoG{}CsK;iV&}dD?=SLt_8C8)8-2F@`livaSuh}>phhHG*eXBrod8v}L<{T&y zH!=eYoi|+rQWnZeAf&jToMxeKSx^PGtEA-|dc>Hl|5X0p#^ebvr#~o}o^MLYVD=Yi zo!{J64cH=vxZJt@9V5n*XEhA%H_QuNGM5uoAm0ne!p3xOhUY9LF=$rynjr`Ft%Ub%6 zZ+7nLRwdq4x9!$rK>P)eX3JnGXDj5gln^(Hk7wch^43I3?~-OdCWt#amc zSsh6D=19#eH@Uj%L<6__q6*KyvRxL*|FMCW0S`&kGx7ek2PbG8M^ruLQ&rc=+b6+u z-=C)QPcC<1@-Osb;vIKrf;qHQGAnkqJgA1M}fW`W)pea~iX8tXtJB`vQgXLWSSyl+{BOs6%q!9|_?%I*Q=Z%$= zWCO5|^gDl*e!RoQF&Us_gEWOPA+~_zpU1Y{xJo$*BfaBM1td z1$#MlsvL5Einw75F=#k@8=0AzPA+|X@8c7Mh0Y}&Z|;+xO5uGunsXj$bt8J_98sds zy&O~dio_PUO5LPiZz_$Bmn+QSo$tX>bXpENgS`fJcUSQApK1eKTQYPVdkRuZTPy0u zV7BUpi(LT81(0oCnXCBIrwXM`yU@&w!eD#*B&6@)xU}~Fp!n~;HpCt|k;HE|5AMg% zl#K(nNxORBAmv$wK>sl)pAtZNgoMDAREZD|q6-Ep8lg|r1`Zv{VH^(to5IzOHETFA zSd>i&SbwZS(ug}HF`{g~8l~(%1X@T72_uI9C#|r_ai*-aJB-^+rwi8O^=A@-XZp`w zzKA6Ug@EZ}h!?bnwViSzF;rv)Me_6lH&EQ18EdmGU;sB*w%eE2R8)Lx3P=q^?23t# zuRgcQd7y>xh*Qfo+X5-$3iuVKfFouX9qjrFdJuM=;_8b6>j^+@PwmIkaQuuhtpJIt)%22KLnEkNAZloM0trL`zU+tWcWyS76! za&mIkaG7CXV{5})hydftv3eVW^-R;81?cw8%z6MyJ;Vq_&Emp#JJ>uydso0is?XAm ztxu-jKM4AU#?rwGqy z3YVH~IJ=)|N7F2eF}~z7SRcC{@kN~Kh}>kqF!@*Ga-w%#6ikz;ny(MfDlam<=?gHQgs}zM9xxYie%q%k`BNp9wfkm!F1Ii%_4sLWa&kUL^{f+)Fa!lVJ>%o!dC-{d z_oN|+=Oa$u2maltROj6=Q2y@pAv(^T3BmnxAS0t3b%h?ohgn}|Dl+i%pts3~t)tskla^K}QrN=0opHzccJEwE8ST5o;!alHQGsK;`OYIf=22N$v;NEXUQDpj zj+X9GSMu3j*WW#w$bjqNe=$FDa*(+5hi(;nko6gsbI^tB?AeQ+0F0JD8WQgMKBWp8 zgO;$oGyB7#YiC#a z#AqCjNLJpOn`g_;bZyG+EVF7fp<`xRu{Apw6A`zV+y2Xupus*&^*y*mV8S1;B(lUUpY8j=iyN~ z>e|@Y7(O2u9_|IXwj)Q6R-Cc;dK}c#F=koU_$hfrIW`RS89ZvI?Ni(nweH^KsEl%M zC=c=({J0kiMf7%vFvcOQFaiUKH14bjK`6G zS3r0F7qOVHN1KW{_yUM_;fO0#+9;cKmL;T)Nu5I z{55!x>(}oo!;PO0X}KmMDyjp9C%85qg;ge_aWUno2#E>U-dpXT8EW8PLZG@OFm%?X5W9UC7%0$B%>b$ctTy1}oH ze6Dzbvc0^c1MTJlukh?ySxTO6wP#h_f+jto-DAd_cl+cON#@;a9-6&0Ev(KUHU6Rz z^ufmYR(XGoI3?PR%+^h=JnhS8iSCl!Edk<#Z@eC3b&iV413;!1Auk0JiSJ89gm-PN zI5!W^wX0WAVCSiTjQy$UhT)Tc$5v;l@Az+Y=T(;MED7c(G{rBO>Kpv>rZRMXu_QlI zFcDb$IevpVH>1BqbZpf!T=*{a9Mhd^_2j-ciq4#!C1I0ixg_~_f{8r;gz%^!Z9@$; zmMWlF-xhQJJAV@|G1dDir`w-XH2+-LaaiSY&Ls{^$S?69x2$eF=cfB)_i6K0PumGqYn4^}HH0GV<)mv198v z3mNUd8;Q5bac*;m{7p-foXL$ZnypG2EuvCMS^@OzfDWRSmr&pn0=;`%=tZrZQ1CSMnQ2VJ4}jMjpPH zirqNk7)f-n6P=ZfL<&AjWrt4>4S%Gm0+R1h8k$I_yNCbIn3H~SuJrLD4mHto#%IFS zuj7tY_PAoQB@1>%#9BA9#*VMpiR}6PTCyt@Oa7@d+wA}R zf-QxoPfx--NrR#YPhVf(@3gF0`^}56UB7`wo`&K1kP*QPhm-K$mY@v8bA9h(u|UqataVfkir`|gHA z*HlG?kom`DfzvVGezWevt=Qb=WC4}2zh{NW^OFL58@ik8=%w5n53(*%d}nj}lY8-> zFTYw*{@-`?+20zv6T(RfSFiuVcvmX9-ry+|c5{9G?9Uga){HC9aI+Og$rPihH}m*Z zbmTq+o+N#EjPGI6|6%K^qpI$@ZdDYN?iK{3r9+TTmG174?(XgqkPwiRZlt6+bVzrn zAPv%a_W|GUzV{oKe;AL0=bT^cz4lsj&NUZfIPr&kFWQ-En4bLxIAisRJ_Qvu(&Lc# zx_oacH9ylY$WjZ7iaORR|_Ic8LK^qj>Fbq&gBCF0;4J&?z|*6$7} zM|d@gXW6TMbR4V?Lg-)D-bCUfN%a3(mqd$q!bFwZzabc2CcxyNeAv!BE1)Ohy;uAF z0c8B>+2h;PQ`!Nq z+MgX;&#B;khNcmVWX^Y_J3kG}@OB3K-amZ0!P5C8G)87V?giUTSsE!mtFnUVY6Zc- zP*=kAMdeI<)48BUBm6ANdN)W$+Y@D+@USBZev`BbWmdN*!A~z1i=57!)Lr#!YNFj< z+p4&@9qK(S-)Px_{QOn`S41@5ULt_L(!9b#zp5&>>zf-J&}zC0=q;bDEHcDrFoNI$ zNXeE~bOJd4Z9q>z`~6=1pof+;MrYRbB0>^>Cj@O9?{}Mmi7y(7CG(pU)Zf&zF)=n6 z%Q~HRyzdtVo459U93Kl$A@u3~*(;f}BZGb>Dd|W8I27kV>fJp!n9$5sQ&3ziA}II- z#N$AKM6URu@bUv|c>xK`e;1)|WD$wCdcBrsrLcN%NV*g9tIfw>@aMc(u}Npfs)%hv z^J841P14CXDVTfD-cr(nJvDZg#D@Rfvl2fbxq5T&$I*$v`CnR{y`6UIhr^FFOF>gJ zqJFPVJkYPCq@?zA#te;!2w7cST|r5Sl%8HH&~N1sNEyJq5YL#XKLr1-vUl(B%_fRk z0kiz#U&19E^EDq`KggxK{P-Om`beLFVTQ4Yn%eZx9u2vXa`)l-e%I25iBo2UHR_Yb zmpXcS5ZZU%#)>qrn{Fw3Pj@Hhjd0#!wk7Z&$rBJXrV{*H6ipzgXv@&VIfLKQ2yp5l zR~@T>h^4;0{ww{k*$ooEh&?0q)m&F`S9~gGOJiWToI2&cmM~TgWU=XLkyYw3OMB)K zJ*02Kas6eyjHoaX5w2Jy^~oZeuW4u^MYs3tg2P+Na?`v=M&wF2ME@=H=Ro;_hKu_g zgiw~fjqU9)piu<<&#kCszR=Vzc;JJ-yU=yYTJ5@an;|ZhFC=e@`}>As)oe{(5i-G@ zR9sunz!Qu%b%-DuYZ47s!^ll=T?ulRmNTB>i!S>!&Ip3Ap)R68$ehOi{Z6W+hJ_Vj8Ct3Q^DQkC16=j!%}uE*XFkn) zvYpVFb0yLR1^h(U7veEc;jpZQE267ErRUlrki^0Y);=ZNVwSGvwn^iB*?P8sghB47 z`LNG2tD$wRI{;%I?o3mq76FXzVeuni!OCMoe0;yOGqvJxd+uZszD2Zj zIPnj6#ADn7;zh~j%({PD zKa*WU8leLc4Ia8^$J%O3`IE7?ruJ9)Y-)tuN>p8L6#Odbg@_2?{I!%)f?k@Whi6j} zq4^t{iTMq?dA5W4L)dAx_=jy6EVZ$`>;n>F0x)MD%=sV%9r!PlXH&UVpJrV`PtyBl#0iBa@s&Q&SlA z^8ImJ6v=T3{v>B4uaUA%z>SN_5619HQWpwFGI;U9@=0^4s&a5b5FTrt<|VqLGG*wO##=@Gmb6j%+PYP!gP-qN)** zd3iJhV_k0@+9VzEunY3E3qf{}!f96q*d1qAR|qPerTs^+a}B(EQ3zwOynXY((e1Pa zIbHmWj7GyP-(s73`gC&-3`P+Ft2~RHCrf#th7a9mYf0c##o2^v!NmZd*VPu*vfjP6 z2%B3`RZ%~otyL)#DPN^$3P)}-}4%l4*)NGfCUIZ!yIjcYkZxxAcu;Pf8%P65KhV z@oKXpIBCE1>DEzJb#SJCKqSIX)o|{95OgUwl_1oCL>c#XN8Xx`Nxh46#(RM`LgywWQhAx)k zrd_#lD>q2PQ&``^dXwVWlVLO$N}I{nznwj@=u7&VyUE_1!4Rw|6%2#ow&K3 z?zF~`i!(ZGDO>{;sIjGGC$Mu50wS~(Kt^-{9$fdsr6PZ=)grG3a7nr3MFP8(SuWdR zCag{Z7bW29vW=@io^$lGD%)H6J|AGQO6%c$z zIxTwOfXBqXv%99+6n{mmX`EjAbb=cyS}DJ;&qCx8ZeWROp$LeoBzKdG z4ri*aNP-~EHuwOA2BANlh0-t(AfbJuUX7?$j4hUp{`m1@+naAdd5npJvkGdcF2Io@ zv#_wRva)u+DzBm}d=A$YMI42r<($DF{S`!|&C1ivfz_^)4{pQqA&-WvTHU9fB8rYA z-vv}>2rQ(X?Bb8*1ctu;L(kf+6`lFP#OZ)>kgf|z zh%xEOi^-adl)5#q3^##JG2+8t2=b-L421>BL*Y!%HzjHy3jJBZM`N zY}qTBwB(?n+*I%JSJDF#1YsMZuWD*xZSu1y^L%bP5>2r(r8xRm<0e*rXK0F8W=0d=XiWTsl;w?n7va;6op)gq} z7A?qV=Mr+EK*4u;oAbPqBxzlf7rC-zt~XmMR~LHi1f`@lm9x>TEGn}hO2mI{?@dBH99Vkln|3nh-G--TgTLzTgm^$FFX@|70}SEt*t$+b`0iLMEHhb-g3>MLG18YgRhn`Ku^DL$+4Y9H=O^MUW;$all58A9f_vby~ z_=4?$Blqu+j9%Uz^_D53r4nozaCUZv!nIOTQotRGfzhD*a}zfYxRFd`+KL$^{hv~) zbGgbr!ujn>>XyEeIQ0JrnjWazffnx&|S)rFRygOWOr2LZsuUDdyW)OJuR%%)n8RT94V4uYWV2b&7FVlQzroU<*Z#=(R#8XA`$rKyCRz9F zV===GJ_aXYMa6(~EQWM;Hn7LHMQ}*he6G?NcSniO9-#N&yfnt{W?T)x|NaAy^D8CY zWOJFaPSlEx2ykCbl4F|nD|U4BU73!Ks85i)@1Sw`2mRTd%L}NFW&0F)7Aw@iNuQes z%S4?CDZ?$NCeO=PuBul6*d-!*$D_#B&JoOIfs#5l#2fD2fhp1I{31e|KBaWtdczx` zR{aTyr}K@%N@@R|8rn%RNW*8;7IXQ*c6(YZ7Eo~mXRi!#5L>Lq*$w{c2LpmsVEAAY z|7~e=-<3j~BD5-evR8|gYWK-bQxJy4mq#0gixZS{kMJ#6M*h+m(#oMd@61ieEdMyV z$61ABx)a6#B1Yv8euJ_?jrX#ZuTSjDhj(XX6#UPP(u9Nr`kH(v;}Y}_c59Bzy#Liq zm)iH(t-*7eOns2@#@1l{{%wuV0w2g<8G)$b4rl%Z=JRE1m$6d*P|@(K-BoFs*mw#s zbbBvlS(Ziub!U~Ti)~aeUCu1}iz0m?LdS>xHwh$q>R96uQ!cNSkz3oQ)v8G&>_;F+ z^(YzibmP0*Za3WL^bM)^%LTfzzhOO8uTo$3c(WVxva544eEP9H8?klHHe#8_(v5oA@A zg2=d{^gb+LCz?u?Smh=1;Ls~;_gUW~65!SmSzbwqi9tY&ocp6MXcSdbZF&i|o$Ky3 z^tq_bhQ;sAmV&GSb_iq*jzWTrdgEpsO-Bw2loY*J1sJhwb^dLs?ud>;L7P{Y`C&zG zB$z11gpe}|s$Z1nlh?(62L;7}IaTY4i&v}I?02^Xikd@?7(JAZAI)S_ld?*E^Bz8l)AqBBydwMTU69mzeAVo1~)$d>SJ-q3AVw~0w<>qX$3y8L5WMm#GD=SN+@xBCQcfgOo(_A$9`STUlk{yEm{6sXQZ|NS=qx?6Uw=@4HcNev=^AusPd=kk``78en2I;QgJ zxC3P&{Il}Tj9TsR(mM`%TFf>-4YdhIM8|;UTpmpLri;jjJ9E_rpuFYJb?mY6ab2K5 z0{_|q^CcV4YjiR^KW#u4=rW|;r9qUZ6D zX>xS5c7XA8WF_vQNw%@^NF`UK%IX2XUFim&r9b!>N63wi_BSLE+r5T!9vyUf4f zO*NCeeTyTXBVjUWGBPrP4l?TsbEG4_E-r2`bZV7Tvs`{V z7#!vYCC#E^VtkjDmPS*xRaHZvev8#_u?Bkv2KK7(EG;bqNx;c$-5HJ-93I~8b^AB1 z$z2tC7+X?L+nKt_ZhJaCqnpz}JM2aH00uN*?oUzgo4uhI*ujt{JHK^Xb{r14TKzvj#NEI+2VeUrk5i6m+I`g;P2r~+=zmsf1L znI~oM024V?!6%Lks9$6pc&?*$OeHY>Z=FbFh+Wofwqrze|;4heAe3l5tvGiv& zU2f5;#!bocp97gj?+HTl`3gbtkgx1O$KXb1z#>NcdoLjH2;O4#n$YSMd_@O|MbXM5?$;Udb)~J?Z9Gt6pi_)xQXL znA|&AOo|ZQ{!Nx! zzG33u?SGHFT6-sPJ{I1>NJ%q=6OktttH{jJ+tk!o)J zVE^>TKtCnk1)kFj6;&!G&)OhDK~+URjT%Pw?5E`>i=^Six^mLzCrK%_S17gCr&JJSZJv0j*4CcqlD8%vlZExA5^UqWOQP}t?-^oQz&&5cni zZ07B;hu)j}Z~k`y|MlxzUr$dfn1D64ZpH~b2i~ZZrMGnnk85lv`Mor0Y%VF;D=M|4 z?~=<`a0WBA*7xUuJSNawWF}U)D)adZky$zQ+0jM+`Jtg#g|N+FBBybcnu@CGe~67u z|4+r(N&1xPGE{*m1TvGN%WF^n&RY3w1OZgab-cg85=j`tt{(< zD9Is0?xOm^_71$?Z|5Jy{%C-SzTddPdAV$CY$UwAO?_8sYUPvha`|6cRg^v7@)Fn- zl^9>S0_}aywT4oWicd=m|8eEgl8(zYXbFJ11F;TzD3_QX010ipPvQBsu-WL|)6&L} z#~El$OiZo8Xk^D8_^^s%3zx{yFQdO}6HLL-hwNjtwQ>H@R6Km~AiXX6ikAsC z1^VSo-2dxWEK68qWV}GU3ZHc4>Q2GLMCwa4A5{^NXZQpJT<#hQQ!fA#eKw| z5l}}LdR4Mf_DGrYcbIms0zRQQgNTF}0L;Tc)@&oy6(L34+VHhVZyZkOj+aUFe?63c zPbzlc;{1FG@Bo|9+dF%E^e}?5h8)I2>7ztenr<>XlX3bXri}v=wA?2udh-Hk&Y|pC zKz8(@-sA7zzw2E#<*MfWV6`i%Z>t&P)JyKuv$NYYFFIn7 z^%{kSXU1esT=+LvR(uOfo9arnp{&?uxY()iA4@J_|F-^x1>=&${0O8#o|~r?O`3iw zCyRYotW^#irz^Av&4;kg+HMZ@#I=8}^UO?9@8-htK8gX7joE}Wko)=-=BEwp610;h~ zRI)elL@WLN=bfW#9a|- z!%UfO#vzJVk9w?{5sFpD>VM*W)%Ng9smBG z^nyZgPcJw&3y?hKcGDFYrzq|dkde1wM>Sk-6++R&a`y|{BJ~=n5*z2WZnU4Dbex?z zKtp?m;~@2$H|>C>S+kJEqB^yzvRxMgCDR8b^w5I#&!15Vxf~^6L-m@WBLXLR69Czp z(`S{5-M72D(5N0M|3GChKN|noV@yM5HmY@eJu7ysOiGAlhC&3zAQ9BDPwD3y;gDQh zo_ieGsJP-z_|DvX)Hk7CN#F^(OwpM4NKMcTZ6SB+^>$3RuBd4TiPTi(+aG;{UpWU* zfI6YNzEn0_KvZizq^0aA97sZAVY`@n*ErZ%>6?mq~<#?(de=1MjURAvC7~sJ*h% zL`c;Wk;J#)w4II_?d;6y>w<@ehXD02L)6J2-(5G`3pgZv|75EsJn-i=I|kG04Gj&9 zG7nOLaIM)bfuOQwMkjm5Ei*lqDPpn(XQYtQQb9wBq6TS&1`)n%+(6z_MnW=hqJ`c_ z3F(roq-tg$Xg=F7EcLykdyCY4TKvC|*1bR4@*wmeo;by4Sr{j#Du;{_!6S)OWxS>R zw{kE2jjt|1IpJiYjYdR4LE(5=Ypi++`nXaiFRqVArRO~dzD}_2Slx42(Xtr3L^H7d z^rBEc0YI{^uL|27vvR~RR86QL0_7z-%25P>7kvLdL)TX7nVcO> zJr=%N5-r-&x;Lu!dsRa!U!lN2=!zE>9+S7VwO!iUqERo#x8OftPtb-843zX;6^@%G zCNZ~xd^mGKJ~qX-b0sDo2?L{6f_33EGZ)=#B?Rma9Y(puD^!rU^WUTY8SFeS1H{$TnM`PU0c{$zgp??5OU5rs9 z*d9;}{t&Ej(5o(ZHf2`Y7zq0BdK@qSQtg>Y(7h;k$?8D>#wzbQ0&Nl0*tX#Sg77UT z2cQa^z>mQOU=(`5V%Nht2RsggH#15oGbqFlNPiTGZJH}nk%znW&bsoj!VECTF`h*p zGu(J}9MYw;Jmc1QbM<4Z{dGIv87XU36`fOJ;;YS6@`DC@?C_B1k2fSy1cL4Q9B}V- zj3tVQskGvD^8Uz<@mX0zjGXHJfmq$xae?3b17G|xw6({?udbwW@J~pl`x5G-`s|_bt0Jx6(2L^5tG0@YCYHGfO_LohwpMU~9kYq^QC3TbOYWO{|K;igG zl37XX_m8v(iHM5A0(s5)lUPun6Yqh6lO8Gb;3Pp>0w=S@6G3GF9ex2cfM~-7 zJ``GjDrUwL^fV!WFbcRSi{(2R&)p>Vh-L+R?F7UYds-VNuHC8oZHCKo}f=O{@dDgQ2NZIQ=Wk z)+IP%_g8nX-hxC#>g-2#bte>JVED2*NFyjB8{+~*>Sup0z-c?&qL`c%*a;z>um0N} z;>trTWVE*#T(*%wb~8FCd(f43#H%RsY$a7S62v52O+yVMAgGKHC@}A#frpcnWIB%a zYBNNiojeU2DwB;kX5anT(ftRIXoe($Lc>YN!c`ejWDWD?89LbyXYH`}F#rezGGuf> zC&641@-GYFcq~i5e+Pp88zL}8w(;C?--?X@+3 zsHzOs7g`ExG#`M35&}9;o@i??HgQ`(Ys_@$N<%^j2kws`|K1>$_*Sj)G zDND6Dp6ui%N(O*e-dt7*SGa#C6@VsljSa0GKO#e#7dCe|>)69|Oe7vV2N!$kP1jHV zz>^64_T0E$8&l&cbli8{4oG(hF5_0-_2WmZ89KfuKQ0y)xj6NpA)UamA<2J3RX4S!V;^HHtSVu#*o=AzAO2}O1o&tVSb&&}b4bpmDAo79j?#1c%^>L&r z%s8LCO+BdU*;a=E;9}N2Px&~eRZlm~?o%){Bzs<7-VYx?Mh95xy@U(^rC{$(Lt~?^ z{bOB6M|N&*ZV*prb~i#1e(&!`6%`d}aYC6jW_pW4xZOZxp8)kUFJ6)sNXIiY2EM2< z6kgHc>fNIl*0^|*(;g$#hGWZG>Ew4y4Dtgg1ko2A%5@e1-Sg*ZMr8Mc+dgUNZV?p1 z!>#rY7a)qhh>)a|Qgcl6X&OdN=heg7Yfqu1`| zQ)u8978W%E*c8Z;HUsZZE)_|tIx`R-f5_x3)B^qpdOPy+7=(m`0~Z&kr>EV&e(et1 zK@aRza|X4FD+B&bX2Te*!Q5ty?VV?Li*i#>pOJ!%Xb|@66SRP7B%35Bbl?8PC`$vk zHYt1RWES1%*to}QhlAtaT=qn1K?^XB%sWFePkl^&#(l7;&(W2YtPyN`l@>21goYn_ zVEsAl7oLz18ghxs%YfRk*e=ev=SXjNe+gUKASt~`eToq1e}5msM&$A1pi$`M?d_FS z|5p|`;D3N6C?uq7VG#ky5wjZG@ii5#z*_7bbhLX>#38XLlp4eNst4QiodagmVP{(i z3CVIg=UA7~m8VSsM@KTZl~HJ|1h(3chNhQo<&>OW1p&Mb`xg{X8#`cDack*5PGqsne@0UpAez_44@)}1x`Jm z$9=J|u*xbbAWN-&hU&wh-+MXS3=?_N+Zs5@Pc^#LNJuLetBn_Lcml(dqi=se9kO5b z7b*u{l^LOUW&gGRG?PbCVMwIm5*?6}DCG5yeOLHlp{ReS{gO`?;hBiyuj?~RU6kfMNf&G=06&ZPXvPl)pkB306JFQ!l zMa6gsA|z$sV*^P=w05(*gfK<|e^A;CeHh@m?R`bZA};Ije@ ze=1xLqTdtwq@^vod=vWr@*9TFe_G74LtDnmer(TNazMc(#J}x7fts)A zK!s8x;tV}9mBr`h&YEo5wM4mK=+e21hbP!#V<%ez$?5z*EeTJM4_RUctCZV74vD^a zjsmi$quUfDzHWyXLDyH06HjALve_acIBt&$^EmK}>jwdX0_A(fXlcQVmNm-I6?YpE zD_TtQFPO=()TSC<`PcLz6&h-KQ4h5+($&=+-fP-RWHpJgdFEf-It6+(DAdD4m#qGb zWCM}&!RcvWY%Io@DO+z}pR9_?^9WHg97{|u4QNNXHIQ?pPMQ@e&~O9eDrQ2BpSI*B zO_!!FUP3}JP&Y9=)X=|b<$4{eQ4R-70(i)3>gxI+OTYy#etS&A`i>Vz>rk;R7>z*X z*H-;FjWr-jNp*~H?_`T-++4G@m1bii2qqp<{6)K z_25GwLAR{mWv9Y~pFWYZ?=^3fUQ^K|Kb8FO!Mln2_%IV12b%y;?{X;oh)S@vzh43m zH&p4{&!0b!cn=fvjxcQ6q>~V33!0K|#R}BJmx{V5Llp zHUV8Q7RR==r?XR3RdT8zFYkFrN5^w`cs&lF{`n5)!1*(;uYbg%zO2zWt^DXnaLtT% znOiqyuPLyByPf;!Y40hqcZQszGMVSJ-7Z7`s-C{r0LnF^5!qK%lyQajZkHdQ>^g7q zaUJ~S%g-w^**W~zL9k_2skUo!7Q$Uvn3c6bAo5I?7Ofzp>bVGcDpfOPF(*)18d?Ju zf}*Vr7%jEr!Y#@IYc$6T8(?^l%R^CsBT^_|J_!2n8I1-~Sct^^LxlnnqX++d(9wAX zJxuW6Q)jeTxw)^o`7l7tc(=GEFnlWKuQcW)QCy6A*{0Y;7AFW~jst zZPc0RWDfORO}-mbkR@qrtp>i_e+>1@xl#*-AU=KuE0seh5Fq{dqH;_K4iVMLK2 z-VU>AU-khNT zhxF00IwLW=-%a#!T1|$9F{;%Mp^3MP8SHdOBq(!MsAiXJ*a@$IG@W&AeS43<{(|u7 zoK3PoK%%hb@_#F=R5o?Wul8WL2tF+kTdA2&YIxLUD!^+--lcmztFZ?js?jTUcVl z@od zJb1Rw_0u|AxWp1K*J0jL-oRboU^Po4qHMGuSWErCzk<~gS;GQzMfHGetfHpS*o5Xu zoqRC>c$7|mfsT(m;AS@XhfVlo87K?FLqp-`Kqvd|gcRmBdT3}XRD+eDo9YYpDt+xW z7?njgTdZZ>`s^Hl41<^N^fX0nnlukVtm`QQY+iR_zSFLc>nyU%Z2LSCwiCm|8FlpL zu(meJI0~OYa+2ebtBM+AXQnU%(NuM(p1~w6Z1{NGiC;2ek9YKsysm4j!2r&Q8;t|Y zEw_dbnMu{AaSwtlAs5XM?2j%Eh{SXgsZ61TsH-knWX|NWilayFt{9w~ijILdTi}IS zDG#D&Tah>70c{Rtc;ceER6?B}%*!lafNy)6-d+lx%FuOGppR z5e-|#!Orm*A>^7y(c*lgP`V*V`Bg==)qL4KujU3xavMJy2}#DI9`+YYjsT~LU|JRZ z*l(QlKim7>m#*_3IX@VD{+!#SFyo{4OGsLGI8#c5m31uxbrdFhCO|3dSTOK*B9JS6 ziWR%I;b|}_p5q%(zt0j2^DlB0&YdL5+B8ticoj+AX$41P@PUJL2>`MUOL#gYdDjC$jD2Q&cG5yAK0vxXiw^Sf(#A zVP|XB{l@;o)tLg$cxU&)JmQW+sE|^gf72iT0EnesDX3F-}eb za+Iy+>ell77d~fmNC6_^8vzTKy!pJT!K;gvFW|5!o;PgJ*A6Cn?xkUTn@o|}Ph!2j z{%rsWnQJI3LiQr=>4+5K?552h=P4OsC8NlaLdJm;mw34wk)P$UwB5=!$<=nx7XAMT z8{Q348hu8my}8FfVC!WSQA4Y4g!!oo_JvvHm-X5`@wS-FvnO)$=@onKcWOt4aEpPZ7?=^StsV)Zw5 zBX#l$NMN4gEHf%*Yr0BXS(dd7;T5p2_;O`W!N;fVxkJ?e#p&#n>x@eGs{7VL8ot2x zvooTSDK)}g9mIY^HnlPJ zekWV)*=qxw`xCq?n>SP0}vTbc*_fQH@Y&4$EeY9>Q} zoYY4BCrv7j)Y#fsk)YMp@hXq)*A#)WcLE=uw|eRo2JtPb-}fThYUcanH`9|E6o&{n z^iY6ZMpbosuN=t9m43g^q%{E2al`=GXZ}znL`}_GsCpC_C|9bx$tawLOr%1U)a;U%Tm_RM%z%F$?bEMDj9f>U}aJHo^u`DST*EK+@L|hx2T?`7SloiRf#fSq^L) z5Eq#ZZ@t6voc$IVbXSjY)>MtOT|<#kd)@Au{t&ldOTK@93ZNLCNJ381`ocN0Ttp-#kq~`kiv_3(&b7ecw>g)MZz@ghoS+V%^y6YO(StzR+75?=P^#Rd zbagW%+ylTt*Lx%K`3(HeJy+0bSB6UTJ=9-Y!(m+U=oCDWU|_WSv1tL+l#HfhR4za> zaAo+xB-PMbuvuE1 zH#iVo%>V1#w>pph25qnRms`>R403d2Cagq)-x;=}%shofspzs$_Fw+Z*#>RVo}>*A z?Ry_vK%R$V8)|w0Iw%juiMvqoc4#JPQ!tmG(IRABj>m!G4fK^qNAX^M_yqN3=>!p4 zN?mjhxRkYkhSgv=BIie7ECB?NRy0=I$-_7Cw|>ESTPROlXh*-i|kR4Zz(DEk2C7)>k-lUpy2Lr`~8JRMi!Q~gXK0Rs|9Wi zU}1Wl1+>hvD5gLv1*?E(uarLLQ$`dql0t^(B~|@4nLLr z&dG_NMMBaWcbV7!$#)yR!)E3%`$5>OQCo z!fudl*^LhSk+_+|6)UTWK~)BBNu*LDdnepz=Q#wJUdW5wuVdGQgoGfV)RF>SN5J|P zV4;i^6%{(q!%Ob_OT)qV-q^<(2(w|QZtyHDPw5&7*aaSc(7xfDzw`m7?xQeh47?0N zf~3rdsr2liFO&*fgZXI}OKQVotHybW+KwONN1u#j z#-}}PtDvdqA=QOuh74jf^W6Sl-NysAZ@v=vcpN?h^}4kl+I?f_M^(_pe`H74iFEcw zF#ynRE&U1^lYc4iB9hh!hZil8M}sK;DZz?uJ}DLFo9D4Z9ynP z#Y+0!pGj(g91~HG^qzzp_8wKxiUgJpV6tl%IvUcO$6Cm>t733-m!-=bF$&?ka6ii5 z(i1~XCen5w`0j`5PnxcI9+UabGkT;jPz0d(Wnx~FS1Q}sW63WTa7!1T!1P^BC& zVp;+aSY4NTeR4R#TV!CF?i&#B4DqoS3wSG;k8|z!c{SZ+?Ua?L0-tVQ0qi0Vhbj*K z=UzH4v}+@DpzTy>I#`-^e3$H&iz7+nO;Gkv^jNY+M*S292#jWiOro{ceI(j!0NL>} z5UB_N%m(oLfkj1c6ciL%dVAra{vx1fE&On`tL^i>^9A@`sCs>}2SZm6!uJRR0NLzH zpK9$hn+Y$-tEOzI2xgHDv(hW2YNUl?MXM>W+J5!GgN>v&gG+o~JNxHk?w+PM)&YXX zFIjvKRtqpo$&4H!a0+9$oc<<6Dt2OT39JQvi?PG4Rru>IKN-ax7!Mus^l>K+D zb0tbn)S<}dD41DA=te;s_J-X1JisCfc55gO2?dxM(XB>Yt?$iJyui z+=@N;%iLgiC4*u+^KsU9O}F6}_m`)cqd>#xm>5I|8pwCvCDGC%L>Yehb82D<8%crH zr)!we{^f%eNK$DhITWZQoU8s_;J>%)TTq7|H_TLL0b!}~-lp_^^h@nHB#})zG`8Iz%;hq#UFyoANUP5Mn z#p66QTq6=aydG2l1M&Y5C9_KA|J+`wqVUed-)aYnUWNKS#y@*M7LVj8u${Y?7VX(dwTzk ze>4>oFoBR1n6rcfTL-9A+-U9&(9W&2r47DEN45_@EsubvdRS=IaGga0b*zhSNO0by zN>cL5$}q1j=$_W;${+-7{{j8JTd{XeR+VtaY1OfXX9m`Hrdk~esrvP)<4 zt5OHZuAc+;20X6)HckM|jqH+H-d#&45#FXcRuovvwZCd;+@o5N6X)Wo{{NCUu8Il@ z{-CNytE#GE-Z3)+YCPx7jG%+&yBlez#VEepV9*2j_~hio){Byok{i^D7DX5L8(O{Drqx z1`OXGny?)@z+`k;d3hKpTn7Bj64@>AG2x$iUhTeZ0Q0^pcJpw7A#_aZ5&%mJ5ztHP zwrKE>Lq88aSP^7;N@^+x9g)5NPY`gWm>?kJo0E@Bs-w8Z_!b0?51ThxJ1J4rGoR^` zUiPxRxZhXD#vq+N`sG84*sz%yW`D*2^g4loAe*EDmw*Ds&Z9sFjJWsD&Jr**oo6B< zA${B^{0z3W*or?UUJW3iw5_dw3L`K=5z-UojHJMEy1D@S3{qM@y1Zxb%!$&>nM1uz zGn~D~qPQOrw)b~BpzP}U4kYY60Iz%w8oUmUkK2LWRUo-|dMg|ifACC)YFT?}k?ZFb@fhMG*qZ1TG z9Vd2ve*TJ@`bADo&OONidPCY|4jGI=$~9&MAX!O@93wbnL@M||d%5ee_75c>Uj6%HkpbEI< zCE(oX(5m`BOht)W6+G}b-5fb2^18OcLtX&Fz*`+w_?pmU%6z+SdiCaAnPBHR2KVSeb3#=sYDCU~Hv7051$ak#s8_V1AN;Hqf37Wkt#v_a-2AtY8D9F9{Czz3vDAX=lV8 zpLdQC7nJ#H1F&(kC5;;ZSs*KX+yOXw0c-0rcXQzIc(e-or;8Ebo>^I0LGhvrR~hbH z$|n$|%=P??htu~aCMV*#3EP@8nB~Y?| z7FeD8X{T$Bi;9mo9F!o{jNL#V=<^?x%T}&ukEd={YPB<6HDjo+dE>vu$-~WDC4`Z_ zBlxesLvi+HpMn2F*L%lv+4ukd5~YxkP*zqVBSf-8D$14-5y~ceD|^q7mA%Qx-Weg; zvff6r_ulLGJk)u8&g=90eEoCXuJgLi_whd7$Ln~F=kxKnKT0>gkIx*P#N>qCGOSv{ zpEMfNe5a(A_Ta6U#Jd6Zd1-l>z*qQ;ioLD#bzi#l3mF(Pf|F>bUsDSexGu$biO{Ofy^L%yp*&m}2mu*Fre9pgTA{jO2_?{b`D zZeE_W)8^{x?CM)?ZtlJO^z`(m0J=Vg#YeyxK~e*t3*4I5)zu|aOalG|3u3|RR8T5{ z_sKXd@IoyAXr|?os3W`H)f&vscl7&fW>MZ=x>R~#e%$@0`YOzz%*g7WnzrOt7!L_4X%b*TTleEG7W7nrMBa;Zb$;P&f|PyQ#z zJ2h_{$h%ZHd3jYoE0f^kza5&WuwMBF2XPik!h@J6@>kU%nqf&L27WT?S6!`EyJ)M^CIuKcK04C$_^{7Z3 zV!&2<*wSU!!TWEkS{WUmb&_{^rs3o20n!ywp*0!v?j|fzqxTbO9>|X&{JrCSX5#Pj z@Y8&zf4#RrEkkKTy6|=wv!qlZI}xgAYktECmqQM7n2dRxQ6=KO^4GSm@)ZA!(j{#= zlq=&E@|uZ*BucH-{^LcKn!X=v)ujvipWhEh_>CVV*Zij#3|*s^NHKBo*7)|}VKQhG zt5tu_$>HaHrKRNx4Hr%>F7W+`h`1i=8W}nE_2V}Yv|DBO9o@IDW`ocN3{1=xpE@Ym zV1jly;sxHCBy#Y2?{X#~cpR@I_9e0U_4>L$z67mo^F$;42aR7v%8g2H$>B`jCs~Lg zVgJV-;5|;7ZvM(7$*syC)5Rh7zC&fII$b?Ltf<3(CP-s=ty@*$5H(J`N$S=OQdVLT z7Y9-u=@mP#&Q4{&a1`K92P#>wUo+}|t~ppBcpaOS{M=36Ru(}|yLO=?fw_)*eunLZ@A;xST5lGJtY(y4YH9=@f~*=9=QHt% znTqVu>0Vi;M%Ib;TGYOstt#02o4ROD_kp6lXAN_HXc$brLu2*4M46lOyd{2B+h%}( ztQh2;*4t<@IbGB>$%+9RDSez;t<|@G#I;xkA*)rpHq0)Mo;-N~SS)H9sg>HGkdQ>w zieZBQs>Gz9f5xzhk(s#>_6LFG<@YOrVNWgq$f6fc@jR)Wt&{M48!LqrjO1R5G3c<%zd6RYyRO) zUX@FG7RJm6@icxQ9W5Twf^coKr$X4+*pgA484^td2Iq_i3oxO0Tk}FCCk$)1*mxup zC6!lL*Z{=j$tWN0VN+K_xlu(iF?Yi(#+dzqL0VecUtc-|>Vc0-^)ij-f9XuwXivAV z>0_Ol@(jGDplG|VQ=s1A3BL)BXHg32IXr^;>K?TG(#m7)h3-DK{K`vnWnm-wtV4_( zH5U(luj5~xMOR%2xBi6e3T5p7y9liT&G_;ybXY+2lt-))TI=9onc6@^SQwqj!QLLy z>L0zjBqT=k3hD(23G7tfKzrqnWF9ztO@(?r01mi366K00Vs0eZ{8mH~a4KnN51V;9%q9BLhshbcKY1 zl9Cs+lbcbAjM9r^`cvP-lnQl&vuUp=c)uE{)oKc85t3QlIo#+d;q5~#tdxQN{*6e@ z8QPSb+}y1}`G6sVsR5x$m-8u5lN|nX#hbiyUqvoI49+Ttm55#)G+LyLK2KUeCOSe@ zef!G3z!|_A3a-UPrY0oRcMbQ_il+r~Tc5=CiOytN?A!v%hu#>}uSI*w$AwvDEWb7c zHe~RG4eVMos_$A*8ry7J^KHhF?~bvq-3yYY$|6Qy6~95qV$hbhg2OBDuA~$RhXw~* zGRxt7@IZ0jQbAh!a`nlvy>i)2bOD*zo0(Wh!V0NCc|}DDY7Dr!u$^K?$hy1x`@d`7 zpS|a>o0lzlWjrBW-@?pnzT3dprxxj|jjBVu0}cbPfj?t_Ef`$J;p`POLw_8=m`MTM z3{5O0VGwk5a&f&{+460-p?k(4sOYD1#j&sOYE`QZ$vu9jzEjAlxplo3ljz@(OI0b-oIAA$&j5 z^7M2D=th6)QE^EenMJnB;4G=VyqYEjSDGh&G6XwhvbzMSeTpDiMlP-dMJyrXxBfW0 z<=r6`EyGy0s&0;;SG&VfLnVFABN9`Aoz0IQpQNw1#N-a+Hh!4rE5m_soD?h^N7Q+b z@ae-)T)1v9ZAPyg7*i;3Zu6F}+;J&)kn=qLpgBmW-Hn|~=ZHUcynDmovd z>TC~{{=DnBLey@AMk2&ezDcbj^|~MRo?e0DMa&XD=^{PK=l-Cw)xt+=Hk?hXpovUh z7i|*oTHJDd&=tZdkaNW{4a0*vhA&)(zGtbW5#qjT9z>jM@&O$%tl`$J#5D}-%5huhomZceKXZ_x7OOu3$IggaF79O zhXR|~)HRokj0})I&G(th$;wKf$}%63pr4LH?M?uZepuokRPVK1r>**ghfLm5`pV9o zj{^)+F-4NPsPC4@7Ss4YW)^;+a_d?Y=hCMnS%aw|53{O(9QpOflI_K(c@D`*$&TfvM+JqPvh>hGG(;uVdXQ z5>s|RM@L6Z&CFa>avs{+@?6BmPUzBwy5H^kuiyf}hJZV!zbIXHC13-JD9GF}iDn2h z{ZzZ1h&&D>@4f`;MZ$@F36BRUeE`=;sbhPF;X$gyE@~)I$iN??MC+-c(?vj1Tuh6* zZl$3CQ?aPUIYh??%WXbz7Lrp^TBM;J0HG7xkmTkBBwpRJoN>-=TXGaS6Uf5u&K z0tbfz_3civOB(5h+)*Db3+h&F9+nx(4JkS%o%0MJZn>eP8dZD&NA2?L5>`r`s8k$0 zH~e7DYoKm?;R~T^u3kPqA;OwEI&@GC0XGDFKSK;q;~g9vH2%OBgN60`^koX(a_Az1q2qeH&`|sVU~`7cpPZ2lOL-0jP`FgEI^4LoGKrIWvMk$^?AuB~aG+ z_(9>4|Mq6>>M7pBKa3Q*CfdBR_cbkt4!e@D;OGz8q-ToXyPP#uRj51mp_(gWEDRvCwv7Nye|MG z@Va4ahK1{|UuLYi=v~XkQ}Mg7Hm_LS9h!A!Sj8}@-6tj4w`XUAk}5U31+pQ+g2k=* z==i+aJ>Bu;b1PY&g}yvELuhVp8wYaBW8bTZ+A}P=*RREAWC(wai=K28t?EJyibw}1 z)Fv2t8Ta1-X8a+pWrRpN@q5j3-N!1oRYT}!w!}TLJ z#)c?ET;V2NQbu8+j!440jfM-Ab;#$~X#fbh3n4K8%?fGt%!8r$BO`kKw(Sk**!hLdzd@$oxibE8OgkJ;KlPytQti00;hSsu{HtA_;4n*h zUQgC<%b#HkyAx6n4-s!-d<;bUgY&ep3#khK`%s=ijtj~$1NcyV#AD_r|aAdByd;WPdJaY$=n z>_*4khe!RV2h`lGK;|Ew^z&D=iJN!9#>?!dIXS<8NtEn(m@&*UP>8Ai{KX|ElUxCw zm)CXyGmOG?1HmOS@oMK8X8&L_E=?oLS$as={Y1wy0SmWhgR#p29+*szms*#t8P+qa ztLzLocvfLXkE>o7X=^aleI?3D(l+R6_v$q58I^=20*%JskMlH60eii4$XN1oh%NDB zt?4pCd3t_*yP5t)phK&Vt{DsqoL8=(t1z?I>|F&=On2)WiEoMYJedBCbj;W3=}jXW z{>(r}?m1zk-#l%<-{|eVdt+HtgJCEnbw(j}I|jDmAZuds1aiu)v-Q7Wk!~+!67>St z%t|zOfu|r;{h&wS4Ua4spJ|ZXeWI5y>jM z;zh?eG<^Iy@$u=JPHE}Rf&}T>m2cO}w;TxF(Opf-9+#*Q5eNFvh}-XTwlw#qrY7X) zrK_2q_TtV)xaMF2Luvf80rlEwQqS5?pFx|$>3mbmJifFEZ$-pyC~9GK`s{*It0@Kz z`WK4%St2hOP_7tLHUa7Fo}X8*kuT$e{LeSK%JktU4?EN0t@+Hn*KuXIrpbvhNBR zxq0>h@jv(X?=mb;gx^lR$T zxQ}s8#IWrbcRBNZ>gXihV3mU7mu=#oLW0+(2?UmqPB#LbID>93qzr$(SXR>o>7N_d zP~(v9DGXeX4y<~M`KZ-E*|!RKyno2%0HXu>$g5XwH@~^r#cbU7I{jtNICtNmW+%9t zp~o;-CQ-6vU60Q2ei?sUMV)lc?x1^wBfC|kiJ7vNI~&OsUCx~vT1ST_F>u7fwke&>$xy9ie@Y*yT`pKgf-(td7* zvV}`*DyaBxFbhmx4s!#1D%-7Bm%ridxFyAknK+jtU(nG9nR|kp57!MwjDR6xS}|Kk z;f$M`^;z^QrSk&?WlSS2nu7k%BAxu!Te}OLwQ}9BkA(j`H1J9#=w2`Xe`lS9t5s`I zwD*emE!U32cariC@G-SB0CpJ$#UIl^7V^AzS!C|=&IFcRf&sD zLRsn9%fLvWzVH5zhd5`L0`U;f?D6`;tO8iUh@@&6W|6vdV6i`95H+fLQu5NABPd9n zz9|j-1gli`q*r`u*=k$W6>lL0{Vi_f%bY6(+6<`?qzKm6|GH-zhoFW&+s%ao5-cdB)9c9^`avc^=;8#513@t*?Lz)dB^xX2$ce zamK#8o2nLPLllq1jU$%5A6Uw=Ba6e3f$Rx=^+OdPRVMeFBXck{y8R z$;FE!Tk@5iR6v7V4B*I=LU&Aoj5+uX29BrT)01@PL6(YamTm8XX! zZMKGJroSm7v7+SW_&YwGXFjWd>CZRIsOHvv)p9SuolBT-PdDkE-R{wk#s_g^lepkF>VbazP;I5z z3xJTcQb8V06(SPh6q-6Z#Fh^WTQ3ILZFPUg%7*!B&E7*bA*G05@87W}wT|b@Vu?mP^oi@o4+P5mrGnLHM0fp{wx6~@%_U1P;47-_ z;d5n%p^rZLBFN8LjZBWZX!@DyLd$`IbH!DERv-BEV&V6uRi+o891k*=e5u~M1h^Ry z&DVW1GY>q{EOuJ96G1+kx4rhK%Lgw62GCW$UD^l|Niur)>UAUzwwR@+u%23lqq(oa z+R^qEo|r|5aB>LBX7R(aa*w=Kk$WmzL{1`{Xj9oJG$Rq$N+bO@=Ybm0jVjw^E*CBi z22W+DlDwabAXiImNV*%+cm|x>J2^&4HojW108}oP$ZO#uoQsW*+VtjjyE7}x@tq&) zG;12^`Q#^1d?dMp1(`{jMlIaRFmh!&ULhB&?VTZx|JBh}ZZx*n|F!qqLz5Y;yUm23 zzP!0{QX)8M1xRPpxI0h5&$8byt>iV-D?d`q)K7`*tP;<(H#A_lo*!(@{}qzJz?fA( zy6dp$&n)DiasiRHcg=>m&$68X&3Ve`1>iiyr#AHeH-z8@%ifDIsOA$CJH;NhZH@tHX_Vm7V^|?|PF{ z6W|0iQaqOEelCABt}Myb&^+pBMCI?vWQM&e+xL-&aAB;`)alaaj$HN87|_kxkVptP zi;+EMM9x4ETOsuH&m3ubJ4rI2!^z*XCN0)b1WqbcCg+t?kmGbO(dir+^n0DF z2~LSGOYg#7;gsbR5yS2goI98jpqH~fWQkQi!{Qisbxv4B246oU6eJ*W^yU=E#l4>8 z6|yxV+e^_c4F{DuZ%b@!X<3=E<@?@uaT}E?=q^A81v|r)oJaNOFXH7HPvv0ga;F#e z0u7K^;X1rI9~p3Fh#$xqFzu=f;^|R3QHNnQLNJ^;4T_p|<@j|eDb6*?&}i!Ny>1hQ(4NGEc(hLa;JvL9EFek34a1d@{SN2{ z2hSlR8+PKN2c3{&#baDRZRw4fy zGC>JR7Z~9Evmmrki4f;gB#!xWQ_cBvPg%`Afw;TK|L>B(*Jkq59U398y zy?ym6ccc)Ec7edri((E*d$-_xXM??g6po9Q@%36H!!1c^v!Gs((m zD#?rt7>}LC@f~m6J6ATO(e3@cF5&oD!B8HJKO^qne7Pk?BJ(E_lLn3@d-q=ZZG;-o z`)r>gP(C8Zt1Yehay#u@wOrJ8%w0k->$6z|(1wDAH=WgaopA`TB~0Ap(#IY_ETiAYKR% zNG`7OAdv~6HhT-&I{@5Mv9VpozIwaXvR|#~ZmCy#D;%YQ4q!K81Y6d3WnbiK%3MyD zvsv^Hi^FuVoT;6KldX{EYtVcpsmlTZ1Nma2=Y+HG&aUXOHf?cuCZ<_M?}9Pb6`F?^GBPrB_4Pw? zogwz3wSQ-Im91P^wze6HV!sf!49LaMK^!3&d!NYC(sCCJJUWk_gAHp+t7>mLx)co5 zc?SI~HumT{^02Ng=Ach zcZ7SLD~PeY9&e-@1X{PnUtlYlH8~_^cJtP2wO0Td0H9tV_JUyRRlFKeT>O8w%hax* zM)PN4!D*1#k^K6c>Gec{dlDQMI&E`rKuo9cV8lvLs?lF0rBhndZVZ3 z4P;*74EgV`K0}BFwV+_l$T8^iptreJhs{dG!$S&fz|vnX*xF|zY}yfgT0?^<$#ulK z2-HUa8B7t6fa2;csLxst8i~IGy~YjnVwyiQ6_ozt5O;vIz`Ww(@SpFX_4t#YzM3I| z^<{ugYq;j`25)xvs{o%}1$gxL%WFVhdjPR#m4d9ScqPMTzBpIJn(u)>S-s+%C@0&0 z?*@jh9r>rE-Q;79h10211Zr@BtJV<`Q>`}0MYMOHBt0u8zH4piz7zyADY6-cm7;d^ z8(B}&eoI$p^0%(!S1?&lfONC7Fyr=O=0GpOk2oH;{wO$rZfSGTAi79I<_2EOz=P!q zsnN79-BoCrwmLl2=AbUo+X54s22g%T*tNZIXvMxpbPfzKyxai6TrEu?A9cNi)+>1; zx0<8v>p%#-gJjMV$5RnZLq}ZM!|^(op^$TN<%rmo`gc&ct={7r9G7MZ65 zPaK5xi&Tc+Hj$T`O0TZ3hrG~ z!Ve`sfBsw=O6{(d83KFB!lbuh#%VRC7Y{VGuU_p^@fDhKLN02@9Ep31B|}E~%Bh!p z;>T-I>u+EbXiY&aSM8{e93{F)Tj*c0Z3S-|P=3u+KG9sPP^lOG3R_%2Da5?E&jMa- z7VI~YevDMZ|BcIC5)cbvR`K}czgtJ7_r>O!cmr{ow7h(;aaCQry7T&EOF;n}7uQuf zI=YeFY_H~l-sI%O$+(enqZ%>ngROE$I94wWB~2e~Vn==dzGe5U_X}*U)BSw=5feQF z@(^Wev>?94zZrZlZ&BFMZ~K{?$E$F=c4r>3FlJu2KLh}I^Sy$|KCQMG9>R-a2VSjz z6lOssVhXPe!VHsEOck>_4B3J77^Im&4(a)}i3<<^w(Kfj}5+ z)FH9SjEcGj(Xqv?=6>$rMjMDawzILZ*ez8e+33xzF~1R_C-a-JTR-?!iKEflHK@D4 zad7P7Eh+J8yqDpwyEF8pl2>?>f&S=sOpKb2g&$c?C9yhQn99h>OoP0)aKD;swv=FK zw7crD3rZ)V?mH^WT0NI?A#m(wW5xEYF>e6nSk}ug`<;|C+VK)2|2XK0G6)bS~H;Cq38R zGS{$U+T)G(R2pYnJXQ8gsK7p$yLj}rEj+zL38PwDb&8bh#3}0?MvJQUqmI;^cLnr5 zXNhPT#u!)BjSwlE-91SJM)9}*fPDYua@}8Ru&g?we@4_P@AZLpLVvAKb=UFl|K44O zuxh51G&s~g(;7r%W=M}N@u?aNZd+4fEGU2}+4 zaRoVXd}1Q{U&nZ^{bH|r>CC}C_0jUYpt{;#jCb>@-UMN1%*%KbSL~gf9-qnMX3-3{ zxlP}MeW#@1K7c-O-6Xyk7m9se?j-54B*963k>S8lT|>w7Q*q_#_!L!}eK-({wk1hq z&mY<5rDfSTsBSV+ZV7VvGKV&C3R?_NtG>^_lliU_Fc==z{{G~wZnwWb!Za{gFs3{J z>o-`s`EK+WZvLcUA>PJ|3cq`rJe(!hB zCvH*Rd&^uw_?uuRIag0Xzrk_S+Zd(Sje*foZBgqO$LZ;QWBd{4e0TR$apUL_N%`-= zGemCJP&I0g1y4M_6PApmNqRV+_Z8l;J~Dddcjo^f5#We~s`#=xNz?|^mqFaH0^?IQ z%R+ABqkhwmk)MvA9@ zrMT2^Upy4}YwYIvQd)X%&*Y0zZf+K-D5~#MRcu?~Yi7`nE;y05odCDd`)Ahk)+L0O zZsp4P@FCG<(5keuJ_y#fE*#J{a8}KKX^rf*Y-VDuC%N1FxktUgO}Sqvc&T{1p83|T zxy^ecwvIBHDCM%{j0QWeoECd=U(;(@#Rj6@Ai#EY|9IN_Mkb3`HR7pF=z6w=mKk0LI3{X%2 z%TN?KA^>$>rISlapt+ z7cK^K`c@Z0cze>JR(v{DC2Y-jhxf!e4Oxxn3AxMHgZ3oJ#s66WMYT!6+%WH?J>U%A*vJ z{O4Wa7j=8Lk?Kj+P^M@cNXAnjK6?A6OBEHRIM3%#*KqtF`U3t`P2*#bx(EHw7VfzV zz^sG7cxY~eTyIr~Sk$BRduL}y{iTaExX`0Lr@}?E4Q{ZCWgeLPK!CPfI&lf)bI@FMuNHAA76d) z1svNy$6gfJWj*$JwMPAJ*o=Q}QQG*eqg1wuKFnso016F_OunOzXvD|o%UV0{|F-nR zf2nk@OfY}F_3W;e)O|Cb%!OF4)P2J*Ge!zMk+pzD@hw@-0=V&!IPv@vLe%_~^b!I@yI z>M-tAAg2im_+7}=n&M3o0Jjf|D=$`jj>%Xm zxjYnYg46*(&e`xo{#HNv6|IEb3iZ%y-lS7r&u%?5d~zYAfGPfG@rmnOou`CW;xjEb zAd&F9VzQZA>DT(bMFVw2R-nxRIZPpgPyQuI1hP%A+O?NS-OAMM==qQ zI1!C-e&4|LE%duXRR}6f*e){?$GrIKIX{?%Lb>R63N9XA6YRr#mw6KDW=|2h!F;|) zjl@yAb%coNeD>zQOy^dx-R3(6pkn~gRbCzLuCWsl&z0_;yF7LU7##Ck3qqntp1RDL z{P}sGPrFgZdpivzyR0eUn4vUbU0~q_x>HhMc|qJvVDd83W{8 zOr7`{$t*aP2tcQN&_lkE#{cQ9hx*2J&zMP&HfKORj~Ui-d!H8$fu^Q}?(A=k#tT%` z?6roeKjCbVuiHiK064M&#yhmM7)=4>q3;t1R=^+Azr+-7MTq&*B|7@Ly8TkovyKfg z)`!i!x()l%E22}Q`&$b-&Vxq>JFQNIzp-B*AMO=2^!{T#|8UD2|J_C0$z;Rdx85=8ni3=uT#0~Ba7$_>0VA+5FEEdDGkEai@X z3%QV^$Yj#g)YRG)Ir!xb2Nl_@sNNhR$4qf-Bu>Y|Kq2%oy&cOYz;;ejQQs%*Qv9Oa zQ?Od@Uct-v=B2&`@sBshmJGw?PZeb{vkZa`>L2co6+VJ$!kYxx+w27=A=by!;s&)N zVzz2n6*j|yXd*8OCdi%e#=(Vx@iY5p#&2`TkXo*hvlOprb9l0`7nWIY6D^diJ6;bF zFiX4yJ^mL8ad}K1;WUnNuvsM@$J5gh(VZ;z867aIU^RLRpuRN>cL^6Ov_V4Oa65GF zZQ9FluCm-b2o4>;C1{G(#u$cFoUuKzCiL2bPB$hVPvy`43BD>UP>0~F7!r3K%QXI* zUm%M4rFBYu0|pjI=`<74*~ma#nROMWul?&tKja+4zxV1I*$w5cm^CLC6m;kcpFV9? zuebyW!Z|BFi5v`rgeetEe42b$QV-v{p1$iip-LvE^CT~MFz^A>f}JF$@e!dX7)oTn z`4}a4t0|CIHXh1v4gE46?ynHq?E*ENJxT8$n}~^OYd{Ee68rs!B}>j5{%kS~8rdHd z6<5{RDD^0F!cp$3#dQncnKYJq){UjuZ-d-io=hMSWfjZ!ICnDc30fkX64h1s;I2rvy z>e}p7Z6J!M-hEQStio|W;MxVPnL7sb>rTg*xO9+qfMrE?z2m_Kh01p^EBO3@Z`D^sB?w8^BH!p=q$ zY8t0DtRfjndKYj+9LN&nudPJC^Y&^s{qr>dahSx#tOmbF>(g~&08`EekfQ2SCxo?IFrWRs85S4?u&^zHmmY~B8c$@qwnK<7b811>rYdA4Vy`(?gzm8p!QulK zIB$A1=&aKM%rk-Ou7a`elh)OUPjBAo3vuG&G6-6fj>MeaKR&KJ^#Jzv+Yb}-8D9(R z*yz#{>DVM$gdaSN#KA&kLP9&z7{yR!;&40fUEBH8!^7#5)y$#2v90A2aY{AoH+)7dr$Q7F$a-(MRdv;6s)oaq; zQ^{Gzb4`;M@5x+}a>OJwNI=_XS2h%Lm+gP}sruH3G2H|pMf_FK)`Td9!+-b(F-yS< zGF7nmUuW!`q%QA?n_j}OSR7GUAr!0wHma1|8G$NyaeIXsU$oNYL^l|3%i3JQ}iY=4ObBc_2*DaS8>5tJ12fcnOjloHsT%66QixLvbgGkOW{KbAL z=Byvkq%gyRRx5jh@8etHMvpnLGo=6|qfB1B*by@E;$JvYq*s<~f{18bh+yfpdFdEd zE!FaCk5%PeH@}RoVpf;Z3m2dQyX`1EpFb${Q)$Uq5+fb>TNLw+E#jdU!wC^dPdEMm zt!;8W!zXv35Z!U$<71Vix~-#m{NqLpIml9)?m|6!GhINC5~9dw5s?VC+`{(4h0ZzX zm5=k-UtM=TQZt^(KB1uCcvIW^%_Bkr52jQGK~rgPde{=oyg!{oXZd)Blz-I)kD6hn zgl$2BC4B@HeGvv2=4UKk;NNFQjMtc~XYhlMVIm?2=`bP$A^-G+b;`mbcm--*g#{r{ z>$=-~q)C$-`^oF>jk{Z001^mD5`W8bdIc}Lj}Y9R>c7@_7W?6NPa3Omd`UeId0Mqh zTN(6jkwsu%Ha5m3M6JRS<>Y(yf#&OP7v`ur&U;!dDQ!3%6Zxm;R65xiv(9tA<^(=z z%xQO-I#K<#iI&r|4i343*KS^?V$V4-b8`;%nnRTmBSJP3V`8=1!CCrTCRWeLq@>Sn zI?yny^l+5Sl1*5wJu_0gaOI!nbRHWK1Z`HrNUN+kW`J$6{b39=l}>)4#2`PeHzc2( z9_FRfbz(Jca+!enp<`}b8j5AOfXI@Eho4Kz!U_;woxR1`_K?vTfebz5ulL}u1PIm9 z!^I6}G|AzEA+E~9JtwjbZEgx`YORKvhlKcB`LA<|)wbeAv@yuU{U`ZiXab>E&eQxw zMx>WL#x^|CIlLzjfxOy#!e5`*UWLKE@uJo0@Zg!ZA>M?D)J?WeN5H z;l=o$Tsw7<1o*)>knz~t1j}lX-rQ2w`KRS40fPDoYUUS(!gw@0wCfdR4<3{?h0CXG&G**A7-U+HeRD0P>R%=wsEdJXtv<9Kfu7jGc_(TvC_PI zT(OOHwWbnN&`?TP%{4PnfDp8M2C0t6KA=X+*66v)dG%@wiv9`Rp~(xd5`w33-~YH| z7;+<@H!o$nX~E(_(vFjDr|=kb=!s81XA~){R3mwx@MlRv0N#9BgzE6WZ2<`D2clDt z%r1l80TC#^yLY@G z+yQf&>}HdX7%EnI*Pt@TN6sd!h-VCm&ZtYTL5rbxN2Ndh+YU-@wWpm^^7@2pR@%Ax z{`$}Tg2eFKI2zu0BHAmy&UK7q359OK>Z?~*tDGou9q|Ykc#1Pye>_+lJ6XN96OvhK zlb&TTX#|Oc_W~(f4gRn^dIPtV)eu&wTL3bj1L*`uk+N zB@n zRr=jrj?>@03yn&}dvrZ_e0S{27t;eGP1Co!V=5Le9nMhL?@;n>w+jvsN8mw*s>uwj ztTO@7x|N}X?ctdrk8`#t078sH8u`Mg#Nk!uAR?m&T5m6`pX`SAmwVnd;AB97;|5Cb zk1Ju6B7bN7ic%sCZ`JN0{@ZVQUv)u`7aH%YcYKL=oM0>>LUj z-|h**0Oq`1p@j}bsv-VQa`LVv{p5|YtVUmVP$8gm0nr8lzDz%of-!G$2X{a^z4eA#pPVa@Y_SO}867FF_rU>d2qtnrQ8UL-#$+bfh5uvT=|$+kBy}o=D}E}3_JTF0Zec_mk!ijT2v{#J&bTmW z(6=_U^Dc9uDIqf*T5KPl+>_GyXXtB9Exq;yFH}RC)Jqpzjt3fAmg`Tufbw*FKgb=P zQxkUFvWSC9#-Zv3*wddoeNf52bvYTefQNI;&FbRqaH+nF5^>(-rU3O5CS@ov2YFy9bi+hx- zD1Se3Q$3lcitzsX-n~8n8_&ldX+zmsB&Uy^4RmytKk!<&NAi{|R_rL76;T(aigIzr3;yEu`dIAOv zw3ic-chR)b#a|^ZUgs5fOqHThRbFU$m8q*b)-8h3R)_kI%ywYhBgz*uJNuK}Q|)@+ zebJGNyqLO#7usGTAI|Do9Pt&eH)5SGR9zl)I(npgZBK01LF;F~C*bWb5r5`PtvJ?Y zbRqhCdrbsorEdbw%N^p>2`2BGaTkc1>ZX5K8R_B4(VB@Jt9I?{pfai`?MXY)8`ikh zJxM=AfLzPezcWZfuO~0tfiJlT$2r-%_wx(RmI=>iFFr`6=5SA3c@|wG!t%l=iRcWK zFFq9p8mok#Z>S?nq`p`bcc_CxR%g3FqO!4Vmb}%om7{6ZZ+y-1p%UTuO^DOgBMO)nl!@ZTj=&8v_iRu?G z(DI1T-OzsNh&xBq+-VAoMhV}zAzR&lwlF^s@8S2IrKK2w5}m9V^)KN9Ekd?k3=!*z zV$pX~aL*vOM3JTVIjFL;B-qb3A!oR+(8bMNo&T=mEqdYV6UUMkhC_{Rl|k!CGG=VF zNI$e2Xf`qq7KLOV?~m}PC5qU$5aA17KT!IrttGU4U{!gKfMkY>p9R|G`7$!k>0Mk? zOhdnoF4H3ydWS1|rHx5y^tt%)fth_-joRIoXr>=~N)Hl6u4W5R9gV3moE+3e)2O=&h3a$n0`!91Q$Bv?&Xon>}rVw;kPjtBN=*oAv|043f ziRTNi>BN_4r4$%gXKJxo$OUdUP5-cb7O`X%=QiE`6ty3@NAASLBs=;4UjIheHgzP-oFW#Bb>UL^{%$1p9roq^ob_K` zJnKL4qNjG}bnVWfvA;vc#@Fh#(1u{slm@YOg2t4|9CF>~f(pe8RRkdm-%HP}5wkQW ztW@u8QSUk0c7=W*#zd~PEA+F#eR5C0U;794QnK8aiy<_d^K*->`4`sfe~+xsHruWr zH{31QY3A9-LhF7HmwA!4!D~&|lE*mq#S_ERz3a0RW46$lTO%o7%=cFV1tlcqKS)Ki z#Hk(H2R4xLF2|()`Sqx>!Wg5(Kb4jQI2=7WKQ~%kKH2KHRVjfCz|TAkXGhf-a-GT~ zxt8whu~=cEB?lmvIzKW#%xx88eqXB5M|N|1x-cWow{+ps1tz7=;b(sSVP`|r_U(cX z`yNO9vaXK0OZz66T0o5gxvzJQM9tB1cB3jHF#Eak4V4vNVYNtk5Tw&qJh9&G9Nt_b zpmJM+i;U~52--V)cvipe$0(Pmw;K;F#;}Z)L||ZU^vth3sH;yg-1*!-r?qkQ(dJiI z0X2GO+;`$-ABdTUvNNP2&LfvXBl^T4zg$@s;;{CLm$duKdwCy*pkz%eihDFk)oOH7 zeo?G7EF&~`-ahwmKZEw7QP~i!nF^U`53F3w%Z0R!ZYh;qT8e!7L3iv~okUnAdx9g6 zabhlU%ZljA$jyjAGRtSgdP5Cqt!I&oy~_#;(kM%DBHde!RGlmmkA54wj`KxXmIo)`&eGt{FuOht{%6K@)Ze?vQ({yB z&n&mqS235K$CqepZXLN4+OL35ff>)MO8smqBOTawuj(n66k=4wB=XqbQ2cgM{FH+1 zj(GKP!XQR>RasUs6N*Q^qX#9-m{c zd4L+94AFT!bn)~W&d*aMg>8$iMfMIGt<1zXd_rh$H|!}%8oC_rHjQVM5y_fGMN-T~bY3@W+X!wx#%>%eTfB&J5j&R@Y3Aj0-ncE&e|D)4-uz@|fE0 z$#ENAnJKr#a{Ycb;%e` z<_I2v^YU;QW!K-SR+HrvVRv{ba9&i>9Q&@y1hg9;`JA~ z99?%ODiQk1ArI2%;|P$>{+Y5I0xsCGTR-{EjM@PF6$B%Qr`?p9DN` z*R3~Xk!rjsyBHoF+jBrK8Qw6Ul+T14qJH1BlSi#knJ|t8@AQ5~2?z*obN4ebQ{t41 zsXJFj_GT&GZkZ5IO4RxB!+(8s!Ca?1X31nhNZZmt=*_8S)*5fMve$Ui8805!NrZ3yGvbUO&_y;)|Bmfa{_FKF zj-1JGJ0044yH6}{q`d#?{iUQuB)22DJzj5S*v>a&5oxSO z$7$VNzSUe^C-EUDq{PzV8D$KY$ZysG^BKYKbV5pn%5rfm*r)dunIk)g&Yt}I?A~t} zdNXZdv~L0~&uHC&xo;zce|;c&V>0$_md?&s4hyVz?}Xl6M&m0qIi!6{OZySUBXK1n zgdEjlbtcuY-=2>4Ig2^(aUCYly$#;{=vh}!TDvi)84LWs56m!8bbNSScV=jPtCc)? zCg(1#^CzBlDnB0kZU&O`(t}PX0-AghOG8C%d;pob0nq97*{!VSx#2(s_zwCq8Y?m6 zE1Npauz0H!^zx`xzrnk32|H;CT~g^ix@@_`o0-kvxYv(i!X9|sTQK$b+v^`h_~SiO zr#lm>EIo}p`-6F88K3mFr%90y=7VLtX2Pv{Mb_jspJ zm^UZ02AgztBU*LlE6JywYK^&!hZ)q$ErJo26NH}8=cp8g%+BgU4uu~;ebw6I1XtE7 zw^znkq0^l!`H4>%n5<7tLG&p4Es&BG(#6Apt&~if4wRN4TKe*r)=MtPYbl(24)tHl zg6cb;|6UeSePTtK%T&}0v8KdMZ-*#`}+EFoZ-R63V@V`RDga1V>TQ}tdAiDMjIMb>wtc<= z*#5=AFHhrTIIul&uZRCOh+tNwud>@>&n@9a=1&ifg}&Cor|?Qn9c+ihYd8sdQYGi%M`|_5CQ_5ZrhsImk}@-)DLg?60?Rw zVj7)o?72(O<{`2Le&HnKP)*xfHIW*lJ#wdk1B4^*D32OdLGhJrRZlK#Q@Wv&uvIVF z=k%MrY{o7F!oA&DQ)1>3tT)SAKdk*TAxI%RA*-;&b^V%DWaE`=>B>%Tqsv1{&eTJ^ z_`%3t%AT{Pts-f%b%k5!H^JFs&G9<->6!qZk1rA)xF^4z_(tEl3gVMZ8+CY9LVsyL zMp#GP#YU>;_P~jGOwp5n>8?3Q6n)r@hwp8CvJ!`vM)vKiwK({J)n_dB1gd_tQ=zM# zo=|@F@Hpx>K0($?jPifBP_;BfG#8sW_^&k+vlfL`s3?Z4lHDNHFWbx7=AgfU{we&j z0%$#~4{SgS*>ZlkqM@o~yGv|0+ymd|@j(;`>o^J3UGh3xBS{=}pQe(pY> zP>iyp+1|k0vQqmJ^K$8lXv6*)Qk|KthL>G8k39v}1UJ1;5~L3C9Dh5{5}t^}?NaX3 zE)ccE$x)O~oSW+_&a4!C>u)$j6t-;pLp5Kjys(;}S7=&`zr{{vR4$A`rfzAX(T9lR zB#=^YxyY6dFjM(W6cRJC=LOK+xPF`7(}qyPYIU5NLOsHa!{cx8=}wJLyakUtJZSGJ zwfFlLZrz{6a}4=O5H(D@F7|M`s@H$pysoRtZY zQ?XG0v^sgT7=V`Gud7^n-*SG}?#>}&*l_uSWB?;moaEI~IGSm6U*WmpIHmvL*J_OH zjCT{Q_*a)#+{e8)tIhI-ga~ZSl7|je54e{3BA5Hc6qy-w`FiikgZ%R=BFUSuh&ZUlrKoy#XElF9A17&Q)69e_WjUaY-$XZRI2cL?u zjV4|?4BpI7lWGm7bhdgH0Wgdfg=DXRShfDpL-^V9RgJ?5eXmB(xrU}bS_@~UrG3-> zZZ5Qk={b*yr?}{&>L)~w{~vYl85UI=WhzdHOB1lpRDoLRM$%uet5Re>Ha?Uv_ zC?X0-ZlZ(+5omHwMsiLKG(mD`l0*T4Q;joozH`5D{@v$Ze#|_L3VXl%-SyU5wW^j# z|5F!Z%;vY`|6y2)7-f-h~ETHqNcaI>Z7?D$XR&~J3^uy;^gXraV$p^o5$SHa_@=h5& zfLEID5Nhx9TR)HD9{kcmeMjN-LVOheG0~m!)xl{?_fJOB>)-2gqI4Ax%B;%-GS4X{ z-vl%!&G3q!ifOjY))n&m(cZuFdoh zfkod!vz@TxOl!qVK@TiG9ILRf3Ejo!s-d$ya6y*!Y;S^tBfzYU#hp$?3Zj|rV*Krg z5Au1+94(YT77gw$(ph(tub+yUd0i!eh&X z5^^7(t@!UBeP65bkhUA>OGFIlXde9jCui|}7yIEx({gIG{(d`U${&15fMGJ# zd{sS^m*r#??ojct#(@6N&W?4bW8E6%o_Oj{TDRkBL~$)YATY2+$F|1!;2gb(Zl%-w zHJDT$3At4Kn>y_hizb-t5m7w@8l&zkRhIS4GQGEOx}Uyyi_x(D&7DwOwN1^YIuZ=k zs04qOVD#aVV}zkj+s1`Y& z`7V(d?x<77pBaou`}@jAPmyn}XlvB^p!_$gODffFAyu0%G+lN6cqwYMtPin`o8nBU?}vBbq@f_-vUmf=wDJxHfah8Sm_@X}^)o3Y z3DI?AJ4`oo8P=brFcb1UsAkhGSH_>HO35O45A~b+)ovL+(PDos;D8SBwKEy<;IA?- za;y{|8zsNc%5y>b7Nd}E^XQnu0p0owqzJF?Gl^kfX*hJ4b$I)-rdbgJHa4?t`nqfC zS&KNyBl?Wt@r7ne4n3?|)W;WjZ&)?UZ1i9_to`2bC1+W=Tv;jkJQ>KZeVYyCMn{VOZSp5=)sBB0#jBJi)iG zUe!Tp4-XbOxU3tr&tLnSCHhp?z`WQ4izvx^m0;zn*r`vYWZs8q-;zabZHNN{*262=d{%q z4G~i-af12#e&_wzzb6T>2m1bM;@7KO*9%X3d@q@UqA*$LBCB+Pj z=GuZ*%Xl+ za!<+xyFVk-nzr9 zzNHj*?O>+2`O$>5^zE{*r!Ry7m$|Wd?Ff1iWPK|w$~o%l)llajL;xp^g_NAd>e5y>PbW=b)tk_`Lo z=5^S+mlW9!?x$`qJ1T0xJD=I&|LFn^^{r{oZ9Bze?E=|$>k;OIAH5&@CSHZ|mEB*T zjX7Ro^Y6{jn^2Isxjy?{=@d#8P3(t1t2Nltj)(#YZBer}U-ti*qbeY`n_C3z;jE$z;yv?l1oKcgRsowaV zO9wmc*vg!35!1{s5=X%sj1tY8)p6q|jp`L$U({-Ft94ip-pbU--7>%507G2oopFi( zY}`*ir>D=w#2l#`tUth+&OW9cT znu9OdctudL{&lq71_a~n=KM7ZN!Dks#h=f=4pH;C`eIg(!>_>PgdUXO7!&{LOB?fC zpGDTxau~kbn9nDSirN=4e*0#$X}a*zl>i>+^5K_@Lx(|%sFB{LFIcK2At$p8M>j%`}6p0xsX#|ViUgD6;3 zyhp*K*Z6?XW?1tzC8tl@BqYwV+n$8w{k1L|Dz>EwRg#lq?`!<@#I=hj|lzChBsX*G}PCI-!9Rr^aANzB@Dz_VA2BHWrJq z9V))rHmiM1+&fe@>Xz|p1c7wh&XORb#e82*mV>Zo7|+RMl9prxS=V{CJsvamYY%)5 zBxOfNWgITChtIEgdn^fb;M`n@rtD78^m7x6~F9d^1eGrOMWeIIA)Om^H;VG1wvjk~VPx)m@dvD@n)nq8;$keo@j5mIj^7zUUvAtlueJ_Ao> zL+C_(glLnA#2iAtNgN$Bm12p~vbVn2Ua-YTeYt)OEzii@47-y{STo6Or?7&ShOWKx z&wGhxjbEJ(95$j@zI%0lOzTEbOoYNIBfe5<|5eC<+X)f{kJt)f(%usDp8DVJ7GU%+ za|qLXjhf%^TJ%ceH&;DV0;KaK2)GM%AZD&1C0i0EhDzV-9ZyrjGw(-7Ma)v4f9Wj@Zo`P2A&*w1!mp-c(zS-&``w4N0xCJm96wE;^|Odc!Q1m;S~&L( z@kqgPXh?fPq#3J!zW3f17kI-_FsjXVB*%aqcQX)+(_m#C4gP`;#l^){5;5RyV!Y6s zMOU)|tR4#xUm0{8KsD8@${Y_3xf--M!V>b!Eof)PV(anhTfRp0`mDsS_Prb>JN5@| ziX^XJoo^WbYU0rn%gNYqxY=$uI3KzDE$1AoI#_r|v3*|gz4S!*zhadBz2j%SEQt#* zWs%QcOkw&=ryPc(>`(D63f)wyDH0Rt=VaJqoo%}G)#{{5GQqrYHbDx}2ss5skC(m) zY0mB@#-Qc1KQT(T!XfL*I4hPyd>mO=YlvhEKXp81ED8)gQm<<0bM%M8~%VC3Cu zme7nnp^>%Nw{uipBk=5Tq;bAA^G=rO>vU#Rrg1|G>(_*D^@3BGQKm*M2XYRklj173 zLvzK?i@`d556t6@8Mm)xBkz&Em2i_$34MEZALo(~cCf-0 zIoPuO4oURuF9_#4B^Jg99Z2rkxCX^!5q2;r34=x*S?J`fIT#ga|A7xwqdH?O6-A~U z%|Noqf7}E^-hU$9UtE~Vzmew$vu3k6uvsF%@^gOK<5H%fBb5MIc~a-Go~e|$6TY6Fl@)_ zB7+qMofyfXH*{ixSt%*OXz??|7+L6mcEa^5oTlVh^kU=SP;^-twLaL`+I%BAfRdwh z+yhD^0umu65;8KHyUK7-vOu$LStO@{$k!FZfu?_wp83LU*Qn0n3drF7GQR{<#;7FP zI76vUM0J8ww;W9*|0Xm>6(47U5$gvhIsXLvBqItk&tF4UUrMl{a)+*zjR_Y4l+~JK z-#Nu2ePpJ2)Nv1$u`Jb0StOUS5%i~;{Qmr(SRF@C=mDD9q1w#z-Ipu18oY+X*B{VKPoFaakv`SztQ4QU7&r#6A4l zl+VV2h|2%VmvrT?M1QaOsyXkI#E;*nBFwKCZT7PoQb-wu#Dr#|W0$4cD}I&vD9O$$Z_!Bc-yro{x2-#u(W{Px{~(~>yM z^|T|^3BfM~-tqU#uv>riB``r^KUVmNC!hyJJ z1UCh%0|KKrpv|cn3vpGPg?jGmQZp&XYdWvX*Il>|9uLp=0EURzkI0nnJEmm(q1vo> zE!%KdMgPLlL;a=7`vfaBoo-Wdp^$`+F8W~m9US0HSmX1@8xPuZ^jKzj52q8*op|BG zy5q~mn|MA-xD$$DUZ1Z8jn;{dtamwIJNWGm7zv?vnlJTlQmv7BFaUcw{(PfF!b9S) z+`HuDMk@pM?eou_aj~Kdf~;NW+<*rXx=3mHNbgDJ3{ScvV3MPuA%0Vf^ytcd-;H1G znH`e;8po8dtuq*q=ToAqm{c*>$ygTjf zA&{w*tIIT7YNep@<2T&xu`j7@aou;0eky~G5rv5NVaZ?s{tTQ!5178BJ|4yopsbOX z+}W!%C?c^(Ql~VmI*N722}xjkb2z4B zG?(ILiu-ye_n&LSGQfg)0N-SE1`nd2W#JK`U}+2>0#GUWm0kScoOZ!Nd5pgX?1WTB z5InnXy@hal|H6Plq4@lJZznK-2I7HZ%ew~1Q0MNEw&9=}pSN)sS2}M(q(Y`vhe%$& zU}R$eCqM|NZsfvxhc%Yj-n9L01I(t0{iE3+VDL1hAOoeJkhkv$qag))&_#E*4wfy~ z$V&Xv6CiCVk&k>jLcW_01 z)D7KhyBmLtcL9$Uv$3=M2?wDrVsn>kE{H=u1SuSi~D#@ z0tZkgVS`7Ju54^3LFBG?#x|M}N15TV7?0ct5V4||4!#H*uDx-}@G-F#$RxWwv(W2M=;$v@Zp z%j(P4+m;rV`@_Z*=fz$rvV9tFDLB{;e1_#X#|aMma;i7^u7Z~ zejh5?azVkt6oQp;foD#9_!fIv%g47vExG8{i@kVxBmB*3z>^d}8)X=2XN$u0NdvaZP)@ez{Y9S?sS zi1Nh9MhZl=Gty%Iww?16{(=@6}%@0NoL8!2E*g&Yg$UyjC~hV+{VVgZ5`unBsKj*_Ye#kMe*ZJKBKopF&&S zCw0tRuG2nvxhvDIgI9O~$(}Qsy$vVPs3B?<4Ha%VuP=S}r_V_xMgq;$oX(F;w@!1w zD_!t1uE1pG+vYDv-{13>x3la0@X(<{SmR}1#eV|*!f|8Z!Djp19~2T{aMH!^f#PTi zpGh=Du(aeq`6~aZ1D|BOZw;C%DDTuA?&l#aU5r1_)f{#`ppSw9LQQzR3sjyd1XI4< z_~-f?OA)I*pQ+>XJ-Q1>L=&nN@p?5A&aoKAyK}NDn1(>#3i+oK^bjHR7(#N9gnA3*&Osw{b)`j0-URhZ}tx-M@F?GcmL zGZa(hezoMotRv60{?>nfUrV8y{my|b?dsX>OwziBgZzVmpW9z!(3v$_N`;sH=OjHv z$t%@OW#^i+d z7kAc8sH+V(kBdNjGHrvvoC%=JrwCtIcOhg<_T$pyam(=7lgc$Y!KcW_x*LM8svj zn`t)Ie_3-I%rr80MCKDUv^$hmV10n0{O8N=_1m{mbqBjGla~s(wuYh1_3qm@iO}$b z?$q_QfK8vKhMU!++vgZhoU&H;tN?=UDIZA;XUoU4wWW4F_2g6I=g5R+rKQ7EThxs{ zGy#Xm#2A$={9~W%a(|yS#H=kh!n0!sE(J+O?Ef>F06LETS9uzZ^@%J!`<0C!C8whT zse@^)2l79kXm*%tyvjG~me!D0)a-Or<5ykaW@fHmn$$k7HVr9y+jf_GR`HCnFlX*; z=Jq}z?A7>!>85?$uhu>yQpU?sGS5P%TRcpD30k$R6wtq4DysgRH;Kw&sTIfW(eM68 zQ1+jsCI6J~i`bd?)YvTc9K(#8Bj16Kq6doJX;GB)yhZerEEN>meVBTW6Lsf!M28&r z6;*1^+dI{3Gi{a!9J=KU4<9~MNtb?y^EecnaJOOlXZ6K+yT&ut$f?OA(U`e)EFVXV zdCPxOn4fH_hM6-nB}dQV506SfAodC0Au+@&Yml#$Y;c4AK8?F7m{hkOf&@Z$ePF&P z(-_F3aBfpY^P%FbhV?jjLwF2{>c4+)0!$kr#F@K2R^wT=I8bo^^(FROB^G_;fe@?C>eH4jvXyBap2dz!@&?RR=6^sH{>5bkxrHLv))?5PKz!E*T7wy8FDQ~P z_WVdZn75V#RTv`|SNDlcyse07m~z9O7f3ZAE?w`gbhb3@f4|U;3ckq=`Vuv*a=VoE z1F*qrl;f;1vJnO6A98AoyoWoBo96%AuAlYP*)#7n_IRQ=>&6(@HI`z21*B`4s%t%L zqv`$eI3)jkGMg#GnRDl2fSqeOG5+!#z0GlFf%gg=y;PUG!YtVSvyfuzqiX?w^rj|r&((yCVP`!CPFV@YxoU%=$q zK7R*`%ymzk^v2fmh|c0mf~&{%?Lfg`)Er>BjA1HI3pbCF|S&&D|Z ztm(>0l0Da4R$<%Rt3@#@QO3A!S^S}Sp`8;BP2?Too2+pa)I1i9aJ&QSz9XTI)-|u+ z?|GbLLWUmz5)SH?(Ah^74#vnkhA)vApvj&T9+!){#pJ!a@eWj2y00%(@EUG_flCaY zs07^}2LQvEU%%XL>Xhb?T;7`N`sy<1-|Uloxs>9<1;(r6HWpGWjMB;>G&30@%N$~- zc2BHc^r`xDwbgR|et)XqoN@E8h7S67&zKK(bfrD;+|VVZvl*)u{@zexG!Lf)61{CZ zke{;i_2Qd*|Lz}x0erRbpRZ3+|2wV|5b%nFuH&Dt{J;J~Nb-9N6{&yzgup5Qve|#W z9$$y-?w=0?_^QpnAO7F`RnlQ!$L)T3Tn(#$LwB;8_QC}T$Ey6=gW}-B_y4Cb?SBX? z_&+i)du!48{$BJ3vDfw92P3#;yKTBa3_&&>9 z`RN~UivMQ*yT_o(`}fN)2TIlde)|8}(*F+|iX5*1;kpL7AwFRQWl_vXm8+bxa+n%g zS4+TknGHV1bSih$4zO5V_>>bd?~x~dp|I36r*#W`U~_#)iXPI)h!TZi0?ZP zf@MVxf3KhQB@=9vHkjY80c}>6h$%Sxs+8M3;bb>{ENhE}^IZo*19E0vHim;8rjXhx zcEsMfukSIBx{z#8V)1APhRXC5Og-zkg0*T%683Ce>5b#DWW04tRyLaLX4!~KywL7k z8a|wGayUO;HNhUj@J|ziC)iSJ2S^)ks-(X{SP%6Udqduhc0T|zY6>Rwgu~r71BJ$T z_pWAh3@0ZT7gcFx0NtmLF+GDAU0}7{s?c*wYlA^QhPAWi74sSKM#JUy?dDrGDj9WG z4ZME7*dgVIjt0;##qVqEx0w%@7q~4z616sHn%so9V4CYnQzLak* zCT(#|Ucb%+KA7#hmkK{@KcfCsHg~0BEJhe7B8v?$PtgltNU2`oCy!$3`5fD3g5=iqI#=$ z7qXc(pJ!(%#GCA1t-+8On)0 zkXCnv7h4D^u4DN9J$!xF#HX@`8ctf0iG`E5@Yrv64O_Fc`8*j~1!6yyEnlA#NP)|~ zatM>bnr!R#O*ksMAE!u`O@kR9f@Nk?!Vv7-8F_j86TG}uYPMT<0V8XcVX3Ru`aLFc zcLsv^hU7Unx*|50=bH5NlmLaP3}@u8L`CWsf2iB0cIz}eE&L?=7zwEqn^xgBng*1! zebi8$Z`}qQjIEh)4;hJ@68TAueH33k-Wjbe@nUycaiLQiC5L-sheAHJ`i$`AG88Ee zCYJ3=Y^UIb;zhZbF%~^~a1^}-=?kJxhq^jfBX5+4rH|)S)@O;Dd`-@4BPEtG{0(cc z!10?cHuv7Wu^}AZ0n5$SiU>eq6h__NOe4ho!B}SldBVVxXD-Q;)ASy6GQ8IBOns)k zq%`utXM4o8O=Jxs%GWJXD%^2eVT07!&&3KQiJN=b`>2MCH%~U^ZC9T`-*sP0ulOLw zDI_1{Gq#zKO6NcKv+MwKrb^#u$9P>Qof2tu0!wk?EOA(y*Wvzl2vj@yLA$sFqvyib z55Pv1e;F*0*9Ty_>wH%=(K$M+q&ldXIB_<>+*Z*B7~^NApXaMnYGpqVRkr&rP6;&i zG$7`*AEm!?1$P+;3U{lr2o@7z%r z9`kO-bxjap(t?IpW=#_co3!9!?gZjX&rQdHds2I{H88JshG&Scai~g^I~W;#eK* zECk`ZP}^Rv7KKvDPZ+BfkGG$UHqx8NmgQ9#jE!v`Kp+;t+tRHMfQ_t_uX{yaH9x&z z(;{zCKZPErQ;q%iT1?5r!~_j^ZDyJmK`oEjya?tFBloT#%znHI3X*}bmaZ!{Nryih z=ml4Lc1W-AwhkYHg`Ms?HN-LuJvuctwRL-J$oC4EPJirx3(Xqr*X+O;dQ`2cC!5j3 zO*YURwj~K;-Rs&{Am;I{&%^h^G0?%#K4=Tdhm!RJfM`8|9=_0^QM2n_RMlI0>?Umk zM83`fXPo-%ekJE7g!A|Yeecaa#ymWYQgH~g=p1RFO5G%)5lBYc?VQxc0S?mRAM|S~ z`CsZ5nY>*;fMZdR=Ot>=%2|&WS<#(#ZRG+!zsoC*KiX^78zeVUG`Lw4 zE?iS*x~hn+DuTh@5%+Sbu6v-+INNajo$NY84<=iHM)O4HjE&+Ghruycem-NSExrX* z9h21tMPslf&39#d_W)czsB^1W%C&xtwv2mb*u{$FiMZdguyFB{$8=@)St9n}oIUMI zYgfHMgr!FI$q&#e6jZzBVBqd3;u4Ou&Oi#qX}#AfixbYqy?x=$xs51NDl3UQxeiqh zW^-`d(m#jyaJSG+%SXlZ%TI+}1oTD%_%azWy7(lsewJ51CN$uRL`%?MRBk z+t317Flipo;LQn(zSwtmcnarlLkx0#6C2CuqRfFLhVy^ncg*I`O{1_X6-ssFdD0sw zNlOphO9?r1GlmvbNQR1YGz-2&e(I#<#1x)&na&j{IPMFaQO(R9+ONvz^dqBbWE9Ua z6gwg5!YoPN6uZPNP57S^xy_Q})WA~1bY?T4f-V7t*b3lLk4%a!v=i^*gY&BfZHi_Y zeaB4>v^Wtgo2O{2=db!Jg7+eR5<6gxveP2Hh)aC z8oT8Y{*aTdi%X+v-sADf7T6FWq*>FAh*%st;6n*%H^m8okWK~mBRp^0jS$BCyTtK#XJCA6wcTkg}v>Xzl4-tP!aH?(K&x&hDulM9Yh2SwX@l)6j z1r;MGxfsN38qZH>7CGEAOKX>rXWc)UoEjeSk$b%OP}NFCdpHBO&hlJRAtUbDN;!#r zk@Y@>E>BA?c{&J)e1Ytytv$bl(AYKZMarc8u+QGo%tGsizP*XDX}Uy%p9=ceMI2+) zveEppH~r2ST9e$Au>!*f?u!Ktm$9rAy9+RIerCbE?Nb-4!{)@v+`v3shW?8WS``A! zt()~e>3MuT8ygw9Z)hl*AMPxn%2l|9K4TN>8N6`9z7 zxomk(AbmfDG6&BK;F7<#Tjxy{rI+rPmD2a~N;U)**E702XmBl1tey+H=$4mP%>$=G zD{qf|HP5dP>-O7K-)dt#ZK9oZLLw|QBT^L6I|W)I={aJ!_K-u_YWC3g8R<)RZMB?D z@I8iWVy~=}_)b&5>Za8lN$Fj??2*dH-cKZQZ zRFo@IX~U?JP8mlQZ8^_pOd4iwe6hTn;%8;gN0$DQ6NG5pf(&A_%E`!nGE=F!zVsn_ z51tQ}GapLy=Lu#!cw$U^=eXuv@5u?8-Mms`5%VL^b+6gNRah%^I+W-B15T4pf3JP^ zo*W(F%Ns_*#SyKVN{G%B|2|gs@ktKPA%UxD8V_(ye_@tFqqX}tjer2d7|{)BNtF#Y zX=zB}g3h_-gv;ut;Py+E+P(!*D9mdJXQkHZCFPiUY@#cdO0itOYoFEYct>6IrZeNp zZi7BhTXdL)_D9Z=ZIdxp^ZK_38FM7}tm)aUb0}3ROp@lqP7JY_FGYA%j&v^GJcEDL z&!H|-J9&3{v$5Zql{qix|Ee)Tr0b0HM(X3-nRQtFc+udba?BYwz0j^rZyssQQY)<; zm>S$F;sy$ab$iGcKefR0<*Cx=eu-{{q^sXxUZ(YNhTTl6xHz6TAv=_@@usE&%t6iY zDm>8IsCs|Q#g_E@`5PO*qv$*>8FcH)c1^pywe>iMjdR`c&)j)ws4s0+3u`x`o~c&R zFybP_W2JQd)r~u^tqj^{A$R4Q|3NL*P489XummT&d2PQyY=1TxXt!+9t=-uugyVaN z|0XPt8oqUHi}h~=IbV!l{-ljOrjAq*9=FkZn@xA4^dt z>+TWyTBv&lC}K)#-2zST^l5p-4U|TgrPwM!Om2-BNb)c{+VI}xjB(fOD&&3YGZK9GM4^Ef+!Klx)g^c)tU7x1?}b0$t1qSx>N`e-{;vUkm*iqY~& zuJ1x3k3SLQv3t7A=9apeLU(OQW25x?u7-hkU)oqDrM}x|Ap?Ul=tpv@Gi6v;H!wCy zCjQuJ#_gS0BCJ{G6v6aH}$ zzU)&LdI*ff%umndiUxQ3qthP)S2O`WtosPlfmf?L0`h;nWwzrX6bcenM(|m|deIi?!7h$7P|v-RbTxo3 z5VsOe*Rnm|)6lBwi`@`ufz@o|j~%V?6jV$Sny)sn-Cn|Cs--$=etcAj=jDgTI%Njj zQ}~L7l~s-*P~{nI8(vQ!0AV_+7;f$_VM@ELpJfATi`@gXzI7pf5owxqr-O>mM)zf0 z-!fzmL|mud<(kuaDiCAhwzb1$^DMf}+4-}ysLX5BEgw{|>ZBOUZrox=A?+IDM7py3 ziz6HH_0p}k`dJwomGh6RfD3nwHZJ7y&QMCW;p*|&T=;(XWK;cQCvVSLM%(Vv<(|yY z3TnkXj^3R1DJE|x?`~GGOX|{*?RZMc z+>y3Ns%$^2>-911Zqu1oWCndnae1_T!1ms2@2QQJH@rRJdvVh#*fX>d+)Rs}dM!Mv zV%&Fg?OWLeMtAgFN2Xh!Zq>Vd^+OWOV8$l8j+&Q_tM5o+ymNrC)aMp$J6%%GAdjmdL}p?Ml;#A|>g3+Nd&iuu&{1M$ zOy9<)CP0LWZtj);2=fS(USGI5;gvfI4)5D-uHqfUbM_a|orT#DqOS!ncY+2sohjfdkCh;WI6H)>zRQh$x zT?zjHkFZqVrulN+=37kbc*f|kax%w|uDsBN!0Ca;IX|aiLUwzqxl!+Jy(0fKVuGfY zLe1$sm@!~c-`GWwy*=hz_h21w4WU5l&AyazY!HaWxZ37956PX{R$O-PP~uootF@E!Vt6_ow^`?&toM{}_lv`el0JWJ_ zYXV#y=m?<0p@)x}#)yVy%=*kghLJ+N7WM*;(OYWJeoW3kqms7&35m+Bd*&l~lYeDO z`8qm{F`x>}xeG_~u>w=M2c2s>yKX=Sx4C>9Iluzh*2;Uofyfi0T=g#h@gP3TJ5aC1 z9>Vl@r@eBzLtHsl9r+ORqi3_$m0`V~mw_LSkvgrG4Q=mK$~-f7N%nWioA9`ofH1^C!oQ2EnMr2Ar)b{PStLyQylk{AwXt5STu0Uk{X-_Oo-ej^YjG za2~9*wy&JwtbU9(aWut?m0M{?o|QZ=Ybww;Rx~i@9R{%9cKKT6LFckoRgz{7o4N3u zVh~XVLRCADw~rMaVNj5(sl;U)pNk7jI^UI@oNFz!Hg*T+zIt#Fo+RIub5Hnl`Z16F zrEWhD3j}K!a1PA**(@)dTNUdcH&xd@rRU#=%qquP7UqJec#-YtFVBl)Cw=Ot7!-h! zas5r=uKUxnWyAu}=_THF7~=l*3rAU%<)K1$>s+#6hnIS^ zS5Qv!PPhPX2<&YxdSg}4SwiKrA~w?m46sK|f#)`GBr7(_H+OcZ+E$CX##F+q>6a86 zx_cRth>oi^FUu*#qh_nm2xZps?8c|n@d(hRtLr(SCLIo-Y5;16{^Ks+jZZbIJ3Wxf zOOF%wEag{rboE11(cdb$m*6bo;UMe(0IX451(OYYc9{BD$A657Jk*|;fV7Tx@MY8d zz4u8u7*a1F!V>*?GdD7sZbxqADZ0*gf4`)c!Gu+@pvZ1bH+i(M@!?@wcfuHu$yP2Z zJZDt%OysOt9w}{E?3`T^W!DN%7|qleG@mDG{^DMixA9SeG*YKdr)eJuu^G`iQ)E$+ zCh>qrxa7IHh5p?5iS>;#nLKdTEJT+p`h**IrAp2`UZ07#-I}W*OynyYRKHYJbw;lE zP3TsT{@jH2wU+kk!7UF0o0G(wvQB#EdQOuq2z=N(=|TQ5?@Q8M`)i*+%P+HTz3buR z9+J;9!Msn^za8`2D4KPvru(3#Z0nisyvztNc=1?j=`|w}?IsC>Sy`oBZEqXl&?T># z&A{adRPmt+ZQ9&-2Z3DdWurC$7)sp-a+F~abX{mO&$?*Ic7JeCj`vjYsGu?&Y|>32 z9c|k|Y89EFsJ)8YJIv~HyA7RPwc@GIV)LK)SL9M!j?1oUcPPx?c`SQ>9#8%L-cDbT z^k}bQ@KzB#=n?5&DI*gWKS?z}1#g+4u*b&jLp%f299XXZ@WYiyq~dc?^!-v|a%FRU zs=Ko`BHD)Dkdnx_NN+aNCYCLSIfUQF?MgH(c1KKruff}j%7#?I2JPqa=hTY7T`u`t zBd27exj*jVjD@&o`@EETwKH5KSEo$TSp+>PId{<(O-vd0M8NKcnB((b(1GP7D0Pl& zRHI+u7chVK^S=OddD6)Q@e^jrhXCF_)<^oZKx|@_q>z=*jESSnd z;(X-*enn;54|zH@DwtNIMPKaHW18$;za<*H``X)RtfaYa{ zk!OA2^zytfZHEjex_c?7#5ca%MPF`tekIBT%`B z4=^nKE6FCgKpfv{@`T>+HX0=hlekSGRD-`qvPecl0vhWxBHC~GpyqusBs!&w4oYRm zj$F#TCK6&cy>buI8(zY54w13w{qUr|rDuy?$St3nRc+oUHY78X($ZX#xoS(sL7QhD zD3IG_n}XTcQ^7X$#Y@g3-39Y2!0+ZIx!&8I+kH>fK2(av`Gx~LF=bMf!K;D;|z`S3vN#; z4N?0l2e2GUer=MY_$virOh&wWRU}2=HOsmXE%vvum zk}hCQrVwOM%~1A{q4X%o%L$Lh4^8?x*$_`?Lwj9Z&V24!4bl4z0%go+92I59vWkUg zaJ1W_<>u=wnUq4%=k@)!&4LgJ18fy1oWLD^X1r4#jW zy|umWxV|Be?)yq_K2=%gvBVXhC@HKzFCS#1On5WDI^m_H=KDXw(N{; zF3S;K;x1HpGS(uzpWEfP1kDNZGPb!6DffhggR+n5wEga+nC`EAXn}Qa)9v}$#q%na z>Xdfe!|eFEp!?qXYd=?k?zHj!RJWTBg|3-$gN94}cX~Er^;@(TzB>xIGizQWo~+pVYa`*A`ef&i_xi1u@6f zO;OCc8eH-Po22U2&3TBwbiIspC!;+pPNa$p;=J^!^VhIlwDKd!E;!$f)Yg5a`8@acBpwE^_`WJf~|5jpE@o0vPiCUROY_4WA z05alrmw59gL#48ti=HTXxk?L?`=pEJ%z-AMI1f3!LmUNZIIeo*vOb|KP)vs3KjQtjh+DW~) z)<4cVAy(xszPFtJ8E1krubNLLBHH}oVy&YWxZ#L$KQUO`LUeD(bA`yENbC@2?( zvuZ#m@==rem5I5_@K?pedI;p9gzjB)S&SS2Ew3+roqn8&ynHmT6aV2KRgWJds2FZ` zi0tJQTVfO;8DRzeLpaEZw4e^f&=Soqw>C^^;PvpMMji*0)g@l%LJA`qH;eCAhBmvz z?PPvODUpL;h81A**|rCg1+@d{h-tzr9`<*s_kC;N-k;2%@OR$6XW%w|(s8WVyr8nhj;v+YRkhRA@U7Mgw_oLW}u4t?4@H{8|M_G}N7+Z%q& zgDkZWqzU)vyjJg-_vavYXoi&VMA92-o@TaeoM*AsV7C|9(pY3QOfs9{2L*r<#`G>s zO2IpYb$@)snx$7&3UXU@ec$~}#+JtgwUg(BR{gLdBOv|LqAVdT7IpT)OG4hz32Src zSI?D-vM45)&0yZ&BkUn#*DekN*FM=x9J;aS4!rn^VfEpWxX7;u2xb<%sG}lx`W)+{ zkBrdT8wQXH87}kOY@W;o6w2YxdyoN`ZKT@Kvk)A%y^_hy4BT>M) zS>6{U9pR$BK3U2s&q7q>O)SmxBh?{y{o+&2?eVtaoseGp9siC35*u3Lr4H>-%8x%rn(bE`rGH3#)>SWVECrq`)W7v`p%;sr## z#X&@bxtlVCgF`+bK;rG0Zi$Hjkb|u4;_a)$TS_MR?3#y;(ZgdDdwks=F9Y*S`OHY_ zX5RS(WSNCVP2?1sUGIN@I#eMe7I1WEf|gy}H0mA_+yG6LzxRO{O1?jZ$QE(i@FaJV z=Q2M9O)nb@sfAho44$g}e3SI7xgUG>oN4c;w11CiKfIu@IngX_qZz-*# zk03+DK(qm`FmOo%IY;=dM;~K5wg5uKZ|!yX9$W`IJl-Xw_LjDk*?HNbS;VgoEguHo zUYB|k*4e4N9!sRJXCD2Y2#I)wdUj(UBp^%K5YdKDG`&1a_4K$dw79#rZ)E#$w2Afp z$Tz9b3&lImGQUFIW4DfnA06jzS!FJjPGmpg4oP(zmxY*oo#;?0HCx|G=vHEgDAmP_ zOyKV8TwA}O(^l!Uz2n4>xPji!qzX^!Ca55)<>6MYyFQdu`8%#HGZeVG#uMVgsHOL~ zH|Rj>soq*zUaMGldBWaZx=Txh`)G4zgJj$gS%=X28}|^R3V`klKlkvBx<_M1;s1C2 z&*I1V)p~nI@EaSm+-$2YEDS~bNcC;zSPMOYMFfN#upl%s}cww}7)q z9f)bxz_{1QJk;#`60BVe3;;x$?+>egk|RvPcP!q#Xi@S2CJ4%FDV9JtMcH~QK7(j1 z_u*xy%`#SqBBJe~V3Wny>&?rqNxr_jhk_W!+@n-cIuFK#Mj&lucFTCik73XR(>ev_ zxah*(H{}qkTbK6CGZKh8BTdT9mHE;T(>|55 zIOAE_mI;e2&1vdWy^o*b9pa42D!V_WTQb}c#_QD>wPO0$EVr_VzKxvhQdLQlBBl6% zd7stYk!5VdbNx}SRuQvI@-5N~3wM=ZlUa)lTyEK@g)G|Q(luB+f*XHyqi5SLV~for zZnDoSy1A9Fmzu=5Dj-wqMXSkJegy9Q;U1h47uaa(fgJ2~X#{M~L^S$CNeD zOx(5=)6tgts?~1x>jvCy!(E>ui2}oWO1l{nY8AQ3Yb5=jQAf%vHms{^UwYJ{daJEn zHSVtk8>%QG$=t_iBDaX1oV&JKH6A7A=d3AdL%AxBpFDk+&>M}2&86}HbL88G2TYk% zNz?&~2j0%?v>#ETdJO?WAXR8e?R{U+N0ijPh2g4fGFMLynavu0tAixpm#4lUuh{bA z7Q2pR!Sgf$Us8E`eh0=TO9W1%h+WS=5P#!~Z|@u_VeguYi60`&iomB^mCGLFafROh ztGaUwODbLCct&B(j>l=*Q-htHXK!stEftxJ)M8T8)G4hTp*+l1Q80B3&na8eaXOee ziiB9BCd(sgg_w3wvv#D3M^aHs8?yu*87)X9ZNCfe=X!50fD0Zj*7~0B{eSQK`~R0V zCPyzQ5?3+7i{Pt~@pYt8)G5T%s!4pgfWn8}h+I%J)rB|>As;@*g~r&A>(&evdDEvsn96ua7sdda}~Xm*&GX+ z!eq18r`j4dOA#vs>Zas6dMTQhN#bP44|4sUiOtR=26rbHVa3+PZ9XnerUxzJle-eC zu>q$+TVB$BETFFS-9LAYgqCv>x4P3_Agn6y4EH7~dt`PZ@H z8rN+`QBso!zI|s9O;Xnv*QY1E&(}0ARN$|4lGchIsr{|hZi`~h23R&YkN2Xjdx5T{uE*L ztT3Bzn5cfEHI4{I#(%8xuT-=7xC)_X@pK5c6x&|=v0^ER-j^q~rL}mao}RW^D;^Fz zL*^n_ebU+RHV&a9a?W&`lPP_I^00PN1_H{D{SaT0c@{r_V_UG4<TYw2Mgnja4#4C}t58WKj^ zKs^P7PX^%eLl(yTMGYL;ZBnxb*<{T%4WedO>oowJ$1{p(VlM`Q+Ut;j#u^uO+Ox3A z_mL61O83z|dk?uFF<28)J+oT_u-(yY)pC0O4_Y~*MhPL;|9K>d zgz>-(^2HS+uI5+rJwTL_g6zyeYFdmfDYT(k--=eIE$rpcJ(V^WtHX-&Zh%XTcn2*7 zZt=R~irm2130=fIqYGF@lv!P_=?{F%0c%rNj1z6aBh>|v*wnSMkS-^T|Fjj3q=inD zM~N^9W>sLP`XJ1ceu{_i;t9!^W z&<;&_pK8jWmm>}s5n$_kD9*TRj8E5WB3o8{KpP2+9)U~t+a_qq&%!*k74ClfKoaUf zf>Ogv?gL5F&RSA^S~_w!R<(;t5sg^e2q{vO{xU1TR*~wF5z1nwH#Ke}u8xt{6+PM4 z3I-f^%{A_Ttg~u7jCA0IkV>S&BoX+);jsBmNNM2P-+ehnK_*kNrdl}1G&Yg@irFU8 z!CrfmTD7V=UP&L1fe;1VI43s|in802GVCjHyO6DciRlKR&cNY_)$ITWT@N##P@!fR z`!yz-*lYlOg<4k8;qYi`Zi-+muVIYL&c8QBafON?jSB%Dkd(3xw~qPw9{>?q2icJP z5$mVfTg72ReHn@}3V!i4pVD_b$aP*>S>v`sGGzUY8pSzhJ_=_H_Cb&&v^l>`X?%@F zUP9X=tKavmlv7{}N21ok-UGKZx9G5VElnBN*YHGY=D9rDw3p<7On5x(P^DRwDQ;Wn zo6)SV4+;PvFS)E1O$JZM%5&xu7xqRax=H^TCFMi~tzOLnOB$TQ4y9l98#>wr9 z&DS(%8_tZoafR53=u^$@f`^N!0|1?5TRDsOt66(s@GWdYBdzYozoRRy(CzW5{kbi9 zc7?j@CCJIdl?D+>Ic}-x@}D#1rFb5{e4N%t6oqVj0pqdPC=QxJ5EO7nWSV=x#Jh7* zCBI@o51)p9-saGcF=FzuLBrj%S^Pyot&otFC!EmALmtu8AJ5gD2GH&-9`ZL=g|v+;}uHDe&?6_4tI{=4!^}{D~{5H3CkT z&L1YNMV^wWcbf+H4<1pR0P`f?E}=Hic=0!dcOG|i)E{r37{}eE+mq%Dmt92E@QJP> z`p5fdqjOy~sQkmQ)gq8bd}b)@4(fR{1{dj@2H5njg7c6*kp!si;{t`vC33od!q4do z{YAqdeyn7Npg?kkC6rcJAH0|v?^`!)-?bBaVCrnLK-m*YbDtJ@NAYo-OGwyfOb*W~*CQKIuz4S4w<8XmtKA7su}%s=xC;_g`fz|f literal 111523 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�NN7m=;vIL$qHhjZ!euUkq^Ygr-($JtP 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 Mv@NNQ&G{Ao0O=%V`~Uy| diff --git a/spam_hypot/best_model_prob.png b/spam_hypot/best_model_prob.png index cccd2de99c33e8763af18f8758e051d4937951ba..fb205ae46893ab2663015e2e29b0801af797ab48 100644 GIT binary patch literal 41723 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 z z`L=i7IJ3GN{I*2}_box*QiXCe(HtA;a^c~4xUkzo>wn9$y zWbU zP!M~T=5nynb%1)*b-NKYIXI79-TSl!hKTDG^0D-%O^75Q>TlPnsC13#*>QGub;v}g zg~+0GwGjfx6w5zgbgv%WXy(3AbpqR2W1IxQ0V4S1<>e{vjE0V?_0^kk<+8B#Nzk#} zr<9#Q=2*HeMJ)=WTc^i_Px~3au05r=BYUk_(5UA)CF>QN1I)wcvvNN)&W&-TZ=D@Y zTU_0hetuEys9Fb#ImFnVZ=Ks;DbsDxANL&Tb%(mR9TMYJf$zvs``fFdR|TXorSgB? z{bq{Yn?AqxVX5$8JxGq=HrIx@_#ME;+GVVv?Lp4!a_sl9C*%zw=l3goFEJ**8!+{@ z7OMytEsb8V`~9n84piq2(!ziASBktPLn9-WnQ27w0_?k>)&u5Age+7bQFc>^$@oH# z_uX~9d1SQ~=j;s+3Nl7iC|WT2gHJbt+?5V`fN!8eN`e_gbG$seAQUZ{lbU6N0|OgF zQpl4~<=XT^V9!8nc!h5>BI9u&zK!bk<4~`WqM^T0Ytf(2RZ6;$bA0=U8*emH$uKC( z%)2+#4m97+tFw_Da-Ll^cTEyjBm^BjOU;y>6ra7WwYgI`tUq19k|WGk#88{clY}&| znnvXCl`bF6qXWCb!^16LRFs7pRmu^W3w>J<+L&p`C`!j>FuXoqf5vG-;ZUpdgvk(Q z1$MhIQ(eaRf8Gr?374&y&pBUd$>;u_$v@*bwV!~ZLeN9$192Smt+a9 zk6uNi;NFt`m9^4K!gdGok|+z2KPY04;^$2SadGj0fB>Zd(#VL2;kUhe_g+J9wrvAo+OnBYDhKkj zsY6z=8!wcvM(f5XHlBHXRJS7NqN|4%YrS)4z5MZ-jV=%ap!$Ds^#Bl!gmvDX!@S3z zx6{@^cwlz*%u|Ba>ND|-^S&!)hMHBIU*AskfS4}9ejlzF0NOL(4|}#>SQ&T5@A6_< z?g`SqzFyXDXTMm_6vd3+EII}dPqbr@tw-MJPktd6M3Z58cmI?+-5q55Ue`t0}!f}r%-3@)vo zma)Ru-S#ZhYd>tkKkKcf=uh#?Kl;_sX$_!`;PMQA z^-5a13*SMY#nSYeY5?|bci+XJs0Sj*fR_gt*qe11I-$x8IZ2Ow4Aio@zXbA|TyG5I zR>Zt`)EBb(RUMFoHSNc_^y}7&GM!@zC7PEBkWpGe^?0}J$u1%eJ2vwl8M3L5X&BW2 zlOF@HW(J4dLF}+7s8P$YFh_HSrbJ~@cSG*LcfpBFpcKw)L2;WS0>^&XW|O_8ggH5Y_>=qPc{vq`}2f%!}SeMj-~__bB8fOx2L zxgexs>m|V)$;RVhe6)M&3WIjwD?AH-KPSMgHLY+_T?GyW(h46TYg~3e%9=fzJG6n? zdwzapvi)<_Axm)oFCjKPO8|l`uYSLr5An_=I9z~>M(e(FljE)@$Xej!$?a9S6f)2% za-A^m$>KKa2wiq;!`^QdSEu|*HNGlhL#6?(@88`$hUVBX3Mew07Ao7&Oe_j$j7t zAte=+eUonfwy*xt`)#89$>Q{DH)3FSEd$&TtqCNbz0yHJL5j_xR96fnrX1!IV8ZfaDBJ;l-&WfhNc`Y!5m9@A4RozQXK%Not6P<2?TUr=xj+KeHx}+t_2~5Es zudMo(_WT#g%@M?B{#Om$DjC+_`QpE{X+p#qLRW|L+?X+n6Xnb<)r_{vK3Gt|wZIP4 zNAU`vPm*wS{aI9{a-5rnjoT{Y{`<{SHwRX^^bEYJ&F}l_cJ_l*gf$HaCeHL9Qa9|q zdeo2|mkQR0jg^JCO2MPBNpeh6aM_(k@V#`6!kuDVut|2b6Z-){CH6< z#9Xphcduva%{b43xJOl}?}9=p=g;&|f!ZjwFGq&vfEM@xJYZIavGq7Q)S`a@!PP(s z!Jcb|vx?d$+=+q!o;|Z{g$JPyc#{kEyV7i2CBSt+o3>7twfE94!LhbytWkx;#6D4W zZVYazzXIbUs*mvkDF<6+Q-*|s>pL`>8V@-*FY%7q;KB>tWN-(bv7Ff@sEZQs$qmOkC ztEevG%Kn1x=9^Vdo=Y(xo@r~$%iBXRbf9bAL9DOmsp`py__#VO@f3hW?dgYbJaFHD zInBE4&2tNQ28e!xahz(u7gc&EsESl8S1&ql8irNdyhF{31qd7E7X`YQy(^rrzvEy& zdh=9=P|1z2u?c;RBS2<-&GYy7MW57quG693_|)nr>_JC?>A=WjqqSRk-Ghy^d>37T zix-LDCa$EQ@#*!}mDh=eU4wU0IbVrYCM;{<*JxdlzNjSPte2DLEN~Bo6DSHd1*{o| z;Gs*ze2Q5eKh>{&y9V^$A)#ZoJ@?j$d~u`jx2M<3;|14=i=G0$=&My2U*D)$kdMvo z3ai?hjhdy=96epyjfZ_~(xm09fb848_Tfl|xGm&b8LXhdl$jO^y4=G2h za7$kj%n4KNnJMO05p#SdD!UQ`1NLP7S<~oT0Y?tc)Ge!Oxhz8$|1$c(w{49wEp1-r z1>@K%lDfd<}qPq01qe=c+dDD$9*=v1>{+ztRln|!}D;wQtA2GW8scTWcB(;^hcJ}=>5p`&rN9xwv7Z=bZFqW?eI7tUdb9h0rvvtS5J8*-L2y$QRxe`XT%Xm8UHKo=2LEaDfGzwj3DBig@pyJe5}>(!E^}t; zIA^=O+LLr12$zA{*94^ewq+D{H6S}|%+0KZm|{=Nh-f#JFV3#7Pfx8mxO$K2xS%+U zxOgvylo&kDF!1Y_3dsI7_AY_|Z_iAw*N*+V6%_-FdTMIHv@pmJS_VkB3Ky$3Rhc9L zmQyQLcEc8Y@JuFs!RYTL`}Qftz`(ju=Vc<}O!kcPNkUdSPlj@AvekX!B93(QQp@V6 zmb|}_wI%BHStxJLT4L(}(c(6x@KmQLfHQvyN{B7xyCbg}!oMZ;@r^ zM9t}83HwpY1(ot_pQuHt)l2Z~MRosx#s|ph6g|r93F&Yr{d^L2edZ9DAN6t76e5bx z?O2T0Y{OXSeWtGHBbF{^Etjg858QiAHmKJPDV{0M&H{ON!AJ^A2Sb?)$Unyu7R|m4 zVRUK!g-EFTZ(b2tX~m-#vDfP^!KpkK+A}B=MrOj}1H#&W2ru%~`Ukc_r1S_|d|acN z*)A=Def3dMHr%k{H5;cQ>(2k+2SMxb4?l?WaebI~Z0u}p6gf|7DlM-Wg=3# z^=hShOazJa8SmB}f5x6uWkMU{j>i-|+$T<0dB8-Mr7`!{o&Mim-jr*_t?mu(bAo^7 z-R634Msy@h*yp$K5l*BV#aiZ!a$Rb6cCZ-y->-FZKt@?l(i*o%wJ4}5)eLaN;1?Wn zpaq1PhDD}XeF^hEx7R}CX63o=P|GgUKQ7*51f!umUloZ^o5BV^Q}Au1$jgJ#?YZ-1p^P0ehiFZdm*mo(aUaqjakZVf31 zMOWuPxD@j*IeC0>>dy_DZ)O95d9Ku`r%l;3yJK~|Wic~_w1WazUE03aeec?Wx{V5< z6;Fs*sSu?R-2a;^#7@z1+67}5(sa|Z-szA-Cy1GM{_J(Z<7(y>%0*f&CrBlfeT-lx z#?d^GU(Aim>Eyy01q%r~rHyl+(wSNd?_;PUhvv|y<@g^g zA_|}hKf1(pKR@X*+1b8>jcoS&h5y`dk~S6jqJOZHbLF0cZrFUiH5&V;qtLs31c;2! z>9;@z2IgsH>xy|)d0Ml_>Uhx#U^RV&&ke_ppJo?4YPOz;P|X&|C0G!`)Lp3cql~{= zl4f+B{)8^kZI-)=W`epL2A%~3f116vb~pF#X2;mI?@r#8 z(c?1=o;H7S1joKO1WMSg3G;9BBT~{(So?$(xWPUs7{I5x7C+0ptw14E#gOY`bw+?Ig* z=Xa((>sxlBdtDWA89(9Bma(jLpvh?!E*0%U&CivK17O+sb-TzEdHK6XOMAIDpV;3Q zir&JCi{#`m+B$cpXW1jH@LN$&Fw4eUETV$Aukq&1G?5o$daC>53CnJe+2%^TBUDS5 ze%`HJ<2wCB5aafEgEyQcGG+O~(z3mLxX^4Zn{3$H3jEBEzLC;0bFx|MNhY^tkJLLj zw=*7^3PWq<-xRozc|Mv8$?(m_J{g){TJ8`D%r#r@_F|x9ynZ+SWQBc03Q5JD>`Yh& zTRT3&W6JED$P*y0Te&5k7tn(IWE$|sxJBDGiH(h%dxFob!(8Up(kD;>?s0Ehy>qON zuxLuEeMj3reLvXQmcwbt-F;`Gh8$q98s0o3;rV$kPXxx=Wra)d&7OW48|!M2SX5>3 zXYCCTg4?@{6!!m&d(U5lWSQY~mamgZHpCU^2Oa+ zp4HFLMVo9}FXKajw)(6Nv^TnzsdJSx|J^6!;s=AERfox=ajQOmbg^(-MZs(H2Hyf> zd21X=B=zU(^izSaxlQ@0rEkHRA=A;H+kq3D#lWtNSXZN%^4!mWn`40k)^PR3|S zH0CtCG}U+W9o0F~^!Xe?O4e z^U(N_rE1ehyFH@;5*PR+ON5{ym(Zjqc)Ec3rRGAcag$*VmB4j!|J-}td>#$u2Mf2N z4fj|(K^O}cnkSVii9~C)#>grMFf`mz6*n!Qwly>8pk=N~FjUdvOvGDp{!&q4oMYp? zXyh|6QF{JUMiRbW;2Blb(L+`;J4y5y)}0W{vDZrN>n2~ysF`K#b+?Q--J`3W(xKA> zr%fVd6BrVniA&+A=6&C1cTh!YSknFsm2#ccfufjqTdPLzG@Ex>)-Ji6?ASZ*N8V1- z@;!XW^3Qn5#8&q=zdM4b>AuJAS?bK-3X_ON9V?w^D%FSQgWMguyNZA3k*9)W#=lOn zbSw)^z9%nWiRSZCmK}LHi{)H-E(tzPcVozX&t%4$i^(}km&p#os-~2Wzi>VENKLr& zY8(EXPp~HD#_+&wn}c1y%Ng1Lh7N}Dhi*5LiOSclgyVYT}1p53k$-_@*+6jn`BXCF*k9DW|va|^&`E*<)0ke zxOr#;n%7`}K?PXp7MygCW`xGrI~KliZ`-{HG$hwscy0nE0O7 z%1izlQH6~#Ob#||BjCidU3y-=te0DeSq(U8Dau2J_O%S`Dw^q+KBd()rpi!Ye)e zZgSmA3TJT~haA+_?!#OB_?GHI?A+;P%>*8|CFc$WZyKs+7ksWuJuyyAYQ^4V$!ZH6 zJ~9P^?5=6#*GENDr04O)o&Q()319g`4WYwrNWfD-3=-c{QETI<6FqcGb?OwFu9aeXajt*VKh zBtPNt@y^oHCNqxH9EnYjABu%u`w&xhUPZ}FIrC-v*iCoNmh29piKfx(4Rz1R45Y5x zEYTOFt#74lcVA9T`st)?^S#7(z&BCR|FX|4?3OFVNxE)fGsCT!Un4F%RWK}3VHQ0C zca8Q*R&BY8Y;K}qRR+gN-PXRm5WMYeeC_!w8A*HG!ag**D6?5;VstRD9CiGd4W zrUK?lEjj0&JzFZs$GR~p01Sgk@cV}`&cnA_EhLY^!eVe5y74VixM7>SD%;}k1!KYN z)9r_0Wpk50ZxQLfW+HIwp}`k>anc>_Pr_%FUb4Ijmi|yga|-e&hH88MOW~YA6faP9 zVuQ1DxOl0Y+_VgyJ1xgswN?Vi;2!I+Ll8hT=cX-m!meqmDy_X?+$ibw-_LIBW-I$w z{8Tht?At(vnC@4%W0AKRa%=#BS5CCA0BFrOKl=RA&Tut!CZscKU8<dXcFW)zasz3QpjvrMZy-^X8Zkh?@RVt=x*w&Mt zaC7un^XZpXW^X-RHh~*%ejL}<&VHe|+Vd(}_p_5rMa)fmu&T_jvn%JSP+;z!vrhf{ zT@|MdcxM|Ri~O`SM_I(U^M^BY+lw9>SU9EoE=f1dh4MBR!3Qm`e2~&<_FiA04tjzQ z^v)IEy?@&M9kVcdyKWAE!8{U8V2cFBOZ#6kmvoSh-Mpu$OD)^X*eKN63#Jj30C1a} z#{yfi6%NTYhU3H2fL5pu%10&D= zf3D1&UMt@bqO_lY4vzNOclHyaUjxk`2+6CvkDfNS07V+V?0+RwwfqN$c^rt1XyR~=uqg8$3R4p zg_KbS?J^;JHNF=I_k{>LV1IJyP>OHTVS3=Bg0(A+2`9NQ>8?4mkDb z?B}PGdaJW(#dzkQX6SovUh#h``y}RlK7RLDZsE?`9L-K5jU(&dN%!UzgIps6IAnw^Lb z)|v*CbuHK)>+DZzuhCV5odQlL%8FI;XDrN%>_OA9&i>>|>^cWZ0c9maAf|H(c1QE@ zgIh+Ti#zyYs+yQw(WF}YmYxEKt*`HF zOp5HjIwN0Km>3p#+O-b=4=W=!+_`cuw-%DqH3MNYkn9eMQ8nlRKF!yx@AJObe$e%- z{aiWyex1q$p0ZH6t^ccS6j0l){X9Z#()tU)W@i2O!!R#f``wcc635!_|Jz3+{C98f zci{OejOZ~pnB32W^eo0y5&`72^xk{=`S2x*`8vc2gBy~8PH6{Qj)PWdK*lH!cV93@ z8mr{U$PxkD;X8~PR`=55*20Pb`K z$XiWNngFEt;Pb}1z+%pkjlPzrXDE)WLvZlq=U`^50#XX#3pasLkuf+MsVNMyTtCKZ zoPsEMpiuZ&X{~8nCvFc4bg?^Fibn_G=2;toFn zY*mJKUl#+6Y{jO;V`-Yj!4(2U0hmvPN*-TQD?JFJt@J<_%s zUEnBN6Cu)rEm|;X`3^2RJrc8m6n2W{?THR%LZe9;oEP(KN}mBu<=TuOW*ZBvho8R0 ztK#f*FlexW^C3KgQ1O&i0U*3$-lexr#8?q>#Q{FEyWF^$*HtBNkgIEf(%Y$fXq5&T zg;(%UMzt#8^voqCp9?JvM+XE2RV-kR^!6+-<QF7vs7YvIQ)?ucN%^eI57j^qnYY< zxhyy!b#CqS7ss%Iw7A^>ZcxNHI@T^PW<4a9wO|0|I`L{b%5lGINMG~>@ffVXEXpb$&JQI{*Rra^Nk+Sx^&;_L+6quc_iIY5px zAgdQFq*J%XD}5yPZxx*fJ$Stx#tuaafP*LWqmEG4IgGXTEvRg3yyj2)!S^EyDUiHV zVJLU)4&nai-Dc_x6GD`KSrn7)TWUW64W{ctj1;=*WRXiudB<5r{gNBQs5b^%4vFTYqs7SMJa^o5)Clipp8By7e z!+-X#r`>;1QenhmlNVS_p-Ock!P@UMpMqFu!}wj{0G_dU{xP@SE>Zo$1$-j1T6B0a z1YC^?L2UNjx~R%pD-BBBXxsveI!Y*vW)scHA)}rejGq-6+`xkvr68sKw<#Qc5XWLd4=tt{~hBPW-wQhZr4)_ z7vvr8@X^tY>jf0tuito7dnigIpz_nf3GX@w#!rTJ6m}RG`2Va#!vY|q7geQBKNyd? zQv!2_@wjMT8v~BF<2zaH9oZR5Z?~Pm)PX|`n5GPaRniDewo6dvE}#2~`qC&bLAtKF1aEEX&u}skk?g^k_~9qm(DjBFgS9@^ zV=HC~5ifG1{_<$@*!dQR{p%%!+}t6&<8INhNqp5_dU}P6FVa0e0CcrGgd5{OvabV; z7Y8B~yp?iFXv)=C3y}~Dol?-5Hr-OZl!eI0MMT(OQw>@;cUfdQ?-?-;5pR_JBQPpw zRkyM(fxcNZ?5CY%zkdpb?qK18j06fzhLq!(3x*gvQn^~C0;cbMWJslCAyAtLp8_l8 z;P9oBs(` zmTl!qkrwYi?C{Jz#U9Oa4h{^x5AKCW?}#peQq`_@dB|glo%-IkNCB;iSm1doI>Tcp zr+_^K^f+BW%#FHE@epk-WRl$q*;9SQ4Hx6vrLYhW6ByYbiAZey7b9-RmRxH+<)|aK zC#C7{hyYEnYeKup2YVNq8mtUG`8f6l&H?k@G6gT81I#FkedO-sVUWApwT&Y~94PeD zs67Rc8C`DFccWi@Pgt^%`>KY0DHv~=AT2fcy{Lf!Q}l&EOoB;q zTXZP&uZxzT8WW)uU0k`hHd9|1JCMsq0O{gTs2;Lc07wk^&L+|(Yjp#c@YUVg(b;RP)vE79}S3<-!dUNbb)%; ztV+IZykOdGp}UlmT(}vzKm!abA7VnHP+tgQiQkBFCe{Uc`3pOSi85OPUp1Rf*FpnjsM$Y}tP-!1=qXh<4E_pmj_UZ(lD3Njv#w%S zx%Hya>t_ao0YSkXC%A%S4+KQXVIu>c-TW!}Nca88*Nwqi4dt;Qi@*WGh7EKk@2Av!7mHD2>KO{WCxI-&%^dfO-_K#cbkOO(aF7VBp zesGf>)^hBl6x``1gDO7M^41=3eF+!YZaqwr0^;o1xpyE%WLU_BhwFF9AI+D(IYQTJ z1IpO!4nT_T0pMW+N6%Qp;VfyrsvdtGzm6d`!gUsgUO$UMRGMU1D?;q(U;a9&0(L~S*dct6OZ<9s!o2!lMMD*ui8B1kFy zx1D_G{%3$OYYGG9=|sR z4fozX`p7v<7@S@VhOWJAdf>^N(ysy<=U=9SgM<0tbt0GzrV7>HyB<)|XvE8X9Mjl) zUek@AKHD^3U8hJmI%a|$6dxg<@xrI|w-`Uyyqvx1p49y4yV*-_$`7e_W&d!3(sHl< z6YwyoC{kt$JpL=IHR{I9Cy?U?JsyY3DEnRp$SGXR!}z7fOl6N%f&h2?92AdT?jiy? zYOX&fBznRYNZcB^y-GdF@-MxRKC*t@#gepIQEvT{oc9&WP$^-Wn z$gv@W*}q1jw)Y|4o%!Q;3p86tf{*Q#|B;B_!&2@2Ns}^;I)c|&14uca`(f3M2`>yE z4V0$-2qsG7r<9WJF1MT|VN|`TksFU<+5A0OP!A{SyaF`mTG1eALhi~>mFmfBdYhPu z9WIK=@Ba-csl$mwyQq+?-E$L~VzWJ(4~Av{O|nC*mNROX9nL7YgSytNz7S%h{g+a( z5;@wF0=nA0*S%x#S=ViHGF76jG!RFGhARB{#B5tMHuT4I(c6lWnF}1)Ut%Y{F#|y&0cFGN7;|FbJm2>v~_22=+NkmQ}h9b`7QqwV8dP*F%cbP4g z-elA%_}xqIPj-(Nb?{din|ebpIn`U3I&0WwU1>C;Kg~1$W%ucKkA&bvr!=>@l%j>o z?@zvaFD#Zp74>G@_lKEhK5U-{3bT$< z@*Fc}pxF57gl`G}KN2?bj)Y)Y&xoB1i#nz5c2b#7PWqj`o_=Z%&H^||^^lFyJiL;#MisKoC%gZT$#Gfz@vOGn?a4U$NBHksmC>~I|^J8lGwbE)_qvizUkU5_)8E9%hL;L=8ROOzidF`FKD?`EoIp zxynIt&EKdYn#EIHwR4MYzpL2y2bfg9g=C1PCR*g#g|LN^F6~#PhDeMvav9-To-bAe zk0A4JGpBqFqm4|gh14~UEiGHD6_BXzAdR>T#9Z89uom&4-GVRCsw6DQ_lt}YqXF=3 zZ#qXnXv+yF5T}QD{3g9_Np3`H@+KeG#WwkUh?LyU@{^ z2$l1-tps5OwE*nk5A!sX zauUKVM9U$FNGPEBKfw!R8priS)+a)sZ*q&XIUe+Yz(M^W#MbMfwf6g;{7gQhsLx8XuNXzVPAs@}&fh1*q1Juy-k%)5qX2^x28sLs0bB z^A+rl200J%A{_&zT@Zde4@j9X8v#B8=UC^KjxO8DmhN{n9(XdyEY3w@!p< z-b3wg?}6;~*~pxgN(X?IBxPP!aC)pJGE<8-v1q>qgO8IocvnC=vs2$oDMx^ezO@@k z;r}>Siqo+EhNA=6^YKkGTC-}QNK+<~-7k}5bx6gKaxkP?I;Q$HRtn?T70a;P)V!qYs zFg+;6@3FKfHknN7UksI1AoG~Dri%SY`9du-Gy&K1efr>(!o6ep!Qd{!;Iwz^P8Q)Y zC{W(b)3PUa)`f2g_G{Vn3Y+j_B0aJOQQ+vfPZ_{M@k^t>bZTB9Vis^S9iisnLrU8c z^LJ5ZBG2kc`O9%v1}2Xc#ykWXq#^HdI7ZO5sD|&0gDDYQt3GMX7PrL9mmd#hXilWj znn)~i6v{qPKXo@hALbSI>NI;H5lGp_mJ5j|KlTN_w@O?Jt6Gl_AHAZ=5;1Ops0}0+UFEF#gG&!b9`&SIE1aFw6rtnW~RhkxfvVxc3(1GFux<$=cLCOpNV$ z8uR0!7I;A=KE7x>?1xN`)zkH#B|`DRl!Jef*&AJR8@vXf;1x8w?>cYdP0ets)#0-( z?2nS-huc@e|iHc7UD2(f60ij)!^(}4r2 zRmWgr`;43-J9RsQBv^sAnJCj^sQBkOO%NV2TIPX|j~#10uaiuBH;_v+__dED2_Rd; z+HiBX;UW>}aOVgx{7mb;bnD>5!C${}kzFUKw7zQ=xwaiI%o>iGP?jf9;~Q@Lwa}ia z?7caGPwq(}Hu#6r46oQ_wHI~zBvABgLd`sWXtdRCNBg95d2IiWrA@)MyQF_p{rU28 z51V8z^x7X6FTgXN)c&$0X?OoHJZH>kvy#;F<6#V+7#Z-FTAC=JuJ|tB|N2xgoTD)K zBILaBYiJ}~Dtoy9LV4`FHnJ-O-;Jg5m#}3gJsz*zuSh=yx2O@*$FTmWqKr*tAJh6t z7Nrz{ARzQEM8osZD^iOSAJCaE3vEq|*n|U3j`J4dFq)`4b)|6#Yw`+ujeAAAIhvY= zbCjV(N=&T#=_@d)7!93~=gg56uPo|#uvuxoh|US2X@T5jB1AwHGRk5(mf-WIs!D+B zA+?-E$hi>?QklYb-)!P4y0@ft-gfwQ$FJ##`d`HYwG#{r?lVGUc@Tu#B7>EY4?RJ1 z2PQMq#&WIu>lgOJJ(=X+gjNCTR&;jb(i9vt7ILO}FzKVDf4US8)X>9_5dB-vC?0e^ z-ZA-GIY-=hxo@S^K)+(>Hm_X6%I~_Oe-BG`tVEraKR=~diRml9pJiRQ6NAfM psn}Nj{MqyGk<0&eZ?4ftrrMEs{}Lr}BmsTf8{*Pp*eiD){69dNK6C&8 literal 46486 zcmd?RcTkjR_brO!sG}HWRKx_1+DH-@5mb<5wn523kzgR_D3Z|;89_uF5D_Fu1_6;M z(NU2kIcE`&43Y%|&Uz4>`M%#dx9Z-i^Vg+nYLM=J`+c9V_u6Z%{oIw7JhN`i_BC{L zbnB>RPs-BKt!Sd7`{}|jEAf{bi4+R{Cuni%f`y#1mW9<7GflelS1e2nj4cdwul{~r z)687g*ytelfj_v9?EhWI!otK{kcY?c$2+)<&9r&`zGPW~tE@ITd(oVZj&URTZ<%&r z1->i!C+f*#@;ChZo2_ohYc}K!w`%aRKe+vKmDp{%Jy~ZNE7 znn0Izi9Jogr9gPH$)i9kvHoY=$-)o!U7zx0OaGAG_P}J-;y+%mJDawA@%N7_DNRdn zGFiTHaOwSN%T`-0{odqs`{>f|Mq+Q6mVQ6{d)xZO-<@{+|LXELQ_08{<|XM?j=e6+hwU=^Vq53$4WLME(?)_Q`c)>ZMr4+`K#`X+Ao-pl2G|+I_L9EfsH^>AgKY zuQ>|+@rSg4fPm}WyE5m_-BWyiA(%5hQ+Ct7bJCUJ=iTfF9{Bq||M20QwY4>aA0_p| zerM(wnUFiP!_S}ZXQ5EKOGW3a0v+d~R?u(hPAnCXD|*D$Z1Ns=@O}^GUg7mn&b->E z35i$@tfv50PEHBjZsq4}NcBZ34!+yM4$)@Y66}dn} zpo21};&V3MiyP?ZOayj+Uw__ZJB%~0NTuX_{p7Y?&_XBJUa#hP)X||#Ija`y2*p_C zus>IAP&{jJ^X5&w94RX&$8XsyKRaHlj_>g_N^85bMnHs)PRyEIFD-JgIiv60-AzyU zbZJI8v)AoM3Rso1Y?5(zESNFN?y_SZBGZv^8H4E?yXsR6{kCu^hZ;7f^fbLP9~mB& zArm$;kgEUXGl~c@#q2`wNICB_{@okkU-}slu<;>X>`yGzYAC~=l=tX2}<$b23Nm|9*XQ#RX z1uc8MN}e8NRaaM6H81AxtxxPa6}T5$p|UH`F%F;VtBR5nmy+U1Ds7#gvpOFj^r}uk z+_nCpkB`r-Teqr`bmhi}TGesaK0Zq2`sH1pKlftA)LOOLM+nFn<=E-Ze#T=1sjVCw9O6+?QEOJOmdUt2z<1-z$E)!SRBihIMo;oz!rghIq4~(t)0Eq zF<6P}x|k|)adBB`=?BWGMzOX-SxTwR*Du{YfIX=H_pKGv7)^#vn?f)>WO((;f^OPO z^haT}NMQX#Sf;GDem z@?QNb^N6|8z%hvMQ3V4=Crpd&kDg zdL~)FRJNTBr0&kfDHo=Z`WREk$) z%sSmP@P3DJ6=ss9Ggsxw?HLR!pKb-EI$A*j_v@KzRqoi*U~p)>yZi*Jq<@*5lyDep zz>PQA17F(SJ~^m;|B!LZ^U4S*&clb5`1Nb#b#x-rF$5Vy*_Yh6^P35TSG3Seq#LPN zOEOsT>>rp7wEdd9&3*%qq-ngpdzwptu&pAeQe4$8$8W*i-8#AN-*X&2dMP+KIDKxq zj~~mM->4}qzujS~(`Op1!Q$iVWlu#N)!5nDu`koN^XrASWZCv*&kTCT#~VMq#xt(M z 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 K7`J}+iT?!vu?qzN diff --git a/spam_hypot/model_compare.py b/spam_hypot/model_compare.py index 450d033..c45f307 100644 --- a/spam_hypot/model_compare.py +++ b/spam_hypot/model_compare.py @@ -46,32 +46,62 @@ client = ( .merge(contact_days, on="id", how="left") .reset_index() ) +# ... всё как у тебя до расчёта client["ctr_all"] включительно + client["ctr_all"] = eda.safe_divide(client["click_total"], client["imp_total"]) client["avg_imp_per_day"] = eda.safe_divide(client["imp_total"], client["contact_days"]) -client["high_ctr"] = (client["ctr_all"] >= client["ctr_all"].quantile(0.75)).astype(int) -X = client[["avg_imp_per_day", "imp_total", "click_total", "age", "gender_cd", "device_platform_cd"]] -X = X.copy() -X["gender_cd"] = eda.normalize_gender(X["gender_cd"]) -X["device_platform_cd"] = eda.normalize_device(X["device_platform_cd"]) -y = client["high_ctr"] +# --- SPLIT СНАЧАЛА, ТАРГЕТ ПОТОМ --- +train_idx, test_idx = train_test_split( + client.index, test_size=0.2, random_state=42 +) -num_cols = ["avg_imp_per_day", "imp_total", "click_total", "age"] +train = client.loc[train_idx].copy() +test = client.loc[test_idx].copy() + +thr = train["ctr_all"].quantile(0.75) # порог только по train +train["high_ctr"] = (train["ctr_all"] >= thr).astype(int) +test["high_ctr"] = (test["ctr_all"] >= thr).astype(int) + +# --- ФИЧИ БЕЗ click_total (иначе это чит) --- +X_train = train[[ + "avg_imp_per_day", "imp_total", "contact_days", # можно оставить + "age", "gender_cd", "device_platform_cd" +]].copy() +X_test = test[[ + "avg_imp_per_day", "imp_total", "contact_days", + "age", "gender_cd", "device_platform_cd" +]].copy() + +X_train["gender_cd"] = eda.normalize_gender(X_train["gender_cd"]) +X_train["device_platform_cd"] = eda.normalize_device(X_train["device_platform_cd"]) +X_test["gender_cd"] = eda.normalize_gender(X_test["gender_cd"]) +X_test["device_platform_cd"] = eda.normalize_device(X_test["device_platform_cd"]) + +y_train = train["high_ctr"] +y_test = test["high_ctr"] + +num_cols = ["avg_imp_per_day", "imp_total", "contact_days", "age"] cat_cols = ["gender_cd", "device_platform_cd"] + pre = ColumnTransformer([ - ("num", Pipeline([("imputer", SimpleImputer(strategy="median")), ("scaler", StandardScaler())]), num_cols), + ("num", Pipeline([ + ("imputer", SimpleImputer(strategy="median")), + ("scaler", StandardScaler()) + ]), num_cols), ("cat", OneHotEncoder(handle_unknown="ignore"), cat_cols), ]) log_reg = Pipeline([("pre", pre), ("clf", LogisticRegression(max_iter=1000))]) gb = Pipeline([("pre", pre), ("clf", GradientBoostingClassifier(random_state=42))]) -X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y) results = {} for name, model in [("log_reg", log_reg), ("gb", gb)]: model.fit(X_train, y_train) proba = model.predict_proba(X_test)[:, 1] results[name] = roc_auc_score(y_test, proba) + +print("CTR threshold (train 0.75q):", thr) print("AUC results:", results) imp = gb.named_steps["clf"].feature_importances_ diff --git a/spam_hypot/stat_bins.png b/spam_hypot/stat_bins.png index 5d47f7171d5ec32edcafe56cbfb70b30de25da1e..0510a109f6c2d9aa5782529ecc73328bc2516713 100644 GIT binary patch literal 89471 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⫬X%(2pA`{>@ihPP)sDnL>o1K_skG()UdOs7!^YJr1}!#t}DgErUi9%NFyCf zK2(>H`GJ7JIFr7ltXt5-<}h>t9IAwX5R9R-km;?eib_gpUbpODA&djCq(S_le{qc; z7`wSc{?!Y4MS4evRE2YU3?E0wE))PpaNKc3u0Ll`EtiAfTl}ma=!qs1n{UL?i1~8z z$cPGZzi~Pj#9v7PV(WdAOD5*2AEp>ORwhdNUjvX>gisG`{WNF2aQn8}1we%|>Wo2w=Pmav@I7Mx@-BmD$+UV;ch26cAs+fo?Yd_o zzQL$E=)ew`AX2m{0^JxvhuA}j~%KVx)U*=wycpMVTfbgEsoV(}=;d^TJUjGAI( z%+1ZCw@FXt%Wgs5H=yxOR-29k7dg92a|vs9%ZB^}gsZ)RRpBDp|GQDKFQn9=6?{LM zJ59Z6So}sD-b(nL?Odvh+S-)+{2FhF*x1592|rfyVjs42-mT$z94A@J!a*1J%dr-| z2B$|47&vH~`cHVmCak9_fSfYS5VAYB7HF z=M7KWBa)q)0-1rTic)e4DGUq6g(|}(Ypit7gXRX^mkHDk;f=t{8YpOG_tFlJ1EP1!usBvunt-|yl4p}nVdj=CN_bwCHT2w{~e_6b%KG(2iZfA zEZLU`zkJDEuqoMFEgn$6AJ$R>B7%USJS{H*4$n`Y25QG31tQy4QOJCwS+l0M!fM#_ zaBd&EZe6$ptH7^41Xg!1NDQ_ip=nTR+5);_@zaKoPdM@TkE9o&gT(>#z*m6q>aPg7 z`bT(|!u!uPw!aY8CVibu9Ms;|+P;OjdK zH(T}UWWeyvB$+*a)T^`wz0buT|GVr4FhUsMa{@#5K0sxy2X#VwD_Vp4Gf`Y`Vu!Y2 zRCJ?L6jcTDW+e>zoKoSa<0pE^3yqiQ$@d3ek<1vl&T2HAZ<@6QBGlZIV>NATBqH6w zhO`Iw{^7yFe^e&OqCt*pC8cn17Vnv7?UMQ(GilBlRdwV)^C!lc0G08G%)WA9;7#P{ zoH=Kq#f&K8B8GSlKr=(D;B-La*;^H06*`d@ei-SRfXBg)9?&WWCR?w})!SBgsIQHI zd;2WE?+y9tIP_bQ!~JceEpmK#T_MT&iO=a@Z&ZKz@@4Dx&$Nmgdo{!oz6c0o4T?kq zz28sul)4fNjc0E0Iwzg-s)#I)$WM%J2068LX zW6{qYE=ykEZlOxe}j> zuO)-Lt+zrfjJp^gxc_gv1!xO*mk3SBv7}5uF#A~o@phmBkNv($K}@UzzU~)&%Sa{bFz%(mZVP!C1-l-n9UYRvM=tW^s_30)K(cX^@rdThdsv$Yfx9n?=$K9k$%a@p`y1=b z^ats1N8vGK582oHQ#F0Z9bT>(vI2Z) zsA1FhK3F4N7IG@~R!UuGxL(*Wyit`6>1l5i!i#+j>54(9*Dz1~_0X;f-k^-49yw89CDxguCJ-EaYasIfA0^9A3y#qN}Vqm9rSw*9@Z z+tbid?4RIBh({Fx%{zJaCDc8x3h5eey=|)ZiY>XU)&#A?tTYR50eM5;;lPoXo#jrG z|4@En1)6xkA~6#9TYCPFEqwyY)ulx|`tIuuX_iLjC!*Y;_*`Y0kx?boCO745e%pbxSXh3-rSq(=J-uU*nJvdfzWy>cIkUqRquf!U}j6B?ullN5a+{q6hleqlO2-EzL- zo3MY*wizQMqg;ScOcaJbK=s`j@Q;n^ZOv|OqAwowNDc)yZ$!1Hyl~G0_GU;0Z5*pV zc&U<*E*hQjEJ_f=Xf%C?e7;aRd3o-?kf*@!-^oTyMMIF#?dNPvgcHSWolYt65`#wd zDj=G4L8E1!-FgNDi7TidRb4MRmW-*ZYjx6xQu9T)cx}OXo7{$nOj%MJ*(#BmrMa+6LUn8q^APs-hH~-x8u~_|z89;g0MEeZ2q8=F!(dw@0UBnpImf*+w1s zQ0)^Umxzu)SVn(PQUS?XMc^b$O3cCBR;2=0TpGZbnQ4!f`n_r1f{}hx415lUQ39$HUS4J0huJ!}K&;9ss$-D$JtitX zJ^yjV^406wVm{?u6j6-uyjucM`EZe6vx3BA*uqtlV9r8>gJtsEnv zPOy8w=Zj{&{+r*x(ksj(e4eY|QmaV?ivV^tOaz6)tP?f+g$E!9UjRC18Azkw_W;8K ztq=4(K(#_=+hcRU{eIy|&7Oph9Wg>c?YOATwEyyab;O*CsldWBAQ$yyBHTrDr0tky zDgKp`#CQH(|I96hyi-Dfs`~ktWOt_1e&m}fbuAhq=R40)g;k0w$&KkO;4DU;YA~gA zn|Z1v0}mtWEYVG{IwO%+Rm}4sPJlJr2PtiM^ zK?w;7A*972*9ou@OhdS0?Yx`5ZG1Z_pf-~}fkPSJfK$TvBiOp4qRaUW(1F1=><+H2n?AUC0y!C?QR8~3S(DkU%fa&-fxB#uPg!8;}eOQ260TCN}CXl7CA zoD6yZO+P_ZC@&RYEn{f%hqK6a`n_VS$vaw{G2{=@sh;B0of88JOjsz7U$&HBd3D zq)3r7WTJF#zQQho(0qp-Q^Zo>>Q#1P2FPCsDSOH+_276+!x|q5;>$&Zrv-(#^MoFj zTPgG}<(Qn@9)2Y+u9I+5x-p7d>m+^GGh`95h>Nt#+WqR(5dngH;Z*YsJZSebl|2QUmz^#-SX~N9@tR5u zU@VDyZW*!ymXhHh@K)Gu(m^yqmR`0p`f=?6ANt_Qagv_!d2%Eb!2boh7yq^5MI3C4 zFBTg^#H=y!K6s}Uxg7@oT}8y)wZwDBFR$TYPO4nfiX$YPsAat{^$%7`G6kl4$xb#m zll3$M2CnE)HN>daFINYo6jsXQIOc=LQZj7Lp)!6x9x-SXF2t&v_Ljy+vsudsL|%pP z;+p&o;9`dh$;rv-kTcU*jf1L1M@I*GfYK)jnex}lqNSjt&YGy^Z_rIxjLK`Z7l(_= zZqq(BRPCcjY; zg>T|mdUf&j#SoAXn06v`$E8sGMH-ZS`d`Q?ceEC;R|y zH+$U{)o;3?fYur3cHrKw__UA_Y|wZK2Aj9AhI@81QPvtkkn1=L6r)7gdXk9B8JTea zxO$fKP9#)D)i7Jg?!yOtFdR0-!$!)}a*Fb_dkf)o?d>JarZF+1rAvfdj!u!74!ER_ z3t%fk*2gpC5568Khm9yF2+e9w7o>OSAJTPuw_=t#N&g3@T9D|%g$o@BMl^mf`@|jy z3ML$r0Hv`x?ye=+bnvVS_wAJGYZ4i!%pT}=I2}`wUI{eqYzpRx^McrW^Cu3%KtRrG+w10i&Pv>ux zQc>^h>pz}73|KE7iFr6E6#;xlxKZGIIEs7D7B!^P_-%h@H3t}wjbp|4v1$Fwne+HT zTm30X=@Cb4W75)#k5IapQ`g|B4;AAGFeB|_!YTh6M({*g!CP${nRB=MOLm1S&6M)l zwE3K^2rT<<6W~@9lS~5Omy#qFI)tT;0FpvXN^0P6-Jkr4WL{n#@I($$9D>h2a#p2O z>iiH)I9or~-x2aGEVmR#a#`K)>w6^Nv(r^JvXD-HJxp*FiKmLaCl*0RsZQ6g2QLk8 zJD^y8)E}_1@XH)d-3=bN_pI*JSjxOUoPiw?ND&xEdObPOaE{!JCsgSCWjQYqk_~0} zp3>a^Mox_#?>&>1+|tvtmF>z_d5|;%yxkS2%hT5lK;U3=bCmn+aLY3oVPIQg4w4SZ zy-oPIV6!lCjnoR#a*2sFu`<>#JXFz_2;@grO@kvVcyi##a>d6d*yw~f5>;3E8$q+2 zoix=kmeL|+;HzVVD#nUa0Fw=fsKJU;m|uNM@v5-5#w)0Mwod|wRp|}njkCQUuj?Vv zP1A--f_P;`v~-FCjJr0uk&BR}-tGo5BKf?LxJVbYXShNSAH(mHoUr52MO!~4{WGfq6-P0VcpbG?-(Y;(k+=H6csUgKRf`~BO za}tavz$K+GT>Xto_JbwXtB&mvMT}?#sA&td)X3T75 zF-~=v3~ja@eE;FN9vr|Hg^r)W3sCSwaz=@`{6e|6$B%{Nb#&N|Pn|zUdxReU+uFJI z1Q8rg3_;z|W%=(qiOnCT%QsmB{bjc>30@7OxO**#0T25jeu>^NxIk6xkg%1zXdaio zvJN2l)-Z|+q9BKhmc&|Qv3;b>IZ*vo(H-6Vz9y0y$OOnpRvhKC!!^0Kg_JZyHB#xr zH67YFe}BRZXTE@cDilX{DQD|r5~qYi%Nh%&l31(wde2Lw@m9(nNHWn+oK-iHLXO_uT$y%F35mHC{- z)*jLIM;2%2pc2Pn>Z-|2p!C{dRtb$tB1j7t-e%^NQ^`&ue~hfA0RbkNGgApcH%a0V z`I)8v+0%=)H!WmL{Ppg zLDv=APU2v9TGV6gt#}{`9JVP^`Rg}^bZpJc9*kI5P>eY)A>YB7cI4r(iQ4Vggs<|1 zO4A0r3jB!RXf=03g1h;}q$-}b=iU}`hgOWUy>QOUi_(G*PJF_UU{zo4hxp@1tC!*9 zxgEY?<}Q&%u;^X2kcML|?e`L!=q`c%P)jaoiob|v4cSDF>?rNy`mHk_%7Km(m?IA* zI;JdrId~NeY$ez?kV=KU>5teWpHDVDdm;8;cXd_kEqFUP<`&}A8jUs|ZFBuP<+M6@>ZZ~unB(KKhFwY?h zA@zgEhJA)^ zdoL}TTIS?Kf^|YiDF`2o*j4bJKH!Rldl95xR4;{n1h@%>bu6XB<)QVQbF}O`tJf4{ z{n_|sMzw_C!1VbD+jjdd@-jvK>>ddGkAv$bKCSO<#QZ_vss_BaYokdmeE4r33R zIV_-X#(!D;jln+2N?UitG|`f}{%Mb73Iniv*jWE}j}u~i{@O6)v3}asB2oMQ#OMY~ za&$c+BmbElNAtS7b0NT_Ao+}WX@*`X3y=8mvp@;`eUfYue)Ewdk5~qAYc%sR6;=Gl z|2#6r)5s$uTc}ms3@Xykvn-pMR)2Uuk818Re2@7Za5f?9%7{i@ed*X1^Fg(jrj2t0 zEdIS!g*}WtU7qkK)`ncCPc^N|NE8u8?oa;{90w*Yd&qGRJGQvnEXHLEU*_t=dWhc$ z5=CK?<9h4y^Y{`{xv8I!MHDx42YJ-*LZ?hCh--#E3l?ZYsttDVj+f%_YF}pjRfvLEePyk}KUE~NK zAD23E)e#W0?PCaTaP-u$(C3&Q*Mlo3gt@ol!|VMOLcGO-&iZ)fVB`9G)+Z zOh#WPo3|8=WyY!92HzYZP?}W2RF$OVW#bnxSk?`nsiP-Nc4l?e zVm^cDlX!buSGkGO{#@u=c2j*CiRhl!YBB!Z`<16~OuB&#W8KQ$pPHKb3YY|nK!q)| z-!^QGU>8$&IV?hO$aA>3;LQSNM&+PjKn$C9cRwJ$cZj+S3Wfy4GU~)L$k(zO4;P{S zDOWp|LEekf!eB5)AQ(aOBcoXmqnQU_yMYCmCoT*&E7DCBFh@0a&b^ibX&e_U5=a3Q zKt=#Z`dhBtAiyJ!|c`Zv7Zb`1B3Ub-3&frvw6fWLlRmoZ{u!aaup`ZMp)?Ejk} z12(dEa3;)Q zqy;cKxg|+W5sB>-$!x4*wC((JD(IyyCDrVj5NzK(Zf2XA;<^#!lKO78)KaB3Z#WWw#_L^qJXe*J%(=wn#?7Q*7~Ks>0uQvpPl*in0; zvdVAuG3Ed@SiX1=1ES245OTin3+lVQO>8Ew{&L5&8Z~{5P=nyZ)&~QvQK(ONME*lJ z$jH)>W;#OyXfK}F|Ci^_mC%z`x*j+ad?`}$rhYg8V~AkT^Q|HQAbD zzFoB;fpOWokgT@NPSkJm>77GnBpb%*AcOF=k$dC;yI?`{jrwst&?8^YF}?1dUSChy z3WL=i`nQdhY;m20ghcO*i-?Fw1n2vI0Yi!=eQ|?|CL#YolruVU1Y0vWBEryxztSuo zad>(6f136%zJ}9V^mt8c&f@31^hGMZbom;E6EB}eq{WB0*EFO}%uFVKT)%2FPg517 zD3wl-HfWEji41ng-TJgsVkaCzM_;k|Zz5>IiBQ7ND0`t-cNTDgZsDC*FaQ^g27*V5 zv3jzwrWP-#EI67w&fbs+c&7NwwZkLKe#@vo+hnCd{~HK~I-p5L(!k!IFGq4CeJiQI zg*-{s2LG~b-Dgc@@Z=i0h!DK7)a(=6m`S;dK~|gRuF^QU@N3mC)Pf9xtY4)81g+b^ zwSBU$A_*=F$YAKIVQ(Lw=t0NrG*xvuIjfOIu3*gmR`=^|=z9*xBq7=l6#_WcTvZO6 ziDqIQsVTYT3hF1n&OIP$Zf(veyG($*5;(4I0PZtXXds&~M@6sIK53o`#iDdZOn9gPcRpR}hxS4u7A9rahwr z|9+^A+4!W&ip3$jH~%qj(K(=@|Cb$(JN-lzVM@2~W{Ckhl)Wm-**8Y@nKil=rWP>2 zJXIZ&GCeTCeZsweM`suw7Y_YLK#RNQG5?oyj*^k=zwWioO`eshFelQ+VMSEs{%Nn* zeA_{YSzd)BSWzs1`t2+IU05L(+}It}IG=#4laGpJ>*_>E*3e=5PE@m|-X%p$tazb% zs=iU_?0+*4>WJ6Wykt=$nyOpv%z^UKb_c$GT7zFBv>Ka_hvLA%(qMVQAKlj+$gDN> za}6jGzuEg?)W#cxX`V98D+~l=9FWrce)+;>=wPz?lr`rO3?ua;*rw<0s}>*ZEw%O95F+{cNt7JKz7 zw*(~Y8Mer5@n}20K}D1kSw&7%6osnYOfU!MO_=uzlDyF*cXwQ5)igiSxhA8_pOc@- zP_aB~{&2Ew7{HI6fVbE+vxIPXz!3<@&MlGLX|cfI+iqURvtM7a+}bipu%1jc1^Qh! z>khQ1K|P%$P`#FA`oSuDY`+CLv6V$R{jJs@Y*^{qMtW14`W|I3tSt9rIA+Ci?p z9=zi~2AI>vJJk^{R1QvQh+8(u9Yqjy+>?-!P7y&ZCM+KF9|u?{WLh!VmM>mBNB#2& zwr2pM)wL69jSHh7uoo?0O(f{J@t)rq`-@nnZi%<~}B#bR62uPQN0wPLCOM^%^ z1A{b(ia{tTjUe4MG>8Z&$j~{YbW02!=XyZ*_xpR_bl=Lvr^}P->F!_2_TZ)5DLkusndYziBAX~yOQ1rAVaf5Qs_HjZYY4Pw}N0! zg7(%gia_ik_tvyqb|skd1<28!4x(U`dU<>=seE|s1W2ok{69(fj(^;=;_c;1G7O}t zjwe^cvWcEjjyE-5JV2wRYr7fcET9EA^0UKNxG+{}xQUBbh3Ohwcf}5%8ot7?UiS9F z3!m`Y5JMb6;M3f%3Y^`#qC5~R9qjArUPEApLY$A??tXeCY(1aWZOdAn#TMKRxtZ8l zSY*_(W^!t3VUep%qNIG|7GRBnz|*$**xBXX*6X#YZsTB1-a-2=)v5?J^e0*BdTsk3 zx@nKr{e+d7JzYfv)Hn@@HNa1oJ@s@1wo$gnJ#=t4xjPO}NI?L^K#|)E-W52REy?VtshaISEh6Ldz1+NShFXEqKIsX?f6pG-N*}z1~PB*^lUpBQ)}oOu&5I1H^`kl$3Wy`G!d! zaLG@S?tZde0n0;0B_(~g{ygIV8e+cPt)&yEu}bvBguP_z4w)|WwBOA-0u3a#m0pAw z+*J?`eQjUJiLubZ7?4G6I7-d_^ffwM@&lLL@6GuNZNyxWn3{_InUTDz=kw>wK*di5 z1RZ7@2ASqfEn?ZASupGU_7F;jM#16|hz}|HXa8G|mEL{M*MK}9tFRYG*C%4-`ewVz zDn!6^3$HWe(M$KhJ2*(iq&Z9wbNJY^$(aK*W?8o~^p3Y<0qVl0FKmd5=uRr4fA%pj zux${dkh2W7iUM=4pq53+8}`tJW*jKEO@NBvv>CZ?XqClXMnEu+mF0*MBN)h3=;nkP zehloY0{ZI>3X_8_FmmD!&k8>APuP7>nb|gll*?$Kyo{Kh3bAsN{QRga@7qL0ueF$E%Of+ zj?Pg#>-zreIVS8>fR0ZdMmRSHCQ^TCt=N&oAM6^XYhI-9FCx6w9`iW`x>l8@TLd)e zyh>NoFmV4vK^++I5_NTT{2qo!P`pw9TQzBo+))z|hy=AIsuxrww*u4H-6!1>R4}%aveeqp0i4(eE~?-74FNIKlRThe271B zB`mLfIB5O07G(<{z`E5HRy%Ipset3b!O1BV@)?N+9zw75BWn;9URk($ zK@y-PKsGrg?I(-V;iHT@zW5Q$Sr<;^-cX4!7!$p^QQal?STVt})6l4Lst?pDG!6SZ zG>b5$0L&+z>z2_wT5Iw++Q`9au>hhGLsk627n`f|1qJX$a9BNkIwFSv%~jLk@$wetQI~O=ImeTe3Mhun7HS2t3YqcaOGX|#2p&5d$Cnz zJB__fIeS#p7>7bd_biYdRi(`n%AbDs_N@$pr>O! z(X=p~0#IRfz%04O`A#D8vc$^DK%plRr)~(u90@zysnMF$TPQh-9_I_8F(m3_A+?{i zsa(DLzodqh?HNULpX3YB&+}OuWvA`W8CPXoAwRFeS3m(8-u?C^v&Wb1lC&wb3G-8# zn9FvXRIvo3Ia87hFZk;xJl6zoL#1}o3Ng-ahg)Q7AXIXJ<2%SQ8bg^}Oz2RL#P{}H z9GJ^y^Rvt$;sFR@(l*x^-ysoog`j}A#m3!f4UFl47VU7&{zM*{w%*C#$jPSkYl{v& z&mR^^CO&V`t(lhdmQF~N>3T++Kl4k>N0jap3Sq+RuT&l3kc~AmsQJ;!yO$9W`QI6N zc{>I*U{=1;(bzcuVs#rNpJd(Es_4uT2B8!|e4j49zrB@B>gK)CMysMnI}mtvwlz^U z&NrQ#*Vy&b6l9=rbHj|Ir%Wm?w`6Kp@MluM`!7}s3NdXJbd&F1bvZ`kT0UhzKsQRJ z>Goz4`xb$f{#Ul`VVaR~$Df5QIxa}5hdu6;%6#+Gh!kW^r*HN~t7H_JE&=SvnJ`P6 z!FEUw)ZvZRH~m$+&LYd8C|Dm3ScXWkmmSscYys{HQo=d&AUNXNqlI^B`YCV*={z8k zFq?j3fC*|r0M&{$I_3jaX=!OkSJ7Ae+yDsL-FzW|?#ZmM(Q_RF$M{RMXTmowd&gPF zZDyJWeRCRfFyvadH)2((;X+u@c6*uhKB05_OJnCJHcx@>4^Y2=S%J|`O5X#SdNhuW z&I`&r>~OrBc~h29GnGJL+);Wl5RG4GFK@Da7A>kU9OlV{2I~9WyU+at0`kqlWEm;s z1g~AI=F7~E7nm;^rv;n1efsBb@SDuAx43`*HSt+U`n3_Q4Up6K+erAiGRsA0PzzL% zZ@Gt17eGA|`UQ=V3~_x9(E47KlG(F2%agn8(Z4aN+Bee$+FD0aTk>@X7PIv%HnD0f9GCFz{6@#c7V;h`t4*XmE_VS(D+Vzu27LB54 zzRbRt?6B@ymqwKm%%pGUz9T+Pn-P;FwX2$=U@y4olOVJbw6jo=&Yg7}aDvv!sGkWf#6*13*$1&O_IMFkqRsqH7nw8yYd_iV{Y_!(6P{KbG0G*$01cpcM zk~Civh$q%$ynFpR%i}J`6dEKXrxDP&@ajx=>)bAg)U=I;XlDQ`s@q#UpvdTXKtdw2 zX=OGYKxpIoZ1jAxPQCKDO~FOW_u6J=d!RiiVb()kJrj0gD81g+=i63kHE0KAKnEEs ztIOP4(d4bNTPEjuHkQ-iQ5xVLg8f1sy1Y1vvO2@ET7ifBAF;GTSfGdwm)XD_vSp4? z&watcKRi(Vr%!ngy#^CvRZldadLj?ptvbvAvM?z;{m(=ZWrhI*B!2?LO&veXJbgm; zW)xdpMbvx-fw4F~SA)Gq>6iSqO-GZhEF1>322Gp8Y%kvI4YmFsZb@*ig}T1Xp6a|R zPh!78eh}4jH00E2D)6xm<3k(7jfD+06CDd-IEBS zjCLi~jM8I!@3!{bnO~{Vem=Q+;C92T5t(r$wKXVG`&Wd5hFWrF1>RiZ@%w^%#NPR# zFJXAQWY2(#Q9}QKSzwHLQbtM(HqkKUHftkG36KVdG6Y73#__#gFtdW{Uc4AfiXB!V zb24pRxyk%ED8sUIUJ2llXc+`Dm2<1z*LU`yx$@A2NA}y3OEA1Yh8lc|j5G4ooP>71 z1yiKA6N*jGHKm*WeT4+}Yhq+hVm;Qwjb!;YOF|91ESjm-)eGST$An)=#+`_E}de zvJ?SZ2W~kf`F1K6kq(H+DckfgfvO`hvW93X>2g`@$mEa_7P;AH$fQaw^3TYmm9HNe znJ~_Egir1w4*4Ez{Ezz5A)M4a7;JWOY(KTQqrMb{Q>Al!TkS@zN#u06G$Do)!I57KFs-NJ8Fo4pczZ_`?0_+KJd@rjg~yr8JN%%;$4|| z>{rKx_Vc?4fZ*EU-pgRX%LBg{NB_7Grv7N(6I2;8{5oC*A+Sekx^xgP4?gOx$WtiZ z?Y&zSN2dSU@{%<${ZH_&pREW`xo?H0L#CvVQJ#bW{O4xDnXdf#7_i>#eBM4;_mdfe zyTP2AH~sVYiQgSb9#A1YJSdnmthUxvgNZc|5@2bp}l}I+cdUkyzc)I77{wdE zccXcr)!4Jsl8PIR5h`n+%=z*6nMT~S2eIH;THV?<$?ZIwdROMh`RW7a-I;Ie=%~&o z&|Pm6*zGfsn9tCq;wX#*kwYyoIf`%w1~>v~ZhE2=91IXD7~W&LuikpJVBbs6;}!R( zA?HrlP~ZCL!<*UJ>i`&n!x5Ijl5YeUTjx-+?wXc?gr1@2OHrr%+|_?~>SF<|?UIH| zY2^0cHbFvaxrdyC-)?&=)B}NS)|P|5Vj;ceQpLkg09TAt2j~`>4GRfux!mT=ag(n2 zDx_IuZU9qLA93XVuIRfirLVZH2ce6$#f25R-dFzp;haZW(Z4}7meWC_6ntv9+z1xT zYPk{)N8)jO3HEziMq7P+Q z1;3_g07+8HhL;0=bqv3-F&^GlApx4Dz7rJCyV%J%irPYG*)ihX>th1^fniff9>%ly z#@FJ{vyHj7Kv-$|SV=ScUGQXcuHZ$}bJ#`E+uPO*R zwWKH`5V1IbV!nraiy#Eh<2EHr^w*z^g#LXRc~7CiS8SzdF97PLO<&t5xgS5fl=z)5 zF|Abo9el;r?*k9xj@o8beqEFKg!R4w1FpSDeLOx?wTF9&Z#)OwSEe?mP51GG5dEcr zkJ6?@vD`vFPG}2`-gVB&=~@?|aR8VD+rTtO z7QzfNYuIYzNV$GJuO3NA5Tsja**?+@KHct5@ks+>gYEX}BuIg$mTg=C_FfT7>^V?= zvIflDpP)AJd}&BL5i^L|p*`k~^+g_RcYK4Z_AwqyYZm*Gg`?|s-urM*$Pk!+FIyRj zRa_8|q8};%2QD3e-^}nY`C~?V7U~i&aupg1s6V&es~GviX1flc5=o(7DUw^KULrF| z=RBg}OU>~>Zv4MK@Z@hon}eY(c38wh4i>x8B-UOx9dPLBU8RjA+LojUsMzzRONqqy zA(@K1C?h6h_lHTVYDM`+N5Om=uOGd_Hia2hr1}gqR-}(1{&Hgyya_g{`K)`gS7XL9 zd(y>CTY}J8ZG4G^d3UwbrE;&{?vj9r(xao>xl#$%$4zy}O67b9ump1_$Ar42#hILN zFE4kb8L4m>35qkWu(g2q}T zLHv)_s_jC*59*I%`5xMvOcqN81*tGOkFx*AB5a&fSQKStj%*L+T5HK_3SF)=APW;2isf=re55!Qq3}pCW0$4dSi-h2dRB=SVsPnXEIZpf%39ThfQM)KwLiZoj0bjrq_Y9&RR~QF|Ic4g$h-b%C_+ zpot?@WgJ4n>(h7`rGcmqhy+}h>dT1CteDgwq2v{zVJUx|i(nc60%Ev9OfpSlUi;~n z4Rc?X%92XFsi;Zttioec{9Gwnf5Cr51QIX6Cw(zikyA|j%Rpho^eLH5_RZA~-}qlIWhfT)wg1#VhDE{!$-J=qyh8$xzbgz~X5 zm-IC80p1Wj)-tinZ?<`-_x{hq_u#QbPBns-Uu9-VPriQ`#cPLbW|{E+9OeCGZE%!F z?6uEO8t*d;Bm(+LQBAjCJnY^Y3&1)_HcqNftmnens8+JDWK|yggr>YV74Kg7mi42Aa zQVfOq4w*TKVmCP$a%xz#rSahD$|t3yBLkB{c5cax6HOX9o$2T)y(&@RHg{2Qal_^! zC;YGreq<4(C=pLg8Nv6Yf_!AXphc0SP;+wx+umnBV)%d6Ru#gn1Me=(b^VewRiCD% zYqn}Cme$Hb9cvw}Y}TKN_OfdkB|CeLcBVe`s9F+@0A>RCR-GwIsezG^=@S!1npTxZ z!hrt-PEN93N@esiLH03c%a23dX*pXWWDmytZ7D4G!la68N25of>h_ML^{GfKS^Bs&z0O zx#(3PT?K;5Gm>TLjuoZ&SfOY7V)O4E-8vr~BawUfRV2@ZRkt^Puy8QOd+U4ma zNHFHzg3@mIxyH*<#HW zH~Q(u!^gm(Oc^nmz-WVVYBS873^-0fyL0F0d|C)ZiKQj(=H8w0GD8t$tGr9%IJ7!Gkr2(m_|KqM<7KdATAoV0XxB=n zZ3;%g+*PMVmexUQHxD%Mkcl)R?0_!&qizZGqDcgQ0W&ebl1vb;>G@fOShxe1585`} zwTL4(Vtp?D?);5w*Wz*8QiFT$MHv-4j?lyDcKCCrlHuFs0B--KF~?0nGL+G@y+gpg z6$ja5wD(L($UJ2x6a7EmYp1==#vikJ%Q@WF9=5Z5H(h4qljUXi1TME7XD0#OuP@@T zFJHYfS^GW2U2nDUtJ+yqk#0vL~8BGcLXs;m>tp52lIkU6O^eohwnB)} zP4V7jKYcsw)Z$WG;Jb~9L_@n~;qiZrA)z0~O5<~vHw`I_pYE;{1Msrv<@)wSt>|>s zrba8rsGtu9@Khy&?CdT5v>?Y2I6M8F))SgG!zXC%@Dc#3fMeMdCISsE7nl*Tz_88J zgHO~pxeWVd>vq}Hl^h1#rg1}$+8gOjM6Z^QdX6>sWb)++{Ri~1XQ(7-!QJoPWmSAqHg}Yi;{4D0*3JO+e(4#k ztWT$qBoBs@h&huYqr)tZ7&PKLCwR_(Y0oTro-Wywr}F{0u4}idW!Ljv{O;7ZC_~?u z_J92;>g8jw)d>y7WnqH$sW~Ic zh;f1D0AjJbZTN$vY*#48&ReUAu4oMwO1*XD1wgKt~4l7533=CX$ zgzOvenN}?JI^nksi_>hEfv%L{{`m2>5W9m!jlRG zrnLhDwk%#m)G;I!+TTL=msq;iv#ds2 z-eI-eh2h#%kZn=R((wTFqGqD@Aj}?8|I@6td+ve=nthBmC8p+m1fmTH(2S$;_At@e zuzr6;a~T94!D8Vtcn|U{w;}%i#cb6CJI*` z4Upq)2MAU9#!lG&ttYwInV;Fy(p$Ryb$x1i27ay>Wgbm_7MTOCS`99RBB?{e!*L8z z&+a0|-w5;#Ibg80Lx@mX!oqAUQWkFSNQbWWLwI?f00B0>Ce&ldKijBG^fy zV5aDfc7XyyNb7y{kcOJhD&M7M3uMXT=R_JLUd~xoz3*g_W7X5I~Od;mZv9Sh~v9IE|(XNNA za`$(|a0vSclEhZ2EL|vgiKqKypmJ<2L1V#ECAkliRH%{ZR<0V&-2aKGaXL9$l)ujU z*&$IBf&I@^JXeqXz<=|-8C(*Oqgp_N5`=f$9m!{9I)Pkl$8wA?7cUbcJ!ZCl{D%x# z6;79O6i>tp`*vosOk5L=rn9lgS$s<ZdbMo3&Xwn$d z*9{^hbYgzZe`MkD^2|jruF#P2^$YQW;hVtF(A^WCP518ym6yZi!D0UP@eE z@kFA3=qq)q>yaz28=*^5c>?nqNVdwcA3Lm`gMKLiDuKx$r<&;;G}*}TsFejiMDsJl zfNDH4HUhR2UjZr%K@D12$E$YttP~hV)`OmN@^ohA-;OHEXcp=Fj;;$57U^oIpL3LS z5ml+(m|QQOkH1#D8-MMAbfam<@ZrHQsJz@yrT&}m8HMzfl?Gak&;Hj;3zc^QX?d;t z?;r`E(NmDo!Gmza6gH8=~zBLw6@6Y-ujLRex4j+ zRJ-lz2kh23i5n)pT?T>(=>`Q;2$oOikF+HYpJ@w+i0phxY%?;G(poAg%sbm^%Ud?J zucdy@i&ga_6T#mDixiQ)?j*kdlQ0H#o zm|KDR?%Ke4{n3yvb8xubHr`Oj1ipePhHmEz518xmE5&L8~ZcL!R68s94+Lm}WwV0Z&gf=dCX!uF`j@M9lc{nGfbb0^PF zYoqF!y4vz@i(BfLvAsgG%1t{X&*d1OKFakRaxYg9JI$@m#Lp>=B{MXXp9%;1?+)xA z+wSM-+1peqO3Y%S%JkA+tyriS;=zm6c3OMfbj-;#Fi54>toC?}9db0Yd}&J>;9hco z1fV_5%3fuQ2Kbq$0dTwD`*J^O>wBVQyFy6RukW@zB5^XEni5~c)M7iVr#lss) zo43wMyVzz3seX*jS$rUKW1q`lt}(PS+q1CB6Ip-x&_-%iBLmky5)s<*-wKP0CZWgX zIG2I8U1Hr};%vefrN<;`WNteJSU5h3D&Jv|4x+C$?EFe!8T$}b8GKyXLpqX1O zy_??K>#(`kj6fOr+@_u@))Av9+p1ka@ZF1q6)TJSpUfStyBcx$D7Bb*>`Z~VA;3nR z?-HTR1J{pOZKj1N{}=h zcl?ze)Dy1sJ^9$67%ZipnApC_o}EQxyt3bu`P&9Z@wxz>)UH!Wba{EXnd&r!sv#Z* zA$Ch-+SAp39XASMUW6P#L69;sWqkM$$bLjhLBT!xeqT`418kZWBocpzNhq0I+U(04 zOVWl@pOUY(rHeu=2T`A$+@}!BH-h>jbCtxejh3EwKehSE=?3T`b}jT=Wb6qV)9~G# z<#dpE@drf;nY}Tw)N6TQN;0dJNLcRLzatqr*G;&l9|V*Q$&Gpc$l{saXOTRy?`~6{ zyLecGcz5bR4Dk<;jPo@65?V7f33sNI9gEE`O zXJD7b%GyY$)(i@IE!zD%G6){6Bk?KswDmzFe(3YW5GR4sHG7DYZjrJpD%MjfsOF8)Q5Z&>Z@yULQkO>c!V3XSZEy#^fi3n5A=n$rCo0L4^ zGeQttytrN?_Ma!Fk4*CN9v+)05~wv1tN6%|SGE+484%1Dku58!>n=Dgf=7f+)runK zm5t{UqxnMck@gu^8fm-tDC|fm4n~9+`p~nt1RbWk5gpH>{=BOZ6^xoZLPD~zY2rv| z8IhyLY6`l7?#gMLOzQY3hYp}h76pKyNb$eVJC6kfK_(Z}aV^mqbQYekKpQs|aJ`Cq z8~9^L+J3%=O7yM0(My4fIiaMY%;-?l3UiOF`Z+DF2Zc)*n0q)NXj!nMlM47s_sP6~~k5GoX59Q8hwx@HPH(IYDQVLi5 zj8eM>@w4gVX!=0RGO3Uai-b47y4*0%_|H@d7%4+wtHg?X)5^3Ol`0umQa_yKT?v%z z<=@jx%UZ1 zqFJ|fBXE>0a$atS^Bp97U3YtV97hPF+(yS^2nbO={l1-25LS>wVYJ8ri1JmUCn_pL zX@y-T*R?jT@YZWuTP_{K{ORdo*OSyZ!x&h;jqVhv-=!%ojdck5x z8Yp2D%~2h(o$mO%7*L(f`7T+s5$t#Uw#KBY?TD;1GE;&PY9F>&g<+O@%#BdDwx^yylHDvgwIT0FMnQ|+4#s$s>e)DJG@UkYcunrGF^0; zI%jpw4;Y?+)n*lpC;Tv6sr8TdsHpGn=*Oko$h|7xPnJ-Z%F#9kxhpD~Pc4Ppdyf$1 z8oW8ti#4u|?yw(u;$-mc%BKGG0cG0vm3wzK)0EJFT`z0)s95UE(7$F`DkQ2+w!f#| z2OeCvDe{l2a?;cdX=gk$j%~lVqSn}1krg7m)`6K7`1$rQ`+e@EPrwGig9+rGZWoB@ z3IMu!7Vv3U(1=uvy1m;e#TCCYKVXR%Hnyj!w!R{zqqPYIu_M*_{xUKbZ$J+9fK-;k zHWf9N%LG0grw4bG^3^PI=D|^M!ug(RZ0zRPm-%r z&d@LhS=_AkrExrT{+P8HHykGyitXnuKzl{nrU)8wmD_3B73Jj2YMhm`K)aG%Kp%RI zEB6fVr!|(apV=CJ`|(0*+tTIw55jKuD)!+Qs7vCEK{s?*dpny5m#77oBsT5FwdXbh z5}%llb%vYwFEV5Fa^GS!hZi%XZos{z?&g79TNkuOXP!HN!eHJ-i^57xx8(`B>F(Ub zQ>RI2Z+At3-o`n>IcOR6ZC5}S{AmbyYdQKt*Zfw{{9%ziJcpadtmc~j;Jkc6@6&bD z_Mc6i`wJEISs8%n?L|o+H8qlxm^F$TYFt+WX8U#vN@nNv63u!Ih4E>Y-0EJzLFwY# zIl;_KN_pOuI!5;%)kaNFzwmJEl}WxkU)eX03c zkQOZkHE0&u`qxME+tnehEr+Es&|j;IU*AT(mXW|(7Bcx4`Z0oDyx z!azL;9mF0ya+7Ily;Sg&s*dFpDxqCIB5T|Jwp37S}NEi@jQ5equ{A zyVf%}*Xk3Ii}e2E5pn$CB!ijmO-Mn4f?5Zwsp@kZ(+=})OIhOGnw=%w+0EHq=qR72 zET6hl2+LN)oh9&!_}jwhp`%k7g}+YPpXgj2aGQ6E{~Gbyew^TA3pOUsJeyU69;dHh^A`k-61o3yDwChnTI>}UMPLsxv*yf}Q= zj@3|axtr5mK)=SAjSv2a=JB#CNq(j2)O}>764p`<-40(g>%dMPUU{n&AJ%?De^y-) zd*ujD_vZoQkyO;DIwwcLW1g1=#g))I_luKt#Z^>e&`kdkjq27*hiL^;Kp zK!TVxUOV*_&7j-)NzO6%<(iLGp*0^5>5;g8!IF6Mi3woQzwd=FP19$47AgF4G2u*`Sq!hrsE^`)jx>Aul=cV;O>z=nP{QN8Jo%WwPonp<$^DZ zD(IHpl<=kYm|hyKHv|fB0l2?)vsP^Va=er>V z-YxeGzUrl4vEaBTzz1*nOF`ZF24j2d^(VrX0wzlxTgDZ;b}gE2Q+eI7(Ink<+9V~H zhAJ3G^JluBPx&7_{tkA5!{SIbgo-Y<`G1^m!`#457(!blOJgQc^|v}N#_-=jq_OMv z49kD7;r?j!5d^&R9ZLp378`HA1<^$KqcWqG!*Vd|Z-duuNpe@a)1)tz)%04%?V1YM z&k)^I8LG5UUdwrvW`(@?mQ#8phE#g+?A8w8`EQM#p6$Y2=A!_J0+wJLBFL*d$G4ux96Fg&zR@pUX;-SkWVP;Zq<&VE7DEtoXQ{(Lp8R6a@4xHBWN2=>WDJWA1j zE}k>;bMj!Sh@(%@Hj_#>&d>1Z`5QgI9x!!`*eLT}k-@tOyB@nVd~58>N6|bzfnzl^ z`^%L#94nDd6`Y%3_Ym)$$=%(yesSh|vm5)#)oq8iS2C)4bZ+@S_zRLv>{8F2+Kgbq z7jc*Z%W11P`N=G=qk) z6Ba5CvX({n6&@{u@O+l=?pCXo(<~SCQioCoik6~@VjopL{2X!C#%^AG)C2Al2p zfEv{fF-PTtlWb#k7^w}wb0U|!_GsOQ28*H`|NJ!Vj)b3ho!s(nGX^EJqEa!2CeL-A zCEtYNe2zdyvI#|y^o4(V+TtS z@A;`R`KUc3u$S}6x8vc$Zsk67!u|Prr)qG$cUq@S0Lb1Rux7 zwf%>HGR$9E9Lp=oOtrWgRoW7Co>=C>mTs$%lk;~KZk?a(cFfdp+y%DcLo&M<`?zL{C)k95l4Rg}UR zz5=M}LaBSzrsvW$N}px>&JK`MEM?CH9qgt)` z?lzWW>H@p2*nELmj}VHkCdt&9$%69i?uV|q0f~24J6Z|FW%EhZEFWKgN5rS!z2P)z z`)*M<^orLy0JO%`=X#6Gr`nQP?)g*eZ{Jt~Z8+9Ec#YLJC^muMtp4WgwHa`LB2x4| zr+=PS$hk|<9;i}>I>#HM2Y`1s=t>8?(t4IbVC%wxb2(=YpPP^T&Szk~lnztK71%+=wbL!}@A^Pq00Z&@JwT~U1AD>~SMYyc zH|ml#Meyy$oz{GhGAm2b)JIdLUkHh^wLKB~>NDd5D_;2<>r8$r(2+3J z4VrK>z#+*2j6h3Ssy{4y!LkR=;`=W>Uc0yEFV#@23Zwmr*T-#9QD`h$p7% zxIM6=l%G__?)ox)%~yX*z!_3tyXe5wYP?@)M z{M|s}t@K7Z>Eow2?jzZ9ic7Jf_&Lh<;0^Okpk=G9~^H=&SjU5`l}1Y@86v_t1L<4 zkf4fV;jv1p&y3g0o-UXt@6ZuOcW<=N=$+a>rI8Frr?--{s{`KZ&x{8}cd@_5zj5Ht zD&%YE4n)T>DWwFufPwm%b?UZF*#md=DZxqTcIB+re8o4%!!>R<^||RgSa0p}$9w)h06!iDGqC&;$-GcJXRQ2R->6iy%T|;f1q+Jz@Z1h*rutG0e z?gAC%*G&qXp2O;i@oYw=lylktynl8=Mh6&hPJdg4Kd!{TXFRE2pipB>Z9;Rzo^q-_)F$3QP9$`ee z=Fb%igT&6PsZp}vAR_U4yR!0o#TE1wAmC9HbW^qEJd1`A6kgt~o0*VvB6XoD9-B^n z^YJa2EZIr{&E=ADfU;mA5*EkwL-e6Nel{g~5?HN9;8d3fr}dGXqoW||V5@(R0c_78 zoE+D18~k!$y04^Qa~qh+ShMb}_Mk@Xc|_i7?^?Tun^B!Da-!-=njGjZ9aWzhNiI}1 z)KZnxCt>9Mc-5(c$RV=%rb>neH~e0T7YGUHR9kZG5J0Cic7^rl_M;<`cciNqU@DlH z9@RS?C80Jd=);7A(cV}6BVe@9?7A_@fX~r?r=9_vCTrSMWRn)x(mMS_lpIS&{2yxE zvH{0#mitNWPk=DiV0rxXl_~unp{*>DoGg`uFu5!cwOlPRpiWxAByAq_=G(vfOXy=K z=t|?UeH~L*!plZf)Jr#11YECloFu>9X`+1nmm`V1GACkw(U>3=`UJ7QU<6CC&OdB%EBPURxr zAV}* zK05t7n2AxX`ngx%00`WUmHwvuoD(hjis*!?>Jie;boG#lSw>ZUoiFa^1l@o!*mq<% z=Gf)^{~P{3c=f*m2#W5%RuyXPIJ8**USA{-AmiUl=q|KQ|6ae(K%3_8FHm!(|o(QlSUD7!<#R{*qd)Z!S`T0Caj|l z#a=889{v@Mw(@cuzunZ+3DY|pb-_44zg(gPosLsDk}cNff6k7*((2#9gB&NW_uQKd zzX$$3>`@gni`OkX*Gki6{}lyRKQ{Ja}c9aof_867!jp`V9(<-f4KSf7}lcC1pXjv6AB$K zbx_n8hTNl%zd%z1j23Blt-dUdHzG%#4IT^IGI7%7(nbNAN&!*+K)8#(bi#8r-dH;t ze%s@~cmTO2H3%}$dCS?wf|&JmZxK4S0IF6zoPp#WdWgrSMaA#&Xg4e% z6!9m?8J`kUaawJn;mp_7;WO`q)pxE#FJV-Gwpn z+>jB1wjhOO4ls_!j=LJUR%(IZs2FRC7KzL<o1s z3`P!`*&~G;q@w|vb6|`W;sVZ=XM`~{ptk^$$2Xft!RFk=vSJ&PlSvxdm>BJ9GFi_}b@4c73bMw5Za_H=NYOyOLdjy~isS2tX(G0>oRd(qI? z8jdy!v5u~X7HM$M_4zCm+f5goVNqdTFx>|m(Z%z%=Tc`R?JbV74nKfTeh9M5>o*CE9J7M(m6D7)> zlV2nYLaxhQY2LK#FYTrUETg^7tBG;*IFq)dp_+#__{2xHcLzZ%0?j~8&{QpRv|BAp z5*b1ai8p6*8)woB`fV!j-q0wt^4~=FkhZO+(IU5F?CACy$HqV{dP(C3CDVu7zK?GG zhBFouaK+X}K~G3F>h=m)g5e>5GDj3j41Qin)hJ@8GYEY1?W1W|mahMS5l9(|tdr(@ zAK@P#xs2qfgRV$Rm$3P@TT)MQ{OjH3ozj&ms3?MT(!{2^+Dl|}4I1vsh>i4W*iOMo z9FDrWLEDOz+1!DRh^`cpj^G2V?^nk(*l$(L(Ojm=sS1g{7bTF~7WQ->jrMh`q!X=g znu{ht!M>fdP+AAD>@r# zm8+M#?e1j50Z7!#tzUP}-X)UX?uj3bK=6#-WI3FVB_)mTFN?PPp0mQjsi|NFS#h6X zdOd7&`K=4kC4Ex{-WUh{tU=$!OTz+Q+}sM(*wq%jg=|*a(QZ4G_zX<}dpszbge0tb zPSBz=OBdgkGy-4vtC}mcQ0Iyu^EfX6>FO6ktsk8qu>Ad;(m=b8LuvjHY{Oty?YZDg zjUpRRD$qOB38p~&kVt))!$Q_rSRtyKXC!Ba)PRkfU}q~aBRDkE2AXNBs&4C}A;$fz zr87D8Pv9t~FdUcxe@VLnV+|T1XWs5we%pyhW{@1qZ*P;hdGq;Ret$;qT72yp_$+jR zHoAc;8)|@48qg$f?t-nuZgnyCp`&-v8o)$nXcM7zaH3ot{)=ggQ$m=RZVsEe;NR!V zasH~^3?sh^tR_%zmhk<&(0(QN_sTZ7b_B1b zF`aK-0&mA(aGV>Qad>MRpxGupTylv0sNnGrlSbTy%TTn+oWJXF@QB6_qID2X3UG;l zMtLzil!)!QiBXPq4d)knVWVQ;cjJL6JC|=DA+z}Sd(ylQ!Up+ zsa*LQ*X_E`a@?tP@~{r-!TvD#SLgEyIy4!*l$EfO{{raDoYKhr>F9GKC|PO!k$&t^ zJQ!XGg6RzgtOJYvv6A{1t`tAZEwAdk_cAukpt+D3x7O+!nIor!n}IGe(&)Oj`8aI5 z#JH7yRZ!ZvdE(p~wpzBs>`&4@FY|uIb2HZ84JEJa=0Wt@H4Lf&L91DFBv#^|T8-;e z94S4Ytv}CDDXA`Ae<;!ChyAMW)0E70=ho`ir96@3 z)xUIxrc@7y_~5DK8GRUxcv<7g*lFZ+Zf<=P@!nx6o{0TI=)orU-Fq?~qC~h?Fuhil z`sm+JFso8q4<~T^VVd@Qe2CVRYYpk?DZX|?C5C{u@PG2R zKfW)b246d{{^PO#r4~>s|B!*-?uy7Yk6#K_Jpz)+0r!6p@|u6VfKL8n*i`b{j;FWv zeD#h;OlJGH3?Dy2#)Zo_R~#r>YkMmy*gz(L6B#4_!A9}+d41URq_YK#hbVVTUpt~q zpNE#a4b7kMqGDn^lqu;xbt;m!Hsiy`WzU}s$$By_5+=`IO!SJ|aLVNOnF00UIi7Q} z(&^`#ZCV;DJ#pu?l*BR4PnZjNqA5~BCk#6ZHdtR{e1o!MJXsoI z+G@1R`ZK_dFw1~%5+z+$9M~+boiP#r(-T(B0Aw9{(2medaYWzvnCR(nMBDc65{$c~ zY#a#h9$B7lFljj<<6}y=q>=OV4FF%8j+_p%_M8apU@Oq8CBcIfXnho7;(bvfY%;+- z32Pl@o#@I*OQ3IF>?t>Kp86*R6Wo4NEB9x+yVk1c@`LG*OC+(-R-{eUZ~=bL=IAx7eoZF)-~exkkic)O2)P~ljl1IQ#e1|#*kam$>PP1 zT(OH1YqwA&+|%3ccbb=8E<7BnV&ca~rp~QsB|Cf{&sGGH{A_PV%rYcY7Eo9{y?Zzo zT{jBW;RxRIz`^mT0|JXmt zKNQb{FhuvTW z8^!L6EjS5#=NVHerXGJeC6m$iE6CNVQq z&e0HJOXL&k##*wyYknok#r1w{eR|?xYqNN5MA-WnJsIg+#0hV7m{c-|9DY*zA~xMn zkIu5xy-?=Hs_DPrCnXjmGr4?4p>?JftV>ITh&HY?9o69QAf*$EnAtA%|BSQ)Q@I4q zdpK9c*{y$x@o-2ATnrl>3t}d&#xKZ~nV3XLWP;>KN#v>7n-P;~&!H?RA)5_5k>+`m z;M4R*M&HgjQH4YFjLY78pl^8HI-^TNT?V2+++e!aS)~-(820E>_6W_-AJC|nfkwKu zJ~!lTdi5c!_6&y=RkZQ=K@lzp!8H*)CGzoKhC^)Slw(Nd%E%tO7x)xIGoTkE8E~2t z6KEYn8$9KeLi@a5Nc}PN}im3);R3+ zr+~>6vDkT6F~4PMbPD4qy`x70gF?yQhTKVt(&-^pyd)oVBd@I8rHyp$lNasDr@NQ< zZ(K;r?t%p6Fr^!;eqvfQzeW2;1v^yVd~TxSUMJF+Pl_jmhicTe@kG@_KC;=O2Pgk6dI=s zwFHV8n`7mLr!L2m9gQ6r&8*n5Ii?EY#Cc3r2|6E0rj%-A8E{-AcJ6)?XOh_x+1is8 z7w7k{|G^daE~Kg_{D3t*bQols)BvwXji zEpf9BGUMn8F)C@ST;`&RwoAMIX-CDQS&&+?yn8rM!0+Zc@j2$LNsvM4L2|)dr!o;I0db=3E?3}H-S3TZdf{iEYGhKYEwlzw8`B( zda2aR82UhCXXCS>IddLHAgd4>hB;{Ko*AhXMAzh-x}$8q^_i;WXycX68lfEuFU*r& zusAseB9O7}J`>*jEN0}9C?#4gn#4kw68%uCWb$Il{RDn9NBEF`CB*%6zky3%b z=*`6GA8d)UVKqK==`Vh95jrFfLd(>C5DUhH43D+Sq?U_qTkhZ=i+SC*9Jlq?R862_ zow^t+-^<7vFL}Fvm2taoaJDLWK>fF*nBT@#<1vTd+>9FhZ1GYeG~exKx|)w92K<_B zOm1X_TVg(ooV_oY&gxy04^;XTFgn#7KY$?mRk(?pua(tAFmg_QR1o|Dy3SD(HYv~I z7C%*bQ2Aj?w36oo|F7oG{2%K6>*FPpiN>R`+W4hf4KjE`*Gj%6OR~qdw<^Vb6&6KIVY&_ zPO_3n-5m+7f{AEz))X%)C`ZXtY2?n@Kt}NmE^Z0tHjNYX@ zCVy+@2Fy$95O^`Na;+21#sNFKv)_swTr?G8=w zyXuggMSa_tGj<5cw%Z&ZnoaQ~jwkYZd|byPdH5zf=7_da4dL#czlSw$W58vMo6OS= z7z;J|durcRr(;|ljY&b9j3JnfI1>IBwpk=rMid_W@-*G^UH%6rk=XrU!PQ9oRsC7Z zyBuHzEi#&j@ugC~{tWE7(=Ph+23$>CQfu+nL!Rb^o)ox$=r&i&wdyNiyddhg~(rE9YAxY2vLl{0@w#Y=@dh?V`_a>5jh#Wx%~8 zIIQHA(wMW?`<4gwj={RZ#Qxq(s$~7)xV2$Irig{Ud6?MAEZd6mV1=iNyivY%8h`ya$O^bFtoEa5rjIrEI=sP?Gv*HH`J$m>i;jwO#VBzB?O}Eya4OElmQ8U-- z4?~P{=6*>X+%Ix2LPz76{d+CLSm*a^2fV%)o@UW35GanfIzsAvq#NUpJ$8wH>jw1o z+aMnObm4?#Sj}N?$$Oi6I$Jv`sLWb7D3M(6Y{F{xvx8%oXBp zm2Q)2vOG(Wr-9C|W|tNii295!VwEvCD=(_#-T$BndQ^6qa2T<+ta-ld7$!#T9j=>6 zC!J6FmEMWL;E(k;nqG@w&FL)YAkO|OW|*JiTGn0oB^5LDC%<~O^HuRV3bZ_{f7gn; z&zQ{_eG)RK?yuM^rkctluyl+w_g=n}p?InsnCBI5Pc!7fL9PfhEO#~^WS7Sj{wr^D z=#kz~z}S6lZMzh22Z)`gf`S2hVJaC{|FTPF!zxihVS+>E^5lu|D0x?lbqE&U%}S@o z&PtM(pFxv%6;C(T1Y|nXrg6v>VM8U5%-u`oN?)4Hwt#GtlIHWU{rp$YhJyC3Xbhu; zPGZG~A}M+Nmn?R5?D!st&6LE$gx@$MJNRb=UVPbLEdMQYWg14XpQ#}Cu%?1cQ!h%@ z#|C%U{3Wxa!Wk-<{^i9hKuzeEGpoTt(QH*9M!o)Ov^>_)(Sq>GouYJL%BbivIY6VC znDqH*?THWI|C-)!`KhKHRPG5^~rKsdA~``;Y*p%!sqg8HRM);afbQY$I~_oQ

ivF6svv99svKr)nI(d$ODIO!uJY;@Bvj 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 literal 99361 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 z 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