{ "cells": [ { "cell_type": "markdown", "id": "6eb2cd7f", "metadata": {}, "source": [ "# Detecting at-risk students\n", "\n", "In this chapter, we attempt to replicate the student learning achievement model\n", "originally introduced by Al-Shabandar et al. {cite}`alshabandar_2019`, which aims to\n", "identify students at risk of failure or withdrawal from an online course.\n", "\n", "The approach of Al-Shabandar consists of the following steps:\n", "\n", "1. **Data aggregation:**\n", "\n", " Student click interactions are aggregated by activity type.\n", " This aggregation process computes both the total sum of clicks and interaction\n", " frequency for each distinct activity type.\n", "\n", "2. **Data cleaning:**\n", "\n", " Highly correlated features (>0.8) and near-zero variance predictors are removed.\n", "\n", "3. **Data normalization:**\n", "\n", " Following this, features are normalized with the Yeo-Johnson transformation.\n", " Additionally, to address the issue of class imbalance, the Synthetic Minority\n", " Over-Sampling (SMOTE) technique is applied to augment the representation of\n", " minority classes.\n", "\n", "4. **Model training:**\n", "\n", " Four distinct machine-learning algorithms are trained and fine-tuned.\n", " These algorithms undergo optimization through a combination of random search and\n", " grid search techniques conducted on the `BBB_2013B` course dataset.\n", " The assessment of model performance is achieved through ten-fold cross-validation,\n", " with a 70/30 training/test split.\n", "\n", "6. **Model evaluation:**\n", "\n", " The model's predictive capabilities are evaluated on the subsequent `BBB_2013J`\n", " course dataset involving several quality metrics, such as the\n", " F-measure, sensitivity, specificity, and AUC, to assess the model's efficacy and\n", " generalizability comprehensively.\n", "\n", "```{bibliography}\n", ":filter: docname in docnames\n", "```" ] }, { "cell_type": "code", "execution_count": 1, "id": "03c7d049", "metadata": {}, "outputs": [], "source": [ "from shutil import rmtree\n", "from tempfile import mkdtemp\n", "\n", "import numpy as np\n", "import pandas as pd\n", "import plotly.express as px\n", "from imblearn.over_sampling import SMOTE\n", "from imblearn.pipeline import Pipeline\n", "from IPython.display import display\n", "from sklearn.ensemble import GradientBoostingClassifier, RandomForestClassifier\n", "from sklearn.feature_selection import VarianceThreshold\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.metrics import (\n", " accuracy_score,\n", " f1_score,\n", " recall_score,\n", " roc_auc_score,\n", " roc_curve,\n", ")\n", "from sklearn.model_selection import GridSearchCV, StratifiedKFold, train_test_split\n", "from sklearn.neural_network import MLPClassifier\n", "from sklearn.preprocessing import PowerTransformer\n", "\n", "from oulad import get_oulad\n", "\n", "%load_ext oulad.capture" ] }, { "cell_type": "code", "execution_count": 2, "id": "771d3a95", "metadata": {}, "outputs": [], "source": [ "%%capture oulad\n", "oulad = get_oulad()" ] }, { "cell_type": "markdown", "id": "992812c2", "metadata": {}, "source": [ "## Data aggregation\n", "\n", "We construct the `feature_table` DataFrame that aggregates student VLE interactions\n", "by activity type.\n", "Both the total sum of clicks and interaction frequency are computed." ] }, { "cell_type": "code", "execution_count": 3, "id": "e6205f2f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
count_forumngcount_glossarycount_homepagecount_oucollaboratecount_oucontentcount_ouelluminatecount_quizcount_resourcecount_sharedsubpagecount_subpage...sum_oucollaboratesum_oucontentsum_ouelluminatesum_quizsum_resourcesum_sharedsubpagesum_subpagesum_urlfinal_resultcode_presentation
id_student
2362924.00.016.00.00.00.015.02.00.02.0...0.00.00.031.02.00.05.00.0False2013B
2379876.01.077.03.06.00.048.016.00.033.0...3.044.00.0104.021.00.047.056.0True2013J
25107321.01.0114.00.01.01.045.013.00.014.0...0.01.01.085.023.00.021.014.0True2013B
2775947.02.046.00.06.00.032.017.00.024.0...0.017.00.088.019.00.035.015.0False2013J
2789156.00.020.00.01.00.019.06.00.06.0...0.01.00.038.06.00.011.06.0False2013B
..................................................................
2685831121.01.0110.00.00.00.046.030.00.026.0...0.00.00.0148.035.00.049.09.0True2013B
269110018.00.062.00.06.00.040.049.00.038.0...0.022.00.0102.070.00.0104.056.0True2013J
269156618.00.017.00.02.00.030.05.00.06.0...0.033.00.081.06.00.013.01.0False2013J
2692384133.00.0112.00.01.00.032.054.00.043.0...0.03.00.073.081.00.0144.014.0True2013B
26937726.00.01.00.00.00.00.03.00.01.0...0.00.00.00.03.00.01.00.0False2013J
\n", "

3421 rows × 24 columns

\n", "
" ], "text/plain": [ " count_forumng count_glossary count_homepage \\\n", "id_student \n", "23629 24.0 0.0 16.0 \n", "23798 76.0 1.0 77.0 \n", "25107 321.0 1.0 114.0 \n", "27759 47.0 2.0 46.0 \n", "27891 56.0 0.0 20.0 \n", "... ... ... ... \n", "2685831 121.0 1.0 110.0 \n", "2691100 18.0 0.0 62.0 \n", "2691566 18.0 0.0 17.0 \n", "2692384 133.0 0.0 112.0 \n", "2693772 6.0 0.0 1.0 \n", "\n", " count_oucollaborate count_oucontent count_ouelluminate \\\n", "id_student \n", "23629 0.0 0.0 0.0 \n", "23798 3.0 6.0 0.0 \n", "25107 0.0 1.0 1.0 \n", "27759 0.0 6.0 0.0 \n", "27891 0.0 1.0 0.0 \n", "... ... ... ... \n", "2685831 0.0 0.0 0.0 \n", "2691100 0.0 6.0 0.0 \n", "2691566 0.0 2.0 0.0 \n", "2692384 0.0 1.0 0.0 \n", "2693772 0.0 0.0 0.0 \n", "\n", " count_quiz count_resource count_sharedsubpage count_subpage \\\n", "id_student \n", "23629 15.0 2.0 0.0 2.0 \n", "23798 48.0 16.0 0.0 33.0 \n", "25107 45.0 13.0 0.0 14.0 \n", "27759 32.0 17.0 0.0 24.0 \n", "27891 19.0 6.0 0.0 6.0 \n", "... ... ... ... ... \n", "2685831 46.0 30.0 0.0 26.0 \n", "2691100 40.0 49.0 0.0 38.0 \n", "2691566 30.0 5.0 0.0 6.0 \n", "2692384 32.0 54.0 0.0 43.0 \n", "2693772 0.0 3.0 0.0 1.0 \n", "\n", " ... sum_oucollaborate sum_oucontent sum_ouelluminate sum_quiz \\\n", "id_student ... \n", "23629 ... 0.0 0.0 0.0 31.0 \n", "23798 ... 3.0 44.0 0.0 104.0 \n", "25107 ... 0.0 1.0 1.0 85.0 \n", "27759 ... 0.0 17.0 0.0 88.0 \n", "27891 ... 0.0 1.0 0.0 38.0 \n", "... ... ... ... ... ... \n", "2685831 ... 0.0 0.0 0.0 148.0 \n", "2691100 ... 0.0 22.0 0.0 102.0 \n", "2691566 ... 0.0 33.0 0.0 81.0 \n", "2692384 ... 0.0 3.0 0.0 73.0 \n", "2693772 ... 0.0 0.0 0.0 0.0 \n", "\n", " sum_resource sum_sharedsubpage sum_subpage sum_url \\\n", "id_student \n", "23629 2.0 0.0 5.0 0.0 \n", "23798 21.0 0.0 47.0 56.0 \n", "25107 23.0 0.0 21.0 14.0 \n", "27759 19.0 0.0 35.0 15.0 \n", "27891 6.0 0.0 11.0 6.0 \n", "... ... ... ... ... \n", "2685831 35.0 0.0 49.0 9.0 \n", "2691100 70.0 0.0 104.0 56.0 \n", "2691566 6.0 0.0 13.0 1.0 \n", "2692384 81.0 0.0 144.0 14.0 \n", "2693772 3.0 0.0 1.0 0.0 \n", "\n", " final_result code_presentation \n", "id_student \n", "23629 False 2013B \n", "23798 True 2013J \n", "25107 True 2013B \n", "27759 False 2013J \n", "27891 False 2013B \n", "... ... ... \n", "2685831 True 2013B \n", "2691100 True 2013J \n", "2691566 False 2013J \n", "2692384 True 2013B \n", "2693772 False 2013J \n", "\n", "[3421 rows x 24 columns]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%capture -ns detecting_at_risk_students feature_table\n", "feature_table = (\n", " oulad.vle.query(\"code_module == 'BBB' and code_presentation in ['2013B', '2013J']\")\n", " .drop(columns=[\"code_module\", \"code_presentation\"])\n", " .merge(oulad.student_vle[[\"id_student\", \"id_site\", \"sum_click\"]], on=\"id_site\")\n", " .groupby([\"id_student\", \"activity_type\"])\n", " .agg({\"sum_click\": [\"sum\", \"count\"]})\n", " .pivot_table(\n", " values=\"sum_click\",\n", " index=\"id_student\",\n", " columns=\"activity_type\",\n", " fill_value=0,\n", " )\n", " .pipe(lambda df: setattr(df, \"columns\", df.columns.map(\"_\".join)) or df)\n", " .join(\n", " oulad.student_info.query(\n", " \"code_module == 'BBB' and code_presentation in ['2013B', '2013J']\"\n", " )\n", " .loc[:, [\"id_student\", \"final_result\", \"code_presentation\"]]\n", " .assign(final_result=lambda df: df.final_result.isin([\"Pass\", \"Distinction\"]))\n", " .set_index(\"id_student\")\n", " )\n", ")\n", "display(feature_table)" ] }, { "cell_type": "markdown", "id": "d11769cc", "metadata": {}, "source": [ "## Data cleaning\n", "\n", "```{note}\n", "Near-zero variance predictors are removed in the subsequent section.\n", "It is implemented in the model training pipeline.\n", "```\n", "\n", "### Train test validation split\n", "\n", "To avoid leaking statistics from our validation data into the trained model, we split\n", "the dataset into a train/test set (`BBB_2013B` course presentation) and validation\n", "set (`BBB_2013J` course presentation), prior to data cleaning." ] }, { "cell_type": "code", "execution_count": 4, "id": "b081f43c", "metadata": {}, "outputs": [], "source": [ "first_course_mask = feature_table[\"code_presentation\"] == \"2013B\"\n", "train_test_set = feature_table[first_course_mask].drop(columns=\"code_presentation\")\n", "x_train_test = train_test_set.drop(columns=\"final_result\")\n", "y_train_test = train_test_set.final_result.values\n", "validation_set = feature_table[~first_course_mask].drop(columns=\"code_presentation\")\n", "x_validation = validation_set.drop(columns=\"final_result\")\n", "y_validation = validation_set.final_result.values" ] }, { "cell_type": "markdown", "id": "61425749", "metadata": {}, "source": [ "### Highly correlated features removal\n", "\n", "We identify highly correlated features (>0.8) in the train set and remove them\n", "from both the train and validation sets." ] }, { "cell_type": "code", "execution_count": 5, "id": "143956de", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "coloraxis": "coloraxis", "hovertemplate": "x: %{x}
y: %{y}
color: %{z}", "name": "0", "texttemplate": "%{z}", "type": "heatmap", "x": [ "count_forumng", "count_glossary", "count_homepage", "count_oucollaborate", "count_oucontent", "count_ouelluminate", "count_quiz", "count_resource", "count_sharedsubpage", "count_subpage", "count_url", "sum_forumng", "sum_glossary", "sum_homepage", "sum_oucollaborate", "sum_oucontent", "sum_ouelluminate", "sum_quiz", "sum_resource", "sum_sharedsubpage", "sum_subpage", "sum_url" ], "xaxis": "x", "y": [ "count_forumng", "count_glossary", "count_homepage", "count_oucollaborate", "count_oucontent", "count_ouelluminate", "count_quiz", "count_resource", "count_sharedsubpage", "count_subpage", "count_url", "sum_forumng", "sum_glossary", "sum_homepage", "sum_oucollaborate", "sum_oucontent", "sum_ouelluminate", "sum_quiz", "sum_resource", "sum_sharedsubpage", "sum_subpage", "sum_url" ], "yaxis": "y", "z": [ [ 1, 0.54, 0.9, 0.07, 0.21, 0.43, 0.53, 0.38, 0.19, 0.54, 0.63, 0.9, 0.43, 0.91, 0.04, 0.09, 0.33, 0.52, 0.35, 0.17, 0.48, 0.6 ], [ 0.54, 1, 0.46, 0.02, 0.2, 0.39, 0.31, 0.36, 0.16, 0.44, 0.54, 0.51, 0.86, 0.5, 0.01, 0.09, 0.25, 0.33, 0.35, 0.14, 0.41, 0.56 ], [ 0.9, 0.46, 1, 0.08, 0.26, 0.42, 0.7, 0.52, 0.18, 0.65, 0.65, 0.73, 0.36, 0.89, 0.06, 0.14, 0.32, 0.66, 0.48, 0.17, 0.58, 0.61 ], [ 0.07, 0.02, 0.08, 1, 0.13, 0.02, 0.04, 0.01, -0.01, 0.01, 0.06, 0.06, 0, 0.07, 0.88, 0.32, 0.01, 0.03, 0, -0.01, 0, 0.05 ], [ 0.21, 0.2, 0.26, 0.13, 1, 0.13, 0.16, 0.31, 0.15, 0.28, 0.33, 0.18, 0.16, 0.24, 0.13, 0.75, 0.07, 0.16, 0.31, 0.13, 0.3, 0.38 ], [ 0.43, 0.39, 0.42, 0.02, 0.13, 1, 0.28, 0.34, 0.15, 0.41, 0.45, 0.31, 0.33, 0.4, 0.01, 0.05, 0.84, 0.27, 0.32, 0.13, 0.37, 0.45 ], [ 0.53, 0.31, 0.7, 0.04, 0.16, 0.28, 1, 0.46, 0.12, 0.52, 0.49, 0.38, 0.23, 0.57, 0.05, 0.1, 0.22, 0.93, 0.43, 0.11, 0.48, 0.45 ], [ 0.38, 0.36, 0.52, 0.01, 0.31, 0.34, 0.46, 1, 0.16, 0.88, 0.63, 0.28, 0.3, 0.49, 0.01, 0.19, 0.25, 0.44, 0.98, 0.14, 0.89, 0.62 ], [ 0.19, 0.16, 0.18, -0.01, 0.15, 0.15, 0.12, 0.16, 1, 0.16, 0.18, 0.14, 0.13, 0.21, -0.01, 0.1, 0.15, 0.12, 0.15, 0.93, 0.17, 0.2 ], [ 0.54, 0.44, 0.65, 0.01, 0.28, 0.41, 0.52, 0.88, 0.16, 1, 0.82, 0.44, 0.37, 0.62, 0.01, 0.16, 0.28, 0.5, 0.86, 0.15, 0.96, 0.79 ], [ 0.63, 0.54, 0.65, 0.06, 0.33, 0.45, 0.49, 0.63, 0.18, 0.82, 1, 0.54, 0.48, 0.64, 0.07, 0.21, 0.31, 0.48, 0.6, 0.16, 0.77, 0.97 ], [ 0.9, 0.51, 0.73, 0.06, 0.18, 0.31, 0.38, 0.28, 0.14, 0.44, 0.54, 1, 0.42, 0.83, 0.04, 0.08, 0.23, 0.4, 0.25, 0.12, 0.39, 0.51 ], [ 0.43, 0.86, 0.36, 0, 0.16, 0.33, 0.23, 0.3, 0.13, 0.37, 0.48, 0.42, 1, 0.4, -0.01, 0.07, 0.2, 0.25, 0.29, 0.11, 0.37, 0.49 ], [ 0.91, 0.5, 0.89, 0.07, 0.24, 0.4, 0.57, 0.49, 0.21, 0.62, 0.64, 0.83, 0.4, 1, 0.05, 0.13, 0.3, 0.57, 0.46, 0.19, 0.57, 0.62 ], [ 0.04, 0.01, 0.06, 0.88, 0.13, 0.01, 0.05, 0.01, -0.01, 0.01, 0.07, 0.04, -0.01, 0.05, 1, 0.43, 0, 0.05, 0, -0.01, 0.01, 0.08 ], [ 0.09, 0.09, 0.14, 0.32, 0.75, 0.05, 0.1, 0.19, 0.1, 0.16, 0.21, 0.08, 0.07, 0.13, 0.43, 1, 0.03, 0.11, 0.19, 0.09, 0.18, 0.25 ], [ 0.33, 0.25, 0.32, 0.01, 0.07, 0.84, 0.22, 0.25, 0.15, 0.28, 0.31, 0.23, 0.2, 0.3, 0, 0.03, 1, 0.2, 0.23, 0.12, 0.26, 0.31 ], [ 0.52, 0.33, 0.66, 0.03, 0.16, 0.27, 0.93, 0.44, 0.12, 0.5, 0.48, 0.4, 0.25, 0.57, 0.05, 0.11, 0.2, 1, 0.42, 0.12, 0.47, 0.46 ], [ 0.35, 0.35, 0.48, 0, 0.31, 0.32, 0.43, 0.98, 0.15, 0.86, 0.6, 0.25, 0.29, 0.46, 0, 0.19, 0.23, 0.42, 1, 0.13, 0.87, 0.61 ], [ 0.17, 0.14, 0.17, -0.01, 0.13, 0.13, 0.11, 0.14, 0.93, 0.15, 0.16, 0.12, 0.11, 0.19, -0.01, 0.09, 0.12, 0.12, 0.13, 1, 0.15, 0.18 ], [ 0.48, 0.41, 0.58, 0, 0.3, 0.37, 0.48, 0.89, 0.17, 0.96, 0.77, 0.39, 0.37, 0.57, 0.01, 0.18, 0.26, 0.47, 0.87, 0.15, 1, 0.76 ], [ 0.6, 0.56, 0.61, 0.05, 0.38, 0.45, 0.45, 0.62, 0.2, 0.79, 0.97, 0.51, 0.49, 0.62, 0.08, 0.25, 0.31, 0.46, 0.61, 0.18, 0.76, 1 ] ] } ], "layout": { "coloraxis": { "colorscale": [ [ 0, "rgb(247,252,245)" ], [ 0.125, "rgb(229,245,224)" ], [ 0.25, "rgb(199,233,192)" ], [ 0.375, "rgb(161,217,155)" ], [ 0.5, "rgb(116,196,118)" ], [ 0.625, "rgb(65,171,93)" ], [ 0.75, "rgb(35,139,69)" ], [ 0.875, "rgb(0,109,44)" ], [ 1, "rgb(0,68,27)" ] ] }, "height": 600, "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": { "text": "Feature Correlation Matrix before feature removal" }, "width": 800, "xaxis": { "anchor": "y", "autorange": true, "constrain": "domain", "domain": [ 0.2161084529505582, 0.7838915470494419 ], "range": [ -0.5, 21.5 ], "scaleanchor": "y", "type": "category" }, "yaxis": { "anchor": "x", "autorange": true, "constrain": "domain", "domain": [ 0, 1 ], "range": [ 21.5, -0.5 ], "type": "category" } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x_train_test_corr = x_train_test.corr()\n", "px.imshow(\n", " x_train_test_corr.round(2),\n", " title=\"Feature Correlation Matrix before feature removal\",\n", " text_auto=True,\n", " color_continuous_scale=\"greens\",\n", " width=800,\n", " height=600,\n", ").show()" ] }, { "cell_type": "code", "execution_count": 6, "id": "7e01961e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array(['count_forumng', 'count_glossary', 'count_homepage',\n", " 'count_oucollaborate', 'count_ouelluminate', 'count_quiz',\n", " 'count_resource', 'count_sharedsubpage', 'count_subpage',\n", " 'count_url', 'sum_forumng', 'sum_resource'], dtype=object)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "highly_correlated_features = (\n", " x_train_test_corr[(x_train_test_corr > 0.8)]\n", " .stack()\n", " .index.to_frame()\n", " .reset_index(drop=True)\n", " .pipe(lambda df: df[df[0] != df[1]])\n", " .apply(lambda col: \"__\".join(sorted([col[0], col[1]])), axis=1)\n", " .drop_duplicates(ignore_index=True)\n", " .map(lambda x: x.split(\"__\")[0])\n", " .unique()\n", ")\n", "x_train_test = x_train_test.drop(columns=highly_correlated_features)\n", "x_validation = x_validation.drop(columns=highly_correlated_features)\n", "display(highly_correlated_features)" ] }, { "cell_type": "code", "execution_count": 7, "id": "f20b3032", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "coloraxis": "coloraxis", "hovertemplate": "x: %{x}
y: %{y}
color: %{z}", "name": "0", "texttemplate": "%{z}", "type": "heatmap", "x": [ "count_oucontent", "sum_glossary", "sum_homepage", "sum_oucollaborate", "sum_oucontent", "sum_ouelluminate", "sum_quiz", "sum_sharedsubpage", "sum_subpage", "sum_url" ], "xaxis": "x", "y": [ "count_oucontent", "sum_glossary", "sum_homepage", "sum_oucollaborate", "sum_oucontent", "sum_ouelluminate", "sum_quiz", "sum_sharedsubpage", "sum_subpage", "sum_url" ], "yaxis": "y", "z": [ [ 1, 0.16, 0.24, 0.13, 0.75, 0.07, 0.16, 0.13, 0.3, 0.38 ], [ 0.16, 1, 0.4, -0.01, 0.07, 0.2, 0.25, 0.11, 0.37, 0.49 ], [ 0.24, 0.4, 1, 0.05, 0.13, 0.3, 0.57, 0.19, 0.57, 0.62 ], [ 0.13, -0.01, 0.05, 1, 0.43, 0, 0.05, -0.01, 0.01, 0.08 ], [ 0.75, 0.07, 0.13, 0.43, 1, 0.03, 0.11, 0.09, 0.18, 0.25 ], [ 0.07, 0.2, 0.3, 0, 0.03, 1, 0.2, 0.12, 0.26, 0.31 ], [ 0.16, 0.25, 0.57, 0.05, 0.11, 0.2, 1, 0.12, 0.47, 0.46 ], [ 0.13, 0.11, 0.19, -0.01, 0.09, 0.12, 0.12, 1, 0.15, 0.18 ], [ 0.3, 0.37, 0.57, 0.01, 0.18, 0.26, 0.47, 0.15, 1, 0.76 ], [ 0.38, 0.49, 0.62, 0.08, 0.25, 0.31, 0.46, 0.18, 0.76, 1 ] ] } ], "layout": { "coloraxis": { "colorscale": [ [ 0, "rgb(247,252,245)" ], [ 0.125, "rgb(229,245,224)" ], [ 0.25, "rgb(199,233,192)" ], [ 0.375, "rgb(161,217,155)" ], [ 0.5, "rgb(116,196,118)" ], [ 0.625, "rgb(65,171,93)" ], [ 0.75, "rgb(35,139,69)" ], [ 0.875, "rgb(0,109,44)" ], [ 1, "rgb(0,68,27)" ] ] }, "height": 600, "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": { "text": "Feature Correlation Matrix after feature removal" }, "width": 800, "xaxis": { "anchor": "y", "autorange": true, "constrain": "domain", "domain": [ 0.17065390749601278, 0.8293460925039873 ], "range": [ -0.5, 9.5 ], "scaleanchor": "y", "type": "category" }, "yaxis": { "anchor": "x", "autorange": true, "constrain": "domain", "domain": [ 0, 1 ], "range": [ 9.5, -0.5 ], "type": "category" } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "px.imshow(\n", " x_train_test.corr().round(2),\n", " title=\"Feature Correlation Matrix after feature removal\",\n", " text_auto=True,\n", " color_continuous_scale=\"greens\",\n", " width=800,\n", " height=600,\n", ").show()" ] }, { "cell_type": "markdown", "id": "d71a42d5", "metadata": {}, "source": [ "## Data normalization, model training and evaluation\n", "\n", "In this section, we define the data normalization and model training pipeline.\n", "\n", "As in the work of Al-Shabandar et al., we remove near-zero variance predictors\n", "(`VarianceThreshold`), normalize the features with the Yeo-Johnson transformation\n", "(`PowerTransformer`) and apply the Synthetic Minority Over-Sampling (`SMOTE`)\n", "technique.\n", "\n", "We conduct a hyperparameter grid search on 70% of the `BBB_2013B` course dataset.\n", "\n", "```{note}\n", "We have commented out the hyperparameter ranges and replaced them with the selected\n", "values to reduce the execution time of this notebook.\n", "```\n", "\n", "Finally, we assess the model performance using the remaining 30% of the `BBB_2013B`\n", "course, which serves as the test set.\n", "In addition, the full `BBB_2013J` course dataset is employed as the validation set." ] }, { "cell_type": "code", "execution_count": 8, "id": "e0a6332a", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
test_accuracytest_f1test_sensitivitytest_specificitytest_AUCvalidation_accuracyvalidation_f1validation_sensitivityvalidation_specificityvalidation_AUC
classifier
GradientBoostingClassifier0.8370690.8590130.9599500.7042470.8320980.8584980.8846870.9505600.7359010.843230
LogisticRegression0.8366380.8514890.9118350.7584870.8351610.8042620.8231310.7979480.8126710.805309
MLPClassifier0.8443970.8591350.9303800.7553720.8428760.7442730.7450480.6776120.8330430.755328
RandomForestClassifier0.8310340.8478720.9199290.7374450.8286870.8348430.8582080.8759330.7801240.828029
\n", "
" ], "text/plain": [ " test_accuracy test_f1 test_sensitivity \\\n", "classifier \n", "GradientBoostingClassifier 0.837069 0.859013 0.959950 \n", "LogisticRegression 0.836638 0.851489 0.911835 \n", "MLPClassifier 0.844397 0.859135 0.930380 \n", "RandomForestClassifier 0.831034 0.847872 0.919929 \n", "\n", " test_specificity test_AUC validation_accuracy \\\n", "classifier \n", "GradientBoostingClassifier 0.704247 0.832098 0.858498 \n", "LogisticRegression 0.758487 0.835161 0.804262 \n", "MLPClassifier 0.755372 0.842876 0.744273 \n", "RandomForestClassifier 0.737445 0.828687 0.834843 \n", "\n", " validation_f1 validation_sensitivity \\\n", "classifier \n", "GradientBoostingClassifier 0.884687 0.950560 \n", "LogisticRegression 0.823131 0.797948 \n", "MLPClassifier 0.745048 0.677612 \n", "RandomForestClassifier 0.858208 0.875933 \n", "\n", " validation_specificity validation_AUC \n", "classifier \n", "GradientBoostingClassifier 0.735901 0.843230 \n", "LogisticRegression 0.812671 0.805309 \n", "MLPClassifier 0.833043 0.755328 \n", "RandomForestClassifier 0.780124 0.828029 " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Classifier=GradientBoostingClassifier
False Positive Rate=%{x}
True Positive Rate=%{y}", "legendgroup": "GradientBoostingClassifier", "line": { "color": "#636efa", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "GradientBoostingClassifier", "orientation": "v", "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": [ 0, 0.03638207295919746, 0.07276414591839492, 0.10914621887759238, 0.14552829183678984, 0.1819103647959873, 0.21829243775518475, 0.25467451071438224, 0.29105658367357967, 0.32743865663277716, 0.3638207295919746, 0.400202802551172, 0.4365848755103695, 0.47296694846956705, 0.5093490214287645, 0.5457310943879617, 0.5821131673471593, 0.6184952403063568, 0.6548773132655543, 0.6912593862247518, 0.7276414591839492, 0.7640235321431466, 0.800405605102344, 0.8367876780615415, 0.873169751020739, 0.909297853981565, 0.9334908655619556, 0.9512278085526222, 0.9519052001005026, 0.9525825916483829, 0.9532599831962629, 0.9539373747441433, 0.9546147662920236, 0.9552921578399036, 0.955969549387784, 0.9566469409356643, 0.9573243324835445, 0.9580017240314247, 0.9586791155793051, 0.9593565071271852, 0.9600338986750655, 0.9607112902229458, 0.9613886817708259, 0.9620660733187062, 0.9627434648665865, 0.9634208564144668, 0.9640982479623469, 0.9647756395102272, 0.9654530310581075, 0.9661304226059876, 0.9668078141538679, 0.9674852057017482, 0.9681625972496283, 0.9688399887975088, 0.9695173803453889, 0.970194771893269, 0.9708721634411495, 0.9715495549890296, 0.9722269465369099, 0.9729043380847902, 0.9735817296326704, 0.9742591211805507, 0.9749365127284308, 0.9756139042763113, 0.9762912958241914, 0.9769686873720715, 0.977646078919952, 0.9783234704678321, 0.9790008620157125, 0.9796782535635927, 0.9803556451114728, 0.9810330366593532, 0.9817104282072334, 0.9823878197551137, 0.9830652113029938, 0.9837426028508741, 0.9844199943987544, 0.9850973859466345, 0.9857747774945148, 0.9864521690423951, 0.9871295605902753, 0.9878069521381556, 0.9884843436860358, 0.989161735233916, 0.9898391267817963, 0.9905165183296767, 0.9911939098775567, 0.991871301425437, 0.9925486929733174, 0.9932260845211974, 0.9939034760690777, 0.9945808676169581, 0.9952582591648381, 0.9959356507127186, 0.9966130422605988, 0.9972904338084788, 0.9979678253563593, 0.9986452169042395, 0.9993226084521198, 1 ], "yaxis": "y" }, { "hovertemplate": "Classifier=RandomForestClassifier
False Positive Rate=%{x}
True Positive Rate=%{y}", "legendgroup": "RandomForestClassifier", "line": { "color": "#EF553B", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "RandomForestClassifier", "orientation": "v", "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": [ 0, 0.04045320057785594, 0.08090640115571188, 0.12135960173356782, 0.16181280231142375, 0.2022660028892797, 0.24271920346713563, 0.28317240404499155, 0.3236256046228475, 0.36407880520070346, 0.4045320057785594, 0.4449852063564153, 0.48543840693427126, 0.5258916075121272, 0.5663448080899831, 0.6067980086678391, 0.647251209245695, 0.687704409823551, 0.7281576104014069, 0.7686108109792629, 0.8053139201072133, 0.8305170665968655, 0.8507220755145586, 0.8669728872827764, 0.8756660587384039, 0.8814960943175656, 0.8830974984484092, 0.884698902579253, 0.8863003067100967, 0.8879017108409404, 0.8895031149717841, 0.8911045191026279, 0.8927059232334715, 0.8943073273643153, 0.8959087314951588, 0.8975101356260027, 0.8991115397568464, 0.90071294388769, 0.9023143480185338, 0.9039157521493776, 0.9055171562802211, 0.907118560411065, 0.9087199645419085, 0.9103213686727523, 0.9119227728035959, 0.9135241769344397, 0.9151255810652834, 0.9167269851961273, 0.9183283893269708, 0.9199297934578144, 0.9215311975886582, 0.923132601719502, 0.9247340058503457, 0.9263354099811894, 0.9279368141120331, 0.9295382182428769, 0.9311396223737205, 0.9327410265045643, 0.9343424306354079, 0.9359438347662516, 0.9375452388970954, 0.939146643027939, 0.9407480471587828, 0.9423494512896264, 0.9439508554204703, 0.945552259551314, 0.9471536636821576, 0.9487550678130013, 0.9503564719438451, 0.9519578760746888, 0.9535592802055325, 0.955160684336376, 0.9567620884672199, 0.9583634925980636, 0.9599648967289074, 0.961566300859751, 0.9631677049905948, 0.9647691091214383, 0.9663705132522822, 0.9679719173831259, 0.9695733215139697, 0.9711747256448133, 0.9727761297756569, 0.9743775339065006, 0.9759789380373445, 0.977580342168188, 0.9791817462990318, 0.9807831504298756, 0.9823845545607192, 0.9839859586915628, 0.9855873628224066, 0.9871887669532503, 0.988790171084094, 0.9903915752149379, 0.9919929793457815, 0.9935943834766252, 0.9951957876074689, 0.9967971917383126, 0.9983985958691562, 1 ], "yaxis": "y" }, { "hovertemplate": "Classifier=MLPClassifier
False Positive Rate=%{x}
True Positive Rate=%{y}", "legendgroup": "MLPClassifier", "line": { "color": "#00cc96", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "MLPClassifier", "orientation": "v", "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": [ 0, 0.04069112435549713, 0.08138224871099425, 0.12207337306649138, 0.1627644974219885, 0.2034556217774856, 0.24414674613298276, 0.28483787048847986, 0.325528994843977, 0.36622011919947417, 0.4069112435549712, 0.4476023679104683, 0.4882934922659655, 0.5289846166214627, 0.5651170229515877, 0.6003875150908005, 0.632543204086395, 0.659646215669866, 0.6785309832606012, 0.6897524920009469, 0.693630585850935, 0.6975086797009232, 0.7013867735509114, 0.7052648674008996, 0.7091429612508877, 0.7130210551008759, 0.716899148950864, 0.7207772428008522, 0.7246553366508404, 0.7285334305008286, 0.7324115243508167, 0.7362896182008049, 0.740167712050793, 0.7440458059007812, 0.7479238997507693, 0.7518019936007576, 0.7556800874507458, 0.7595581813007338, 0.7634362751507221, 0.7673143690007102, 0.7711924628506983, 0.7750705567006866, 0.7789486505506746, 0.7828267444006628, 0.786704838250651, 0.7905829321006392, 0.7944610259506273, 0.7983391198006154, 0.8022172136506036, 0.8060953075005918, 0.80997340135058, 0.8138514952005682, 0.8177295890505564, 0.8216076829005445, 0.8254857767505328, 0.8293638706005207, 0.8332419644505091, 0.8371200583004972, 0.8409981521504852, 0.8448762460004733, 0.8487543398504617, 0.8526324337004499, 0.8565105275504379, 0.8603886214004263, 0.8642667152504142, 0.8681448091004024, 0.8720229029503906, 0.8759009968003788, 0.879779090650367, 0.8836571845003551, 0.8875352783503432, 0.8914133722003313, 0.8952914660503197, 0.8991695599003078, 0.9030476537502959, 0.9069257476002841, 0.9108038414502723, 0.9146819353002604, 0.9185600291502485, 0.9224381230002369, 0.926316216850225, 0.9301943107002131, 0.9340724045502012, 0.9379504984001894, 0.9418285922501776, 0.9457066861001657, 0.9495847799501538, 0.9534628738001422, 0.9573409676501301, 0.9612190615001184, 0.9650971553501065, 0.9689752492000949, 0.9728533430500829, 0.976731436900071, 0.9806095307500591, 0.9844876246000475, 0.9883657184500356, 0.9922438123000237, 0.9961219061500117, 1 ], "yaxis": "y" }, { "hovertemplate": "Classifier=LogisticRegression
False Positive Rate=%{x}
True Positive Rate=%{y}", "legendgroup": "LogisticRegression", "line": { "color": "#ab63fa", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "LogisticRegression", "orientation": "v", "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": [ 0, 0.04303917028967492, 0.08607834057934984, 0.12911751086902473, 0.17215668115869967, 0.21519585144837458, 0.25823502173804946, 0.30127419202772443, 0.34431336231739934, 0.3873525326070742, 0.43039170289674916, 0.4734308731864241, 0.5164700434760989, 0.5595092137657739, 0.6025483840554489, 0.6455875543451237, 0.6886267246347987, 0.7316658949244734, 0.7743391894113424, 0.7956876439579789, 0.8016821145530345, 0.8041924675333758, 0.8067028205137172, 0.8092131734940585, 0.8117235264743998, 0.8142338794547411, 0.8167442324350824, 0.8192545854154238, 0.8217649383957651, 0.8242752913761067, 0.826785644356448, 0.8292959973367893, 0.8318063503171305, 0.8343167032974719, 0.8368270562778133, 0.8393374092581546, 0.8418477622384959, 0.8443581152188372, 0.8468684681991785, 0.8493788211795199, 0.8518891741598612, 0.8543995271402025, 0.8569098801205438, 0.8594202331008851, 0.8619305860812265, 0.8644409390615678, 0.8669512920419093, 0.8694616450222507, 0.871971998002592, 0.8744823509829333, 0.8769927039632746, 0.879503056943616, 0.8820134099239573, 0.8845237629042986, 0.8870341158846399, 0.8895444688649812, 0.8920548218453226, 0.894565174825664, 0.8970755278060054, 0.8995858807863465, 0.902096233766688, 0.9046065867470293, 0.9071169397273706, 0.909627292707712, 0.9121376456880531, 0.9146479986683946, 0.9171583516487359, 0.9196687046290772, 0.9221790576094187, 0.92468941058976, 0.9271997635701013, 0.9297101165504426, 0.9322204695307839, 0.9347308225111253, 0.9372411754914666, 0.9397515284718081, 0.9422618814521494, 0.9447722344324907, 0.947282587412832, 0.9497929403931732, 0.9523032933735147, 0.954813646353856, 0.9573239993341973, 0.9598343523145386, 0.9623447052948799, 0.9648550582752214, 0.9673654112555626, 0.9698757642359042, 0.9723861172162452, 0.9748964701965868, 0.9774068231769281, 0.9799171761572693, 0.9824275291376108, 0.9849378821179521, 0.9874482350982934, 0.9899585880786347, 0.992468941058976, 0.9949792940393174, 0.9974896470196587, 1 ], "yaxis": "y" } ], "layout": { "height": 600, "legend": { "title": { "text": "Classifier" }, "tracegroupgap": 0 }, "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": { "text": "ROC curve for the validation set" }, "width": 800, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 1 ], "title": { "text": "False Positive Rate" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.05555555555555555, 1.0555555555555556 ], "title": { "text": "True Positive Rate" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAABdoAAAJYCAYAAAB1rVRjAAAgAElEQVR4XuydB3gUVReGTyodpHcL9t6w/1bEjqKoYEXFAiiIXbCgYkMUFRVRrCgKogKKBUXFCvbeK1IFAakJqf85d3Y2m5CEbDJMdsk7Pnk22Z25c/e9E4R3zn4npVA3YYMABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQKBSBFIQ7ZXixkEQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAUcA0c6FAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoAgFEexXgcSgEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAANHONQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQqAIBRHsV4HEoBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQADRzjUAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEKgCAUR7FeBxKAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAA0c41AAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoAgFEexXgcSgEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAANHONQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQqAIBRHsV4HEoBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQADRzjUAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEKgCAUR7FeBxKAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAA0c41AAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoAgFEexXgcSgEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAANHONQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQqAIBRHsV4HEoBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQADRzjUAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEKgCAUR7FeBxKAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAA0c41AAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoAgFEexXgcSgEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAANHONQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQqAIBRHsV4HEoBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQADRzjUAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEKgCAUR7FeBxKAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAA0c41AAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoAgFEexXgcSgEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAANHONQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQqAIBRHsV4HEoBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQADRzjUAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEKgCAUR7FeBxKAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAA0c41AAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCoAgFEexXgcSgEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAANHONQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQqAIBRHsV4HEoBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQADRzjWQdAQ++uw7Gf7QBPlj1jypXStT7rvlYtl9p62q5X2MHjtF7hn9vLz74r3SrEmjaplDZU/a5+q75c+/58vrz9wR9xCffPmTnH3J7TJiSH/ptP9ucR/PARCAAAQgAAEIQAACEIAABCAAAQhAAAIQ2JAIINrjXM1X3/pYrhjyYPSotLRUadyogeyxyzbS75wTZJN2LUsd0cTk0y++IV9++6ssX7FaGm/UQDruvLWc3f1I2X7rTUs9Zsl/K2TMhKky/aOvZM78hZKWlibtWjeXXbbfQk485kDZdstN4px98u8+b8G/ctTpV8nmm7aVzgd0lJWrs+SYQ/eRbbbYeL29uX+XLJPxk99Wobz7WufZkET76qxs2ePI3rLfHjvIw8MuL5dnVUT71z/8Lh98/I2ccdLh0rB+3WLnOen8G+TXP+fIV28+st7WM6yB7drosHEbbkSEBZzzQAACEIAABCAAAQhAAAIQgAAEIACBaiSAaI8Tvi/aj+m8j2zWvrXk5OZqZfV8efvDL6Rendry/CM3SdtWzYqNOvKJSfKAfm3UqL50+t9u0rzpRjJvwWKZ9v7nkpW9Rq6/tKec3OWgYseYjOw78G5ZtnyV7L/XTrL9VptKXn6+/PjrLJn5+Q/u+xf0XOtTMMeJJpTdTV6OePQFeW/iCHeDI4ztp9/+lm7nXi83X9VLjj9y/2Kn3JBE+5qcXBlw/f3uWrvonOPXm2i3m0dDH3hW3hh351q/K7ff/4zM++dfVymf7NteR/dxv++3Djwv2d8K84cABCAAAQhAAAIQgAAEIAABCEAAAhBYBwFEe5yXiC/aH7h1gBy07y7Roye+9r5cO/RROe2EzjKo/2nR59+b+bVYRIdVr9+vEScNYip4/1m0VM67fJj8NWeBjHvwetlOBadt/y1bKceeNUjy8vLlwaGXys7bbV5sllbVfeuIsdK757Gyw9abxfkOknv3G+96Qt7RCv/pL9wT2hupKaI9HqBVqWgvT7THM4dE3xfRnugrxPwgAAEIQAACEIAABCAAAQhAAAIQgEBwBBDtcbIsS7RbNfDuh58ve+22rTx615XRUU/pO0R+1opoq94tLcPbl7iHH7SHDL/hQnfcA49PlJFPTpbbB50vXQ7bt8wZ5qqIz0hPK/cdWOzJ/Y9NlOkzvpJlK1ZJO622twr5szSypkWzjaRHn5vc8Sb6YzcT2hNf/6BYhMcunc+V44/4n5uT5ZJ/8+MfrqJ+p203l7Evvumyvtu3aVFsnPsee1EeeupleXP8XdK6RRP32g+//CX363v8/Jtf9BMBebLlZm2l95nHySH77Vrue+l3zb36yYEvi+1jx1hGu22W3T7yicmu6j9dudjNjUvPP8nFzPibX4Fuc31+yrsyeeqHslQjeu4d0q/YjRN//y++/UXO6HfrWvOyTyAMvuws8cd76clbZcLL0+W1tz+W7DU5stuOW7lPKvjv2R+gsu/dPv1w8XX3lVpVP/OLH6TXpXfI0GsuEPukxStvzZQxz011leG25vXr1pG9d99O+vbsKlsoa38rLaO94xHny5GH7C1Drjwnul+OXtt2PU6e+oGLPdq0fSu37pP0+ojNaK/IeUeNeUnsmii5DbuujxzVaS93U6pkbnxhYaE8M3GajJv0tsyet1AaNdRPhmiMz8XndpNGDepFhzr/ijtlrt6EumtwX/cJEvvkR906tVzE0OV9urs8/3VtFltj8/vmhz9k5arV0qZVc9lDr6PeZx7rPolim/3ePfbsq46H3fRqqHM4WK/Dy3p3j0bh7HjI2VJQUFjsdMbtladuX9cUeB0CEIAABCAAAQhAAAIQgAAEIAABCEAgCQkg2uNctLJEu0W57HLouXKoCsB7brrIjWqV6fsdd5F7zkRuWVv3C26UP2fPlxkvj9Qc9lQXU2LC8IPJ90m65rJXdlu8dLl0v+AGWawiuevh+0n7ti3klz/myNTpn8o1/U93Oe/xivamGzWURUv+c1X2rVs0lVoqL089vpOceN5gufDs41XmHldsukeceqW0bd0sevPB5Pq5WsW/+SZt5OhOe0tGRrqT0199/5s8ePslcsDeO5f5dk0o202Dn3//Wz81cLrbr3XLprL3btvJW+9/IRdff59K9TZyxMF7ypo1uWKfMjDp/czI69z5bPPFeBu94ZCtsT2WrW9rZ59E2GvXbdc6tzEc/9I77ubHCUcdoAJ9S7fPZhu3dln5/ngWY2NS14S2fVLhg0++dYzs3P5WlfducvegbhfLVh3ayeN3X11snvZJijfe/dTF6ZhMNin+jUYPmVQ3EW1y/PXpn0iu3tSY9NjNLsLItoqIdpPcfQfeI/bJjD133Ub7CWzmruv3NWPdbuLEivaKnPfn32fLI89MEfs9ulzFtD8XWwfrP1DanCxmxqrg/7fnjjqHbd3vxouvvCsddE2Nry/QTbQb43xdz2310yFbd2gv3/70h9jNrPNOO0YGnHdiub9Kc+Yvcr97JtS76g0lG/dbvZk0Vdnec+NF7kaM8bhIb/h8qOt7kt5s2VLPMUs/kfLsxLfczYexD1wrKSkp7gaO3ayyT6l0O/oAd177NIv9WcAGAQhAAAIQgAAEIAABCEAAAhCAAAQgsOERQLTHuaZlifY33/vM5VtfdeEpcqY2ebTty+9+ldMvusXlXffRiu2ytsF3Pu6qq6dZ1beK410O7SW77LClPHFPcaEa51RdlI3JZpN/JoX9bf7CJbJ46TIXO1MZ0T702gtctXjsdvw516rUzpXXxg6NPm3y/LQLb45WWpuk7NJzkJO/T44YGL2JkJ9fIMf3us5VAz99/zXlvs1Bt4121fkfvfRAdD87vnOPy1xG/oTRN0bF64JFS+SYM67WuW4jozSCxzZfjJ987MFyZd9TpE7tdVc5VyQ65sKzusp5p3eJfsLAon2syn/qs8OcQA7ivftjvjVhuLRq7n06wD5JccDx/cU+EXHTFUVV6CUhmuA+QRlbpbrdMLCtIqLdbspcesMDcsEZXaR/r27RYSsaHVPaecuLjik5pz/+ni9dzhwox+mNotisc7ux0v+6EVpFfrKc0+MoNy8T7fY7d5t+EsQX2nYTpUfvm/TmwAqZ9tzwcq+tx8a9KneNem6t7Hj7fSksKNDq9mbu0wJXDhnlrif7ZIi/2c2iy296UB658wrZp+P27mmiY+L9E4v9IQABCEAAAhCAAAQgAAEIQAACEIBA8hJAtMe5dr5oN2G5l1ZSr1i52lXM3jVqvDRp3FCe1Qrbuip8bXv/42+l91V3ydUXnSpnnHhYmWcaNnKcPPHc6zL58VtkY6063/Ww81yMih+JEucU3e4WW7FPl76y6w5bqBS8rMwh4hXtFh1jkSklN5u/vQ97/ztFMuWH3D1GXn7zo2iltS+sLeKk84Ediw1hUTTPajzIl28+4iqCy9pKE+1WdWzvY2C/0+T0bp2LHXrN7Y+4OXz8yign1SvTvLQiov3dF+8tFg3kC2qrPrdK8CDeu8XOnHT+DXKJxuGce+rR7n1O1Ur1S28YKU/dd0202t7W3mJNTAr/qp9gWLZ8pYs7sc3iVs7XGwK2VUS0XzL4fled/97E+4rdlChNtFf0vPGI9kc1omX4Q8/Ji48Oka03b19sbQ/rcbmrPrcbSbb50TEl41luvucp/VTC2xqD9Kj7xEhZ2xPj9Rp+cJxcO+AM6X7sIZKauvZ1aPFFf85e4BoRx25ZWWvcp1di+SLaK/MnF8dAAAIQgAAEIAABCEAAAhCAAAQgAIHkJIBoj3PdfNFe8jAT4zdqRXGTjRpEX/Ir2vudc4LLeC5ri1a0a8WtZXoHUdFusR4HnnCxnHXyEXJF3x5lnjso0W4RKwefOEBO7nKwE5VWSWzn7/S/3aKV1q+/84lcduPIcol/9vrD5VaZlyba/TUpLXrm4adflnsfeUGmjLnNxb2EJdotL/68y+90Nzn232tHCeK9G7iuZ18rBfrJgJeeuMVxNPH721/zin2SwOT4G+9+5qJrLJ+8TaumKo1T3ScuYq/Fioh2O58JZxPdsVtpor2i541HtFv8ynOafV/adWERRHYjwW5y2FaWaLebOLbuX7wxWmplZpR5/dk1bJ/AsBx4i7QxfrvvtLUcqz0J/Hx2q663KvuytrN7HOkicWxDtMf5hyu7QwACEIAABCAAAQhAAAIQgAAEIACBJCaAaI9z8Xypa1XBFr2yVCMpbr73KZcBPmbEIKlX16tmt83PaDfZ6ee2l3a6Hr0to32By2g3qXnc2dfIAo2r+PCl+yud0R4V7d1VtPdZh2hXcTtu1OBiUyuvGWppFe12cN+Bd8vXmg0+/QUvw/rCQfcUq7T22Vm8zs4xUTaxJ95xmw6lVhL7+5Qn2kvGedgx1oh1xKMvuCaU1owyLNE+47PvXRa9L9qDeO/2fvyqa6uotoz8A0/oL320yalFu9j2/c9/ycmay39K105yzcWnRz8dsFw/ebHPMX3jFu0mluto9vxzD91Q7PooKdrjOW9Qor3XZXfIb3/OXadotxstdsNlXaLd3uBqrUy3TwnYjRJriGq57Zat/tR9g7Rpbzs5WqOI0rRvQmyz2FgwLbTC3uKfbEO0x/mHK7tDAAIQgAAEIAABCEAAAhCAAAQgAIEkJoBoj3PxSsto9/OZrRGmidWM9KIGplYx/ovmY78x7s5i0SL+aa05qeWbH3nIXnLn9X3c0xaVYZEZsXnapU3T4kBizxW7j+WW73V072L55KWN0fPi2/RmwcpohbS/T2VEu1VRW1Xz/bdeLK9Mm+mkb2xmuzXoPKXvECf+z9IbAJXZShPt/rix+fj+2ANvHa0RKjOqFB3jr1Fp61GWuC8p2oN47/ae7AbKISddIqdr81a7cXCTxvO8adn++kkI26a8OUOuuuUheezuq4o1d62saO916R3afHa2i/+JjVIpKdrjOa9l11ve/OvP3CHt27QodhmUrLJ/5JlX5O6HJ7ioFms26m+Wed9Zo2NaNmu8zuiYeER7yWvys69/FvsdOe2EQ10D3guuvMs1mn2/Ao2K9+1yoRywz85yu2bGs0EAAhCAAAQgAAEIQAACEIAABCAAAQhs2AQQ7XGub1nNUP1K46M77S3WLNTPGZ/+0Veusnv3nbZSAT3ANfz0t0WL/3NVz39qFMV4rSjfdstN3Ev2vDUNLdAGjCNvu2StxqML//1PbrvvaemlOd1WVV/WZtndb7z7qctN33HbDtHdYpuh+iL6LY2t8eMxfv9rrgrzB+RvjdD4SjPT/W2XzudKWRnttk9ubp6Li9lpuw7y6Vc/uyxwv9LaXrc4mSNOuUJydD8Tp/757DUTpzM+/1727bhDuStSmmi3cTt3v8xl4z8/+qZo9My8Bf/KMVqRbRnpfk59ZSral/y3Qvbv2k96nXKUXHrBycXmV1HRHsR7909snxywmxjWZLW25s4/eteV0TnN/OIHMTk+qP9pKoe9vHrLTreK7vseezHuivZRY15yxw27ro8c1WkvN57d4BmhVeLWPHTEkP7Saf/dJJ7z+rnyfrV/LNCSov33WfPkWP1d6KLxLbHC2o/isfWwdbGtrOiYior2dz76UrbbclNp2bxxdEpZ2TnuhlW3ow+UwZf2lAlTpssNdz7hoqAshid2+2fRUtezYYvN2rqnbd519RMu4x68vtxrmhchAAEIQAACEIAABCAAAQhAAAIQgAAEkp8Aoj3ONSxLtNswt454Wsa+OM1Va8fGtTzw+EQZ+eRkl/t86P67S/MmG8m8f/6Vae9/LlnZa1TgnSUnHnNgsZnM/PwH6X/dCFm1Olv26bi9E+om3q262qSmSe2Jj90sW3VoV+Y7sKzp7hpLk62y8DhtYtq+TXPNtJ7r5Ls1DrVz+pXXVll8wN47iUn492Z87QTumpzcuES7TcQaTz476S13oyG20tqf5IefficXqiiuVStTjj50H2mvstiqtE1ymhC2KufyttJEu+1v1fSX3vCAdNAc9iNVCK9Zkysvvvqe8s1xNxp8+VkZ0W7jn9DrOhfv0/OkwyVTc76bNWmkefQHlRlFU7Ki3cao6nv3ufiNVu1nayx7TOd9oshydM266ick5v2zWI7ST0k0aljfxaDM1QgUYxFvRrtFI3U5c5ATyAdrH4LGeg3b+7A1s+vDF+3xnNduJB2mN1x8hstXrJYDtfK7485bl9qg1arfrQrebsLYp0YszuXFV96TTTdupRJ7cPTGSlVFu32KY/LUD/WGwt5602tj/R3Ll9c1RubHX2a56Bhr8ms3TKyq3X4/d9txK9l7t23d9fDdT3/KuzO/liHap8FuCnh/Hnjz7qq/e/bpA3ufl/UufqMmzj9+2B0CEIAABCAAAQhAAAIQgAAEIAABCEAgQQkg2uNcmPJEu4niAYPvk7fe/0Ku1Bxyk7L+ZnJ87Atvypff/eakpUl3a7R4zilHllmVPl9l6ePjX5MPNO/cBHiqyuu2Kqb333NHOeHoA1wu/Lo2k+33PzbRydYVq7JcFfRB++7i5uZXlFuzycfHvSYLFi3RHOq2WiF8tIrE72Xi6x/ELdq/+/lP6X7BjU6IxlZax87zx19nOUH96Vc/ORYtNP5j+603VSG5vxOu5W1liXY75v2Pv5VRYyaLjZ+u8T0mbgecd1KxmxGVFe2WBT7knjFaSf6nZGZk6LodJefqJwoqWtHuv6eqvHd/DP+TAyZ9LdKltt60iN3+nrtQI2WelK+++1V7BtRxTM888XCX/R+vaLdxf/1zjtxy79Py1fe/SYN6dTTmaG+9+bOdXDTo3qhot/0qel7b135H7n3kefepCWsgfOvA81Rab1eqaLdPOzytvzvjX3pHZut7a9Swnmuye/G5J7rfI3+rqmi3iBwT4zNUoi/U6nQb267LPmceV+wTIVbR/9TzU11Mj918ycxIl03atZQD995Zuh93SDQiyuJ6btEbT+9//I1+iiNXme0g993cf12/srwOAQhAAAIQgAAEIAABCEAAAhCAAAQgkIQEEO1JuGhMGQIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABBKHAKI9cdaCmUAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgEASEkC0J+GiMWUIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhBIHAKI9sRZC2YCAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACSUgA0Z6Ei8aUIQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIHEIINoTZy2YCQQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCCQhAUR7Ei4aU4YABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAIHEIYBoT5y1YCYQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCQhAQQ7Um4aEwZAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEEocAoj1x1oKZQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAQBISQLQn4aIxZQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEEgcAoj2xFkLZgIBCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAJJSADRnoSLxpQhAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgcQgg2hNnLZgJBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIJCEBRHsSLhpThgAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAgcQhgGhPnLVgJhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIJCEBBDtSbhoTBkCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQShwCiPXHWgplAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIBAEhJAtCfhojFlCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQSBwCiPbEWQtmAgEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAklIANGehIvGlCEAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCBxCCDaE2ctmAkEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQgkIQFEexIuGlOGAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIACBxCGAaE+ctWAmEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgkIQEEO1JuGhMGQIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABBKHAKI9cdaCmUAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgEASEkC0J+GiMWUIQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhBIHAKI9sRZC2YCAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACSUgA0Z6Ei8aUIQABCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAIHEIINoTZy2YCQQgAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCCQhAUR7Ei4aU4YABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAIHEIYBoT5y1YCYQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCQhAQQ7Um4aEwZAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEEocAoj1x1oKZQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAQBISQLQn4aIxZQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEEgcAoj2xFkLZgIBCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAJJSADRnoSLxpQhAAEIQAACEIAABCAAAQhAAAIQgAAEIAABCEAgcQgg2hNnLZgJBCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIJCEBRHsSLhpThgAEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAgcQhgGhPnLVgJhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIJCEBBDtSbhoTBkCEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQShwCiPXHWgplAAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIBAEhJAtCfhojFlCEAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQSBwCiPbEWQtmAgEIQAACEIAABC76SWUAACAASURBVCAAAQhAAAIQgAAEIAABCEAAAklIANGehIvGlCEAAQhAAAIQgAAEIAABCEAAAhCAAAQgAAEIQCBxCCDaE2ctmAkEIAABCEAAAhCAAAQgAAEIQAACEIAABCAAAQgkIQFEexIuGlOGAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIACBxCGAaE+ctWAmEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQgkIQEEO1JuGhMGQIQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABBKHAKI9cdaCmUAAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgEASEkC0B7Bo8xZnBTAKQ0AAAuubQO3MNKlbK02WrMhZ36difAhAIAACqakp0qJRLVmwNDuA0RgCAhAIg0CrJnVk4dIsKSgM42ycAwIQqCqBJg0yZXV2nmTnFlR1KI6HAARCItCmaZ2QzsRpIACBeAkg2uMlVsr+iPYAIDIEBEIggGgPATKngECABBDtAcJkKAiERADRHhJoTgOBgAgg2gMCyTAQCJEAoj1E2JwKAnESQLTHCay03RHtAUBkCAiEQADRHgJkTgGBAAkg2gOEyVAQCIkAoj0k0JwGAgERQLQHBJJhIBAiAUR7iLA5FQTiJIBojxMYoj0AYAwBgWoigGivJvCcFgKVJIBoryQ4DoNANRJAtFcjfE4NgUoQQLRXAhqHQKCaCSDaq3kBOD0EyiGAaA/g8qCiPQCIDAGBEAgg2kOAzCkgECABRHuAMBkKAiERQLSHBJrTQCAgAoj2gEAyDARCJIBoDxE2p4JAnAQQ7XECK213RHsAEBkCAiEQQLSHAJlTQCBAAoj2AGEyFARCIoBoDwk0p4FAQAQQ7QGBZBgIhEgA0R4ibE4FgTgJINrjBIZoDwAYQ0Cgmggg2qsJPKeFQCUJINorCY7DIFCNBBDt1QifU0OgEgQQ7ZWAxiEQqGYCiPZqXgBOD4FyCCDaA7g8qGgPACJDQCAEAoj2ECBzCggESADRHiBMhoJASAQQ7SGB5jQQCIgAoj0gkAwDgRAJJJpo//qH3+XUvkNkxpSR0rB+3RBJeKd6dtJb8sjYV+TfJcukR9dDZGC/00KfAyeEgE8A0R7AtYBoDwAiQ0AgBAKI9hAgcwoIBEgA0R4gTIaCQEgEEO0hgeY0EAiIAKI9IJAMA4EQCYQt2n/5Y46MHvuyfPLlT7Js+Upp1nQj2XaLjeX4I/eXQ/63m4Qp2oeNHCevvj1T3nn+Hkf81z/nyAm9rpObrjhHdtymg3tu4G2jpcPGrWXotReEuCqcCgIeAUR7AFcCoj0AiAwBgRAIINpDgMwpIBAgAUR7gDAZCgIhEUC0hwSa00AgIAKI9oBAMgwEQiQQpmj/6LPv5MJB96rE3kxOO6GztGvdXBYt/k/e+uALeWXaDPnijdGhivYffvlL5v2zWA7df3dHfOJr78tDT70srz9zR3QF3v/4G6lfr47susOWIa4Kp4IAoj2wawDRHhhKBoLAeiWAaF+veBkcAoETQLQHjpQBIbDeCSDa1ztiTgCBQAkg2gPFyWAQCIVAWKI9JydXjjjtStll+y3lrsF9JCUlpdj7s0r3rTq0W0u0f/b1z3LriKedEM/NzZN2bZrLuaccLV0O2zd6/EtvfCiPPfua/D33H9moUX3Zbcet5NqLz3Dff6NRNMMfniAm1TMy0mUbrZ4fcN5JTvaPHjtFXnv7Y3nx0SHy/sffSu+r7io2p9fGDpWb73lKNtOKdj9CpqCg0B03Ycp0Wbx0uWzarqX0PaurdD6gozt21JiX3I2Ds7ofISOfmOTmNHrYFbL37tuFsp6cZMMiQEV7AOuJaA8AIkNAIAQCiPYQIHMKCARIANEeIEyGgkBIBBDtIYHmNBAIiACiPSCQDAOBEAmEJdo//PQ7Of+KO2Xy47fIFpu1LfMdloyO+fjLH+Xr739z8twqy6e997mMeuoleX70jU6af/7NL9Lr0qFy+zUXyA4qz01sW2V67zOPk1bNm0inky+VHscdIt2OPsDlrr8742vZtH0r6XrE/4qJdpP4Tzz3ustof+6hG9z8GjdqIH2uHl5MtN/xwLMy4/PvZVD/011F/qdf/yTXD3tcxt5/rWy/9aZOtI98cpJsuVk7Ob1bZ6lbp7bstG0Had2yaYiryqk2FAKI9gBWEtEeAESGgEAIBBDtIUDmFBAIkACiPUCYDAWBkAgg2kMCzWkgEBABRHtAIBkGAiESCEu0P/3Cm3Lng+Pkq2mPlvvuKpLRfvCJA6T3GcdKdxXoY1+cJg88MVGmjR+uUrtWsbEtc73r2dfKsyOvk52223yt88ZWtNuLNtbj41/TsYoq2+3mgF/Rvnzlatn/uH4y/qHBTvL7W//rRmhleyu59IKTnWifojE4kx6/WdLT0kJcSU61IRJAtAewqoj2ACAyBARCIIBoDwEyp4BAgAQQ7QHCZCgIhEQA0R4SaE4DgYAIINoDAskwEAiRQKKL9jUaOTN+8tvynmalz1vwr6xanS1L/lsul55/spzd40iZq8/16H2jI7Zvxx1UqHeQww7cQ5prk9X8/AI5o98t8tNvf7volp223VwO3m9X2Xrz9m7/eEW7Vc+f2f/WUlfn6E57yx3X9Y5Gx0x4+IYQV5FTbagEEO0BrCyiPQCIDAGBEAgg2kOAzCkgECABRHuAMBkKAiERQLSHBJrTQCAgAoj2gEAyDARCJBCWaLemor2vGu7y0H3RXdrbLFnRfpE2T/35j9may36UbLPlJtKgfl25aNA9ctIxBznRbptVmr/57mea7/6bxrr8IMtXrBIT3Ru3bSm5efnynsbFWMTLF9/+olnts2SYCvEjD9krbtH+6Vc/yVkDbpe3J9wtLZs3LnWV/Ix2RHuIF/EGfCpEewCLi2gPACJDQCAEAoj2ECBzCggESADRHiBMhoJASAQQ7SGB5jQQCIgAoj0gkAwDgRAJhCXas9fkyGE9LpettJp89LDLK9QMtYFmsu/U6RwV433kiIP3jFI59qxr5HjNWDfRnpefXyyixcT6wd0GuAalJx970FrxLf2uuVfS09Pk7hsvilu0L122Qg44vr9cd0lPObnLQcVWyarn09JSqWgP8dqtCadCtFdwlSdP/VAeffZVeemJW9Y6AtFeQYjsBoFqJoBor+YF4PQQiJMAoj1OYOwOgQQggGhPgEVgChCIgwCiPQ5Y7AqBBCEQlmi3t/v2h1/KgOvvkx223kzOOPEwaduqmfy7dLm8o8+/+tZM+Xzqw1qV/ruc2neIzJgyUhpq9XqXMwdKyxZNpFePo7RyfZW8oZXrr7/ziVzeu7sT7VZBPn/hYtfc1OJi7PhrbhstY0YMkuw1ufr6ZDmr+xHSYZM2smDhEhmor53S9RA5R8eLNzrG3sMt9z4lk17/QPr36ia777SVrFyVLW998Lk0a9JIzjvtGER7glzXG8o0EO3rWMmF//4nPS++VZYuWyktmjVGtG8oVz7vo0YSQLTXyGXnTScxAUR7Ei8eU6+xBBDtNXbpeeNJSgDRnqQLx7RrNIEwRbuB/vanP+WRsVNcjMsyjXhp3KiB7LbjltLt6APlf3vuuJZo/+GXv2TwnU+INTZt3aKpnN7tUBk36W054agDnGg3sf7gk5Pkx1//lhUaIbNp+1ZOeFs0zKLF/8nwhybIZ9/87L43Ed/18P2kT8+uYv82qIxot8r1J557XV589T2ZM2+RbNSovuy4TQc5//RjXMNVomNq9K9T4G8e0V5BpNM/+kqGPzwB0V5BXuwGgUQkgGhPxFVhThAomwCinasDAslHANGefGvGjGs2AUR7zV5/3n1yEghbtCcnJWYNgeohgGivIHdEewVBsRsEEpgAoj2BF4epQaAUAoh2LgsIJB8BRHvyrRkzrtkEEO01e/1598lJANGenOvGrGsGAUR7Bde5PNG+IiuvgqOwGwQgUJ0E0tNSJEObnWTl5FfnNEI7d2Fh4VoNa0I7OSeCQAAEUlJE6tVKl5XZ/H82AJwMAYFQCNSvky6r9O/GhaGcjZNAYP0QqEl/h6qTmSa5eQWSV8Bv7fq5mhg1kQloD04p0C971P6c+n2Ke9RfCX0slHz9K6imjkiePha45+zL28de94/zfvb29cfLyys6vkAHTMleJWk5WZKas1pSc/VLH9Ny7ecsSVujTTlz9UuPSclLkdWp+v/SjNqSnVZbclPqSoHUldTCepKZW1cy8jPkzJENEhkrc4NAjSaAaK/g8pcr2lfnVnAUdoMABKqTQLpK9oz0FMlaU0NEu6Tof/yjqTqvOc5dNQIpatrr1U6TldzQrhpIjoZAiATq18mQVdm5ovd62SCQtARUddWYv0PVqRUR7SoN2SBQGQImlz1J7UvpFE82R2T1WiI7Iq49Ma0yOiK63fFRie2NmauDRyV25PXY8aLHR4R4gUpqJ8ajAl3Ht3nY6/7Y/nz1sazN/g1VqyBLahXa12rvy/3sfV+7QB8lSzILVunz3vfuUb8y9E+P9MI0SZV0SU2ppf8/rCUFqQ1kjTSUvJRGsiZ1I1mV3lgfG0lBYSNJKawbN/YTH8mI+xgOgAAEwiGAaK8gZ6JjKgiK3SCQwASIjkngxWFqECiFANExXBYQSD4CRMck35ox45pNgOiYxFn/IqHsyWKTw/ZBgzyVxwURIe3L7GJCOiq0bb9I9XX0OPvZk9VeRXakGjsqx1Pcpxk8yR3ZJyKri6q0TYZ78tyNH6n8NpFuzyXKllmY7clw8YS3L8CdFHeC3JPhTo5HxHgd3be2L9OdMNfX87MkQ8fSD1ZKQUqG5EpjyVEpnpuykeSkNNSf9TG1oX7v/ZznHr3n8qSRFKakxYUkX6X+yjrZsry297VCv3Jqr5GUWjmSUUtr2esUSqN66dKsQaa03KiedGjdRLZq2yiuc7AzBCAQHgFEewVZI9orCIrdIJDABBDtCbw4TA0CiHauAQhsEAQQ7RvEMvImahCBDU20FxPRftSHCWGT1pEq66JHlcwReWyve9XREckdqc52stt/zoS1L6ujMSK+oDYR7UWJrCW0XexIRFbHVFt7Fd2e+E7mTwFZ1F+auuW01EL3mKpf6faYas8X6mOKpKXb65H93HMitVJyVH5nS2bhKpXdXsW4PWao6DYZ7oS3PpeuMSsZVimep18atZKmj/acxa7Y96m52ZKuMSzrhpiqQtyEucpyJ8bt+0aSo+LcnrOfvdf9nxtrZEutuP80WJWZ42S5fS2PCHT3c5017mf7Pr1uodRvkC5N6qtAr58p7dMbSPuM+tI2rb5soo+ZUr6sJ6M97mXhAAiERgDRvg7U8xcukW7nXqd3gfMlK3uNNKhfV449bD+5+qJTo0fOW5wV2oJxIghAoPIEEO2VZ8eREKgOAlS0Vwd1zgmBqhFAtFeNH0dDIGwCpYl2E8Ve5XLJKmZfDHtxH7FSu6jS2aI6PHnsR3xExbPJac2htpSafKuajsm0jgpsfdGvro6V2ibCNb66TGHuV2OHzS/I80VFdLoKaxXRJqxNSKdHZHW6ympPXvsC2xfc9mgy2xPYxSW3/pyRupbk9vdJ1bHdsdFxvbH98ztxrqI83cYuLHCyO83EtxPdJrmzNHtcJXe2OpE1q/V7fdQs8pQ19ug9n6LPu9f151R7PvJzii1aFbZ8qVcky02OZzSVnPSmsiatqeSmmSw3ca5SvaC+5BTU0+utTtxnK1QWa+rkyCr9WlY7S5bUWi2Laq+S5XXXeDK9VoxMj0j1FL3h0Dq9npPm7TLqSvu0BvqoX/qc+9Ln01MUeBU2RHsV4HEoBNYzAUR7AIAR7QFAZAgIhEAA0R4CZE4BgQAJINoDhMlQEAiJAKI9JNCcJikI+CLZSeVIzIYvj2Orn/0ojqJmi5Hq6pgID19WR7OvI3EgLtLDr5L2GzFGI0diqqv980eaOPqV24VOikeaOlpEicrsZK6udiLaJLXJaqu0tkpqV23tieuoUPb3iQhmV4WtQtnEc7q/b6Q62xfP6fqCd7wntG1s7zh7NDmtwtpJ8Jg5+OPHCHAnzGMqvt3cquZdS/990IU08e2LbifEIwLcCXFfjGetcs8XE+ZrNDqlhChPycsJ9PeuME1zxmur/K5dV/JrqTTPaCl5KsvXqCzP1RxzV11eWF+/GkhOfj3Na68jebnaHHRNhuTol+a6xDcf3T1dY1hS62nz3zr5kq3yfKVWmS+tbfJ8tczNXC5/69fCWiujlejZGWv348vU9PW26SrRnTivr5XoKtGdVPckeut0bVzqgmfW34ZoX39sGRkCVSWAaK8qQT0e0R4ARIaAQAgEEO0hQOYUEAiQAKI9QJgMBYGQCCDaQwJdg07jBLWL/lAh7CqhvagOvwFjVGD7udHR6I4YWR2phC6qoLZcahtLhZvb36vcLsqkjmRZx2RXu/PEZlfHNFTMi8SSeHOJSPVyGi0m+vJZFIgf++FVNKugNDlsotJVTXtCuUhce5EhvmD2X1v7ODvek9VeJbV3TLQK20luk90xY0equ0uOvfZx3jHJvlkleGnV4Ca9o89nFRfm7vmSotwEe052sDgUcGGt2lKoYtwEeWGtyKP9XMsT5gX6fIpKc1dRblEs+Q30kwhWUV5HcnPrypqcDMnLqaWyXJvwrkqVPHX89pWfE7+YTs0Uyain10w9fdQoFnXe+iiSUy9Xq8+zZbFWn/+j0nxOxnL5K3Op/J6xRGbnr5asQv2FLWerl5KuIt2T6E6ka6yLL9Ht5xZp8VfGB7sQIoj2oIkyHgSCI4BoD4Aloj0AiAwBgRAIINpDgMwpIBAgAUR7gDAZCgIhEUC0hwS6EqcxiexHgZQUyn6jRb/5Io0WKwG4lEOKiWg/miNSSZ2q5dZ+5XS0IjpaCW0V0SazvQiPItmtktuvyo6pro7uE5Xdtp+OX7Jq2qqvXfyIN7YJ7maNMmRNbr7K0AKXsW2vs1WcQEquVnmXkNypkZiUYs9rnIofo+JXk7ufI1XmnkhXMR7kxwn0jklhZpEYFxXjhZEK8kIV474wl9pqqk2clxDmtr89n5dWTyvJ60qOSfLVKZK7Uv8sUdefs6JQZbn+rN/nu0f9eaXexMpSaa43t+La9Np0slxPmVG/UL9PcY+WZZ5RX79XoW7PWTX6Yq0+/6fOCpXmK93XnJwVMse+V2M/L3+VVsCXf5erkRr6dvqe2mkWulWgWza6L9Xt58Zp8eeyx/VeA9gZ0R4ARIaAwHoigGgPACyiPQCIDAGBEAgg2kOAzCkgECABRHuAMBkKAiER2NBFe7U1WoxUafuNFvMs4iOmGaPfaDFa5R3Nx/b2C9LdhXQpRU9jMjhaXR2J9HACOdJ8saxGi94+KuZMHpdo0OjHg6RZdrWLF/EEdjQyJBIPYtnVxeJG/OxqldHpVvVdLDqkKELEPyZsVpU534bWDHWdDPSXOMUqwi0vPBKfEhXeOV6OuJczHlNBXiJn3FWd+/vZHwoBboUZKnljpLfJbyfHYyS5qx6vYxJcX4sR5n6Fufe8CnYT5SW2QrvhZrLcVZIXyfFcfS7PxLl7zRPoJtNNnNsx8W5pGtGiSSquwjzdJLl+b4+Z9VOjP5tY957X38Hanpm3Gz5OoOsE57pHFep5K2WuSnST6Qt0UvnrsPjNUmsXifPYeBf9fhOtTq+jFevJviHavRWcMGW6PPfSdPlj1jy9SZgmm23cWo48ZC85ucvBUqe2fuShitvj416Tn377W4Zee4GMHjtF3p3xtTx9/zVVGvXvuf/ICb2uk89efzg6ztTpn8qlNzwQ/bl+vTqyz+7by/WX9pQmGzWo0vnKOvj5Ke/KWx98IQ/efkl0l/OvuFO233ozufjcblU+53/LVsqIx16Ut/Uc/y1fKa1bNJG99T2df9ox0rplUzng+P4yUs+9g54v6G2XzufKg7ddIvt03F7m/7NYrhgySr7/5S/ZfJM2cvhBewSyjuXNGdEewIoi2gOAyBAQCIEAoj0EyJwCAgESQLQHCJOhIBASgYqI9oo2WiyKBIlkUFs8h0Z5+NnSflW2J78jjRUtCsSP7/AbLVrUiN980R1fvImjFwlCo8X11Wgx3cluv5LaiwyJzcB2jRhjmy9GJbdXyc22fgkkvGh3OeMmv9durOlHqbhK8NJyxiMV48WiWPLXztyuCuHYnHFfevtivFiVeJ16pQpzr4rcqzp331tuTxxbvolxE+IqzqNy3AT6ygLvZ3s+ItZtn4Ls+Ma3qaRqHLqT5VZtHolqMTmeGa009153ES7uS//ALeM02Rrb8reK8znua5WK9OX6uNqrSFep/m9Bdrka3aLsW6bVLZaJ3j6zgctMb6/V6BvrY0YVG43Ggb/adkW0i9x09xh596Ov5Op+p8quO2zp1uIHlanPTJwmA847SbbZYuMqr0+saF+8dLmsWp0lG7dtWaVxyxLtDzwxSV589CaNHyuQ+QuXiEnv0044VM486fAqna+sg0sT7bPnLdQbFLWkWZNGVTrnqtXZ0qP3jdK2dTO3Fm1bNZNZeoPhmRenyS7bbyEnH3vwehXtP/8+W9q3aS5169SWYQ+Ok2XLV8l1l5ypf/8rkKzsNYGsY3mAEO1Vuny8gxHtAUBkCAiEQADRHgJkTgGBAAkg2gOEyVAbJIFo/IefCR3NrfaaG/pC2RfPYTRaTFHBsWZNfjEZHj1vDWi0WLyJYgmhbHEdkQaNVgldFPfh7ZdmUSB+lbafXZ3IjRY3yN+qmvem1odot+abflW4F5/iVYjb96mRZpxSImfcb8wZG6XiKs1z1wS7KJYzHqkYNzFu1d+xeeN+lbjFqawtzGu7ynLLIXf7WVV5gMHwVjmeu8KrNvcjWZwoXxmJaImR6S7bXAX6OlJS1mJnDtriWEyKu5iWSLW5ezRx7irQI0Jdv89sqDc64rjhtawgJyLNtQrd5HmOF+8yNyLXl+rr5W3pOsE2qSrSrbGoZaRbk1EV6SbRrfloG418sX1q+lbTRbsJ9R59bpIXHrlJttys3VqXQ6HdoNObVvsee6H07dlVXnlrpvyox7zw6BBXmf7ezK9lddYaad+6ufTX6u3OB3R0Y2Rl58jQ+5+RN979VDIy0p1w3mLTtq6iffzkt2W6VrT7FeAL//1PhtwzRr789lepU6eWnH/6MXLSMQe5cey8Z3c/UqxSfdacBbLfHjvKHTpGZmaGHHnalfL3XBPaXsX9I3ddKf8sWiom2l964hb33NJlK+T0i25xFe177bqte86q6Yc//JzMW7BYtttqE/eaVWjb9tfsBXLT8Cfl25/+dNXiA847UQ7Zb1f32swvfpBhI8e5fZo2bijdjztEDjuwo3TpOUj/rpYvtXROafqXj49feVAuu3GkqzA/u8eRMlal+JvvfeY+JfDmu59J7VoZ7pwH7L2zG3fegn/lRj3n59/8rFX3DSUnN08uOvt4OfGYA+WRZ16RF155z70f4xi7rcnJdeeMrWi3cz3yzBRZ+t8KaawV/Max71ld3WFz9Tz23r787ledQ6Z03HkbGX5DX42yypVbR4zVqvzP3bmNyZAre0k7XVN/bGN1+U0j9b6f/tmWkeakf4Z+8iF2Hb/6/je5Xdd8lvJpozcETMjbzQB/HUdqZbz/c7E3Us4PiPaKkipnP0R7ABAZAgIhEEC0hwCZU0AgQAKI9gBhMlSZBKq70aLLxHYRIF4zRk+K288qyiMNGl1cSIxE9yvCk3VZ/UaL6ZYR7WdKW7QHjRaTdUmZdxITMNGetWKVZOuXL7ldrIpVicfkh5v0Fj9nPCZWpWTeuKseD3KznHG/AWdsrngkSiWaK64V41FhHtOY088Z9/crzKh6nESF3p4WdTtZbo0+IxEsXuV5iuSoOPebgPrV5hbjUlCJYvtUjVxxleauEahfVW7SPNWrPo+V6fp9mu5TlW2RVpzP1ZB2q0D3KtI1Hz1aob5SVq6j0WgtSXPC3ER6W6tAz2zo8tKt+Wh7Feut9Pv4a+6r8o6S89iwRfsqvXbnzK3atVMZ0vX017pdm7WviIeeelne//ibdca4mPDerH1rJ21NQLdu0VR++WO2e2zUsJ78+OssOe/yYfLh5PudBDdx++ufs+WGy86WWiqW73v0RcnTv4SVFO326bqTL7jBxZCYlJ4zb5Gc2f9WeXjY5a6S3s674zYdpE/P46Re3drSd+A90ufMY+WEow5QyV56dMwVQx6UjRrW17/7Fchy/fO4485by+2DLpCWzRu7Y048b7CMGNJfdtlhC5XY78qYCW/IlDG3uU/BHKvS/KQuB8opXQ+V7376Q/pfO0LGjrxONtHq+/279pNbBp4r/1PZ/6fK5M++/llOPb6TlFbRXlK0j3j0BY2ROVH232tHmTJthjz/ssbNTBjuPl140vmDZd+OO0ivU46SZTpfi745pWsnJ9p7XXaH7LTt5uVG0MSK9t//mqsiPENaNNtI7JMDVs1/4+VnOwYXDbpXttisrVxwxrEugmbia+/rzZPj5MkJU+U9vfkw7Po+eqMgVabrpxu232pTt2/s2Nfd8Zi0UoYX6k0A22JvmNgNjuN7XSvDB18oe+22rcbcfOlunkx9dpi7GWDreMn5J0VvoFT0Gka0V5QUoj0AUgwBgeolgGivXv6cHQLxEkC0x0usevePp9Giny/t501HozycYLYYEE88u0c1z36ESLFc6ug+hS72w8+mLvCPi47lRY2YqDZB7Ulr/Th9RGhXL7WqnT3sRouuIaNfaW1VkZFGi+mWb+1yrvUj/Y1ryX+rciRFc7H9im3/OBPrRIFUbc05GgKOgOWMr1aDa5Xj0YrxSGPNmJzxQhXjpTXmtIpzP5fcxa4EnTPuGnB6ueJl5Y17GeO2jzbhLDNn3HstEbZ8jVxx1eWRKBbve5PmGlcVEepe5rlFtZhcj18XW+W41wA0UmluDUFNljewSnOT515D0GjmuT4XIL5vtQAAIABJREFUT7X5ujiaRl2gzURNoDt5rt/Pdo1G9csy0/X5bE1IL2+rr/nnLsbFqtHtK6OBPtbVinSNd9G7Ac01P52t6gTCFu3f/Vgo94zSv2yFvO2wbYoM6L12pr5VIFtFuVU22zbz8x/k4uvvi87uyXsHRoX3Y8OvKhYjYxXM4ye/I1//8JtGiGTLv0uWycsqrDto5faeR/WWp+67RrbevL0bKzY6JlbQfvPD71op/aC8Me7O6DktysYiUkw8m6CNPe8Ndz4h9evXkct7dy9TtJvUtnlbNb6J9mcmviWffPmjTHr8FleF//usuTLsuj7R81ll/OBLz9IbBOkquUfKO8/f7ar4bTO53LxpIxX9XWXvo/tIv3NOcALcst/9rSKifebn38t9t1zsDlm0+D85qNsAly3/1+z5eoPiTnn3xXud5Latz9V3S6f/7ebO0+3c613l/MldDirziomV4QsWLZEnxr/u3q9V8/+nUS9XX3iKG8OkfVOtmL+098kqzJtEx7ObLa+9/bG7CbJVh3bR9247VFS0W+W9VfrffFWv6Lhdzhwotw48T3bctoNbx8nKv3nTjeK68hHtceEqfWcq2gOAyBAQCIEAoj0EyJwCAgESqImivaiiWf9BHxHDxSS03/zQCWhPRDuB7OR0iexqt48nlWOFdcl8a3/8qIQ2GU2jxWijRb8ZYlEkiEplF/Nh0R9F2dIu8iMiov3mixYF4h1XcxotViSjPcA/JhgKAslBQP+AdTnjLjZFhXhEdMc23DQhbmI82pgz0nDTVZLr/tHIFXs+L1jh5aq8nfAuEuNrxapoVbmUlzNucSx+w844c8ZDX0T9f2aONvn0m33mro40/7SIFssz19fcc/4+Js3jbQhqn9BxDUHtS/9f4Wecqyy3bHNPphdvFJq2novtrYmoF+HiNRb1JHokL13vDswrWOWakZa3bZSa6SS6yXSLddk4U793sS6eXG+kr7OtfwJhi/Y/ZxXK8y/F+0tQdQ6bbZIiJx67dnaRSdbpM76SZ7Vq27bsNTmuEto2q+5+csRAF4FSUnhbBvnx51zrqpSPOXRfV9Vu+5jgbt5kI9nvuIucSPZjXcoS7a+/84kMvG20i2LxN4sysYp1i20peV6LbsnTv3AP7HdamaI9NjrGxrQYm45HnO/icca/9I6rjDdR729nDbhdjj9yf8nUaBaT1OMfGhx9baTG0MzTJqAmkN/+8EsZNWay/PzbbNl80zauQv3AfXauUEV7rGhfnZUtexzZW2ZMGelubDyqkjr2nLGi/ZxLhsqeGnnTW6v4y9p8Gb7dlptqjM1A2W3HrVyleittmnrJ4Adkj122cRn1v2uj22Ejn1UJ/5NrDNtDq+bPPfVoWbkqS4Y+8KyLjrEK+0P3310G9T9dc9lrVVi0282RVzVWKPYGhL3PoddcoFX8OyHaq/4rXPkREO2VZ8eREAiTAKI9TNqcCwJVJ1BZ0Z4ojRZjGzIWiwTxZXmkQWOBL8zL/7dt1YGuxxFcFIiraPYqlq24xSqfXQNEk8z6Io0W1+MCJNDQiPYEWgymUnkClu+rleFl5oxHGnP6USolhbmJ8WLCPLf8XOp4J1pof9BGKsb9vHAnyl1jzUh+uHssLWfce90dp2K8cYuNZHVOgWTnJun/hLQMOy+rSI5bVXlRtblGtLjYFq8hqP/8OmLCS12OtMxIrrnll7vqci/j3G8I6jLPnUyPVKFbREv8Re3xXgrF9s9VSR5tNBor0rUa3YT6P5phU94q23SbacV5O31zJtHbu4gXq0j3JLo1Gq2tFets1U8gbNFe/e+4+Ay+/fEPOaXvEHlO5fJ2GhcSu5mcfkLFeWmifcqbM+TpF96QcaOKpLQv2jts3EZ2PexceeWp27WRZgs3ZFmi/QvNZb926CPy6tNDS0VTnmifM3+RuxnwxRujo8dalntJ0e6L7dfGDlUZ/LH8pvEqd2pMir8dceqVGnHjVbSbmJ7+wj1rVbT379Utur9l0j876S15RKvjTZZbBMvU6Z/IqKGXRfcpGR1Tlmj/6de/ZdDto2Xa+Luix8aK9lFjXpLJUz9w1eAWyRO7lcxotxsch5x0iXw+9WGXwW7bgOvvj4p2/1i7UWGxNxdccZc89/AN0U8d2Osm4y0ux6JrTu/WucKi3W7YzNcbEjdcflaZ60hFezX99iPaqwk8p4VAnAQQ7XECY/caT6AyjRatyM6rjNY4D4vr8KM6/JiPSCxInv6DPppLHbuPSWeXTe2Nk6YNr7LWRJo6ukpre7545TaNFr1KalddHWejRV+Kp60lwyPZ2Va57Sq1dWyNAjF57seFeN971d32xQYBI4Bo5zqoLgKuaaZVi0dyxV3OeKQaPFaYS1akajzasHPtCvP1kTPui+3YKBVPjscI8ticcb/hZkSgF4tiSQ+uanh9NEOtyjWQr/cknCyPyHGLajFZbrnmXqW5Fpe7qJZIFbpKdi3Ujm+ziBbLM3fZ5hE57h71OWsI6gvzSIxLpj5qtHi1b1mafz4rzzLRvWgXLx89EvOiP/+r+enlbWlq/lumaYyLq0hXia556JaR7irSNejd4l0yaDRa7etckQnUdNFujK65/RH54JNv5Yq+PWQPbZBpESbfaTPQARoh8/QD15Yq2i025oIr75JHh18pTRo1UOn+psv6nvT4za6pqsniBhqvYpnulos+/KEJTuiWzGjP1Y+dWjzKofvvJmeceJhrtvmtZqNb48+9d9uu3Ip2q77f66g+MvrOK2TrLdq75pzvf/ytPPD4RJkw+kYXHbNEq/Pv1SiZP2bNdzcTrBK/27mD5d4hF7nK79Iy2rsdfYBWgHd2Ge39VDo/o9X+DevX1Sz3qXLysQe7WJtXps2U+/U8rz9zh8z47HtXlT9u1PXukrNYloqK9gytnjm0+6XSXyNpDtG4mM+/+UXz7Z8WE/sWHbN85Wo5STPlrTHpxdpsdmPNip+zYJGL7Nlxm83cfPyK9q07tHe8rrn4DPnfnju6Cnz7BIB9MsAq2u8a9ZwceciespWuw2xtItu9940y6bGb5R3NZN+4bQvZfaetJVf/gWhZ+2d0O0y6HLZvhUW7ce1+wY0y+LKeroJ9mUbWWPNYa0BrjVGJjqnIn0braR9E+3oCy7AQCJgAoj1goAxXIQJF0R5FmdB+NrTlSufpv92K8qVNMntZ09FmiBb74e8Tfc0by7KrvXgRL386KsZjsqtptOiLYq/K2hfK0ZgPq7i2fOmYvOnY5oyxItodrzkgXrV2pHI7WrXtPZeusttVckequp349mV15HGtjGt3nHcMGwSSnQCiPdlXMLz5p+Rp50dfhMfEpMTmh4s+X6hivDRh7oR6NFbFcsaDrch2ueGR6nAp0YwzKr2jOeN1iwlzV1keiVJxj5pZnqjb+hTthdbg2aJYTJbHyHFXXb7CE+XR2JZIw1A7Jt7NGny6hqD6Fc0vV1me6TcE9avQXdW5/r9cG4gm4rY0f42rPLcs9Nkq1GdrKf5cy0k3oa6Py9ZRim+SvI3Kc9ds1CrSM7UaPRLrYs1H7TWT7WzJTwDR7hXePDNxmpPOf835x8W9bLFpW9eg9ISjDnQ/l6wst5Uf/tBzWtn9tsaF1HZNLsc8/4bmsg9yon3+wiVy9S0PyQ+/zJIdttnUNU3N13+YlRTtNs68Bf/KsAfHuSrr7DW5Lgf+8j7dZeftNi9XtNuxFvUy6qmX9D0UuNiav1UgWzNRf6tbp7aTvdcMOEPn4OWSv6uNP+/Suc//519XxX/9pT1l803auNf+/Hu+3HT3k+5Gg815gEbjHLLfrmJV8dcOfdTNMSt7jXuPJrS333pTx88asL6jYnujRvXl7Ql3V1i0m8C3+Bg7p0X27Ntxe1cZfsrxh8pxh+/n5mSZ7veMft41rTWB3UIbkh6kkTW9NPbFpH5sjrpV9Juot5sQB+u8bazDDtzDiXbLrrdPIth5rDFsX82dP6bzPl41vlbOmyyvV7eOHHvYfi4SyD5FW9GMdpun3SS4Z/QE+UmjdawB6u47baXi/SwXU4Nor8Y/KxHt1QifU0MgDgKI9jhgJeCuidRo0Rfl3qM1YoxkYJdo4hhwb7HQV6W6Gy1mpKdI04YZslw/6ug3WnQZ2GXkYtNoMfRLhBNCYC0CiPYN+KLwc8YjFeO+6F4rb1zFuKsgzyken+IqzK3xpn98deSMW5W4VY2XqBJ34jwSu2KSvNDyyBM9ZzygSy0e0W4NPl2zz0gjUKs0z9Mq85xVBU6a+9EsXsNQ/TuSNhCNd0vVlAFflrsK84gc9yNanFDXCnMtzHYZ51Z9nizueFF+lgp0azKqXwrJZLprOqpfJtdXacV6eVsd12i0blSet3exLhbv4kW9WLV6/MTjXSH2TwQCiPZEWAXmEEugR5+bXBW6VfTX9I1mqAFcAYj2ACAyBARCIIBoXz+QlyxNka+/TZVcjQKxJoteU0a/OaNVWZuEthgRr+Lajwvxv/ejQPIiMSNF++i/0XM2jH8umBx2ERuRZokl4zoCqa52jRn9CBGvctuiRFL1eavWztBzp8RUTvsV1PZ6yeMyikfprZ8LpwKjVjajvQJDswsEILCeCCDa1xPYygxrOeMqtmOjVJwAj0SmRJ+PiVJxFeKRpp0lK8tTwswZN/Gd6VWJuwacfmV5bJV4rBi378mwiusqscrxnOUpUk/0hvbSfFm9zBqBWp55pNK8mEz3ctDX0SdzrfNbCkm6L8udGLfGoJFHawjqKs29n13eeUO9ZpP0010Fml8zX+88+BLdNRvVSvS57nGVa0KaU25CukgDFent0iPy3HLRTaBb09HIV1PNT2eDgBFAtHMdVDcBq7Bv3bKptGzWWN7/5BsX9/La2DtcM9KaviHaA7gCEO0BQGQICIRAANEeLOTVWtX0zrsp8vGn4YUzWy8VF88RievwxLUnlH1Z7cV7eFEgrvrZJLeL8yhq0ujtW7RPulpnb/+YmA8//iM2GsSPGXFNHyPjl1FdXUubZrFVjQCivWr8OBoC1UEA0V416ik5VvFdlBnuy3B79CW5k+FZakSLCXMV6pEGnEWiXPcLctP/URZYpbc20CyWM24V4DGNOVNiKsaLxae4SnGvAafUri2FAeaMB/k2k3Is/StHUUV5JKbFVZ5rtbmKc6s0j1abWxW6Pl+gyT3xbqkaueJVlEcyzqPSPDUqy6MyXfezSJcNZcvTuwwuxsVVoGsuukr02flaka53J0ymz9fn8tYRFt8ktVYxce5EustHt8d60jA1uOz9DYU776N0Aoh2rozqJmDZ6c9PmS45uXkaSdNWru53muyy/RbVPa2EOD+iPYBlQLQHAJEhIBACAUR7MJCtAv3Dmdq05X39x5v+I017oUjH3QqknlYmFWVgF8/FdpI7IsOjWdgR8V0UTxJTWW0SW2V2qgpz7SnDVkMJINpr6MLztpOaQE0T7Sl52rmxRJW4a6QZyQ+Pym+rGrcccpdFHnk9JpfcpLmLVVmfOePFqsEtf9wT5n6UikWnxArzaJSKqyZP7JzxpP6lKWXy+Rq54olxT5ZbpbnJ8ZyV2pvFZZ3HynT9xKA1BI1zs8pxi2Cp1UAry+tEolis+lx/tsgWv0loNPNcn0vWavOKoMmRfJnlMtGtAl2/NNbF4lxcxIsK9YUa+1LebQNbgeZpdVyjUZPnbbV0f2NXnW6NR+vLJirTayVCR9WKwGCfhCeAaE/4JWKCNZgAoj2AxUe0BwCRISAQAgFEe9Ug6yfQ5etvUmXa2ymyfIX2Vtd/Uey8U4Ec1qlQ6us/1NggEDQBRHvQRBkPAuufQMKLdssZj1SDuwabJfLG/SpxyS4nZzwi1l3lueWdBbgVZmhFayQ/3ElwleEFkfzw2PgUqa2lxPp8QSQ+xUnyaONOleI1LGc8wCUIfCiL3XayPCrHI9EsVmlumeeacZ67ynvOMs+tUag63/g2PcRkuS/H0yyiJRLJkmkiPZJnHtsoNC1SPB1PRnt8k0qsvVfrQsyKNBj14l1Mpls2upeRvrhgTbkTtiairRVkW2syqhLdq0Rv4In1SPPRdMvKYYNACAQQ7SFA5hQQqCQBRHslwcUehmgPACJDQCAEAoj2ykP+a1aKvPxaqixa6FVMbbJxoRx9ZIG0aolgrzxVjlwXAUT7ugjxOgQSj0Dgot1yxkuJUnHxKH4luVWCl5UzXqKy3FWgB7gV2se6IoK7IBqL4onuWGGeomLcF+ai8St+NXnsfu57csYDXJ31MJT+tceyyp0cX62iXB+dHI9EtLjK85WeLPejWgoqccmlafyc3wTUj2JxGeb66UGT6fa9k+Z19WeXb175hqAbimhfXJDtIl3mmkB3kS5aja6L4TcfXbGOrJxMSZU2Cj0qzk2ip2lFut6xMLlur6XSanQ9/FIxZGUIINorQ41jIBAOAUR7AJwR7QFAZAgIhEAA0R4/5IUq1l97I0V+/8Or0GnSpFAOP7RQtt1Gu52yQWA9E0C0r2fADA+B9UDARPuiBUuk0K8WLyHJrTmnVY2XnjNusSqR1/z8ccssD3JTkW2V305ql9JY0yrDTYibGPdiVCKxKTG55H7OeGFdrSq3/DO2pCWQrxLcJLkWODs57kW12JdWmPsS3T1GKs4toiXeGgOLaLEoFr1conJcZbk9l27i3DUI9YW5yXQ9QYiXVTKIdkO+MF8bjUbEuUW6mED3m43O0bsdWfbRgXK2uq7RaL1IRbpWpWusS1urRHdyvYGLfYk/gCdpL30mnuQEEO1JvoBMf4MmgGgPYHkR7QFAZAgIhEAA0V5xyCs0GuZNjYixqBiLjKmtza8OPrBQ9tyjwOWws0EgDAKI9jAocw4IiKTkqm0smRceG48SFeORnPESjTmLNew0kW7/4whwixXjFqXiBHgkKsUX5n6eeJk5475Yz6gV4MwYKpEIFGrciotiMVEeI8edQLeYlkgVuleN7mWc2zHxbtbg08WyuKagRdXlmfUjDUGtQajLOFexbg1B9e9QibwlgmjP17sX87TRqItxcZno+pijVemWl65S3V7L1Wak5W0NUzNcnIs1GPXiXUyme/nolpNujUjZILChEEC0bygryfvYEAkg2gNYVUR7ABAZAgIhEEC0VwzyjJmpWsVeZNP33rPASfY6mv3JBoEwCSDaw6TNuZKKQEG+lzOuwtvljFvzzRKi3Gu4qTnjpTXmNFEe2d/tp+MFuRWazLZq8Zj4FL/JZqHGpjgp7mR5KTnj0SpyT6i7iBW2mkcgEtHixbIUZZznW0TLqgIv81yr0H2xbjEt+Wvir0dWNxuV5a7C3CS5ffmV5hGZnhbJOLfq8w2t7DkM0Z6nktzk+WxdTK/ZqEp0l42u8S768wJdaJPt5W3NUmtHKtA9gW7yvJ3KdHvcRCvSrWKdDQI1hQCivaasNO8zGQkg2gNYNUR7ABAZAgIhEEC0lw95TU6KTJyUIj/85En2bbYukMM7F0pTjYthg0B1EEC0Vwd1zrleCLicccsUV2uoFd9+BXixnHET3pYzXoowd8fGCvP83ECnWZimtrFElXg0NiUmZiU2Zzy2MWds3njLNk1l4X/ZUsD/OgJdo2QfzOKxYyvJXX65/jrkrIg0BI3I9DyNbLFKc9cQNM5ryPpQWla5yzaPNAJ10lzluGWbp7lKc+9n93wD/b0MMaIlUdcwCNGerbEtf0eaipo8n527XCW6Rr1EpPq/mp9e3nLa3zxb6N0MryJd411UnjuZrjnp9tzG+lxmmHk6ibpYzAsCEQKIdi4FCCQuAUR7AGuDaA8AIkNAIAQCiPayIS/6N1WeHpsiS5eluLjZIzoXiFWys0GgOgkg2quTPudOsYxwi0Ep2UwzVnpbVXlEgEcbc1omuRPqRXnjKblrggWqf1C7au9IfEo0RzxSQb5Wzrg9n1mUS27xK35jzsI61oAzONsYeDPUYMkxWgAELMHDKsm9Zp9eBIurOtfnciyixT0XqUK3inSNallHfHaps0rVyBVPlHtRLF61uUWyeBEtLvM8kn1uAt0iXdjiJ1AR0b5MO7p60nylV5Geo9XoFu8SketL19HxNV0/BtBG73S0dRXomotuQj3Tk+hebno9Sbc7JWwQgECFCNR00b502Qr533H9oqwaN2ogR3XaS67oe4pkpAf3dxr/BB2POF9efHSIbNy2ZYXWp6I7HXvWNfL7X3OL7d5x563lyXsHVnSIKu33/JR35a0PvpAHb7+k2Di//DFH7nv0Bfn0658lLy9PNmnXSjrtv7uc0+NImfz6BzJ9xtdrHVOliUQOHj12iryrYz99/zXumRmffS9D7hkjc+f/K6cc30nGTX5bHrztEtmn4/ZBnG69jYFoDwAtoj0AiAwBgRAIINpLh/zNd6ky6aVU/Z+oSKNGhXJq9wJp3Yp/rIZwSXKKdRBAtHOJxEOgzJzxEtLb4lSsEWdslbgvyaPPWwPOIHPGU1Q0amSKX/ldds64F6XiR674wtz2LxbFkpEZD5pQ90W0h4o7kJPlZxdJcxfJEskvz10ZiWiJVpt7Vej51hA0zs0qx/08c3vMqKvNP02eN/Aeo8+pQHcV6fqId40TciV3N9H+96qV8luWVqE7eW4V6X60iyfTV67jTkktrTZ3jUX17odXla4S3cW7eD+30o8YpG5omTuV5M1hEAiCAKLdE+1vT7hbGtSvK3/P/Uf6XTtCTjhqf+lz5nFBIC42xvoU7b1OOUoO3m/X6PnStSFa3ToasxfCVppo//n32XL6RTdLj+M6yUldDpRGDevLNz/8Lg899bLcdOU58umXP6430b546XJZtTorekPj5AtukFO6dpIuh+2rriJfZs35R9q3aR4an8ouAaK9suRijkO0BwCRISAQAgFEe3HI+RrJ+/KUVPnia6+CaOutCuTEroVSK8GbdoVwqXCKBCGAaE+QhVhf01grZ9wyxyNV4DmWL25RK1lSqGLc5ZCXrBKPNOj0hLmK8TBzxiMxK66S3CrCSzTmjAp1/3nbr4ZsiPbqXWjzoU6WRyvNC12luWsG6h6LZ57nmTSPN6JfD0nXvi2+HE/zo1hUmGeqOHexLa4RqF+RXiipiXtvqHoXLISzW+nEAm0m6vLQrQJdv5/tGo3ql14o1mg0ax1dYetp/rknziPyXDPRLeLFq0ivL83Tas6fcSEsGaeAwDoJINo90f7B5PvEqtltG3TbaKmVmSGDLztLVmetcbJ49rxFWjdRINtuuakMvrSnbLFZW7fvvsdeKGd3P1KmTv9U5e0C2W+PHeWOay+QTD3etplf/CC33/eMHr9Qtt96U/n6+9/l5TG3OgH81+wFctPwJ+Xbn/6U1i2byoDzTpRDIqJ87IvT5M33PtMK8Jby5rufScMG9WT4DX3lDf1+wpTpersxRS7rfbIcf+T+7jxW0X7hWV3l8IP2WGvNrbJ7+MPPybwFi2W7rTaR63X+m2/SJjr/vj27yitvzZQff/lLXtBq+wb16rrq7y+//VV7q9WS808/Rk465qDo+xk2cpybe9PGDaX7cYfIYQd2lC49B0m+SgHjlpaWJh+/8qBccOVdbp9bB55XbE4Fmglo+7746nvFRPvVtz4s78382jFv37q59D+3m3Q+oKM7duyLb8qTz02VJf8td+wuOf8k2X+vnRzfkvOxGw7jtWLdr5a/7b6x8vQLb7o1SUtNkafuu8bNbaRW3++w9WZu/BdeeU8effYV+W/ZStl5+y3kxsvPlhbNNtLzTpPpH30lm2/aRqa8OUMr4LeTYdf1WefvVVA7INoDIIloDwAiQ0AgBAKI9iLIS/9LkbHPpsrCRRoVo579cI2K2WcvomJCuAw5RRwEEO1xwApj19iccRPiEdHthHgkPsWEuInxqDAvkTee6vbzvlJCyxkvXg0udeq52JXYqnIT5q6KPNJ8072uVehs8RNAtMfPrMwjIg1BXbZ5JLvcaw7qRbS4ynNrCBqpQrfn15HgUeqp0jL9KvKi/HKT5ZZr7lehW4V5Rr1IFbpFtPDrEeBCV20oayI6N6axaFFGukp1vUjmFawSa0Za3tZY74S0NWlu0S4u1sV79OX6RtwpqdoicTQEAiYQtmgvXLlc8mf9FvC7WPdwKfUbStomW6y1ox8dY6K9vgrm73/+U/pdc68MVVm+b8cdJFern60Ke4tN2zpRO+Hld+Sdj76Ux+++2o1lon3HbTpIn57HSb26taXvwHu0Ev5YrYg/QP5ZtFQF9EC5bsCZst+eO7pq+bMG3C4vPXGLivVmcqzKaav0PqXrofLdT39If62kHzvyOumwcWsneEdo5MqlKpT30Xk89fxUee6l6dLz5MOdXP9CJfjt94+Vj14e6SJuyhLtds4TzxssI4b0l1122EKF8rsyZsIbMmXMbZKRke7mv1n71tJXJb3J/pbNmkjPi291wv5sjXeZozcYzux/qzw87HLZcrN2sn/XfnLLwHPlf3pD4U+V7Z9pJMypGsVSsqI9P79AdteYnPLiWWJluLH8Wjm3btFUK9/ryY+/zpLzLh8mH06+X36fNU/Ov+JOJ8hbtWgiX333m8r4bDlwn13KnE/JsY849Uq56YpzZM9dt3HrdsDx/aOi/a33v5C7HhovD91xmWNw90MTZPb8hY6ZrcOdo8ZLX13fg/bdRWrXytRK+BbrvuAC2gPRHgBIRHsAEBkCAiEQQLR7kH/6OVWen6j/SNfmpxYV0+PEAmnblqiYEC5BThEnAUR7nMBK2d3ljBerBi+qDE+NZI/7USolhbnLHg8zZzxGdMc25pTaRWK89FgVleQB54xXnXzNHQHRXvba56/xYlk0nSNSZe5FsZhEN5nuJLp71J9Vmrtq83j/92wRLZFKcifHLaLFRbWoTI+Ic/ecRbQ4ma4nCD7Otub+AqyHd56rkjzaaNTlo1s1ukl0rVDXx3/yV0t5Gt3uiTRLrV3UYNRFvGhFulWnq0xucZNsAAAgAElEQVTfpXETKczR+5+5FFysh+VjSAisFwJhi/a8r2bKylsvXy/vpbxB03fZS+oPumutXUpmtKdp3IoJVpOq/maVzK++PVN+/XOuE7xpWl323sQR7mUT1Y8Nv0q22WJj9/MNdz4h9evXkct7d5cnnntdhfgvbjx/86Nj/l2yTC69YaS88/zdWo/h3XG+7o7HpHnTRtK/VzcneGd+/r3cd8vF7rUvv/tVLhn8gEx/4R73s4nsnTqdI9PG3+XksIn2ufMXSXpMrvykx26WyVM/VFE9t1gV9pGnXalV+WfJ3rtvt9b87abC5Tc9KG+MuzM655vuHiNtWzWTM086XPY+uo/0O+cEOfGYA/XGRNEnkEqK9hUrV8vex/SVV566XTZt36rUpSkpw7/6/jetRH9HhftvGvuSLcboZb0hYFXmvS67Q0beOkA67rJNNDvfboKUNZ94RLtVtx/VaW857vD93DwtduawHpfL51MfXmsdwr5wEe0BEEe0BwCRISAQAoGaLtr1/+sy9Y1UmfkJUTEhXG6cIgACNVG0u6aZMc00TX672JQSwlyyIlXj/vNOiHv7FcsfD2AdokP4OeORhpt+BbhfGR7NFdeKcb8yPFaY+3Eq/n6FCZwzHiS2mjZWTRHtlrTholgsv9yX41Z57p7TmBb3vSfQ/czzdaRzlHqpWINPa/TpNQX15LgJdFdt7rLMI2LdRbWoMyf+Lel+5bI072dWnmWiR6JdNB99duR7q1RfVKDRWOVs9re6VtpM1DUV1a/2kUajVqFu8S7t0xpIRjmB9xVphpp0UJkwBDZwAmGL9vzffpCspx8MnWraFttKndP7rnXe2Ir2jPR06Xbu9dKl875y0TnHu32nTJvhokm8auhtZY5WOve8+Db56KUH3OslRbvtm6exKAP7nSa33PuU1NIKaJPu/uaL9u9//kueGP+6jH9ocPS1kU9Mknn/LJabr+q1luD96be/XVW3L/jtoF06n+uq4y1KxUS7VZZbnIq/tWzeWOfwtKu0j52DVdVbVbyJ5ZLzf/2dT2SgRudY5Iu/5eTkugp9i7Z5+8MvZdSYyfLzb7NdnMrF556oleU7l1rRvtth58nj91wlu+24VanrHSvDLVrn+HOudZEwxxy6r6tqt7lZM1erpLfmpibzFy7+T8fbUq6/pKeL1SlrPvGI9i5nDpTlemPAKvz9zW4UWG7/JG3YGnvDI+wLF9EeAHFEewAQGQICIRCoyaJ9+YoUeXZ8qsydF4mKOVSjYvamcimEy45TVIFAMoj2lLxcLwrFhHds9XeM8Laq8EIV474wF80Tt1xxJ8RLivGCYH8vCzO1AWckJqVYM03LDvefdxnjRVEqhZYnHolQKS7KyeCtwuVcYw5NStEeiWjxYlk8ce4qz2MiWizb3M84t/2sOj3eLVWjX6MNQV2FuUlye86rMPdlelqMWCeiJV7Kibf/0vw1rvJ8rjUZVaE+Wy+muZaTbg1H9XHZOvJ+0lWSt0m1KvS6Tpq3y7RGo55Ab6vPmVBPq8KFgmhPvGuGGUFgXQTCFu3rmk/Yr8eKdstot7z0M/rdEo08uX7YY9KoQX2Xh27br3/OqbBoN3H+twrk2wedH31bsRXtfoV6RSraKyLaS8toHzXmJfntr7ly5/VFueIWo3KD5s+XVtFukTTXDn1EXn16aLlLYTnqz056Sx5RAT5jykiZ+Nr7mlP/iYwaeln0uF6X3iHNtEJ/6DUXFBurtIx2+9TA0y+8IeNGFd14iBXt/gBW5X7riKfdzYzYTwqUnE88ot2q5e1GwtFa1V5yK/nJgrCvT0R7AMQR7QFAZAgIhECgpor2OXNSZMwzqZKdnSINGxbKKScRFRPC5cYpAiCwXkS7imzXPLOMxprR+BSrGPeFeKk542ra7Pk87TwY4FaYrh0DYyS3VX974rsoP9zJb8sZr1WbnPEA2TNUMAQSQbQX6P2v2Epy9ZtOoFuuebQK3aJZIrnnVoUeb0SLFQhbs09XUW6V5TGNP63aXAuMIxI9UpHeoFBSiGgJ5iJLsFEW5WepQLcmo16ci8l013RUv0yur7IOteVstVWTt4s0Fm2rd1821lgXe3QyXR9b6p2X+G/rVBwSor3irNgTAolCANG+djPUx8a9Ko+Pe01e1MagVtH81vufy52D+7o4k7s0r/s7zXGvSEW77Xf2gKFy1+A+LnplyrSZrjL71advj2a0dzv6ADnthM4uo72fZrQ/E5PRHltJXVnRbhnt3c4dLPcOuchVlpeW0R4bfWNxLFbVf+j+u8kZJx7mmq5+q3Ozam/LqR8zYaqcfOzB7v28ou/n/scnyuvP3CEzPvveVcKPG3W9u7RbNW/iblpYvvtJGjPTo2snbTZbXzPw/5KHn35ZbtBmo59++WO0YanFxliEy6PDr5QmesPDmpc+qeea9PjNskir2OfM/1cbo+4u9evWkdvuf0Zyc/O0mr5bmfOJR7RbI9j7H5uoNwTOl602by9zF/wrH3zyrfTUqBxEe6L8SVWFeSDaqwCPQyEQIoGaKNqXLEmRhx5NlSzNed16ywLpdnyh1OZj5SFedZyqKgScaG+YKf8s+C8qxp0Ij4lS8YV52TnjRVEqToznahBtgFthmpqzSDV4gT2WjFXJjFSOrzNnXPdzOeNetBMbBJKVQNCi3Xo4mhz3ZLkX1eK+1+dyVpg4j/wcec32WYfXLBWtRa740rxYxnn91Gi1eZFM14iWOvGGpyfritbseRfoHZj5epEVVaRrRrpWos+1rHS9GC3aJafchHSRBinpEXGuUS4m0FWk+xLdhLrlp1fnhmivTvqcGwKVI4BoX1u0FxYWOumbozLXqqavvvUhjQ/5QdppE8zDDugoz0yaViHRbitisvjRZ14Ry343Qf3I2Fdk4mNDXNzLn/9n7zzAoyrTNvzMmWQmCQm9k4AUGxawrOW3rGtdd117WXsBUcSGvXdQV+wiioiV1cWy6mJvuLqWtYAVXRCE0HsIpEwyZ/73/c5MCCVTkjOTKc93XbkmmTnnO+fc30nEe9553nmLcMu9T4lkn2OagF4ssSn777WTWciNBW9zRbvO9dFn30qzz8lYtGQ5Bm61BW645HT079PTHGfj6Bh9bqGI5rvGPW8andbU1pn8+cuGnyARLr2k2v1x83x1Ta2JdLn2olOx3dZbQKvUL791HD6UaJn2ItQ1dkXH9zNmGxmvGfPKs6/ktWseuua9vyJV8FPl3MbdMdJse4+c43OvfCDZ7wUi5/fD0y++Iw1Qr4Esh4nh+eXXcvNm8e47D8SNl54OvzSnbep8EhHtemyNpdHjzZdPIHSU2JyDZJ2vHHEiRXvz/qyk114U7em1HjwbEmiKQK6J9iqR64+Mt6QRiQel0ux0yBlB+ccC7w8SSD4BT0DyZDeKRYk01fRIlbjKctNoc+Oc8Ub7RCrLNY7F1SEi2w5Xgm/cWFOjVEz1uH41lTPeOHJFt9cKdA4SIIEGArFEe1A+XdUgyxvJ8fp1doNIN41Aw1Xoun2iQyvHTQNQk2EebgiqFeclHqfy3DQHDTcEDW8TJcI60cNz+wwiUC/v5JgYF1OBLhnpmo8elIp0yQ5Smb5InquP8XGHDpZPBLpWoUu8i8S49JZol16amZ7vNBttJ6+n86BoT+fV4bmRwOYJ5Lpo531BAulMgNExLqwORbsLEDkFCaSAQC6Jdok/w/jHvVi02CPv7sq7+0NtFLL6LgV3WWYewlMvVd4bVYkbwa1fjRpzNs4ZN1XlG8WvaE65pSLd7ZxxEd+bxKeILDexKk3ljG9UWd7QiFMyyzlIgATcIaCV45Eqc0eOh1AIH1YuDSDQSJY3VKLLG8CQ/z4lNGSXPPnvV0SO54kk16afWnXuE3GuGeeadd44uiXNvWZCl8+NW0YgIDfcXJOJrrEuazFPYl00zsVEvIhQXyqxL9E+m6Bv83TxFkoFuiPNNeJFpbpWpJfKYx+R6X6JfsnkQdGeyavHc89VAhTtubryvO5MIEDR7sIqUbS7AJFTkEAKCOSKaNePaT33goWff7ZMTMx5w2y0b8+PuKfgFkvdITRnvFqrwkVsNxbe4caajXPGjRAPbBifoq83NOZUka7vzLg4QvlSvadyvFGueFM545HtIsLcPIYluaeoCF26tsfi1bUunh2nIgES2CwB+c+ExrHUmypziWSJxLRoRItkm5smofKlDUK1UahmoGsWeqLD63MiWpxGoOGqc5Hlmmve0CjUyHSV6PooJ5Z4UXuip8XtM5RAlbzbMzfcYNTJSJdIF5ON7mSkr7Cj//dDm4h2l3dujEQ38lziXTTaJSLV5VGbkWbzoGjP5tXltWUrAYr2bF1ZXlc2EKBod2EVKdpdgMgpSCAFBHJFtL/5joXPPrdgSYHV0NODKC2lZE/B7RX9EPLuhwpvj4rwcHTKZnPGG0WpmApzzSNv1IjT7K/zaAW6iyOUl+fEpchX1Jxx04Bz08acRqiHxbr53qWc8aQ0Q3WRG6cigXQmEKx1hLi4RqcBqDzqz6YhqFabh2W5keoq2LXaPNH/XGhES0SWa0RLGw/adfSiPq9OmoE64jwS0aIxLvmyTYYX/6bzkmflua2wa0ykywK5gVWkl+tjWKKXy8+VMd7tyRdJbmJcwrEuZRLrEpHo+thDnlfZnsuDoj2XV5/XnqkEKNozdeV43rlAgKLdhVWmaHcBIqcggRQQyAXR/tU3Fl6b4lRenXi8jW23kS5yHM0i4ESn1DhyvFF8ijbfjEhyI8PDleVGpG8mSsU8r5nlbo4YOePwFxlh7tGc8Y0qyyO55E4WuUhxkzOe7+bZuTYXRbtrKDlRhhMIyYdOTIV5RI5XiRyXinKtQFdRrtXl9fKcPprKc3k+4YgWYeRVaW7EeTi/3MSySESL+Vnzzh1Zbr6X17SB6MYjVkZ7hi8FT99FAnr3LA1Ko1ER504VupOVHmk2Ol/eDaqO0dm2UBqNlpqKdBHoEuOizUY1K900HZWvrt6iHNfosReMoj02I25BAulGgKI93VaE50MC6wlQtLtwN1C0uwCRU5BACghku2ifOcvCs89ZpsP3IQfa2Ov/ckuyN5kzrvK7cZNNrRoPV4k3FuaNJblp2KkgXRwqtjdfDa7PO8LbNOAMV4xHolQ2V2Eeyve7eGbpOxVFe/quDc+sBQTkT4tWj5tM84gcN5XnYWluZHo4xsVUo4szl+r0RIcl7581RLFoBIuJatHnHIkeqTAXDynPOZXpbhhJivZEVyp7tw/KRyQWSqNRE+NiMtHlMSCNRvVRq9TltTppRhptlMiNXGZiXZyvsnCD0V5hqd7Ryo3/HibzLqFoTyZdzk0CySFA0Z4crpyVBNwgQNHuAkWKdhcgcgoSSAGBbBbtCxd5MOEJ+bi+NKbbZWcbRxyWAZLdDkrOuFaNb5QzHhbj+rzTcHOdiU8xjTcbC/PGsSoqzpOcMx6pEtf88MbCHAUix0WS2+H4FPO6adDpVIybhp3SuBOexEVZCn4t0voQFO1pvTw8uTABW5KcTLNPleUqzxtFtDgy3XldG4WayvNmRLRoRLRmlTsV5Rs2/tRsc0nGaBDnRqaXSFxVK/VnpGjPnV+NepHkRp6LRHdiXUSim1gX5+fFcvOrbI82Ookoj0h08xgW6SrU+0iz0SKpWOdILgGK9uTy5ewkkAwCFO3JoMo5ScAdAhTtLnCkaHcBIqcggRQQyFbRvnq1B488ZqFK5M2WA2yccqI0ykyG022cM94oJsXkiKsQj4jxRhXjJlol/LyJXDFxLCrNk5gzLmLbbhyL0ig/XIW4R8R4pEp8wwpzR44bMe5izngKbu2sPQRFe9YubdpemBbXmrzycEW5iWEJZ5ybbHMjzcMxLqY5qAcxki02e60auRKR5qa6XCNa9LHYahTNoj87VejeQnc/YZPMBaBoTybd1M5dIzf3vHAeusrz8ro1ItEl6sVUpK/FsmB1VI2uQXZdvIVSka6xLm1MpEtvkecq03tJlXofefQxtD+1i7qZo1G0t/oS8ARIIGECFO0JI+MOJJAyAhTtLqCmaHcBIqcggRQQyEbRXi1y/dEJFlau8qBH9xCGnhVE/kbFX551a2Et/NWR25oVrrEogVpY8hhS6S3fQ543r4Vf98hzHqkkNxnlkUryOtnO5WEXahPNcE74JhXhm88ZNzK8QYiHq8aL27l8ZpwuHQhQtKfDKmT2OQQ1osVUmoerziOPa+31medajW7kuUS01CT+LqVWjpumnybD3Gn+qY9aaa5V6M5rEtcSrkjX17RCPVsHRXvmrGyFfBzDSPNIo9GA03A00mx0lX5cI8rIk6whbSaq0rxU3hFyhLp8hTPStQlpXjbf7Jmz1FHPlKI9SxaSl5FTBCjac2q5ebEZRoCi3YUFo2h3ASKnIIEUEMg20S7JK5jwpBfzF3jQvl0I5w6zUVwxD9aiucBvM2DNnyNfs2CtWeUa3U1yxhuqxZvIGZfIlIYKcZM9vn67kE/iVDhIIAoBinbeHo0JaOW4afbZKIpFo1q00tw0BQ1XnpsqdJXm8lyM+OdNAYtnz5PqcSPHVZjLozb9VEnuK1FZrs1BN4xusXxcp8YEKNrT535Ybtc0SHSnIj0S7aKNR9eiMsbHMXywpApdc9EdmV4mEj3SbLRUfu4hvxyWG8H+6YMsJ8+Eoj0nl50XneEEKNozfAF5+llNgKLdheWlaHcBIqcggRQQyCbR7pHq8qlPzUbtzJnoac/GoI6z4Z83Y7MUQ/k+2L36IlTUVqrHpWmYCG6TGa6iW7+0Otwnz4efi7zWEKvSuHo8BevEQ5BAhABFexbfC5KEonLcZJprdnmkqlyeC1SqOA/L8nD2uQp2uy5xHl6fE9HiNAKNNADVPHOR5hGJbh7DFecuNQRN/EyzZw+K9tSspYYJLZZmoiYPXeNd5PtyaTSqAr1cvhbI8zWSkB5ttJH8c41zaWg0amJd5GeV6vJLo7EvHNlPgKI9+9eYV5h9BHJdtK+qqMTeR1yAPXYZiMfvvqJhgefMW4TDTrsa+++1Ex4cdREi233y6oPo0K5kgxvh7alf4pKbxprnigr92KpfGS4/768YvN0A81wwaOOJf7yJf775MRYsWoYO7Uuww7b9cMbxh2LnHbbEpTc/jO237osz/3qo6zfYsMvHYDuZ+6Khx6CuPojr7pyADz6ZJscJYcyN5+G8q+7Ft+8/jjxvKzXkcf2Ks2tCinYX1pOi3QWInIIEUkAgk0W7R7qcWrN/hDXja1g/fwNr7kx4NlOqGZIIFbtsAIJl/QF5tEvlq2svwMrinIIU3Ds8ROsQoGhvHe7NOWqwVoV5OL88XF2uVeUBkeiOTI9Et2jOuTYITTyiRaOcG2R5RI6bqBatQHeqz7UK3WSem+agoiL5/x/NWc4W7UPR3iJ8DTtrE9EFjRqNrs9I16iXKiy010GbkUYb7eTjFqUS36KV6Brjog1Gy0SmG7kuMr2DV95k58h5AhTtOX8LEEAGEqBod0R7r+6dcd8t52PgVluYVbxpzJP49KsfsHX/srhE+9gn/okXHrsZa9dV4/lX3sekl9/DlGfuQEeR6leOehTfz5iNay861Qj11WvW4o0PPhfpvhy3XTkkqaK9fOFSFBb40bljO3z02be4Z/xkPP3ANSjw+1BfL43IFy7BNgN6Z+CdmxunTNHuwjpTtLsAkVOQQAoIZJpotxbOgVfEuuenb+Cd9b2ToR4ekvCL5d5esPr2R1t51z0kYt0u7Qe7XacUkOQhSCA1BCjaU8N5k6NIEaypMNeqchPVInJcHyMRLSrO5Tnzmgp0lebRC2c3eyFeFeSmytyR46byXLPNzc+ae74+okXjW7SBKEf6E6Boj2+N6kSSNzQaFaGu1eiaj66V6FqRviRYhegaHehsFTRUo5tcdJOPLnnp8n0fEeqFUrHOQQKxCFC0xyLE10kg/QhQtDui/ZoLT8bX383EPTedh5WrK3H8sBtx5B/3wS+/zotPtD/5Cl57clTDAu971IVGrPfo2hGnXjAar8prW5R13+AGqA3Uwe/L30C0T/9xFq4ePR6Ll61CocjwPXfdDrdecZZUyhcgINuPfmAS3v/kawTq6uVNgT7y2hCU9ugiYv9dPDX5bTn3NejdqxtGDjsO++y+Y8Pchx+yFw44/hKR60GR7PnmtQuGHGOu86u3xpvzWrp8NW6972lM+34mCqUyf9gph+G4w/Yzr/3f4SNw3ulH4vX3P8eM//2Glx6/Ff379Ey/GzrLzoii3YUFpWh3ASKnIIEUEEh30W6tWQnrR6lYn/EVvFK17qlcvQEVu31nVJTugjfn/w6/+HfFHgeU4Pf7xPrf8BSA5SFIIEkEKNpdACtuWqvHTUxLWI7XRwS6iWxxqtDN65pxrtnmgcSrza18pyGoCnHTEFRFuXyvueamIWi4wjxPJLrTMFROLPHDuACEUySbAEW7Q7hG8s/nSuOA8khzUclHLw/HvGi8yzLJT4829HNo3bxFpvK8Ic7FJyJdfxaZ3lu+8tloNNm3c07MT9GeE8vMi8wyAqkW7SuDtfiuakXKKXbM82PHwk0LySKRMCqbD/7rpZg09npMefdT+belFGvkefHdT78mLNpDoRD2OfJC3HHtMPz4y2/4+Ivv8OxD1zZ5zY2jY5atWI0Vq1SWdxWxXo/b7n8G/URon3f6EXjqhbfxb6lKv+uG4fB6LUz9dDq2kwr8OvnEukbEPPPgteguYn/6D7NQVV2D/ffeeQOJ/693PsWLr3+Ep+6/2pzLbInHiYh22w7h+HNuwiH7/c5E2MxfuAynXTga4++6zFS8q2jvW9YD551xJHp06yRvIHSSSnk2F0r2jUzR7gJhinYXIHIKEkgBgXQV7fkfT4H14SvwahPTRkObhQa33AGhbXeGve3vsDBvC4x/3Is6ySkePMjG0UdQsqfgtuEhWpEARfum8O1AJILFEegqx7Xy3Mk1V5kuz4er0LXivL5abHaCheDq7ky1uZHj4arycMa5TyJaJIGiQZyrTM8vkc/YMKKlFX9T0uvQuSLaV4l0WF+BLhJdpPoCzUnXhqPyWKG/rFFGnvyi9bREpGsmulahay56g0iX5qPynJfvRqXXzZ2lZ0PRnqULy8vKagKpFu1vrZmHQ2e+nnKmf2xbhje3PGyT40ZE+49Tn8SDE1/GoiUr8OW3v+CFR2/CC1OmJizaNY/98edex7MvvYs3J/3NzLliVQXuun54XKJdq9yfVqH++bdYuHgFKtdVmerzuyVP/dFn/oU3P/gCd153juTAl8p7AU6lyTdSgT7k0r/h4dEXY9fB25g3CCKjscSPJtr1DYXLbhmHd54f07DvLfc+bSJ1hpz4JyPaJ95zJWNmUnznUrS7AJyi3QWInIIEUkAg3UR73ufvIn/K0/CsWNxw9cEttoa99U6wt9tVJPughufXVHrwyHhL8uM86NfXxmkn24xdT8E9w0O0LoFsF+0ar9yQX65V51phrnJcG4JKTIu+ZmJbwo1C9bVQcyJaJHJFY1kiVeUqx01VebHVkGduqs6NTBfJXpigmW/d24RHTzMC2SLalwWrTZNRU5EuH/uYX68V6fJ9uNHoOqlYjzYKRJObLHTTXLQkLNEjjUfboLu8Y8UPdaTZzZujp0PRnqMLz8vOaAKpFu3/XbcUVy74LOXMdivqijtL94wq2jUy5kCJVznmz/ua2JfHJk2JW7RfdsvDKCkukkryWvQp7YbRV50tTUi3wLinX8VX03/B4/esb7S68Uk0luE3jnkCM2fPx/UjT8OWItP/8eqH+HL6zyY/XvPf7xz7nImO0Qr0A/fZRSJvTjENWPVcX5zyEZZKRbw2WL1h5OnmPOIV7W99+F9cfftj6NShbcPpaVTN0X/aFxeffSxFe8rvWOeAFO0ugKdodwEipyCBFBBIF9Ge998PkPfGM7CWzDdXbRcWIXjQ8aj//REIFYnp2mjUSJPB8RMkk32Fha5dQhg2NAiJheMggawnkGmiPSjV45EoFhPXEmkAutYOS/NG1ega0VKTuGbTynGNaDGV5uGIFo1r0UrzBlluYlvWZ54zXSLrf1XS6gIzQbTb8jGPRfLxj8aZ6FqJrs1Hy+UXV6NdAjES0osl/1yrzstMJrrGu4hMDzcZ7SXvWnWR/HQOEsgEAhTtmbBKPEcS2JBAqkV7uvFvXNGu56ZV31oVrtnqiYj2Bx5/ycj0Qr8f7drKP6DD45vv/4czL74T/3ziNvTr3WODy99cRvuhJ19h5LlWsevQpqoR0d5451/nLsSF1z2AE488AKccc1DDS8tXVkiO+7OoDwbxwK0Xxi3atSr+ujsn4I1n79zsErGivXXuXIp2F7hTtLsAkVOQQAoItLZo9377KfJfexLa5FSHEewHHIv6/Y9BSL7f3LCl4vWJp72YO8+DEolnGD7MRrHINQ4SyAUCrSnatXK8Tj5Jsr4hqIhxkeNaaW4ahcr3EZmuueb6vVaoJzTEs+dJ9bjJNo80BNUoFpHkmm1uKs+1IajJNNeK9BAsxiomhJgbp55AOoj2evllNDEupgJdqtFNnEtYosvjInmuPkamUgf5ZVOBbmS6iXWR78P56CrX2/GXMfU3F4+YFAIU7UnByklJIKkEKNqdZqgaHbPx2Jxof/2ZOzYQ6dqkVLPSx27UDLXxXBdd/yB+njUPV11wEnbctj8q11bhnY++RLnkoGuj08ZV52dfNgalPbtghGSh//JrOW6T5qRb9+9tKtpVumt2+y47bm1y2c++7C6ceszB6NSxLeYvWo6D9t0FxUWFuP2hv0tEbP0mc0eLjqmTJqnHDL1BquR3xqnHHiyflPPg+59nIz8/D3vsPJAV7Un9LWx6cop2F8BTtLsAkVOQQAoItJZo9/70FfJeewLeuf8zV2kE+x+ORv0BItg3U8HeGMXLr1qY/q3EO0gF+7ln2+jSOVGTlyuGJDIAACAASURBVAKwPAQJJImAa6Jd3pvS/HKJUEZQG4FGolj0UcW5yTUPNwQNNwq1pRdCosPrDzcDDeeZR6JY8lWihxuFOo/ys0hzlezMjkiUMrdPdwKpEO0BBE2jUa1Any+P8yTWZYER6iLXg5XQ2Jdo/7XUz5J0lorzUvklLZNYl1L5WIhTkb6+0WiBVKxzkEAuEKBoz4VV5jVmGwGK9sRE+8brf+WIE9GtS8eool2l9/hn/4Up731mcteLiwux+07b4ozj/4gdB/bfQLTPmrMAl986DnPnL8Gg7fqjrGdXrKmsMqL97an/xSNPvyaCfinaiFA//OC9MHLYcZj12wKMkqapKub13yW7ixi/8dLT0aFdSdwV7XpdCxcvx13jnsdXklFfU1tn8tgvG34CBsk5sqK9dX7zKdpd4E7R7gJETkECKSCQatFu/foD8l8aD++cGQkLdt1h6kcWPpAv7Zeimez9+1Gyp+A24SHSiEBTol0jV7TpZySaRSvK9fuAZJxrI1DntXB0i3wfFMme8NCIlkhD0EZyPF8iWkwsi8a3qDA3j07VORuCJkyZO2QhATdEe5Xkn8/VTHSR6FqJrjJds9EjXyvs2qjktIlod5XnUoGuOekq0MtEpJuKdPmF7S1yXZuRcpAACQAU7bwLSCDzCOS6aM+8FeMZ5xIBinYXVpui3QWInIIEUkAgVaLdWjof+c8/BO+Mr81VhfyFEg8jFewHHhuzgj2C4YcfPZj8ktN5/OgjbAweRMmegluEh2gNAhLREmgsx6X5p2kIqs1ARZBbdV5Urgqubwiq0jzRhqDhiBaTYR6JaAlnnPvMz5p7LrI8LNa1cahWp3OQAAkkTiAe0b5SRLnGuiwIi3Qj1MMiXZuPVsb4SEm+SPKe0ky0VCW6ynOfVKVrvIv8MmvUi76msp2DBEggNgGK9tiMuAUJpBsBivZ0WxGeDwmsJ0DR7sLdQNHuAkROQQIpIJAK0Z7/xiTk/+tJczXNEey6n+axay675rP/fl8bB+xHyZ6C24OHcIOAuGmTW24agYool6pyU10u4lyzzRuq0OV1jWrRSvRgIHEZZkmUUqSS3BtuCKpV5Zprvl6WO1LdyTdnRIsby8s5SCAeAt06FuKH5SswT+S5kenyi66PkWaj8+UPQbVUrEcbhRLbonEuDZnoUo2uUl2jXlSod/MWUaPHsxjchgTiIEDRHgckbkICaUaAoj3NFoSnQwKNCFC0u3A7ULS7AJFTkEAKCCRTtHtnz0D+M3fBWlxurqR+z4NQd+x5cVewRy5/2XIL4yd4UCvycfuBIRx/bKKluykAyUPkDAE7sD6CxQh0leMizgOVmmvuRLMENaIlUoVeLdI8wUJwTW/wRiJatLJcs8v1UZ7zl1jo1CUPa1FnnjeV5xrRwujknLkHeaHpRyAov+QLpdHoAq1Alz8CpslowGk2qo1H9bVAjM7AJfJumQpzU5GeJxJdfrm18Wipfi/PdZL8dA4SIIHUEKBoTw1nHoUE3CRA0e4mTc5FAu4SoGh3gSdFuwsQOQUJpIBAMkS7p7Yaea9MRP5Hr4pgDMFu3xl1p16G4MBdEr6itSIsx423UFnpQZ/eIZx5ahCWkx7DQQItJqDey1SYmzzz9XJchXl9RJxHhHm4Cj3UjPd5vAVhUR6W4lppbhqAtpGmvo1kuSPTRbJrQ9AmhmvNUFtMjxOQQO4QqJc/Fhrf0iDR60Sim1gXR6ovlnfbVLZHGx29fhPpojEuKtDLwpXoTkV6G7S1fLkDlFdKAmlOgKI9zReIp0cCmyFA0c7bggTSlwBFuwtrQ9HuAkROQQIpIOC2aPf+9LVUsY+BtXq5Ofv6/Y5A3ZFDTGRMoiNQB6lk92LpMg86d7IxbGgIBcyIThRjTm2vDT7rwg1BTbV5RKCvtY1IN0K94XnAlgaiiQ6tHI/IcRPBornmGtGiDUEjlefh6nNxaSa2xc3+ghTtia4YtyeB2ARqRZPPbSTPy6XpaESqq1BfFqyOqtH1L0lXb6FTgW6ai4ar0sNSfbeuXVCxOgA7wU+3xD5zbkECJJAMAhTtyaDKOUkguQQo2pPLl7OTQEsIULS3hF54X4p2FyByChJIAQG3RLtn3Vrk/+NB5H35gTlru0sv1J1xJYL9tm3WVWgW+9OTLMyeY6FY5OW5w2y0LaGhaBbMDN1JK8fr5JMMDbJcBLqkL5hcc1N9HpboGtuiAl3Feoxkhk1JhBuCOtXlYVGu1eZyzxlxLt8bWW4yzZ3nW7volKI9Q29onnarEqiQzCcT4xJpNBqQ702si/O1SjOhoow8ST/vLu+olXo10kUfVaaXSMSLE/WiP+dFeUctnmaorQqIBycBEtiAAEU7bwgSyDwCFO2Zt2Y849whQNHuwlpTtLsAkVOQQAoIuCHa8/77AfInj4Vn3RqEvF7UH3Q86v98KkJ50p2xmePlVy1M/1ZiNWSKYUOC6NaVkr2ZKNNjN1m+iBwPhiNYnMpzzThXce7I8ki1uca52PKJhkSHVz7xoNXlKsc1z1wSGcKCXBqAikxviGwpCkt1jWhJvKg90dNydXuKdldxcrIsIbDcrmmQ6Brnok1GIxJdc9MrYzQa9cEKR7poLrpUo+e3Dct0R673kD8sVgv+WFC0Z8mNxsvIGQIU7Tmz1LzQLCJA0Z5Fi8lLyToCFO0uLClFuwsQOQUJpIBAS0S7tWqZiYnxzvjGnKld2g+BM6+C3bNvi878k08tvPOeKA0RoKedbKN/Pylv50grAkGJXHFyzR05Hsk4D0hEi8k8byzTtRJdtkl4SBa/keUaw6IV5yrHVZZr5bk874jz8HMq17UhaA7k91O0J3wncYcMJ6Bvsy6Wj7OYPPRwJro2GlWBXi5fC+S5Gol+iTaKJPNJBXovqTzXbHRtNtrLNB118tK7SOxLM/5KxU2Woj1uVNyQBNKCAEV7WiwDT4IEEiJA0Z4QLm5MAiklQNHuAm6KdhcgcgoSSAGB5op2U8X+9/ugjU911B09DHUHHdfiM57xs4XnJltmnsMPs7HrzpTsLYYaawLxU4G1YTluIlmcaJZ6rTTXPHN5rU4agqpAj4j1GE5r0yOGI1o0r9yIciPOHTnuM5EtKtOdPHOnGl0agjKPf7MrR9Ee64bm65lGQJuILmjUaNSpSF/jVKTLR18W2uugzUijjbZWvmk0qo1FVab31gaj8sdEG4/q8x2kEWlrDor21qTPY5NA4gQo2hNnxj1IoLUJULS39grw+CTQNAGKdhfuDop2FyByChJIAYHmiPb8f4xF/tRXzNkFtxyEutMuhd25R4vPdv58DyY85YUt4nevPW0cchAle8JQpfTTaQK6Xo5Hqss129z5fn0VulaiBwOJ13GK03Kqy1WIhxuCqizXXHNHpodzzUWiO/nmmRfRkjD7FO1A0Z4i0DyMawTqRJLPC2ehq1CfJ9Xomo+ulehakb5E8qRi/bXvbBWYCnSV55EqdJXq+n0fqU4v1C7FaTwo2tN4cXhqJLAZAhTtvC1IIPMI5LpoX1VRib2PuACfvPogOrQrcW0Bh10+Bttt3RcXDT2myTnnLViCo4dcj6/eGt+wzWOTpuCjz77Fsw9dG/VcDj/jWvz62wKzTVGhH7vttC1uvOQMdO3c3rVrSNZE8V5jso6fSfNStLuwWhTtLkDkFCSQAgKJiHarYgXyH70Z3jkzEPIVIDD0WgR32MOVs1y50oNHJliokUiSbbaxceJxtomOyfURlP58kUryhkeR5YHKcENQ0yC0URV6tUBLNM5e4lbyJKvcVJWHpbn4LCe2pSQc0xJuFBrZJs2dVlbfNhTtWb28GXlxNZJ/PlfewSuPNBeVfPRyE/OiMn0tlkl+erShn2Hq6i0KV6RLvIvI897SaFQftclob/nD40Nm50JRtGfkrc2TzmECFO05vPi89IwlQNGeHNFevnApCgv86NyxXUKifcWqNVhXVY3evbrFFO3nnPoXHLjPLlixsgK33vcMamsDmHjvlWl/L8Z7jWl/ISk4QYp2FyBTtLsAkVOQQAoIxCvavbNnwDfuenjWVsDuVorA8FvNoxujSuTwI+MtrK7woLRXCEPOCEJ6qmbdCEmlvlNtHpbnEsfixLJITIuKc/NaOLYlnHGu+yQ6vAWRivKwOJeqcxPV0kaayzZUn+vP4YgWbQjKkTEEKNozZqmy5kRXBWsbKtC1El0r0hdoZnpYrlfY8o5glJEn6ec9vSLQTZyL5KJrxIuvxEj0MvlZX8vzOJFh2Too2rN1ZXld2UqAoj1bV5bXlc0EKNqbFu2hUAgT/v46/vHqB6iqrsW+ew7CtReegpJi+R9FGV9Mm4G/jX0Oc+YtQt/ePUyF+WtPjTaS/NKbH8b2UtF+5l8PxYLFy3HLPU9h2g8zUeD3YddB2+Cem87DoSdfgXkLVMj7zHwT7r4Cv8yah6lS0T7ujpHmuS+n/4y7H/kHZsnc3bt2wtCT/owj/7g3tKJ9xBlH4pD9fme2++ebH5tzff2ZO8zPS5evFvn+NKZ9PxOFUvE+7JTDcNxh+5nXqmsCuGvc83jrgy/gsTymkn+7rbbAndedg5lz5uOU80fh0nOOxxP/eNNc90cv34/pP87CHQ/9HXPLF6Nn9864fuRpGLzdADPfpJffxVOT38bK1WvMtY8cdhz22X1HfP7NT7jr4efxm+zTqUNbnHDE/hhy4p8Mz8bXqBX894yfjIWLV2DgVn1wwyWno3+fnmbu/zt8BM484VC8PfVLzJ2/GHv9bgf8Tc7T55OPiufAoGh3YZEp2l2AyClIIAUE4hHt+R++jPwX5WNgkukS3H53U8ke8he6cnZ19fIf4oleLFrsQccOIZwz1Jb/gGaG+NUGnxIf7OSWRxqAanW5NAQ1P4cbhTpRLYJPqvUTHVo5vrEc12xzjWjR540sD1ei6/ca25LlvipRhFm3PUV71i1pq1/QsmC1qT43FenyB21+vVaky/fhRqPrpGI92vBLtblpLCp/jJxmoyUm0sVEvcjPPeQx8b9+rY7F1ROgaHcVJycjgaQToGhPOmIegARcJ5Bq0R6Q/9ermJ/6/2/1yf/ztSvd9F9W0aJjXnnrEyOvx46+GB3bl+DWe5+WT497jJBesmyVyO5rcPNlZ2Lv3XbA7LkLcdpFt+O1J0dtItrPv+Z+DOjbC+ecejhWr1lrpPh5px8hkn3T6JjGEnr+omU46qzrcduVQ8wxfvl1Hr6bMRtnHP/HBtF+0L67ishfhqtHPybxMdvgwiHHwLZDOP6cm4yEV9E/f+EynHbhaIy/6zJsM6A3Rj8wCb/OXYDbrhiC/Pw83Dv+BdTXBxtE+5FnXoejDt0HJxz+B1OVr28sHDXkOtxz4wjsvvO2+OCTaUbiv/3cXea6NSbnmQevlTcCOmL6D7NEztfg93sOxj5HXoBRVw/F3iLH54hs/+rbX3DSUQdsINqVwbFn34gHbr0Qg7cfgJde/whPv/AOpjx9uzk3Fe07bNMPw4VXm6ICnHf1fRh+2uE4+k/7uv67kI4TUrS7sCoU7S5A5BQkkAIC0US7p64W+U/dhbyvP4LmuNQdfibq/niia2clb6zj2ecszJxlSR5bCOeebaN9+9T/Y0UvSCvHA2vWNwR1JLnmmYcjWhrJdH1NK9Nj9ObblJP8e0jjWDSzPK9RFIvKcSPOtTmoNgQ1meZOFbpmoXOQQGMCFO28HxIhYEuW1CJpztA4E71col0izUc1J702RnfjYnnHz8S4mC8V6m3lschI9FKR6l0kP50jOgGKdt4hJJBZBCjaM2u9eLYkoARSLdoX/xDCJ/dFL0ZIxsp0296DfS7etDdNNNE+5JK/4ZA/7Ibj/7KfOaXFy1bioBMuxTdvP4a/v/I+vvnuf7j/1gsaTnfXPw7Dy4/fuoloH3Lp39CpfVtccu7x6N6lY8P2sUT7uKdflQr3ctx3y/mbIGmc0a4vnn3yYSYPXt8I+O6nX3HZLePwzvNjGva7Rd4k6CWV6FpRvtufzpUM+OuwVT/nk/ZPPP8mfpZK+sYV7V+8Pq5hX32zQavSVfhHxl9Ouxqjrz4bdSLo9foeljcjdh28DfLznI/Y6/N7/Hk4LjjraBx72O9R3GZ9wWHjNxMeefo1I/3vun54w9xa6a9583vsMtCI9on3XGneINBx05gnUVxciMvOPSEZt0nazUnR7sKSULS7AJFTkEAKCDQl2q1lC5E/7gZ4F81FqLANAvJOcnDrwa6e0ZtvW/jsCwt58u+EoWcG0bOHS5JdpjHNQE1ESySmxXnONAQNP+80DHVet+sSvzSvX4R5WI6bPHOR5CrIVZqbBqFhWW4ag+p2Wqmf62WdiWPmHhsRoGjnLdGYQL2842diXMKNReeLRFepXi5/AFWmL5Ln62M0bmhv+cLS3MlEL/M5j45YL4a+ztEyAhTtLePHvUkg1QQo2lNNnMcjgZYTSLVoXzknhO9fbEbOZwsvtWNfD3Y4dtOc1Wii/TCRyVec91fsu8cgc3SNktlh/7Pwrgjsic+/Ab/EwDQWvk2J9l+l6vuuh5/Df6f9bCrj/3rkASYCJpZov3HME0ZQXz78r5tcfePomEtuGgu9jsfvvhL6/zxvffhfXH37YyauJTICgTpTBa7V8Hsdcb5pwBqJrIkl2lXSv/H+5xvIcq1av/Pac0xEjDY3fXHKR1i6YjV23mFL3DDydPQp7YYP/jMNj4TfLOi/RU95I+BYqXQftEFF+80SqaOV6o05nnHxHaai/ohD9tpEtGsUTX0wiKsvOLmFd0Rm7E7R7sI6UbS7AJFTkEAKCGxOtHu//xy+iaPhqalGsEcfBEaMQqhT9CYmiZ7qV99YeG2Kk8l76kk2thxgNzlFUCJXTIV5JIolLM8DEtGyQaPQcIxLUBuCJjg82hC0kRzPK5IKc6koz9fKcyPRVaqHn1NpLtvqPhwkkGoCFO2pJt66xwtItbk2GnUq0CUfXWJdtArdRLzIc0uDVWj6r6fz3l5nqTgv1Xx0I8+1Il3y0cONRvvI8wXsbpz0RaZoTzpiHoAEXCVA0e4qTk5GAikhkGrRnpKLSuAgMSvaJX7leIlQ0dG4on38s/8y2eta1R0ZTYn2yOsqiDU+5ZzL78bk8TcZwXz46dfgm3cea5ijcbX3w0+9ilmSmX7PTSM2uaLGon3N2iocPeR6HHnI3jj/rKPwjeSyX3fnBLzx7J2b7KfnsNNBQ/HW3+8yFe46Yon2R5/5FxYtWYGbLjsjKtnl0pR19APPGhGuUTCRoTnvz8knACaIkP9sysMbiHataNf8+TE3rK9o/+NJV+CmSzdf0U7RnsDNnYmbau7RGGkgoPlKdfX1OEC6/Wo+kzY32NzQd3xuf/Dv+M+X3yMYtLHd1lvguotONY0EIoOiPRPvBJ5zLhLYQLTLO9v5rz2J/Lf+blDU7/J71J1+OUL5fvfQyJv+v/zgxb/+6YEv5MGuO9jo21ObgkqluWaea3PQxg1B5bkYqQabnpvsotXjGsliRLmR5I4cj0S0ONXnIYh3MpXnWp3OQQKZQICiPRNWKf5zrJL887kiz01Guuaii0zX7yNfK+zaqJN5RaV380qMi+ahG3kuIl0ajTpZ6dp4tAT5bNwQ/4IkaUuK9iSB5bQkkCQCFO1JAstpSSCJBCjanWao2kS0XVv5SHV4FBUW4E1pFqpC/eHbR5rq8MYZ7d9LVvrQy+4y+e0qrN/88Avc8+gLIrfv2CQ65u5HJuPQ/XfDVv3LUC7NT08492a8MvE26bXWFrv/aTgeG3M5th5QZmJX/vXOpw2NQrXJqmat337NMJPRrkL62x9/xclHH7hJM1RtVnqGZMSPu+MSE+FyzNAbcOA+O+PUYw+Wf/V68P3Ps03m+R47D8S5V96Nzh3bmzz38oVLTUPXLcq6Nxkdo9uccM7NuPHS000Fe8WadabR6e47bYvfpEHp/EXLcdC+u6C4qBC3S8PUOmkopzE2T7/wtnmTQvm8/t7neOiJf4rg/9smGe3HDL1RInjOl2r4rTab0d44OoaiPYl/DNJh6uelU+5Tk9/CWPmlK5IuvpdLBtIg6brbVFbQbfc9gxWrKnCHfLwiz+s1XX61mcET915F0Z4OC8pzIIEECERE+6plFfDJu9HeGd+YveuOG466/Y+OPpO46XqpHjdyvEpEuTxKFHBDRIuJZTGNQCMV6RLREkjg5MKbak65qS5XIa5V540iWhyZHq5GF6nuVKUzoiVxytwjUwhQtGfKSjnnuVJEuQr0BSrQTaTLeomuzUcrY+RW5Ykk72k5jUZNRbpI9LJwrEsv+aOoQl1lO0d6E6BoT+/14dmRwMYEKNp5T5BA5hGgaHdE+8bjyhEnGkmt+eTPv/IBqmtqsa/Enlx74SmmOaiOJ//xlomQ0Vz0ww/eC5NeftcI+x7dOuHSmx/G9lv3Nc1IH3j8JUx59zPxgWvQrUsHaYR6JA47aM+GOR555jVpYGrjqfuvNvnqUz/7VoT5SPP6J//9Hvc99iJUumuzUY2c0ViVxhXtkXPXNwWeefEdkxOvsludo1bQ19TWmYzzy4afgEED+2OhVOJfNXo8Zsyciy37lpriXy0Y1gz2mVJBf8r5o9A4o13n/1ry6O977AXJci+H35ePXXbcSsT7GdAq9lH3PyNus9z8y3p3Efkq5HWb6+583Bxf2elxrpVCYy04bly1r3N/JNd796OTpWp+OQZutQVuuOR09O/T01zWxhntFO2Z9zcmoTM+Xd4tOmDvnXHacYeY/fTmuEXyhd5/4Z7NzqPb7ybvLI048yjz+tRPp2OUfKxC850igxXtCS0BNyaBViMQEe3rRo0UyT4dtW16oOqEa1DbaRunsrxSRbo8mmpzaRiqMl2f10eNaEmwEFwjDgKyk8fvQZdedliSi0g3At2JaWncKFSfZ6pBq90ePHAaEqBoT59F0T9/Gt0SqUbXSJeGqvSgVqlXoVoq1qONAtHkpRGJLhXpGuviNB4VuS6PWq1OjZ4+a97cM6Foby457kcCrUOAor11uPOoJNASArku2lvCrvG+NbUB/O7QcyQGZkJDQ1C35k72PPeI5NZqd21cypFeBHIuo/33R1+EW684q6Exwtz5S/CnU67coKlA4yV67+OvcdWoR3HSUQfiiD/ubT6ecdC+u5oOvBTt6XUz82xIoCkCGtOydoHI86UW1n78I9YsL0SVt7co8E07mEej6JWIFq00FyfkyPLwY14bq6EKXZ+v93rwzEseLFvtQY/uIQw9Kyj/4eb6kAAJJEqAoj1RYs3fPih/EbWZqFaiRzLRywNOs1FtPqpNSOukGWm0USLvFKo4V2luol1EpJeFY170ec1P58h+AhTt2b/GvMLsIkDRnl3ryavJDQIU7c1fZ61SH7Rdf2kq6jeV7+oEI5XozZ81+Xt+//McqXivk6rxXphTvggX3/AQHhx1EXbYpm/yD84jJEQg50T7bn8619yMmkukY8myVdj/uJH4+JUHTSfhjYc2Trj0pofRTz4C8fEX36GtfNxE99duvJERlNx3DhIggfQgsGZ+CBULIF82KuY639eu2fy55RcCPmnqXVAiGeoS1+KTxwL52V9swS9/DvxtPfJ9+Pl28V1fveSyj3kgKB8TC0kmHHDNpXnS6Tu+fd3eqj4obyWI9OcggUwloHevynb+d7blK6iSfK6I87mBtebxt8AazKsN/1wnTUcD66RFRPR/z3TOK0Bvked9fG3QW2Jd+vrbyWMx+vjlS55v73Wxx0XLL5kztBIBr/zOak8k/uu4lRaAh3WFQC79G8qS+AT9jZX2RRwkQAIZQkD/W8vRPAKnXjAaP/3vN/ikEk5z0a+/+DR07dy+eZOlcK+3p34p/SMnYXVFpcTcdDZxNMf8ed8UngEPFS+BnBPtWtE+6qqhpimBjlgV7SeedyuO/8t+Jk9Ju/A++PjLePXt/+Cd5+6CT/KLdCxZVRMvb25HAiSQBAKrZ3nw2xseVJY3/Q+O4g5r0XbJxygJ/oqi/XZA4WF7w+tycaX+D8qkf3gw42cLBQUhnDdMZHvH1vu/Fv2fJm2iwkECmUrAI/8T0bnEh2UV0ZtkZur1uXnetaLJ54owd3LRNdYl8r2Tk740WB1VfOpfiq7eQlOJbirSpUFEWZ5WpOv3bYxI90v0CwcJxCLQpX0BllfUUNrFAsXX05pALv0bqn1xvmTxBlFbH/1TS2m9YDw5EsgxAt06uPw/sjnGj5dLAskkkHOi/bQLR5voF22QoOPDT6fh5rufwtSX7tuEc0is2eADh2LSw9eZhgg6IhXw7/3jbtMsQQcz2pN5i3JuEmiaQFCajf42xcKSL6yGjbwiuNv01C+gWL70++LAL/DfdTE8wTpYBxyOtcdu2jjFDc7vvm/h4/9YsMRFDT09iNLS1pPsblwP5yCB1ibA6Jj1K1Ah3ZWdWJdwo1GpTHdiXZyvVTG6L2sT0R55TkNRzUQ3Ql3kuWk6KiJdm45qM1IOEmgpAUbHtJQg9yeB1BJgdExqefNoJOAGAUbHuEGRc5BAcgjknGjXjsLPvvSeyWAqKiwwXYUHbtUHV19wsiH8zzc/xn++/AFjbhhufh5yyd/Qrm2xqYLXDryPPvsa3nz/C7z21OiGFaFoT87NyVlJIBqBNbM9mDnZQu0qp2K7zx9D6DzYhr/DhnLbs2IxCm4fAc+6NQgN3AWFV43BynXRG/Y1h/z0by28/KojqU483sa227AqqDkcuQ8JNCaQS6J9uV2DBSLMTYNRzUrX6vSwRNfnK2M0Gs0XSd7LqwLdaSyq+egq0ctEoqtc7yHPq2znIIFkE6BoTzZhzk8C7hKgaHeXJ2cjgVQQoGhPBWUegwSaRyDnRHswaONOaWj62jv/QX19Pf6w1064+bIzjXTXcf+El/DKWx/jwxedCvdlK1bjjof+jq++/QUeya/bcWA/XDXiJPTs3rmBOEV7824+tNm+/gAAIABJREFU7kUCzSFg10kV+xsWFn/qSO3CbiFsfZKNImk6uvHwrFsL/53nw1q2AHbPvvBc9xAK5Y2zlZVSCu/i+HW2hacnWeZj8gfub2PfvSnZXcTLqXKYQLaIdv3rtFiaiRqBHm44qo1GI2J9gTxXI9Ev0UaRaTRaJPJcBLqJdQk3HA1Xp3f1FlGj5/DvSjpdOkV7Oq0Gz4UEYhOgaI/NiFuQQLoRoGhPtxXh+ZDAegI5J9qTsfgU7cmgyjlJYFMClXM9+N9z4Sp2KczsuW8QWxwiCmszscEeeSPNd+8l8M6eAbttBwSufQS+zl1Q5Pe6KtqXLPVg/ONe6QAODB5k4+gjKNl575KAWwQyRbRrE9EFJtZFRLqJc5FHEenlwUp5rgoL7XWol2ak0UZbK9+JcQkL9DKR6U6si/NcR4uNRt26rzhPcglQtCeXL2cnAbcJULS7TZTzkUDyCVC0J58xj0ACzSVA0d5cco32o2h3ASKnIIEoBDQxYY5WsUv+uQ6Nh9nqRBslfZrOQPdNHI28Lz9EKN+H2isfhN2rHwp8XldF+5pKDx4Zb2HtOg/69bVx2sk2LEYc814mAdcIpItorxNJPi8S4yIifZ5IdBXqWomu8S5LglWI9RZbJxHlEYluHhtVpfeRpqNasc5BAtlAgKI9G1aR15BLBCjac2m1ea3ZQoCiPVtWkteRjQQo2l1YVYp2FyByChJogsDaeR788rxUsa9wsoW77maj3+EitPObRpY/5Wnkv/4MJO8JtcNvQXCHPczGbor2mlqpZJ/gwfIVFrp2CWHY0CCkjQMHCZCAiwRSJdpr5N28udJktDzSXFTy0bUqXSW6xrssk/z0aEPfX9PolkhjUdNoNCzTNeqlt+Sk+zb30RsXWXEqEkgXAhTt6bISPA8SiI8ARXt8nLgVCaQTAYr2dFoNngsJbEiAot2FO4Ki3QWInIIENiKgVexz37Kw8BNRWFK4nlcsVewnhNB+q+h1o94vP4B/4u1mtsBxw1G//9ENM7sl2m2JUn7iGS/mypsAJSUhDB9mo7hN09X1XFwSIIHmEXBLtK+2AyLNNRPdiXbRivQFmpkelusV8nq0kSfp59pMVJuKanNRR6iXhHPS9fk2yJNmpBwkQAIARTvvAhLILAIU7Zm1XjxbElACFO28D0ggfQlQtLuwNhTtLkDkFCTQiEDtKg9+kEiW2pVOFXvH7W1seWwI3sLoMts7+yf47rkEnmAQdfsehroTL9qAq1uiffKLXvzwkwd+n1ayh9Clc6zQCC4vCZBAcwjEK9qXBaulAj1cka456SLVtRpdn1O5vk7fuYsy/FJt3kubiopEV5neWyS6VqWb5+TnHtKE1GKr0eYsIffJQQIU7Tm46LzkjCZA0Z7Ry8eTz1ECFO05uvC87IwgQNHuwjJRtLsAkVOQQCMC3431QiNjvAUh9D/KRufBsavFraXz4b/zAniq1iK47c6oPV+q2jcKTHdDtH/wkYWp8qVTn3laEH16xz43Li4JkEDzCKho79zOh2nLVjZkoqs8nyfRLpHmoyrSayEfM4ky2kj+uZHmkUgXyURXqV4Wbj7axVvYvBPkXiRAApsQoGjnTUECmUWAoj2z1otnSwJKgKKd9wEJpC8BinYX1oai3QWInIIEwgR+e8ODhR95YfmAnUYG4e8YW2R71q5BwR0j4FmxGMGeWyBwxf0I+Ys2YdpS0f7Djx5Mfslr5j3+mCC23y72uXFhSYAEohOol0ajJsYlnIk+X/PRJd6lXCrTVaYvkufrNT8qymgnfzCMNJcGoxrj0tsnIl1+jlSkd/D6uQwkQAIpIkDRniLQPAwJuESAot0lkJyGBFJIgKI9hbB5KBJIkABFe4LANrc5RbsLEDkFCQiBilkWfnzMyTne5lTbRMbEM/z3XwHvz9MQKmmP2qvGwu7YdbO7tUS0ax77E097Ycsp7fd7G/vLFwcJkEBsAgGpNtdGo04Fugj0cKTLfI14keeWBqsQ67epi1Ug0lxEuqlI14gXJ9pF5XofkesFUrHOQQIkkB4EKNrTYx14FiQQLwGK9nhJcTsSSB8CFO3psxY8ExLYmABFuwv3BEW7CxA5Rc4TqKv0YNo9FuqrPOi2m0TGSMV4PCP/1YnIf+s5hIrbofby+2B3LW1yt+aK9mXLLYyf4EFtwIPtB4Zw/LHxnVs8589tSCDTCVRJ/vlcyUQ3Gekq0UWm6/eRrxV2bdRL1LfWunmLTGPRSAV6WbgivbevGLt06oyVq6M3K810hjx/EsgmAhTt2bSavJZcIEDRngurzGvMNgIU7dm2oryebCJA0e7CalK0uwCRU+Q2AUmF+H6cF5VzPSjsFsLgC4OIp0DV+8MX8I+9zmSx1156H4L9to3KsTmife06D8ZJY9ZKeSNA89jPPDUIy0mP4SCBnCCwUkS5CvQFKtBNpEsjkS4/r7HronLI81joaWkVepFThZ7fVh6dJqOR5qPeJhqNxtsMNScWghdJAhlCgKI9QxaKp0kCYQIU7bwVSCDzCFC0Z96a8YxzhwBFuwtrTdHuAkROkdMEyt+3UP6OBY8I7J0uCaKgc+zsc2vZQvhHnQtPbTXqjjkHdQceG5NhoqI9IP5w/AQvli6ThoydbAwbGkKBP/a5xTwRbkACaUJA72aNbnGqzzUnvVFVelCr1KtQLRXr0UYBvKYS3alIF5FuqtGdxqMq1LvL955mXi9FezPBcTcSaEUCFO2tCJ+HJoFmEKBobwY07kICrUyAor2VF4CHJ4EoBCjaXbg9KNpdgMgpcpbA2nIPvhsrhl2Mn8bFaGxMrOEJ1MA/ejisJfNRP3hvBM65MdYu5vVERLtmsT89ycLsORaK24Rw7jAbbUtin1tcJ8KNSCBFBILyi6XNRLUSPZKJXh5wmo2qWNcmpHXSjDTaKJaPlzjSPJyRbvLRIxXpxegs+enJGhTtySLLeUkgeQQo2pPHljOTQDIIULQngyrnJIHkEqBoTy5fzk4CLSFA0d4SeuF9KdpdgMgpcpJAsFpy2e+1EKjwoMN2NrY9LVZLRAeT79GbkTf9E9jdSlF7zTiEfPGJvkRE+8uvWpj+rYX8fGDYEHkDoCsle07epGl+0fUiycsbS/Q6JyvdVKfL84ulIl1le7TRwfIZiW6q0SXOpUxy0XvpozQZ1XiXdvJ6aw2K9tYiz+OSQPMJULQ3nx33JIHWIEDR3hrUeUwSaBkBivaW8ePeJJBMAhTtLtClaHcBIqfISQI/TbSw+hcL/g6Syz7ShjeOWJa8D16G7wWR6/5C1F77COwuPeNmF69o//cnFt77QKJsJO/itJNt9O8X3xsAcZ8INySBOAnUiiafazLRVaCvk6x0eawLV6iLUF8WrI6q0TWyRSvOy7QKXTPR86TpaCQjXcR6b/kqiKchQpzn6/ZmFO1uE+V8JJB8AhTtyWfMI5CAmwQo2t2kyblIIDUEKNpTw5lHIYHmEKBobw61jfahaHcBIqfIOQKL/mNhzmsWJN4Zg84Pok3P2BXj3tkz4L/7YkByXWpH3Ibg9rsnxC0e0T7jZwvPTZbzknH0ETYGD6JkTwgyN06IQIUdCMe6SLNRiXGZF451WRCW6qvk9WhDm4h2F3muEj2Sk65S3alIl9x0edRmpJk6KNozdeV43rlMgKI9l1ef156JBCjaM3HVeM65ToCiPdfvAF5/OhOgaHdhdSjaXYDIKXKKwLqFHnz7kBj2ILDFYTZ67hNbZnsqV6PglqHwrK1A3SF/Rd2RQxJmFku0z5/vwYSnvLDlvPbZy8ZBB8Q+r4RPgjvkFIHldg0WRBqMapyLRLuUm2gXEevyVRmj0Wi+SPKe0ky0LJKJLo1GVZ6XikTXqBd9TWV7tg6K9mxdWV5XNhOgaM/m1eW1ZSMBivZsXFVeU7YToGjP9hXm9WUyAYp2F1aPot0FiJwiZwjYdcC0u72oXeVB+61tDDwrDpkt5ts/ZiS8c2YgOGAH1I4cA1iJV+lGE+0rV3rwyAQLNTUebLONjROPs010DAcJNEVAP4OxWKrQTR56OBNdG42qQI80H63Rd5OijELTaLTIVKBrTnpvrUZXqS756CrUu3qLslijx763KNpjM+IWJJBuBCja021FeD4kEJ0ARTvvEBLIPAIU7Zm3Zjzj3CFA0e7CWlO0uwCRU+QMgf9N8mL5dx7kFYewy2WSy14YOzLGN3ks8j58BXa7Tqi9/jGE2pQ0i1dTor1KmrI+Ml7y4qUpa2mvEIacEYRXCu45cpuANhFdIA1FF9RVScNRJyN9voh08708t9BeB21GGm2UWPkm1qVMJLqKdK1EL/OKTNdGoyLUO0l+OkfTBCjaeXeQQOYRoGjPvDXjGec2AYr23F5/Xn1mEqBoz8x141nnBgGKdhfWmaLdBYicIicILP3Kg1kviMGWSvHtzw2i7RaxJXvetE/gG38zQmK+a694EHbvLZvNanOiva4emDDRi0WLPegoTVnPGWqjMA753+yT4I5pQ6BOJPm8SIyLCPXG+egq1bVaPdbnLTpafiPRNcZFRXqZCnQT7eJUpKto52g+AYr25rPjniTQWgQo2luLPI9LAs0jQNHePG7ciwRakwBFe2vS57FJIDoBinYX7hCKdhcgcoqsJ1Cz3IPp90n+uUTHlB1ko+zAWApT0mEWl8M/ejg8dbUInHQx6vf5c4s4bSzaQ+L5n33OwsxZFopErp97to327WPL/xadBHdOGYEayT+fW+fEuJhcdMlHV4Gu32u8yzLJT482NDmoq7fQEehGpmtWumSki0TXqJc+8ujTbr4cSSNA0Z40tJyYBJJGgKI9aWg5MQkkhQBFe1KwclISSCoBivak4uXkJNAiAhTtLcLn7EzR7gJETpHVBLTf4/QHvKhe4kFJnxB2GC651THyzz21VfDfdi6s5YtQ/7s/IHDWNS1mtLFof3WKha+/sZCXBww9M4iePSjZWww5hROstgMizTUTXSJdwhXpCzQzXeR6ufxcIa9HG3lyE3aXfPRSiXIpzddHrUhvayJdzJf8nCfNSDlajwBFe+ux55FJoLkEKNqbS477kUDrEKBobx3uPCoJtIQARXtL6HFfEkguAYp2F/hStLsAkVNkNYFf/2lhyecitItC2OkSG/klsYW2b+y1yPvhv7DLBkhkzP0I5flazKixaP9UzuetdyzT8PSUE21sOSB2hX2LT4ATJERgWbBaKtAdaT6/ThuORirSHbm+Tt/BiTJ8sMKRLirOVaKLUDexLo5c7yGSXe6AhM6JG6eWAEV7annzaCTgBgGKdjcocg4SSB0BivbUseaRSMAtAhTtbpHkPCTgPgGKdheYUrS7AJFTZC2BlT9Y+PkZpyp4O4lmaReH0M57cxJ8rz0pTU+LUXvdBNjtO7nCJyLav5hWbyJjNDrm8MNs7LozJbsrgBOYxJZGo4vrtcmoxrioRJeMdIl20eajKtX1uVrIJx+ijCJPXrj6PJyPLrEu2mzUyHQR6xr7wpHZBCjaM3v9ePa5SYCiPTfXnVeduQQo2jN37XjmuUuAoj13155Xnv4EKNpdWCOKdhcgcoqsJBCo8GDaGAvBgAc997WxxZ9jC23vjG/gf+BKiZbxoHbkGAS33NE1NiraVyzz4u6xNuqlGHrP3W0cekjsc3LtBHJoonppNGpiXMKZ6CYfXSV6WKovksd6ke3RRjvLJ9JcxHm4wahpNBpuPKqNRjt4/TlENDcvlaI9N9edV53ZBCjaM3v9ePa5R4CiPffWnFec+QQo2jN/DXkF2UuAot2FtaVodwEip8g6AiEpRv5unBfryj0okuzzQRcE4YnRN9Kzcqnksp8Nq7oKgcPPRP2hJ7nKpboqDw88DKyrgomK0cgYjY7hSJxAQKrN52mcS1AEumaia7NR03DUyUtfGqxCrLcwOlsFDQ1GnVz0cLyLfN9HqtMLpWKdI7cJULTn9vrz6jOTAEV7Zq4bzzp3CVC05+7a88ozlwBFe+auHc88+wlQtLuwxhTtLkDkFFlHYO4bFhZ8ZMHrC2Gw5LL7O0SvXvbUB+C7fQS8C39D/fa7ITBilKtMqqs9GP+4hRUrPejRPYShZwWRT4/bJOMqyT+fazLRwxJdZLoR6eGvFXZt1PXRsKBuXqfBqMa59BKJ3lsy0vVRn+sjj/lsNOrqPZ6Nk1G0Z+Oq8pqynQBFe7avMK8v2whQtGfbivJ6coEARXsurDKvMVMJULS7sHIU7S5A5BRZRaBiloUfH3Ny2bc51UbH7WPVNgO+iaOR9+WHsDv3kFz2RxDyF7nGJCjV9Y8/6cX8BR50bA8MOzuIosLYDVldO4E0nGiliHKnAl2+pAK9vLFIl5/X2HVRzzpPJHlPqwi9JM6lTKvRVaj7SqCRLlqd3lMiX3QbDhJoCQGK9pbQ474k0DoEKNpbhzuPSgLNJUDR3lxy3I8EWo8ARXvrseeRSSAWAYr2WITieJ2iPQ5I3CRnCNRVSi77PRbqqzzoLhno/Y6OLdnzPp4C39/vRyjfj9prxsHuXuYaL214+twL0pD1ZwuFBcAVF3nh9Uevxnbt4K00kb6FoNEtTvW502jURLsYqS4NR6UJqVasRxt+eJ1Go1qNLvK8TKrRy0w+uiPVe8gjU3daaYFz6LAU7Tm02LzUrCFA0Z41S8kLyRECFO05stC8zKwiQNGeVcvJi8kyAhTtLiwoRbsLEDlFdhAQw/u95LJXzvWgsJtExlwouewx4lmseTPh/9sF8EjZeWDYjajfaW9XWbzznoVPPrVgST78eUOlwn6AhZWVAVePkerJgtJEVJuJmuai4Ux0bTbq5KSvM01I66QZabRRLAtjYlw0F10fRaSX5hVJRbrEu0iVehfJT+cggdYmQNHe2ivA45NA4gQo2hNnxj1IoDUJULS3Jn0emwSaR4CivXncuBcJpIIARbsLlCnaXYDIKbKCwPwPLMx72zJNT3e6JIiCzjFy2ddVwn+rND+tWIH6/Y9G4LjhrnL46hsLr01x4ktOPN7GTjtKY1a/N+1Fe71I8vJGEr1cJHpDdbo8v1gq0lW2RxvtLV+4At3JRC/zOY8q1vVLX+cggXQnQNGe7ivE8yOBTQlQtPOuIIHMIkDRnlnrxbMlASVA0c77gATSlwBFuwtrQ9HuAkROkfEE1pZ78N1YMezifwccG0TX38XIQLelQeq9l8E763sE+26L2svuhSk7d2n8OtvC05MsaHTMwQfa2Pv/bBT4vGkh2mtFk881megq0NdJJbrEuUhlupHrUpW+LFgdVaNrZEtnqTgvlcpzI9FNxItWpDvV6b3lqyDWRwlc4sxpSCCZBCjak0mXc5NAcghQtCeHK2clgWQRoGhPFlnOSwLJI0DRnjy2nJkEWkqAor2lBGV/inYXIHKKjCYQrJZc9nstBCo86LxjCFudLN1HY4z8Vx5H/tvPI1TcDjU3TECoRLqUujSWLPVg/ONe1Ek/z112tnHEYU6MSqpE+xo7EK5IX2tiXOYFRKiLRF8Qluqr5PVowyvp5928RU5GulagS2PRMmk0WiqxLqX5TrxLPhuNunS3cJp0JkDRns6rw3Mjgc0ToGjnnUECmUWAoj2z1otnSwJKgKKd9wEJpC8BinYX1oai3QWInCKjCfw00cLqXyz4O4Sw06VBWPnRL8f7wxfwj71OKtgt1F56H4L9tnXt+tdIM9ZHxltYu86Dfn1tnH6KDU+4a6dbon25XSPSPNxgVLPSG/LRVaavRWWMRqMqyXuKPDci3cS6qEQPx7pI81F9TWU7BwnkOgGK9ly/A3j9mUiAoj0TV43nnMsEKNpzefV57ZlKgKI9U1eO550LBCjaXVhlinYXIHKKjCWw6D8W5rwmOeiS+jLo/CDa9IweGWMtWwj/qHPhqa1G4ITzUb/fEa5de02tVLJP8GD5Cgtdu4QwbGgQvkbSPx7Rrme/JFi1vrGoiPN5ItJVoEeaj9ZI9Eu0USAwSkWYR+R5mcS6aOPRsvBzWq1Oje7asnOiLCZA0Z7Fi8tLy1oCFO1Zu7S8sCwlQNGepQvLy8pqAhTtWb28vLgMJ0DR7sICUrS7AJFTZCSBdQs9+PYhMezinbf4i42eezsRLU0NT6AG/tHDYS2Zj/rBeyNwzo2uXbct5/DEM17MnedBSUkIw4fZKG6zofSPiPbpq1dIJnoV5gUl0iUc62KajUpO+jyJeIk1iiX/PNJU1OSim3x0iXeR71Woa346BwmQQMsJULS3nCFnIIFUE6BoTzVxHo8EWkaAor1l/Lg3CbQGAYr21qDOY5JAfAQo2uPjFHUrinYXIHKKjCNgS/75tLu9qF3lQfutbQw8K7pk1wv0PXoz8qZ/gmDPLRC48kGEfO4J6ckvevHDTx7k+4M47My1qGpbaarSy+vWmEr0cpHoC+RxUX2VvC8Qveq+o+U3Ir2XkeclItLle81JV6Euj20tX8atF0+YBDKRAEV7Jq4azznXCVC05/odwOvPNAIU7Zm2YjxfEmBGO+8BEkhnAhTtLqwORbsLEDlFxhH43yQvln/nga+d5LKPtOEtjC6v8957Cb6XHoFdWITa6x5DqGNXV655abAaY779DR8E5mJN2zVYV1QVc94uUnHuSHPNRZfmovlt0Vt+7imRLn3k0a85OBwkQAKtToCivdWXgCdAAgkToGhPGBl3IIFWJUDR3qr4eXASaBYBVrQ3Cxt3IoGUEKBodwEzRbsLEDlFRhFY9rUHMyeLjJag8R1HBFFcFl2ye2fPgP/uiwHbRu2FdyK47c4tut4KO4A3qubi5bWz8GnNkk3maizSNRfdqUovQf+Ctti6uB2q1kbPWG/RyXFnEiAB1whQtLuGkhORQMoIULSnDDUPRAKuEKBodwUjJyGBlBKgaE8pbh6MBBIiQNGeEK7Nb0zR7gJETpExBGqWezD9Pi80Oqb3wTZKD4iRy165GgW3DIVnbQXq/nQK6v5yerOutSZUjzeryvHPtb/i/er5G8zRbUk3HJbfH6ft0N00HG2qIj2eZqjNOjnuRAIkkBQCFO1JwcpJSSCpBCjak4qXk5OA6wQo2l1HyglJIOkEKNqTjpgHIIFmE6Bobza69TtStLsAkVNkBAFx3Zj+gBfVS6ThaJ8QdhguleFS1d7kkA6l/jEj4Z0zA8FtdjLV7PBE22HDmepDNj6sWYBX1s7GOyLZq/QEwqO/pz26fDsAW8zcEnsNKMTRR8TOiKdoz4jbjCdJAg0EKNp5M5BA5hGgaM+8NeMZ5zYBivbcXn9efWYSoGjPzHXjWecGAYp2F9aZot0FiJwiIwjMfsXC4s8s5BVJLvslNvJLokfG+P7xEPKmvgpb8thrrxuPUGGbuK5zSbAK96yajteq5mCNls6HR1dvIY5t0w8H5w3A1Mc7o7LSgz69QzjztCAsK/bUFO2xGXELEkgnAhTt6bQaPBcSiI8ARXt8nLgVCaQLAYr2dFkJngcJxE+Aoj1+VtySBFJNgKLdBeIU7S5A5BRpT2DlDxZ+fsax2dudbaPdgOgV5N4vP4B/4u0IefNRe81Y2D37xnWND1V8j3tFstfAyVEv8eThCJHrRxb3x54F3RAQ7z5+ghdLl3nQuZONYUNDKPBHF/6RA1O0x7UE3IgE0oYARXvaLAVPhATiJkDRHjcqbkgCaUGAoj0tloEnQQIJEaBoTwgXNyaBlBKgaHcBN0W7CxA5RVoTCFR4MG2MhWDAg16/t9HnT9Elu7VwDvyjR8ATrEPtWVcj+Lv9Y17f1JqFuG7555hTv8Zs29tbjJs67YZDino37Cu9VPH0JAuz51gobhPCucNstI1RVd/4wBTtMZeBG5BAWhGgaE+r5eDJkEBcBCja48LEjUggbQhQtKfNUvBESCBuAhTtcaPihiSQcgIU7S4gp2h3ASKnSFsCISks/26cF+vKPWhTFsKOksvu8TZ9up7qdfDfNgzWyqWo2+cw1J10UdRrW1i/Dtev/AJvVc0z27WRCvaL2w/GsLYDkefZMA/m5VctTP/WQn4+MGxIEN26xlfJHjkBiva0vc14YiSwWQIU7bwxSCDzCFC0Z96a8YxzmwBFe26vP68+MwlQtGfmuvGsc4MARbsL60zR7gJETpG2BOa+aWHBVAten+SyX2bD1y6K3A6F4H/gSnh/nga7bABqr3gQoby8zV5bQKJhHq74AQ+u+s7ExGiL1KMlIuYGqWLvbBVsss+/P7Hw3geW6aV62sk2+veL3fx040ko2tP2NuOJkQBFO+8BEsgSAhTtWbKQvIycIUDRnjNLzQvNIgIU7Vm0mLyUrCNA0e7CklK0uwCRU6QlgYpZFn58zKkq3+ZUGx23jy63819/FvlTnkKoTbE0P50Au32nzV6XxsRctfxTlNevNa8PzO+Au7vsjR19m9/+hx89mPySU0Z/9BE2Bg9KXLLrvhTtaXmb8aRIoEkCrGjnzUECmUeAoj3z1oxnnNsEKNpze/159ZlJgKI9M9eNZ50bBNJOtNfUBrBk2Sr0Ke2WMStA0Z4xS8UTTYBAfZUH39xlQR+77SEV5EfFaH464xtTza4l57UjxyC45Y6bHK08uBbXSw77u9XzzWtauX51x11xQvEAU9G+uTF/vgcTnvRC89n33dvGgfs3T7JTtCew+NyUBNKEAEV7miwET4MEEiBA0Z4ALG5KAmlAgKI9DRaBp0ACCRKgaE8QGDcngRQSSBvRvqqiEtffOREffjrNXP6PU59EMGjjuGE34vd7DsZFQ49JIZbEDkXRnhgvbp0BBCQd5scJFrSivbBbCIMvlGiXzSfAmIvxSB67/7azYVVXoe7os1F30PGbXOTdq6bhnopvG54/q2RbXNFhZ5RYErjexFi50oNH5DxqajzYfmAIxx8rgfEtGKxobwE87koCrUCAor0VoPOQJNBCAhTtLQTI3UkgxQQo2lMMnIcjARcIULS7AJFTkECSCKSNaL9y1KNYvrICV5x3Io4ecr0cKBd9AAAgAElEQVQR7Tpeev3feObFd/DKE7clCUHLp6VobzlDzpBeBOZLFvq8ty2oAx98cRAFnZvOZffUB+C7fQS8C39D/eC9ETjnxg0uptKuw5lL38dnNYvN8/sU9MDoznugX167qBddVS2SfbyF1RUe9OkdwpmnBmFFacIaD0GK9ngocRsSSB8CFO3psxY8ExKIlwBFe7ykuB0JpAcBivb0WAeeBQkkQoCiPRFa3JYEUksgbUT73kdcgIn3Xomt+pViu/3OaBDtM2bOxSnnj8LXb49PLZkEjkbRngAsbpr2BNaWe/DdWDHa4tYHHBdE112jND+Vq/FNHI28Lz+E3a0UtdeMQ8i3vpHp4mAVTl78Dn6uW22u+5Guv8dfivrGZFBXD0yY6MWixR507BDCucNsFPijn0fMSWUDivZ4KHEbEkgfAhTt6bMWPBMSiJcARXu8pLgdCaQHAYr29FgHngUJJEKAoj0RWtyWBFJLIG1E+84Hn41XnxyFsp5dNxDtH3/xPa64dRw+m/JwaskkcDSK9gRgcdO0JhCUKvJp91oISBV55x1D2Ork6FEteR9Pge/v9yPkL0TttY/A7tKz4fpm1K3CiYvexjK7Bh0tP57udiB28neJef0h8enPPmdhpsTWFBWKZD/bRvv2LZfsemCK9pj4uQEJpBUBiva0Wg6eDAnERYCiPS5M3IgE0oYARXvaLAVPhATiJkDRHjcqbkgCKSeQNqL97MvGYNdBW+OcU//SINprA3UYfuU9aFNUgAdHXZRyOPEekKI9XlLcLt0J/DRRolp+seCXKvKdLpWolqbj02HNmwn/3y6AJxhE7YjbENx+94bLm1qzEEOXfIDqUL1ExLTF890PQa+8NnFd/qtTLHz9jYU8yYQfemYQPXu4I9kp2uPCz41IIK0IULSn1XLwZEggLgIU7XFh4kYkkDYEKNrTZil4IiQQNwGK9rhRcUMSSDmBtBHtv/xajjMuuh2/22kbvP/xNzj6T/viv9NmQJukThp7HbbsW5pyOPEekKI9XlLcLp0JLPrUwpxXLUBSYwadH0SbnlFy2ddVwn+rND+tWGEan2oD1Mh4ce2vGLn8Y9jyxP8VdMPErgdGbXjamMmnn1l4610LHg9wyok2thygs7g3WNHuHkvORAKpIEDRngrKPAYJuEuAot1dnpyNBJJNgKI92YQ5Pwm4T4Ci3X2mnJEE3CKQNqJdL2jRkhWY9M/38NMvv8GW/Iit+5fhlGMOMnEy6Two2tN5dXhu8RCoXiKRMfeLYZekmL6H2+ixVxTBbdvw33sZvLO+R3DADqgdOQawRNDLGLXqKzxc8YP5/tjifrin8z7i7cWaxzFm/GzhucnOPIcfZmPXnd2V7DovRXscC8FNSCCNCFC0p9Fi8FRIIE4CFO1xguJmJJAmBCja02QheBokkAABivYEYHFTEkgxgbQR7d98/z/ssG1/5OeJ7Gs0lq+sgH5tM6B3itHEfziK9vhZccv0I2DXAdPv9aJmhQftt7Yx8Kzogjv/5ceQ/+5k2O06ofb6xxBqU4K6kI3hy6bizap5Rqtf02FXnNdu+7gvduEiD8ZL81NbRP+ee9o49CD3JTtFe9zLwQ1JIG0IULSnzVLwREggbgIU7XGj4oYkkBYEKNrTYhl4EiSQEAGK9oRwcWMSSCmBtBHt2+13Bj56+X507thuAwAq4C+6/kF8/MqDKQWTyMEo2hOhxW3TjcD/Jnmx/DsPfO0kl32kDa80IG1qeH/4An6Jcgp5vai94kHYvbdEhR3AyUvewbTa5fBL/frYrvvi0KI+cV/m6tUePPKYhSppxLrNNjZOPM420THJGKxoTwZVzkkCySNA0Z48tpyZBJJFgKI9WWQ5LwkkhwBFe3K4clYSSCYBivZk0uXcJNAyAhkh2rVR6tdvj2/ZlSZxb4r2JMLl1EklsOxrD2ZOlk+RiNjecUQQxWVNS3Zr2UL4R50LT201AiddhPp9DsO8+kqcsOgdzAtWoqPlx6TuB2NHX6e4z7la5PqjEyysXOVBaa8QhpwRhDj8pA2K9qSh5cQkkBQCFO1JwcpJSSCpBCjak4qXk5OA6wQo2l1HyglJIOkEKNqTjpgHIIFmE2h10X7bfc+Yk3/ulfdx1KH7oMDva7iYQF0dPvrsWwzcaguMu2Nksy8y2TtStCebMOdPBoGa5R5Mv0/iWiQ6pvchNkr3bzquxROogX/0cFhL5qP+d39A4Kxr8F1gBf66+G1T0b5Vfjs82+1g9MprE/epBiUm5vEnvZi/QCJrpJp++DAbhVGq6eOeOMqGFO1uUOQcJJA6AhTtqWPNI5GAWwQo2t0iyXlIIDUEKNpTw5lHIQE3CVC0u0mTc5GAuwRaXbQPv+pec0X//vxb7LHLQPjy8xuusMCfjy37luJkaYjariR+gecuotizUbTHZsQt0otAqF5y2R/wQpugthtgY7uhItmjxLX4Hr0ZedM/QbDnFghcPRYf1i/DyYvfNRe1d0F3TOh6AEqs9b+7sa5Weh3juRcs/CwNUAsKQjhXjt+xY9PV9LHmi/d1ivZ4SXE7EkgPAhTt6bEOPAsSSIQARXsitLgtCbQ+AYr21l8DngEJJEqAoj1RYtyeBFJHoNVFe+RStbJ95LDj0KaoIHVX79KRKNpdAslpUkZg9isWFn9mIa8ohJ0vt81jUyP/3ReQ//J42IVFqL3uMXxYVC+S/R2z+Vkl2+LWTrsnfN5vv2vhP3J8S2Jihp4eRGlp8iW7niRFe8JLxR1IoFUJULS3Kn4enASaRYCivVnYuBMJtBoBivZWQ88Dk0CzCVC0NxsddySBpBNIG9Ge9CtN4gEo2pMIl1O7TmD1LxZ+mmiZebc72zYV7U0N78zv4L/3MkBK0GsvvBMfbtEDpy59F/UhG3d33ht/LR6Q8Pl99Y2F16Y4xz/xeBvbSgPUVA2K9lSR5nFIwB0CFO3ucOQsJJBKAhTtqaTNY5FAywlQtLecIWcggVQToGhPNXEejwTiJ5A2ot22Q5LT/h6++X4mqqprN7kCZrTHv6jckgSaIhCo8GDaPRaCNR702s9Gn0ObltzW6hXw3zYUnnVrUfeX0/H+Hw5okOy3d9oTp5VsnTDombMsPPucpd4ehxxoY6//S51k15OlaE94ybgDCbQqAYr2VsXPg5NAswhQtDcLG3cigVYjQNHeauh5YBJoNgGK9maj444kkHQCaSPa73l0smmIuv9eO+Ptj77EH/+wG4qLCvHPNz/GQb/fFXdcMyzpMJp7AFa0N5cc90slgZA0H/1unBfryj1oUxbCjsOD8Eh0y+aGp74e/r9dAKt8Fuq33w3vnTVCJPt7ppL95k67YWjJwIRPfclSDx6d4IVMjV12tnHEYamV7BTtCS8ZdyCBVidA0d7qS8ATIIGECVC0J4yMO5BAqxKgaG9V/Dw4CTSLAEV7s7BxJxJICYG0Ee1/OPZiXHruCTjswD2h308Yczn6b9ELd417HlrtfuWIE1MCpDkHoWhvDjXuk2oCc9+0sGCqBa80H93pEhu+dk3novueewB5//4X7M498O7lN+OUVR+3SLKvqfTgkfEW1q7zYEuJqjnlRBueKM1Xk8WGFe3JIst5SSA5BCjak8OVs5JAMglQtCeTLucmAfcJULS7z5QzkkCyCVC0J5sw5yeB5hNIG9E+6IAheOGxm7FVv1Icfvo1uOGS07HroK3x78+/xY1jnsCHL97X/KtM8p4U7UkGzOlbTKBCIlt+fMzJRR94lo32W0fJZf/yA/gn3o5Qvh/vXjUaJ9dNN5L90vaDcYl8JTpqaj0YP8GD5Sss9OgewtCzgsjPS3QWd7anaHeHI2chgVQRoGhPFWkehwTcI0DR7h5LzkQCqSBA0Z4KyjwGCbhLgKLdXZ6cjQTcJJA2ov3/Dh+Bu284D3vuuh0uvuEhbNm3F0aceRTe+/hrXDXqUXz11ng3r9vVuSjaXcXJyVwmUF/lwTd3WdDH7nva6HdklFz2hXPgHz0CnmAd3h1xBU4qWWQku0bFaGRMosOWuJonnvFi7jwPSkpCGHGujaLCpivpE50/0e0p2hMlxu1JoHUJULS3Ln8enQSaQ4CivTnUuA8JtB4BivbWY88jk0BzCVC0N5cc9yOB5BNIG9F+0nm3YtB2A0xEzNtTv8S1dzyGww/ZGx9/8R223bI3Hrj1QldoaAzNGImj0ez3OgmLPmCfXXDzZWeiwO9rcv4ly1bh/gkvmnOpqFyHv113rsmQjwyKdleWhpMkg4A47R8nWNCK9sJuIQy+UHLZm6gm91Svk+anw2CtXIr3jzwWf92msEWSXS9n8ote/PCTB35fCMOGhtClc+pz2RtjpWhPxk3GOUkgeQQo2pPHljOTQLII/D975wFeRbW14W/mpIdACL0rTZpS7IgCCig2FBRFFCkhgoqI2Nu92P0FEbkCIgKiiKKAYKEJBlSslCBVkJpAQoAkkJ4zM/8+JwpEAjllzpmZM99+9PGqe6+99rs2Xn3ZrKFoDxRZxiWBwBCgaA8MV0YlgUASoGgPJF3GJgH/CJhGtOccy4MqXs5WrRLnPtHMT5dg1c8bcG7Duhg5pA+qVI7176R/r/5k4Up8MHcJ3nl1lHhZG4nHXpjsFvyPiv7w5Q2XWO+T+Dyu7XIxbr+xCyrHxbp7S/+Tp2sNRbsupWGQABBI/U7GviUy5HCg3cMKoqqf4TW5piHy7Sfg2LYeKy67FHd2ae6W7APizsOr1S73KbMVYu9V34u9RceaQQMUNGpo3Ev2fw5A0e5TKbmIBAwjQNFuGHpuTAI+E6Bo9xkdF5KAIQQo2g3Bzk1JwC8CFO1+4eNiEggoAdOI9rOd8usVP+OGay7TBcS9I1/FNZ06YMDt17rjrfopBS+8+QFWfPZmufHffn8e0tIP4/Vn7jvj/hTtupSGQXQmkLtfwh+THBC+HM3vUlC97ZlFd/hXsxD+9YdY2qYZ7r7hUjih4c7YphhXo5NPWW1IkTF/YWlP+L59FLRpbbxkd+VC0e5TObmIBAwjQNFuGHpuTAI+E6Bo9xkdF5KAIQQo2g3Bzk1JwC8CFO1+4eNiEggoAdOIdqeiIMzhOO2wsz5bitffmYPNyTN1AdG590i8+PhgXHVZW3e8vakZuP7uJ9w94KOjTm8f43rNXqNaFfe8dNFCpmXThvivaDXj+mjrP4OiXZfSMIiOBJQCCevHyyjOkVCjg4Zmd4hm6WcYjq3r3K/ZlzWrj/63doZT/IoNl2QfKyS7+J9ej792yZg1W4Z4JI+ru6rocqWx7WJOPQBFu9fl5AISMJQARbuh+Lk5CfhEgKLdJ2xcRAKGEaBoNww9NyYBnwlQtPuMjgtJIOAEDBft+QWFeOS/k9z9zyvFRqN/724YMbi3aM8iYdyUuZjx6WI8M/Ju9LvlGl1gXHL9MEx8eSQubd/SHc/Vf/3q20fh+y8mIiG+tG3NqaPjTQ/grlu7oX+fbogID8f/ZizAMtFDfvHs1xERIfpxiHH0eLEuuTEICehFIEV8O/jIVgnRolXMpY/D3Tqm3CH6sUvPD8HqmnG45c7SH2N3Vm6Kd2p39imVQ5kSJkwCSkqAC9truKOPT2ECtigiTEZkuIzjBc6A7cHAJEAC+hFwifYqMeHIyuX/z+pHlZFIILAEqsZFIEf8mBWfReIgARKwAIG46DAUlSgodvIHrQXKxRRJwE3A9RNkHCRAAuYkYLhof2H8LPHx01+R2O8GFBWXYPb85bi7Tw/xgjwdS777FW88N1x8sLSDbvRcL9pffjIRnS453x2zohftHW9+AOPHPHhCzBcUFuPinvdh7rv/Qavm57hjFBaf+bWwbokzEAl4SGB3sobNczVI4heIdH5aRqU6Z1hYUozC55PwR3E2et59HfKEhO4b3wQfNPDtJ7WO5wKvjVeRcww4rynwwNDS/uxmGi5p5xC/lzjN88o+kHwUYTlc5+UgASsTcP3kWFGJPX7MWrlOzJ0E/iEQGe5wSzsOErAyATv9O1S4+G8ARdHET45RtFv5zjJ3exFw/UptDhIgAXMSMFy0X3nLCDx+fz/c1KOjm9BPv29G4qNvoIr46Og7rz6M9qJntJ5jwEOvoPtVF+Ge23q4w363Zj3GjPsAyfPeKnebO4eNcefWv3d399/PLyhyi/bln4xF3drV3X+NrWP0rBBj+UOgIEO0jJkg/k9X/Pdt414qanc8s5yKmP4K0rf/iqsHXo/M6AhcElkTc2tfh3DJezsufo4MU6c54HrRXrOGhqRERfwKEH9OEpi1bB0TGK6MSgKBIsDWMYEiy7gkEDgCbB0TOLaMTAKBIMDWMYGgypgkEFgCbB0TWL6MTgL+EDBctLfpOgifvzcGLUTvc9dwvWrv0GMoZox/Epe0b+HP2cpd63ox/9G8bzH5tVGIiY7C6DGTxMv0RnhqRH/3/AWLv8ePv23C2OeHu/987pfJeEe0i3n3/0ajYb1amDDtc2z5cy8+nPj0ifgU7bqXiQF9IKAK2b1hvAOFRyTEn6ei1eAzS/aw1V+iYMFkdBWSfXeVSjgvPB6L6t6ISlKY1zurYhtXT/Zdu2XExWkYnqSKNlDmfBFD0e51ebmABAwlQNFuKH5uTgI+EaBo9wkbF5GAYQQo2g1Dz41JwGcCFO0+o+NCEgg4AcNFe+suA/HFjJfQ7NyTHxc9/+pBmP/+i2X+ml4kFEV1f1x10bIf4XQ60fWK9hgjPm7qku6uMWHaPHyx5Ht89/nJF+7TP/lGyPnlyMsvxBUXt8HTD92N6glVKNr1Kgrj6ELgz9kOHN4oIaKKhvajVDiiy5fd8r4dwJsP44a+XbGubnXUC4vF13VvQg259MeAt2P+QhkbUmSITxhg2FAVNaqbt8UDRbu31eV8EjCWAEW7sfy5Own4QoCi3RdqXEMCxhGgaDeOPXcmAV8JULT7So7rSCDwBEwh2l3tYWKiI0+c1vWi/N9/beobjwaeho878EW7j+C4TDcCh9ZK2DnXAVfXl/PvV1CpQfmSXco7jvCXhuLO7hdgReO6qCpHuCV7o7DTPwTsSXLJ38tY+Z0sPl4MDOivoklj80p213ko2j2pKueQgHkIULSbpxbMhAQ8JUDR7ikpziMBcxCgaDdHHZgFCXhDgKLdG1qcSwLBJWC4aH/61fc8OvErTw31aJ4RkyjajaDOPf8hUHhYwoa3HHC1jml4nYr6Xc8gu0WPl8jxj+LhZjH46IKmiBFtYhbUuR5tIhJ8grlps4S580o/wtJb9INv19bckp2i3acycxEJGEqAot1Q/NycBHwiQNHuEzYuIgHDCFC0G4aeG5OAzwQo2n1Gx4UkEHAChov2gJ8wCBtQtAcBMrcol4DmFH3Z33bA9RHUKk1VtE4Uslu8Li9vhM+biol5W/DiVe0QJiZ9XPtaXBFV2yeye/dJmDFLyH2xXecrVVxzJrnvU/TALeKL9sCxZWQSCAQBivZAUGVMEggsAYr2wPJldBLQmwBFu95EGY8EAk+Aoj3wjLkDCfhKgKLdV3KnrKNo1wEiQ/hEYNcXMtJ/khEWo6HDY6r7j+WNsPU/4IsfZ+G+Gzu6PfyUml1wY8w5Pu159KiEyVNl8eFiCW1aaeh7m+JTHCMWUbQbQZ17koDvBCjafWfHlSRgFAGKdqPIc18S8I0ARbtv3LiKBIwkQNFuJH3uTQJnJ0DRrsMNoWjXASJDeE0ge7uMLdNFU3YxWouPkLpetJc35PT9+PWj/6B37yuhyBJernYZBsa18Ho/14L8AglThGTPzpHQqKGGQfcokEu7x1hiULRbokxMkgROEKBo52UgAesRoGi3Xs2Ysb0JULTbu/48vTUJULRbs27M2h4EKNp1qDNFuw4QGcIrAsVCdK9/U4ZSKLl7srt6s5c3pKJ8/Dn5MVx/Q3vkh4fhwSrn46mqF3q11z+TS0SbmmnTHTiYLqF6NRVJiRqiIst/Qe/TBkFYRNEeBMjcggR0JEDRriNMhiKBIBGgaA8SaG5DAjoRoGjXCSTDkEAQCVC0BxE2tyIBLwlQtHsJrLzpFO06QGQIjwloolPLxskO5O2XENtAQ9sHxF84Q1/2Q9P/i2suq42jMVHoE30u3q7V2eN9Tp2oCZ/+0RwZO3bKqBSrYViSispx1pLsrvNQtPtUfi4iAcMIULQbhp4bk4DPBCjafUbHhSRgCAGKdkOwc1MS8IsARbtf+LiYBAJKgKJdB7wU7TpAZAiPCexbIiP1OxmOKA3tH1ERUaV84Z2/8lP0SDiE3fFx6BpWAx/Uvx6OMxn5CnZf+JWMtetEL/gw4L5EBbVqWk+yU7R7fMU4kQRMQ4Ci3TSlYCIk4DEBinaPUXEiCZiCAEW7KcrAJEjAKwIU7V7h4mQSCCoBU4n2/IJCrN24A+mZR3D7jV2gKCrW/fEnzm1YB9UTqgQVjDebUbR7Q4tz/SGQI16Ub36vtC97q8Eq4s8rv2WMc2cKeh1egQ21E3ChFotPz7kV0ZKw5D6MH9fIWPqtDEm8mr+7n4pmZ+gF70PooC/hi/agI+eGJOAXAYp2v/BxMQkYQoCi3RDs3JQEfCZA0e4zOi4kAcMIULQbhp4bk0CFBEwj2rft3IdhT7yJ4uIS5BzPw+bkme7kH3x6AhKqxuGFxwZXeBijJlC0G0XeXvs68yWse0OG6491Oqo4t9cZ+rJnH8HQte/i6yZ10bRIwpfN+qGyHOETrK3bZMyZWyr2b75RxUUdyt/Tp+AGLKJoNwA6tyQBPwhQtPsBj0tJwCACFO0Ggee2JOAjAYp2H8FxGQkYSICi3UD43JoEKiBgGtE+8OHX0KpZIzx2/51o03XQCdG+4vt1+L9Jc7B0zhumLSZFu2lLEzqJiU4tm6fJcL1oj6kj+rI/qKC8B+qS04kXl7+ByS3rIKFYweLGd6B+WCWfOKSmSpj2gQOqaAF/xeUqru1ubcnugkDR7tNV4CISMIwARbth6LkxCfhMgKLdZ3RcSAKGEKBoNwQ7NyUBvwhQtPuFj4tJIKAETCPaL+45DAumv4j6dWqgdZeBJ0S766X7ncPGYMO37wcUhD/BKdr9oce1nhBw9WR39WaXw4H2oxVEVi2/R/onKydjdONoRDkVLKx9HdpUqudJ+NPmHD0qYYoQ+4WFElq0UNHvdtXdOsbqg6Ld6hVk/nYjQNFut4rzvKFAgKI9FKrIM9iJAEW7narNs4YKAYr2UKkkzxGKBEwj2jve9ABmTngKzRvXLyPav17xM8ZO/gTfff6WaflTtJu2NCGRWO5+CX9MckATD8qb36WgetvyJXtyyte4p3KGOLOEWZHt0LVue5/OX1AgYfJUGdk5EurX0zBkoAKHw6dQpltE0W66kjAhEjgrAYp2XhASsB4Binbr1YwZ25sARbu968/TW5MARbs168as7UHANKL92dffh+tjqK8/Owztug1xv2j/a+8B3P/keFxxyfl4ftQA01aEot20pbF8YoqQ3uvHyygW0rvGhRqa9RV9XMoZm9M24ub8X1EYHoax+TXRr9X1Pp1dEeHfn+lAapokvo2g4b5EFdHR5Yt9nzYweBFFu8EF4PYk4CUBinYvgXE6CZiAAEW7CYrAFEjACwIU7V7A4lQSMAkBinaTFIJpkEA5BEwj2nOO5SHpsbE4kHEYR7OPo0Hdmkg9mInzmjTA9PFPoEpcrGkLSNFu2tJYPrEt08XL8u0yoqppaDdKcbeO+fdIy8tEz/0LcCQqAvdnKHjm0iE+nVsTPn3OZzK2iQ+gxgi5Pmyoivj40JHsLigU7T5dDS4iAcMIULQbhp4bk4DPBCjafUbHhSRgCAGKdkOwc1MS8IsARbtf+LiYBAJKwDSi3XVKRVHx429/YPOfe0SbDE1I9obo3LEtwkzet4KiPaB31LbB09fI2LVQhiTatrQbqSC61unSO0cpwg3bZmJ3bCRuSMvBu5ePgCTLPjFbskzGmp9FH3ixX9JgBXXFR1dDbVC0h1pFeZ5QJ0DRHuoV5vlCkQBFeyhWlWcKZQIU7aFcXZ4tVAlQtIdqZXmuUCBgGtH+0bzluKl7R1SpbN6X62cqOEV7KPxQMNcZCjJEy5gJwniLVi6Nb1FR+3LRoP1fo0Q0be+zdRbWxgAXZWRjXpvBCIut7NNBfl8nY9FXpYK+X18VLcUHUENxULSHYlV5plAmQNEeytXl2UKVAEV7qFaW5wpVAhTtoVpZniuUCVC0h3J1eTarEzCNaO/ceyRyjueh25UXos/1V+GyC1tBkiRL8KVot0SZLJOkWgJsGO9A4REJVVsL6T3gdOntems+9K/5WOw4hgai7dLy+KsR17ClT2fcsVPGR3NkuFrHXNddRcdypL5PgU24iKLdhEVhSiRwFgIU7bweJGA9AhTt1qsZM7Y3AYp2e9efp7cmAYp2a9aNWduDgGlE+z9tYxYu/RErf1yP6glVcGvPK3HrdZ1Qp1Y1U1eDot3U5bFccjs+dSBznYSIKhraj1bhiDy9hcvLB1ZjUvEuxBcWY0lWTTS4/BafznngoIRpMxxwOoELO6jodWNovmT/Bw5Fu0/XhItIwDACFO2GoefGJOAzAYp2n9FxIQkYQoCi3RDs3JQE/CJA0e4XPi4mgYASMI1oP/WUx3PzsST5VywS0n3D5p24/MLWmPrGowEF4U9winZ/6HHtqQQOp0j482OH6LMOnH+/gkoNTpfss49tweNHf0WEomDRhiyc38e3HxvZ2RKmvCcjv0BCs6Yq7u6nil9FEtr1oGgP7frydKFHgKI99GrKE4U+AYr20K8xTxhaBCjaQ6uePI09CFC026POPKU1CZhStLtQrt+0AwuX/Iivvl2DiPBwrPnyHdMSpmg3bWkslVjhYQkb3nLA1Tqm0fUq6nU+/XX5yoJU3Ju+HC79PnP1dnTv/wK0sAivz1lYJCT7VBlHsyTUqa0hUXz8NDzM6zCWW0DRbrmSMWGbE6Bot/kF4PEtSRWtymoAACAASURBVICi3ZJlY9I2JkDRbuPi8+iWJUDRbtnSMXEbEDCVaD+QfhiLlq3BwqU/YP+BTHef9t49rxJ92zsgIiLctOWgaDdtaSyTmCZat2x42wHXR1CriNflrROFZP/X6/I/io/gltQvUSheu7/w/R9IvOEJaAk1vT6jKj6wOuNDB/bukxAv2tMMS1IRE336y3mvA1tgAUW7BYrEFEngFAIU7bwOJGA9AhTt1qsZM7Y3AYp2e9efp7cmAYp2a9aNWduDgGlE+8CHX8NvG7ahfp0a6CX6srv6s9epmWCJKlC0W6JMpk5y10IZ6WtkhFXS0EH0ZQ+LKSu+Dyp56L5vPrIkBYM27MCr5/WB0rKDT2ea+7kDm7ZIiIoSkl0I/YQEe0h2FyyKdp+uDBeRgGEEKNoNQ8+NScBnAhTtPqPjQhIwhABFuyHYuSkJ+EWAot0vfFxMAgElYBrR/sTL77rl+qXtW4o+0dZqFE3RHtA7GvLBs7fL2DJdPFMXo81wBZXPOV1837h/IdYrWei+Kw2zCxqi5IZ7fOLy7XcyVn8vQ3YAifcqqF/fPpKdot2nK8NFJGAoAYp2Q/FzcxLwiQBFu0/YuIgEDCNA0W4Yem5MAj4ToGj3GR0XkkDACZhGtAf8pAHcgKI9gHBDPHRxjoT1b8pQCiXUv0ZFwx6n92V/8vAafJj7Jxrk5CL5x1REDX9VtJXx/iejNqTImC9ezrtGv74qWrY4fa8Qx80X7aFeYJ4v5AhQtIdcSXkgGxCgaLdBkXnEkCJA0R5S5eRhbEKAot0mheYxLUnAcNH++VercIl4xb5jV+pZAV4j+rSbdVC0m7UyJs9LPCZPeceBvP0SYhtoaPuAaJ7+L38+P28XRmSuRqRTwfKFv6Lp/W9Ci471+mB/7ZIxa7YMTezZ7WoVV3Wyn2R3QWPrGK+vDheQgKEEKNoNxc/NScAnAhTtPmHjIhIwjABFu2HouTEJ+EyAot1ndFxIAgEnYLhob91lIF57OgnPvTH9rIfdsHxawGH4ugFFu6/k7L1u3xIZqaKVi0P0Sm//iIoI8WHSU8fWkixcn7oQxUK+T/nmF/S65XGodc/1GlrGIQlT33egpARo11ZF7172lOwU7V5fHS4gAcMJULQbXgImQAJeE6Bo9xoZF5CAoQQo2g3Fz81JwCcCFO0+YeMiEggKAcNFe35BISIiwhHmEE2jLToo2i1aOAPTztkpY/N7pW1cWg1WEX9eWfl9TC1G9/3zkKoV4V7x8dPX610D5eKrvc742HEJU6bKyM2T0PhcFQP6q5BLt7Xl4It2W5adh7YwAYp2CxePqduWAEW7bUvPg1uUAEW7RQvHtG1NgKLd1uXn4U1OwHDR/g+fKbMWYcDt1yImOrIMsp2707Bu0w70vamLaVFStJu2NKZMzJkvYd0bMlx/rCNauJx7U1nJ7nrX3v/gYqwqykC79KP4Zl8EtL4Pen2WYvGC3SXZDx+RUbOGhqREBeLntGw9KNptXX4e3oIEKNotWDSmbHsCFO22vwIEYDECFO0WKxjTJQFBgKKd14AEzEvANKLd1UJm1fwJqJ5QpQytLX/uwb0jX8Nvi6eYliJFu2lLY77EhEXfPE2G60V7TB3Rl/1BBVJY2TTfyt6AN8TvCfmFWLVyBxLu/z9A9u5XfKjC3bt6su/aLSMuTsPwJBWVYsu2pjEfnMBnRNEeeMbcgQT0JEDRridNxiKB4BCgaA8OZ+5CAnoRoGjXiyTjkEDwCFC0B481dyIBbwmYXrR/veJnvDR+Fn76apK3ZwvafIr2oKG2/Eaunuyu3uyyeFnefrSCyKpl5feqggPon7EMkqZiofj46YVDXoMWF+/1uecvlLEhRUZkhOslu4Ya1e3bl/1UeBTtXl8lLiABQwlQtBuKn5uTgE8EKNp9wsZFJGAYAYp2w9BzYxLwmQBFu8/ouJAEAk7AcNF+88Bn3If8a08azmlQG45TerWXiK837ks7hHtFS5nHH+gXcBi+bkDR7is5e63L3S/hj0kOCIeO5ncpqN62rGRPdeaix/4FyJEUPPP9Roy4YiiUxi29hpS8WsbKZCHzRS/2QQMUNGrIl+z/QKRo9/o6cQEJGEqAot1Q/NycBHwiQNHuEzYuIgHDCFC0G4aeG5OAzwQo2n1Gx4UkEHAChov2GZ8sdh9y7JRPMXxAL8TGRJ04dGRkBJqdWw8Xt2sRcBD+bEDR7g89e6xViiSsHyejOEdCzYs1NL1NKXNwp7DvPVO/wBblGLruPoA5ynlQuvXxGs6mzRLmzittM9O3j4I2rSnZT4VI0e71leICEjCUAEW7ofi5OQn4RICi3SdsXEQChhGgaDcMPTcmAZ8JULT7jI4LSSDgBAwX7f+ccGnyb+jasR0iLPi1Ror2gN9Ty2+wdZaMrM0yoqppaP/I6X3ZH8v8AR/n7USDnFx8tzYL0YOf8/rMe/dJmDHLAVd/9i6dVVwtfucoS4CinTeCBKxFgKLdWvVitiTgIkDRzntAAtYiQNFurXoxWxJwEaBo5z0gAfMSMFy070vLcH8A1amcXQpWrhRjWooU7aYtjSkSS/9JfJT0CxmSeGjebqSC6FplX5nPz9uFEZmrEelUsPyb9Wg6bCy0iJO/ssOTQ2QeljF1moSiYgltWmno+68X857EsMMcinY7VJlnDCUCFO2hVE2exS4EKNrtUmmeM1QIULSHSiV5DjsRoGi3U7V5VqsRMFy0t+4yEK89nYQnX5l6Vnabk2eali1Fu2lLY3hiBRmiZcwEYdhFp5jGvVXUvrTsTyhtLcnC9akLIfw4piz9Hb16Pw21Rl2v8s7NkzB5qozjxyV3P/ZB9yiQS7vHcPyLAEU7rwQJWIsARbu16sVsScBFgKKd94AErEWAot1a9WK2JOAiQNHOe0AC5iVguGhPXrMBLZs1Qnrm0bNSatuqiWkpUrSbtjSGJqaWABvGO1B4RELV1ipaDigr2Y+pxei+bx5SUYQh67bj5ea3QGlzqVc5lziBd99z4FCmhOrVVCQlaoiKZF/2M0GkaPfqenEyCRhOgKLd8BIwARLwmgBFu9fIuIAEDCVA0W4ofm5OAj4RoGj3CRsXkUBQCBgu2oNyygBvQtEeYMAWDb9jrgOZayVEVtXQbpQKxykC3KXC+x/4BquKD6Fd+lF8kxEPrddgr06qiSAfzZGxY6eMSrEahiWpqBxHyX42iBTtXl0xTiYBwwlQtBteAiZAAl4ToGj3GhkXkIChBCjaDcXPzUnAJwIU7T5h4yISCAoB04j2Rct+xPad+/HY/Xe6D/7i+FlYkvwrLmjZBK88lYiqVeKCAsSXTSjafaEW2msOp0j482MHJBm4YISC2LplBfjYrPUYn5OChPxCrErejYRhrwKymOzFWPiVjLXrZISHA0lDFNSqScleET6K9ooI8e+TgLkIULSbqx7MhgQ8IUDR7gklziEB8xCgaDdPLZgJCXhKgKLdU1KcRwLBJ2Aa0d57yHO47cYuuOvWa/D9L3/ggafH49Fhd7j/d60aVfHSE0OCT8fDHSnaPQRlk2mFhyVseMsBV+uYc25QUfeqsi1jVhUcQP+MZZA0FV98uRYXDXkNWqx3P5H0wxoZy74VH1gVvd0H9FfRpPHZPyZsE/QVHpOivUJEnEACpiJA0W6qcjAZEvCIAEW7R5g4iQRMQ4Ci3TSlYCIk4DEBinaPUXEiCQSdgGlE+0XXJeHjSc+jeeP6GDvlU/z5135MfeNRbN2xF8OeeBOr5k8IOhxPN6Ro95RU6M/TRM/0DW874PoIapWmKloPLSvAU5256LF/PnIkFf9ZnYJhXe6H2rCZV2C2bpMxZ27p6/fevVS0a0vJ7ilAinZPSXEeCZiDAEW7OerALEjAGwIU7d7Q4lwSMJ4ARbvxNWAGJOAtAYp2b4lxPgkEj4BpRPsVvR7ErLefRpNGdXH3gy/jsg6t8ODgW7E3NQOu1+5rl04NHhUvd6Jo9xJYCE/fvVDGQfHaPKyShg6jVYTFnGznUgwFN+z7AlvU47huZyo+iL0Yzsuv9YpGaqqEaR+I1/IK0Kmjih7dKNm9AUjR7g0tziUB4wlQtBtfA2ZAAt4SoGj3lhjnk4CxBCjajeXP3UnAFwIU7b5Q4xoSCA4B04j2R/47CYVFRehwfnOMn/oZZr/zLNq1booFi7/HjE8WY9EHrwSHiA+7ULT7AC0El2Rvl7FleulL8zbDFVQ+p2zP9IcykjGvYA8aZx3Dym0KwvuN8orC0aMSpkyTUVgooUULFf1uV92tYzg8J0DR7jkrziQBMxCgaDdDFZgDCXhHgKLdO16cTQJGE6BoN7oC3J8EvCdA0e49M64ggWARMI1oP3Q4G0+8PAXbRcuY227ojEfu6wunouCmAU+h+1UXuf/crIOi3ayVCV5exTkS1r8pQxESvL54Zd6we9mX5h8e344nj/yE6BInVi7bgkb3/R+0sDCPE8wvEJJ9qoxssU/9ehqGDFTgcHi8nBP/JkDRzqtAAtYiQNFurXoxWxJwEaBo5z0gAWsRoGi3Vr2YLQm4CFC08x6QgHkJmEa0mxdRxZlRtFfMKKRniIfrKe84kLdfQlwjDeeL1+w45aX5xuIjuDntS5SIvzZzyW+49s4XoMZX8xiJ+PkmTH3fgYPpEhKqargvUUV0dNnX8h4Hs/lEinabXwAe33IEKNotVzImTAIU7bwDJGAxAhTtFisY0yUBinbeARIwNQFTiXZN07Dm983YuSfNDa3pOfXQ8aLWoj2GuftjULSb+o4HPLl9S2SkfifDESX6sj+qIjzupATPUorQbd88pEvFuG/tdoy5oB+UZhd4nJP4IYE5n8nYJj6AGiPk+jDxcdX4eEp2jwH+ayJFu6/kuI4EjCFA0W4Md+5KAv4Q4It2f+hxLQkEnwBFe/CZc0cS8JcAX7T7S5DrSSBwBEwj2jMys/DgMxPwp2gdU7d26WvfA+lHcF7TBnjnlYdRo1p84Cj4GZmi3U+AFl6es1PG5vdK+7K3Giwk+HknW8ao0HBH2tdYU3IYF6dl4ovj9YHr+nl12sXLZPz0s/i4qugykzhIQd06lOxeAfzXZIp2f+hxLQkEnwBFe/CZc0cS8JcARbu/BLmeBIJLgKI9uLy5GwnoQYCiXQ+KjEECgSFgGtE+8rmJyDmeh7HPD0f1hCru02YeycboMZNQrWpljB/zYGAI6BCVol0HiBYM4cyXsO4NGa4/1rlSxbk3lu3L/trR3zHx2CbUyCvAqp/SUSVxjFen/H2djEVfye4Pnt7dT0WzpmXjexWMk90EKNp5EUjAWgQo2q1VL2ZLAi4CFO28ByRgLQIU7daqF7MlARcBinbeAxIwLwHTiPaLe96H98Y+hnatm5ahtWHzTgx9dCx+WzzFtBQp2k1bmsAlJh6Wb54mw/WiPUa8Mm/7oALplG+bLi/Yj4EZKxCmqPhq8TpcMFR8/DQyxuN8doi4H82R4Wodc7MQ+Bd1oGT3GN5ZJlK060GRMUggeAQo2oPHmjuRgF4EKNr1Isk4JBAcAhTtweHMXUhATwIU7XrSZCwS0JeAqUT7tHGPo22rJmVOuH7TDiQ9No6iXd+6M5qfBNKSZexdLPqyR2ho94iKSPGR0n/GHucx9Ni/AHmShhdXpSDx2keg1m7g8Y4HDkqYNsMBpxO4/FIVPa+lZPcYXgUTKdr1Isk4JBAcAhTtweHMXUhATwIU7XrSZCwSCDwBivbAM+YOJKA3AYp2vYkyHgnoR8A0on3Es28jP78Q//fcMHerGNc4fDQHj/z3HVStEocJL47Q79Q6R+KLdp2Bmjxc7n4Jf0xyQBP+u8U9KhLanBThBZoTPffNxw4tHzdv34v3al4DZ/tOHp8oO1vCFNHzPb9AcreKcbWMMfm3gD0+mxkmUrSboQrMgQQ8J0DR7jkrziQBsxCgaDdLJZgHCXhGgKLdM06cRQJmIkDRbqZqMBcSKEvANKL94KGjeOCp8di19wDq1KruzvJA+mE0Pbce3nn1YdSukWDa2lG0m7Y0uiemFElYP05GcY6EWpdoaNJHKbNHUvpyfF2YhsZZx/Dd7nCE9R7ucQ4FQq6/K9rRHM0SPd9ra0gcrCD8lHY0HgfixDMSoGjn5SABaxGgaLdWvZgtCbgIULTzHpCAtQhQtFurXsyWBFwEKNp5D0jAvARMI9pdiFRVw/e/bMTOPWluYs2EZO90yQVw/Ye2mQdFu5mro29uW2fJyNosI6qahvaPlO3LPuPYVjx79BdElzixYsWfaJT0KiA7PEpAFb5+2kwHUtMkxFfRMCxJRUz0yXY0HgXhpAoJULRXiIgTSMBUBCjaTVUOJkMCHhGgaPcIEyeRgGkIULSbphRMhAQ8JkDR7jEqTiSBoBMwhWjfte8gvl39OyrFxqDrFe1Rp6Z5X6+XVyGK9qDfW0M2TP9Jxq4vZEjCnbcbqSC61kkRvrH4CG5O+xIl4ueEZi5Zix79X4QWF+9xnnM/d2DTFglRUUKyJ4p2NAmU7B7D82IiRbsXsDiVBExAgKLdBEVgCiTgJQGKdi+BcToJGEyAot3gAnB7EvCBAEW7D9C4hASCRMBw0b7ujx0Y/Mjrog+1BId4uS5JMia+/BAu69AqSAj834ai3X+GZo9QkCFaxkwQhl28PG/SW0GtS0+K8CylCN32fY50qQQP/L4Nz3W4F0rjlh4f6duVMlb/ILsfvyfeq6B+fUp2j+F5OZGi3UtgnE4CBhOgaDe4ANyeBHwgQNHuAzQuIQEDCVC0GwifW5OAjwQo2n0Ex2UkEAQChov2pMfGwuFwYMILD0KSZTz/f9ORsmUnvvno9SAcX58tKNr14WjWKGoJsGG8A4VHJFRtraLlgJMfP1Wh4Y7Ur7DGeQQXp2Xii5JmQJdbPD7KhhQZ8xfK7vn9+orYLU7G9jgIJ3pMgKLdY1ScSAKmIEDRbooyMAkS8IoARbtXuDiZBAwnQNFueAmYAAl4TYCi3WtkXEACQSNguGi/uOd9mPjSSFx2YekL9ozMLFx9+ygkz3sLNap53nojaMTK2Yii3Uj6gd97x1wHMtdKiKyqod0oFY7Iky/OXz78KyblbkGNvAKs2nAMVfo/4XFCf+2SMWu2DE2E69FNRaeOlOwew/NxIkW7j+C4jAQMIkDRbhB4bksCfhCgaPcDHpeSgAEEKNoNgM4tScBPAhTtfgLkchIIIAHDRXvrLgOxYPpLaN64/oljtuk6CAtnvIQm59QL4NH1C03Rrh9Ls0U6nCLhz48d4ldbABeMUBBb96RkX16wHwMzViBMUfHl8k1om/gatLAIj46QcUjC1PcdKBGv5du1VdG7FyW7R+D8nETR7idALieBIBOgaA8ycG5HAjoQoGjXASJDkEAQCVC0BxE2tyIBnQhQtOsEkmFIIAAETCHaX3/2PjSoW/PE8e5+8CW8+nRSmb/WtlWTABxfn5AU7fpwNFuUoizRl32cA67WMefcoKLuVSdl+B7nMfTYNx95QsC/umoj7r3pSWgJJ+/w2c5y7LiEKVNl5OZJaHyuigH9VYiuSRxBIEDRHgTI3IIEdCRA0a4jTIYigSARoGgPEmhuQwI6EaBo1wkkw5BAEAlQtAcRNrciAS8JmEK0e5Lz5uSZnkwzZA5FuyHYA7qp5gRS/udA/kEJ8eepaDX4pGQvEH+z597PsQOFuHn7XkxteBOUlh08yqewSLxknybh8BEZNWtoSEpUEBHu0VJO0oEARbsOEBmCBIJIgKI9iLC5FQnoRICiXSeQDEMCQSJA0R4k0NyGBHQkQNGuI0yGIgGdCRgu2tPSD3t0pHq1q3s0z4hJFO1GUA/snrvFB0oPrpERVknDhY+KvuzRJ1vGJB1chq+LDqD5kWwsz0hA2PUDPEpGVYAZHzqwd5+EuDgNw5NUVIo9GdejIJzkFwGKdr/wcTEJBJ0ARXvQkXNDEvCbAEW73wgZgASCSoCiPai4uRkJ6EKAol0XjAxCAgEhYLhoD8ipghyUoj3IwAO8XfZ2GVumi14uEtBmmILK55yU4e/lbMZ/s35DbHEJklfvRd0hL4p5YqIHY+7nDmzaIj6qGuF6ya6hRnX2ZfcAm65TKNp1xclgJBBwAhTtAUfMDUhAdwIU7bojZUASCCgBivaA4mVwEggIAYr2gGBlUBLQhQBFuw4YKdp1gGiSEMU5oi/7mzKUQgkNuqlo0P2kDF9bdAi9076GU5bw8bIN6HLPy9CiYz3KPHmVjJXid1cv9kEDFDRqyJfsHoHTeRJFu85AGY4EAkyAoj3AgBmeBAJAgKI9AFAZkgQCSICiPYBwGZoEAkSAoj1AYBmWBHQgQNGuA0SKdh0gmiGEcN8p7ziQt1+0dmmk4fzhotfL34/VM9VCdN/zGTJlBSN/3YYnO90Hte65HmW9abOEufMc7rl9+yho05qS3SNwAZhE0R4AqAxJAgEkQNEeQLgMTQIBIkDRHiCwDEsCASJA0R4gsAxLAgEkQNEeQLgMTQJ+EqBo9xOgazlFuw4QTRBi71IZaStlOKI0dBB92cNFH3XXcGoqeu9fiLVqDjrty8DcmIuhXXS1Rxm7+rHPmOWAKh7GX91ZRRfxO4dxBCjajWPPnUnAFwIU7b5Q4xoSMJYARbux/Lk7CXhLgKLdW2KcTwLGE6BoN74GzIAEzkSAol2Hu0HRrgNEg0Mc2yNh0+TSV+etBquIP++kEP9v5k94L2876hzPx6ptCmJvH+FRtpmHZUydJqGoWEKbVhr63iZeyHMYSoCi3VD83JwEvCZA0e41Mi4gAcMJULQbXgImQAJeEaBo9woXJ5OAKQhQtJuiDEyCBMolQNGuw8WgaNcBooEhnPkS1o2T4cyVUOdKFefeeFKyf52/B0mHkhEunqQvXbYFLRJfgxYWVmG2uXkSJk+Vcfy45O7HPugeBXKpx+cwkABFu4HwuTUJ+ECAot0HaFxCAgYToGg3uADcngS8JEDR7iUwTicBExCgaDdBEZgCCZyBgGlEu1NRMHv+t1i88hekHzqK5HlvQVFUPP7SFHTt2B43dr9clyKqqoaxkz/BgsXfo8TpxDVXXogxjw5CVGREhfHHTZmL6Z98g83JM8vMpWivEJ15J4juMJunycjZKSOmjoa2IxRIfwvxHSU56Jm6AAWiT/sbq1Jwd69nocZXq/AsxSUQL9kdOJQpoXo1FUmJmrhf7MteIbggTKBoDwJkbkECOhKgaNcRJkORQJAIULQHCTS3IQGdCFC06wSSYUggiAQo2oMIm1uRgJcETCPa35mxAAuW/ICBfa/DqxNnn5DZUz/6Et//shEfTnzGy6OVP/2ThSvxwdwleOfVUYiJjsRjL0xG29ZN8eiwO84af6ZYs+S7X/HH1l0U7bpUwhxB0pJl7F0s+rJHaGj3iIrIqqVCPE8rwbV7PsduqQh9N+/B2817Q2l2QYVJu3qxz5otY9duGZViNQxLUlH5717vFS7mhIAToGgPOGJuQAK6EqBo1xUng5FAUAhQtAcFMzchAd0IULTrhpKBSCBoBCjag4aaG5GA1wRMI9q73TEaLz+ZiEvbt0TrLgNPyGyX2B762Fj8/NUkrw9X3oJ7R76Kazp1wIDbr3X/7VU/peCFNz/Ais/ePGP8Rct+xLyvV+M/owfipgFPUbTrUgnjg+Tul/DHJAfEt07R4h4VCW1OtowZmLYYy0sy0PpQNpYeqwep2+0eJTx/oYwNKTLCw4GkIQpq1eRLdo/ABWkSRXuQQHMbEtCJAEW7TiAZhgSCSICiPYiwuRUJ6ECAol0HiAxBAkEmQNEeZODcjgS8IGAa0d6u2xAs/vgN1KmZUEa0r934J5KEaF+7dKoXxzrz1M69R+LFxwfjqsvauiftTc3A9Xc/gd+XTEV01OntY1b/nIKJ0xdg+puP41huPnrc+ShFuy6VMDaIUiRhvejLXpwjodYlGpr0Ofmh0sk5G/FS1jpUKSxG8q+ZqDnAs19N8cMaGcu+lSGJVjMD+qto0vikuDf2tNz9HwIU7bwLJGAtAhTt1qoXsyUBFwGKdt4DErAWAYp2a9WL2ZKAiwBFO+8BCZiXgGlEe+8hz2Fo/xvR8+pLy4j2l976EFv+3IOPJz2nC8VLrh+GiS+PdL+cd42MzCxcffsofP/FRCTEx5XZY9e+g3j4+f/h/XGPoUa1eKSlHy5XtBcWn5S0uiTJIAEn8Nu7KjJSgEp1gKuelCGLF+iusTrvIHr+tQiud+jzVmxCz/vfACKjKswnZRPw3gelYv2eOyVceqGw7RymI+CSdg7xe4nTHj8JoohvUrjOy0ECViXg+onLiDAZRSX2+DFr1ToxbxI4lUBkuAPFTgUaf1EfL4aFCdjp36HCxf/Pus7r+pYZBwmQgDUIuB6QcZAACZiTgGlE+/LVv+M/b8zA/QNvcfdof+3pJKz+JQXfrPjFLcavvqK9LgRdL9pdLWo6XXK+O97ZXrS7XrOPeOZtSP+IKvFfDCXiPxzCw8Mw8aWHcOWlpT27jxwr0iU3BgkOgbQfJfw5T4IUBlz6mIboGqX/UnlQyUfnnXNxVFYx+peteLrHKGg161aY1D7RgmbK+5L4eC/Q9SoN13Xnv6RWCM2gCS5hFxku43iB06AMgrut6ybKLlPJQQIWJSCJ+xsfG46s3GKLnoBpk4D9CFSNi0D28WL3owUOErAqAc1GP1MUFx2GIvFwrFjhj1qr3lfmbT8C1SpH2u/QPDEJWISAaUS7i9fKH9fj3VmLsGXHHvcrmOaN62PYgF7o0fki3XAOeOgVdL/qItxzWw93zO/WrMeYcR8ged5bFe5xphftB44UVLiWE8xBoCBDwoYJoi+7kOKudjGutjGu4RSN2m/atwAbtePotC8Dc6t1gdb60gqTPnpUSPZpMgoLJbRppaHvbfzVDRVCM3ACW8cYCJ9bk4APBNg6xgdoXEICBhNg6xiDC8DtScBLAmwd4yUwTicBExBgFXPURgAAIABJREFU6xgTFIEpkMAZCJhKtP+To+sFgUu0u/4DW+8xe/5yfDTvW0x+bRRioqMweswktGreCE+N6O/easHi7/Hjb5sw9vnhp21N0a53NYIbTy0BNox3oPCIhKqtVbQccLIVwbOHfsCM/J2oczwfybsjUOnmxAqTyy8Qkn2qjGzR571+PQ2JAxXI/BVcFXIzcgJFu5H0uTcJeE+Aot17ZlxBAkYToGg3ugLcnwS8I0DR7h0vziYBMxCgaDdDFZgDCZRPwDSi/fDRnLPWqHpCFV1qqCgqXn9nDhYt+xFOpxNdRUuaMY8Ockt315gwbR6+WPI9vvv89BfuFO26lMCwIDvmOpC5VkJkVQ3tRqlwRJa+Zv86fw+SDiUjXFWxJPkvtBj4outnec6aZ4noPDJtugMH0yUkiHj3JaqIjuYvtzSsuB5uTNHuIShOIwGTEKBoN0khmAYJeEGAot0LWJxKAiYgQNFugiIwBRLwkgBFu5fAOJ0EgkjANKK9dZeBZz325uSZQcTi3VZsHeMdLyNmH04Rfdk/Fs/NxW9tH1QQW7dUiu8oyUHP/QtQILz6+FWbcMdt/4EWW/ajuP/O1/WrLT6aI2PHTln8BI2GYUNVxMdTshtRV2/3pGj3lhjnk4CxBCjajeXP3UnAFwIU7b5Q4xoSMI4ARbtx7LkzCfhKgKLdV3JcRwKBJ2Aa0b5t577TTltcXIJhT76Jpx+6Gzd2uzzwNHzcgaLdR3BBWlaUJWH9OAdcrWPOuVFF3StLW8bkaSW4dvdn2C0Xo++WPZjQpj/Uhs0qzGrxUhk//SIjTHxMNXGQgrp1KNkrhGaSCRTtJikE0yABDwlQtHsIitNIwEQEKNpNVAymQgIeEKBo9wASp5CAyQhQtJusIEyHBE4hYBrRfqaqTP/kG/y6fiumvD7atIWjaDdtaaCJFi8p/3Mg/6CE+PNUtBp8si/7wNSvsdyZidaHsrGkuAnkTjdVeJDf18lY9JUMSXw+4O5+Kpo1PRmvwsWcYDgBinbDS8AESMArAhTtXuHiZBIwBQGKdlOUgUmQgMcEKNo9RsWJJGAaAhTtpikFEyGB0wiYXrSv/jkFDz//P6xb9p5py0fRbtrSYPciGQd/FK/PK2m48FHRl/3vPur/y1qPV3NSUKWwGMnrslDzricqPISrVYyrZYyrdczN4mX8RR0o2SuEZrIJFO0mKwjTIYEKCFC084qQgPUIULRbr2bM2N4EKNrtXX+e3poEKNqtWTdmbQ8CphXtmrCZR7KO4ZW3Z2Prjj1YPPv/TFsRinZzliZ7u4wt00XzdfH6vM0wBZXPKW3x8lNhBvoe/AauP5u7cguuuPdlaGERZz3EAfEiftoMh/iALnD55Sp6dqdkN2fVz54VRbsVq8ac7UyAot3O1efZrUqAot2qlWPediVA0W7XyvPcViZA0W7l6jH3UCdgGtF+po+hxkRH4fVnknB1pw6mrQVFu/lKU5wj+rK/KUMplNBASPEG3UrFeLqSj257PkOWQ8MTv2zFyO6joSXUPOsBsrMlTHlPRn6BhBYtVPS7XXW3juGwHgGKduvVjBnbmwBFu73rz9NbkwBFuzXrxqztS4Ci3b6158mtS4Ci3bq1Y+ahT8A0oj15zYbTaFeOi0HTc+ujcqUYU1eCot1k5RFP1VPecSBvv4S4RhrOH664X7U7NRU37Z2PjchF1z0H8HGt66C2PPtP4BQIuf7uNBlHxQdV69TWkDREgcNhsvMyHY8JULR7jIoTScAUBCjaTVEGJkECXhGgaPcKFyeTgOEEKNoNLwETIAGvCVC0e42MC0ggaARMI9onTp+PLh3b4/wW5wbt8HptRNGuF0l94uxdKiNtpejLHqOh/SMqwuNKW8Y8lbEaswp2oUFOLlZkxCO2x91n3VARfv79mQ6kpokPqVbRMCxJRczfPd71yZRRgk2Aoj3YxLkfCfhHgKLdP35cTQJGEKBoN4I69yQB3wlQtPvOjitJwCgCFO1Gkee+JFAxAdOI9g49huKN54bjmivN2yLmTDgp2iu+aMGacWyPhE2TS5+ctx6qokrT0pYx83N3YsThHxDpVLDspzQ0vef5s6bk+uDpnM9kbNsmIypKSPZEFQkJpcKew7oEKNqtWztmbk8CFO32rDtPbW0CFO3Wrh+ztx8Binb71Zwntj4Binbr15AnCF0CphHtg0a9hs6Xt8PAvtdZjjZFuzlK5syXsG6cDGeuhLpXqTjnhlLJvrUkC9fv/wLFsui1vmoLbr7zv9Aiz96OaNm3Mn5YI0MWzj7xXgX161Oym6PK/mVB0e4fP64mgWAToGgPNnHuRwL+E6Bo958hI5BAMAlQtAeTNvciAX0IULTrw5FRSCAQBEwj2n9ZvxVPvvwu5kx+vtye7K6Popp1ULSboDLCg28WvdRzdsqIqaOh7QgFkpDkx9RidN8zF6myE/du3IXXLhkKtXaDsya8IUXG/IWye06/vipaig+gcoQGAYr20KgjT2EfAhTt9qk1Txo6BCjaQ6eWPIk9CFC026POPGVoEaBoD6168jShRcA0or11l4FnJbs5eaZpyVO0G1+atFUy9n4jwxGhoZ3oyx5ZVYPrDXr//YuwSjmKdulH8VXkxZDaX3nWZP/aJWPWbBmu1jHXdldxxeWU7MZXV78MKNr1Y8lIJBAMAhTtwaDMPUhAXwIU7fryZDQSCDQBivZAE2Z8EtCfAEW7/kwZkQT0ImC4aO92x2hMfOkhFBQWnfVMHc5vrteZdY9D0a47Uq8C5u6X8MckBzThxFvcI3qptymV428d+R1vHN+EhPxCJO/QUK3X8LPGzTgkYer7DpSUABd2UNHrRkp2rwphgckU7RYoElMkgVMIULTzOpCA9QhQtFuvZszY3gQo2u1df57emgQo2q1ZN2ZtDwKGi3bXS/aPJz2Htq2aWJY4RbtxpVOKJKwXfdmLcyTUvlRF496lcnxVwQH0z1gKccGxYNVfuGjAC3A3XD/DOHZc9G+fKiM3T0Iz8QHVu/upkCTjzsWdA0OAoj0wXBmVBAJFgKI9UGQZlwQCR4CiPXBsGZkEAkGAoj0QVBmTBAJLgKI9sHwZnQT8IUDR7g+9v9dStOsA0ccQW2fJyNosI7qWaBnzkOjLHgakOnPRY9/nyBFt1p/5eRseuOFJaHHxZ9yhUMj6qdMkHD4io05tDYmDFYSLOByhR4CiPfRqyhOFNgGK9tCuL08XmgQo2kOzrjxV6BKgaA/d2vJkoUuAoj10a8uTWZ+AKUT7f0YPRNNz6p6VJlvHWP+y6X2C9J9l7Foguz962v4RBVHVNRRDwQ2752GLlI/rdqZiZuM+UBq3POPWqgLM+NCBvfskxMVpeGCYiphoV3d3jlAkQNEeilXlmUKZAEV7KFeXZwtVAhTtoVpZnitUCVC0h2plea5QJkDRHsrV5dmsTsAUot0TiPwYqieU7DOnIEPChgmiL7sQ5U1vU1Dz4lI5/tCBFZhXvB8NcnKxKrseIjvfelYocz93YNMWCZHiI6pJiRpqVGdf9lC+RRTtoVxdni0UCVC0h2JVeaZQJ0DRHuoV5vlCjQBFe6hVlOexAwGKdjtUmWe0KgFTiPb/vTISLZs1OivD2jUSTMuYrWOCWxpVfKx0w3gHCo9IqH6Bhub9hW0XY86x7Xj06E+IdCpY9ushNL3rqbMmtnKVjGTxuyxazAwaoKBRQ75kD24lg78bRXvwmXNHEvCHAEW7P/S4lgSMIUDRbgx37koCvhKgaPeVHNeRgHEEKNqNY8+dSaAiAqYQ7fwYakVl4t8/lcDOzxw49Lt4hV5VQ/vRCuRwYGtJFq7f/wWKZfFR0++34eY7/gstIuqM4DZtljB3XunHUfv2UdCmNSW7HW4ZRbsdqswzhhIBivZQqibPYhcCFO12qTTPGSoEKNpDpZI8h50IULTbqdo8q9UIULTrUDG+aNcBoochDqdI+PNjIcjFb20fVBBbV8MxtRjdd3+KVIeCIRv/wkuXD4da48w9/1392GfMckAVXWKu6aKi81VsF+MhfstPo2i3fAl5AJsRoGi3WcF53JAgQNEeEmXkIWxEgKLdRsXmUUOGAEV7yJSSBwlBAoaL9ntHvornRw1Ak3PqWRYvRXtwSleUJWH9OCHIReuYc25SUbeTCtc79P57v8AqLRvt0o/iyyqdIbe88IwJZR6WMXWahKJiCe3aqujdi5I9ONUzxy4U7eaoA7MgAU8JULR7SorzSMA8BCjazVMLZkICnhCgaPeEEueQgLkIULSbqx7MhgROJWC4aA+FclC0B76KmhNI+Z8D+QclxJ+notXgUkE+NvMXjM/bioT8Qny3LxrVr7v3jMnk5kmYPFXG8eMSGp+rYkB/1d2fncM+BCja7VNrnjQ0CFC0h0YdeQp7EaBot1e9eVrrE6Bot34NeQL7EaBot1/NeWLrEKBo16FWFO06QKwgxO5FMg7+KCOiiujLPkqFI1rDqoI09E9fBkm8a1+wZj8uuut5QJLKjVQsXsFPnSZ6u2dKqFlDQ1KiggjR253DXgQo2u1Vb57W+gQo2q1fQ57AfgQo2u1Xc57Y2gQo2q1dP2ZvTwIU7fasO09tDQIU7TrUiaJdB4hnCZG9XcaW6eLpuXDoFzygoFIDDanOXPTY+zlyRK/2//zyJ+67+Rlo0bHlRnH1Yp81W8au3TIqxWq4f5jq/iOH/QhQtNuv5jyxtQlQtFu7fszengQo2u1Zd57augQo2q1bO2ZuXwIU7fatPU9ufgIU7TrUiKJdB4hnCFGcI/qyvylDKZTQsIeK+teoKIaCG3Z9hi1yIa7bmYYZre6CWvfcMyYxf6GMDSkywsUL9qQhCmrVpGQPXMXMHZmi3dz1YXYk8G8CFO28EyRgPQIU7darGTO2NwGKdnvXn6e3JgGKdmvWjVnbgwBFuw51pmjXAWJ5IYQPT3nHgbz9EuIaaTh/uOJ+1f5Q6nLMc6ahcdYxLFdaI+qia86YwOofZHy7UnZ3lHH1ZG/SmB8/DVC1LBGWot0SZWKSJHCCAEU7LwMJWI8ARbv1asaM7U2Aot3e9efprUmAot2adWPW9iBA0a5DnSnadYBYToh9y2SkrpARFiP6sj+iIjxOw4fZm/Fk9m+ILnHi200FOOfWEWfcfOs2GXPmln7ttHcvFe3aUrIHplLWiUrRbp1aMVMScBGgaOc9IAHrEaBot17NmLG9CVC027v+PL01CVC0W7NuzNoeBCjadagzRbsOEP8V4tgeCZsmiwbsYrQeqqJKUxUbi4/g5rRFKBHP02f8sAPX3jkGWlhYuZunpkqY9oEDqngE3/lKFdd0pWTXv0rWi0jRbr2aMWN7E6Bot3f9eXprEqBot2bdmLV9CVC027f2PLl1CVC0W7d2zDz0CVC061BjinYdIJ4SwpkvYd04Gc5cCfU6q2h0vYospQjdd3+Kg2EqhqX8hf90fhhqfLVyNz56VMKUaTIKRV/3Nq009L1N2HYOEhAEKNp5DUjAWgQo2q1VL2ZLAi4CFO28ByRgLQIU7daqF7MlARcBinbeAxIwLwGKdh1qQ9GuA8RTQmx+T0bOThmxDTRcIPqyaw4Nd+xdgDXaMVyclokFNXtAata23E3zC4RknyojW3xEtVFDDYPuUSCXPoznIAGKdt4BErAYAYp2ixWM6ZIARTvvAAlYjgBFu+VKxoRJgKKdd4AETEyAol2H4lC06wDx7xBpq2Ts/UaGI0L0ZX9URUQVDa8d+hkT87ehRl4Bkg9VQ3zXvuVuKNq2Y9p0Bw6mS6heTUVSooaoSPFFVQ4S+JsAX7TzKpCAtQhQtFurXsyWBFwE+KKd94AErEWAot1a9WK2JOAiwBftvAckYF4CFO061IaiXQeIIkTufgl/THJAE+3UW9yjIqGNiuX5+zDw0EqEKSq+/CUNF9z1XLmbacKnfzRHxg7xEj4mWsP9w1RUFh9P5SCBUwlQtPM+kIC1CFC0W6tezJYEKNp5B0jAegQo2q1XM2ZMAhTtvAMkYF4CFO061Iai3X+ISpGE9aIve7Fo+VLrMhVNblWxx3kMPfbOQ55Dwou/7MCQW56BFhlT7mYLv5Kxdp0M17dREwcpqFuHkt3/qoReBIr20KspTxTaBCjaQ7u+PF1oEuCL9tCsK08VugQo2kO3tjxZ6BKgaA/d2vJk1idA0a5DDSna/Ye4dZaMrM0yomtpaPeQgkKHEz13z8UOuRg370jFu+ffC7V2g3I3WvOzjCXLZEgScHc/Fc2aiifxHCRQDgGKdl4LErAWAYp2a9WL2ZKAiwBFO+8BCViLAEW7terFbEnARYCinfeABMxLgKJdh9pQtPsHMV2I8l0LZMjhQLuHFURV13Bf6jf4ynkIzY9kY2nUZYhofVm5m7haxXz4sez+ezffqOKiDpTs/lUjtFdTtId2fXm60CNA0R56NeWJQp8ARXvo15gnDC0CFO2hVU+exh4EKNrtUWee0poEKNp1qBtFu+8QCzIkbJgg+rIrQNPbFdS8SMOMoxvx7LF1iC0uwcodEurfkFjuBgcOSpg2wwGn+AjqFZeruLY7JbvvlbDHSop2e9SZpwwdAhTtoVNLnsQ+BCja7VNrnjQ0CFC0h0YdeQp7EaBot1e9eVprEaBo16FeFO2+QdSEIF//pgOFRyRUv0BD8/4K1hYdQu+0r+GUJcz+aQ+63PE8IJe+WD91ZGdLmPKejPwCCS1aqOh3u+puHcNBAmcjQNHO+0EC1iJA0W6tejFbEnARoGjnPSABaxGgaLdWvZgtCbgIULTzHpCAeQlQtOtQG4p23yDu/NyBQ79JiKyqof1oBTlyEbrunoNM8UHTB1J245luj0KLjTsteIGQ6+9Ok3E0S7x2r6dhyEAFDodvOXCVvQhQtNur3jyt9QlQtFu/hjyB/QhQtNuv5jyxtQlQtFu7fszengQo2u1Zd57aGgQo2nWoE0W79xAPp0j482Nhx8VvbR9UEF1XxR2752GNlIuLDxzG/Po3Q27Y/LTAimgx8/5MB1LTJCQIQX9fooroaM37BLjClgQo2m1Zdh7awgQo2i1cPKZuWwIU7bYtPQ9uUQIU7RYtHNO2NQGKdluXn4c3OQGKdh0KRNHuHcQi8RJ9/TgH1BLg3JtV1LlCxUsHv8fkor9QI68A32XXR9UrbjotqCZ8+pzPZGzbJiNGyPVhQ1XEx1Oye0ff3rMp2u1df57eegQo2q1XM2ZMAhTtvAMkYC0CFO3WqhezJQEXAYp23gMSMC8BinYdakPR7jlEV1/2lP85kC8+ZBp/nopWg1V8m7sH9x5ORpii4ssNR3BBn8fKDbjsWxk/rJEhi1fwSYMV1K1Dye45ec50EaBo5z0gAWsRoGi3Vr2YLQm4CFC08x6QgLUIULRbq17MlgQo2nkHSMDcBCjadagPRbvnEHd/KePgDzIiqoi+7KNU7A/PQY+9nyPPIePVX3fh3t7PQguLOC3g7+tkLPqq9KOo/fqqaCk+gMpBAt4SoGj3lhjnk4CxBCjajeXP3UnAFwIU7b5Q4xoSMI4ARbtx7LkzCfhKgC/afSXHdSQQeAIU7Towpmj3DGL2dhlbpgtZLgEXPCA+YFq/BD3/+gQ7wpy4eWcapnQYCi2h5mnB/tolY9ZsGa7WMdd1V9Hxckp2z4hz1r8JULTzTpCAtQhQtFurXsyWBFwEKNp5D0jAWgQo2q1VL2ZLAi4CFO28ByRgXgIU7TrUhqK9YoglxyWsGytDKZTQ8FoV9a9Wcd++r/CVehjNj2RjaUwnRLS86LRAGYckTH3fgRLRz/3CDip63UjJXjFtzjgTAYp23g0SsBYBinZr1YvZkgBFO+8ACViPAEW79WrGjEmAop13gATMS4CiXYfaULRXAFG8RP9jsgPH90qo0lRF60QV7x1Zj//mpiC2uAQr90ahfvd7TgtyTMj5KVNl5OZJaCbW3d1PhSRew3OQgK8EKNp9Jcd1JGAMAYp2Y7hzVxLwhwBftPtDj2tJIPgEKNqDz5w7koC/BCja/SXI9SQQOAIU7TqwpWg/O8R9y2SkrpARFqOhw2MqUhzp6J32DZyyhNm/7EeXvs+KdjJlDXphkXjJPk3C4SMy6tTWkCg+fhoepkOxGMLWBCjabV1+Ht6CBCjaLVg0pmx7AhTttr8CBGAxAhTtFisY0yUBQYCindeABMxLgKJdh9pQtJ8Z4rE9EjaJ1+yu0XqoiuLG+egu+rJnhgMPp+zB4z0egxYdWyaAqgAzPnRg7z4J8eKjqcOSVMREi2fxHCTgJwGKdj8BcjkJBJkARXuQgXM7EtCBAEW7DhAZggSCSICiPYiwuRUJ6ESAol0nkAxDAgEgQNGuA1SK9vIhOvNFX/ZxMpy5Eup1UVHvOif67Pocvzvy0Sk1E582vUN8MavhaYvnfu7Api0SoqKEZBdtZhISKNl1uKYMIQhQtPMakIC1CFC0W6tezJYEXAQo2nkPSMBaBCjarVUvZksCLgIU7bwHJGBeAhTtOtSGor18iJvfk5GzU0ZsAw0XDFcwJiMZ7xXvQZ3j+fhOaY24dp1PW7gyWUbyahmyDCQOVFC/PiW7DleUIf4mQNHOq0AC1iJA0W6tejFbEqBo5x0gAesRoGi3Xs2YMQlQtPMOkIB5CVC061AbivbTIaatkrH3GxkO8Sq9/SMqvpV3YOiRHxCuqli8pQgtbxx+2qINKTLmLxSGXYy+fRS0aU3JrsP1ZIhTCFC08zqQgLUIULRbq17MlgQo2nkHSMB6BCjarVczZkwCFO28AyRgXgIU7TrUhqK9LMTc/RL+mOSApgKtBqvIbJyFnvvmo8Ah4Y21+3DXrc8Acmnf9n+Gqx/79A/EGuHWu12t4qpOYjEHCehMgKJdZ6AMRwIBJkDRHmDADE8CASDA1jEBgMqQJBBAAhTtAYTL0CQQIAIU7QECy7AkoAMBinYdIFK0n4SoFElYL/qyF+dIqH25ilq9inDtzjnYHa6i7/Y0vNXxAWhx8WWoZx6WMXWahKJiCe3aqujdi5Jdh2vJEOUQoGjntSABaxGgaLdWvZgtCbgIULTzHpCAtQhQtFurXsyWBFwEKNp5D0jAvAQo2nWoDUX7SYhbZ8nI2iwjupaGdg8pGJS6EMuRhdaZ2VhcrTscjVuXIZ6bJ2HyVBnHj0tofK6KAf1Vd392DhIIBAGK9kBQZUwSCBwBivbAsWVkEggUAYr2QJFlXBIIDAGK9sBwZVQSCCQBivZA0mVsEvCPAEW7f/zcqynaSyGm/yJj13zxIdNwoN3DCmbgd7yU+weqFBZj5aEE1L7qtjK0i0sgXrI7cChTQs0aGpISFUSItRwkECgCFO2BIsu4JBAYAhTtgeHKqCQQSAIU7YGky9gkoD8Binb9mTIiCQSaAEV7oAkzPgn4ToCi3Xd2J1ZStAMFGRI2TBA91hWg+V0KdjQ/gL7pS+D6nOncdYfQsc8TZUiLb6Ji1mwh5nfLiIvTMDxJRaVYfvxUh+vIEGchQNHO60EC1iJA0W6tejFbEnARoGjnPSABaxGgaLdWvZgtCbgIULTzHpCAeQlQtOtQG7uLds0JrH/TgcIjEmp00BB323F02/UpssIljE7Zi9E9n4AWEVWG9PyFMjakyIiMcL1k11CjOvuy63AVGaICAhTtvCIkYC0CFO3WqhezJQGKdt4BErAeAYp269WMGZMARTvvAAmYlwBFuw61sbto3/m5aP/ym4SoahraPFyCXvs+xcawInTdm4HZre6BVqNuGcqrf5Dx7UoZkgQMvldBo4Z8ya7DNWQIDwhQtHsAiVNIwEQEKNpNVAymQgIeEuCLdg9BcRoJmIQARbtJCsE0SMALAhTtXsDiVBIIMgGKdh2A21m0H06R8OfHDkD81n6kgpeLl2OGkoo6x/OxSm6H2NYdyxDetFnC3Hlishi9e6lo15Yv2XW4ggzhIQGKdg9BcRoJmIQARbtJCsE0SMALAhTtXsDiVBIwAQGKdhMUgSmQgJcEKNq9BMbpJBBEAhTtOsC2q2gvypKwfpwDqvioaWMhzde13oahWWsQLhqwL/5LQsvug8rQTU2VMG2mmC/ceperVFzdhZJdh+vHEF4QoGj3AhankoAJCFC0m6AITIEEvCRA0e4lME4nAYMJULQbXABuTwI+EKBo9wEal5BAkAhQtOsA2o6i3dWXPeV/DuQflBB/norwe7LQc988FDhkjF+bir63Pg3I8gm6R49KmDJNRmGhhDatNPS9TXw1lYMEgkyAoj3IwLkdCfhJgKLdT4BcTgIGEKBoNwA6tyQBPwhQtPsBj0tJwCACFO0Ggee2JOABAYp2DyBVNMWOon3PlzIOiF7rEVU0NH+4CNenzsZu8WHT23ccxISOD0KLjTuBLb9ASPapMrJzJHc/9kH3KJBLu8dwkEBQCVC0BxU3NyMBvwlQtPuNkAFIIOgEKNqDjpwbkoBfBCja/cLHxSRgCAGKdkOwc1MS8IgARbtHmM4+yW6iPXu7jC3TxcdMxYP18+9XMKJkHpbJx9A6Mwff1LsRYXWbnABWIl6+T5vuwMF0CdWrqUhK1BAVyY+f6nDtGMIHAhTtPkDjEhIwkABFu4HwuTUJ+EiAot1HcFxGAgYRoGg3CDy3JQE/CFC0+wGPS0kgwAQo2nUAbCfRXnJcwrqxMhTRAqbhdSoWtFqD1wq2oUphMVbkn4M6HXqcIKoJn/7RHBk7dsqoFKthWJKKynGU7DpcOYbwkQBFu4/guIwEDCJA0W4QeG5LAn4QoGj3Ax6XkoABBCjaDYDOLUnATwIU7X4C5HISCCABinYd4NpGtAtH/sdkB47vlVClqYrj/VJxe+ZSuNT53C156HjDg2VoLvxKxtp1MsLDgaQhCmrVpGTX4boxhB8EKNr9gMelJGAAAYp2A6BzSxLwkwBFu58AuZwEgkyAoj3IwLkdCehAgKJdB4gMQQIBIkDRrgNYu4j2fctkpK6QERbCy7BjAAAgAElEQVSjof4jeeiR/jGywmU8uTEVD13/JLSwsBM01/wkY8ly0V5GAgb0V9GksaoDaYYgAf8IULT7x4+rSSDYBCjag02c+5GA/wQo2v1nyAgkEEwCFO3BpM29SEAfAhTt+nBkFBIIBAGKdh2o2kG0H9sjYZN4ze4aLRKd6I+PsTG8GF33ZWD2BYnQ4qudILl1m4w5c0UDdzF691LRri0luw7XjCF0IEDRrgNEhiCBIBKgaA8ibG5FAjoRoGjXCSTDkECQCFC0Bwk0tyEBHQlQtOsIk6FIQGcCFO06AA110e7MF33Zx8lw5kqo31XFpFaL8aF6EA1ycrEi9grENm1/guKBgxKmio+fqgrQqaOKHt0o2XW4YgyhEwGKdp1AMgwJBIkARXuQQHMbEtCRAEW7jjAZigSCQICiPQiQuQUJ6EyAol1noAxHAjoSsJ1oV1UNYyd/ggWLv0eJ04lrrrwQYx4dhKjIiHKxLk3+Fe/N/hp7U9Pdc7qJ+U+O6I/ICNF4/O8R6qJ983sycsQHTWMbaNh11yY8eOwXRDoVLE2NQbMu/U5wyM6WMEXMzS+Q0KKFin63q+7WMRwkYBYCFO1mqQTzIAHPCFC0e8aJs0jATAQo2s1UDeZCAhUToGivmBFnkIDZCFC0m60izIcEThKwnWj/ZOFKfDB3Cd55dRRioiPx2AuT0bZ1Uzw67I5y78WcL1YgIT4O7Vo3Q/axXDw6ZhJ6dLkYIwb3toVoP7Baxp6vZTiiNFQacRQ35sxDsUPG5JR03NzryRMMCoRcf3eajKNZ4tV7PQ1DBipwlHaa4SAB0xCgaDdNKZgICXhEgKLdI0ycRAKmIkDRbqpyMBkSqJAARXuFiDiBBExHgKLddCVhQiRwgoDtRPu9I1/FNZ06YMDt17ohrPopBS+8+QFWfPamR9di4vT52L5zP/73ysgT80P1RXveAQkbJzqgie4v5wwsxq2OD5AaIWHg1jS8cvUoaJExbgaKaBPz/kwHUtMkJFTVcF+iiuhozSOenEQCwSRA0R5M2tyLBPwnQNHuP0NGIIFgE6BoDzZx7kcC/hGgaPePH1eTgBEEKNqNoM49ScAzArYT7Z17j8SLjw/GVZe1dRPam5qB6+9+Ar8vmYroqPLbx5yK8r7Hx6FV83MwMrHPib+cnlXgGW0LzVKKSvuyF4kX6nWuUPFsm7lIlnPRNiMLX5/bB47aDd2n0YRP//hTGa4PoMbEaLg/SUV8vB6SnT1n9L4uJApEhstwyfacvBK98TIeCZBAAAi4RHu1uAhk5hQFIDpDkgAJBIJAjfgoHMkphOjWyEECJGABAlViw1FY5ESRkz9oLVCu01Jk1QJRNfNTrV01OhAHZ0wSIAEdCNhOtF9y/TBMfHkkLm3f0o0vIzMLV98+Ct9/MdHdIuZsw9XXfcK0eZj//otl5iqK+f9B7O1d+XmyEwc3AJXrS1hz5xqMyduMhPxC/B5+ARpefPWJcPO+VLHsOxXhomX94yMcaCjm6zNCj6k+XHyPQqIQ3wyQILwdFJv8179T/LMpPEz2/dJwJQmYgIBD/KC1y49ZE+BmCiTgNwH+mPUbIQOYgECJU0WYQ6//rjHBgc6SguvHrOtfjTXXCyoOyxGwxy0NdlnMT9Vhk38+Bbvy3I8E9CBgO9HuetH+8pOJ6HTJ+W5+nr5oX5r8G14cPwvTxj2GFk1LX3P/M0KtdUz6zxJ2LXBAFvK8ZPg+9CteCgka5v+p4OJrh5449+/rZCz6SnZ/8PTufiqaNRU9ZjhIwMQE2DrGxMVhaiRQDgG2juG1IAHrEWDrGOvVjBnbmwBbx9i7/jy9NQmwdYw168as7UHAdqJ9wEOvoPtVF+Ge23q4K/zdmvUYM+4DJM9764wVn7voO0z5cBGmvD4azRvXP21eKIn2ggwJGyaIvuyi73r1O/JxS+WPkCNexD6zOR3393wMkEu/cLpjp4yP5sju1jE9r1Vx+aWU7Pb4R4a1T0nRbu36MXv7EaBot1/NeWLrE6Bot34NeQJ7EaBot1e9edrQIEDRHhp15ClCk4DtRPvs+cvx0bxvMfm1UYiJjsLoMZNEz/VGeGpEf3eFXe1hfvxtE8Y+P9z955NmfoGvvv0JE196CHVqVTtxC/6/vTsBt6ns+zj+2/uYo4Sk0kDq0ag0aVCJKClPyJBSxqiEaFKUeiKFBonkIUVR5hRFJGkuiYQyT5F5Hs7Z511r9ThvcRxn73Oftdfw3df1XO8Va933//7813nx2/e+d8EC+Z1jKOxXUIL29FRpdp8U7dlonYl7UUz3XzBU8/OlqcaydRpy0T1KL1LUWe+69RG9PihFqdb1F1WMqXYtQvZg/r+H4K2KoD14PWVFwRYgaA92f1ldMAUI2oPZV1YVXAGC9uD2lpUFV4CgPbi9ZWX+Fwhd0J6WFlPPfu9qwiezrKA4VVWuvFDdOjV1Qnf7ZZ/BPm7yTE0f9dcO9zrNu2jh4pWHdHrGmJdVotgxgQrafx+VovXfRVSgeLqG3TpRI/OuU5nN2zWl+PUqeEp5Z63btkc0YGBUO3ZGnKNi7CNj/vd+g/9/GlhB4AUI2gPfYhYYMAGC9oA1lOWEQoCgPRRtZpEBEiBoD1AzWUpoBAjaQ9NqFupDgdAF7bnRoyDsaN80L6oFb1vnrVsnw6xuMl/tCnypgvtTNeXP4ipzxa0O2569EQ0cFNGGjVGdUCpdLZqlWV+0mBuijIlA7ggQtOeOK6MikFsCBO25Jcu4COSeAEF77tkyMgK5IUDQnhuqjIlA7goQtOeuL6MjkBMBgvac6P3vXr8H7Xs3W+ey94kqbV9E+W7aqnql39N+69vnB8/bpBq1HnRWGbPObB/ydoqWr4io6DHpat0qZn0KgG+mN/D4MISLAgTtLmIzFQIGBAjaDSAyBAIuCxC0uwzOdAjkUICgPYeA3I5AEgQI2pOAzpQIZFOAoD2bUFld5ueg3T6Xfc6rKdq1NqIiZ6eq6eVDtDZfRM0XrNUz1ToqPU8+Z+nvWcfKzJtvHStTwArZW8RUrBghu4FHhyFcFiBodxmc6RDIoQBBew4BuR2BJAgQtCcBnSkRyIEAQXsO8LgVgSQJELQnCZ5pEciGAEF7NpCOdImfg/ZlH0S15ouo8lm71Pv9+319UmibKqzfog/KNVJKseOdpX86PaoZM6OKWsfKtLgrTaVLE7If6Zng970pQNDuzb5QFQKHEyBo59lAwH8CBO3+6xkVh1uAoD3c/Wf1/hQgaPdn36g6HAIE7Qb67NegfcvCqOYPts5lj0o/1ftO/yk+R8V27dG06IU6rvxljsxPc6IaM966wHo1qh/TWeVjBsQYAoHkCBC0J8edWRFIVICgPVE57kMgeQIE7cmzZ2YEEhEgaE9EjXsQSK4AQXty/ZkdgawECNoNPB9+DNr3b4/ox17Wuex7Iopdt0ENzxyriNI1ZlkeXVKliaOyeElUbw2PKt3awH591ZgqX0nIbuBxYYgkChC0JxGfqRFIQICgPQE0bkEgyQIE7UluANMjEKcAQXucYFyOgAcECNo90ARKQOAwAgTtBh4N3wXtVnA+t3+Kti+3zlw/fb/uvHawtuRL0VO/rFPLmg9LkYj+3BDVgDei2r9fuqBCTHVqE7IbeFQYIskCBO1JbgDTIxCnAEF7nGBcjoAHBAjaPdAESkAgDgGC9jiwuBQBjwgQtHukEZSBQCYCBO0GHgu/Be0rpkS1ampUeQqnq3vtd/Td0btVY/l6Dbn0PqUXPEo7dkbUf2BU261d72XLxNSkcUzRv06P4YWArwUI2n3dPooPoQBBewibzpJ9L0DQ7vsWsoCQCRC0h6zhLDcQAgTtgWgjiwioAEG7gcb6KWjftiyieQOsbzW1drV/WvtzDThxkcps3q4px9+ogieW0z5rB/vAQSla/2dEJY9LV6sWacqX1wASQyDgAQGCdg80gRIQiEOAoD0OLC5FwCMCBO0eaQRlIJBNAYL2bEJxGQIeEiBo91AzKAWBgwQI2g08En4J2lN3Weey944qdUdEmyutVqsLJ6ng/lR9suNklb2whmLW6TD2mexLlkZVpEi62rSKqfBRViLPC4GACBC0B6SRLCM0AgTtoWk1Cw2QAEF7gJrJUkIhQNAeijazyIAJELQHrKEsJ1ACBO0G2umXoP0X68z1rb9HFT1pn26/6S3ttTa2D15kHRtTvY2jMGZ8VD/NiSp/Pnsne7qOK8G57AYeD4bwkABBu4eaQSkIZEOAoD0bSFyCgMcECNo91hDKQeAIAgTtPCII+E+AoN1/PaPi8AgQtBvotR+C9jUzolr2kRWyF0jXE7Xf1a/Fdqn1ovXqet2DSs+TR5/NjGradOv3rbPYmzZJ06mnsJPdwKPBEB4TIGj3WEMoB4EjCBC084gg4D8Bgnb/9YyKwy1A0B7u/rN6fwoQtPuzb1QdDgGCdgN99nrQvnNNRD/3TVG6tUF9XI3pGl52sS75Y5NGn3O3UooU07xfInpvtLW93XrVr5umc88hZDfwWDCEBwUI2j3YFEpCIAsBgnYeDwT8J0DQ7r+eUXG4BQjaw91/Vu9PAYJ2f/aNqsMhQNBuoM9eDtrT9kb004tR7d0c0aoKy9Xhiik6buduTSt0lYqVOU/LV0Q05K0U53z2KtfEnP/xQiCoAgTtQe0s6wqqAEF7UDvLuoIsQNAe5O6ytiAKELQHsausKegCBO1B7zDr87MAQbuB7nk5aP/1rag2/xJVWsk9uuPf71irTdWEP45ShSsb6M8NUQ0cFNHefRGde3a66tdLM6DBEAh4V4Cg3bu9oTIEMhMgaOe5QMB/AgTt/usZFYdbgKA93P1n9f4UIGj3Z9+oOhwCBO0G+uzVoP2PryNaMjZFkbzp6lR3hJYdu1PPLNikZjc8qF27I+o3IKrt2yPOeexN70xT9K/TY3ghEFgBgvbAtpaFBVSAoD2gjWVZgRYgaA90e1lcAAUI2gPYVJYUeAGC9sC3mAX6WICg3UDzvBi0715nHRnzsnUuu7VJfcS10zT6rCW6ZdmfGnBFW+2LFtCgwSla+0dEJYrH1KpFugrk51x2A48CQ3hcgKDd4w2iPAQOEiBo55FAwH8CBO3+6xkVh1uAoD3c/Wf1/hQgaPdn36g6HAIE7Qb67LWgPT1Vmt0nRXs2RvTbv5aq83Wf6sxN2zT55FuVr8TJGvZuVL/9HlXho9LVulVMRxchZDfwGDCEDwQI2n3QJEpE4G8CBO08Dgj4T4Cg3X89o+JwCxC0h7v/rN6fAgTt/uwbVYdDgKDdQJ+9FrT/PipF67+LaN8xu9S0wUjlTdujqanldcrZlTV+YlQ//BhV3rxSq+ZpOr4kIbuBR4AhfCJA0O6TRlEmAv8TIGjnUUDAfwIE7f7rGRWHW4CgPdz9Z/X+FCBo92ffqDocAgTtBvrspaB907yoFrwdlVLS9VDdUVpWfKuGLY2pSpVmmvVlVB9PjSoSkZo0jun0sjEDq2cIBPwjQNDun15RKQK2AEE7zwEC/hMgaPdfz6g43AIE7eHuP6v3pwBBuz/7RtXhECBoN9BnrwTtezdb57L3iSptX0TvXPG5xlZYpPsW/anO1Trq10V59O57VgBvverUjumCCoTsBlrPED4TIGj3WcMoN/QCBO2hfwQA8KEAQbsPm0bJoRYgaA91+1m8TwUI2n3aOMoOhQBBu4E2eyFot89ln/NqinatjWjhKcv0xE1TdeWaTRpZoYVWbz5Gg4amKGZ9MerVV8VU7TpCdgNtZwgfChC0+7BplBxqAYL2ULefxftUgKDdp42j7NAKELSHtvUs3McCBO0+bh6lB16AoN1Ai70QtC+1zl5fOzOq3YV36Z6G76vwvu2aUeRqpRU+RwMGRbVnT0Tly8d0e31CdgMtZwifChC0+7RxlB1aAYL20LaehftYgKDdx82j9FAKELSHsu0s2ucCBO0+byDlB1qAoN1Ae5MdtG9ZGNX8wdaxMBHrXPZ647Tq2D81flNx/evcf6v/wKi2bI2o9Enpan53mlJSDCyYIRDwqQBBu08bR9mhFSBoD23rWbiPBQjafdw8Sg+lAEF7KNvOon0uQNDu8wZSfqAFCNoNtDeZQfv+7RH92Ms6l93asT7ysq81quI89Vi4RY2rtdd/30zRqtURFTs2Xfe0iKlgwXQDq2UIBPwrQNDu395ReTgFCNrD2XdW7W8BgnZ/94/qwydA0B6+nrNi/wsQtPu/h6wguAIE7QZ6m7Sg3crN5/ZP0fblES0+YbUe/fck3bJio/pf3lbvjC2gBQuiKmSF661bxlS0KCG7gVYzhM8FCNp93kDKD50AQXvoWs6CAyBA0B6AJrKEUAkQtIeq3Sw2IAIE7QFpJMsIpABBu4G2JitoXzklqpVTo9pVcLfaNhytUrvWa3KZhpr+XSl9+XVUefJILZqm6cQTCNkNtJkhAiBA0B6AJrKEUAkQtIeq3Sw2IAIE7QFpJMsIjQBBe2hazUIDJEDQHqBmspTACRC0G2hpMoL2bcsimjfAOnDdytC7/HuiVhZfqanRC7R+22WaYH0xaiQi3dEopjPK8eWnBlrMEAERIGgPSCNZRmgECNpD02oWGiABgvYANZOlhEKAoD0UbWaRARMgaA9YQ1lOoAQI2g200+2gPXWXdS5776hSd0Q06qIfNPLS2Xp7VR6dXKqJhr0bVboVvt9SK6aLKxKyG2gvQwRIgKA9QM1kKaEQIGgPRZtZZMAECNoD1lCWE3gBgvbAt5gFBlCAoD2ATWVJgREgaDfQSreD9l/eiGrr71H9XnKtHq/zkdou3qg7zumoQUNSlJoqXV4pphurE7IbaC1DBEyAoD1gDWU5gRcgaA98i1lgAAUI2gPYVJYUaAGC9kC3l8UFVICgPaCNZVmBECBoN9BGN4P2NTOiWvZRVHvy7lXb20frnK2rNfD0ezRgaBHt2h1R+fIxNbot5hwdwwsBBP4pQNDOE4GAvwQI2v3VL6pFwBYgaOc5QMBfAgTt/uoX1SJgCxC08xwg4F0BgnYDvXEraN+5JqKf+6Yo3dqs3uOmT7T22IX66Jgaemf8Gdq0OaITSqWrVfM0pVhHt/NCAIFDBQjaeSoQ8JcAQbu/+kW1CBC08wwg4D8Bgnb/9YyKESBo5xlAwLsCBO0GeuNG0J62N6KfXoxqrxWoTzx/rt65/CtN3H6qvpldXctXRFT0mHS1bhVToYLWAe28EEAgUwGCdh4MBPwlQNDur35RLQIE7TwDCPhPgKDdfz2jYgQI2nkGEPCuAEG7gd64EbT/+lZUm3+JannxjXq07nj1WLlHeTa00bz5ERUoYIXsLWIqVoyQ3UA7GSLAAgTtAW4uSwukAEF7INvKogIuwNExAW8wywucAEF74FrKgkIgQNAegiazRN8KELQbaF1uB+3rvolo8ZgU7c2zTw82HKtrNi7XzWkdNGNWXkWtY2Ja3JWm0qUJ2Q20kiECLkDQHvAGs7zACRC0B66lLCgEAgTtIWgySwyUAEF7oNrJYkIiQNAekkazTF8KELQbaFtuBu2711lHxrxsncueJr1Q41PtPHqOnk9rojEfl3Aqb1Q/prOsL0DlhQACRxYgaD+yEVcg4CUBgnYvdYNaEMieAEF79py4CgGvCBC0e6UT1IFA9gUI2rNvxZUIuC1A0G5APLeC9vRUaXafFO3ZGNGnZy3Uu5U+1fAtlTRuSkWlWxvYq1eL6aorCNkNtJAhQiJA0B6SRrPMwAgQtAemlSwkRAIE7SFqNksNhABBeyDayCJCJkDQHrKGs1xfCRC0G2hXbgXti0enaN23Ea09eqseajBar68qpK+/aqj9+6WLKsZUuxYhu4H2MUSIBAjaQ9RslhoIAYL2QLSRRYRMgKA9ZA1nub4XIGj3fQtZQAgFCNpD2HSW7BsBgnYDrcqNoH3TvKgWvB3V/miaHqk/TvU2rVDsp/basTOiM8rFdEejmCIRA8UzBAIhEiBoD1GzWWogBAjaA9FGFhEyAYL2kDWc5fpegKDd9y1kASEUIGgPYdNZsm8ECNoNtMp00L53c8Q6Miaq2L6IXr9mplKLfq0rf2yrPzYVUMnj0nVPyzTlzWOgcIZAIGQCBO0hazjL9b0AQbvvW8gCQihA0B7CprNkXwsQtPu6fRQfUgGC9pA2nmX7QoCg3UCbTAbt9peezumbol1rI/qmzFKNvGKC7ptdR78tP1lFiqSrTauYCh9lHdDOCwEE4hYgaI+bjBsQSKoAQXtS+ZkcgYQECNoTYuMmBJImQNCeNHomRiBhAYL2hOm4EYFcFyBoN0BsMmhfOjGqtTOjWl9kux6vO0pdfi6n+QsrK3++dLVqka7jSnAuu4GWMURIBQjaQ9p4lu1bAYJ237aOwkMsQNAe4uazdF8KELT7sm0UHXIBgvaQPwAs39MCBO0G2mMqaN+yMKr5g6NKi8T0aL3xarp6k1bMaa5oVGraJE2nnsJOdgPtYogQCxC0h7j5LN2XAgTtvmwbRYdcgKA95A8Ay/edAEG771pGwQiIoJ2HAAHvChC0G+iNiaB9//aIfuxlhex7Ihp6xTc6qvDnKjKrk9IVUf26aTr3HEJ2A61iiJALELSH/AFg+b4TIGj3XcsoGAERtPMQIOAvAYJ2f/WLahGwBQjaeQ4Q8K4AQbuB3uQ4aLcy9Ln9U7R9uRW2n7JC4yuN0bWTm2pv2jGqem1M11zNcTEG2sQQCIignYcAAX8JELT7q19Ui4AtQNDOc4CAvwQI2v3VL6pFgKCdZwABbwsQtBvoT06D9pVTolo5NarNBXfpybrvquHUStq2/RxdUCGmOrUJ2Q20iCEQcAQI2nkQEPCXAEG7v/pFtQgQtPMMIOA/AYJ2//WMihFgRzvPAALeFSBoN9CbnATt25ZFNHdAinVETLqeumWibpwvbV1zs8qWialJ45hzPjsvBBAwI0DQbsaRURBwS4Cg3S1p5kHAnAA72s1ZMhICbggQtLuhzBwImBUgaDfryWgImBQgaDegmWjQnrY7ou96RRTbEdV7F/+owtGvFP3lPpUoHlPrVjHly2ugOIZAAIEMAYJ2HgYE/CVA0O6vflEtArYAQTvPAQL+EiBo91e/qBYBW4CgnecAAe8KELQb6E2iQfsvg6PaujCqX0v9oakXD1f56e1U8KgUJ2Q/ughffmqgNQyBwD8ECNp5IBDwlwBBu7/6RbUIELTzDCDgPwGCdv/1jIoRIGjnGUDAuwIE7QZ6k0jQvubzqJZ9GNXOfHvVs9YwXTf1JqVFS6lV8zQdX5KQ3UBbGAKBQwQI2nkoEPCXAEG7v/pFtQgQtPMMIOA/AYJ2//WMihEgaOcZQMC7AgTtBnoTb9C+c01EP70SVSQ9ol43TNalPxbV7l2VnDPZTy/Ll58aaAlDIJCpAEE7DwYC/hIgaPdXv6gWAYJ2ngEE/CdA0O6/nlExAgTtPAMIeFeAoN1Ab+IJ2tP2Wuey905XbGsefVDhZxXa/bP2r75DdWrHdEEFQnYD7WAIBA4rQNDOw4GAvwQI2v3VL6pFgKCdZwAB/wkQtPuvZ1SMAEE7zwAC3hUgaDfQm3iC9rlDpe3z82hp8Y36qvxwFfvpAV1dOaZqVQjZDbSCIRDIUoCgnQcEAX8JELT7q19UiwBBO88AAv4TIGj3X8+oGAGCdp4BBLwrQNBuoDfZDdr/+DaiJaNTtDvPfg2sOkznzGqg8mcVVP16aQaqYAgEEDiSAEH7kYT4fQS8JUDQ7q1+UA0C2REoVayg1m/erRhfOZQdLq5BIOkCBO1JbwEFIBC3AEF73GTcgIBrAgTtBqizE7Tv2RDR972laCxF/atMVvk5Z6rU8WXU9M40RVMMFMEQCCBwRAGC9iMScQECnhIgaPdUOygGgWwJELRni4mLEPCMAEG7Z1pBIQhkW4CgPdtUXIiA6wIE7QbIjxS0p6dKX/ZJVWRjAU0t/6uiO9fq6Mi1atUiXQXys93HQAsYAoFsCRC0Z4uJixDwjABBu2daQSEIZFuAoD3bVFyIgCcECNo90QaKQCAuAYL2uLi4GAFXBQjaDXAfKWj/+b1U7fihgFYeu1k/nTxGx6xppntbx3R0EUJ2A/wMgUC2BQjas03FhQh4QoCg3RNtoAgE4hIgaI+Li4sRSLoAQXvSW0ABCMQtQNAeNxk3IOCaAEG7AeqsgvZ186TFb+fRvmiaRl7xlk78+S41b5auE08gZDdAzxAIxCVA0B4XFxcjkHQBgvakt4ACEIhbgKA9bjJuQCCpAgTtSeVncgQSEiBoT4iNmxBwRYCg3QDz4YL2vZsj+rpXTHlT8+q9S6aqxKKKalC/qM4oFzMwK0MggEC8AgTt8YpxPQLJFSBoT64/syOQiABBeyJq3INA8gQI2pNnz8wIJCpA0J6oHPchkPsCBO0GjDML2tPTpM9671H+jYX1/alLtGP3NlWvcr4urkjIboCcIRBISICgPSE2bkIgaQIE7UmjZ2IEEhYgaE+YjhsRSIoAQXtS2JkUgRwJELTniI+bEchVAYJ2A7yZBe3fjd6p/d8eo/VFtmtBiU91QdlbdEN1QnYD3AyBQMICBO0J03EjAkkRIGhPCjuTIpAjAYL2HPFxMwKuCxC0u07OhAjkWICgPceEDIBArgkQtBugPThoXzV/v1YMLaj90ZimnDdCZ+dpqEa3xRSJGJiMIRBAIGEBgvaE6bgRgaQIELQnhZ1JEciRAEF7jvi4GQHXBQjaXSdnQgRyLEDQnmNCBkAg1wQI2g3Q/j1o37td+rJnmvLvz69Pzv1MpfdepqZN8yolxcBEDIEAAjkSIGjPER83I+C6AEG76+RMiECOBQjac0zIAAi4KkDQ7io3kyFgRICg3QgjgyCQKwIE7QZYM4L2dGlSn606Zn1xzT1pmfbmSVHLpieqYEHrN3ghgEDSBQjak94CCkAgLgGC9ri4uBgBTwgQtHuiDRSBQLYFCNqzTXqy6c0AACAASURBVMWFCHhGgKDdM62gEAQOESBoN/BQHAjavxi7QdGvS2lzwV365fjZatWokooWJWQ3QMwQCBgRIGg3wsggCLgmQNDuGjUTIWBMgKDdGCUDIeCKAEG7K8xMgoBRAYJ2o5wMhoBRAYJ2A5x20L5k4XatGVLUGW1WuUlqfEMNlS5NyG6AlyEQMCZA0G6MkoEQcEWAoN0VZiZBwKgAQbtRTgZDINcFCNpznZgJEDAuQNBunJQBETAmQNB+BMpYLF29+o/Q2EkztT81VVUrX6RunZqqQP58GXcuXrVTnz+XqiJ7Cumr079Szasv01nlY8aaxEAIIGBGgKDdjCOjIOCWAEG7W9LMg4A5AYJ2c5aMhIAbAgTtbigzBwJmBQjazXoyGgImBQjaj6A5Yvw0DX1vsvr16KBCBfProaf7q8I55dSpdYOMO196YqlK/1FaS0qs0SmXF9LVVxU22SPGQgABQwIE7YYgGQYBlwQI2l2CZhoEDAoQtBvEZCgEXBAgaHcBmSkQMCxA0G4YlOEQMChA0H4EzLva9VDVqyqqyW01nCtnfDVHT/cZqk/f7+P894BBv6rE1+W0vcBubTl3pRrcVtZgexgKAQRMChC0m9RkLARyX4CgPfeNmQEB0wIE7aZFGQ+B3BUgaM9dX0ZHIDcECNpzQ5UxETAjQNB+BMdr6rTTMw8309WVKjhXLl+1TjXveETfTx6oggXyaVSL/c6vLzjzazVrfrGZrjAKAgjkigBBe66wMigCuSZA0J5rtAyMQK4JELTnGi0DI5ArAgTtucLKoAjkqgBBe67yMjgCORIgaD8C36U1W6vvs+102YVnOVeu+3Ozrrutg2aO66tiRYs4QfuvpX/SI50vUb7/P7Y9R03hZgQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAH/CBC0H6FX9o72Zx9toasuPc+58uAd7W8M/F4Nb79YRTiW3T9PPZUigAACCCCAAAIIIIAAAggggAACCCCAAAIGBQjaj4DZ5IHuuv7qi3VnverOldO/nK1uvYfqs9EvZdy5ZuNugy1hKAQQyC0Bjo7JLVnGRSB3BDg6JndcGRWB3BTg6Jjc1GVsBMwLcHSMeVNGRCC3BTg6JreFGR+BxAUI2o9gN3zMFA0bPVX9n+ugQgULqGO313T2mafqsbaNCdoTf+64E4GkCBC0J4WdSRFIWICgPWE6bkQgaQIE7UmjZ2IEEhIgaE+IjZsQSKoAQXtS+ZkcgSwFCNqP8ICkpcXUs9+7mvDJLKWmpqrKlReqW6emTuh+4MWOdn7KEPCHAEG7P/pElQgcECBo51lAwH8CBO3+6xkVh1uAoD3c/Wf1/hQgaPdn36g6HAIE7Qb6TNBuAJEhEHBBgKDdBWSmQMCgAEG7QUyGQsAlAYJ2l6CZBgFDAgTthiAZBgEXBQjaXcRmKgTiFCBojxMss8sJ2g0gMgQCLggQtLuAzBQIGBQgaDeIyVAIuCRA0O4SNNMgYEiAoN0QJMMg4KIAQbuL2EyFQJwCBO1xghG0GwBjCASSJEDQniR4pkUgQQGC9gThuA2BJAoQtCcRn6kRSECAoD0BNG5BIMkCBO1JbgDTI5CFAEG7gceDHe0GEBkCARcECNpdQGYKBAwKELQbxGQoBFwSIGh3CZppEDAkQNBuCJJhEHBRgKDdRWymQiBOAYL2OMEyu5yg3QAiQyDgggBBuwvITIGAQQGCdoOYDIWASwIE7S5BMw0ChgQI2g1BMgwCLgoQtLuIzVQIxClA0B4nGEG7ATCGQCBJAgTtSYJnWgQSFCBoTxCO2xBIogBBexLxmRqBBAQI2hNA4xYEkixA0J7kBjA9AlkIELQbeDzY0W4AkSEQcEGAoN0FZKZAwKAAQbtBTIZCwCUBgnaXoJkGAUMCBO2GIBkGARcFCNpdxGYqBOIUIGiPEyyzywnaDSAyBAIuCBC0u4DMFAgYFCBoN4jJUAi4JEDQ7hI00yBgSICg3RAkwyDgogBBu4vYTIVAnAIE7XGCEbQbAGMIBJIkQNCeJHimRSBBAYL2BOG4DYEkChC0JxGfqRFIQICgPQE0bkEgyQIE7UluANMjkIUAQbuBx4Md7QYQGQIBFwQI2l1AZgoEDAoQtBvEZCgEXBIgaHcJmmkQMCRA0G4IkmEQcFGAoN1FbKZCIE4BgvY4wTK7nKDdACJDIOCCAEG7C8hMgYBBAYJ2g5gMhYBLAgTtLkEzDQKGBAjaDUEyDAIuChC0u4jNVAjEKUDQHicYQbsBMIZAIEkCBO1JgmdaBBIUIGhPEI7bEEiiAEF7EvGZGoEEBAjaE0DjFgSSLEDQnuQGMD0CWQgQtBt4PNjRbgCRIRBwQYCg3QVkpkDAoABBu0FMhkLAJQGCdpegmQYBQwIE7YYgGQYBFwUI2l3EZioE4hQgaI8TLLPLCdoNIDIEAi4IELS7gMwUCBgUIGg3iMlQCLgkQNDuEjTTIGBIgKDdECTDIOCiAEG7i9hMhUCcAgTtcYIRtBsAYwgEkiRA0J4keKZFIEEBgvYE4bgNgSQKELQnEZ+pEUhAgKA9ATRuQSDJAgTtSW4A0yOQhQBBu4HHgx3tBhAZAgEXBAjaXUBmCgQMChC0G8RkKARcEiBodwmaaRAwJEDQbgiSYRBwUYCg3UVspkIgTgGC9jjBMrucoN0AIkMg4IIAQbsLyEyBgEEBgnaDmAyFgEsCBO0uQTMNAoYECNoNQTIMAi4KELS7iM1UCMQpQNAeJxiXI4AAAggggAACCCCAAAIIIIAAAggggAACCCDwdwGCdp4HBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQRyIEDQngM8bkUAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAgKCdZwABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgRwIELQngBeLpatX/xEaO2mm9qemqmrli9StU1MVyJ8vgdG4BQEETAqM/3iW+g4eow2btuq88mX17KPNdcpJx2c6xW9LV6n7K8O0aMkq7d+fqornnaEn2jdR6ROOM1kSYyGAQBYC8fzM/n2Yz778SQ90eUWDej2sSy8sjzECCLgkMG/hUj3V6039bv0ZemKpEnqsbWNVvuz8LGe3f87fHvWJFi9fY/2ZXFLjhzzrUrVMgwACm7duV5eeg/Xl9/NU+KiCurNedbVsXOuwMMtW/qFnX7b/frxSKSlRXXdlRT18b0Ply5cXTAQQ8ICA/Wfqf9/9SBPe5M9SD7SDEhA4RICgPYGHYsT4aRr63mT169FBhQrm10NP91eFc8qpU+sGCYzGLQggYErg96Wr1aB1N7309P06/6zT9drQcfpp3u8a+fqTmU7x9Y/ztWjxSl17xQXOPx56vvqOFdBv09t9O5sqiXEQQCALgXh/Zg8M9ePcRerWZ6j+3LhFL3VrS9DOU4aASwL2m9I1bn9Ijf5dVQ1qX6cZ1hteT7/4lj5+9wUVK1ok0yretP7O/N6E6U4gf/aZp2nX7j06+cSSLlXMNAgg8OBTryktLU1dOjTR2vWb1OaRPur+WAtdXalCpji33P246tSsrLvr36DtO3bp3sde1OUXn6t776oNJgIIJFFg/YYtuqtdd23eukMlSxxL0J7EXjA1AlkJELQn8Hzc1a6Hql5VUU1uq+HcPeOrOXra+gf/p+/3SWA0bkEAAVMC/YaM1YLfV6jvs+2cIe1/HFxxy336aFjPbP2j3g7eH3jiFX370QBTJTEOAghkIZDIz6z9SZQOT/ZT/+c6qGmHnur+aEuCdp4yBFwS+Hb2ArWzPkkya0I/RaMRZ9b69zylhlboXqfm1YdUsWPnblWp117vD+ym004u5VKVTIMAAgcE9u3br0tvaqMR/buqfLlTnF9+wfpk9sbN2/Rc51aHQKWlxXTB9c31396PZPzZ+sJrI7Rl2w7rU6ItgEUAAQ8I2J/q7DPwfYJ2D/SCEhDITICgPYHn4po67fTMw80ydgEsX7VONe94RN9PHqiCBTg+JgFSbkHAiEAn69MlpUoW+8enS66t2975eT3Sx9rtAga986Hsv7gMe/VxI/UwCAIIZC0Q78/smj826J6He+uFrm2cwKBag44E7TxkCLgoYO9MH/3h5//4pNjDzwzQ8ccVU8fW9Q+pZNqs2er6/GCdf3ZZfT9nofLmzeOE8m2b1XGxaqZCILwCS1esVa0mj/3j36nvT/xMoyfO0IgBmX/is9eAkRo36Qvr5/RW51Pb9qe3D/y5G15JVo6AdwQI2r3TCypBgKDd0DNwac3Wzo7Zyy48yxlx3Z+bdd1tHTRzXN/DfmzW0NQMgwACWQjc3/llJ3y73/qHwYHXjY0fVvuW9VTj2kuztLN3yd7ZtrtetX62L67wL5wRQMAFgXh+ZlOtj73f1vJJdX7gDl1ywV9nshO0u9AkpkDgbwJD3/9Yn878QW+98v9HrHV9YbDy5snjHEtx8Gv4mCnW2exT1OvJNjqjTGktXrZabR59UW2sIyjswJ0XAgjkrsCvvy1XPevPznnThygS+etTKBOnfKWBwz7QhKHdM538h58XOd9hdEbZ0pr6+fe68pLz1KNzS+vI1AK5WyyjI4BAtgQI2rPFxEUIJE2AHe0J0Ns72u2Pzl116XnO3exoTwCRWxDIBQF7d+xJ1hezdWh1W8bo9o72px9qethzKO0Ll1i7fZpZR1C0a1FXt95YORcqY0gEEMhMIJ6f2V2796pSrTbWcRXRjKHs86LzpKTo7gY3/OPnHm0EEMgdAXtH+9jJX+jd17pkTGDvaC953LGZflfR8DFT9fFn3/4jmH/R+rj771bg3q97+9wpklERQCBD4MCO9tmfvJHxZab2jvZRH8zI9DuMtlhnP1dv1Emj3nja+eLirdt2quPTr6lwoYLOdyDxQgCB5AsQtCe/B1SAQFYCBO0JPB9NHuiu66++2PnGdvs1/cvZ6tZ7qD4b/VICo3ELAgiYEnh18FgtXLJSff/zgDOkfUb75Tffpw/ffk6nlj4+02nmzF/snMv+yH23q2bVy0yVwjgIIJANgUR+Zv8+LDvas4HMJQgYFPhm9q/q0PVV64z2VzN2x9q7ZRvUrqLbal17yEwzv/lZjz83yPoeoxetXe8pzu/b50PbYR7nPRtsDEMhcBgB54x269PY9jExB85of77fu9qwaaue79L6kLvsLxu3j2j7btLrGb9n74B/5b+j9cmIXjgjgIAHBAjaPdAESkAgCwGC9gQeD/tjsMNGT3W+iM3+CF3Hbq/p7DNP1WNtGycwGrcggIApAfuLUG+/9xnnaKdzy5fRgLcm6BvrC07H/PcZZ4qxk2Zq1nfz1Ms639l+zfxmrjr3GKhuDzVTpYp/HQVlv/Lly+vskuWFAAK5K3Ckn1n7I++9+o+0PrLeSiVLFD2kGIL23O0PoyNwsIAd2l3fsJOa3FZD9W++Vp9bQbp9Bvvkd57XccWLKhZLV8tOLzifMrG/G8X+1EnNOx9VtcoX6YHmdbVs5VonxOv5+D26/OJzAEYAARcE2nXp63x58RPtm2j9hs1q9VAvPdWxqapWrnjIz6y9SaVGo4fU6s6bdZf1c757z1799X0qxdU1k+OhXCifKRBA4CABgnYeCQS8LUDQnkB/7G9j72ntBJjwySylpqaqypUXqlunppxbl4AltyBgWsD+krbX3hynjZu3WmF7WeeLUMuccoIzzcuDRmvc5JmaPuqvT5/06DvcetNsyiElvNClDbvbTTeG8RA4jEBWP7Nfff+LWlih3aThPa2PsB/6qRSCdh4rBNwXsD8J9nSfofp96WqdWKq4Hrq3ka6z/i5sv+zvUqhQtbnz9+J6ta5xfs0+YrFb7zc1d8ESJ4xv06S2bq5+hfuFMyMCIRWwd693sd4Q+9rafHKUtUmscd1qzs/h4X5m5/66RM+/NsJ5Yyy/tfmkmvVJbvv7jgrkzxdSQZaNgDcE1q7fpLotulgZVJrzJliRwoV0S/Ur9ej9t3ujQKpAAAFHgKCdBwEBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgRwIELTnAI9bEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBAgaOcZQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAgBwIE7TnA41YEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAjaeQYQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEMiBAEF7DvC4FQEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABgnaeAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEciBA0J4DPG5FAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQICgnWcAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIEcCBC05wCPWxFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQIGjnGUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAIAcCBO05wONWBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQI2nkGEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBDIgQBBew7wuBUBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAYJ2ngEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBHIgQNCeAzxuRQABBBBAAAEEEEAAAQQQQAABBBBAAAEEEECAoJ1nAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBHAgQtOcAj1sRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEECBo5xlAAAEEEEAAAQR8JjBn/mLdfu8z+mriazq6cCGfVU+5CCCAAAIIIIAAAggggEDwBAjag9dTVoQAAggggAACPhCo1qCj1q7beEiltWtcqe6PtcxyBW4E7Z17vKHxH89y6khJieqkUiV0U9XL1fKOWsqfL2+OhHft3qNLbmytbp2aql6ta5yxLr6hlZ59tKVqXHtJxtgvvDZCH037WtNHvZSj+bK6efUfG1S9YaeMSwrkz6fy5U5R6ya3qPJl52d73iEjJmns5C804c1ns30PFyKAAAIIIIAAAggggEBwBAjag9NLVoIAAggggAACPhKwg/ZrKlXQLVaw/vfXsccU0SknlcxyJW4F7StWr9eTHe/Snj37NG/hUvUeMNIKwi+1AvEWOZJOTUvTpE+/UYVzymWsNbOgff6iZVpjvRlRrfJFOZovO0F7zyfu0b9OP1lbtu7QyAnT9cmM7zT05cd04blnZGtugvZsMXERAggggAACCCCAAAKBFSBoD2xrWRgCCCCAAAIIeFnADtob3FJFLRvXOqTM7+csVPdXhjkh8/79qSp94nFq0egm3Vz9Cufag4N2O7h+dfBYTZz6lTZt3qZSJYs54fSD99R3rt+6bade6D9C02b9qNTUNJ37rzJ6tG1jnVm29GGJ7B3tGzZt1cAX/n+392tvjtPA4RM1+5M3nHFeHPi+M+e2Hbt09hmn6pH7b1eFs093xjxSTRdc30K9u96rqpUr6pa7H9fiZaszaolGI5o7bYjesOaaNO0bjfnvMxo1cYZ69ntHM8a8okIF82dc277rq0pPT9fLz7R1fm3qzB9k17lkxVqVLF5Ut9asrFaNb3Z25Wf2OrCj/Z3XumTUHoul67Kb2qjJbdXVtlkd57Zho6do+JipWr9hs/LmzePseu9o+Z53Vll9/Nl3evCpfv8Y3r7P3hVvj2Wv4/2Jn2mj1ZvTSh+ve+/+t66/+mIvP57UhgACCCCAAAIIIIAAAnEKELTHCcblCCCAAAIIIICACQE7aK9/87Vq1qhmxnARRZxA+JvZv2rOL7+r4nlnqvBRBTX18x804O0JGvVGNyfgPTho7//WeI39aKaee/weFT/2aP3623J9MOVL9eveXmlpMec895NOKGEFv7VVsEA+vTv2U02a/o0+fPs5K7QukOlyMgva7cD4zfcma9b4V9Wj73B9aoXaj7e/UyeULO4E4eM//kIfDeup46yAO6ua7An/HrTbu8ir1n9Qj1nh/7VXXODUU6LYMf8I2nfu2qNr6jygrg/epVuq//UpgK3bd1q/1k6vWCH71danA6bNmq0nnhukJ9o3sXail9OKNev1uPXfTepVt0LzGpmuM7Og3X6TwD7apkPLehn3jRw/TZFoVGdZbyikWb9v72D/ce4ifTb6Zee/Bw6z3hSwTO1d8PbLdrXfEHi+37v66odf1PmBO1T6hOP03ZwF6vrCEA1/9Qmd86/TTDxKjIEAAggggAACCCCAAAIeECBo90ATKAEBBBBAAAEEwieQ2RntJUsUPex55FXqtVfrO29Rg9rXHRK027u69+zdqwE9Ox4C+fnXc9S5xyBNH/2S8uZJcX7f3gF+Ze371fPx1tY55Odliv/3oN3eVW+HxY9Zu9xrVbtc9ze9VVfVbqveT92bcayLPeatzbo4QXl7K6DOqiZ7wr8H7fZ/Z3Z0zN93tNvX2DWt+3Oz/tvnYadmO/y234CYOrKP8wZFg3u6qdb1l+tOK1g/8LJ3otu77kf075rpOg8O2u1d/PanA+yjYyYM7e4E/pm9VqxepxsbP6IP3uqhsqec4ATvB5/Rbu/0r2w5jXz9SecNkgOvB7q8Yu1sL5XxiYPwPf2sGAEEEEAAAQQQQACB4AkQtAevp6wIAQQQQAABBHwgYAftVaxQuvYNV2VUmzdPHuec8L379jsh8uff/Kw11pd12ru5N23Zpgdb1VfThjceErTbO7nbd+1rnXd+vC698CxdaJ19Xs06msTevW7vLLeD48xeT3W6W7fVujbT3zvwZaj2MS728Sd2SG/Xau/MXrR4pRq2edp5U8B+c+DAq+sLg62ja7br1e7tnN3lh6vJvj6RoN0+Uufu9s9pysje1i76Ympk7dSvVPFstWtR13nzoEK15s4O/oNf9g77z6w3GjJ7HQja7XVaQzjjnFGmtHp1baNyZU7KuGX9hi16e9Qnzi52+wiY7Tt3/XWeuxWi20fxZBa0//DzIjV5oHum895UtZKe79LaB08qJSKAAAIIIIAAAggggEB2BAjas6PENQgggAACCCCAgGGBrM5ov7/zy1q4ZKV1LntNlbeOKilSuJDu7/ySE4pnFrTbpa20jkmxj5iZu2Cpvvx+nk48vrgVAj+lN4Z94BwjM2n483GtwA7aD3wZar68eZ1z3/Pny+uMMffXJZkG7V2eH6zNW/4K2rOqyQ7tEwna7THtXeS33niV86WsNe94xFmX/eWx9psB51dtpuc6t3J2tWf3dSBoP/BlqO9Yx+p8aO2Af+uVzhm70Hft3mPN9ahOts7Kv6Pu9db/LekE+vabDVkF7d/9tMB5Y2Da+y/q+OOOzW5JXIcAAggggAACCCCAAAI+FCBo92HTKBkBBBBAAAEE/C9wuKDd3lFtB8YvdGmjG6pcmrFQ+wtDb7V2lGcWtNtniudJ+etYGPu14PcVqtuiq8YPeVbLV61TO2u3u30Min3Eyd9fdlh8uC8JzeyM9gP32keiXGUdPdP7yXszvtTz4KNjsqrJ3il+cNBuH2Xz2P2N/xGSH3x0jD3/QOuNg3GTv3BsZs/7TUNefDRjSXWad9Hpp53o2GV3nQcfHWMH9rbXz/MXa3i/J5xz1e2d9He166HPx77inIFvvzZv3e4cn3MgaLcD+rdHffyPNzTsa66+9QF16XCXcx5/dmvy/9PNChBAAAEEEEAAAQQQCJ8AQXv4es6KEUAAAQQQQMADAlntaL+5yWM63tpB3rxhTW3bsdM6L/x7TZ7+rTq1bpBp0N728Zd1bvmyzvnoBfLn0+gPZ2iU9T97J3Uea/e4fXa5ffyMfXb6aSeX0pp1GzV20kznS0IvuaB8phpZBe32Dd1fGaZpX/z4jy9DHTd5pvVlqM87x8lkVZNd48FBux1kp1hfNvrwfY3058atztnxmQXt9hEuVet3cNb55IN3/yOY//iz7/TgU/3UuM71qln1MutNhBR98+N8540H+yiYzF6ZfRnqnr371PzB563jerY7Ybt9Rv31DTs641a54kKtWrte702Y7nx64EDQ/u3sBWra4TnnOJgylrH9KQD7DYVnX37beWPggeZ1ddH5Z2rHzj369IsfnLPfWzau5YEnkRIQQAABBBBAAAEEEEDAhABBuwlFxkAAAQQQQAABBOIUyCpon79omZ7s9aZ+W7rKOou8uHVcSTWNGDdNdWpenWnQPuGTWbJ3VC9b+Ydzxvi55cuo4z31dfaZpzlVbd22Uy8NGqXp1rnpW6xd1iVLHKvL/ne2+eG+7PNIQfs+6xz5PgPfd45Z2W7tcD/LmuuhNg1V8bwznDmPVNPBQbu95sefG6SlK9Zax9QU1+R3ns80aLfHbv1IH2c3+4wxLzuB+99fdvg/6J0PnXA9n3XUTbnTTlJD6wtkD3ecTGZB+wGzxvf/R4UK5tebLz1qvakw2zG0z2e3v9i0cZ1qeuQ/r2cE7fY9PfoO14SPZynV+qTAQ/c2dHax258aePO9yRrz0edateZPFT2msM6z3hRpdUctnX/26XE+NVyOAAIIIIAAAggggAACXhUgaPdqZ6gLAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAwBcCBO2+aBNFIoAAAggggAACCCCAAAIIIIAAAggggAACCHhVgKDdq52hLgQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAFfCBC0+6JNFIkAAggggAACCCCAAAIIIIAAAggggAACCCDgVQGCdq92hroQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEfCFA0O6LNlEkAggggAACCCCAAAIIIIAAAggggAACCCCAgFcFCNq92hnqQgABBBBAAAEEEEAAAQQQQAABBBBAAAEEEPCFAEG7L9pEkQgggAACCCCAAAIIIIAAAggggAACCCCAAAJeFSBo92pnqAsBBBBAAAEEEEAAAQQQQAABCaZXzAAAA+BJREFUBBBAAAEEEEDAFwIE7b5oE0UigAACCCCAAAIIIIAAAggggAACCCCAAAIIeFWAoN2rnaEuBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAV8IELT7ok0UiQACCCCAAAIIIIAAAggggAACCCCAAAIIIOBVAYJ2r3aGuhBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQR8IUDQ7os2USQCCCCAAAIIIIAAAggggAACCCCAAAIIIICAVwUI2r3aGepCAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQ8IUAQbsv2kSRCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAl4VIGj3ameoCwEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMAXAgTtvmgTRSKAAAIIIIAAAggggAACCCCAAAIIIIAAAgh4VYCg3audoS4EEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABXwgQtPuiTRSJAAIIIIAAAggggAACCCCAAAIIIIAAAggg4FUBgnavdoa6EEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBHwhQNDuizZRJAIIIIAAAggggAACCCCAAAIIIIAAAggggIBXBQjavdoZ6kIAAQQQQAABBBBAAAEEEEAAAQQQQAABBBDwhQBBuy/aRJEIIIAAAggggAACCCCAAAIIIIAAAggggAACXhUgaPdqZ6gLAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAwBcCBO2+aBNFIoAAAggggAACCCCAAAIIIIAAAggggAACCHhVgKDdq52hLgQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAFfCBC0+6JNFIkAAggggAACCCCAAAIIIIAAAggggAACCCDgVQGCdq92hroQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEfCFA0O6LNlEkAggggAACCCCAAAIIIIAAAggggAACCCCAgFcFCNq92hnqQgABBBBAAAEEEEAAAQQQQAABBBBAAAEEEPCFAEG7L9pEkQgggAACCCCAAAIIIIAAAggggAACCCCAAAJeFSBo92pnqAsBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEDAFwIE7b5oE0UigAACCCCAAAIIIIAAAggggAACCCCAAAIIeFWAoN2rnaEuBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAV8IELT7ok0UiQACCCCAAAIIIIAAAggggAACCCCAAAIIIOBVAYJ2r3aGuhBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQR8IUDQ7os2USQCCCCAAAIIIIAAAggggAACCCCAAAIIIICAVwX+DxT+Xx3CC018AAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%capture -ns detecting_at_risk_students scores_roc_curves\n", "cachedir = mkdtemp()\n", "grid = {\n", " GradientBoostingClassifier: {\n", " \"classifier__learning_rate\": [0.03], # [0.03, 0.1, 0.6, 1.1, 1.6],\n", " \"classifier__loss\": [\"exponential\"], # [\"log_loss\", \"exponential\"],\n", " \"classifier__max_depth\": [3], # [3, 4, None],\n", " \"classifier__min_samples_leaf\": [40], # list(range(10, 100, 10)),\n", " \"classifier__min_samples_split\": [20], # list(range(10, 100, 10)),\n", " \"classifier__n_estimators\": [10], # [10, 50, 100],\n", " \"classifier__n_iter_no_change\": [10], # [None, 10],\n", " },\n", " RandomForestClassifier: {\n", " \"classifier__criterion\": [\"gini\"], # [\"gini\", \"entropy\", \"log_loss\"],\n", " \"classifier__max_depth\": [3], # [None, *list(range(1, 20, 2))],\n", " \"classifier__min_samples_leaf\": [10], # list(range(10, 100, 10)),\n", " \"classifier__min_samples_split\": [50], # list(range(10, 100, 10)),\n", " \"classifier__n_estimators\": [50], # [10, 50, 100],\n", " },\n", " MLPClassifier: {\n", " \"classifier__alpha\": [0.1], # [1/10**x for x in range(1, 7)],\n", " \"classifier__early_stopping\": [True], # [True, False],\n", " \"classifier__hidden_layer_sizes\": [(135,)], # (x,) for x in range(10, 200, 5),\n", " \"classifier__learning_rate\": [\"constant\"], # constant, adaptive, invscaling,\n", " \"classifier__learning_rate_init\": [0.3], # [0.001, 0.1, 0.3],\n", " \"classifier__max_iter\": [1200],\n", " \"classifier__momentum\": [0.9], # [0.2, 0.5, 0.9],\n", " \"classifier__solver\": [\"sgd\"],\n", " },\n", " LogisticRegression: {\n", " \"classifier__penalty\": [\"l1\"], # [\"l1\", \"l2\", None],\n", " \"classifier__solver\": [\"saga\"],\n", " \"classifier__tol\": [1e-4], # [1e-03, 1e-04, 1e-05, 1e-06, 1e-07, 1e-08],\n", " },\n", "}\n", "pipe = Pipeline(\n", " [\n", " (\"variance_threshold\", VarianceThreshold(3)),\n", " (\"smote\", SMOTE()),\n", " (\"power_transformer\", PowerTransformer()),\n", " (\"classifier\", None),\n", " ],\n", " memory=cachedir,\n", ")\n", "mean_fpr = np.linspace(0, 1, 100)\n", "scores = {\n", " \"classifier\": [],\n", " \"test_accuracy\": [],\n", " \"test_f1\": [],\n", " \"test_sensitivity\": [],\n", " \"test_specificity\": [],\n", " \"test_AUC\": [],\n", " \"validation_accuracy\": [],\n", " \"validation_f1\": [],\n", " \"validation_sensitivity\": [],\n", " \"validation_specificity\": [],\n", " \"validation_AUC\": [],\n", "}\n", "roc_curves = {}\n", "\n", "\n", "def get_scores_and_roc_curves() -> tuple[dict]:\n", " \"\"\"Computes the prediction scores and ROC curves.\"\"\"\n", "\n", " for classifier_class, hyper_parameters in grid.items():\n", " tprs = []\n", " for _ in range(5):\n", " pipe.set_params(classifier=classifier_class())\n", " classifier = GridSearchCV(\n", " pipe,\n", " hyper_parameters,\n", " scoring=\"f1\",\n", " n_jobs=-1,\n", " error_score=\"raise\",\n", " cv=StratifiedKFold(n_splits=10, shuffle=True),\n", " refit=True,\n", " )\n", " x_train, x_test, y_train, y_test = train_test_split(\n", " x_train_test, y_train_test, test_size=0.3\n", " )\n", " classifier.fit(x_train, y_train)\n", " y_test_pred = classifier.predict(x_test)\n", " y_validation_pred = classifier.predict(x_validation)\n", " scores[\"classifier\"].append(classifier_class.__name__)\n", " for name in [\"test\", \"validation\"]:\n", " y_true = y_test if name == \"test\" else y_validation\n", " y_pred = y_test_pred if name == \"test\" else y_validation_pred\n", " scores[f\"{name}_accuracy\"].append(accuracy_score(y_true, y_pred))\n", " scores[f\"{name}_f1\"].append(f1_score(y_true, y_pred))\n", " scores[f\"{name}_sensitivity\"].append(recall_score(y_true, y_pred))\n", " scores[f\"{name}_specificity\"].append(\n", " recall_score(y_true, y_pred, pos_label=0)\n", " )\n", " scores[f\"{name}_AUC\"].append(roc_auc_score(y_true, y_pred))\n", "\n", " fpr, tpr, _ = roc_curve(y_validation, y_validation_pred)\n", " tprs.append(np.interp(mean_fpr, fpr, tpr))\n", "\n", " roc_curves[classifier_class.__name__] = np.mean(tprs, axis=0)\n", "\n", " return scores, roc_curves\n", "\n", "\n", "scores_roc_curves = get_scores_and_roc_curves()\n", "display(pd.DataFrame(scores_roc_curves[0]).groupby(\"classifier\").mean())\n", "px.line(\n", " pd.DataFrame(scores_roc_curves[1], index=mean_fpr)\n", " .melt(var_name=\"Classifier\", value_name=\"True Positive Rate\", ignore_index=False)\n", " .rename_axis(index=\"False Positive Rate\")\n", " .reset_index(),\n", " x=\"False Positive Rate\",\n", " y=\"True Positive Rate\",\n", " color=\"Classifier\",\n", " title=\"ROC curve for the validation set\",\n", " width=800,\n", " height=600,\n", ").show()\n", "rmtree(cachedir)" ] } ], "metadata": { "jupytext": { "cell_metadata_filter": "-all", "main_language": "python", "notebook_metadata_filter": "-all" }, "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.7" } }, "nbformat": 4, "nbformat_minor": 5 }