{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Example: Multiclass classification\n",
"------------------------------------\n",
"\n",
"This example shows how to compare the performance of three models on a multiclass classification task.\n",
"\n",
"Import the wine dataset from [sklearn.datasets](https://scikit-learn.org/stable/datasets/index.html#breast-cancer-wisconsin-diagnostic-dataset). This is a small and easy to train dataset whose goal is to predict wines into three groups (which cultivator it's from) using features based on the results of chemical analysis."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Load the data"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# Import packages\n",
"from sklearn.datasets import load_wine\n",
"from atom import ATOMClassifier"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" alcohol \n",
" malic_acid \n",
" ash \n",
" alcalinity_of_ash \n",
" magnesium \n",
" total_phenols \n",
" flavanoids \n",
" nonflavanoid_phenols \n",
" proanthocyanins \n",
" color_intensity \n",
" hue \n",
" od280/od315_of_diluted_wines \n",
" proline \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" 14.23 \n",
" 1.71 \n",
" 2.43 \n",
" 15.6 \n",
" 127.0 \n",
" 2.80 \n",
" 3.06 \n",
" 0.28 \n",
" 2.29 \n",
" 5.64 \n",
" 1.04 \n",
" 3.92 \n",
" 1065.0 \n",
" \n",
" \n",
" 1 \n",
" 13.20 \n",
" 1.78 \n",
" 2.14 \n",
" 11.2 \n",
" 100.0 \n",
" 2.65 \n",
" 2.76 \n",
" 0.26 \n",
" 1.28 \n",
" 4.38 \n",
" 1.05 \n",
" 3.40 \n",
" 1050.0 \n",
" \n",
" \n",
" 2 \n",
" 13.16 \n",
" 2.36 \n",
" 2.67 \n",
" 18.6 \n",
" 101.0 \n",
" 2.80 \n",
" 3.24 \n",
" 0.30 \n",
" 2.81 \n",
" 5.68 \n",
" 1.03 \n",
" 3.17 \n",
" 1185.0 \n",
" \n",
" \n",
" 3 \n",
" 14.37 \n",
" 1.95 \n",
" 2.50 \n",
" 16.8 \n",
" 113.0 \n",
" 3.85 \n",
" 3.49 \n",
" 0.24 \n",
" 2.18 \n",
" 7.80 \n",
" 0.86 \n",
" 3.45 \n",
" 1480.0 \n",
" \n",
" \n",
" 4 \n",
" 13.24 \n",
" 2.59 \n",
" 2.87 \n",
" 21.0 \n",
" 118.0 \n",
" 2.80 \n",
" 2.69 \n",
" 0.39 \n",
" 1.82 \n",
" 4.32 \n",
" 1.04 \n",
" 2.93 \n",
" 735.0 \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" alcohol malic_acid ash alcalinity_of_ash magnesium total_phenols \\\n",
"0 14.23 1.71 2.43 15.6 127.0 2.80 \n",
"1 13.20 1.78 2.14 11.2 100.0 2.65 \n",
"2 13.16 2.36 2.67 18.6 101.0 2.80 \n",
"3 14.37 1.95 2.50 16.8 113.0 3.85 \n",
"4 13.24 2.59 2.87 21.0 118.0 2.80 \n",
"\n",
" flavanoids nonflavanoid_phenols proanthocyanins color_intensity hue \\\n",
"0 3.06 0.28 2.29 5.64 1.04 \n",
"1 2.76 0.26 1.28 4.38 1.05 \n",
"2 3.24 0.30 2.81 5.68 1.03 \n",
"3 3.49 0.24 2.18 7.80 0.86 \n",
"4 2.69 0.39 1.82 4.32 1.04 \n",
"\n",
" od280/od315_of_diluted_wines proline \n",
"0 3.92 1065.0 \n",
"1 3.40 1050.0 \n",
"2 3.17 1185.0 \n",
"3 3.45 1480.0 \n",
"4 2.93 735.0 "
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Load data\n",
"X, y = load_wine(return_X_y=True, as_frame=True)\n",
"\n",
"# Let's have a look\n",
"X.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Run the pipeline"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<< ================== ATOM ================== >>\n",
"\n",
"Configuration ==================== >>\n",
"Algorithm task: Multiclass classification.\n",
"\n",
"Dataset stats ==================== >>\n",
"Shape: (178, 14)\n",
"Train set size: 143\n",
"Test set size: 35\n",
"-------------------------------------\n",
"Memory: 19.36 kB\n",
"Scaled: False\n",
"Outlier values: 12 (0.6%)\n",
"\n",
"\n",
"Training ========================= >>\n",
"Models: LR, LDA, RF\n",
"Metric: roc_auc_ovr\n",
"\n",
"\n",
"Running hyperparameter tuning for LogisticRegression...\n",
"| trial | penalty | C | solver | max_iter | l1_ratio | roc_auc_ovr | best_roc_auc_ovr | time_trial | time_ht | state |\n",
"| ----- | ------- | ------- | ------- | -------- | -------- | ----------- | ---------------- | ---------- | ------- | -------- |\n",
"| 0 | l1 | 0.0054 | saga | 480 | 0.7 | 0.5 | 0.5 | 0.033s | 0.033s | COMPLETE |\n",
"| 1 | l1 | 0.122 | saga | 380 | 0.7 | 1.0 | 1.0 | 0.031s | 0.064s | COMPLETE |\n",
"| 2 | l2 | 0.0071 | sag | 720 | 0.3 | 1.0 | 1.0 | 0.030s | 0.094s | COMPLETE |\n",
"| 3 | l1 | 87.9641 | libli.. | 920 | 0.3 | 1.0 | 1.0 | 0.030s | 0.124s | COMPLETE |\n",
"| 4 | l2 | 0.0114 | sag | 630 | 0.7 | 1.0 | 1.0 | 0.029s | 0.153s | COMPLETE |\n",
"| 5 | l2 | 0.0018 | sag | 920 | 0.1 | 1.0 | 1.0 | 0.030s | 0.183s | COMPLETE |\n",
"| 6 | l2 | 43.4053 | sag | 780 | 0.3 | 1.0 | 1.0 | 0.049s | 0.232s | COMPLETE |\n",
"| 7 | l2 | 2.0759 | libli.. | 470 | 0.2 | 1.0 | 1.0 | 0.028s | 0.260s | COMPLETE |\n",
"| 8 | None | 0.043 | sag | 110 | 1.0 | 1.0 | 1.0 | 0.030s | 0.290s | COMPLETE |\n",
"| 9 | l1 | 46.0233 | saga | 740 | 0.1 | 1.0 | 1.0 | 0.057s | 0.347s | COMPLETE |\n",
"| 10 | l2 | 0.4741 | lbfgs | 280 | 1.0 | 1.0 | 1.0 | 0.044s | 0.391s | COMPLETE |\n",
"| 11 | l2 | 0.0765 | newto.. | 370 | 0.5 | 1.0 | 1.0 | 0.044s | 0.435s | COMPLETE |\n",
"| 12 | elast.. | 0.5609 | saga | 640 | 0.6 | 1.0 | 1.0 | 0.044s | 0.479s | COMPLETE |\n",
"| 13 | None | 0.0481 | newto.. | 240 | 0.5 | 1.0 | 1.0 | 0.043s | 0.522s | COMPLETE |\n",
"Hyperparameter tuning ---------------------------\n",
"Best trial --> 1\n",
"Best parameters:\n",
" --> penalty: l1\n",
" --> C: 0.122\n",
" --> solver: saga\n",
" --> max_iter: 380\n",
" --> l1_ratio: 0.7\n",
"Best evaluation --> roc_auc_ovr: 1.0\n",
"Time elapsed: 0.522s\n",
"Fit ---------------------------------------------\n",
"Train evaluation --> roc_auc_ovr: 0.9995\n",
"Test evaluation --> roc_auc_ovr: 0.9989\n",
"Time elapsed: 0.152s\n",
"Bootstrap ---------------------------------------\n",
"Evaluation --> roc_auc_ovr: 0.9991 ± 0.0009\n",
"Time elapsed: 0.142s\n",
"-------------------------------------------------\n",
"Time: 0.816s\n",
"\n",
"\n",
"Running hyperparameter tuning for LinearDiscriminantAnalysis...\n",
"| trial | solver | shrinkage | roc_auc_ovr | best_roc_auc_ovr | time_trial | time_ht | state |\n",
"| ----- | ------- | --------- | ----------- | ---------------- | ---------- | ------- | -------- |\n",
"| 0 | lsqr | 0.9 | 0.9221 | 0.9221 | 0.018s | 0.018s | COMPLETE |\n",
"| 1 | eigen | 1.0 | 0.9221 | 0.9221 | 0.012s | 0.030s | COMPLETE |\n",
"| 2 | eigen | 1.0 | 0.9221 | 0.9221 | 0.000s | 0.030s | COMPLETE |\n",
"| 3 | lsqr | 0.7 | 0.9241 | 0.9241 | 0.009s | 0.039s | COMPLETE |\n",
"| 4 | eigen | 0.7 | 0.9241 | 0.9241 | 0.010s | 0.049s | COMPLETE |\n",
"| 5 | lsqr | auto | 1.0 | 1.0 | 0.012s | 0.061s | COMPLETE |\n",
"| 6 | eigen | 1.0 | 0.9221 | 1.0 | 0.001s | 0.062s | COMPLETE |\n",
"| 7 | lsqr | 1.0 | 0.9221 | 1.0 | 0.009s | 0.071s | COMPLETE |\n",
"| 8 | svd | None | 1.0 | 1.0 | 0.008s | 0.079s | COMPLETE |\n",
"| 9 | svd | None | 1.0 | 1.0 | 0.000s | 0.079s | COMPLETE |\n",
"| 10 | lsqr | auto | 1.0 | 1.0 | 0.001s | 0.080s | COMPLETE |\n",
"| 11 | svd | None | 1.0 | 1.0 | 0.002s | 0.082s | COMPLETE |\n",
"| 12 | svd | None | 1.0 | 1.0 | 0.001s | 0.083s | COMPLETE |\n",
"| 13 | svd | None | 1.0 | 1.0 | 0.001s | 0.084s | COMPLETE |\n",
"Hyperparameter tuning ---------------------------\n",
"Best trial --> 5\n",
"Best parameters:\n",
" --> solver: lsqr\n",
" --> shrinkage: auto\n",
"Best evaluation --> roc_auc_ovr: 1.0\n",
"Time elapsed: 0.084s\n",
"Fit ---------------------------------------------\n",
"Train evaluation --> roc_auc_ovr: 1.0\n",
"Test evaluation --> roc_auc_ovr: 1.0\n",
"Time elapsed: 0.039s\n",
"Bootstrap ---------------------------------------\n",
"Evaluation --> roc_auc_ovr: 0.9998 ± 0.0005\n",
"Time elapsed: 0.065s\n",
"-------------------------------------------------\n",
"Time: 0.188s\n",
"\n",
"\n",
"Running hyperparameter tuning for RandomForest...\n",
"| trial | n_estimators | criterion | max_depth | min_samples_split | min_samples_leaf | max_features | bootstrap | max_samples | ccp_alpha | roc_auc_ovr | best_roc_auc_ovr | time_trial | time_ht | state |\n",
"| ----- | ------------ | --------- | --------- | ----------------- | ---------------- | ------------ | --------- | ----------- | --------- | ----------- | ---------------- | ---------- | ------- | -------- |\n",
"| 0 | 210 | gini | 10 | 17 | 20 | 0.5 | False | None | 0.0 | 0.9803 | 0.9803 | 0.167s | 0.167s | COMPLETE |\n",
"| 1 | 380 | gini | 4 | 15 | 3 | 0.9 | False | None | 0.01 | 0.9757 | 0.9803 | 0.393s | 0.560s | COMPLETE |\n",
"| 2 | 380 | entropy | 6 | 2 | 13 | 0.9 | False | None | 0.03 | 0.9655 | 0.9803 | 0.390s | 0.950s | COMPLETE |\n",
"| 3 | 470 | gini | 11 | 9 | 18 | nan | True | 0.6 | 0.025 | 0.9944 | 0.9944 | 0.481s | 1.432s | COMPLETE |\n",
"| 4 | 100 | entropy | 12 | 14 | 6 | 0.9 | False | nan | 0.035 | 0.9916 | 0.9944 | 0.111s | 1.543s | COMPLETE |\n",
"| 5 | 470 | entropy | 13 | 11 | 1 | nan | True | 0.6 | 0.01 | 0.9949 | 0.9949 | 0.550s | 2.092s | COMPLETE |\n",
"| 6 | 250 | gini | 14 | 13 | 17 | 0.7 | True | nan | 0.02 | 0.9949 | 0.9949 | 0.268s | 2.361s | COMPLETE |\n",
"| 7 | 220 | gini | 5 | 10 | 7 | 0.5 | True | 0.9 | 0.035 | 0.9949 | 0.9949 | 0.251s | 2.612s | COMPLETE |\n",
"| 8 | 130 | entropy | 4 | 6 | 11 | 0.9 | False | nan | 0.03 | 0.9693 | 0.9949 | 0.139s | 2.751s | COMPLETE |\n",
"| 9 | 370 | gini | 12 | 2 | 4 | 0.5 | False | nan | 0.02 | 0.9949 | 0.9949 | 0.317s | 3.068s | COMPLETE |\n",
"| 10 | 500 | entropy | 13 | 20 | 1 | 0.8 | True | 0.6 | 0.01 | 0.9932 | 0.9949 | 0.608s | 3.676s | COMPLETE |\n",
"| 11 | 20 | entropy | 14 | 12 | 16 | 0.7 | True | 0.5 | 0.01 | 0.9981 | 0.9981 | 0.048s | 3.724s | COMPLETE |\n",
"| 12 | 10 | entropy | 9 | 7 | 15 | 0.6 | True | 0.5 | 0.01 | 0.9847 | 0.9981 | 0.036s | 3.760s | COMPLETE |\n",
"| 13 | 30 | entropy | 16 | 11 | 9 | log2 | True | 0.7 | 0.0 | 0.9981 | 0.9981 | 0.065s | 3.825s | COMPLETE |\n",
"Hyperparameter tuning ---------------------------\n",
"Best trial --> 11\n",
"Best parameters:\n",
" --> n_estimators: 20\n",
" --> criterion: entropy\n",
" --> max_depth: 14\n",
" --> min_samples_split: 12\n",
" --> min_samples_leaf: 16\n",
" --> max_features: 0.7\n",
" --> bootstrap: True\n",
" --> max_samples: 0.5\n",
" --> ccp_alpha: 0.01\n",
"Best evaluation --> roc_auc_ovr: 0.9981\n",
"Time elapsed: 3.825s\n",
"Fit ---------------------------------------------\n",
"Train evaluation --> roc_auc_ovr: 0.999\n",
"Test evaluation --> roc_auc_ovr: 0.9986\n",
"Time elapsed: 0.055s\n",
"Bootstrap ---------------------------------------\n",
"Evaluation --> roc_auc_ovr: 0.9885 ± 0.0065\n",
"Time elapsed: 0.139s\n",
"-------------------------------------------------\n",
"Time: 4.019s\n",
"\n",
"\n",
"Final results ==================== >>\n",
"Total time: 8.389s\n",
"-------------------------------------\n",
"LogisticRegression --> roc_auc_ovr: 0.9991 ± 0.0009\n",
"LinearDiscriminantAnalysis --> roc_auc_ovr: 0.9998 ± 0.0005 !\n",
"RandomForest --> roc_auc_ovr: 0.9885 ± 0.0065\n"
]
}
],
"source": [
"atom = ATOMClassifier(X, y, n_jobs=1, verbose=2, random_state=1)\n",
"\n",
"# Fit the pipeline with the selected models\n",
"atom.run(\n",
" models=[\"LR\",\"LDA\", \"RF\"],\n",
" metric=\"roc_auc_ovr\",\n",
" n_trials=14,\n",
" n_bootstrap=5,\n",
" errors=\"raise\",\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Analyze the results"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
" \n",
" \n",
" \n",
" roc_auc_ovr_ht \n",
" time_ht \n",
" roc_auc_ovr_train \n",
" roc_auc_ovr_test \n",
" time_fit \n",
" roc_auc_ovr_bootstrap \n",
" time_bootstrap \n",
" time \n",
" \n",
" \n",
" \n",
" \n",
" LR \n",
" 1.000000 \n",
" 0.522480 \n",
" 0.998700 \n",
" 0.998900 \n",
" 0.152041 \n",
" 0.999093 \n",
" 0.141717 \n",
" 0.816238 \n",
" \n",
" \n",
" LDA \n",
" 1.000000 \n",
" 0.084077 \n",
" 1.000000 \n",
" 0.998900 \n",
" 0.039036 \n",
" 0.999773 \n",
" 0.065059 \n",
" 0.188172 \n",
" \n",
" \n",
" RF \n",
" 0.998148 \n",
" 3.824844 \n",
" 0.999000 \n",
" 0.998600 \n",
" 0.055050 \n",
" 0.988525 \n",
" 0.139127 \n",
" 4.019021 \n",
" \n",
" \n",
"
\n"
],
"text/plain": [
""
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"atom.results"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
" \n",
" \n",
" \n",
" precision_macro \n",
" recall_macro \n",
" jaccard_weighted \n",
" \n",
" \n",
" \n",
" \n",
" LR \n",
" 0.939400 \n",
" 0.952400 \n",
" 0.896100 \n",
" \n",
" \n",
" LDA \n",
" 0.966700 \n",
" 0.976200 \n",
" 0.945700 \n",
" \n",
" \n",
" RF \n",
" 0.911700 \n",
" 0.915300 \n",
" 0.842200 \n",
" \n",
" \n",
"
\n"
],
"text/plain": [
""
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Show the score for some different metrics\n",
"atom.evaluate([\"precision_macro\", \"recall_macro\", \"jaccard_weighted\"])"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
" \n",
" "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plotly.com"
},
"data": [
{
"fill": "tonexty",
"fillcolor": "rgba(0, 98, 98, 0.2)",
"fillpattern": {
"shape": ""
},
"legendgroup": "RF",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF"
},
"line": {
"color": "rgb(0, 98, 98)",
"dash": "solid",
"width": 2
},
"mode": "lines",
"name": "target=0",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.010101010101010102,
0.020202020202020204,
0.030303030303030304,
0.04040404040404041,
0.05050505050505051,
0.06060606060606061,
0.07070707070707072,
0.08080808080808081,
0.09090909090909091,
0.10101010101010102,
0.11111111111111112,
0.12121212121212122,
0.13131313131313133,
0.14141414141414144,
0.15151515151515152,
0.16161616161616163,
0.17171717171717174,
0.18181818181818182,
0.19191919191919193,
0.20202020202020204,
0.21212121212121213,
0.22222222222222224,
0.23232323232323235,
0.24242424242424243,
0.25252525252525254,
0.26262626262626265,
0.27272727272727276,
0.2828282828282829,
0.29292929292929293,
0.30303030303030304,
0.31313131313131315,
0.32323232323232326,
0.33333333333333337,
0.3434343434343435,
0.3535353535353536,
0.36363636363636365,
0.37373737373737376,
0.38383838383838387,
0.393939393939394,
0.4040404040404041,
0.4141414141414142,
0.42424242424242425,
0.43434343434343436,
0.4444444444444445,
0.4545454545454546,
0.4646464646464647,
0.4747474747474748,
0.48484848484848486,
0.494949494949495,
0.5050505050505051,
0.5151515151515152,
0.5252525252525253,
0.5353535353535354,
0.5454545454545455,
0.5555555555555556,
0.5656565656565657,
0.5757575757575758,
0.5858585858585859,
0.595959595959596,
0.6060606060606061,
0.6161616161616162,
0.6262626262626263,
0.6363636363636365,
0.6464646464646465,
0.6565656565656566,
0.6666666666666667,
0.6767676767676768,
0.686868686868687,
0.696969696969697,
0.7070707070707072,
0.7171717171717172,
0.7272727272727273,
0.7373737373737375,
0.7474747474747475,
0.7575757575757577,
0.7676767676767677,
0.7777777777777778,
0.787878787878788,
0.797979797979798,
0.8080808080808082,
0.8181818181818182,
0.8282828282828284,
0.8383838383838385,
0.8484848484848485,
0.8585858585858587,
0.8686868686868687,
0.8787878787878789,
0.888888888888889,
0.8989898989898991,
0.9090909090909092,
0.9191919191919192,
0.9292929292929294,
0.9393939393939394,
0.9494949494949496,
0.9595959595959597,
0.9696969696969697,
0.9797979797979799,
0.98989898989899,
1
],
"xaxis": "x",
"y": [
5.807118835498699e-14,
2.5584114072850653e-13,
1.0836510891915993e-12,
4.412837961288359e-12,
1.7276505741915972e-11,
6.502842819764208e-11,
2.3532064192855374e-10,
8.187026793796927e-10,
2.738431101934902e-09,
8.806165544796146e-09,
2.7225840246460757e-08,
8.092545655927401e-08,
2.31258894231174e-07,
6.353618754082675e-07,
1.6782369531314891e-06,
4.261817316724794e-06,
1.0405089108640811e-05,
2.442340467484127e-05,
5.5115790462163996e-05,
0.00011957911070681598,
0.000249427343230543,
0.0005001983998122281,
0.0009643842059908372,
0.0017875884400064507,
0.003185626280242805,
0.0054579842235698344,
0.008990429928896673,
0.014237718122554713,
0.021677732731498738,
0.03173248146497767,
0.04465977685986389,
0.060431221948271066,
0.07862419684158378,
0.09836317220699603,
0.11834397241109007,
0.13696081466240626,
0.1525314616667629,
0.16358681841354808,
0.1691671598188652,
0.16905702544977616,
0.16389961133966874,
0.15515753336258395,
0.14492218315279576,
0.1356075555987309,
0.12958685409246734,
0.128836814071639,
0.13464687114559182,
0.14743346081709963,
0.16668013418684688,
0.19100615904685697,
0.21835133647542423,
0.24625241116914556,
0.27217594715445786,
0.2938642177317189,
0.3096462219125612,
0.31866779991743516,
0.3210050225087052,
0.31764417592642785,
0.3103379765521827,
0.3013762890780157,
0.29333273939177995,
0.28885684497493386,
0.2905670820455788,
0.3010623772432261,
0.323016347481919,
0.35926854664537367,
0.41280313143369096,
0.48652624258452,
0.5828226643850891,
0.7029727180986121,
0.8466060986458204,
1.0114179908773622,
1.1933426018218862,
1.3872652185756356,
1.588184192445412,
1.7925627306461995,
1.9994973098666737,
2.211318374818904,
2.4333398924322354,
2.672661750635709,
2.9361536903014125,
3.227957691763335,
3.5469951746314146,
3.8850306903340677,
4.225812491349852,
4.545676441988518,
4.815764178021885,
5.005687593423078,
5.088119056678783,
5.043484465843326,
4.863786185214724,
4.554666894978459,
4.135162318428137,
3.6351118011223753,
3.0907557442297504,
2.5394754935042814,
2.014791023127611,
1.5425833599576102,
1.1391174786010998,
0.8109488061206297
],
"yaxis": "y"
},
{
"fill": "tonexty",
"fillcolor": "rgba(0, 98, 98, 0.2)",
"fillpattern": {
"shape": "/"
},
"legendgroup": "RF",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF"
},
"line": {
"color": "rgb(0, 98, 98)",
"dash": "dashdot",
"width": 2
},
"mode": "lines",
"name": "target=1",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.010101010101010102,
0.020202020202020204,
0.030303030303030304,
0.04040404040404041,
0.05050505050505051,
0.06060606060606061,
0.07070707070707072,
0.08080808080808081,
0.09090909090909091,
0.10101010101010102,
0.11111111111111112,
0.12121212121212122,
0.13131313131313133,
0.14141414141414144,
0.15151515151515152,
0.16161616161616163,
0.17171717171717174,
0.18181818181818182,
0.19191919191919193,
0.20202020202020204,
0.21212121212121213,
0.22222222222222224,
0.23232323232323235,
0.24242424242424243,
0.25252525252525254,
0.26262626262626265,
0.27272727272727276,
0.2828282828282829,
0.29292929292929293,
0.30303030303030304,
0.31313131313131315,
0.32323232323232326,
0.33333333333333337,
0.3434343434343435,
0.3535353535353536,
0.36363636363636365,
0.37373737373737376,
0.38383838383838387,
0.393939393939394,
0.4040404040404041,
0.4141414141414142,
0.42424242424242425,
0.43434343434343436,
0.4444444444444445,
0.4545454545454546,
0.4646464646464647,
0.4747474747474748,
0.48484848484848486,
0.494949494949495,
0.5050505050505051,
0.5151515151515152,
0.5252525252525253,
0.5353535353535354,
0.5454545454545455,
0.5555555555555556,
0.5656565656565657,
0.5757575757575758,
0.5858585858585859,
0.595959595959596,
0.6060606060606061,
0.6161616161616162,
0.6262626262626263,
0.6363636363636365,
0.6464646464646465,
0.6565656565656566,
0.6666666666666667,
0.6767676767676768,
0.686868686868687,
0.696969696969697,
0.7070707070707072,
0.7171717171717172,
0.7272727272727273,
0.7373737373737375,
0.7474747474747475,
0.7575757575757577,
0.7676767676767677,
0.7777777777777778,
0.787878787878788,
0.797979797979798,
0.8080808080808082,
0.8181818181818182,
0.8282828282828284,
0.8383838383838385,
0.8484848484848485,
0.8585858585858587,
0.8686868686868687,
0.8787878787878789,
0.888888888888889,
0.8989898989898991,
0.9090909090909092,
0.9191919191919192,
0.9292929292929294,
0.9393939393939394,
0.9494949494949496,
0.9595959595959597,
0.9696969696969697,
0.9797979797979799,
0.98989898989899,
1
],
"xaxis": "x",
"y": [
3.432662823924569,
3.670511867241856,
3.8471144259934413,
3.955436530772075,
3.9932034852227565,
3.9630083118088337,
3.871837447282863,
3.7300957989673122,
3.550293191003576,
3.345601575991259,
3.128498810782203,
2.9096814610338386,
2.6973658544991324,
2.497018956072716,
2.3114855581272895,
2.1414200813237843,
1.985898683386656,
1.8430823633292053,
1.7108202635392395,
1.5871163144813298,
1.4704221856540978,
1.3597565773466944,
1.254679140468643,
1.1551638808366327,
1.0614218869244842,
0.973718835938072,
0.8922222564888755,
0.8169003146684396,
0.7474807144706305,
0.6834670407834961,
0.6242015125729174,
0.5689579495431019,
0.517046636873443,
0.4679133109112212,
0.42121717615650167,
0.3768771149825122,
0.3350804107371885,
0.2962536691233995,
0.26100050596562724,
0.23001440211752194,
0.20397755473363316,
0.18345749491590865,
0.16881286023621755,
0.16011832602658765,
0.15711665138770842,
0.15920332910416818,
0.1654465446974424,
0.17464205002233973,
0.18539915593133133,
0.19625050552919363,
0.2057749873516143,
0.21272067101209005,
0.216113647153058,
0.21533963477529233,
0.2101883317908217,
0.20085539395815127,
0.18790282803114605,
0.1721843692320225,
0.15474694689414495,
0.13672176442425577,
0.11921847085078786,
0.10323360673335767,
0.08958069444225786,
0.0788450197194945,
0.07136231988669378,
0.06721798586743037,
0.06626229609951777,
0.06813746275444323,
0.07231336099086266,
0.07813005112862559,
0.08484598385665504,
0.09169074915388897,
0.09792039000088305,
0.10287198113773985,
0.10601290740680008,
0.10697962730377356,
0.10560107757737394,
0.10190337546521126,
0.09609488666963424,
0.08853355893075164,
0.07968105114146966,
0.07005003659619154,
0.06015174295793,
0.05045021530718105,
0.041328150125336,
0.03306686495747619,
0.025840554008965243,
0.019722908795337325,
0.014702786028188823,
0.010705016655600598,
0.007612614048516961,
0.005287359777569021,
0.003586760684586655,
0.002376426392779728,
0.0015378172477456837,
0.0009719489655538734,
0.000599985228330633,
0.00036173956277518206,
0.000213014815949704,
0.00012251293985635474
],
"yaxis": "y"
},
{
"fill": "tonexty",
"fillcolor": "rgba(0, 98, 98, 0.2)",
"fillpattern": {
"shape": "x"
},
"legendgroup": "RF",
"legendgrouptitle": {
"font": {
"size": 16
},
"text": "RF"
},
"line": {
"color": "rgb(0, 98, 98)",
"dash": "dash",
"width": 2
},
"mode": "lines",
"name": "target=2",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.010101010101010102,
0.020202020202020204,
0.030303030303030304,
0.04040404040404041,
0.05050505050505051,
0.06060606060606061,
0.07070707070707072,
0.08080808080808081,
0.09090909090909091,
0.10101010101010102,
0.11111111111111112,
0.12121212121212122,
0.13131313131313133,
0.14141414141414144,
0.15151515151515152,
0.16161616161616163,
0.17171717171717174,
0.18181818181818182,
0.19191919191919193,
0.20202020202020204,
0.21212121212121213,
0.22222222222222224,
0.23232323232323235,
0.24242424242424243,
0.25252525252525254,
0.26262626262626265,
0.27272727272727276,
0.2828282828282829,
0.29292929292929293,
0.30303030303030304,
0.31313131313131315,
0.32323232323232326,
0.33333333333333337,
0.3434343434343435,
0.3535353535353536,
0.36363636363636365,
0.37373737373737376,
0.38383838383838387,
0.393939393939394,
0.4040404040404041,
0.4141414141414142,
0.42424242424242425,
0.43434343434343436,
0.4444444444444445,
0.4545454545454546,
0.4646464646464647,
0.4747474747474748,
0.48484848484848486,
0.494949494949495,
0.5050505050505051,
0.5151515151515152,
0.5252525252525253,
0.5353535353535354,
0.5454545454545455,
0.5555555555555556,
0.5656565656565657,
0.5757575757575758,
0.5858585858585859,
0.595959595959596,
0.6060606060606061,
0.6161616161616162,
0.6262626262626263,
0.6363636363636365,
0.6464646464646465,
0.6565656565656566,
0.6666666666666667,
0.6767676767676768,
0.686868686868687,
0.696969696969697,
0.7070707070707072,
0.7171717171717172,
0.7272727272727273,
0.7373737373737375,
0.7474747474747475,
0.7575757575757577,
0.7676767676767677,
0.7777777777777778,
0.787878787878788,
0.797979797979798,
0.8080808080808082,
0.8181818181818182,
0.8282828282828284,
0.8383838383838385,
0.8484848484848485,
0.8585858585858587,
0.8686868686868687,
0.8787878787878789,
0.888888888888889,
0.8989898989898991,
0.9090909090909092,
0.9191919191919192,
0.9292929292929294,
0.9393939393939394,
0.9494949494949496,
0.9595959595959597,
0.9696969696969697,
0.9797979797979799,
0.98989898989899,
1
],
"xaxis": "x",
"y": [
4.349092023115575,
4.908896216360777,
5.341187394637555,
5.609720455022886,
5.694896437094107,
5.5964333288810275,
5.332777390808262,
4.937352565919193,
4.452474544741933,
3.9223669529244307,
3.3869531541329683,
2.8777890120839653,
2.416715107024429,
2.016854706162585,
1.6848754985350265,
1.4232535204435062,
1.2316427237222396,
1.107124257423122,
1.0437380209009504,
1.0320099043986952,
1.059096886592154,
1.1097952316270374,
1.168224595369302,
1.219726382320607,
1.25249042906154,
1.2585957010382833,
1.2343787865627407,
1.1802060386645195,
1.0997861431706277,
0.9991660140604208,
0.8855660146809462,
0.7662443604062462,
0.6475938691449701,
0.5346192670947914,
0.4308202800799355,
0.33837223595901345,
0.2584243130842835,
0.19135869255790425,
0.13694381091480806,
0.09440847041877286,
0.06250848982509358,
0.03964269622807247,
0.024026906717178678,
0.013891059327700423,
0.007649454433060118,
0.004007536633571223,
0.0019956570285361163,
0.0009439678885427485,
0.0004239017456743485,
0.0001806505859173628,
7.303849615590244e-05,
2.8009599269747624e-05,
1.0186693240843887e-05,
3.512996113412388e-06,
1.148684294039413e-06,
3.561007496822648e-07,
1.0465800796965743e-07,
2.9159710979701678e-08,
7.701815703312608e-09,
1.9283828918234677e-09,
4.5769592465234604e-10,
1.029768362799146e-10,
2.1962265234021173e-11,
4.440042329034265e-12,
8.508783645120001e-13,
1.5456699409873655e-13,
2.6615452393266668e-14,
4.344281311404249e-15,
6.721534309175283e-16,
9.857909890877404e-17,
1.3704616302446264e-17,
1.8059856033292338e-18,
2.2559365001962067e-19,
2.671188318036304e-20,
2.99810674063116e-21,
3.189734597143936e-22,
3.21682048686749e-23,
3.0751328388009695e-24,
2.786542581117378e-25,
2.393493277417033e-26,
1.948782849010303e-27,
1.5040399840551425e-28,
1.1003225212290968e-29,
7.630364819352297e-31,
5.015743034199269e-32,
3.125287149627479e-33,
1.8459045599911027e-34,
1.0334589384995326e-35,
5.484561040902647e-37,
2.7590221494404306e-38,
1.3156281670589139e-39,
5.946696877262119e-41,
2.5479042460384422e-42,
1.0347967721706525e-43,
3.983746453120712e-45,
1.4537608723230788e-46,
5.0287370012078674e-48,
1.6488818267616744e-49,
5.124892983794226e-51,
1.5098879937543682e-52
],
"yaxis": "y"
}
],
"layout": {
"font": {
"size": 12
},
"height": 600,
"hoverlabel": {
"font": {
"size": 16
}
},
"legend": {
"bgcolor": "rgba(255, 255, 255, 0.5)",
"font": {
"size": 16
},
"groupclick": "toggleitem",
"traceorder": "grouped",
"x": 0.99,
"xanchor": "right",
"y": 0.99,
"yanchor": "top"
},
"margin": {
"b": 50,
"l": 50,
"pad": 0,
"r": 0,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"font": {
"size": 24
},
"pad": {
"b": 15,
"t": 15
},
"x": 0.5,
"xanchor": "center",
"xref": "paper",
"y": 1,
"yanchor": "top"
},
"width": 900,
"xaxis": {
"anchor": "y",
"automargin": true,
"domain": [
0,
1
],
"range": [
0,
1
],
"title": {
"font": {
"size": 16
},
"text": "Probability"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"automargin": true,
"autorange": true,
"domain": [
0,
1
],
"range": [
-0.316383135394117,
6.011279572488224
],
"title": {
"font": {
"size": 16
},
"text": "Probability density"
},
"type": "linear"
}
}
},
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Some plots allow you to choose the target class to look at\n",
"atom.rf.plot_probabilities(rows=\"train\", target=0)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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IiIiIiIiVaFGY17LlCmT47mvry+srKwQHByco9NapUoVdOnSBS1btsSKFSuwdetWuY6nPj1pIiIiIiIiUlmHDx+Gp6dnjsL1Kw0NDXTu3BlHjhyROz47r0RERERERKpCjTqv/yWRSPDwYd4TmUVGRuYaC5sf7LwSERERERGRYJ06dcLatWuxfPlypKb+360qUlNTsWzZMqxfvx4dO3aUOz47r0RERERERKpCjWYb/q9Vq1YhKioK48ePx5QpU2Br+88t0968eYPMzEy4urpi5cqVcsdn8UpERERERESCmZiY4Pz58zhy5AgCAwMRGxsLAGjdujU8PDzQvn17meNhfxSLVyIiIiIiUjoTExOZy4WMkVRLajzm9auOHTsKujw4LyxeiYiIiIiISGE+f/6M8+fPIyYmBgBQtmxZNGrUCAYGBoLisnglIiIiIiJSFWreefXz88P06dORkpKSo2tuZGSE+fPnY8SIEXLHVt/RwERERERERKQytm/fjtGjR6Ny5crYuXMnbt26hVu3bmHXrl2oUqUKRo8ejR07dsgdn51XIiIiIiIiVaHGsw0vX74cjRo1wpkzZ6CpqSldXrVqVXTt2hXNmjXDsmXL0LdvX7niq++ZISIiIiIiIpXx6NEjdOvWLUfh+pWmpia6deuGR48eyR2fnVciIiIiIiJVocZjXk1MTBAdHZ3n+ujoaBgbG8sdn51XIiIiIiIiEqxt27bw8/PD7t27c63bs2cP/vrrL7Rv317u+Oy8EhERERERkWCLFi1CeHg4evfujXHjxuGXX34BADx58gRv376Fk5MTFi1aJHd8dl6JiIiIiIhUhYaG7IcasLKywo0bN7B8+XJUqVIF7969w7t371ClShWsWLEC169fh6Wlpdzx2XklIiIiIiIihdDV1cXo0aMxevRohcdm8UpERERERKQq1HjCpoLG4pWIiIiIiIgU4uLFi9iyZQueP3+OhIQESCSSHOtFIhFu374tV2z1uHia6DtEIhF8fX2VnQYRERERkTAaItkPNbB8+XK4u7tjz549SE5Ohrm5OSwsLHI8zM3N5Y7PzisREREREREJ9scff8DV1RXHjh2DiYmJwuOzeKUi4cuXLyhWjG9nIiIiIlJzajKzsCypqano3bt3gRSuAItXKiJ0dXWVnQIRERER0U+tSZMmuHv3boHFV9+yngAAvr6+EIlEePz4Mfr06QMTExNYWVlhxowZkEgkePHiBTp27AhjY2PY2Nhg2bJl0n0zMjIwc+ZM1KpVCyYmJjAwMICbmxtCQ0NzHSc+Ph59+/aFsbExTE1N4e3tjdu3b0MkEmHbtm3S7Xx8fGBoaIhXr16hU6dOMDQ0hJWVFcaPH4/s7OwcMcViMVauXIlKlSpBV1cXxYsXx+DBg5GQkJBju7///hutWrWCpaUl9PT0YG9vjwEDBuTY5r9jXn18fFC2bNk8z9d/9x0xYgT27dsHZ2dn6OnpwcXFRfqNt379epQvXx66urpo3LgxoqOjv/UlISIiIiKSnxqPefXz88OZM2ewdOlSfPz4UeHxWbwWEV5eXhCLxVi0aBHq1auHefPmYeXKlWjRogVKliyJxYsXo3z58hg/fjwuXLgAAEhOTsamTZvQuHFjLF68GL6+vnj//j1atWqFW7duSWOLxWK0b98eu3btgre3N+bPn483b97A29tbZi7Z2dlo1aoVLCwssHTpUri7u2PZsmXYsGFDju0GDx6MCRMmwNXVFatWrUL//v0REBCAVq1aITMzEwAQFxeHli1bIjo6GpMnT4afnx969+6NK1euKPT8hYWFYdy4cfD29oavry8ePHiAdu3aYfXq1fjzzz8xbNgwTJgwAeHh4bkKZyIiIiIiAkqXLo3Bgwdj8uTJsLKygoGBAYyNjXM8hFxSzMuGi4i6deti/fr1AIBBgwahbNmyGDduHBYuXIhJkyYBAHr27IkSJUpgy5YtaNSoEczMzBAdHQ1tbW1pnN9++w1OTk7w8/PD5s2bAQCHDx9GeHg4Vq5cKb3Z8NChQ9GiRQuZuaSlpcHLywszZswAAAwZMgQ1a9bE5s2bMXToUAD/TKG9adMmBAQEoFevXtJ9mzRpgtatW2Pfvn3o1asXLl++jISEBAQHB6N27drS7ebNm6eoUwcAePToER4+fCjt1pqZmWHw4MGYN28eHj9+DCMjIwD/FOYLFy5EdHS0zM5ueno60tPTpc+Tk5MVmicRERERFXFq0mWVZebMmZg/fz5KliyJ2rVrK3zsK4vXImLgwIHS/2tqaqJ27dp4+fIlfv31V+lyU1NTODo64vnz59LtNDU1AfzTXU1MTIRYLEbt2rVx48YN6X6nTp2ClpYWfvvtN+kyDQ0NDB8+HGfPnpWZz5AhQ3I8d3Nzw44dO6TP9+3bBxMTE7Ro0QIfPnyQLq9VqxYMDQ0RGhqKXr16wdTUFABw/PhxVKtWDVpaWvk9NT+kWbNmOYrRevXqAQC6dOkiLVz/vfz58+cyi9eFCxdi9uzZBZIjEREREZEqW7duHdq2bYvDhw9DowAmnuJlw0WEnZ1djucmJibQ1dWFpaVlruX/HlPq7++PqlWrQldXFxYWFrCyssKJEyeQlJQk3SYmJga2trbQ19fPEat8+fIyc9HV1YWVlVWOZWZmZjmO++TJEyQlJcHa2hpWVlY5HikpKYiLiwMAuLu7o0uXLpg9ezYsLS3RsWNHbN26NUd3UxFknT/gn0sfZC3/77jcr6ZMmYKkpCTp48WLFwrNk4iIiIiKOA0N2Q81kJGRgbZt2xZI4Qqw81pkfO2gfm8ZAEgkEgDA//73P/j4+KBTp06YMGECrK2toampiYULF+LZs2cKzeW/xGIxrK2tERAQIHP91+JXJBJh//79uHLlCo4dO4agoCAMGDAAy5Ytw5UrV2BoaChz//9OyvTVfyeN+l7O3zuH/6WjowMdHR2Z64iIiIiIirJ27dohLCwMgwcPLpD4LF5/Yvv374eDgwMOHjyYo9ibNWtWju3KlCmD0NBQpKam5ui+Pn36VO5jlytXDiEhIXB1dYWent53t69fvz7q16+P+fPnY+fOnejduzd2796d43LpfzMzM0NiYmKu5TExMXLnTERERERU4NR4zOusWbPg5eWFYcOG4ddff4WdnZ3MZpC5ublc8dWj/0wF4usb6d9dxKtXryI8PDzHdl9n/924caN0mVgsxurVq+U+dvfu3ZGdnY25c+fmWpeVlSUtPBMSEnJ1OatXrw4A37x0uFy5ckhKSsKdO3eky968eYNDhw7JnTMREREREeXN0dERt27dwrp161C3bl3Y2NjkGiL43+GF+cHO60+sXbt2OHjwIDw9PdG2bVtERUVh3bp1cHZ2RkpKinS7Tp06oW7duhg3bhyePn0KJycnHD16VHrvprwu0f0Wd3d3DB48GAsXLsStW7fQsmVLaGlp4cmTJ9i3bx9WrVqFrl27wt/fH2vWrIGnpyfKlSuHT58+YePGjTA2NoaHh0ee8Xv06IFJkybB09MTo0aNQmpqKtauXYsKFSrkmIyKiIiIiEilqMn4VllmzpwpV23wo1i8/sR8fHzw9u1brF+/HkFBQXB2dsb//vc/7Nu3D+fOnZNup6mpiRMnTmD06NHw9/eHhoYGPD09MWvWLLi6ukJXV1eu469btw61atXC+vXrMXXqVBQrVgxly5ZFnz594OrqCuCfIjciIgK7d+/Gu3fvYGJigrp16yIgIAD29vZ5xrawsMChQ4cwduxYTJw4Efb29li4cCGePHnC4pWIiIiIqAD4+voWaHyRJK+ZZ4i+4/Dhw/D09MTFixelxSbllJycDBMTEyQ9jYWxkbH8cUzk3/cr7e/Po/VNcamCU4CdruwJs/IjNk3gCwGQJRYcAsUU8KGoXYrsWat/VJjYTHAOtgaCQyhkaI5DwCnhQVydhMfQFXY7LrFjScEpaGQK/z55+En494mNAt4bhtrf3+Z7imVkCgvw+qPwJBTQBRGXkf8yua+SFTDRvqmG8PeX4HOa+Fl4Dsbfny/ju0pZfn+b77n0UHiMYgK/X4sr4D6apSyExxDwyyA5ORkmxfP+HvnpypXn72QvdyheuHmoIPXtSVOh+vLlS47n2dnZ8PPzg7GxMWrWrKmkrIiIiIiI6GfBy4bph4wcORJfvnyBi4sL0tPTcfDgQVy+fBkLFiz4odmCiYiIiIjoB6jxbMMFjcUr/ZCmTZti2bJlOH78ONLS0lC+fHn4+flhxIgRyk6NiIiIiIh+Aixe6Yf06tULvXr1UnYaRERERERFmxrPNlzQeGaIiIiIiIhI5bHzSkREREREpCqKwJjXyMhIPH/+HAkJCTJni+7Xr59ccVm8EhERERERkWDPnj1Dnz59EBERkectjkQiEYtXIiIiIiIitafGndfBgwfj7t27WLlyJdzc3GBmJvye9P/G4pWIiIiIiIgEu3TpEqZOnYqRI0cWSHwWr0RERERERKpCjWcbtrS0hImJSYHFV98zQ0RERERERCpjyJAh+N///ofs7OwCic/OKxEREREREQlWoUIFZGdno1q1ahgwYABKly4NTU3NXNt17txZrvgsXomIiIiIiFSFGk/Y5OXlJf3/+PHjZW4jEonk7syyeCUiIiIiIqVLSkqCsbGxstMgAUJDQws0PotXIiIiIiIiVaHGnVd3d/cCjc/ilYiIiIiIiBQqMjISMTExAIAyZcrA2dlZcEwWr0RERERERKpCjW+VAwBHjhzB2LFjER0dnWO5vb09li9fjg4dOsgdW73PDBEREREREamEwMBAdOnSBQCwYMECHDp0CIcOHcKCBQsgkUjQuXNnnDp1Su747LwSERERERGpCjUe8zp37lxUrVoVYWFhMDAwkC7v0KEDRowYgYYNG2L27Nlo3bq1XPHZeSUiIiIiIiLB7ty5A29v7xyF61cGBgbw8fHBnTt35I7PzisREREREZGqUOMxr7q6uvj48WOe6z9+/AhdXV2546vvmSEiIiIiIiKV0bRpU6xatQrh4eG51l29ehV//vknmjdvLnd8kUQikQhJkIjylpycDBMTE7yISxR00+2UTOG5FBP4UZW1vgLGX8S+Fx4jK1t4GpbFBcew1BMcAvpaAs9pcqrwJFLThccwlP8TVCltLeExPn4SHqOYprD9FXE+k78Ij2FnKTxG7AfhMcRi4TG0BV4kJnR/ADAU/g2fKOB3wFepWYJDIFUBv0+s9YXtnyH8xzhiFfDtrq+At0YpI+ExPgj8lk9TwPvCWEd4jDgBv5JSPiXDrbwpkpKSBP29VGSkpMlerojftwUsKioKLi4ueP/+PerWrQtHR0cAwKNHjxAREQFra2uEh4ejbNmycsVn55WIiIiIiIgEs7e3x507dzBq1CgkJCRgz5492LNnDxISEjB69Gjcvn1b7sIV4JhXIiIiIiIi1aHGsw0DgLW1NVasWIEVK1YoPDY7r0RERERERKTy2HklIiIiIiJSFWo823BB45khIiIiIiIilcfOKxERERERkapQ8zGvBYmdVyIiIiIiIlJ5LF6JiIiIiEjpTExMIBKJcj1+Ohoi2Q81MGfOHNy7dy/P9ffv38ecOXPkjs/ilYiIiIiIiATz9fXFnTt38lx/7949zJ49W+74HPNKRERERESkKorwbMMfP36Etra23PuzeCUiIiIiIiK5XLhwAefOnZM+P3jwIJ4+fZpru8TEROzZswdVqlSR+1gsXomIiIiIiFSFmoxv/So0NFR6KbBIJMLBgwdx8OBBmds6OzvDz89P7mOxeCUiIiIiIiK5TJw4ESNGjIBEIoG1tTXWrVuHLl265NhGJBJBX18furq6go7F4pWIiIiIiIjkoqenBz09PQBAVFQUrK2tpc8VreiOBiYiIiIiIqJCIxaLERISkuf6Y8eOITo6Wu747LwSERERERGpCLFE9nJ1GAo7fvx4JCcno3379jLXr169Gqampti9e7dc8dl5JSIiIiIiIsHCw8PRokWLPNc3a9YMYWFhcsdn55WIiIiIiEhFqHPnNSEhAUZGRnmuNzQ0RHx8vNzx2XklIiIiIiIiwezs7HDp0qU814eFhaFUqVJyx2fxSkREREREpCLEEtkPddCzZ0/s2rULf/75J8RisXR5dnY2Vq1ahT179qBXr15yx+dlw0RERERERCTYlClTcPHiRYwZMwbz58+Ho6MjAODRo0d4//49GjdujGnTpskdn53Xn9C1a9fQoEEDGBgYQCQSoVOnThCJ1OAiejlER0dDJBJh27Zt393Wx8cHZcuWLfCciIiIiIiKIh0dHQQHB2Pz5s2oW7cuPnz4gA8fPqBu3brYsmULQkJCoKOjI3d8dl5/MpmZmejWrRt0dXWxYsUK6Ovr49q1a8pOi4iIiIiIoD6XCOdFQ0MD/fv3R//+/RUem8XrT+bZs2eIiYnBxo0bMXDgQADA06dPlZxVwSlTpgy+fPkCLS0tZadCREREREQCsHj9ycTFxQEATE1NlZtIIRGJRNDV1VV2GkREREREP0T8/U1U2tu3b7F582bcuHEDSUlJOSZuAv75+/zMmTNyxeaY15+Ij48P3N3dAQDdunWDSCRC48aNZW67detWNG3aFNbW1tDR0YGzszPWrl2bY5t27drBwcFB5v4uLi6oXbt2vuIBQNmyZdGuXTtcvHgRdevWha6uLhwcHLB9+/Zc2z5//hzdunWDubk59PX1Ub9+fZw4cSLHNnmNeT18+DAqV64MXV1dVK5cGYcOHZL5Onbv3o1atWrByMgIxsbGqFKlClatWiVzWyIiIiKin9mdO3fg7OyMefPm4dmzZwgNDcX79+/x5MkTnDt3Di9evIBEIv910SxefyKDBw/G1KlTAQCjRo3Cjh078pzta+3atShTpgymTp2KZcuWoXTp0hg2bBhWr14t3cbLywtRUVG5xszGxMTgypUr6NGjR77iffX06VN07doVLVq0wLJly2BmZgYfHx/cv39fus27d+/QoEEDBAUFYdiwYZg/fz7S0tLQoUOHPAvRr4KDg9GlSxeIRCIsXLgQnTp1Qv/+/fH333/n2O706dPo2bMnzMzMsHjxYixatAiNGzf+5r2riIiIiIiEUOdb5UyePBmGhoZ49OgRQkJCIJFIsGrVKrx48QJ79uxBQkICFi1aJHd8Xjb8E3FxcUF6ejoWLFgANzc3dO3aFQBkFmPnz5+Hnp6e9PmIESPQunVrLF++HMOHDwcAdOzYETo6OtizZw/q1Kkj3Xbv3r0QiUTo3r17vuJ99ejRI1y4cAFubm4AgO7du6N06dLYunUrli5dCgBYtGgR3r17h7CwMDRs2BAA8Ntvv6Fq1aoYO3YsOnbsCA0N2Z/NTJo0CcWLF8fFixdhYmICAHB3d0fLli1RpkwZ6XYnTpyAsbExgoKCoKmp+b3TCwBIT09Henq69HlycvIP7UdEREREpO4uXbqEiRMnws7ODh8/fgQA6WXD3bp1w8WLFzFhwgScP39ervjsvJJM/y40k5KS8OHDB7i7u+P58+dISkoCABgbG6NNmzbYu3dvjvb/nj17UL9+fdjZ2eUr3lfOzs7SwhUArKys4OjoiOfPn0uXBQYGom7dutLCFQAMDQ0xaNAgREdHIzIyUubrevPmDW7dugVvb29p4QoALVq0gLOzc45tTU1N8fnzZ5w+ffrbJ+tfFi5cCBMTE+mjdOnSP7wvEREREZE6d17FYjGKFy8O4J+/pTU1NaVFLABUqVIF169flzs+i1eS6dKlS2jevDkMDAxgamoKKysr6SXH/y42vby88OLFC4SHhwP4Zzbj69evw8vLS654AHIUvV+ZmZkhISFB+jwmJkZ60+N/q1ixonS9LF+X//LLL7nW/TfesGHDUKFCBbRp0walSpXCgAEDcOrUKZlxv5oyZQqSkpKkjxcvXnxzeyIiIiKiosLe3h5RUVEA/rlljr29PUJCQqTrL1++LGjiWBavlMuzZ8/QrFkzfPjwAcuXL8eJEydw+vRp/P777wCQY8aw9u3bQ19fH3v37gXwzyXDGhoa6Natm1zxAOR5ia6Qwd3ysLa2xq1bt3D06FF06NABoaGhaNOmDby9vfPcR0dHB8bGxjkeREREREQ/Sp07ry1btsS+ffukz4cOHYpNmzahefPmaNasGfz9/dGrVy+543PMK+Vy7NgxpKen4+jRozm6oKGhobm2NTAwQLt27bBv3z4sX74ce/bsgZubG0qUKCFXvB9VpkwZPHr0KNfyhw8fStfntR8APHnyJNc6WfG0tbXRvn17tG/fHmKxGMOGDcP69esxY8YMlC9fXu78iYiIiIiKmmnTpqFnz57IzMyElpYWxowZg8+fP+PAgQPQ1NTEjBkzpFdfyoOdV8rla+fz353OpKQkbN26Veb2Xl5eeP36NTZt2oTbt2/numQ4v/F+hIeHByIiIqSXKwPA58+fsWHDBpQtWzbX+NWvbG1tUb16dfj7++e4XPn06dO5xsnGx8fneK6hoYGqVasCQI5JmYiIiIiIFEWdO69mZmaoVasWtLS0APxzT9fp06fj5s2b+Pvvv+Hr6wttbW2547PzSrm0bNlS2nEcPHgwUlJSsHHjRlhbW+PNmze5tvfw8ICRkRHGjx8PTU1NdOnSRVC8HzF58mTs2rULbdq0wahRo2Bubg5/f39ERUXhwIEDec40DPwzqVLbtm3RsGFDDBgwAB8/foSfnx8qVaqElJQU6XYDBw7Ex48f0bRpU5QqVQoxMTHw8/ND9erVpWNriYiIiIgot7i4OERHRwMAypYtC2tra8Ex2XmlXBwdHbF//36IRCKMHz8e69atw6BBgzB69GiZ2+vq6qJDhw749OkTmjRpkuuNmd94P6J48eK4fPkyWrRoAT8/P0yZMgXa2to4duwYPD09v7lv69atsW/fPmRnZ2PKlCk4ePAgtm7ditq1a+fYrk+fPtDV1cWaNWswbNgw+Pv7w8vLCydPnvxmcUxEREREJC917rwCwJkzZ1C7dm3Y2trCxcUFLi4usLW1Re3atXNM3iQPkaSwZ8Eh+okkJyfDxMQEL+ISBU3elJIpPJdiAutta32R8CRi3wuPkZUtPA3L4oJjWOp9f5vv0dcSeE6TU4UnkaqAS+ANdYXH0NYSHuPjJ+Exiv3YPZ3zpIjzmfxFeAw7S+ExYj8Ij/GfCfnkoi3wIjGh+wOAofBv+EQFTOCXmiU4BFIV8PvEWl/Y/hnCf4wjVgHf7voKeGuUMhIe44PAb/k0BbwvjHWEx4gT8Csp5VMy3Mqb5rn+ZytX8npPKOJvj4J26NAhdOvWDcWLF0e/fv1QoUIFAP/MLbNjxw7ExcVh796932025YWXDRMREREREakIdeqy/tf06dNRuXJlhIWFwcgo56c7U6dORcOGDTF9+nS5i1de+0hERERERESCPX/+HP37989VuAKAsbExfv31V+l9YOXBzisREREREZGKUOfOq5OTE+Li4vJc/+7dO+mlxPJg55WIiIiIiIgEW7JkCdatW4cjR47kWnfo0CGsX78eS5culTs+O69EREREREQqQp07r35+frCyskLnzp1RokQJlC9fHgDw9OlTvH79GhUqVMCff/6JP//8U7qPSCSSWezKwuKViIiIiIiIBLtz5w5EIhHs7OwAQHqf12LFisHOzg5paWm4e/dujn1Eoh+/+wKLVyIiIiIiIhWhzp3Xr8VqQeGYVyIiIiIiIlJ57LwSERERERGpCHXuvH6VmZmJV69eISEhARJJ7hdUs2ZNueKyeCUiIiIiIiLBEhMTMX78eAQEBCAjIyPXeolEApFIhOzsbLnis3glIiIiIiJSEWIZncp//PjERsri4+ODY8eOoUePHqhXrx5MTEwUGp/FKxEREREREQkWHByMUaNGYcWKFQUSn8UrERERERGRihArOwEBLCwspPd2LQicbZiIiIiIiJQuKSkJEokk14PUx6BBg7B7926IxQVTgrPzSkREREREpCLUebbhGTNmID09HbVr10bfvn1RqlQpaGpq5tquc+fOcsVn8UpERERERESCvXr1CmfPnsWtW7dw69YtmdtwtmEiIiIiIiJSqgEDBuDGjRuYMmUKZxsmIiIiIiIqytT5suGLFy9i0qRJmD17doHE54RNREREREREJJiNjQ3Mzc0LLD6LVyIiIiIiIhUhlsh+qINx48Zh06ZNSElJKZD4vGyYiIiIiIiIBEtLS4OWlhbKly+P7t27o3Tp0rlmGxaJRPj999/lii+S8OZJRAUmOTkZJiYmSEpKgrGxsfyBMrIUl5S80jIEh4iFnuAYdvgiOIbYSHgeGndjBMeAuaGw/ZOFnwvBOQAQFzcVHOPxR8Eh4PT4sfAgjiWE7f82UXgOimAs/D2OYrlvbZBviniPaiv/c/YP1laCYyQL/xEKbQV8Saz1hccoJvC6PY0vwk/GrRRtwTHMdQWHgKmO8BjGIvlmXf3q6Wfhb4yyCphT5/wL+UuKz5+S0bGKmfC/l4qIyHjZ59LZQlTImeSfhsb3f0BwtmEiIiIiIiJSqqioqAKNz+KViIiIiIhIRajL+FZZypQpU6DxOWETERERERERqTx2XomIiIiIiFSEOnVe7e3toaGhgYcPH0JLSwv29vYQib49NlckEuHZs2dyHY/FKxEREREREeWbu7s7RCKRdKKmr88LCotXIiIiIiIiFaFOnddt27Z987miccwrERERERERqTwWr0RERERERCpCLJH9UEXh4eGFui+LVyIiIiIiUjoTExOIRKIcD1JtTZs2RZMmTbB3716kpqZ+d/uUlBTs3LkTjRo1QrNmzfJ9PI55JSIiIiIiUhGq2mWV5fHjx5gzZw769u0LLS0t1KtXDzVr1oS9vT3MzMwgkUiQkJCAqKgo/P3334iIiEBWVhb69euHgICAfB+PxSsRERERERHlW+nSpbFx40YsXLgQO3bswJEjR7BmzRp8+fIlx3Z6enqoXbs25s2bh759+8LKykqu47F4JSIiIiIiUhHq1Hn9ytLSEr///jt+//13ZGVlITY2FvHx8QAACwsL2NnZoVgx4aUni1ciIiIiIiJSiGLFisHBwQEODg6Kj63wiERERERERCQXdey8FhbONkxEREREREQqj51XIiIiIiIiFSFWdgIqjJ1XIiIiIiIiUnnsvBIREREREakIjnnNGzuvREREREREpFBv3rzB7du38fnzZ4XFZPFKRERERESkIsQS2Q91ceTIETg5OaFUqVKoWbMmrl69CgD48OEDatSogcOHD8sdm8UrERERERERCXbs2DF07twZlpaWmDVrFiSS/6u6LS0tUbJkSWzdulXu+CxeiYiIiIiIVIQ6d17nzJmDRo0a4eLFixg+fHiu9S4uLrh586bc8Vm8Ksi5c+cgEolw7ty5Aom/bds2iEQiREdHS5c1btwYjRs3liuej48PypYtq5DcCsK7d+/QtWtXWFhYQCQSYeXKlYV6/OjoaIhEIixdurRQj0tEREREpK7u3buH7t2757m+ePHiiIuLkzs+ZxsmAEBqaiqWLFkiqCBWpN9//x1BQUGYNWsWbGxsULt2bWWnRERERERU4NSlyyqLvr7+Nydoev78OSwsLOSOz+JVjQUHB8u978aNGyEW/98tkFNTUzF79mwAUIni9ezZs+jYsSPGjx+v7FSIiIiIiOgHNGnSBP7+/hgzZkyudW/fvsXGjRvRrl07ueOzeFVj2tracu+rpaWlwEwULy4uDqampspOg4iIiIioUKlz53X+/PmoX78+6tSpg27dukEkEiEoKAhnz57F+vXrIZFIMGvWLLnjc8zrd8TExGDYsGFwdHSEnp4eLCws0K1btxxjT7/l6tWr8PDwgJmZGQwMDFC1alWsWrVKuv7OnTvw8fGBg4MDdHV1YWNjgwEDBiA+Pv67sf97ie/Xcbd79+7F/PnzUapUKejq6qJZs2Z4+vRpjn3/PeY1OjoaVlZWAIDZs2dDJBJBJBLB19cXW7duhUgkkjmwesGCBdDU1MSrV69+6FwA/1wq0K1bN5ibm0NfXx/169fHiRMnpOu/ju2VSCRYvXq1NJcftXXrVjRt2hTW1tbQ0dGBs7Mz1q5dm2u7v//+G61atYKlpSX09PRgb2+PAQMGyIy5YcMGlCtXDjo6OqhTpw6uXbv2w/kQEREREf0sHB0dcfHiRVhYWGDGjBmQSCT4448/sGDBAlSpUgVhYWGC5t1h5/U7rl27hsuXL6NHjx4oVaoUoqOjsXbtWjRu3BiRkZHQ19fPc9/Tp0+jXbt2sLW1xejRo2FjY4MHDx7g+PHjGD16tHSb58+fo3///rCxscH9+/exYcMG3L9/H1euXMlX4fbVokWLoKGhgfHjxyMpKQlLlixB7969pfdY+i8rKyusXbsWQ4cOhaenJzp37gwAqFq1Kuzt7TF8+HAEBASgRo0aOfYLCAhA48aNUbJkyR/K6927d2jQoAFSU1MxatQoWFhYwN/fHx06dMD+/fvh6emJRo0aYceOHejbty9atGiBfv365eu1r127FpUqVUKHDh1QrFgxHDt2DMOGDYNYLJbOeBYXF4eWLVvCysoKkydPhqmpKaKjo3Hw4MFc8Xbu3IlPnz5h8ODBEIlEWLJkCTp37oznz5+rfPeaiIiIiKiwVapUCSEhIUhISMDTp08hFovh4OAgbZYJweL1O9q2bYuuXbvmWNa+fXu4uLjgwIED6Nu3r8z9srOzMXjwYNja2uLWrVs5LoH99/2Ohg0bhnHjxuXYt379+ujZsycuXrwINze3fOeclpaGW7duSS8rNjMzw+jRo3Hv3j1Urlw51/YGBgbo2rUrhg4diqpVq6JPnz451nfq1Am7du3CkiVLoKHxT7P+5s2biIyMxIQJE344r0WLFuHdu3cICwtDw4YNAQC//fYbqlatirFjx6Jjx45wcHCAg4MD+vbtiwoVKuTK5XvOnz8PPT096fMRI0agdevWWL58ubR4vXz5MhISEhAcHJxjIqh58+blihcbG4snT57AzMwMwD+fJnXs2BFBQUEyr9dPT09Henq69HlycnK+8iciIiKin5s6Xzb8b2ZmZqhTp45CY7J4/Y5/F0KZmZlITk5G+fLlYWpqihs3buRZvN68eRNRUVFYsWJFrrGb/+6m/jt+WloaUlJSUL9+fQDAjRs35Cpe+/fvn2M87NcYz58/l1m8fk+/fv2wa9cuhIaGolmzZgD+6brq6emhS5cuPxwnMDAQdevWlRauAGBoaIhBgwZhypQpiIyMlCu/f/v3+UxKSkJmZibc3d0RFBSEpKQkmJiYSL8ex48fR7Vq1b7ZQfXy8pIWrkDOcynLwoULpRNfERERERH9TLZv3/5D2+X36sqvWLx+x5cvX7Bw4UJs3boVr169ytE1TUpKynO/Z8+eAcB3i7GPHz9i9uzZ2L17d657Hn0r/rfY2dnleP61+EpISJArXosWLWBra4uAgAA0a9YMYrEYu3btQseOHWFkZPTDcWJiYlCvXr1cyytWrChdL7R4vXTpEmbNmoXw8HCkpqbmWPe1eHV3d0eXLl0we/ZsrFixAo0bN0anTp3Qq1cv6Ojo5Ngnv+dyypQpGDt2rPR5cnIySpcuLeg1EREREdHPQ507rz4+Pnmu+3cDj8VrARk5ciS2bt2KMWPGwMXFBSYmJhCJROjRo0eOW83Iq3v37rh8+TImTJiA6tWrw9DQEGKxGK1bt5Y7vqampszl/y688xuvV69e2LhxI9asWYNLly7h9evX+b6kt6A9e/YMzZo1g5OTE5YvX47SpUtDW1sbgYGBWLFihfR8ikQi7N+/H1euXMGxY8cQFBSEAQMGYNmyZbhy5QoMDQ2lMfN7LnV0dHIVwEREREREP4OoqKhcy7KzsxEdHY01a9YgNjYW/v7+csdn8fod+/fvh7e3N5YtWyZdlpaWhsTExG/uV65cOQDAvXv30Lx5c5nbJCQk4MyZM5g9ezZmzpwpXf7kyRPhiefT9yaG6tevH5YtW4Zjx47h5MmTsLKyQqtWrfJ1jDJlyuDRo0e5lj98+FC6Xohjx44hPT0dR48ezdExDQ0Nlbl9/fr1Ub9+fcyfPx87d+5E7969sXv3bgwcOFBQHkRERERE8lLnzmtef887ODigadOmaNu2Lf766y+sXr1arvi8Vc53aGpq5uqy+fn5ITs7+5v71axZE/b29li5cmWuQvdrvK9dvf/GX7lypbCk5fB11uS8ivKqVauiatWq2LRpEw4cOIAePXqgWLH8ffbh4eGBiIgIhIeHS5d9/vwZGzZsQNmyZeHs7Cx3/oDs85mUlIStW7fm2C4hISHXOa9evToA5JhsiYiIiIiIFKddu3bYs2eP3Puz8/od7dq1w44dO2BiYgJnZ2eEh4cjJCQEFhYW39xPQ0MDa9euRfv27VG9enX0798ftra2ePjwIe7fv4+goCAYGxujUaNGWLJkCTIzM1GyZEkEBwfLbLcXND09PTg7O2PPnj2oUKECzM3NUbly5RxjUPv164fx48cDgFyXDE+ePBm7du1CmzZtMGrUKJibm8Pf3x9RUVE4cOCAdCZjebVs2RLa2tpo3749Bg8ejJSUFGzcuBHW1tZ48+aNdDt/f3+sWbMGnp6eKFeuHD59+oSNGzfC2NgYHh4egnIgIiIiIhJCnTuv3/Ps2TNBzSIWr9+xatUqaGpqIiAgAGlpaXB1dUVISMgPXTLbqlUrhIaGYvbs2Vi2bBnEYjHKlSuH3377TbrNzp07MXLkSKxevRoSiQQtW7bEyZMnUaJEiYJ8WTJt2rQJI0eOxO+//46MjAzMmjUrR/Hau3dvTJo0CeXKlUPdunXzHb948eK4fPkyJk2aBD8/P6SlpaFq1ao4duwY2rZtKzh/R0dH7N+/H9OnT8f48eNhY2ODoUOHwsrKCgMGDJBu5+7ujoiICOzevRvv3r2DiYkJ6tati4CAANjb2wvOg4iIiIjoZ3ThwgWZyxMTE3HhwgX8+eef6NSpk9zxRRJ5Z/Ghn86HDx9ga2uLmTNnYsaMGcpORy0kJyfDxMQESUlJMDY2lj9QRpbikpJXWobgELHQ+/5G32GHL4JjiI2E56FxN0ZwDJgbfn+bb0kWfi4E5wBAXNxUcIzHHwWHgNPjx8KDOAr84PBtovAcFMFY+HscxWRPWJcviniPaiv/c/YP1laCYyQL/xEKbQV8Saz1hccoJnDQmcYX4SfjVor29zf6DnNdwSFgqoA5Go1F3x6K9j1PPwt/Y5Q1ERwC51/IX1J8/pSMjlXMZK77GUuVo09lv+YO5b89R40q0NDQkDmXjkQigaamJrp16wY/P7/vXsWaF+X/RiC1sW3bNmRnZ+d5b1siIiIiIvp5yZooVSQSwczMDGXKlBHWzAGLV/oBZ8+eRWRkJObPn49OnTqhbNmyOdZ/+fLlu/ekNTc3h7a2/J+Svn379pvr9fT0YGKigI8NiYiIiIiUSJ3HvLq7uxdofBav9F1z5szB5cuX4erqCj8/v1zr9+zZg/79+38zRmhoKBo3bix3Dra2tt9c7+3tjW3btskdn4iIiIiIVBuLV/quc+fOfXN9q1atcPr06W9uU61aNUE5fC++Mia4IiIiIiJSNHXqvNrb28sc4/otIpEIz549k+t4LF5JMFtb2+92RoVq3rx5gcYnIiIiIqL8cXd3z3fxKgSLVyIiIiIiIhUhVnYC+VDYw/YETnZOREREREREVPDYeSUiIiIiIlIR6jTmNS+ZmZl4+PAhkpKSIBbn7iU3atRIrrgsXomIiIiIiEgwsViMKVOmYM2aNUhNTc1zu+zsbLni87JhIiIiIiIiFSGWyH6ogwULFuCPP/5Anz59sH37dkgkEixatAjr1q1D1apVUa1aNQQFBckdn8UrERERERERCbZt2zZ0794da9euRevWrQEAtWrVwm+//YarV69CJBLh7Nmzcsdn8UpERERERKQi1Lnz+vLlSzRt2hQAoKOjAwBIS0sDAGhra6NPnz7YsWOH3PFZvBIRERERkdIlJSVBIpHkeJB6sbCwQEpKCgDA0NAQxsbGeP78eY5tEhIS5I7PCZuIiIiIiIhUhDjPol1UqHnIo0aNGrh27Zr0eZMmTbBy5UrUqFEDYrEYf/75J6pVqyZ3fHZeiYiIiIiISLBBgwYhPT0d6enpAID58+cjMTERjRo1gru7O5KTk7Fs2TK547PzSkREREREpCLUZXyrLB06dECHDh2kz52dnfHs2TOcO3cOmpqaaNCgAczNzeWOz+KViIiIiIiIBJNIJBCJcl7ebGJigo4dOyokPi8bJiIiIiIiUhHqPNtwyZIlMXr0aFy+fLlA4rN4JSIiIiIiIsHc3d2xZcsWuLm5wc7ODuPHj0dERITC4rN4JSIiIiIiUhHq3HndtWsX4uLisHv3btStWxdr166Fi4sLypUrh6lTp+LWrVuC4rN4JSIiIiIiIoXQ09NDt27dsH//fsTFxeF///sfqlSpghUrVqBWrVpwcnKSO7ZIwrv/EhWY5ORkmJiYIOhBIgyMjOWO4/rplfBkyloL2z8tU3AKGUb6gmNoS8SCY3zIEP65namu4BBIyRCYQ2qK8CT0dQSHeJyqJThGRrbgEKj8JkZ4kKplhe2fkSU8h7fy37z9K3FpS+F5KIDGg5fCg5SyELZ/cqoCchB+Pl+nCP9zq8THD4JjKOQ9qiHwXpPWJsJzKKYpOMTbbOE/u2ziFfA1SUkTtr+dAr7ftYWfCyHvi+TkZJhYmCMpKQnGxvL/vVRUbLkr+2+dAVXUt++YkpKCbdu2Ydq0aUhJSUF2tny/+DnbMBERERERkYpQl0uEvyc1NRVHjx7F3r17cerUKaSnp6NcuXIYNWqU3DFZvBIREREREZFgaWlpOHHiBPbs2YPAwECkpqaibNmyGDVqFLy8vFCjRg1B8Vm8EhERERERqQh17rxaWVkhNTUVJUqUwKBBg+Dl5YV69eopLD6LVyIiIiIiIhLMx8cHXl5eaNiwYYHEZ/FKRERERESkItS58+rn51eg8dV3yioiIiIiIiL6abDzSkREREREpCLUufNa0Nh5JSIiIiIiIpXHzisRERERESmdiYlJjucSyc/ZghQrOwEVxs4rERERERERqTwWr0RERERERCpCLJH9UGVBQUFo06YNnJyc4OrqilWrVhXIcXjZMBEREREREcnl/Pnz8PDwgEQigaWlJZ49e4YrV67g1atXWLJkiUKPxc4rERERERGRilC3zuuCBQtQvHhx3LlzB3FxcYiLi0OTJk2wevVqfPnyRaHHYvFKREREREREcrl37x6GDRuGypUrAwDMzMywYMECfPnyBffv31fosXjZMBERERERkYpQ5S6rLG/fvoW9vX2OZQ4ODgCAT58+KfRY7LwSERERERGRXCQSCUQiUY5lX58r+nZH7LwSERERERGpCHXrvALA9u3bceXKFenztLQ0iEQi/PXXXzh8+HCObUUikdyzEbN4JSIiIiIiIrkFBwcjODg41/L/Fq4Ai1ciIiIiIqIiQd06r2KxuNCOxTGvREREREREVCgSEhLk3pfFKxERERERkYpQt/u8/oj09HTs27cPnTp1gq2trdxxeNkwERERERERKZREIsGZM2cQEBCAQ4cOITk5GVZWVujVq5fcMVm8Esng4+OD/fv3IyUlRdmpEBEREdFPRN27rNevX0dAQAB2796Nt2/fQiQSoUePHhgxYgTq16+f67Y6+cHilYiIiIiIiOT2/PlzBAQEICAgAE+ePEHJkiXRu3dv1K1bF15eXujSpQtcXFwEH4fFKxERERERkYpQt86ri4sLIiIiYGlpia5du2LTpk1o2LAhAODZs2cKPRaLVyIiIiIiIpLL1atXYW9vj+XLl6Nt27YoVqzgSkzONkxFRkxMDIYNGwZHR0fo6enBwsIC3bp1Q3R0dI7tMjMzMXv2bPzyyy/Q1dWFhYUFGjZsiNOnT+eK+erVK3Tq1AmGhoawsrLC+PHjkZ2dXUiviIiIiIh+Nuo22/Bff/0FW1tbeHp6wsbGBoMHD0ZoaCgkEsUnzc4rFRnXrl3D5cuX0aNHD5QqVQrR0dFYu3YtGjdujMjISOjr6wMAfH19sXDhQgwcOBB169ZFcnIy/v77b9y4cQMtWrSQxsvOzkarVq1Qr149LF26FCEhIVi2bBnKlSuHoUOHKutlEhERERGpjGHDhmHYsGGIiopCQEAAdu7ciY0bN8LGxgZNmjSBSCQSNEnTv7F4pSKjbdu26Nq1a45l7du3h4uLCw4cOIC+ffsCAE6cOAEPDw9s2LDhm/HS0tLg5eWFGTNmAACGDBmCmjVrYvPmzXkWr+np6UhPT5c+T05OFvKSiIiIiOgno8pd1m+xt7fH9OnTMX36dOmMw3v27IFEIsGwYcNw8uRJdOjQAc2bN4eurq5cx+Blw1Rk6OnpSf+fmZmJ+Ph4lC9fHqamprhx44Z0nampKe7fv48nT558N+aQIUNyPHdzc8Pz58/z3H7hwoUwMTGRPkqXLi3HKyEiIiIiUl+1atXC8uXL8eLFCwQHB6NVq1bYs2cPOnToAEtLS7njsnilIuPLly+YOXMmSpcuDR0dHVhaWsLKygqJiYlISkqSbjdnzhwkJiaiQoUKqFKlCiZMmIA7d+7kiqerqwsrK6scy8zMzJCQkJBnDlOmTEFSUpL08eLFC8W9QCIiIiIiNaKhoYHmzZtj27ZtePfuHXbt2oVmzZrJH0+BuREp1ciRIzF//nx0794de/fuRXBwME6fPg0LCwuIxWLpdo0aNcKzZ8+wZcsWVK5cGZs2bULNmjWxadOmHPE0NTXznYOOjg6MjY1zPIiIiIiIfpS6Tdj0o3R1deHl5YUjR47IHYNjXqnI2L9/P7y9vbFs2TLpsrS0NCQmJuba1tzcHP3790f//v2RkpKCRo0awdfXFwMHDizEjImIiIiI1NvBgwfztb1IJIKnp6dcx2LxSkWGpqZmrim5/fz8ct3aJj4+HhYWFtLnhoaGKF++PC/xJSIiIiKlE39/E5XStWtXiESiHH+Hf51dWNbtckQikdy3nmTxSkVGu3btsGPHDpiYmMDZ2Rnh4eEICQnJUagCgLOzMxo3boxatWrB3Nwcf//9N/bv348RI0YoKXMiIiIiIvUUGhqa43liYiI8PT2xdOlS1KpVS6HHYvFKRcaqVaugqamJgIAApKWlwdXVFSEhIWjVqlWO7UaNGoWjR48iODgY6enpKFOmDObNm4cJEyYoKXMiIiIion+o2/hWd3f3HM/j4+MBANWrV8+1TiiRRFYvl4gUIjk5GSYmJgh6kAgDI/knb3L99Ep4MmWthe2flik4hQwjfcExtCXCL6b5kCF8rjpT+W5PlkNKhsAcUlOEJ6GvIzjE41QtwTEy5Lt6KIfKb2KEB6laVtj+GVnCc3ib94zmP0pcWv7bECiSxoOXwoOUsvj+Nt+SnKqAHISfz9cpwv/cKvHxg+AYCnmPaoiE7W9tIjyHYvmfVPG/3mYL/9llE6+Ar0lKmrD97RTw/a4t/FwIeV8kJyfDxMI81/KftUyZGib7b50Fbuox1258fDysrKwQEhKCpk2bKjQ2O69EREREREQqQt06r4VJPcp3IiIiIiIi+qmx80pERERERKQiikrn9euMw4rE4pWIiIiIiIjk0qFDhxzPMzP/mSdl2rRpsLTMPSZbJBLhyJEjch2LxSsREREREZGKULfO6507d3J1WcuUKYM3b97gzZs3ubYX0pFl8UpERERERERyiY6OLrRjsXglIiIiIiJSEerWeS1MLF6JiIiIiIhI4R4+fIh9+/bhzZs3cHR0RP/+/WFsbCx3PBavREREREREKkLdOq9//fUX/vzzT1y+fDnHBE3Hjh1Dt27dkJGRIV3m5+eHK1euyJzI6UfwPq9EREREREQkl6NHj6JcuXI5CtKsrCwMHDgQmpqa2Lp1K+7evYtFixYhJiYG8+fPl/tYLF6JiIiIiIhUhFgi+6GqIiMjUb9+/RzLQkND8f79e/z+++/w9vZGpUqVMHHiRHTv3h2BgYFyH4vFKxEREREREcklPj4epUuXzrHszJkzEIlE8PT0zLHc1dUVsbGxch+LxSsRERERESldUlISJBKJ9PGzUrfOa/HixfH27dscy8LCwqCvr49q1arlWK6trQ1tbW25j8XilYiIiIiIiORSu3Zt+Pv749OnTwCA+/fvIyIiAq1atUKxYjnnB3748CFKlSol97E42zAREREREZGKEKtZ13nWrFmoU6cOfvnlF1SqVAnXr1+HSCTClClTcm176NAhNG3aVO5jsfNKREREREREcqlSpQrOnj2LWrVq4fXr16hfvz4CAwNRq1atHNudO3cO+vr66Natm9zHYueViIiIiIhIRajy+Na8NGjQACdOnPjmNo0bN8bdu3cFHYedVyIiIiIiIlJ57LwSERERERGpCHXsvBYWdl6JiIiIiIhI5bHzSkREREREpCKylZ2ACmPxSlQIShoCRkby759lW1JwDh++CNvfppjwH6Xarz4IjvG3tqXgGLXFCYJjpFiaCY5hqiHwnH5MEZwDjPUFh7AzFp6Grlj4++sOygiOkfFW2LVahlqagnMoZSP8PZ6RJjgEYj8Jj1G+vPz38vvq7Wdh+5tb6AnOwVwsFhyjRJrw79e0EsLfG7oaCrgeMTVd0O5iA13BKWiIRIJjGGf+v/buP77m+v//+P1s7LedGZsxZn6ErOS3/JjfxYhUo5TahHgrJXyU3n6lIj9S3h9vRbxNfeiHSe/yq1KTYvnxISGaDxlRfs1+GBu21/eP3jtfp+3YmXPYa9yul8u5XJzn6/l6nsd57rnZY4/X63ncMBdhrv9fIFfXVznXf+7oshvSpTQXvlmzMl1/fdwSSF4BAAAAwCS459Ux7nkFAAAAAJgelVcAAAAAMAkqr45ReQUAAAAAmB7JKwAAAADA9LhsGAAAAABMgsuGHaPyCgAAAAAwPSqvAAAAAGASVF4dI3kFAAAAUOqsVqvdc8Mgi4M9klcAAAAAMAkqr45xzysAAAAAwPSovAIAAACASVB5dYzKKwAAAADA9Ki8AgAAAIBJUHl1jMorAAAAAMD0qLwCAAAAgElQeXWMyisAAAAAwPSovAIAAACASVB5dYzKKwAAAADA9Ki8AgAAAIBJUHl1jMorAAAAAMD0SF5xU5g8ebIsFotOnz5d2qEAAAAA1yzfKPoBklcAAAAAQBnAPa8AAAAAYBL5pR2AiVF5BQAAAACYHskrbirp6emKj49XUFCQrFarBg4cqPPnz0uSDh8+LIvFooSEhELnWSwWTZ482a7t2LFjevLJJ1WlShV5e3srKipK//rXv27AuwAAAMCtinteHeOyYdxU+vXrp1q1amnatGnasWOHFi5cqNDQUE2fPr1E45w4cUJ33323LBaLnnnmGYWEhGjt2rUaNGiQMjMzNXLkyOvzBgAAAAAUieQVN5UmTZpo0aJFtudnzpzRokWLSpy8/v3vf1deXp52796tSpUqSZKGDRum/v37a/LkyRo6dKh8fX0LnZebm6vc3Fzb88zMzGt8JwAAALgVUWV1jMuGcVMZNmyY3fPo6GidOXOmREmkYRhasWKFevXqJcMwdPr0adujW7duysjI0I4dO4o8d9q0abJarbZHjRo1XHo/AAAAAP5E5RU3lYiICLvnFStWlCSdPXvW6TFOnTql9PR0LViwQAsWLCiyz8mTJ4tsHzdunEaNGmV7npmZSQILAAAAp1F5dYzkFTcVT0/PItsNw5DFYinyWF5ent3z/Pw/NygfMGCA4uLiijynUaNGRbZ7e3vL29vb2XABAAAAOInkFbeMgipsenq6XXtqaqrd85CQEFWoUEF5eXnq2rXrjQoPAAAAoPJ6FdzziltGYGCgKleurI0bN9q1z5s3z+65p6enHnroIa1YsUJ79uwpNM6pU6eua5wAAAAACqPyilvK4MGD9frrr2vw4MFq3ry5Nm7cqJSUlEL9Xn/9dSUlJalVq1YaMmSIGjZsqLS0NO3YsUPr169XWlpaKUQPAACAmx2VV8dIXnFLmThxok6dOqXExER9/PHHiomJ0dq1axUaGmrXr0qVKtq6daumTJmiTz75RPPmzVOlSpUUFRVV4o/dAQAAAOA6i2EY5PbAdZKZmSmr1ao9R9NVITDwmsepFuB6LKcvuHZ+mJHjehBp51weYrtXZZfHaJ7v/O7TjpyrXNHlMQKUV3ynqznihkvYI0OL71OMHDfcgeKT7+JcSPopo+gN20rioothBJR3OQRVr+D6GK6+D0k6kuX6GHWDXB/jj2zXzg/2cT2GYG83/Krkhp9/OUGuLw4fDze8l/O5xfe5inx/178oHg42YSyJ85dcnws/ww3fbP/ZKPKalXP9Z58uu+F9pF/7N2tmVqas9SILtd+qaUqnj4r+eiQ97IavdRlH5RUAAAAATILLhh1jwyYAAAAAgOlReQUAAAAAk6Dy6hiVVwAAAACA6VF5BQAAAACToPLqGJVXAAAAAIDpUXkFAAAAAJOg8uoYlVcAAAAAgOlReQUAAAAAk6Dy6hiVVwAAAACA6VF5BQAAAACToPLqGJVXAAAAAIDpUXkFAAAAAJPIL+0ATIzKKwAAAIBSl5GRIcMwbA/gr6i8AgAAAIBJcM+rY1ReAQAAAACmR+UVAAAAAEyCyqtjVF4BAAAAAKZH5RUAAAAATCKfzaocovIKAAAAADA9Kq8AAAAAYBLc8+oYlVcAAAAAgOlReQVugD2nDfnlXvuf0TJzLS7H0KCSa+f/dMbH5RgaBbs8hJrnX3B5jKT0IJfHCMlweQj5lfd06fzg6mGuB3HZ9SGCfFxfn18ddv1vqR4W1/9U3aWma3H8ke16DAGnz7o8hgJc/34NTktzPY4cb5eHqBsc4NoAl9xQwjBc+16VJLn6PiT5HPrD5THy67j+c8PDxbJQZq7LISgo0/UfwuUqBboeyMb9ro/RrLZr55/OdDmEnDAXf0mQ5BNc4dpPLkep8UpUXh2j8goAAAAAMD0qrwAAAABgElReHaPyCgAAAAAwPSqvAAAAAGASVF4do/IKAAAAADA9Kq8AAAAAYBJUXh2j8goAAAAAMD0qrwAAAABgElReHSN5BQAAAFDqrFarW8YxDLK/mxWXDQMAAAAATI/KKwAAAACYBJcNO0blFQAAAABgelReAQAAAMAkqLw6RuUVAAAAAGB6VF4BAAAAwCSovDpG5RUAAAAAYHpUXgEAAADAJPJLOwATo/IKAAAAADA9Kq8AAAAAYBLc8+oYlVcAAAAAgOlReQUAAAAAk6Dy6hiVV0kzZ85U7dq15enpqcaNG5d2OA4lJCTIYrFo+/btpRrHtm3b1KZNG/n7+8tisejHH38s1XgAAAAA3PxKnLzu3r1bsbGxqlmzpnx8fBQeHq577rlH//3f/3094rvuvvzyS40dO1Zt27bV4sWLNXXqVId9IyMjZbFYinzcdtttbotp3rx5SkhIcNt47nTp0iX17dtXaWlpevPNN/X++++rZs2abn+d48ePa/LkySTGAAAAuKXkG0U/UMLLhjdv3qxOnTopIiJCQ4YMUVhYmI4ePaoffvhBc+bM0YgRI65XnNfNN998Iw8PDy1atEheXl5X7fvWW2/p3Llzdm2pqakaP3687r33XrfFNG/ePFWuXFnx8fFuG9NdDh48qNTUVL377rsaPHjwdXud48eP6+WXX1ZkZKSpq+EAAAAAbowSJa+vvfaarFartm3bpqCgILtjJ0+edGdcN8zJkyfl6+tbbOIqSX369CnU9uqrr0qSHnvsMXeHVmqys7Pl7+9f5LGCr/Nfv/5lRU5Ojry8vOThwRXzAAAAMB+qrI6V6Df4gwcPKioqqsjEJTQ01Pbvw4cPy2KxFHnpq8Vi0eTJk23PJ0+eLIvFopSUFA0YMEBWq1UhISGaMGGCDMPQ0aNHdf/99yswMFBhYWF64403nIr18uXLeuWVV1SnTh15e3srMjJSL730knJzc+1iWbx4sbKzs22X/5b0ct1ly5apVq1aatOmjVtiioyM1N69e/Xtt9/aYurYsaPdOLm5uRo1apRCQkLk7++vBx54QKdOnSr0emvXrlV0dLT8/f1VoUIF9ezZU3v37rXrEx8fr4CAAB08eFA9evRQhQoVHCbi8fHx6tChgySpb9++hWLbv3+/YmNjFRwcLB8fHzVv3lyfffaZ3RhpaWkaM2aM7rzzTgUEBCgwMFAxMTHatWuXrc+GDRvUokULSdLAgQMLfW0iIyOLrEp37NjRLp4NGzbIYrHoww8/1Pjx4xUeHi4/Pz9lZmZKkrZs2aLu3bvLarXKz89PHTp00KZNm+zGzMrK0siRIxUZGSlvb2+Fhobqnnvu0Y4dO4qcIwAAAADXR4kqrzVr1lRycrL27NmjO+64w62BPPzww7r99tv1+uuva/Xq1Xr11VcVHBys+fPnq3Pnzpo+fbqWLl2qMWPGqEWLFmrfvv1Vxxs8eLCWLFmi2NhYjR49Wlu2bNG0adO0b98+rVy5UpL0/vvva8GCBdq6dasWLlwoSU4loQV27typffv26e9//7tT/Z2J6a233tKIESMUEBBgG7dKlSp244wYMUIVK1bUpEmTdPjwYb311lt65pln9NFHH9n6vP/++4qLi1O3bt00ffp0nT9/Xm+//bbatWunnTt3KjIy0tb38uXL6tatm9q1a6dZs2bJz8+vyPiHDh2q8PBwTZ06Vc8++6xatGhhi23v3r1q27atwsPD9eKLL8rf318ff/yx+vTpoxUrVuiBBx6QJB06dEiffvqp+vbtq1q1aunEiROaP3++OnTooJ9//lnVqlXT7bffrilTpmjixIl66qmnFB0dLalkX5srvfLKK/Ly8tKYMWOUm5srLy8vffPNN4qJiVGzZs00adIkeXh4aPHixercubO+++47tWzZUpI0bNgwJSYm6plnnlHDhg115swZff/999q3b5+aNm16TfEAAAAAjlB5daxEyeuYMWMUExOjxo0bq2XLloqOjlaXLl3UqVMnlS9f3qVAWrZsqfnz50uSnnrqKUVGRmr06NGaNm2aXnjhBUlS//79Va1aNf3rX/+6avK6a9cuLVmyRIMHD9a7774rSRo+fLhCQ0M1a9YsJSUlqVOnThowYIDWr1+vHTt2aMCAASWOeenSpZKcu2TY2Zj69Omj8ePHq3Llyg5jqlSpkr788ktZLBZJUn5+vv7xj38oIyNDVqtV586d07PPPqvBgwdrwYIFtvPi4uJUv359TZ061a49NzdXffv21bRp0676Hlq3bq3c3FxNnTpV0dHRio2NtR177rnnFBERoW3btsnb29v2/tq1a6cXXnjBlrzeeeedSklJsbts9/HHH1eDBg20aNEiTZgwQVWqVFFMTIwmTpyo1q1bX9PX5ko5OTnavn27fH19JUmGYWjYsGHq1KmT1q5da5vHoUOHKioqSuPHj9eXX34pSVq9erWGDBliV/EfO3asw9fKzc21q6QXVHkBAAAAuKZElw3fc889Sk5OVu/evbVr1y7NmDFD3bp1U3h4eKHLQ0vqys1/PD091bx5cxmGoUGDBtnag4KCVL9+fR06dOiqY61Zs0aSNGrUKLv20aNHS/ozIXFVfn6+PvzwQzVp0kS33357sf3dGdNTTz1lS7gkKTo6Wnl5eUpNTZUkffXVV0pPT1f//v11+vRp28PT01OtWrVSUlJSoTH/9re/Of36f5WWlqZvvvlG/fr1U1ZWlu31zpw5o27duunAgQM6duyYJMnb29uWuObl5enMmTMKCAhQ/fr1r9uluHFxcbbEVZJ+/PFHHThwQI8++qjOnDljizc7O1tdunTRxo0blZ+fL+nPNbdlyxYdP37cqdeaNm2arFar7VGjRo3r8p4AAABwc2K3YcdKVHmVpBYtWuiTTz7RxYsXtWvXLq1cuVJvvvmmYmNj9eOPP6phw4bXFEhERITdc6vVKh8fH1WuXLlQ+5kzZ646Vmpqqjw8PFS3bl279rCwMAUFBdmSPFd8++23OnbsmJ5//nmn+rszpr/OVcWKFSVJZ8+elSQdOHBAktS5c+cizw8MDLR7Xq5cOVWvXt3p1/+r//u//5NhGJowYYImTJhQZJ+TJ08qPDxc+fn5mjNnjubNm6dff/1VeXl5tj6VKlW65hiuplatWnbPC+YnLi7O4TkZGRmqWLGiZsyYobi4ONWoUUPNmjVTjx499MQTT6h27dpFnjdu3Di7P1BkZmaSwAIAAABuUOLktYCXl5datGihFi1aqF69eho4cKCWL1+uSZMm2VUFr3RlovJXnp6eTrVJf1726QxHcbjD0qVL5eHhof79+5foPHfEVNy8FFQN33//fYWFhRXqV66c/Zf9ymrotSh4vTFjxqhbt25F9ilI2qdOnaoJEyboySef1CuvvKLg4GB5eHho5MiRtnGKc7X1VdTcXFl1vTLemTNnOvwYnoCAAElSv379FB0drZUrV+rLL7/UzJkzNX36dH3yySeKiYkpdJ63t7ftsmkAAACgpKiyOnbNyeuVmjdvLkn6/fffJf3/SmB6erpdP3dUPJ1Rs2ZN5efn68CBA3aX9J44cULp6emqWbOmS+Pn5uZqxYoV6tixo6pVq+b2mFxNcOvUqSPpzx2gu3bt6tJYziioQpYvX77Y10tMTFSnTp20aNEiu/b09HS7KvvV5qBixYqF1pb05/pyVBG9UsH8BAYGOjU/VatW1fDhwzV8+HCdPHlSTZs21WuvvVZk8goAAADg+ihRuS0pKanIqmfB/Zz169eX9GdSULlyZW3cuNGu37x58641zhLp0aOHpD937r3S7NmzJUk9e/Z0afw1a9YoPT29RJ/tWpKY/P39i0zOnNWtWzcFBgZq6tSpunTpUqHjRX2sjitCQ0PVsWNHzZ8/3/YHDEev5+npWWgNLV++3HZPbIGCz5ktah7q1KmjH374QRcvXrS1rVq1SkePHnUq3mbNmqlOnTqaNWuWzp075zDevLw8ZWRk2B0LDQ1VtWrV7DZlAgAAANyFe14dK1HldcSIETp//rweeOABNWjQQBcvXtTmzZv10UcfKTIyUgMHDrT1HTx4sF5//XUNHjxYzZs318aNG5WSkuL2N1CUu+66S3FxcVqwYIHS09PVoUMHbd26VUuWLFGfPn3UqVMnl8ZfunSpvL299dBDD12XmJo1a6a3335br776qurWravQ0FCH968WJTAwUG+//bYef/xxNW3aVI888ohCQkJ05MgRrV69Wm3bttXcuXNL9J6L889//lPt2rXTnXfeqSFDhqh27do6ceKEkpOT9dtvv9k+x/W+++7TlClTNHDgQLVp00a7d+/W0qVLC1VM69Spo6CgIL3zzjuqUKGC/P391apVK9WqVUuDBw9WYmKiunfvrn79+ungwYP6n//5H1tFtTgeHh5auHChYmJiFBUVpYEDByo8PFzHjh1TUlKSAgMD9fnnnysrK0vVq1dXbGys7rrrLgUEBGj9+vXatm2b0583DAAAAMA9SpS8zpo1S8uXL9eaNWu0YMECXbx4URERERo+fLjGjx+voKAgW9+JEyfq1KlTSkxM1Mcff6yYmBitXbtWoaGh7n4PRVq4cKFq166thIQErVy5UmFhYRo3bpwmTZrk0riZmZlavXq1evbsKavVel1imjhxolJTUzVjxgxlZWWpQ4cOJUpeJenRRx9VtWrV9Prrr2vmzJnKzc1VeHi4oqOj7f7I4C4NGzbU9u3b9fLLLyshIUFnzpxRaGiomjRpookTJ9r6vfTSS8rOztayZcv00UcfqWnTplq9erVefPFFu/HKly+vJUuWaNy4cRo2bJguX76sxYsXq1atWurWrZveeOMNzZ49WyNHjlTz5s21atUq287NzujYsaOSk5P1yiuvaO7cuTp37pzCwsLUqlUrDR06VJLk5+en4cOH68svv9Qnn3yi/Px81a1bV/PmzXNpd2YAAADAEaqsjlkMZ3c/AlBimZmZslqt+nDnWflVCCz+BAdqBbq+0VcDFzdz/vnqm3w7pZFvjuuDuOEnelK6j8tjhPi6/jXxc+3jsRXs+ttwiyAf1+fiq8PObdh2NR5u2KOvS81r37xOkv7Idn19hmWcdXkMBbhhcRxPc30MPzdsYBcc4Nr57vgtsFzRGyWWiI+L3/CSdOiEy0Pk1ym8kWNJeWRdcOn8dC/f4jsVI8gNn6N+sdK1/79cwGvjXpfHULPi9+u4qszzLoeQE+b6Jz745DvemLU4mZmZsoa471Mnynp64z37cpHtuaPcsl1RmcYMAAAAAIBJUHl1zLU/MQMAAAAAyhSLxeLwUbABa0JCgsM+3bt3d/q1fvvtNwUEBMhisej06dMuxU3lFQAAAABM4kZUXpOTkwu1PfHEE/L391fVqlUl/flpKH/td+DAAT3xxBMl+sjI0aNHKyAgQNnZ2a4FLZJXAAAAALil3H333XbPDx8+rAMHDmjGjBm2tpCQEIWEhNj1W7dunTw9PfXwww879TrffPON1q9fr5deekljxoxxOW6SVwAAAAC4hS1btkwWi0X9+/e/ar8PPvhAnTt3VlhY8Zu/Xbp0Sc8884xefvllBQS4uPnef3DPKwAAAACYRL6Dx/X0wQcfqH379qpevbrDPtu3b1dKSooeffRRp8acM2eOPD093foRk1ReAQAAAOAW9dNPP2nPnj2aP3/+VfstW7ZMPj4+evDBB4sd8/jx45oyZYo+/fRTeXq64ePG/oPkFQAAAABMwhhT8hQtIyPDtkvw1dSuXVteXl52bUuXLlX58uUVGxvr8Lz8/Hx9+OGH6tmzpwIDi/+M5DFjxuiee+5R586diw++BEheAQAAAKAMW758uYYMGVJsv3379qlBgwa254Zh6MMPP1RMTIyCg4MdnpeUlKTff/9djz32WLGvkZycrMTERG3ZskXp6emSpPPnz0uSMjMz5efnJz8/v2LHKQr3vAIAAABAGTZ48GAZhlHs48rEVZK+//57HTlypNj7WJctW6agoCD16NGj2Fh++eUXXbp0SU2bNlXFihVVsWJFPf3005KkOnXq6Mknn7zm90nlFQAAAABuQcuWLVNAQIB69+7tsE9ubq4++eQTPfjgg/L29i52zO7duyspKcmubd26dZo+fbo+/fRT3XbbbdccL8krAAAAANxiLl++rMTERPXp00e+vr4O+61Zs0bp6ekOq7PvvfeennzySX399dfq0KGDwsLCCn2UzuHDhyVJbdu2VeXKla85Zi4bBgAAAIBbzBdffKHTp087dclw1apV1alTpyKP5+fnKy8vT4ZhXI8w7ZC8AgAAACh1GRkZTt23WdwDzunZs6cMw1BMTMxV+y1fvlzHjx+Xh0fRqWN8fLwMw1DHjh0djlHQx5Wqq0TyCgAAAAAoA0heAQAAAACmR/IKAAAAADA9klcAAAAAgOmRvAIAAAAATI/kFQAAAABgeiSvAAAAAADTI3kFAAAAAJiexeCTfIHrJjMzU1arVRkZGQoMDCyyT25urqZNm6Zx48bJ29v7Bkd482E+3Yv5dC/m072YT/diPt2L+XSeM78vARLJK3BdGYahrKwsVahQQRaLpcg+/MB2L+bTvZhP92I+3Yv5dC/m072YT+c58/sSIEnlSjsA4GZmsVj4DwsAAOAq+H0JzuKeVwAAAACA6ZG8AgAAAABMj+QVKGXe3t6aNGkSmzm4CfPpXsynezGf7sV8uhfz6V7MJ+B+bNgEAAAAADA9Kq8AAAAAANMjeQUAAAAAmB7JKwAAAADA9EhegVKSm5urF154QdWqVZOvr69atWqlr776qrTDKpM2bNggi8VS5OOHH34o7fBM7dy5c5o0aZK6d++u4OBgWSwWJSQkFNl337596t69uwICAhQcHKzHH39cp06durEBm5yz8xkfH1/kem3QoMGND9rEtm3bpmeeeUZRUVHy9/dXRESE+vXrp5SUlEJ9WZ/Fc3Y+WZ/O2bt3r/r27avatWvLz89PlStXVvv27fX5558X6sv6BNyjXGkHANyq4uPjlZiYqJEjR+q2225TQkKCevTooaSkJLVr1660wyuTnn32WbVo0cKurW7duqUUTdlw+vRpTZkyRREREbrrrru0YcOGIvv99ttvat++vaxWq6ZOnapz585p1qxZ2r17t7Zu3SovL68bG7hJOTuf0p87kS5cuNCuzWq1XucIy5bp06dr06ZN6tu3rxo1aqQ//vhDc+fOVdOmTfXDDz/ojjvukMT6dJaz8ymxPp2RmpqqrKwsxcXFqVq1ajp//rxWrFih3r17a/78+XrqqacksT4BtzIA3HBbtmwxJBkzZ860tV24cMGoU6eO0bp161KMrGxKSkoyJBnLly8v7VDKnJycHOP33383DMMwtm3bZkgyFi9eXKjf3/72N8PX19dITU21tX311VeGJGP+/Pk3KlzTc3Y+4+LiDH9//xscXdmzadMmIzc3164tJSXF8Pb2Nh577DFbG+vTOc7OJ+vz2l2+fNm46667jPr169vaWJ+A+3DZMFAKEhMT5enpafurrCT5+Pho0KBBSk5O1tGjR0sxurItKytLly9fLu0wygxvb2+FhYUV22/FihW67777FBERYWvr2rWr6tWrp48//vh6hlimODufBfLy8pSZmXkdIyrb2rRpU6gqddtttykqKkr79u2ztbE+nePsfBZgfZacp6enatSoofT0dFsb6xNwH5JXoBTs3LlT9erVU2BgoF17y5YtJUk//vhjKURV9g0cOFCBgYHy8fFRp06dtH379tIO6aZw7NgxnTx5Us2bNy90rGXLltq5c2cpRFX2nT9/XoGBgbJarQoODtbTTz+tc+fOlXZYpmcYhk6cOKHKlStLYn266q/zWYD16bzs7GydPn1aBw8e1Jtvvqm1a9eqS5cuklifgLtxzytQCn7//XdVrVq1UHtB2/Hjx290SGWal5eXHnroIfXo0UOVK1fWzz//rFmzZik6OlqbN29WkyZNSjvEMu3333+XJIdrNi0tTbm5ufL29r7RoZVZVatW1dixY9W0aVPl5+dr3bp1mjdvnnbt2qUNGzaoXDn+e3Zk6dKlOnbsmKZMmSKJ9emqv86nxPosqdGjR2v+/PmSJA8PDz344IOaO3euJNYn4G789AFKwYULF4r8j8rHx8d2HM5r06aN2rRpY3veu3dvxcbGqlGjRho3bpzWrVtXitGVfQXrsbg1yy9fzps2bZrd80ceeUT16tXT3//+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7vR75c6/1atXlyTt3bu3yDELNlZasmSJsrKybO05OTkaPny4fv31V7fFL0mjRo1ShQoV9Nlnn2n8+PG2jaEKnDx5Ut9//73t+f33368WLVpo69atGjhwoN19rQXOnj2rd955x5agX8s8AQBublw2DADADXT27FkNGTJEw4cPV+PGjVWrVi1Jf17au3PnTlksFs2cOVOenp62c/r06aOXX35Z//jHP7Rnzx7VqFFDHh4e6t27t3r37q2BAwdqzpw52rlzp2rVqqXo6Gh5enrqu+++04ULF/Tcc89pzpw5bnsPERERSkxMVGxsrF577TUtXLhQrVu3Vvny5ZWamqqdO3fq0UcftX1cjoeHhz799FP17NlTS5YsUWJiou666y5FRETo4sWLOnTokHbv3q28vDzFx8erXLly1zRPAICbG5VXAABuoDp16uitt97Sfffdp/T0dK1Zs0arV69Wdna2nnjiCW3btk2DBg2yO6dRo0ZasWKFWrdurS1btighIUGLFi3Sjh07JElBQUHavn27hg8frqCgIK1du1bJycm69957tWPHDjVu3Njt7+Pee+/Vnj179NxzzykoKEjr1q3T2rVrlZ6erscff1zDhg2z61+tWjX98MMPeuedd9SyZUv98ssvSkxMtFVohw0bpi+++EI+Pj7XPE8AgJubxXD15hMAAAAAAK4zKq8AAAAAANMjeQUAAAAAmB7JKwAAAADA9EheAQAAAACmR/IKAAAAADA9klcAAAAAgOmRvAIAAAAATI/kFQAAAABgeiSvAAAAAADTI3kFAAAAAJgeySsAAAAAwPRIXgEAAAAApkfyCgAAAAAwvf8HMPomsJ6aqg0AAAAASUVORK5CYII=",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"atom.lda.plot_shap_heatmap(target=2, show=7)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.2"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 4
}