{ "cells": [ { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "#! pip install tensorflow\n", "#! pip install scikit-learn\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns \n" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "train_df = pd.read_csv(\"train.csv\")" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 poznan.wuoz.gov.pl\n", "1 vill.okawa.kochi.jp\n", "2 nationalfinance.co.om\n", "3 town.ozora.hokkaido.jp\n", "4 open24.ie-news.irish/online/Login\n", " ... \n", "6995051 ddht.co.kr\n", "6995052 www.upstartepoxy.com\n", "6995053 employeesalaryschedule70.000webhostapp.com/adb...\n", "6995054 dekalbtool.com\n", "6995055 helpinganimals.com\n", "Name: URL_clean, Length: 6995056, dtype: object" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 대괄호 [ ] 제거\n", "train_df['URL_clean'] = train_df['URL'].str.replace(r'[\\[\\]]', '', regex=True)\n", "train_df[\"URL_clean\"]" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | ID | \n", "URL | \n", "label | \n", "URL_clean | \n", "
|---|---|---|---|---|
| 0 | \n", "TRAIN_0000000 | \n", "poznan[.]wuoz[.]gov[.]pl | \n", "0 | \n", "poznan.wuoz.gov.pl | \n", "
| 1 | \n", "TRAIN_0000001 | \n", "vill[.]okawa[.]kochi[.]jp | \n", "0 | \n", "vill.okawa.kochi.jp | \n", "
| 2 | \n", "TRAIN_0000002 | \n", "nationalfinance[.]co[.]om | \n", "0 | \n", "nationalfinance.co.om | \n", "
| 3 | \n", "TRAIN_0000003 | \n", "town[.]ozora[.]hokkaido[.]jp | \n", "0 | \n", "town.ozora.hokkaido.jp | \n", "
| 4 | \n", "TRAIN_0000004 | \n", "open24[.]ie-news[.]irish/online/Login | \n", "1 | \n", "open24.ie-news.irish/online/Login | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 6995051 | \n", "TRAIN_6995051 | \n", "ddht[.]co[.]kr | \n", "0 | \n", "ddht.co.kr | \n", "
| 6995052 | \n", "TRAIN_6995052 | \n", "www[.]upstartepoxy[.]com | \n", "0 | \n", "www.upstartepoxy.com | \n", "
| 6995053 | \n", "TRAIN_6995053 | \n", "employeesalaryschedule70[.]000webhostapp[.]com... | \n", "1 | \n", "employeesalaryschedule70.000webhostapp.com/adb... | \n", "
| 6995054 | \n", "TRAIN_6995054 | \n", "dekalbtool[.]com | \n", "0 | \n", "dekalbtool.com | \n", "
| 6995055 | \n", "TRAIN_6995055 | \n", "helpinganimals[.]com | \n", "0 | \n", "helpinganimals.com | \n", "
6995056 rows × 4 columns
\n", "| \n", " | ID | \n", "URL | \n", "label | \n", "URL_clean | \n", "digit_count | \n", "dash_count | \n", "underscore_count | \n", "percent_count | \n", "equal_count | \n", "question_count | \n", "at_count | \n", "is_ip_in_url | \n", "special_char_count | \n", "count_of_double_slash | \n", "has_www | \n", "suspicious_word_count | \n", "path_depth | \n", "has_long_digit_sequence | \n", "has_multiple_dash | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "TRAIN_0000000 | \n", "poznan[.]wuoz[.]gov[.]pl | \n", "0 | \n", "poznan.wuoz.gov.pl | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "3 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 1 | \n", "TRAIN_0000001 | \n", "vill[.]okawa[.]kochi[.]jp | \n", "0 | \n", "vill.okawa.kochi.jp | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "3 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 2 | \n", "TRAIN_0000002 | \n", "nationalfinance[.]co[.]om | \n", "0 | \n", "nationalfinance.co.om | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "2 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 3 | \n", "TRAIN_0000003 | \n", "town[.]ozora[.]hokkaido[.]jp | \n", "0 | \n", "town.ozora.hokkaido.jp | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "3 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 4 | \n", "TRAIN_0000004 | \n", "open24[.]ie-news[.]irish/online/Login | \n", "1 | \n", "open24.ie-news.irish/online/Login | \n", "2 | \n", "1 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "5 | \n", "0 | \n", "False | \n", "1 | \n", "0 | \n", "False | \n", "False | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 6995051 | \n", "TRAIN_6995051 | \n", "ddht[.]co[.]kr | \n", "0 | \n", "ddht.co.kr | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "2 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 6995052 | \n", "TRAIN_6995052 | \n", "www[.]upstartepoxy[.]com | \n", "0 | \n", "www.upstartepoxy.com | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "2 | \n", "0 | \n", "True | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 6995053 | \n", "TRAIN_6995053 | \n", "employeesalaryschedule70[.]000webhostapp[.]com... | \n", "1 | \n", "employeesalaryschedule70.000webhostapp.com/adb... | \n", "5 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "4 | \n", "0 | \n", "False | \n", "0 | \n", "0 | \n", "False | \n", "False | \n", "
| 6995054 | \n", "TRAIN_6995054 | \n", "dekalbtool[.]com | \n", "0 | \n", "dekalbtool.com | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "1 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
| 6995055 | \n", "TRAIN_6995055 | \n", "helpinganimals[.]com | \n", "0 | \n", "helpinganimals.com | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "1 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "
6995056 rows × 19 columns
\n", "| \n", " | ID | \n", "URL | \n", "label | \n", "URL_clean | \n", "digit_count | \n", "dash_count | \n", "underscore_count | \n", "percent_count | \n", "equal_count | \n", "question_count | \n", "at_count | \n", "is_ip_in_url | \n", "special_char_count | \n", "count_of_double_slash | \n", "has_www | \n", "suspicious_word_count | \n", "path_depth | \n", "has_long_digit_sequence | \n", "has_multiple_dash | \n", "url_entropy | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "TRAIN_0000000 | \n", "poznan[.]wuoz[.]gov[.]pl | \n", "0 | \n", "poznan.wuoz.gov.pl | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "3 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.308271 | \n", "
| 1 | \n", "TRAIN_0000001 | \n", "vill[.]okawa[.]kochi[.]jp | \n", "0 | \n", "vill.okawa.kochi.jp | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "3 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.471354 | \n", "
| 2 | \n", "TRAIN_0000002 | \n", "nationalfinance[.]co[.]om | \n", "0 | \n", "nationalfinance.co.om | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "2 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.272804 | \n", "
| 3 | \n", "TRAIN_0000003 | \n", "town[.]ozora[.]hokkaido[.]jp | \n", "0 | \n", "town.ozora.hokkaido.jp | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "3 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.533771 | \n", "
| 4 | \n", "TRAIN_0000004 | \n", "open24[.]ie-news[.]irish/online/Login | \n", "1 | \n", "open24.ie-news.irish/online/Login | \n", "2 | \n", "1 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "5 | \n", "0 | \n", "False | \n", "1 | \n", "0 | \n", "False | \n", "False | \n", "3.772450 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 6995051 | \n", "TRAIN_6995051 | \n", "ddht[.]co[.]kr | \n", "0 | \n", "ddht.co.kr | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "2 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "2.921928 | \n", "
| 6995052 | \n", "TRAIN_6995052 | \n", "www[.]upstartepoxy[.]com | \n", "0 | \n", "www.upstartepoxy.com | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "2 | \n", "0 | \n", "True | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.684184 | \n", "
| 6995053 | \n", "TRAIN_6995053 | \n", "employeesalaryschedule70[.]000webhostapp[.]com... | \n", "1 | \n", "employeesalaryschedule70.000webhostapp.com/adb... | \n", "5 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "4 | \n", "0 | \n", "False | \n", "0 | \n", "0 | \n", "False | \n", "False | \n", "4.130881 | \n", "
| 6995054 | \n", "TRAIN_6995054 | \n", "dekalbtool[.]com | \n", "0 | \n", "dekalbtool.com | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "1 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.324863 | \n", "
| 6995055 | \n", "TRAIN_6995055 | \n", "helpinganimals[.]com | \n", "0 | \n", "helpinganimals.com | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "0 | \n", "False | \n", "1 | \n", "0 | \n", "False | \n", "0 | \n", "-2 | \n", "False | \n", "False | \n", "3.614369 | \n", "
6995056 rows × 20 columns
\n", "Model: \"sequential_1\"\n",
"\n"
],
"text/plain": [
"\u001b[1mModel: \"sequential_1\"\u001b[0m\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
"┃ Layer (type) ┃ Output Shape ┃ Param # ┃\n",
"┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
"│ dense_3 (Dense) │ (None, 64) │ 1,088 │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ dense_4 (Dense) │ (None, 32) │ 2,080 │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ dense_5 (Dense) │ (None, 1) │ 33 │\n",
"└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
"\n"
],
"text/plain": [
"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
"┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
"┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
"│ dense_3 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m1,088\u001b[0m │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ dense_4 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m2,080\u001b[0m │\n",
"├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
"│ dense_5 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m1\u001b[0m) │ \u001b[38;5;34m33\u001b[0m │\n",
"└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"Total params: 3,201 (12.50 KB)\n", "\n" ], "text/plain": [ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m3,201\u001b[0m (12.50 KB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
Trainable params: 3,201 (12.50 KB)\n", "\n" ], "text/plain": [ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m3,201\u001b[0m (12.50 KB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
Non-trainable params: 0 (0.00 B)\n", "\n" ], "text/plain": [ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from tensorflow.keras.models import Sequential\n", "from tensorflow.keras.layers import Dense\n", "\n", "# 모델 구성 \n", "model = Sequential()\n", "model.add(Dense(64, input_dim=16, activation='relu')) # 첫번째 은닉층 노드 64개 input_dim=X_train.shape[1]: 입력피처 개수 설정 \n", "model.add(Dense(32, activation='relu')) # 이진분류 두번쨰 은닉층 \n", "model.add(Dense(1, activation='sigmoid'))\n", "\n", "# 모델 컴파일\n", "from tensorflow.keras.optimizers import Adam\n", "\n", "optimizer = Adam(learning_rate=0.001)\n", "model.compile(optimizer=optimizer, loss='binary_crossentropy', metrics=['accuracy'])\n", "\n", "model.summary()\n" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [], "source": [ "# EarlyStopping 콜백을 사용하여 검증 손실이 개선되지 않으면 학습을 멈추도록 설정\n", "from tensorflow.keras.callbacks import EarlyStopping\n", "early_stopping = EarlyStopping(monitor='val_loss', patience=20)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "# X_val = pd.DataFrame(X_val, columns=X_numeric.columns)\n", "# # high_zero_cols를 X_val에 맞춰 정렬\n", "# high_zero_cols_aligned = high_zero_cols.reindex(X_val.columns, fill_value=False)\n", "# # 재정렬된 기준으로 희소 컬럼 제거\n", "# X_val_filtered = X_val.loc[:, ~high_zero_cols_aligned]\n" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "# from imblearn.under_sampling import RandomUnderSampler\n", "\n", "# # 언더샘플링 적용\n", "# rus = RandomUnderSampler(random_state=42)\n", "\n", "# # X_train과 y_train을 언더샘플링하여 균형 맞추기\n", "# X_train_under, y_train_under = rus.fit_resample(X_train, y_train)\n", "\n", "# # 언더샘플링 후 클래스 분포 확인\n", "# print(\"After undersampling:\", Counter(y_train_under))" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "# # 언더샘플링 후 클래스 분포 시각화\n", "# plt.figure(figsize=(6,4))\n", "# plt.bar(*zip(*Counter(y_train_under).items())) # 이게 핵심!\n", "# plt.xlabel('Class')\n", "# plt.ylabel('Frequency')\n", "# plt.title('Class Distribution in y_train (after undersampling)')\n", "# plt.show()\n" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Epoch 1/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m36s\u001b[0m 2ms/step - accuracy: 0.8761 - loss: 0.3071\n", "Epoch 2/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m36s\u001b[0m 2ms/step - accuracy: 0.8840 - loss: 0.2921\n", "Epoch 3/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 2ms/step - accuracy: 0.8852 - loss: 0.2902\n", "Epoch 4/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 2ms/step - accuracy: 0.8859 - loss: 0.2888\n", "Epoch 5/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 2ms/step - accuracy: 0.8866 - loss: 0.2877\n", "Epoch 6/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 2ms/step - accuracy: 0.8871 - loss: 0.2872\n", "Epoch 7/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 2ms/step - accuracy: 0.8870 - loss: 0.2869\n", "Epoch 8/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 2ms/step - accuracy: 0.8880 - loss: 0.2855\n", "Epoch 9/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 2ms/step - accuracy: 0.8877 - loss: 0.2859\n", "Epoch 10/10\n", "\u001b[1m21860/21860\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 2ms/step - accuracy: 0.8881 - loss: 0.2853\n", "\u001b[1m43720/43720\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m53s\u001b[0m 1ms/step - accuracy: 0.8882 - loss: 0.2849\n", "Validation Accuracy: 0.8884\n" ] } ], "source": [ "from sklearn.utils import class_weight\n", "\n", "\n", "# 클래스 가중치 계산 (불균형 보정)\n", "weights = class_weight.compute_class_weight(\n", " class_weight='balanced',\n", " classes=np.unique(y_train),\n", " y=y_train\n", ")\n", "class_weights = dict(zip(np.unique(y_train), weights))\n", "\n", "# 모델 학습 (스케일링된 데이터 사용 + 클래스 가중치 적용)\n", "history = model.fit(\n", " X_train, y_train, # ← 스케일링된 훈련 데이터\n", " epochs=10,\n", " batch_size=256,\n", ")\n", "\n", "# 모델 평가\n", "from sklearn.metrics import accuracy_score\n", "val_loss, val_accuracy = model.evaluate(X_test, y_test)\n", "print(f'Validation Accuracy: {val_accuracy:.4f}')" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001b[1m174877/174877\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m136s\u001b[0m 778us/step\n" ] } ], "source": [ "# 검증 데이터에 대한 예측 확률을 먼저 계산 \n", "y_train_proba = model.predict(X_train)" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import f1_score, accuracy_score\n", "\n", "f1_scores = []\n", "accuracies = []\n", "thresholds = []\n", "\n", "\n", "# threshold 범위 0.00 ~ 0.99\n", "for t in [i * 0.01 for i in range(100)]:\n", " y_pred = (y_train_proba > t).astype(int)\n", " try:\n", " f1 = f1_score(y_train, y_pred)\n", " acc = accuracy_score(y_train, y_pred)\n", "\n", " thresholds.append(t)\n", " f1_scores.append(f1)\n", " accuracies.append(acc)\n", " except:\n", " continue\n" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Best Threshold: 0.37\n", "Best F1 Score: 0.7306\n", "Accuracy at Best Threshold: 0.8806\n" ] } ], "source": [ "# 최고 F1 점수 기준 인덱스\n", "best_idx = f1_scores.index(max(f1_scores))\n", "best_threshold = thresholds[best_idx]\n", "best_f1 = f1_scores[best_idx]\n", "best_acc = accuracies[best_idx] \n", "\n", "print(f\"Best Threshold: {best_threshold:.2f}\")\n", "\n", "print(f\"Best F1 Score: {best_f1:.4f}\")\n", "print(f\"Accuracy at Best Threshold: {best_acc:.4f}\")" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAHqCAYAAAAZLi26AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQAAoB9JREFUeJzt3Qd4VNXWxvE3nd57ERSlKUVBEHtBUGzYLrYLouJVxIZ+KjZEr2LvqFcUsYsVVJAiihUFQRRFEOnSkR5aSOZ71j6cMAkJJJDJmcz8fz7bOTOZsjPZJLPOXnvthFAoFBIAAAAAAChyiUX/lAAAAAAAwBB0AwAAAAAQIQTdAAAAAABECEE3AAAAAAARQtANAAAAAECEEHQDAAAAABAhBN0AAAAAAEQIQTcAAAAAABFC0A0AAAAAQIQQdAMAgKg3f/58JSQk6NFHH1U0mDBhguvP+++/r1jtzz333OOesyDsfnZ/AMCuCLoBIE4MHTrUfTDOq912223Z9xs7dqwuv/xyHXLIIUpKSlLDhg0L9TobN25U//793ePLli2rqlWrqnXr1rr++uu1ZMkSlUQTJ07UcccdpwoVKqhGjRo69dRT9d133+3Vc/3xxx/uPS9VqpTWrl1b5H3F3svv30fuZgEuAAAFlVzgewIAYsK9996r/fffP8dtFiD73nrrLQ0bNkyHHXaY6tSpU6jnzsjI0LHHHquZM2eqR48euvbaa10Q/vvvv7vnPfvsswv9nEFbuHChOnfu7E4eDBgwQFlZWRo3bpzGjx+vo446qtDP98Ybb6hWrVpas2aNm5W84oorItJvFN7rr7+e4/prr73mfta5b2/WrJk7eQIAQEEQdANAnLFZ2rZt2+b79QceeECDBw9WSkqKTj/9dP32228Ffu7hw4fr559/1ptvvqmLLroox9e2bNmibdu2qbikp6e7mfZ9NXLkSG3YsMEF2Ycffri77aabbtLWrVsL/VyhUMidfLD3Zt68ee59itagu6jev5LkkksuyXH9hx9+cEF37tvNvgbdmzZtUpkyZfbpOQAAJQPp5QCAHGwm2gLuvTFnzhx3mdcMsKVTW3p2OJsR/9e//qXq1aurdOnSatKkie64444c97Eg3k4U2GPLlSunk046yQVDeaXOf/XVV+rdu7dLAa9Xr1721z/77DMdc8wxLogsX768TjvtNDf7XhCJiYnZAXO4tLQ0FZalpNva5AsuuMC1r7/+Wn///fcu97PZ9KeeekotWrRw75u9P6eccop++umnXWbN27Vr54K3ypUruywDWx6wp3W2tmTg0ksvLdD7t2DBAneb/WzsZ2Qz/ueff777PnKzdPkbb7zRPb+9P/Yc3bt316pVq1zGg73/tswgN3sPbCnDwIEDC/Q+PvHEE2rQoIHrj6X9h58YeuWVV9z3YuMmrxNK9jqLFy9WUbGf1f333+++V/tZ2fj866+/ctzn+OOPd9kkU6ZMcT8j+3ndfvvt7mt28saWYxx44IHuPatfv75uueWWXU7qWPB/9NFHq1KlSu7fgf08/OcobH/Me++9pzZt2rj3sFq1au7EQkHeF+uX/YxtTNq/pTPPPDPPMQwA2ImZbgCIM+vWrXNBUDj70F0ULBDy03LvvPPO3RZh+vXXX10gbAH+lVde6QI1C9o/+eQTFzQYC4ztPhZwWyBi9/3f//7nghgLENu3b5/jOS04tGDg7rvvdjO1xlKDLdXdUsQfeughN8P4/PPPuwDGArM9rVk/55xzdOutt+r//u//XOCTmpq61++PzWw3atTIzZhbEGbB19tvv+2eO5ytqbdA2E422Ez49u3b9c0337iTDX6WgqW6W0B95JFHuiUD1q8ff/xRX3zxhTp16rRX/cvr/Zs8ebK+//57d5LAAjkLtu39s5/BjBkzsmdrLai2n5XNAF922WVueYKNs48//tgFZbau35YX2NKFxx9/3AW/PnsP7KTGxRdfvMc+2tiyzINrrrnGZU/YyYkTTzxR06dPV82aNXXeeee5r9l7feihh+7y/lu/69atq6Ly4IMPuhMzN998s/u39fDDD7vvw34W4f755x/387T30QJc66sFyBa0fvvtt+7fgKWt2/dhJxX+/PNPlzni/zuwrJOWLVu6n7UF5xZI51VXoCD9sbHVs2dPNw7tRMfy5cvd+2jPZ/8mLLDPj41HO9lj2Ro29my82UksAMBuhAAAceGVV16xqdo8W35OO+20UIMGDQr8Gps2bQo1adLEPac97tJLLw29/PLLoeXLl+9y32OPPTZUvnz50IIFC3LcnpWVlX3ctWvXUGpqamjOnDnZty1ZssQ9zh6f+3s7+uijQ9u3b8++fcOGDaFKlSqFevXqleM1li1bFqpYseIut+fl+++/D1WuXNn14/zzz8/x/IWxbdu2UNWqVUN33HFH9m0XXXRRqFWrVjnu98UXX7jv5brrrtvlOfz3Zvbs2aHExMTQ2WefHcrMzMzzPsaep3///rs8j/1sevToscf3z/+Z5jZx4kR3/9deey37trvvvtvd9uGHH+bb7zFjxrj7fPbZZzm+3rJly9Bxxx0X2p158+a5x5YuXTr0999/Z9/+448/uttvvPHG7NsuvPDCUJ06dXK8N1OnTnX3s++1oK655pp8/318+eWX7mvNmjULbd26Nfv2p556yt0+ffr07Nvse7PbXnjhhRzP8frrr7uf4zfffJPjdruf3f+7775z15944gl3feXKlfn2taD9sXFYo0aN0CGHHBLavHlz9v0+/fRTdz/7Ofps7IR//9OmTXPXe/funeO1bRznN9YAAKEQ6eUAEGcGDRrkZmzDW1GxVFWbUfNnbm1GzWZta9eu7Yqq+SmzK1eudKnVNiO633775XgOf3Y8MzPTpUp37dpVBxxwQPbX7blsls1mB9evX5/jsb169coxg2rfm6U8X3jhhW7W1W92H5sl//LLL3f7/VhqdZcuXdz3YLOOH330kXuN8FTz//znPy4leE8sxd1mO60vPjv+5ZdfcqS6f/DBB+49sJTj3Pz3xvpis6Q2I+2nv+e+z97I/f75P9PwQnn2PVgqtM2GTp06NUe/W7Vq5Waz8+t3x44d3fIFm3H2WWq4ZT3ktW46LzYewmeqLb3efpajRo3Kvs1S2q1SfvjP117Tvpdzzz1XRclmjMOzH2y238ydOzfH/Wx22u6bO8XbZrebNm2aY3zazL3x++/PPI8YMcL93PelP7ZEYcWKFS6rwdLPfTZbbf2wGgb58d/j6667LsftN9xww277BADxjqAbAOKMBSkW/IS3olSxYkWX0mppyNZefvllt/702Wef1X333ZcjAAivmp6bBeaWCm6Pzc0CFQs+Fi1alOP23FXZZ8+e7S4tiLG06fBmAb0FH7tjqbcW1P73v/91qcFDhgxxJxLCgwwLGnOnuefFUnKtf35qsDVLNbf07PAg1FLsLTCtUqVKvs9l97F+NW/eXEUp9/tnNm/e7IJ7O7FgfbelCPb+2ckMS18O79Pufp7G+mypznbSwH62xr53C/5snXhBHHTQQbvc1rhx4xxrzE8++WR3csZ/X22sWAr7WWed5dYhF6XcJ41sbb2x6vTh7ERB7qUJNj7thEvusWnfj/HHZ7du3VydBEvttrR0S1F/99138wzA99QfO5Fk8vp3ZUG3//W82NfsZ2jjNlxezwUA2Ik13QCAiLE13jabbbOfNlttQZAFsJESPitr/KDE1nXbNl25JSfv/s+grWW2tch+0bR///vfbv2rzeRb8GbBj+3hbbO8u2Mz8rZW3dYg5xU0WkVzW8e+L7PUhWFZBAV5/4xlKFhxMjvR0KFDB3dSxfpp3/ueZl3zYrPQjzzyiAu8babfvndbr2zPW1Rstt6yIawK/3PPPefWKtvMd0Fn0wv7WnnJXXgvr/fW3j8rlmdr3PPiZ1DYYy0zxGa+bSZ69OjRbm28nUyyk0fhfShofwAAxYegGwAQcTbbZrNjfpVpP118d9uR2YyfzQLPmjVrl69Z1XObcdtTWrc/I2fVuPdmRt+Cy9yz6VagygJvC5L9Yl02g7o7H374oQu4rQBZ7qJ19v1Z0TkLDK24m/V5zJgxWr16db6z3XYfC9iskJmdFNjd+24z0uFs27alS5eqoGwvcStE99hjj2XfZt9L7ucN//nujs2G23tm750VZrN90J955pkC98fPXghnRcdyF8Sz4N76bCc7LLXfxpMV04sm9p7Z8gKrML6nEy423u1+1ixIt0rsVunfAvHCjG2/2KGNOz+N3We3+V/P77E27iyrIXx2O69/owCAnUgvBwAUGQsgcldG99NSLUD0P6hbAGRbJ1m6tgVdec3I2YydVeG2dazhqcMW8NrsqAWoubcgy82CLLuPBSi2HjmvFPbdsWDGgjybKc9dIdpSu61fVn0697rqvFLL7UTDVVdd5aprhzcL4m0LKD8V2tYc23tg1clz898bW9dsr2mVrHPPNofPaFpQZzOk4V588cV8Z7rzYj+H3LOkFiTnfg7rt/38bd17fv32WcaAzdA++eSTbgsyS90vKJshD9/aatKkSa6OQO7nsErf1l566SWXiWAz83vKbChutl2efS82I59XWr9fQd5OwOTmn2wp7H7xVv3eTkK98MILOR5rJyas8vzuKpH77/HTTz+d43b7OQIA8hddf30AAIGzola2zZOxdce2btdPCbdCWWeccUa+j7XCZVYAzALRI444wgWTtn7bgmv7gB++Z7R9cLfA2baWsu2SbD2xBbGWPjtt2jR3H3tdf39iK/xkQZNtGWbPZevG98QCbptdtiDPXscCLwv4LdC317F1srbWPD/9+vVzQZ7N9Fo/bIsk2xrL1gfPmzfPbblkfbS06/y26fILeuUuPuWz1HU7OWBFtew9OeGEE1x/7dgCftuf2wJr2zLMvtanTx9XyMxmOW2NvBXKsm3N7Hlsey9bD+7vd21rgC3Qt4DY1jlbUGyz6IXZIs5Sv+2kg6V/24kGS6f//PPPXbAczlLubVbc1mbbkgLbA9qCRRtLFuDZ2PFZ6rdtAWcB+tVXX12ofeHte7fxYI+zceAH7vZ8udlst53UMJFILd9X9nO2tdn2M7IxYuPRTmZYJofdbj8rC5Lt5IqdPLGA2Gabba23pc1bpoC9F4Vh77VtnWcF12yPc0vx97cMs2wB24M7Pxbo2/3tte33gv17GD9+fJ77gAMAwgRdPh0AUDz8baEmT55coPvl1cK3mcrL3Llz3ZZDRxxxhNuWKDk5OVS9enW39ZhthZXbb7/95ra9sm29SpUq5bYbu+uuu3Lcx7Z66ty5c6hcuXKhMmXKhE444QS3jVdhvjfbTsmew7YJs9dp1KiR287sp59+Cu3JqlWrQn369AnVr1/ffT+1atUKde/ePTRz5szQ+vXrQ02bNg1VqFAhxxZR4R577DHXt/Hjx+f7GkOHDnX3GTFihLtu23Y98sgj7rltqzJ7D0899dTQlClTcjxuyJAhoUMPPTSUlpbmtjWzranGjRuX/XXbMuvWW28NVatWzb139h789ddf+W4Zltf7t2bNmlDPnj3dc9jPwJ7Dvvfcz2H++ecf917VrVvX9btevXruPvYe5talSxf3mrl/lnvaMszeF3tP7edh3/cxxxwT+uWXX/J8zNKlS0NJSUmhxo0bh/ZGQbYMe++99/LsZ/jWZPZzOfjgg/N8HtvC66GHHnJf93+Obdq0CQ0YMCC0bt06dx8bO2eddZbbBs3eV7u0bdH+/PPPveqPGTZsWPbYqVKlSujiiy/OsRVbXluGGdtmzLazs+3vypYtGzrjjDNCixYtYsswANiNBPtfeBAOAAAQaVZcb/r06RGdJbWlDlbF3Kqv33XXXRF7HQAAdoc13QAAoFhZITdL77f06kiy7d0sXTvSrwMAwO6wphsAABQLWwdvVdqtuJmtLf7Pf/4Tkdf54osvXOE+qzBvRedyVzYHAKA4EXQDAIBi8dVXX7kCXvvtt59effXVPPdOLwpWeMz2WLfCZIXZjgwAgEhgTTcAAAAAABHCmm4AAAAAACKEoBsAAAAAgAiJuzXdWVlZWrJkicqXL6+EhISguwMAAAAAKIFspfaGDRtUp04dJSbmP58dd0G3Bdz169cPuhsAAAAAgBiwaNEi1atXL9+vx13QbTPc/htToUIFRauMjAyNHTtWnTp1ctuqANGGMYq9kp4u1anjHS9ZIpUtG5GXYXwi2jFGEe0Yo4h2GVEwRtevX+8mdP0YMz9xF3T7KeUWcEd70F2mTBnXR37RIRoxRrFXkpJ2Htvv4AgG3YxPRDPGKKIdYxTRLiOKxuieli1TSA0AAAAAgAgh6AYAAAAAIEIIugEAAAAAiBCCbgAAAAAAIiTuCqkBAAJkhU769995DAAAEOMCn+keNGiQGjZsqFKlSql9+/aaNGnSbivU3XvvvWrUqJG7f6tWrTR69Ohi7S8AYB+kpkr33OM1OwYAAIhxgQbdw4YNU9++fdW/f39NnTrVBdGdO3fWihUr8rz/nXfeqf/973965plnNGPGDF111VU6++yz9fPPPxd73wEAAAAAiOqg+/HHH1evXr3Us2dPNW/eXC+88ILba23IkCF53v/111/X7bffri5duuiAAw7Q1Vdf7Y4fe+yxYu87AGAvZGVJv//uNTsGAACIcYGt6d62bZumTJmifv36Zd+WmJiojh07auLEiXk+ZuvWrS6tPFzp0qX17bff5vs69hhrvvXr12enqluLVn7formPiG+MUeyV9HSlHHKIO8xYs0YqWzYiL8P4RLRjjCLaMUYR7TKiYIwW9LUDC7pXrVqlzMxM1axZM8ftdn3mzJl5PsZSz212/Nhjj3XrusePH68PP/zQPU9+Bg4cqAEDBuxy+9ixY92serQbN25c0F0AdosxisJI2rJFp+84HjNmjDJznUgtaoxPRDvGKKIdYxTRblyAY3TTpk2xV738qaeecunoTZs2VUJCggu8LTU9v3R0YzPptm48fKa7fv366tSpkypUqKBoZWdNbACdfPLJSqHCL6IQYxR7JT09x4nUSM50Mz4RzRijiHaMUUS7jCgYo34WddQG3dWqVVNSUpKWL1+e43a7XqtWrTwfU716dQ0fPlxbtmzRP//8ozp16ui2225z67vzk5aW5lpu9oMpCb9ASko/Eb8YoyiUsLHixk2Exw7jE9GOMYpoxxhFtEsJcIwW9HUDK6SWmpqqNm3auBRxX1ZWlrveoUOH3T7W1nXXrVtX27dv1wcffKCzzjqrGHoMAAAAAEDhBJpebmnfPXr0UNu2bdWuXTs9+eSTSk9Pdynjpnv37i64tnXZ5scff9TixYvVunVrd3nPPfe4QP2WW24J8tsAAAAAACD6gu5u3bpp5cqVuvvuu7Vs2TIXTI8ePTq7uNrChQtdRXOfpZXbXt1z585VuXLl3HZhto1YpUqVAvwuAAAoOlmhLG3P2q6MzAx36Te73W+Zocwc1wvSMrMy3ePs0p7PP7ZL//kTlKDEhERXN8Uu3fGO2/yWlJikpISkHMfhl+H3dffZcV+/JScmKyUpRSmJKdmXdpu9JgAAsSjwQmp9+vRxLS8TJkzIcf24447TjBkziqlnAIAiZ2ufbr5553EJZMHpxm0btW7LOq3ful5rt6zVuq3rvMst3mX4bRu2bdCW7Vu0dftWbc3cmn3sLndcDw+yQwopHlngnZqU6i5zB+65mwvcdwTrFrjndd2eKzywt8vUxNQcgb41O1GQfZyw89geXyq5lEqnlHaXfiudvPO63SctOc27TPIurdlzAgAQNUE3ACCOpKZKjzwSaBcsyF26YamWbFii1ZtXu8DZAuMNWzfkvNy2wX3Nmh9gWyBtXw8iMM5r1tifWbbZ6LxmmcNnq3PPSvsBZ/gMtfFnxkOh0M5jhdysePhMuz9LnnsW3e4bPruee4ben1XPzZ/RjwX2nlrwXSaljMqmllW51HIqm1I2x3GZ5DJasXiFvh7/tUqnlnZBuwXw/qUF9XbsLndcD7/Nv91OAtjz2u1kCwBAdCLoBgCUeDZz/M/mf/TPpn+0atMqLduwTBNWTdAPE37Q8k3LXYBtbfGGxS7QLgoWtFZMq6iKpSqqUqlKrtn13Mfl08rvEjCFB1X+TKk/wxo+C+vP3PoBcaywoNtm9jOyMrIvt2VuyzHbnztgzx24+81/jD2Hf5v/XOHPb5fu9h3HuZ/HT7vfHtr5HHaCxtrmjM07j7fvPLb72Niz5wxnz233s2bjcndGrhpZJO+pjREX5O8I7v3LXW7L9fXc97PLvJqNV4J6ANg7BN0AgOKTlWUFO7zj/faTzYvajLKla+8y07zVm2kOvy38+pota7KDbLstT3/nfbMFu3Ur1FXV0lVVIa2CC4zLp+5oaTkvLai2ANruZ8fuMq0iQcg+BohuVle7bulZEllWgAXgfrNlAxaMW9BtYzt9W7rSM9Kzj+1y/Zb1mj5zuuo3rK+MUEb2cgN/GUL4pR/khy9J8Jcp+AG/v+zBmtKL/nu0k0E29nP/O/AvbQY/v4Ddn/EPP0llM/T8+wEQLwi6AQCFZjOF4YGx3/zA2NKxLRXbpWVv23l967rV+va6ae45qt1dSv8kbinSQM6C6KplqqpqqaravmG7WjdqrfoV66tO+TouyLZLa5VLVeYDP4qMjSV3EiG54CcRMjIyNGrdKHU5qcs+7S9rs/IWyG/K2OQCez/Ad9d3HOd3Gf4YOw5v/tftJILrb1aGl02yh5n7vc0UseMqpau4f8PVylTz/h3ncWz3j7XMDwCxj6AbAOKMpdFmzxrnETRb8a81m9d4l1vWuBZ+mzWbwdsbZbzP787m7Vuk1J2zaLlnmP1LNxOd+3paefch3T6E+y38w7gLaEaNUpdT9i2gAaKdC14tG6NUxYg8vx/U2++G8NoGuWsdZAfu2ze5dPzcQbwrPrijuKBfoX9vgnj/5JofjLt//6V3HmefeAu7rFy6snufACAo/AYCgBKazmofdm19sr+W2S7tugXHfrBsx+62Hcf2gddmsIqKpVj7KafhwbGbwdoxi+Vf2terZKZJD5znHvv71b+pXJWa7jGFmSEEEExQX69CvSL53WW/g/xK/35GjB3b7ypbLuIH4+54085jC9wtYF+5aaVrhWGz6X6wXrNcTdUoU8Nd1ixbUzXKesfusmxNF6Qzmw6gKBF0A0AUBdHL05drRfoKLd+44zI952V4cL2vlZ5tXbMFyLmDZr8QmKVgu8vSlXMc+0G03deKfBVK+s6Av2HlhlKZsvv0PQAoean4tv7bmi352JeCiX6A7h9nB+w7fk/apQX1xs/SmbNmToGqz1twbkG4teplq7sg3V3uuK1WuVquWZBu28oBwO4QdANAhIJom5Xxg2W/rUz3ZmhcS8956a+dLAwrRuSnUNp6SL9ZkOwHy3bp3+bWTu4ImJldBlCS2O8svy5DQdnJSZcRFDZjbic1c5/Q9E90WlaQVZ+3260VhJ2wtOA7PBC3oN2C9OplqrtLd71Mdff7mlR3IP7wrx4AChBA23pG++Dmp2/7x36zD3PhH+CsWXXhwrJgODzNMfzSWnhRIQukmWEBgPxZgOv//iwIO/lpgbl/ktRdbvIuw9uyjctcs2ryfk2M2atnF+g1/BOglmlkM/45alnsOParwocv0fELztmxbe9GMUig5CDoBhCXbPbDZjaWblzqPjjl/kCVPTO948PW3qZy2wcql55YxktL9Gc9sq+HzYTYJUE0AAQnNSm1wLPp/rIgPwC3k67ucuNy97fDgvfsy/SV7gSt7UHv19zYF5YC7wfifhCfV8tvmZDV4wBQfAi6AcQU+xBkH3AWrV+kv9f/rUXrFmnJhiUuuHZtg3dpH4Dsw09h10DbLHN4GneVUlWy07dzF+SxZvvTIkxystS7985jACihbKbZLzLXpFqTAu0cYYG3BeL+7hH+1ot5XfrV3sO3YLRLOwlsKfB+ptXesL9n4TU67DJ8Jt3tvZ5STvNXz1fGrAxVKVslx97s1ixwZ7YdKBg+8QAoUexDiwXUc9fMzW7hAbZdWrpfQWcKLECuXa52dqDsz0CHN7vN0rqZhS4CaWnSoEFB9wIAil1SYpKX1VS2+j6dWLYt2Pwg3N/SMa8WvmtF+P2sArz9nfRn6Pfk6YVP53m7bfUYXogzv2Z/Qy1zwArn2aX9XaU6POINQTeAqAuqLUXPAmgLpuevne8Ca6s4a5d2vSCp3jbrXL9ifbfFTd3ydV1gXbt87RyXFkjbhyAAAEoCm1kum1rWtcIUlPNZwG1FPv2tJXPPoofPrNt95vw9R2kV0rR+m7du3W8mIytjr/Zat3X2VnDO/jbb92DH/r7qfhZZeHFQ9llHLGAEAyhWdoZ+3pp5mrd2ngugF65bmGOmevGGxXsMqu3s+v6V99cBlQ/QAZUO0H4V98sOsOtXqO/+iFOZO0qFQtKqVd5xtWr2CTLoHgFA3LAZZn8GuoEa7Pa+GRkZGjVqlLp06aKUlJRdAnc/OLd0+PCA3FLj/WO7j51It2Ve1mxm3f7G2998awVl69Gzt2+zLLRcW7iF10ahQjyiESMSQJGzP8C/Lv9Vf6z6IzvAdm3NvAJtwWJp3xY4WyBtAXWjyo28ALvyAe7YvsYMdQm1aZNUY0cV4Y0bpbLs0w0AJTVwr6/6e1XE1AJwO8nuB+LhO4H4W7zZpb/Pul98btY/s/b4GglKcLPj4YG4tfCZc38bzfDrVIRHJBF0A9intWV2pvr3f37XtGXTXPtl+S/6a/Vfu32c/aHev9L+brZ6vwreLLXNUPsz1pZqxllqAABii/1tt7Xd1g7X4QUK0i3N3d9JxN/GLa+t3Oy6XyHeD+ILEqSHF5cLL4Zqy9TCC6T6e7HbEjUL2AnQURh8qgVQYFYV/Me/f9TEvydq4qKJmrxosjb8siHP+9parUNqHOJmphtWaugCbD/Q5o8VAAAoSJDuF59rXr15gYJ0VyE+faULwsMvbabcD8b9Ywvo7dLWp1txOVvuZq0gAXruOjHWLCgP38HEAnWKsMIQdAPI9w/Xbyt+c8G1Bdk//P2DZq+enWcqeLPqzdS6Vmu1rtnaXbaq1coVKQMAACjOIN0PeAuTtZeeke4mFmzG3NLfbSmcf7xi087bbNtRC9gtQLe6NNb2pFxquRwz5rXKerPlbtZ8R6Bu1+3rtk88YhNBNwBXMfzPf/7UlKVTNGXJFHc5delU90cotyZVm6hD/Q46vNbh2jJ3i3p17aXypcsH0m8AAIB9YZl3Fhhbs8y8PdmyfYtbh24BuK1JX7pxqTu2y/Bg3Y63ZW5zRees2S4se2ITFpYpaIVh82vWT5Q8BN1AnLEzuvaL39LEf1rykwuwf172s/uDkNfa6/Z126tDvQ46ot4Ral+vvSs2kl3VdNkolUouFcB3AQAAUPzsc48F53sK0O3zllVwzx2I+wH7svRl2cd2u2UY2my7NauPk5+KaRWza+H4u7b41/1LUtqjD0E3EAdsvdIX877Q2DljNW7uuDzToUonl9ahtQ9Vm9pt1LZOW3dpaeNWpRQAAACFm0GvWKqia42rNt7tfW0bNqvYbrPli9cvzt5SzbUNO4/dNmy2r/qKdW4JYH4sVd0/MdCw4o7LHa1BpQYqk1ImAt8xdoegG4hBls5ka7DHzRmnsXPHuhlt+4Uevs91mzpt1LZ2Wy/ArtNGTas1pWI4Ii85WerRY+cxAABxziY4/IJxLWu2zPd+FnT7AfiidV7RN//S3bZ+kctc9Cu6T1o8Kc/nsbXk9jotarTwLmu2ULNqzZSWnBbB7zK+8YkHiCGWuvTgtw/q5Z9f1oZtOauKW9XPkw84WZ0addKxDY5lTRCCkZYmDR0adC8AAChxbNmffZ7Lr5K7pbSv3bJWC9YtyC70Ft7mrZ3nAne3Dn3jUo2ZMyZHYdwm1ZpkB+PWbBcamxkn63HfEXQDMcBSkh79/lE9PelpbcrY5G6rXqa6Oh7Q0QXZdmnrfgAAABC7Ke2VS1d2zXaTyYttk2b7l09fPl2/Lv9Vv6741R1bVfYZK2e49o7eyb5/2ZSyLsi3ANzawdUPdpd1ytdh+9dCIOgGSrB1W9bpiR+e0OMTH8+e2W5Xt53uPf5endzoZM5MIvqEQtIm78SQypSxTwhB9wgAgLhhAbkVx7UWPkO+eMPi7EB8+orp+n3l7/pj5R9uJ5vJSya7lrvSun3mbFennbs8vO7hbBe7GwTdQAlk63We+fEZPfL9I+7MpGlVs5XuO+E+nd74dM48InpZwF1ux9KGjRulsmWD7hEAAHHNPjf6W5KdetCp2bdbRfU5q+e4om2urfxNv6/43W0za1XWR80e5ZqvUeVGXiBet53b/cYukxKTAvquogtBN1CCZGRm6Pmfntd/v/6vVm5a6W6zwhcDjh+gc5ufy8w2AAAAioQV2LV13tbsc2b4XuU2I26F2vxmKeu2Ja21t397293PZr7PbHymujbt6pY6xvNWZgTdQAnx9YKvdc2oa7K3iLCzifccf48uPORCziICAACg2PYq92e0w9eK2245LghfMknfLPjGzYYPmTbENVsbfsqBp7gA/LSDTnNp7vGEoBuIcks3LNUtn9+iN359w12vWrqq7j/xfl126GVKSUoJunsAAACIcxZEWz0ha3525jcLv9HwmcNds+3MPvjjA9dsBv34hserZ+ueuuCQC+IiUzP2v0OghLJ1NE/98JSaDmrqAu4EJeiqNlfpz2v/1H/a/oeAGwAAAFHJPqeeuP+JevrUp7XghgX6qddPuvOYO13lc/uM+/ncz3Xxhxer9Qut9cmsT1wxt1jGTDcQhSwlx1LJrXqkObzO4XrutOfUtk7boLsGAAAAFKpQW5s6bVy778T79Nfqv/TW9Lfc7jv2WffMd85Uh3od9MBJD7gZ8FjETDcQRRavX6wew3vo2KHHul9CVUpX0Yunv6gfrviBgBsAAAAl3oFVDtTdx92tedfP021H3abSyaU18e+JOuHVE9T5jc6asmSKYg1BNxAF1m5Zq36f99OBzxyo1355zaWSX3nYlfqzz5/q1aZXXKx1QZxISpLOO89rdgwAAOJ2HfjAjgM157o56t22t1vrPXbOWLUd3FbnvXueZq6aqVjBJ3kgQLblgqXWNHq6kR787kF3/aj6R7mZ7f+d8T9VLVM16C4CRatUKem997xmxwAAIK7VLl9bg04bpFl9ZumSlpe4yScruHbwcwdryM9DFAsIuoEAZGZluhntJs820U1jb9LqzavdftsjLhihb3p+k2MLBgAAACDWHVD5AL1+9uv65apfdFaTs9zMtxVjiwUUUgOKkVVmHP3XaN02/jb9uvxXd1vd8nV17wn3qnur7u6XCwAAABCvWtRsoeEXDNfCdQu1X8X9FAv4hA8UkzWb16j78O769M9P3fWKaRXV7+h+urb9tSqTUibo7gHFIz1dKlfOO964USpbNugeAQCAKLRfjATchqAbKAa/rfhNXd/pqjlr5ig1KVXXtrtWtx9zu6tODgAAACB2EXQDEfb+jPd16fBLlZ6RroaVGuqjbh+pda3WQXcLAAAAQDGgkBoQwWJpt4+/Xee/d74LuE/a/yRN7jWZgBsAAACII8x0AxFav33Rhxe5omnmpg436cGOD1IoDQAAAIgzRABABNdvl04urZfOfEkXtbgo6G4BAAAACABBN1CEPpjxgXoM7+HSyRtUbOC2OyCdHAAAAIhfBN1AERk6bah6jujpjk/c/0QNO2+YqpWpFnS3gOiSlCR16bLzGAAAIMYFXkht0KBBatiwoUqVKqX27dtr0qRJu73/k08+qSZNmqh06dKqX7++brzxRm3ZsqXY+gvkZeycser1SS933Lttb425ZAwBN5CXUqWkkSO9ZscAAAAxLtCge9iwYerbt6/69++vqVOnqlWrVurcubNWrFiR5/3feust3Xbbbe7+f/zxh15++WX3HLfffnux9x3wTVs2Tee+e662Z213a7ef6fIMBdMAAAAABB90P/744+rVq5d69uyp5s2b64UXXlCZMmU0ZMiQPO///fff66ijjtJFF13kZsc7deqkCy+8cI+z40CkLFy3UF3e7KKN2zbqhIYnaMiZQ5SYEHgCCQAAAIAoEVh0sG3bNk2ZMkUdO3bc2ZnERHd94sSJeT7myCOPdI/xg+y5c+dq1KhR6uKvDwSKeVuwU988VUs3LtXB1Q/Wh90+VFpyWtDdAqJberpUtqzX7BgAACDGBZYDu2rVKmVmZqpmzZo5brfrM2fOzPMxNsNtjzv66KMVCoW0fft2XXXVVbtNL9+6datrvvXr17vLjIwM16KV37do7mM827p9q9sWbMbKGapTro4+7vaxyiaVjaufF2MUeyUjQymbNu04zHDXI/MyjE9EN8Yooh1jFNEuIwrGaEFf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y0u//CKdd57UqpVk5bAyM4PuJSKtUAvqqlWrpq+//lrr1q1TuXLllJSUlOPr7733nrsd8ZVeHp5aboE3AAAAgJ1sb+/775duukl68kmv8Npvv0nduknNmkl33eWlpucKrxCPM92+ihUr7hJwmypVquSY+UbsWLdlnTZs27BLenl4armdsQMAAACQtypVbBtmrwCxbS1WqZL0xx/SRRdJBx/sFWJjzXfs2augG/G7nrtyqcoqm1o2+/aff/a2SbDiaTbTDQAAAGD3LNju399bonnffVLlyt72YhdcIB17rDRlStA9RFEi6MY+ref29+a2tdy2XRgAAACAgqlYUbrzTi/4tplvW6r57bfetmOXXSYtWxZ0D1EUCLqxT+u5P/7YuyS1HAAAANg7FSp4M982233xxV6K+SuvSAcdJD34oLRlS9A9xL4g6MZebxe2erX0++/ecceOQfUMAAAAiA316klvvCFNnOjt671xo9Svn9S8ufThh6z3LqkIulGooDt8pvv7773Lpk2tsn1QPQNQoqSlefujWLNjAACwiyOO8ALv116T6tSR5s2Tzj1XOukkafr0oHuHEhl0Dxo0SA0bNlSpUqXUvn17TZo0Kd/7Dh06VAkJCTmaPQ7FlF4etqbb1puYo48OqlcASpzkZOn8871mxwAAIE+JidK//+2lnNu6bwt5vvxSOvRQ6brrpDVrgu4hSkzQPWzYMPXt21f9+/fX1KlT1apVK3Xu3FkrVqzI9zEVKlTQ0qVLs9sCq7mP4imkVmHXoPuoo4LqFQAAABDbypXzKpzPnOnNdmdmSs88IzVuLA0e7F1HdAs86H788cfVq1cv9ezZU82bN9cLL7ygMmXKaMiQIfk+xma3a9Wqld1q1qxZrH2ON6FQaJc13VbMYfJk7+vMdAMosO3bpffe85odAwCAAmnQwNs56PPPvTXeq1ZJV14ptW/vpaIjegUadG/btk1TpkxRx7AqXImJie76xN2MnI0bN6pBgwaqX7++zjrrLP3uV/NCRKzZskabMjblCLpt78Bt26QaNaRGjQLuIICSY+tW6V//8podAwCAQrF13dOmSU884VU9t8/lRx4p9eghLV0adO+Ql0AX1K1atUqZmZm7zFTb9ZmWP5GHJk2auFnwli1bat26dXr00Ud15JFHusC7npX7y2Xr1q2u+davX+8uMzIyXItWft+i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D9aoUaNy9HHKlClq27ate90jjzzSBazhnn/+eTVq1Eipqalq0qSJXn/99d2+75MmTdKhhx7qZpvteX/++WcV1tixYzVjxgy98cYb7md36qmn6r777tOgQYNcIJ6fG2+8UUcccYQaNGjgvhf7mf/www/KyMhwXy9Xrlz2e29t+fLl7nUuv/zyQvexMAi6S7jnJj+nT/78RKlJqXrn3HdUNjWyqREAsM+qVfMaAKDkSk/Pv23ZUvD75t4+Mr/77aONGze6AO7AAw90qebGArHOnTurfPny+uabb/Tdd9+5oMxmyC2ws1Tmrl276rjjjnNp6RYEX3nllS7A7tatm2666SYXxPozpnbbvrjjjjtcAG1rnxs3bqwLL7wwRzr1pk2b9NBDD+mll17S77//7oL3Pn36uH698847ro82Y2v9nz17tnvMNddc4wLzr7/+WtOnT3ePt+8x9+s+9thj+umnn1w2wGWXXZb9tY8++kjXX3+9+15/++03/ec//1HPnj315Zdf5vs+WzaBnRiwYN7SuW+++eY80+7ta/mx76lFixaqWbNm9m32s1q/fr373gti9erVevPNN13wnZKSkud97L209/qYYyK74xOVtkqwX5f/qpvG3uSOHzn5EbWq1SroLgHA7tmaqbAZBgBACZUrcMuhSxdp5Mid12vUsIgx7/sed5xNJ++83rChtGrVrvcLhQrdxU8//TQ7wExPT3drfO22xERv3nHYsGEuRdsCLwukzSuvvOJmlG222GZp161b54JIm+k1zZo1y35+e24LUm3GtChYcGop1cZm0S2g/+uvv9S0adPskwTPPfecmwU3NtNt/bXLOnXqZD/H6NGj3e0PPPCA+9q5557rAlhzwAEH7PK6999/vzuxYGxm2PqwZcsWN1P96KOPunXnvXv3dl/v27evmzm2221WPre33nrLvacvv/yye7x9D3///beuvvrqHPez97Pabk7AL1u2LEfAbfzr9rXdufXWW/Xss8+6kxQ2620/87zY92hBuX3PkcZMdwlLJd+wdYMWrVvkAu4LP7hQWzO36rSDTtO17a4NunsAAABA1LCg0GaNrVnKs82UWpqypVwbSw23oNZmui2AtmYp4BaM2VpgO7aA0x5nKdq2/tpmtCOlZcuW2cd2gsCsWLEi+zZL7w6/j81c29pnm6n1+2/tq6++cv031113nf773/+6tPj+/fvnWUhud6/7xx9/uMeGs+t2e17sdns+C7h9HTp02OV+tsbeZukjwQquWUq7pagnJSWpe/fuLo7KzWbxN2zYoB49eijSmOmOQlu2b3H7bc9ZPEf3DrlX67au09ota13LDGXmuG+tcrX0ylmvZJ+dAwAAACJu48b8v5aUlPN6WOC4ix2zztnC1lPvK1vDbOnkPpvRtjXUgwcPdoGopUK3adPGzXbmtRbb2IyxBa42e2wz43feeafGjRvnZlCLWngKtP/ZPrxYWunSpXN85rf+W1Bpadx2Gc6f4b/iiivcSYORI0e6IHTgwIEulfzaa68t8OsGoVatWu5ESThbf+1/bXdsBt2anYywzIT69eu72fncwb+NB8tiyD2jHgkE3VHI1mcPnzXcVSNXHr/PbP/tyqUqq37F+nrm1GdUvaz3SwEAop6t3Tv1VO/4s8/sE0TQPQIA7I3CbLEUqfsWkgWUllq+ecc68sMOO8wF0rY2ukKFCvk+zoqCWevXr58L3CyF2oJum3m2meagWJ/s9W1Wendrki3ovOqqq1yz78FOOoQH3btjQautdQ+fDbbrtmY7v/tboTU/Pd388MMPhf7e7H22tHf73uznY+xkh/2c8nvtvPgnD2xde7h58+a5delWmK44EHRHocSERA06dZBmz5it49sfr2rlqqlSqUrZrXRyzrNcAFBi2B+/r77aeQwAQIRYoOWv/12zZo1b52uzw5Yqbi6++GI98sgjrmL5vffeq3r16rnU8w8//FC33HKLW0P94osvur2fbc20VfW2AmWWruwXA7PgzdLX7bGWpm5VxYuLzeTa92D9sdlrC8KtMrulbluKt63NvuGGG1xKvd3X3gMLNMPXpRckVduqu9tzd+zYUZ988ol7fz7//PM873/RRRe5wmy9evVyAb5Vgn/00Ud3ud9JJ52ks88+O98U806dOrng2vbZfvjhh93P0bIMrDCc/x7bTLh97/b92omFH3/80W3RdvTRR7tq7ZZif9ddd7n147lnuYcMGeJS6e29KQ4E3VHK9tsetXSUTj3w1Hyr7QEAAADIm6WE+2uULSC2gmTvvfeejj/+eHebbZFlVb2t8NY555zj1vfa1lsWENqMqs2Iz5w50+0R/c8//7jnsqDPKngbK1BmAaitHV+7dq1LRbc14MXJXtNS5a26+OLFi11atc3C+/uR20y49dmKmdn3ZJXNn3jiiQI/v1Vvt7XsFjhbFfP999/fvab/HuZmae0WmNusugXqFjg/9NBD7r0KZwHxqrwK5u1g6fJWAM0KsFnAbEsFbLbdTo74rFCanQTxtwOzn6f9PGztul84z75fC9bDT4bY7LdtwWY/q9xp+ZGSEMprVXkMszLztpbDKhHuLo0kaDZ4bA+9Ll26EHQjKjFGsVds2xe/4q2tB4xQGiHjE9GOMYqSMkZPPPFEF7BZsBVeHAsIWlZWlovtLKbzK9JHgqXKW0ZDXv8GChpbUr0cAAAAAIAIIegGAAAAACBCCLoBAAAAAIgQCqkBAIpXmTJB9wAAAKDYEHQDAIqPFU6zYmoAAABxIirSywcNGuT2ubNqcO3bt3d7ruXHNnO3zd9t7zVrtl/c7u4PAAAAYO8kJCS4yzjb8AjIVhRjP/Cge9iwYerbt6/bT23q1Klq1aqVOnfurBUrVuR5/wkTJujCCy90G7tPnDjRbYRum6fbvnQAAAAAik5ycnL2nshAPNq0Y+zvy/aOgaeXP/744+rVq5d69uzprr/wwgsaOXKkhgwZottuu22X+7/55ps5rr/00kv64IMPNH78eHXv3r3Y+g0A2Atbtkjnnusdf/CBxJ6vABDVkpKSVKlSpewJsTJlymTPfgNB79O9bds2t492JPbpthluC7ht7Nu/Afu3UCKDbnuTpkyZon79+mXfZm+YpYzbLHZB2BuRkZGhKlWq5Pn1rVu3uha+gbmxx1iLVn7formPiG+MUeyVLVuUMmqUO8ywAHwf/oDtDuMT0Y4xipI0RqtWrarMzEwtX7486G4BOYJiC7htiXIkTwRVqFDB/RvI6/d1QX+HBxp0r1q1yv0DrlmzZo7b7frMmTML9By33nqr6tSp4wL1vAwcOFADBgzY5faxY8e6M3XRbty4cUF3AdgtxigKI2nLFp2+43jMmDHKjPBMN+MT0Y4xipI0Ri2w2ZfZPqCksVh1d2u6C7rsIvD08n3x4IMP6p133nHrvO0MR15sFt3WjIfPdPvrwO2sRbSysyb2S+7kk0/ep/UDQKQwRrFXwiqXW/0OV808AhifiHaMUUQ7xiiiXUYUjFE/izqqg+5q1aq5s2W5U1Xseq1atXb72EcffdQF3Z9//rlatmyZ7/3S0tJcy81+MCXhF0hJ6SfiF2MUhRI2Vty4ifDYYXwi2jFGEe0Yo4h2KQGO0YK+bqDVy1NTU9WmTRtXBC18Qbxd79ChQ76Pe/jhh3Xfffdp9OjRatu2bTH1FgAAAACAwgk8vdxSv3v06OGC53bt2unJJ59Uenp6djVzq0het25dtzbbPPTQQ7r77rv11ltvub29ly1b5m4vV66cawAAAAAARIvAg+5u3bpp5cqVLpC2ALp169ZuBtsvrrZw4cIcJeCff/55V/X8vPPOy/E8ts/3Pffcs8fX8xfCFzT/Psg1CrYw3/pJSg+iEWMU+7qmW/Z7ODMzIi/D+ES0Y4wi2jFGEe0yomCM+jHl7oqtmYTQnu4RY/7++29XSA0AAAAAgH21aNEi1atXL9+vx13QbWvGlyxZovLly0d0P7d95VdZtx9gNFdZR/xijCKaMT4R7RijiHaMUUS79VEwRi2U3rBhg9vCOjw7O+rSy4ubvRm7OwsRbWwA8YsO0YwximjG+ES0Y4wi2jFGEe0qBDxGK1asGN3VywEAAAAAiGUE3QAAAAAARAhBd5RKS0tzFdntEohGjFFEM8Ynoh1jFNGOMYpol1aCxmjcFVIDAAAAAKC4MNMNAAAAAECEEHQDAAAAABAhBN0AAAAAAEQIQXeABg0apIYNG6pUqVJq3769Jk2atNv7v/fee2ratKm7f4sWLTRq1Khi6yviU2HG6ODBg3XMMceocuXKrnXs2HGPYxoozt+hvnfeeUcJCQnq2rVrxPuI+FbYMbp27Vpdc801ql27tisM1LhxY/7WI6rG6JNPPqkmTZqodOnSql+/vm688UZt2bKl2PqL+PH111/rjDPOUJ06ddzf7OHDh+/xMRMmTNBhhx3mfn8eeOCBGjp0qKIFQXdAhg0bpr59+7qKe1OnTlWrVq3UuXNnrVixIs/7f//997rwwgt1+eWX6+eff3YfFq399ttvxd53xIfCjlH7RWdj9Msvv9TEiRPdH+NOnTpp8eLFxd53xL7Cjk/f/PnzdfPNN7sTREA0jdFt27bp5JNPdmP0/fff16xZs9zJzLp16xZ73xEfCjtG33rrLd12223u/n/88Ydefvll9xy33357sfcdsS89Pd2NSTsxVBDz5s3TaaedphNOOEHTpk3TDTfcoCuuuEJjxoxRVLDq5Sh+7dq1C11zzTXZ1zMzM0N16tQJDRw4MM/7/+tf/wqddtppOW5r37596D//+U/E+4r4VNgxmtv27dtD5cuXD7366qsR7CXi1d6MTxuTRx55ZOill14K9ejRI3TWWWcVU28Rjwo7Rp9//vnQAQccENq2bVsx9hLxrLBj1O574okn5ritb9++oaOOOirifUV8kxT66KOPdnufW265JXTwwQfnuK1bt26hzp07h6IBM90BsLPZU6ZMcem3vsTERHfdZgjzYreH39/Y2cj87g8U9xjNbdOmTcrIyFCVKlUi2FPEo70dn/fee69q1KjhMoaAaBujH3/8sTp06ODSy2vWrKlDDjlEDzzwgDIzM4ux54gXezNGjzzySPcYPwV97ty5bvlDly5diq3fQH6iPVZKDroD8WjVqlXuj6j9UQ1n12fOnJnnY5YtW5bn/e12IBrGaG633nqrW4eT+xcgEMT4/Pbbb10qpKWcAdE4Ri2A+eKLL3TxxRe7QOavv/5S79693clLS+cFgh6jF110kXvc0UcfbZmy2r59u6666irSyxEVluUTK61fv16bN292dQiCxEw3gCL34IMPumJVH330kSvOAgRpw4YN+ve//+3Wx1arVi3o7gB5ysrKcpkYL774otq0aaNu3brpjjvu0AsvvBB014Ds2i2WffHcc8+5NeAffvihRo4cqfvuuy/orgFRj5nuANiHvqSkJC1fvjzH7Xa9Vq1aeT7Gbi/M/YHiHqO+Rx991AXdn3/+uVq2bBnhniIeFXZ8zpkzxxWnsiqo4QGOSU5OdgWrGjVqVAw9R7zYm9+hVrE8JSXFPc7XrFkzN3tjqcCpqakR7zfix96M0bvuusudwLTiVMZ20rFiV1deeaU7QWTp6UBQauUTK1WoUCHwWW7Dv44A2B9OO4s9fvz4HB8A7bqt58qL3R5+fzNu3Lh87w8U9xg1Dz/8sDvjPXr0aLVt27aYeot4U9jxaVstTp8+3aWW++3MM8/MrnBqlfaBoH+HHnXUUS6l3D8hZP78808XjBNwIxrGqNVqyR1Y+yeJvFpXQHA6RHusFHQlt3j1zjvvhNLS0kJDhw4NzZgxI3TllVeGKlWqFFq2bJn7+r///e/Qbbfdln3/7777LpScnBx69NFHQ3/88Ueof//+oZSUlND06dMD/C4Qywo7Rh988MFQampq6P333w8tXbo0u23YsCHA7wKxqrDjMzeqlyPaxujChQvdjg99+vQJzZo1K/Tpp5+GatSoEfrvf/8b4HeBWFbYMWqfPW2Mvv3226G5c+eGxo4dG2rUqJHbYQcoahs2bAj9/PPPrlnI+vjjj7vjBQsWuK/b2LQx6rMxWaZMmdD//d//uVhp0KBBoaSkpNDo0aND0YCgO0DPPPNMaL/99nOBim3b8MMPP2R/7bjjjnMfCsO9++67ocaNG7v7W0n8kSNHBtBrxJPCjNEGDRq4X4q5m/2RBqLhd2g4gm5E4xj9/vvv3XagFgjZ9mH333+/2+oOiIYxmpGREbrnnntcoF2qVKlQ/fr1Q7179w6tWbMmoN4jln355Zd5fq70x6Rd2hjN/ZjWrVu78Wy/Q1955ZVQtEiw/wU92w4AAAAAQCxiTTcAAAAAABFC0A0AAAAAQIQQdAMAAAAAECEE3QAAAAAARAhBNwAAAAAAEULQDQAAAABAhBB0AwAAAAAQIQTdAAAAAABECEE3AAAlzIQJE5SQkKC1a9cW6+sOHTpUlSpV2qfnmD9/vuv7tGnTou77AwAgEgi6AQCIIhZs7q7dc889QXcRAAAUQnJh7gwAACJr6dKl2cfDhg3T3XffrVmzZmXfVq5cOf3000+Fft5t27YpNTW1yPoJAAAKhpluAACiSK1atbJbxYoV3ex2+G0WdPumTJmitm3bqkyZMjryyCNzBOc2I966dWu99NJL2n///VWqVCl3u6VsX3HFFapevboqVKigE088Ub/88kv24+z4hBNOUPny5d3X27Rps0uQP2bMGDVr1sz15ZRTTslxoiArK0v33nuv6tWrp7S0NNeH0aNH7/Z7HjVqlBo3bqzSpUu717YUdAAAYgVBNwAAJdQdd9yhxx57zAXFycnJuuyyy3J8/a+//tIHH3ygDz/8MHsN9fnnn68VK1bos88+c0H7YYcdppNOOkmrV692X7/44otdwDx58mT39dtuu00pKSnZz7lp0yY9+uijev311/X1119r4cKFuvnmm7O//tRTT7k+2X1+/fVXde7cWWeeeaZmz56d5/ewaNEinXPOOTrjjDNcH+2EgL0mAACxgvRyAABKqPvvv1/HHXecO7ZA9bTTTtOWLVuyZ7Utpfy1115zs9rm22+/1aRJk1zQbbPQxoLj4cOH6/3339eVV17pguj/+7//U9OmTd3XDzrooByvmZGRoRdeeEGNGjVy1/v06eNmtn32fLfeeqsuuOACd/2hhx7Sl19+qSeffFKDBg3a5Xt4/vnn3XNZoG6aNGmi6dOnu8cBABALmOkGAKCEatmyZfZx7dq13aUF1L4GDRpkB9x+6vjGjRtVtWpVlxrut3nz5mnOnDnuPn379nWzzR07dtSDDz6YfbvPUtn9gNt/Xf81169fryVLluioo47K8Ri7/scff+T5Pdjt7du3z3Fbhw4d9ur9AAAgGjHTDQBACRWe9m1rv/011b6yZcvmuL8F3BYk25Zcuflbgdla8IsuukgjR450Kej9+/fXO++8o7PPPnuX1/RfNxQKFfF3BgBA7GCmGwCAOGHrt5ctW+bWfx944IE5WrVq1bLvZ0XNbrzxRo0dO9att37llVcK9PxWeK1OnTr67rvvctxu15s3b57nY6wgm6W8h/vhhx/26vsDACAaEXQDABAnLGXcUre7du3qAmqrEv7999+7gmxWjG3z5s1ujbbNhC9YsMAFy1ZQzQLjgrL14LYe27Y7s2rqttbcCqRdf/31ed7/qquuckXW7HF2/7feektDhw4twu8aAIBgkV4OAECcsFRw257LguyePXtq5cqVbhuyY489VjVr1lRSUpL++ecfde/eXcuXL3ez3zbTPWDAgAK/xnXXXad169bppptucmu9bYb7448/3qUgm2+//fZzFdZtZv2ZZ55Ru3bt9MADD+xSiR0AgJIqIcRCLAAAAAAAIoL0cgAAAAAAIoSgGwAAAACACCHoBgAAAAAgQgi6AQAAAACIEIJuAAAAAAAihKAbAAAAAIAIIegGAAAAACBCCLoBAAAAAIgQgm4AAAAAACKEoBsAAAAAgAgh6AYAAAAAIEIIugEAAAAAUGT8P9OobIp6m1yZAAAAAElFTkSuQmCC", "text/plain": [ "