{ "cells": [ { "cell_type": "code", "execution_count": 567, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import patsy as pt\n", "from mpl_toolkits.mplot3d import Axes3D\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "sns.set()\n", "\n", "from IPython.display import HTML\n", "from ipywidgets import interact\n", "import ipywidgets as widgets\n", "import copy\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "from sklearn import tree\n", "import graphviz \n", "from sklearn import metrics\n", "from sklearn.metrics import confusion_matrix\n", "from sklearn import datasets\n", "from sklearn.model_selection import cross_val_score\n", "from sklearn.ensemble import RandomForestRegressor\n", "from sklearn.ensemble import GradientBoostingRegressor\n", "from sklearn.ensemble import GradientBoostingClassifier\n", "from sklearn.linear_model import Lasso\n", "import statsmodels.api as sm\n", "from sklearn.neighbors import KNeighborsClassifier" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7. In the lab, we applied random forests to the Boston data using mtry=6 and using ntree=25 and ntree=500. Create a plot displaying the test error resulting from random forests on this data set for a more comprehensive range of values for mtry and ntree. You can model your plot after Figure 8.10. Describe the results obtained." ] }, { "cell_type": "code", "execution_count": 166, "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", "
CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTATPrice
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.904.9824.0
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.909.1421.6
20.027290.07.070.00.4697.18561.14.96712.0242.017.8392.834.0334.7
30.032370.02.180.00.4586.99845.86.06223.0222.018.7394.632.9433.4
40.069050.02.180.00.4587.14754.26.06223.0222.018.7396.905.3336.2
\n", "
" ], "text/plain": [ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX \\\n", "0 0.00632 18.0 2.31 0.0 0.538 6.575 65.2 4.0900 1.0 296.0 \n", "1 0.02731 0.0 7.07 0.0 0.469 6.421 78.9 4.9671 2.0 242.0 \n", "2 0.02729 0.0 7.07 0.0 0.469 7.185 61.1 4.9671 2.0 242.0 \n", "3 0.03237 0.0 2.18 0.0 0.458 6.998 45.8 6.0622 3.0 222.0 \n", "4 0.06905 0.0 2.18 0.0 0.458 7.147 54.2 6.0622 3.0 222.0 \n", "\n", " PTRATIO B LSTAT Price \n", "0 15.3 396.90 4.98 24.0 \n", "1 17.8 396.90 9.14 21.6 \n", "2 17.8 392.83 4.03 34.7 \n", "3 18.7 394.63 2.94 33.4 \n", "4 18.7 396.90 5.33 36.2 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "boston_df = datasets.load_boston()\n", "boston_df = pd.DataFrame(data=np.c_[boston_df['data'], boston_df['target']], columns= [c for c in boston_df['feature_names']] + ['Price'])\n", "\n", "np.random.seed(1)\n", "train = np.random.rand(len(boston_df)) < 0.5\n", "\n", "display(boston_df.head())\n", "\n", "# Create design and response matrix\n", "f = 'Price ~ ' + ' + '.join(boston_df.columns.drop(['Price']))\n", "y, X = pt.dmatrices(f, boston_df)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Compare test RMSE of Random Forest for various numbers of features considered at each split (mtry)\n", "# and increasing number of trees (ntree)\n", "\n", "max_features = {'p': X.shape[1], \n", " 'p/2': int(np.around(X.shape[1]/2)),\n", " '$\\sqrt{p}$': int(np.around(np.sqrt(X.shape[1]))),\n", " '1': 1} \n", "\n", "results = []\n", "for mtry in max_features:\n", " for tree_count in np.arange(1, 100):\n", " regr = RandomForestRegressor(max_features=max_features[mtry], random_state=0, n_estimators=tree_count)\n", " regr.fit(X[train], y[train])\n", " y_hat = regr.predict(X[~train])\n", " \n", " mse = metrics.mean_squared_error(y[~train], y_hat)\n", " rmse = np.sqrt(mse)\n", " results+= [[tree_count, mtry, rmse]]\n", "\n", "plt.figure(figsize=(10,10))\n", "sns.lineplot(x='Number of Trees', y='RMSE', hue='mtry', \n", " data=pd.DataFrame(results, columns=['Number of Trees', 'mtry', 'RMSE']));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The above shows the test RMSE for a 50% holdout set where training set contains 240 observations each with 14 predictors.\n", "\n", "We find that the test RMSE decreases with increasing number of trees for all values of mtry (number of random features considered at each split) \n", "\n", "The optimal value of m is less than p and greater than 1. In this case $m=\\sqrt{p}$ yields the best results for $ntree > ?$ although $p/2$ performs better for some lower tree counts.\n", "\n", "Incredibly the model does not seem prone to overfitting with test RMSE continuing to decrees up to ntree = 100.\n", "\n", "### 8. In the lab, a classification tree was applied to the Carseats data set after converting Sales into a qualitative response variable. Now we will seek to predict Sales using regression trees and related approaches, treating the response as a quantitative variable." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (a) Split the data set into a training set and a test set.\n", "\n", "#### (b) Fit a regression tree to the training set. Plot the tree, and interpret the results. What test MSE do you obtain?" ] }, { "cell_type": "code", "execution_count": 246, "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", "
SalesCompPriceIncomeAdvertisingPopulationPriceShelveLocAgeEducationUrbanUS
09.501387311276120Bad4217YesYes
111.22111481626083Good6510YesYes
210.06113351026980Medium5912YesYes
37.40117100446697Medium5514YesYes
44.15141643340128Bad3813YesNo
\n", "
" ], "text/plain": [ " Sales CompPrice Income Advertising Population Price ShelveLoc Age \\\n", "0 9.50 138 73 11 276 120 Bad 42 \n", "1 11.22 111 48 16 260 83 Good 65 \n", "2 10.06 113 35 10 269 80 Medium 59 \n", "3 7.40 117 100 4 466 97 Medium 55 \n", "4 4.15 141 64 3 340 128 Bad 38 \n", "\n", " Education Urban US \n", "0 17 Yes Yes \n", "1 10 Yes Yes \n", "2 12 Yes Yes \n", "3 14 Yes Yes \n", "4 13 Yes No " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "carseats_df = pd.read_csv('./data/Carseats.csv')\n", "\n", "# Check for missing values\n", "assert carseats_df.isnull().sum().sum() == 0\n", "# Drop unused index\n", "carseats_df = carseats_df.drop('Unnamed: 0', axis=1)\n", "\n", "# Create index for training set\n", "np.random.seed(1)\n", "train = np.random.random(len(carseats_df)) > 0.5\n", "\n", "display(carseats_df.head())" ] }, { "cell_type": "code", "execution_count": 247, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Test MSE: 5.09\n", "Test RMSE: 2.256\n" ] } ], "source": [ "# Use all features excpet response features\n", "# No intercept\n", "\n", "preds = carseats_df.columns.drop(['Sales'])\n", "#preds_scaled = ['standardize({})'.format(p) for p in preds]\n", "f = 'Sales ~ 0 +' + ' + '.join(preds)\n", "y, X = pt.dmatrices(f, carseats_df)\n", "y = y.flatten()\n", "\n", "# Fit Sklearn's tree regressor\n", "clf = tree.DecisionTreeRegressor(max_depth=5).fit(X[train], y[train])\n", "\n", "# Measure test set MSE\n", "y_hat = clf.predict(X[~train])\n", "mse = metrics.mean_squared_error(y[~train], y_hat)\n", "\n", "# Get proportion of correct classifications on test set\n", "print('Test MSE: {}'.format(np.around(mse, 3)))\n", "print('Test RMSE: {}'.format(np.around(np.sqrt(mse), 3)))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (c) Use cross-validation in order to determine the optimal level of tree complexity. Does pruning the tree improve the test MSE?" ] }, { "cell_type": "code", "execution_count": 248, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RMSEupperlower
max_leaf_nodes
31.02.1889012.42011.957702
\n", "
" ], "text/plain": [ " RMSE upper lower\n", "max_leaf_nodes \n", "31.0 2.188901 2.4201 1.957702" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Test MSE : 4.661\n", "Test RMSE: 2.159\n" ] } ], "source": [ "# How about using CV to compare trees with different number of leaf nodes \n", "# as defined by the max_leaf_nodes parameter?\n", "\n", "cv_folds = 10\n", "tuning_param = 'max_leaf_nodes'\n", "columns=[tuning_param, 'RMSE', 'upper', 'lower']\n", "\n", "results = []\n", "for m in np.arange(2, 100):\n", " regr = tree.DecisionTreeRegressor(max_leaf_nodes=m)\n", " scores = cross_val_score(regr, X[train], y[train], cv=cv_folds, scoring='neg_mean_squared_error')\n", " rmses = np.sqrt(np.absolute(scores))\n", " rmse = np.mean(rmses)\n", " conf_int = np.std(rmses) *2\n", " results += [[m, rmse, rmse+conf_int, rmse-conf_int]]\n", "\n", "\n", "# Plot classification accuracy for each max_depth cv result\n", "plot_df = pd.DataFrame(np.asarray(results), columns=columns).set_index(tuning_param)\n", "plt.figure(figsize=(10,10))\n", "sns.lineplot(data=plot_df)\n", "plt.ylabel('RMSE')\n", "plt.show();\n", "\n", "# Show chosen model\n", "chosen = plot_df[plot_df['RMSE'] == plot_df['RMSE'].min()]\n", "display(chosen)\n", "\n", "# Use chosen model for test prediction\n", "regr = tree.DecisionTreeRegressor(max_leaf_nodes=int(chosen.index[0])).fit(X[train], y[train])\n", "y_hat = regr.predict(X[~train])\n", "mse = metrics.mean_squared_error(y[~train], y_hat)\n", "\n", "# Get proportion of correct classifications on test set\n", "print('Test MSE : {}'.format(np.around(mse, 3)))\n", "print('Test RMSE: {}'.format(np.around(np.sqrt(mse), 3)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "10-fold cross validation selects a pruned tree model that achieves test MSE of 4.524, an improvement on the unpruned model (5.066). Interestingly 100-fold, 5-fold and 2-fold CV were all unable to select an improvement on the unpruned model. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (d) Use the bagging approach in order to analyze this data. What test MSE do you obtain? Use the importance() function to determine which variables are most important." ] }, { "cell_type": "code", "execution_count": 109, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Test MSE : 2.615\n", "Test RMSE: 1.617\n" ] } ], "source": [ "# Bagging with 100 trees\n", "# although I'm using RandomForestRegressor algo here this is Bagging because max_features = n_predictors\n", "\n", "max_features = X.shape[1]\n", "tree_count = 100\n", "\n", "regr = RandomForestRegressor(max_features=max_features, random_state=0, n_estimators=tree_count)\n", "regr.fit(X[train], y[train])\n", "y_hat = regr.predict(X[~train])\n", "\n", "mse = metrics.mean_squared_error(y[~train], y_hat)\n", "rmse = np.sqrt(mse)\n", "\n", "print('Test MSE : {}'.format(np.around(mse, 3)))\n", "print('Test RMSE: {}'.format(np.around(rmse, 3)))" ] }, { "cell_type": "code", "execution_count": 110, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot feature by importance in this model\n", "plot_df = pd.DataFrame({'feature': X.design_info.column_names, 'importance': regr.feature_importances_})\n", "\n", "plt.figure(figsize=(10,10))\n", "sns.barplot(x='importance', y='feature', data=plot_df.sort_values('importance', ascending=False),\n", " color='b')\n", "plt.xticks(rotation=90);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Bagging yields a significantly improved test MSE of 2.615 compared with 4.524 for the optimal pruned tree.\n", "\n", "The bagging model indicates that instore Shelve Location (Good) and Price of the carseat are the most significant features affecting Sales revenue. This aligns with our observation when performing classification in hte lab." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (e) Use random forests to analyze this data. What test MSE do you obtain? Use the importance() function to determine which variables are most important. Describe the effect of m, the number of variables considered at each split, on the error rate obtained." ] }, { "cell_type": "code", "execution_count": 122, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "MSE test: 2.544\n", "RMSE test: 1.595\n" ] } ], "source": [ "# Random Forest with 100 trees and 4 features considered at each split\n", "\n", "max_features = 7\n", "tree_count = 100\n", "\n", "regr = RandomForestRegressor(max_features=max_features, random_state=0, n_estimators=tree_count)\n", "regr.fit(X[train], y[train])\n", "y_hat = regr.predict(X[~train])\n", "\n", "mse = metrics.mean_squared_error(y[~train], y_hat)\n", "rmse = np.sqrt(mse)\n", "\n", "print('MSE test: {}'.format(np.around(mse, 3)))\n", "print('RMSE test: {}'.format(np.around(rmse, 3)))" ] }, { "cell_type": "code", "execution_count": 123, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot feature by importance in this model\n", "plot_df = pd.DataFrame({'feature': X.design_info.column_names, 'importance': regr.feature_importances_})\n", "\n", "plt.figure(figsize=(10,10))\n", "sns.barplot(x='importance', y='feature', data=plot_df.sort_values('importance', ascending=False),\n", " color='b')\n", "plt.xticks(rotation=90);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Random forest with 7 predictors at each split yields a test MSE 2.544 similar to bagging (2.615). A similar feature importance is ascribed." ] }, { "cell_type": "code", "execution_count": 130, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAFFCAYAAAC393oCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzt3Xd8VPed7//XGfUuoQII1EDwFV2YYmxwb7Exxs7GSTaxN7YT597NxvfuTZyym9049m6ym9xs8svu5sZxieM4TpzEccPg3gGbXmzKlyoQVQUJdVRmfn/MCAvFBgk0Omdm3s/HQw/NnHPmzEf6Pka8+X6/53ydQCCAiIiIiHiLz+0CREREROQvKaSJiIiIeJBCmoiIiIgHKaSJiIiIeJBCmoiIiIgHKaSJiIiIeJBCmoiIiIgHKaSJiIiIeJBCmoiIiIgHKaSJiIiIeFC82wWcpSRgDnAY6HG5FhEREZHTiQNGA2uAEwN9UaSGtDnAO24XISIiIjIIFwHLB3pwpIa0wwANDa34/VogfiByc9Opr29xuwzpR+3iPWoTb1K7eI/aZOB8PoecnDQI5ZeBitSQ1gPg9wcU0gZBvytvUrt4j9rEm9Qu3qM2GbRBTdHShQMiIiIiHqSQJiIiIuJBCmkiIiIiHqSQJiIiIuJBCmkiIiIiHqSQJiIiIuJBYb0FhzHmPuBTQAB42Fr7k377zwN+CSQC1cAt1trGcNYkIiIiEgnC1pNmjLkEuByYDswG7jLGmH6H/Qz4rrV2BmCBu8NVj4iIiEgkCVtIs9a+BVxmre0GCgj22rX2OywOyAw9TgXaw1WPiIiISCRxAoHw3i3YGHMvwR6yPwG3W2sDffbNA14mGN5agfOttfUDOG0psHfoq/1QW0cX//iLFfztJ6djSkaE861EREQkNpQBVQM9OOzLQllr7zHG/BBYAtwJPABgjEkBHgautNauNsZ8DfgNsHCg566vbwnbkhRd3X7qGtt54On3+dbnZuI4TljeZ7jk52dQW9vsdhnSj9rFe9Qm3qR28R61ycD5fA65uemDf10YagHAGFNhjKkEsNa2AU8RnJ/WayrQbq1dHXr+S+DScNUzWAnxPhbOK2FHdSPb9jW4XY6IiIjEmHDegmMc8KAxJskYkwgsBpb32b8LKOpzMcFiYE0Y6xm0SyoLyclI4pnlewn3sLCIiIhIX+G8cGAZsBTYAKwDVlprnzDGLDPGzLbWNgC3AX80xmwG7gBuD1c9ZyMhPo6FF5Sw68BxtlapN01ERESGT9gvHAiTUmBvOOek9erq9vMPD7xLTkYS/3jLrIidm6a5A96kdvEetYk3qV28R20ycH3mpA3qwgGtOHAGCfE+rr+glN0Hm/hg7zG3yxEREZEYoZA2AAumjyY3M5ln3tHcNBERERkeCmkDEB/n4/oLS9h7uIn39wzkNm4iIiIi50YhbYDmTxtNXpZ600RERGR4KKQNUHycj0UXllJ1pJlNu9SbJiIiIuGlkDYIF0wdRX52Ms8s36PeNBEREQkrhbRBiI/zccP8MvYfbWHDzjq3yxEREZEoppA2SPOmjGRkTgrPLt+LX71pIiIiEiYKaYMU5/OxaH4p1TUtbNhR63Y5IiIiEqUU0s7C+ZNHMmpEKs+oN01ERETCRCHtLMT5fNwwv5SDta2ss+pNExERkaGnkHaW5k4ayejc1ODctDCvHyoiIiKxRyHtLPl8DjfML+NQXStrtte4XY6IiIhEGYW0czCnooAxeWk8t0K9aSIiIjK0FNLOgc/ncMOCMg7Xt7F621G3yxEREZEoopB2jmaZfMbmp/Hsiip6/H63yxEREZEooZB2jnyOw+IFZRw91saqrepNExERkaGhkDYEZk7Mp6ggnefUmyYiIiJDRCFtCPT2ptU0tPPeFvWmiYiIyLlTSBsiMyfkUTwynedW7KW7R71pIiIicm4U0oaI4zjcuGActY0dvPvBEbfLERERkQinkDaEZpTnUjoqgyUrq9SbJiIiIudEIW0IOY7DjReVUXe8gxXvH3a7HBEREYlgCmlDbNq4XMYVZvK8etNERETkHCikDTEndKVnfdMJlm9Wb5qIiIicHYW0MJhaNoLxYzJZsrKKrm71pomIiMjgKaSFQe+Vng3NJ3hn8yG3yxEREZEIpJAWJpNLcygfm8XSd/fR1d3jdjkiIiISYRTSwsRxHG5aUEZD8wne2qjeNBERERkchbQwqijJYWJRNkvf20dnl3rTREREZOAU0sIoODetjOMtnepNExERkUGJD+fJjTH3AZ8CAsDD1tqf9NtvgF8COcAR4LPW2oZw1jTcKkpyqCgO9qZdXFlIUkKc2yWJiIhIBAhbT5ox5hLgcmA6MBu4KxTKevc7wHPAv1trZwAbgG+Hqx43LV5QRlNrJ29uOOh2KSIiIhIhwhbSrLVvAZdZa7uBAoK9dq19DjkPaLXWvhh6/gPg5+Gqx02mOIdJJTm88N4+TnRqbpqIiIicWViHO621XcaYe4G7gT8BfbuSyoEjxpiHgZnANuCuwZw/Nzd9qEoNu9sWTeFb/72c1Tvq+ORl5a7UkJ+f4cr7yumpXbxHbeJNahfvUZuEV1hDGoC19h5jzA+BJcCdwAN93vtS4GJr7VpjzL8APwFuG+i56+tb8PsDQ1twmOSnJzKlbAR/em0HcybmkpwY9l/9qe+fn0FtbfOwvqecmdrFe9Qm3qR28R61ycD5fM5ZdSyFc05ahTGmEsBa2wY8RXB+Wq8jwE5r7drQ898Dc8NVjxfcuKCMlvYuXl+vuWkiIiJyeuG8Bcc44EFjTJIxJhFYDCzvs38lkG+MmRF6vghYF8Z6XDd+TBZTx43gxVX7aT/R7XY5IiIi4mHhvHBgGbCU4FWb64CV1tonjDHLjDGzrbXtwE0Eg9wWgleCfj1c9XjFjQvG0dLexWvrDrhdioiIiHhYuC8c+B7wvX7bruvzeBVRPsTZ37jCTKaPz+Wl1fu5YtZYUpKGd26aiIiIRAatOOCCxQvKaO3o5tW11W6XIiIiIh6lkOaCstGZVJbn8dLqato6utwuR0RERDxIIc0lixeU0Xaim1fWam6aiIiI/CWFNJeUjMpg5oQ8Xl5TTat600RERKQfhTQXLV5QRvuJbl5erblpIiIiciqFNBcVj8xglsnnlbXVtLSrN01EREQ+pJDmssXzy+jo7OHlNfvdLkVEREQ8RCHNZWML0pldUcAraw/Q3NbpdjkiIiLiEQppHrB4fimdnT28pLlpIiIiEqKQ5gFj8tOZM6mA19YdoEm9aSIiIoJCmmfcML+Mzq4eXlyluWkiIiKikOYZhXlpnD9lJK+vP0BTq3rTREREYp1CmofcML+Mrm4/L6za53YpIiIi4jKFNA8ZNSKVeZNH8cb6gxxvOeF2OSIiIuIihTSPuWF+Kd09AZa9p7lpIiIisUwhzWNGjkjlgqkjeXPjQRrVmyYiIhKzFNI8aNGFpfT0BFj2ruamiYiIxCqFNA8qyEll/rRRvLnxEA3N6k0TERGJRQppHrXowlICgQBL361yuxQRERFxgUKaR+VlpzB/2mje3nSIY00dbpcjIiIiw0whzcOuv7CEQACe19w0ERGRmKOQ5mF5WSlcNKOQdzYdou54u9vliIiIyDBSSPO46y8owXFgqXrTREREYopCmseNyEzm4hmFLN98mNpG9aaJiIjECoW0CLDwglIcx+H5lVVulyIiIiLDRCEtAuRkJHFJZSEr3j9CTUOb2+WIiIjIMFBIixDXzSshLs5hiXrTREREYoJCWoTIyUji0soxvPvBUY6qN01ERCTqKaRFkOvmFRMf57BkRZXbpYiIiEiYKaRFkKz0JC6dOYZ3txzhcH2r2+WIiIhIGIU1pBlj7jPGbDXGbDHGfO00xy00xuwNZy3R4tp5JSTE+zQ3TUREJMqFLaQZYy4BLgemA7OBu4wx5iOOGwn8GHDCVUs0yUpL5PLzxrJq61H1pomIiESxsIU0a+1bwGXW2m6gAIgHPipVPATcG646otEnzi8mMT6O5zQ3TUREJGrFh/Pk1touY8y9wN3An4CDffcbY/4XsB5472zOn5ubfs41RqJ8YNFF4/jzGzu5deFkSkZlDux1+RnhLUzOitrFe9Qm3qR28R61SXiFNaQBWGvvMcb8EFgC3Ak8AGCMmQr8FXAFMPZszl1f34LfHxiqUiPKxdNGsWT5Hh5dsoW/vXHqGY/Pz8+gtrZ5GCqTwVC7eI/axJvULt6jNhk4n885q46lcM5JqzDGVAJYa9uApwjOT+t1MzAaWAssAwqNMe+Eq55ok56SwJWzxrJ2ew0HalrcLkdERESGWDiv7hwHPGiMSTLGJAKLgeW9O62191hrJ1prK4HrgEPW2ovCWE/UuWZuMUmJcTy7QhfGioiIRJtwXjiwDFgKbADWASuttU8YY5YZY2aH631jSXpKAlfNLmKdrWX/UXU5i4iIRBMnEIjIOV2lwN5YnpPWq7Wji2/+4l0mleTw1U9O+9jjNHfAm9Qu3qM28Sa1i/eoTQauz5y0MqBqwK8LV0EyPNKSE7h6ThHrd9Sy74g+LCIiItFCIS0KXDW7iNSkeJ5drrlpIiIi0UIhLQqkJsdz9dwiNu6qo+pIk9vliIiIyBBQSIsSV80uIi05nmfeUW+aiIhINFBIixIpSfFcM7eYzbvr2XNIvWkiIiKRTiEtilwxayzpKQmamyYiIhIFFNKiSLA3rYj399Sz6+Bxt8sRERGRc6CQFmXUmyYiIhIdFNKiTHJiPNfOK2bL3mPsPNDodjkiIiJylhTSotDlM8eSmZqgKz1FREQimEJaFEpKjOPaeSVs29fAjmr1pomIiEQihbQodenMMWSmJfLMO3vcLkVERETOgkJalEpKiOO6eSVs39/I9n0NbpcjIiIig6SQFsUurSwkKz2RZ5bvJRAIuF2OiIiIDIJCWhRLTIhj4bwSdlQ3snlXndvliIiIyCAopEW5SyoLyclI4vEXt6s3TUREJIIopEW5hPg4Fl1YyraqY7y96ZDb5YiIiMgAKaTFgIsrC5kxIY8nXtvF0YY2t8sRERGRAVBIiwE+x+HvP3secT6HB5dspcfvd7skEREROQOFtBiRl53CrdcY9hxqYunKfW6XIyIiImegkBZDzp88knmTR/Lciir2HGpyuxwRERE5DYW0GHPL1RPJzkjkwSVbONHZ43Y5IiIi8jEU0mJManICX1w4mZqGdv7wxi63yxEREZGPoZAWgyaV5HD13CLe3HCQTbrJrYiIiCcppMWoT148nrH5aTzywnaa2jrdLkdERET6UUiLUQnxPr68aAptHV08+oJWIxAREfEahbQYNrYgnU9ePJ4NO+t4Z/Nht8sRERGRPhTSYtzVc4uoKM7m96/upEarEYiIiHiGQlqM8zkOX7p+Mj6fw4PPazUCERERrzhtSDPGFJ9m3yeGvhxxw4jMZG69eiK7Dzax7F2tRiAiIuIFZ+pJe6b3gTHmz/32/eBMJzfG3GeM2WqM2WKM+dpH7F9sjNlojNlkjHnGGJMzsLJlqM2bMoq5kwp4bkUVew9rNQIRERG3nSmkOX0ejzvNvr9gjLkEuByYDswG7jLGmD77M4FfAAuttTOAzcD3Bla2hMOt1xgy0xJ5cMlWTnRpNQIRERE3nSmkBT7m8Uc9P4W19i3gMmttN1AAxAOtfQ5JAP7OWnsw9Hwz8LHDqxJ+ackJfHHhJI4ca+OPWo1ARETEVYPpSRs0a22XMeZeYCvwGnCwz756a+3TAMaYFODb9BleFXdMLh3B1XOKeGP9QTbvrne7HBERkZjlnO4mpsaYTcClBMPaG30eA7wRGqY8I2NMKrAE+IO19oF++7KAp4G91tovDrDuUmDvAI+VQers6uFr/99bNLV28l93X0ZWepLbJYmIiESDMqBqoAfHn2H/NKCOD4NZ366V0w53GmMqgGRr7UZrbZsx5imC89P6HjMaeAl4Hfg/Ay26V319C36/7pQ/EPn5GdTWNg/4+NuvreBff7OWnzy+jr+7aSqOc06dqvIxBtsuEn5qE29Su3iP2mTgfD6H3Nz0Qb/utCHNWnsu91EbB9xrjFlAMNAtBn7Vu9MYE0ewd+2P1tp/PYf3kTAoHpnBTReP409v7Gb5+4e5aHqh2yWJiIjElDP1pGGMcYA4a223MSYDuArYbK097cxya+0yY8xcYAPQA/zZWvuEMWYZ8F2gCDgPiDfGfCr0srXW2i+dw88jQ+iaOcVs3lXP717diSnOoSA7xe2SREREYsaZ5qRNBpYBXyU48X99aFcmcJu19pWwV/jRSoG9Gu4cuLPtlq473s49v1rNmPx0vv258/D5NOw5lDRc4D1qE29Su3iP2mTg+gx3DmpO2pmGM/8v8B1r7fPAZ0PbpgDz0D3NYkJeVgq3XGXYdeA4y97TagQiIiLD5Uwhrdha+3jo8WXAs9Zav7W2GsgKb2niFfOmjGRORQHPLt9L1RGtRiAiIjIczhTS+t52/kLg7T7Pk4e+HPEix3G0GoGIiMgwO1NIO2aMmRG6QnM08BaAMeZC+tyYVqJfekoCdyycxOH6Np58Y7fb5YiIiES9M4W0fwReJXgfs+9Ya1uNMXcDSwleoSkxZErpCK6cPZbX1h/ggz1ajUBERCSczhTSdhC8UKAQ+I0xZgSwiuBtON4Pc23iQZ+6ZDyFeWk8vGwbLe1dbpcjIiIStc4U0uqAw8BRoDb0/C1gdei5xJjEhDi+vGgyLW1dPPridk53CxcRERE5e2e6me1vCF4w8CzwiLV2a/hLEq/rXY3gyTd3s/KDI8yfNtrtkkRERKLOaXvSrLW3AZXAJuBnxph3jTFfMcZkD0dx4l2fmFvMxLFZPP7KDmob290uR0REJOqccW1Oa22btfa31tqrgJsJ3h/tDWPMH8JenXiWz+fwpesnA/DQ81u18oOIiMgQG+wC6vmhrzxAvWkxLi87hc9fNZGdB47zwiqtRiAiIjKUBrLAehFwC3ArwZvbPgacb609FObaJAJcOHUUm3bV8cw7e5lalkvJqAy3SxIREYkKp+1JM8a8QfCWGwXA562106y1P1JAk16O4/A3n6ggPTWBB5/fSqdWIxARERkSZxruvITgsOaXgLeMMU2hr2ZjjBZxFCC4GsEXF07iUF0rT76l1QhERESGwpmGO8uGpQqJeFPLcrli1lheXXuAGePzmFI2wu2SREREItppQ5q1VrPBZcBuvnQ8W6uO8fDSrdz3xfNJT0lwuyQREZGINdirO0U+VnA1gik0t3Xx2EtWqxGIiIicA4U0GVIlozK48aIy1myv4b0tR90uR0REJGIppMmQu/b8EiaMzeK3r1jqjms1AhERkbOhkCZDrnc1gkAAHn5+m1YjEBEROQsKaRIW+dkpfO7KidjqRl5as9/tckRERCKOQpqEzfxpo5g1MZ+n3trD/qPNbpcjIiISURTSJGyCqxEY0lMSeHDJVrq6tRqBiIjIQCmkSVhlpCZyx8JJHKxr5c9v7XG7HBERkYihkCZhN21cLpefN4aX11SzteqY2+WIiIhEBIU0GRY3X1bOqBGpPLx0G60dXW6XIyIi4nkKaTIskhLiuHPRZJpaO3nsJet2OSIiIp6nkCbDpmx0JjfML2X1thre23LE7XJEREQ8TSFNhtV1F5Qwfkwmj728g/rjHW6XIyIi4lkKaTKs4nw+7rx+Mv5AgIeXbsWvRdhFREQ+kkKaDLuCnFT++ooJbN/fyMurq90uR0RExJPiw3lyY8x9wKeAAPCwtfYn/fZXAg8BmcDbwP+01naHsybxhoumj2bTrjqeens3U8pGUFSQ7nZJIiIinhK2njRjzCXA5cB0YDZwlzHG9Dvst8BXrbUTAQe4M1z1iLc4jsMXrq0gNTmBB5ds0WoEIiIi/YQtpFlr3wIuC/WMFRDstWvt3W+MKQFSrLXvhTb9Grg5XPWI92SmJnL7tRUcqG3lqbe1GoGIiEhfYR3utNZ2GWPuBe4G/gQc7LO7EDjc5/lhYOxgzp+bqyGywcjPz3C7hL9wZX4GOw428eJ7VVw8q4jp5flulzTsvNgusU5t4k1qF+9Rm4RXWEMagLX2HmPMD4ElBIczHwjt8hGcq9bLAfyDOXd9fQt+v64OHIj8/Axqa5vdLuMj3XBBCeu3H+U/Hl/HfXfMJTU5we2Sho2X2yVWqU28Se3iPWqTgfP5nLPqWArnnLSK0IUBWGvbgKcIzk/rdQAY3ef5KOBQuOoR70pKjOPORVNobO7kty/vcLscERERTwjnLTjGAQ8aY5KMMYnAYmB5705r7T6gwxgzP7TpVuCFMNYjHjauMLgawXtbj7Jq61G3yxEREXFdOC8cWAYsBTYA64CV1tonjDHLjDGzQ4d9HvipMWY7kA78Z7jqEe9beGEJ4wszeewly7EmrUYgIiKxzQlE5h3fS4G9mpM2cJEyd+BoQxvf+9UaxhVm8vXPVuJzHLdLCqtIaZdYojbxJrWL96hNBq7PnLQyoGrArwtXQSJnY2ROKp+9opxt+xp4dY1WIxARkdilkCaec/GMQirL83jyrT0cqG1xuxwRERFXKKSJ5ziOw23XVpCaFMcDz22lq3tQd2YRERGJCgpp4kmZaYncdt0kDtS28PQ7Wo1ARERij0KaeFZleR6XVBby0qr92P0NbpcjIiIyrBTSxNM+c3k5+TkpPPT8Vto6ut0uR0REZNgopImnJSfGc+eiyTQ0d/L4K9btckRERIaNQpp43vjCLK6/sIR3txxl9TatRiAiIrFBIU0iwvUXllI2OrgaQUPzCbfLERERCbt4twsQGYj4OB9fXjSZex5ZzTd/sZI4nwMOOIRWJAg+JbhAgdO7id4FC5w+Kxc4Tu8RwSdOn9f3PfaU43D6nOvklg9f53z8e556/g/P7fM5XHthGXMm5J5Sn4iICCikSQQZOSKVr326kk276ggABCBAgL4rmwVC2whtO+W4kwf1bg9uC/TZEQh8+JrQlpPHn3Jcn/P0XVot0Ofcp77/Xx7X2HKC+5/azPpJBXzhExWkJOnjKCIiH9K/ChJRJhZlM7Eo2+0yhoQ/EODt94/w2AvbqK5p4Ss3TmVMfrrbZYmIiEdoTpqIS3yOw81XTOTuz86ktb2Lf/nNWt7bcsTtskRExCMU0kRcNqkkh3tun0vpyAweWLKVx16yWgpLREQU0kS8ICcjibv/eiafOL+YNzYc5N9+u466xna3yxIRERcppIl4RHycj09fVs5XPzmNow1t3PvrNWzaVed2WSIi4hKFNBGPOW9iPvfcNocRmcn87MnNPPX2bvz+wJlfKCIiUUUhTcSDCnJS+c6ts7ho+mieX7mP//jDRo63drpdloiIDCOFNBGPSkyI4/brJnH7dRXsOnicex9ZzY7qRrfLEhGRYaKQJuJxF00v5Du3ziIxIY4f/W4DL67af8qNcUVEJDoppIlEgOKRGXz3C3OYOSGPP76xi58//QFtHd1ulyUiImGkkCYSIVKT4/nKTVP5zOXlbNxZx32PrmH/0Wa3yxIRkTBRSBOJII7jcM3cYr75uZl0dvXw/cfW8c7mQ26XJSIiYaCQJhKBJhZl873b51I+JotHlm3nkWXb6OzqcbssEREZQgppIhEqMy2Rr3+mkusvLOWdzYf5/mPrONrQ5nZZIiIyRBTSRCKYz+fwyYvH8fc3T+dYUwf3/XoN63fUul2WiIgMAYU0kSgwfXwe99w+h5E5qfz3U+/zx9d30d2jRdpFRCKZQppIlMjLSuEfbpnFZeeN4cXV+/nx7zfQ0HzC7bJEROQsKaSJRJGEeB+3Xm348qLJVB1t5t5HVrNtX4PbZYmIyFlQSBOJQvOmjOKfvzCHtJQEfvzEBpa+W4VfqxSIiESU+HCe3BhzD/Dp0NOl1tpv9tt/HvBLIBGoBm6x1mpxQpEhMCYvjX/+wmx+/cJ2/vzWHnYeOM6Xrp9MekqC26WJiMgAhK0nzRhzJXA1MBOoBGYZY27qd9jPgO9aa2cAFrg7XPWIxKLkxHj+xw1T+PxVE9my9xj3/XoNew83uV2WiIgMQDiHOw8DX7fWdlpru4BtQHG/Y+KAzNDjVKA9jPWIxCTHcbhi1lj+4ZZZBAIB/u2363hzw0Et0i4i4nHOcPyhNsZMAFYA8621O/tsnwe8DLSGvs631tYP4JSlwN4wlCoS1ZpaO/mP361j/fYaLp01lr/7qxkkJ4V11oOIiHyoDKga6MFh/+tsjJkCLAW+0S+gpQAPA1daa1cbY74G/AZYONBz19e34PerN2Ag8vMzqK3VYtxe40a7fGXxFJ7PT+PZd/ayc18DX7lpKqNz04a1Bi/TZ8Wb1C7eozYZOJ/PITc3ffCvC0MtJxlj5gOvAd+21j7ab/dUoN1auzr0/JfApeGsR0TA5zjcML+Mr322kuOtndz36FpWbzvqdlkiItJPOC8cKAKeAT5nrX3iIw7ZBRQZY0zo+WJgTbjqEZFTTSkdwfdun0NRfjr3P7uF372yQ6sUiIh4SDiHO+8GkoGffJjDuB+4geAVnWuNMbcBfzTGOEANcHsY6xGRfkZkJvPNz83kyTd38/KaavYcbuIrN05lRGay26WJiMS8YblwIAxKgb2akzZwmjvgTV5ql7Xba/jVsm3Ex/n48qLJTB2X63ZJrvBSm8iH1C7eozYZuD5z0gZ14YBWHBARAGZXFPDd2+aQnZ7IT/+4iWfe2aP/BImIuEghTUROGjUile/8zWwunDqK51ZU8dM/baK5rdPtskREYpJCmoicIikhjjsWTuK2ayuw+xv53iNr2H3wuNtliYjEHIU0EfkLjuNw8YxCvnPrLOLjHP798fW8srZaqxSIiAwjhTQR+VglozK457Y5TBuXy+9f3cn9z26h/US322WJiMQEhTQROa3U5ATu+qtp3HzpeNbZWv7l0bUcqG1xuywRkainkCYiZ+Q4DtfOK+Ebf11J+4lu/vXRtaz84LDbZYmIRDWFNBEZMFOcw/dun8O4wkween4bv3lxO13dPW6XJSISlRTSRGRQstKT+PpnK7luXglvbjzED367ntrGdrfLEhGJOuFcFkpEolScz8enLh1P+ZgsHnp+K/f8ajUTxmZTPDKdooJ0ikfjRkm8AAAVrElEQVRmUJCdgs/nuF2qiEjEUkgTkbNWOSGPe26fw5IVVVQdaWZr1TF6QqsUJCb4KMpPp2hkBsUF6RSNTGdsXjpJiXEuVy0iEhkU0kTknORnp3DHwkkAdHX7OVTXSnVNC/trmqk+2sKqrUd5c8NBABxg5IjUkz1uRQUZFI9MJystEcdRr5uISF8KaSIyZBLifZSMyqBkVAYwGoBAIEB9UwfVR1vYX9PC/qPN7DnUxOptNSdfl5maEAxtJ3vdMhg1IoU4n6bNikjsUkgTkbByHIe8rBTyslKYOTH/5Pa2ji6qa1pCvW4tVB9t4dW11XT3BIdLE+J9jMlLC/W6ZYR63tJJSdKfLRGJDfprJyKuSE1OwBTnYIpzTm7r7vFz5FhbqNetmf1HW1i/o463N314T7aC7JRQr1s6xaHh0pyMJA2XikjUUUgTEc+Ij/MxNj+dsfnpXMAoIDhc2tjSyf6jzcEet5oWqo82s35HLb0riaYlx5+8qrS3x60wL434OA2XikjkUkgTEU9zHIecjCRyMpKYUZ53cntHZzcHalupDoW3/UdbeHPDQTq7/QDE+RzG5KVRFBou7b3CNC05wa0fRURkUBTSRCQiJSfGUz4mi/IxWSe3+f0Bjja0sf9oy8krTD/Yc4wV7x85eUxuZtLJq0qLCjIoGplOflayhktFxHMU0kQkavh8DqNz0xidm8b5k0ee3H68tZPq0C1BeodMN+2uIxAaL01Jigve060gg1lTRjFhdLquLBUR1ymkiUjUy0pLJKssl6lluSe3dXb1cLCulf1Hm09eYbr8g8O8tv4AI3NSWDS/lHmTR2nVBBFxjUKaiMSkxIQ4ykZnUjY68+Q2fyDAnqOtPLZsKw89v40lK/exeH4pcyeNVFgTkWGnkCYiEuJzHC6YNppxI9NYb2t5dsVeHliylSUrq7hhfhlzKgoU1kRk2CikiYj043McZlcUcJ7JZ52t5bnle/nlc1tCYa2U2RUF+HShgYiEmUKaiMjH8DkOcyoKmGXyWbu9hmeX7+X+Z7cwZmUVi+eXcZ7JV1iTmOIPBDhU24qtbiQpOYHxo9IZnZvmdllRSyFNROQMfI7D3EkjmW0KWL39KEtWVPH/nvmAsfnpLF5QysyJCmsSnfyBAAdqWrD7G7HVjeyobqSlveuUY0aOSGVmeR6VE/IoH5OlKQFDSCFNRGSAfD6HeZNHMbdiJKu2HeW5FVX8/OkPKC5I54YFZcyckKf7rUlE8/sD7K9pDoay/Y3sPNBIa0c3AHlZyVSW52GKszFF2eTlZfD66io27qzjlbXVvLh6P+kpCcwoz6WyPJ+pZSNISoxz+SeKbE6g90ZBkaUU2Ftf34LfH5H1D7v8/Axqa5vdLkP6Ubt4z2DapMfvZ9XWYFiraWineGQ6ixeUUVmusDbU9FkJjx6/n31HWrDVDSdDWfuJHgAKclKoKM7GFOVgirMZkZl8ymv7tkn7iW4+2HuMDTtr2byrnrYT3STE+5hckkPlhDxmlOeRnZ407D+fV/h8Drm56QBlQNVAX6eQFiP0B86b1C7eczZt0uP3896W4DBoTWM7JaMyWLygjBnjcxXWhog+K0Oju8dP1ZFm7P4GbHUjOw8c50RnMJSNGpFKRXE2E0PBLCfj9KHq49qku8fPzgPH2bCzlo0766g73gHAuMJMKsvzmDkhj8K8tJj6bCikyWnpD5w3qV2851zapLvHz7tbjrBkRRV1xzsoG53B4gXjmDZuREz9gxQO+qycna5uP3sPNwXnk+1vYNfBJk50BUNZYV7ayaFLU5RN1iB7ugbSJoFAgIO1rWzYVcfGnXXsPdwEQEF2CpUT8qgsz2NCUVbUr/ChkCanpT9w3qR28Z6haJPuHj8rPwiGtfqmDsYVZnLjgjKmlCmsnS19Vgamq7uHPYeaTk70333wOJ3dfgDG5qdhinMwRcHesszUxHN6r7Npk4bmE2zaHQxsW6sa6O7xk5Ycz/TxucyckM+UshGkJEXfdHmFNDkt/YHzJrWL9wxlm3T3+Fn+/mGWrqyivukE48dkcuOCcUwuzVFYGyR9Vj5aZ1cPuw8ex1YHJ/rvPtREd48fBygqSA+GsuJsJhZlk56SMKTvfa5t0tHZzZa9x9i4s45Nu+tpae8iPs6hoiQndLVo/hmHXCOFJ0OaMeYe4NOhp0uttd/st98AvwRygCPAZ621DQM4dSkKaYOiP3DepHbxnnC0SXePn3c2H+b5lVU0NJ+gfGwWNy4oY1KJwtpA6bMSdKKzh10Hj5+c6L/nUBM9/gCOA8UjM05O9J9QlEVa8tCGsv6Gsk16/H52H2xiw85aNuyso6ahHYCSURnMDA2LFhWkR+znxXMhzRhzJXAvcBkQAF4E/tta+3RovwNsB/63tfZFY8y/A4619lsDOH0pCmmDoj9w3qR28Z5wtklXt593Nh9i6bv7aGg+wcSibG5cUEZFSU5Y3i+axOpnpf1EdzCU7W/EVjdQdbiZHn8An+NQMioDU5xNRXE25WOySU0e3mHCcLVJIBDgcH1b8MKDXXXsOdhEAMjNTKZyQvDCg4lF2cTHRc48trMNaeFs0cPA1621nQDGmG1AcZ/95wGt1toXQ89/AGSHsR4REVclxPu4/LyxXDR9NG9vOszSd6v40e83UFGczeIFZZhihbVY19bRzc4DjaHhywb2HWnBHwgQ53MoHZ3BNXOLqSjOZvyYrKicuwXgOA6FeWkU5qWx8IJSjrd2sil04cHbmw7x2roDpCQF57FVlucxbVzusAfU4TIsc9KMMROAFcB8a+3O0LbPAF8gGOZmAtuAu6y1xwZwylJgb3iqFREZHp1dPbz4XhVPvraThuYTTC/P43PXVDBlXK7bpckwaWnrZMueej7YU88Hu+vYc/A4/gDExzlMLM5h6vg8po3PpaJkBMlRGsoGo6Ozm407alm95Qirtx7heEsncT6HaePzOH/qKOZOGUVBTqrbZZ6ON4Y7exljpgBLgXustY/22f554EHgYmvtWmPMvwBF1trbBnDaUjTcOSixOlTgdWoX73GjTTq7enhz4yGWvbePptZOJpfmcOOCcZSPzRrWOrwsGj4rgUCAlvYudlQH55Tt2N9IdU0LASA+zsf4wszgLTGKcxhfmEligrfv1u92m/j9AfYcamLDruD92A7XtwFQXJAeGhbNp3ikN+axeXG4E2PMfODPwN9ba5/ot/sIsNNauzb0/PfAk+GsR0TEixIT4rh6ThGXVBby5oaDvPDePn7w23VMKRvBjQvKGD9GYW2g/P4A3T3+0NeHj7t6AvT0+Onq8dPT89HHnHzc7afbHwh9D23vv637Y157yrZTt/f0+OntVkiM9zF+TFZomDubcYWZJMR7O5R5jc/nUD42i/KxWdx8aTlHjrWxcWcdG3bWsmRlFc+tqCInIykY2MrzMMU5JMRHzjw2CO+FA0XAeuAz1trXP2J/CrAbuNZau8kY8y1gqrX21gGcvhT1pA2K2//jkY+mdvEeL7TJic4e3thwkBdW7aO5rYup40Zw44JxjCvMdLWu4dDR2U1tYwc1De3UNoa+jrcTwKGtveuUoBX8/mEA6+4J4B/if9McID7eR3ycj/g4p9/3/o8/7pjg87g4HylJcZSPyaJsdGZETXz/KF74rHycprZONu+qZ+OuOj7YW09nl5/kxDimjstl5oQ8po/PDfvVr3158erOnwF3EAxive4HbgC+GxriPB/4LyANOADcaq2tGcDpS1FIGxQvf5himdrFe7zUJh2d3by+/iAvrtpPS3sX08fnsnhBGWWjIzesBQIBmlo7qWlsPyWI1TS2U9vQTlNb1ynHpyXHk5eVQmZ6EgG//7QhKS7OIeGU7z4S4n3E+ZzQ99Dx8T7ifb3ffaEQ1uc1oUAVH+dE/Z3wz4WXPiun09nVw7Z9DWzYWcemXXUcb+3E5zhMLMqickI+MyfkkZ+dEtYaPBfSwqwUhbRBiZQPU6xRu3iPF9uk/UQ3r68/wIur9tPa0U1leR6LF5RRMirD7dI+UnePn/rjHR8dxBrb6ezynzzWAUZkJpGfnUJ+dgoFOad+7+3t8GK7xLpIbBN/IMDew01s3Bm8WvRgXSsAt19XwUXTC8P2vgppclqR+GGKBWoX7/Fym7Sf6ObVdQd4eXUwrM2cEAxrxSOHP6y1dXSfErx6w1hNQzvHmjvo+09LYrzvZAjrG8Dys5PJy0oZ0DwhL7dLrIqGNqlpaGNrVQOTS3PCelWoJy8cEBGRoZOSFM+iC0u54ryxvLqumpdXV/O9R9Zw3sR8Fi8oo6ggfcjeyx8I0Nh84iODWG1jBy3tpw5LZqQmUJCdwoSiLPKzRvUJYilkpyd64go7kf4KclI9fcsOhTQRkQiTmhzPDfPLuHLWWF5Ze4CX11Szfkcts0w+i+eXMXaAYa2ruyc4Sb93gn7Dh4GstrGD7p4PhyV9jkNuVhIF2SnMriggPzuZgj69Y9F6Y1URN+lTJSISoVKTE1i8oIwrZ4/l5dXVvLK2mnW2ltkVBSyeX0phXhqtHd3UNLRT09hGbWPHKUGssfkEfSeMJCXGUZCdQmFuGjPG55GfkxIMYjkpjMhIivirEUUijUKaiEiES0tO4KaLx3HVnCJeXrOfV9YeYN32GpKT4mk/0X3KsVnpiRRkpzC5JCfYC9YniGWkJGhYUsRDFNJERKJEekoCn7x4PFfPKeb1dQdoaus8GcAKslPIy04hyeN3sReRDymkiYhEmfSUBG5YUOZ2GSJyjjTBQERERMSDFNJEREREPEghTURERMSDFNJEREREPEghTURERMSDFNJEREREPEghTURERMSDFNJEREREPEghTURERMSDInXFgTgAn09rzA2Gfl/epHbxHrWJN6ldvEdtMjB9fk+DWpfNCQQCQ19N+C0A3nG7CBEREZFBuAhYPtCDIzWkJQFzgMNAj8u1iIiIiJxOHDAaWAOcGOiLIjWkiYiIiEQ1XTggIiIi4kEKaSIiIiIepJAmIiIi4kEKaSIiIiIepJAmIiIi4kEKaSIiIiIepJAmIiIi4kGRuiyUDIIx5h7g06GnS62133SzHvmQMebHQJ619ja3axEwxiwC7gHSgJettf/b5ZJinjHmFuAfQk9fsNbe7WY9scwYkwmsBK631lYZY64EfgKkAH+w1v6TqwVGIfWkRbnQh+hqYCZQCcwyxtzkblUCYIy5AviC23VIkDFmHHA/cCMwHTjPGHOtu1XFNmNMKvCfwCXADOCi0N80GWbGmPMJLmc0MfQ8BfgVsBiYBMzR52XoKaRFv8PA1621ndbaLmAbUOxyTTHPGDMC+D7wA7drkZNuItgbcCD0WfkMsMrlmmJdHMF/p9KAhNBXu6sVxa47gb8DDoWezwV2Wmv3Wmu7gd8CN7tVXLTScGeUs9Zu6X1sjJlAcNhzvnsVScgvge8ARW4XIieVA53GmOcI/kfmeeCf3S0ptllrm40x/wxsB9qAtwgOt8kws9Z+CcAY07upkGAnQK/DwNhhLivqqSctRhhjpgCvAN+w1u50u55YZoz5ElBtrX3N7VrkFPHAlcAXgQuA89FwtKuMMdOBO4ASgqGgB9CcNG/wAX0X/3YAv0u1RC2FtBhgjJkPvAZ821r7qNv1CJ8BrjbGbATuA24wxvzU5ZoEjgCvWmtrrbXtwNMEh3TEPdcAr1lra6y1J4BfA5e6WpH0OgCM7vN8FB8OhcoQ0XBnlDPGFAHPAJ+x1r7udj0C1tqreh8bY24DLrXW/h/3KpKQ54FHjTHZQDNwLcHPjrhnE/AjY0waweHORcAad0uSkFWAMcaUA3uBzxG8kECGkHrSot/dQDLwE2PMxtDX/3S7KBGvsdauAn5E8Aq2rcA+4BFXi4px1tqXgd8D64DNBC8c+HdXixIArLUdwG3Anwl+XrYDT7pZUzRyAoHAmY8SERERkWGlnjQRERERD1JIExEREfEghTQRERERD1JIExEREfEghTQRERERD1JIExEREfEg3cxWRFxjjJkH/BuQS/A/jdXA3X3XnP2Y1/0a+MBa++PQyg2XElyi5mlr7eX9ji0DLFBmrT3Yb9/7wHettU8PouaNBG9A3HiaY94E/tta+2S/7aWhutMH+n4iErvUkyYirjDGJBG8y//XrbXTrbVTgceBF4wxcQM9j7W2MhSYcviIZZystXsJrlt7W7/3vwDIAp4bTN193k9EJKzUkyYibkkFsoG+vUqPA01AnDHmIuCHBO/8XwG0A7dZa7f1PYkxJgDkE1wdICXU0zXLWtvT57CfA/9pjPmBtbb3Dt5fBu631vYYYyaGjskguB7hRoJLqXUYY04AzwIzgM8TXJYoP1TPL4AJBHsCm4HPWWtt6Pw3GWO+Hfo5H7fWfr//L8AY8x3grwj+h7kK+Iq19pAx5pPAPxFcsLoH+Ia19u2B/FJFJHqoJ01EXGGtbQC+CbxojNljjHkMuJ3gIuedocNmA/9lrZ1OMIQ9dppT3g60h3q6evrtexFwgEsAjDFZwGLgodD+O4FHrbXzgHKgDFgY2pcILLHWGmvt2j7nvBZotNZeYK2dSDC8fbXP/kxgXujrFmPMtX0LMsb8DTANmGutrQSW9ann/xIMbLOBf0aLiovEJIU0EXGNtfYnwEjgfwGHgW8BG0IhCmCTtfad0ONfATONMbln8T5+4H7gjtCmW4Cl1tqa0PNvAbXGmG8S7B0r5NQevnfoJzTf7NfGmLuMMT8jGKT6vuYha223tbaJ4JqGV/U7xfUEA9zaUO/fXYAJ7XsCeNoY8xDBYdwfDfZnFpHIp5AmIq4wxsw3xnzDWttsrX3eWvtNYArBCwB6A013n5c4oe/9e8kG6lfAQmNMJsGes5/32fd7gsOf+4CfAuv7vB9Ay0fU/7fAw0Ab8LvQOfq+pm+dPqCr3ynigB+Gev4qCfYazgew1n4HWACsJTiXTkOdIjFIIU1E3FIL/JMxZkGfbaMJTuZ/P/S80hgzPfT4y8DK00za7yY4l835qJ3W2npgCXAv0GOtfa/P7muA+6y1fwg9P59giDqda4BfW2sfJnj16KJ+r/kbY4xjjMkBPk1wyLWvl4AvhUIjwH3AY8aYeGNMFZBqrb0f+AowPXShhYjEEF04ICKusNbuMMbcCPzAGDMW6ACOA7dba60xZjRwBPh+6NYVNcCtpznlYWA1sMUYc1EolPX3c2AV8MV+2/+R4PBia6iGtwjOTTudHwMPGGO+SLAH7V2Cc8x6HQfWASkE59W9Efo5ej0EjAHeC138sJ/ghRHdxpi/B35njOkiePHAHdbaE2eoR0SijBMIBM58lIjIMDPGXErwXmNT3a5FRMQNGu4UERER8SD1pImIiIh4kHrSRERERDxIIU1ERETEgxTSRERERDxIIU1ERETEgxTSRERERDzo/wcItz6bBaMeFwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Describe the effect of m, the number of variables considered at each split, on the error rate obtained.\n", "\n", "results = []\n", "for max_features in np.arange(1, X.shape[1]):\n", "\n", " tree_count = 100\n", " \n", " regr = RandomForestRegressor(max_features=max_features, random_state=0, n_estimators=tree_count)\n", " regr.fit(X[train], y[train])\n", " y_hat = regr.predict(X[~train])\n", " \n", " mse = metrics.mean_squared_error(y[~train], y_hat)\n", " rmse = np.sqrt(mse)\n", " \n", " results += [[max_features, mse]]\n", "\n", "plt.figure(figsize=(10,5))\n", "sns.lineplot(x='Split Variables', y='MSE', data=pd.DataFrame(results, columns=['Split Variables', 'MSE']));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 9. This problem involves the OJ data set which is part of the ISLR package.\n", "\n", "### (a) Create a training set containing a random sample of 800 observations, and a test set containing the remaining observations." ] }, { "cell_type": "code", "execution_count": 251, "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", "
PurchaseWeekofPurchaseStoreIDPriceCHPriceMMDiscCHDiscMMSpecialCHSpecialMMLoyalCHSalePriceMMSalePriceCHPriceDiffStore7PctDiscMMPctDiscCHListPriceDiffSTORE
0CH23711.751.990.000.0000.5000001.991.750.24No0.0000000.0000000.241
1CH23911.751.990.000.3010.6000001.691.75-0.06No0.1507540.0000000.241
2CH24511.862.090.170.0000.6800002.091.690.40No0.0000000.0913980.231
3MM22711.691.690.000.0000.4000001.691.690.00No0.0000000.0000000.001
4CH22871.691.690.000.0000.9565351.691.690.00Yes0.0000000.0000000.000
\n", "
" ], "text/plain": [ " Purchase WeekofPurchase StoreID PriceCH PriceMM DiscCH DiscMM \\\n", "0 CH 237 1 1.75 1.99 0.00 0.0 \n", "1 CH 239 1 1.75 1.99 0.00 0.3 \n", "2 CH 245 1 1.86 2.09 0.17 0.0 \n", "3 MM 227 1 1.69 1.69 0.00 0.0 \n", "4 CH 228 7 1.69 1.69 0.00 0.0 \n", "\n", " SpecialCH SpecialMM LoyalCH SalePriceMM SalePriceCH PriceDiff Store7 \\\n", "0 0 0 0.500000 1.99 1.75 0.24 No \n", "1 0 1 0.600000 1.69 1.75 -0.06 No \n", "2 0 0 0.680000 2.09 1.69 0.40 No \n", "3 0 0 0.400000 1.69 1.69 0.00 No \n", "4 0 0 0.956535 1.69 1.69 0.00 Yes \n", "\n", " PctDiscMM PctDiscCH ListPriceDiff STORE \n", "0 0.000000 0.000000 0.24 1 \n", "1 0.150754 0.000000 0.24 1 \n", "2 0.000000 0.091398 0.23 1 \n", "3 0.000000 0.000000 0.00 1 \n", "4 0.000000 0.000000 0.00 0 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "oj_df = pd.read_csv('./data/oj.csv')\n", "oj_df = oj_df.drop(oj_df.columns[0], axis=1)\n", "display(oj_df.head())\n", "\n", "# Index for Training set of 800\n", "np.random.seed(1)\n", "train_sample = np.random.choice(np.arange(len(oj_df)), size=800, replace=False)\n", "train = np.asarray([(i in train_sample) for i in oj_df.index])\n", "\n", "#oj_df.Purchase = oj_df.Purchase.map({'CH' : 1, 'MM': 0})\n", "#oj_df.Store7 = oj_df.Store7.map({'Yes' : 1, 'No': 0})\n", "#oj_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (b) Fit a tree to the training data, with Purchase as the response and the other variables as predictors. Use the summary() function to produce summary statistics about the tree, and describe the results obtained. What is the training error rate? How many terminal nodes does the tree have?" ] }, { "cell_type": "code", "execution_count": 286, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "training accuracy: 0.99\n", "leaf nodes: 6\n" ] } ], "source": [ "f = 'C(Purchase) ~ ' + ' + '.join(oj_df.columns.drop(['Purchase']))\n", "y, X = pt.dmatrices(f, oj_df)\n", "y = y[:, 0]\n", "\n", "# Fit Sklearns tree classifier\n", "clf = tree.DecisionTreeClassifier().fit(X[train], y[train])\n", "\n", "print('training accuracy: {}'.format(np.around(clf.score(X[train], y[train]), 3)))\n", "print('leaf nodes: 6')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (c) Type in the name of the tree object in order to get a detailed text output. Pick one of the terminal nodes, and interpret the information displayed.\n", "\n", "### (d) Create a plot of the tree, and interpret the results." ] }, { "cell_type": "code", "execution_count": 287, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "Tree\n", "\n", "\n", "\n", "0\n", "\n", "LoyalCH <= 0.482\n", "gini = 0.479\n", "samples = 800\n", "value = [319, 481]\n", "\n", "\n", "\n", "1\n", "\n", "PriceDiff <= 0.31\n", "gini = 0.338\n", "samples = 297\n", "value = [233, 64]\n", "\n", "\n", "\n", "0->1\n", "\n", "\n", "True\n", "\n", "\n", "\n", "154\n", "\n", "LoyalCH <= 0.765\n", "gini = 0.283\n", "samples = 503\n", "value = [86, 417]\n", "\n", "\n", "\n", "0->154\n", "\n", "\n", "False\n", "\n", "\n", "\n", "2\n", "\n", "StoreID <= 3.5\n", "gini = 0.266\n", "samples = 234\n", "value = [197, 37]\n", "\n", "\n", "\n", "1->2\n", "\n", "\n", "\n", "\n", "\n", "107\n", "\n", "LoyalCH <= 0.173\n", "gini = 0.49\n", "samples = 63\n", "value = [36, 27]\n", "\n", "\n", "\n", "1->107\n", "\n", "\n", "\n", "\n", "\n", "3\n", "\n", "LoyalCH <= 0.434\n", "gini = 0.19\n", "samples = 179\n", "value = [160, 19]\n", "\n", "\n", "\n", "2->3\n", "\n", "\n", "\n", "\n", "\n", "76\n", "\n", "SalePriceCH <= 1.72\n", "gini = 0.44\n", "samples = 55\n", "value = [37, 18]\n", "\n", "\n", "\n", "2->76\n", "\n", "\n", "\n", "\n", "\n", "4\n", "\n", "LoyalCH <= 0.035\n", "gini = 0.156\n", "samples = 164\n", "value = [150, 14]\n", "\n", "\n", "\n", "3->4\n", "\n", "\n", "\n", "\n", "\n", "65\n", "\n", "LoyalCH <= 0.437\n", "gini = 0.444\n", "samples = 15\n", "value = [10, 5]\n", "\n", "\n", "\n", "3->65\n", "\n", "\n", "\n", "\n", "\n", "5\n", "\n", "gini = 0.0\n", "samples = 45\n", "value = [45, 0]\n", "\n", "\n", "\n", "4->5\n", "\n", "\n", "\n", "\n", "\n", "6\n", "\n", "LoyalCH <= 0.039\n", "gini = 0.208\n", "samples = 119\n", "value = [105, 14]\n", "\n", "\n", "\n", "4->6\n", "\n", "\n", "\n", "\n", "\n", "7\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "6->7\n", "\n", "\n", "\n", "\n", "\n", "8\n", "\n", "PriceCH <= 1.755\n", "gini = 0.196\n", "samples = 118\n", "value = [105, 13]\n", "\n", "\n", "\n", "6->8\n", "\n", "\n", "\n", "\n", "\n", "9\n", "\n", "gini = 0.0\n", "samples = 32\n", "value = [32, 0]\n", "\n", "\n", "\n", "8->9\n", "\n", "\n", "\n", "\n", "\n", "10\n", "\n", "DiscCH <= 0.05\n", "gini = 0.257\n", "samples = 86\n", "value = [73, 13]\n", "\n", "\n", "\n", "8->10\n", "\n", "\n", "\n", "\n", "\n", "11\n", "\n", "PctDiscMM <= 0.187\n", "gini = 0.23\n", "samples = 83\n", "value = [72, 11]\n", "\n", "\n", "\n", "10->11\n", "\n", "\n", "\n", "\n", "\n", "62\n", "\n", "DiscCH <= 0.15\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "10->62\n", "\n", "\n", "\n", "\n", "\n", "12\n", "\n", "ListPriceDiff <= 0.215\n", "gini = 0.282\n", "samples = 59\n", "value = [49, 10]\n", "\n", "\n", "\n", "11->12\n", "\n", "\n", "\n", "\n", "\n", "57\n", "\n", "PctDiscMM <= 0.384\n", "gini = 0.08\n", "samples = 24\n", "value = [23, 1]\n", "\n", "\n", "\n", "11->57\n", "\n", "\n", "\n", "\n", "\n", "13\n", "\n", "LoyalCH <= 0.382\n", "gini = 0.159\n", "samples = 23\n", "value = [21, 2]\n", "\n", "\n", "\n", "12->13\n", "\n", "\n", "\n", "\n", "\n", "22\n", "\n", "WeekofPurchase <= 263.0\n", "gini = 0.346\n", "samples = 36\n", "value = [28, 8]\n", "\n", "\n", "\n", "12->22\n", "\n", "\n", "\n", "\n", "\n", "14\n", "\n", "SalePriceMM <= 1.74\n", "gini = 0.095\n", "samples = 20\n", "value = [19, 1]\n", "\n", "\n", "\n", "13->14\n", "\n", "\n", "\n", "\n", "\n", "19\n", "\n", "WeekofPurchase <= 230.0\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "13->19\n", "\n", "\n", "\n", "\n", "\n", "15\n", "\n", "LoyalCH <= 0.162\n", "gini = 0.32\n", "samples = 5\n", "value = [4, 1]\n", "\n", "\n", "\n", "14->15\n", "\n", "\n", "\n", "\n", "\n", "18\n", "\n", "gini = 0.0\n", "samples = 15\n", "value = [15, 0]\n", "\n", "\n", "\n", "14->18\n", "\n", "\n", "\n", "\n", "\n", "16\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "15->16\n", "\n", "\n", "\n", "\n", "\n", "17\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [4, 0]\n", "\n", "\n", "\n", "15->17\n", "\n", "\n", "\n", "\n", "\n", "20\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "19->20\n", "\n", "\n", "\n", "\n", "\n", "21\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "19->21\n", "\n", "\n", "\n", "\n", "\n", "23\n", "\n", "LoyalCH <= 0.065\n", "gini = 0.305\n", "samples = 32\n", "value = [26, 6]\n", "\n", "\n", "\n", "22->23\n", "\n", "\n", "\n", "\n", "\n", "54\n", "\n", "LoyalCH <= 0.346\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "22->54\n", "\n", "\n", "\n", "\n", "\n", "24\n", "\n", "PriceMM <= 2.19\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "23->24\n", "\n", "\n", "\n", "\n", "\n", "27\n", "\n", "LoyalCH <= 0.118\n", "gini = 0.278\n", "samples = 30\n", "value = [25, 5]\n", "\n", "\n", "\n", "23->27\n", "\n", "\n", "\n", "\n", "\n", "25\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "24->25\n", "\n", "\n", "\n", "\n", "\n", "26\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "24->26\n", "\n", "\n", "\n", "\n", "\n", "28\n", "\n", "gini = 0.0\n", "samples = 6\n", "value = [6, 0]\n", "\n", "\n", "\n", "27->28\n", "\n", "\n", "\n", "\n", "\n", "29\n", "\n", "LoyalCH <= 0.138\n", "gini = 0.33\n", "samples = 24\n", "value = [19, 5]\n", "\n", "\n", "\n", "27->29\n", "\n", "\n", "\n", "\n", "\n", "30\n", "\n", "SalePriceCH <= 1.89\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "29->30\n", "\n", "\n", "\n", "\n", "\n", "33\n", "\n", "ListPriceDiff <= 0.27\n", "gini = 0.298\n", "samples = 22\n", "value = [18, 4]\n", "\n", "\n", "\n", "29->33\n", "\n", "\n", "\n", "\n", "\n", "31\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "30->31\n", "\n", "\n", "\n", "\n", "\n", "32\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "30->32\n", "\n", "\n", "\n", "\n", "\n", "34\n", "\n", "WeekofPurchase <= 246.5\n", "gini = 0.153\n", "samples = 12\n", "value = [11, 1]\n", "\n", "\n", "\n", "33->34\n", "\n", "\n", "\n", "\n", "\n", "41\n", "\n", "LoyalCH <= 0.182\n", "gini = 0.42\n", "samples = 10\n", "value = [7, 3]\n", "\n", "\n", "\n", "33->41\n", "\n", "\n", "\n", "\n", "\n", "35\n", "\n", "gini = 0.0\n", "samples = 7\n", "value = [7, 0]\n", "\n", "\n", "\n", "34->35\n", "\n", "\n", "\n", "\n", "\n", "36\n", "\n", "StoreID <= 2.0\n", "gini = 0.32\n", "samples = 5\n", "value = [4, 1]\n", "\n", "\n", "\n", "34->36\n", "\n", "\n", "\n", "\n", "\n", "37\n", "\n", "SalePriceMM <= 2.04\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "36->37\n", "\n", "\n", "\n", "\n", "\n", "40\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [3, 0]\n", "\n", "\n", "\n", "36->40\n", "\n", "\n", "\n", "\n", "\n", "38\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "37->38\n", "\n", "\n", "\n", "\n", "\n", "39\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "37->39\n", "\n", "\n", "\n", "\n", "\n", "42\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "41->42\n", "\n", "\n", "\n", "\n", "\n", "43\n", "\n", "LoyalCH <= 0.228\n", "gini = 0.469\n", "samples = 8\n", "value = [5, 3]\n", "\n", "\n", "\n", "41->43\n", "\n", "\n", "\n", "\n", "\n", "44\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "43->44\n", "\n", "\n", "\n", "\n", "\n", "45\n", "\n", "PriceMM <= 2.235\n", "gini = 0.408\n", "samples = 7\n", "value = [5, 2]\n", "\n", "\n", "\n", "43->45\n", "\n", "\n", "\n", "\n", "\n", "46\n", "\n", "LoyalCH <= 0.278\n", "gini = 0.48\n", "samples = 5\n", "value = [3, 2]\n", "\n", "\n", "\n", "45->46\n", "\n", "\n", "\n", "\n", "\n", "53\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "45->53\n", "\n", "\n", "\n", "\n", "\n", "47\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "46->47\n", "\n", "\n", "\n", "\n", "\n", "48\n", "\n", "ListPriceDiff <= 0.31\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "46->48\n", "\n", "\n", "\n", "\n", "\n", "49\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "48->49\n", "\n", "\n", "\n", "\n", "\n", "50\n", "\n", "LoyalCH <= 0.36\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "48->50\n", "\n", "\n", "\n", "\n", "\n", "51\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "50->51\n", "\n", "\n", "\n", "\n", "\n", "52\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "50->52\n", "\n", "\n", "\n", "\n", "\n", "55\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "54->55\n", "\n", "\n", "\n", "\n", "\n", "56\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "54->56\n", "\n", "\n", "\n", "\n", "\n", "58\n", "\n", "gini = 0.0\n", "samples = 19\n", "value = [19, 0]\n", "\n", "\n", "\n", "57->58\n", "\n", "\n", "\n", "\n", "\n", "59\n", "\n", "LoyalCH <= 0.296\n", "gini = 0.32\n", "samples = 5\n", "value = [4, 1]\n", "\n", "\n", "\n", "57->59\n", "\n", "\n", "\n", "\n", "\n", "60\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "59->60\n", "\n", "\n", "\n", "\n", "\n", "61\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [4, 0]\n", "\n", "\n", "\n", "59->61\n", "\n", "\n", "\n", "\n", "\n", "63\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "62->63\n", "\n", "\n", "\n", "\n", "\n", "64\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "62->64\n", "\n", "\n", "\n", "\n", "\n", "66\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "65->66\n", "\n", "\n", "\n", "\n", "\n", "67\n", "\n", "SalePriceMM <= 2.105\n", "gini = 0.355\n", "samples = 13\n", "value = [10, 3]\n", "\n", "\n", "\n", "65->67\n", "\n", "\n", "\n", "\n", "\n", "68\n", "\n", "SalePriceMM <= 1.89\n", "gini = 0.165\n", "samples = 11\n", "value = [10, 1]\n", "\n", "\n", "\n", "67->68\n", "\n", "\n", "\n", "\n", "\n", "75\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "67->75\n", "\n", "\n", "\n", "\n", "\n", "69\n", "\n", "gini = 0.0\n", "samples = 7\n", "value = [7, 0]\n", "\n", "\n", "\n", "68->69\n", "\n", "\n", "\n", "\n", "\n", "70\n", "\n", "ListPriceDiff <= 0.27\n", "gini = 0.375\n", "samples = 4\n", "value = [3, 1]\n", "\n", "\n", "\n", "68->70\n", "\n", "\n", "\n", "\n", "\n", "71\n", "\n", "StoreID <= 1.5\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "70->71\n", "\n", "\n", "\n", "\n", "\n", "74\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "70->74\n", "\n", "\n", "\n", "\n", "\n", "72\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "71->72\n", "\n", "\n", "\n", "\n", "\n", "73\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "71->73\n", "\n", "\n", "\n", "\n", "\n", "77\n", "\n", "PriceDiff <= 0.25\n", "gini = 0.32\n", "samples = 10\n", "value = [2, 8]\n", "\n", "\n", "\n", "76->77\n", "\n", "\n", "\n", "\n", "\n", "84\n", "\n", "PriceDiff <= 0.05\n", "gini = 0.346\n", "samples = 45\n", "value = [35, 10]\n", "\n", "\n", "\n", "76->84\n", "\n", "\n", "\n", "\n", "\n", "78\n", "\n", "WeekofPurchase <= 253.0\n", "gini = 0.198\n", "samples = 9\n", "value = [1, 8]\n", "\n", "\n", "\n", "77->78\n", "\n", "\n", "\n", "\n", "\n", "83\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "77->83\n", "\n", "\n", "\n", "\n", "\n", "79\n", "\n", "gini = 0.0\n", "samples = 6\n", "value = [0, 6]\n", "\n", "\n", "\n", "78->79\n", "\n", "\n", "\n", "\n", "\n", "80\n", "\n", "LoyalCH <= 0.267\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "78->80\n", "\n", "\n", "\n", "\n", "\n", "81\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "80->81\n", "\n", "\n", "\n", "\n", "\n", "82\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "80->82\n", "\n", "\n", "\n", "\n", "\n", "85\n", "\n", "PctDiscCH <= 0.025\n", "gini = 0.18\n", "samples = 30\n", "value = [27, 3]\n", "\n", "\n", "\n", "84->85\n", "\n", "\n", "\n", "\n", "\n", "96\n", "\n", "WeekofPurchase <= 248.0\n", "gini = 0.498\n", "samples = 15\n", "value = [8, 7]\n", "\n", "\n", "\n", "84->96\n", "\n", "\n", "\n", "\n", "\n", "86\n", "\n", "WeekofPurchase <= 235.5\n", "gini = 0.128\n", "samples = 29\n", "value = [27, 2]\n", "\n", "\n", "\n", "85->86\n", "\n", "\n", "\n", "\n", "\n", "95\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "85->95\n", "\n", "\n", "\n", "\n", "\n", "87\n", "\n", "LoyalCH <= 0.145\n", "gini = 0.346\n", "samples = 9\n", "value = [7, 2]\n", "\n", "\n", "\n", "86->87\n", "\n", "\n", "\n", "\n", "\n", "94\n", "\n", "gini = 0.0\n", "samples = 20\n", "value = [20, 0]\n", "\n", "\n", "\n", "86->94\n", "\n", "\n", "\n", "\n", "\n", "88\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "87->88\n", "\n", "\n", "\n", "\n", "\n", "89\n", "\n", "SpecialCH <= 0.5\n", "gini = 0.219\n", "samples = 8\n", "value = [7, 1]\n", "\n", "\n", "\n", "87->89\n", "\n", "\n", "\n", "\n", "\n", "90\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [4, 0]\n", "\n", "\n", "\n", "89->90\n", "\n", "\n", "\n", "\n", "\n", "91\n", "\n", "LoyalCH <= 0.314\n", "gini = 0.375\n", "samples = 4\n", "value = [3, 1]\n", "\n", "\n", "\n", "89->91\n", "\n", "\n", "\n", "\n", "\n", "92\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "91->92\n", "\n", "\n", "\n", "\n", "\n", "93\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "91->93\n", "\n", "\n", "\n", "\n", "\n", "97\n", "\n", "ListPriceDiff <= 0.27\n", "gini = 0.278\n", "samples = 6\n", "value = [5, 1]\n", "\n", "\n", "\n", "96->97\n", "\n", "\n", "\n", "\n", "\n", "100\n", "\n", "WeekofPurchase <= 266.0\n", "gini = 0.444\n", "samples = 9\n", "value = [3, 6]\n", "\n", "\n", "\n", "96->100\n", "\n", "\n", "\n", "\n", "\n", "98\n", "\n", "gini = 0.0\n", "samples = 5\n", "value = [5, 0]\n", "\n", "\n", "\n", "97->98\n", "\n", "\n", "\n", "\n", "\n", "99\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "97->99\n", "\n", "\n", "\n", "\n", "\n", "101\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [0, 4]\n", "\n", "\n", "\n", "100->101\n", "\n", "\n", "\n", "\n", "\n", "102\n", "\n", "PctDiscCH <= 0.025\n", "gini = 0.48\n", "samples = 5\n", "value = [3, 2]\n", "\n", "\n", "\n", "100->102\n", "\n", "\n", "\n", "\n", "\n", "103\n", "\n", "LoyalCH <= 0.415\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "102->103\n", "\n", "\n", "\n", "\n", "\n", "106\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "102->106\n", "\n", "\n", "\n", "\n", "\n", "104\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "103->104\n", "\n", "\n", "\n", "\n", "\n", "105\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "103->105\n", "\n", "\n", "\n", "\n", "\n", "108\n", "\n", "WeekofPurchase <= 266.5\n", "gini = 0.227\n", "samples = 23\n", "value = [20, 3]\n", "\n", "\n", "\n", "107->108\n", "\n", "\n", "\n", "\n", "\n", "117\n", "\n", "STORE <= 1.5\n", "gini = 0.48\n", "samples = 40\n", "value = [16, 24]\n", "\n", "\n", "\n", "107->117\n", "\n", "\n", "\n", "\n", "\n", "109\n", "\n", "ListPriceDiff <= 0.215\n", "gini = 0.105\n", "samples = 18\n", "value = [17, 1]\n", "\n", "\n", "\n", "108->109\n", "\n", "\n", "\n", "\n", "\n", "114\n", "\n", "WeekofPurchase <= 269.5\n", "gini = 0.48\n", "samples = 5\n", "value = [3, 2]\n", "\n", "\n", "\n", "108->114\n", "\n", "\n", "\n", "\n", "\n", "110\n", "\n", "LoyalCH <= 0.075\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "109->110\n", "\n", "\n", "\n", "\n", "\n", "113\n", "\n", "gini = 0.0\n", "samples = 16\n", "value = [16, 0]\n", "\n", "\n", "\n", "109->113\n", "\n", "\n", "\n", "\n", "\n", "111\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "110->111\n", "\n", "\n", "\n", "\n", "\n", "112\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "110->112\n", "\n", "\n", "\n", "\n", "\n", "115\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "114->115\n", "\n", "\n", "\n", "\n", "\n", "116\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [3, 0]\n", "\n", "\n", "\n", "114->116\n", "\n", "\n", "\n", "\n", "\n", "118\n", "\n", "LoyalCH <= 0.357\n", "gini = 0.403\n", "samples = 25\n", "value = [7, 18]\n", "\n", "\n", "\n", "117->118\n", "\n", "\n", "\n", "\n", "\n", "139\n", "\n", "LoyalCH <= 0.203\n", "gini = 0.48\n", "samples = 15\n", "value = [9, 6]\n", "\n", "\n", "\n", "117->139\n", "\n", "\n", "\n", "\n", "\n", "119\n", "\n", "gini = 0.0\n", "samples = 9\n", "value = [0, 9]\n", "\n", "\n", "\n", "118->119\n", "\n", "\n", "\n", "\n", "\n", "120\n", "\n", "WeekofPurchase <= 252.0\n", "gini = 0.492\n", "samples = 16\n", "value = [7, 9]\n", "\n", "\n", "\n", "118->120\n", "\n", "\n", "\n", "\n", "\n", "121\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3]\n", "\n", "\n", "\n", "120->121\n", "\n", "\n", "\n", "\n", "\n", "122\n", "\n", "WeekofPurchase <= 255.5\n", "gini = 0.497\n", "samples = 13\n", "value = [7, 6]\n", "\n", "\n", "\n", "120->122\n", "\n", "\n", "\n", "\n", "\n", "123\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "122->123\n", "\n", "\n", "\n", "\n", "\n", "124\n", "\n", "LoyalCH <= 0.43\n", "gini = 0.496\n", "samples = 11\n", "value = [5, 6]\n", "\n", "\n", "\n", "122->124\n", "\n", "\n", "\n", "\n", "\n", "125\n", "\n", "LoyalCH <= 0.408\n", "gini = 0.494\n", "samples = 9\n", "value = [5, 4]\n", "\n", "\n", "\n", "124->125\n", "\n", "\n", "\n", "\n", "\n", "138\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "124->138\n", "\n", "\n", "\n", "\n", "\n", "126\n", "\n", "LoyalCH <= 0.361\n", "gini = 0.49\n", "samples = 7\n", "value = [3, 4]\n", "\n", "\n", "\n", "125->126\n", "\n", "\n", "\n", "\n", "\n", "137\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "125->137\n", "\n", "\n", "\n", "\n", "\n", "127\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "126->127\n", "\n", "\n", "\n", "\n", "\n", "128\n", "\n", "LoyalCH <= 0.392\n", "gini = 0.444\n", "samples = 6\n", "value = [2, 4]\n", "\n", "\n", "\n", "126->128\n", "\n", "\n", "\n", "\n", "\n", "129\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "128->129\n", "\n", "\n", "\n", "\n", "\n", "130\n", "\n", "PriceCH <= 1.925\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "128->130\n", "\n", "\n", "\n", "\n", "\n", "131\n", "\n", "DiscCH <= 0.185\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "130->131\n", "\n", "\n", "\n", "\n", "\n", "136\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "130->136\n", "\n", "\n", "\n", "\n", "\n", "132\n", "\n", "WeekofPurchase <= 257.5\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "131->132\n", "\n", "\n", "\n", "\n", "\n", "135\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "131->135\n", "\n", "\n", "\n", "\n", "\n", "133\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "132->133\n", "\n", "\n", "\n", "\n", "\n", "134\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "132->134\n", "\n", "\n", "\n", "\n", "\n", "140\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "139->140\n", "\n", "\n", "\n", "\n", "\n", "141\n", "\n", "WeekofPurchase <= 269.5\n", "gini = 0.426\n", "samples = 13\n", "value = [9, 4]\n", "\n", "\n", "\n", "139->141\n", "\n", "\n", "\n", "\n", "\n", "142\n", "\n", "LoyalCH <= 0.27\n", "gini = 0.32\n", "samples = 10\n", "value = [8, 2]\n", "\n", "\n", "\n", "141->142\n", "\n", "\n", "\n", "\n", "\n", "149\n", "\n", "LoyalCH <= 0.319\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "141->149\n", "\n", "\n", "\n", "\n", "\n", "143\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [3, 0]\n", "\n", "\n", "\n", "142->143\n", "\n", "\n", "\n", "\n", "\n", "144\n", "\n", "LoyalCH <= 0.302\n", "gini = 0.408\n", "samples = 7\n", "value = [5, 2]\n", "\n", "\n", "\n", "142->144\n", "\n", "\n", "\n", "\n", "\n", "145\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "144->145\n", "\n", "\n", "\n", "\n", "\n", "146\n", "\n", "SpecialMM <= 0.5\n", "gini = 0.278\n", "samples = 6\n", "value = [5, 1]\n", "\n", "\n", "\n", "144->146\n", "\n", "\n", "\n", "\n", "\n", "147\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [4, 0]\n", "\n", "\n", "\n", "146->147\n", "\n", "\n", "\n", "\n", "\n", "148\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "146->148\n", "\n", "\n", "\n", "\n", "\n", "150\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "149->150\n", "\n", "\n", "\n", "\n", "\n", "151\n", "\n", "LoyalCH <= 0.335\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "149->151\n", "\n", "\n", "\n", "\n", "\n", "152\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "151->152\n", "\n", "\n", "\n", "\n", "\n", "153\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "151->153\n", "\n", "\n", "\n", "\n", "\n", "155\n", "\n", "PriceDiff <= 0.215\n", "gini = 0.432\n", "samples = 241\n", "value = [76, 165]\n", "\n", "\n", "\n", "154->155\n", "\n", "\n", "\n", "\n", "\n", "280\n", "\n", "PriceDiff <= -0.39\n", "gini = 0.073\n", "samples = 262\n", "value = [10, 252]\n", "\n", "\n", "\n", "154->280\n", "\n", "\n", "\n", "\n", "\n", "156\n", "\n", "ListPriceDiff <= 0.235\n", "gini = 0.499\n", "samples = 115\n", "value = [60, 55]\n", "\n", "\n", "\n", "155->156\n", "\n", "\n", "\n", "\n", "\n", "229\n", "\n", "DiscMM <= 0.03\n", "gini = 0.222\n", "samples = 126\n", "value = [16, 110]\n", "\n", "\n", "\n", "155->229\n", "\n", "\n", "\n", "\n", "\n", "157\n", "\n", "PriceDiff <= 0.05\n", "gini = 0.464\n", "samples = 82\n", "value = [52, 30]\n", "\n", "\n", "\n", "156->157\n", "\n", "\n", "\n", "\n", "\n", "214\n", "\n", "LoyalCH <= 0.512\n", "gini = 0.367\n", "samples = 33\n", "value = [8, 25]\n", "\n", "\n", "\n", "156->214\n", "\n", "\n", "\n", "\n", "\n", "158\n", "\n", "STORE <= 2.5\n", "gini = 0.388\n", "samples = 57\n", "value = [42, 15]\n", "\n", "\n", "\n", "157->158\n", "\n", "\n", "\n", "\n", "\n", "189\n", "\n", "StoreID <= 2.5\n", "gini = 0.48\n", "samples = 25\n", "value = [10, 15]\n", "\n", "\n", "\n", "157->189\n", "\n", "\n", "\n", "\n", "\n", "159\n", "\n", "WeekofPurchase <= 227.5\n", "gini = 0.278\n", "samples = 42\n", "value = [35, 7]\n", "\n", "\n", "\n", "158->159\n", "\n", "\n", "\n", "\n", "\n", "178\n", "\n", "LoyalCH <= 0.632\n", "gini = 0.498\n", "samples = 15\n", "value = [7, 8]\n", "\n", "\n", "\n", "158->178\n", "\n", "\n", "\n", "\n", "\n", "160\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "159->160\n", "\n", "\n", "\n", "\n", "\n", "161\n", "\n", "SalePriceMM <= 1.84\n", "gini = 0.219\n", "samples = 40\n", "value = [35, 5]\n", "\n", "\n", "\n", "159->161\n", "\n", "\n", "\n", "\n", "\n", "162\n", "\n", "LoyalCH <= 0.639\n", "gini = 0.153\n", "samples = 36\n", "value = [33, 3]\n", "\n", "\n", "\n", "161->162\n", "\n", "\n", "\n", "\n", "\n", "171\n", "\n", "WeekofPurchase <= 255.0\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "161->171\n", "\n", "\n", "\n", "\n", "\n", "163\n", "\n", "gini = 0.0\n", "samples = 23\n", "value = [23, 0]\n", "\n", "\n", "\n", "162->163\n", "\n", "\n", "\n", "\n", "\n", "164\n", "\n", "LoyalCH <= 0.672\n", "gini = 0.355\n", "samples = 13\n", "value = [10, 3]\n", "\n", "\n", "\n", "162->164\n", "\n", "\n", "\n", "\n", "\n", "165\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "164->165\n", "\n", "\n", "\n", "\n", "\n", "166\n", "\n", "WeekofPurchase <= 230.5\n", "gini = 0.165\n", "samples = 11\n", "value = [10, 1]\n", "\n", "\n", "\n", "164->166\n", "\n", "\n", "\n", "\n", "\n", "167\n", "\n", "SalePriceMM <= 1.59\n", "gini = 0.375\n", "samples = 4\n", "value = [3, 1]\n", "\n", "\n", "\n", "166->167\n", "\n", "\n", "\n", "\n", "\n", "170\n", "\n", "gini = 0.0\n", "samples = 7\n", "value = [7, 0]\n", "\n", "\n", "\n", "166->170\n", "\n", "\n", "\n", "\n", "\n", "168\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "167->168\n", "\n", "\n", "\n", "\n", "\n", "169\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "167->169\n", "\n", "\n", "\n", "\n", "\n", "172\n", "\n", "LoyalCH <= 0.56\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "171->172\n", "\n", "\n", "\n", "\n", "\n", "177\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "171->177\n", "\n", "\n", "\n", "\n", "\n", "173\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "172->173\n", "\n", "\n", "\n", "\n", "\n", "174\n", "\n", "LoyalCH <= 0.681\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "172->174\n", "\n", "\n", "\n", "\n", "\n", "175\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "174->175\n", "\n", "\n", "\n", "\n", "\n", "176\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "174->176\n", "\n", "\n", "\n", "\n", "\n", "179\n", "\n", "LoyalCH <= 0.562\n", "gini = 0.48\n", "samples = 10\n", "value = [6, 4]\n", "\n", "\n", "\n", "178->179\n", "\n", "\n", "\n", "\n", "\n", "186\n", "\n", "LoyalCH <= 0.748\n", "gini = 0.32\n", "samples = 5\n", "value = [1, 4]\n", "\n", "\n", "\n", "178->186\n", "\n", "\n", "\n", "\n", "\n", "180\n", "\n", "LoyalCH <= 0.51\n", "gini = 0.444\n", "samples = 6\n", "value = [2, 4]\n", "\n", "\n", "\n", "179->180\n", "\n", "\n", "\n", "\n", "\n", "185\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [4, 0]\n", "\n", "\n", "\n", "179->185\n", "\n", "\n", "\n", "\n", "\n", "181\n", "\n", "SalePriceMM <= 1.74\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "180->181\n", "\n", "\n", "\n", "\n", "\n", "184\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3]\n", "\n", "\n", "\n", "180->184\n", "\n", "\n", "\n", "\n", "\n", "182\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "181->182\n", "\n", "\n", "\n", "\n", "\n", "183\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "181->183\n", "\n", "\n", "\n", "\n", "\n", "187\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [0, 4]\n", "\n", "\n", "\n", "186->187\n", "\n", "\n", "\n", "\n", "\n", "188\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "186->188\n", "\n", "\n", "\n", "\n", "\n", "190\n", "\n", "WeekofPurchase <= 246.5\n", "gini = 0.298\n", "samples = 11\n", "value = [2, 9]\n", "\n", "\n", "\n", "189->190\n", "\n", "\n", "\n", "\n", "\n", "197\n", "\n", "WeekofPurchase <= 268.0\n", "gini = 0.49\n", "samples = 14\n", "value = [8, 6]\n", "\n", "\n", "\n", "189->197\n", "\n", "\n", "\n", "\n", "\n", "191\n", "\n", "WeekofPurchase <= 238.0\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "190->191\n", "\n", "\n", "\n", "\n", "\n", "196\n", "\n", "gini = 0.0\n", "samples = 7\n", "value = [0, 7]\n", "\n", "\n", "\n", "190->196\n", "\n", "\n", "\n", "\n", "\n", "192\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "191->192\n", "\n", "\n", "\n", "\n", "\n", "193\n", "\n", "WeekofPurchase <= 245.5\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "191->193\n", "\n", "\n", "\n", "\n", "\n", "194\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "193->194\n", "\n", "\n", "\n", "\n", "\n", "195\n", "\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "193->195\n", "\n", "\n", "\n", "\n", "\n", "198\n", "\n", "SalePriceCH <= 1.94\n", "gini = 0.375\n", "samples = 8\n", "value = [6, 2]\n", "\n", "\n", "\n", "197->198\n", "\n", "\n", "\n", "\n", "\n", "207\n", "\n", "LoyalCH <= 0.581\n", "gini = 0.444\n", "samples = 6\n", "value = [2, 4]\n", "\n", "\n", "\n", "197->207\n", "\n", "\n", "\n", "\n", "\n", "199\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [4, 0]\n", "\n", "\n", "\n", "198->199\n", "\n", "\n", "\n", "\n", "\n", "200\n", "\n", "STORE <= 3.5\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "198->200\n", "\n", "\n", "\n", "\n", "\n", "201\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "200->201\n", "\n", "\n", "\n", "\n", "\n", "202\n", "\n", "WeekofPurchase <= 261.0\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "200->202\n", "\n", "\n", "\n", "\n", "\n", "203\n", "\n", "LoyalCH <= 0.621\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "202->203\n", "\n", "\n", "\n", "\n", "\n", "206\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "202->206\n", "\n", "\n", "\n", "\n", "\n", "204\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "203->204\n", "\n", "\n", "\n", "\n", "\n", "205\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "203->205\n", "\n", "\n", "\n", "\n", "\n", "208\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "207->208\n", "\n", "\n", "\n", "\n", "\n", "209\n", "\n", "WeekofPurchase <= 269.5\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "207->209\n", "\n", "\n", "\n", "\n", "\n", "210\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "209->210\n", "\n", "\n", "\n", "\n", "\n", "211\n", "\n", "LoyalCH <= 0.722\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "209->211\n", "\n", "\n", "\n", "\n", "\n", "212\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "211->212\n", "\n", "\n", "\n", "\n", "\n", "213\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "211->213\n", "\n", "\n", "\n", "\n", "\n", "215\n", "\n", "STORE <= 1.5\n", "gini = 0.5\n", "samples = 10\n", "value = [5, 5]\n", "\n", "\n", "\n", "214->215\n", "\n", "\n", "\n", "\n", "\n", "222\n", "\n", "ListPriceDiff <= 0.31\n", "gini = 0.227\n", "samples = 23\n", "value = [3, 20]\n", "\n", "\n", "\n", "214->222\n", "\n", "\n", "\n", "\n", "\n", "216\n", "\n", "WeekofPurchase <= 233.5\n", "gini = 0.469\n", "samples = 8\n", "value = [5, 3]\n", "\n", "\n", "\n", "215->216\n", "\n", "\n", "\n", "\n", "\n", "221\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "215->221\n", "\n", "\n", "\n", "\n", "\n", "217\n", "\n", "gini = 0.444\n", "samples = 3\n", "value = [1, 2]\n", "\n", "\n", "\n", "216->217\n", "\n", "\n", "\n", "\n", "\n", "218\n", "\n", "PriceDiff <= -0.11\n", "gini = 0.32\n", "samples = 5\n", "value = [4, 1]\n", "\n", "\n", "\n", "216->218\n", "\n", "\n", "\n", "\n", "\n", "219\n", "\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "218->219\n", "\n", "\n", "\n", "\n", "\n", "220\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "218->220\n", "\n", "\n", "\n", "\n", "\n", "223\n", "\n", "WeekofPurchase <= 235.0\n", "gini = 0.091\n", "samples = 21\n", "value = [1, 20]\n", "\n", "\n", "\n", "222->223\n", "\n", "\n", "\n", "\n", "\n", "228\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "222->228\n", "\n", "\n", "\n", "\n", "\n", "224\n", "\n", "WeekofPurchase <= 233.5\n", "gini = 0.219\n", "samples = 8\n", "value = [1, 7]\n", "\n", "\n", "\n", "223->224\n", "\n", "\n", "\n", "\n", "\n", "227\n", "\n", "gini = 0.0\n", "samples = 13\n", "value = [0, 13]\n", "\n", "\n", "\n", "223->227\n", "\n", "\n", "\n", "\n", "\n", "225\n", "\n", "gini = 0.0\n", "samples = 7\n", "value = [0, 7]\n", "\n", "\n", "\n", "224->225\n", "\n", "\n", "\n", "\n", "\n", "226\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "224->226\n", "\n", "\n", "\n", "\n", "\n", "230\n", "\n", "WeekofPurchase <= 257.5\n", "gini = 0.203\n", "samples = 122\n", "value = [14, 108]\n", "\n", "\n", "\n", "229->230\n", "\n", "\n", "\n", "\n", "\n", "277\n", "\n", "LoyalCH <= 0.589\n", "gini = 0.5\n", "samples = 4\n", "value = [2, 2]\n", "\n", "\n", "\n", "229->277\n", "\n", "\n", "\n", "\n", "\n", "231\n", "\n", "LoyalCH <= 0.504\n", "gini = 0.273\n", "samples = 86\n", "value = [14, 72]\n", "\n", "\n", "\n", "230->231\n", "\n", "\n", "\n", "\n", "\n", "276\n", "\n", "gini = 0.0\n", "samples = 36\n", "value = [0, 36]\n", "\n", "\n", "\n", "230->276\n", "\n", "\n", "\n", "\n", "\n", "232\n", "\n", "PriceDiff <= 0.375\n", "gini = 0.413\n", "samples = 24\n", "value = [7, 17]\n", "\n", "\n", "\n", "231->232\n", "\n", "\n", "\n", "\n", "\n", "251\n", "\n", "PriceCH <= 1.755\n", "gini = 0.2\n", "samples = 62\n", "value = [7, 55]\n", "\n", "\n", "\n", "231->251\n", "\n", "\n", "\n", "\n", "\n", "233\n", "\n", "WeekofPurchase <= 253.5\n", "gini = 0.308\n", "samples = 21\n", "value = [4, 17]\n", "\n", "\n", "\n", "232->233\n", "\n", "\n", "\n", "\n", "\n", "250\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [3, 0]\n", "\n", "\n", "\n", "232->250\n", "\n", "\n", "\n", "\n", "\n", "234\n", "\n", "PriceCH <= 1.825\n", "gini = 0.375\n", "samples = 16\n", "value = [4, 12]\n", "\n", "\n", "\n", "233->234\n", "\n", "\n", "\n", "\n", "\n", "249\n", "\n", "gini = 0.0\n", "samples = 5\n", "value = [0, 5]\n", "\n", "\n", "\n", "233->249\n", "\n", "\n", "\n", "\n", "\n", "235\n", "\n", "WeekofPurchase <= 234.0\n", "gini = 0.219\n", "samples = 8\n", "value = [1, 7]\n", "\n", "\n", "\n", "234->235\n", "\n", "\n", "\n", "\n", "\n", "240\n", "\n", "WeekofPurchase <= 252.5\n", "gini = 0.469\n", "samples = 8\n", "value = [3, 5]\n", "\n", "\n", "\n", "234->240\n", "\n", "\n", "\n", "\n", "\n", "236\n", "\n", "PctDiscCH <= 0.089\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "235->236\n", "\n", "\n", "\n", "\n", "\n", "239\n", "\n", "gini = 0.0\n", "samples = 6\n", "value = [0, 6]\n", "\n", "\n", "\n", "235->239\n", "\n", "\n", "\n", "\n", "\n", "237\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "236->237\n", "\n", "\n", "\n", "\n", "\n", "238\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "236->238\n", "\n", "\n", "\n", "\n", "\n", "241\n", "\n", "StoreID <= 3.5\n", "gini = 0.408\n", "samples = 7\n", "value = [2, 5]\n", "\n", "\n", "\n", "240->241\n", "\n", "\n", "\n", "\n", "\n", "248\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "240->248\n", "\n", "\n", "\n", "\n", "\n", "242\n", "\n", "WeekofPurchase <= 244.0\n", "gini = 0.444\n", "samples = 3\n", "value = [2, 1]\n", "\n", "\n", "\n", "241->242\n", "\n", "\n", "\n", "\n", "\n", "247\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [0, 4]\n", "\n", "\n", "\n", "241->247\n", "\n", "\n", "\n", "\n", "\n", "243\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "242->243\n", "\n", "\n", "\n", "\n", "\n", "244\n", "\n", "WeekofPurchase <= 247.0\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "242->244\n", "\n", "\n", "\n", "\n", "\n", "245\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "244->245\n", "\n", "\n", "\n", "\n", "\n", "246\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "244->246\n", "\n", "\n", "\n", "\n", "\n", "252\n", "\n", "SalePriceCH <= 1.72\n", "gini = 0.346\n", "samples = 18\n", "value = [4, 14]\n", "\n", "\n", "\n", "251->252\n", "\n", "\n", "\n", "\n", "\n", "263\n", "\n", "StoreID <= 3.5\n", "gini = 0.127\n", "samples = 44\n", "value = [3, 41]\n", "\n", "\n", "\n", "251->263\n", "\n", "\n", "\n", "\n", "\n", "253\n", "\n", "LoyalCH <= 0.678\n", "gini = 0.153\n", "samples = 12\n", "value = [1, 11]\n", "\n", "\n", "\n", "252->253\n", "\n", "\n", "\n", "\n", "\n", "258\n", "\n", "WeekofPurchase <= 236.5\n", "gini = 0.5\n", "samples = 6\n", "value = [3, 3]\n", "\n", "\n", "\n", "252->258\n", "\n", "\n", "\n", "\n", "\n", "254\n", "\n", "gini = 0.0\n", "samples = 10\n", "value = [0, 10]\n", "\n", "\n", "\n", "253->254\n", "\n", "\n", "\n", "\n", "\n", "255\n", "\n", "WeekofPurchase <= 230.5\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "253->255\n", "\n", "\n", "\n", "\n", "\n", "256\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "255->256\n", "\n", "\n", "\n", "\n", "\n", "257\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "255->257\n", "\n", "\n", "\n", "\n", "\n", "259\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "258->259\n", "\n", "\n", "\n", "\n", "\n", "260\n", "\n", "LoyalCH <= 0.576\n", "gini = 0.375\n", "samples = 4\n", "value = [1, 3]\n", "\n", "\n", "\n", "258->260\n", "\n", "\n", "\n", "\n", "\n", "261\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "260->261\n", "\n", "\n", "\n", "\n", "\n", "262\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3]\n", "\n", "\n", "\n", "260->262\n", "\n", "\n", "\n", "\n", "\n", "264\n", "\n", "gini = 0.0\n", "samples = 27\n", "value = [0, 27]\n", "\n", "\n", "\n", "263->264\n", "\n", "\n", "\n", "\n", "\n", "265\n", "\n", "WeekofPurchase <= 256.5\n", "gini = 0.291\n", "samples = 17\n", "value = [3, 14]\n", "\n", "\n", "\n", "263->265\n", "\n", "\n", "\n", "\n", "\n", "266\n", "\n", "LoyalCH <= 0.61\n", "gini = 0.219\n", "samples = 16\n", "value = [2, 14]\n", "\n", "\n", "\n", "265->266\n", "\n", "\n", "\n", "\n", "\n", "275\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "265->275\n", "\n", "\n", "\n", "\n", "\n", "267\n", "\n", "SalePriceMM <= 2.26\n", "gini = 0.375\n", "samples = 8\n", "value = [2, 6]\n", "\n", "\n", "\n", "266->267\n", "\n", "\n", "\n", "\n", "\n", "274\n", "\n", "gini = 0.0\n", "samples = 8\n", "value = [0, 8]\n", "\n", "\n", "\n", "266->274\n", "\n", "\n", "\n", "\n", "\n", "268\n", "\n", "WeekofPurchase <= 251.5\n", "gini = 0.245\n", "samples = 7\n", "value = [1, 6]\n", "\n", "\n", "\n", "267->268\n", "\n", "\n", "\n", "\n", "\n", "273\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "267->273\n", "\n", "\n", "\n", "\n", "\n", "269\n", "\n", "STORE <= 2.0\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "268->269\n", "\n", "\n", "\n", "\n", "\n", "272\n", "\n", "gini = 0.0\n", "samples = 5\n", "value = [0, 5]\n", "\n", "\n", "\n", "268->272\n", "\n", "\n", "\n", "\n", "\n", "270\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "269->270\n", "\n", "\n", "\n", "\n", "\n", "271\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "269->271\n", "\n", "\n", "\n", "\n", "\n", "278\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [0, 2]\n", "\n", "\n", "\n", "277->278\n", "\n", "\n", "\n", "\n", "\n", "279\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "277->279\n", "\n", "\n", "\n", "\n", "\n", "281\n", "\n", "StoreID <= 1.5\n", "gini = 0.375\n", "samples = 8\n", "value = [2, 6]\n", "\n", "\n", "\n", "280->281\n", "\n", "\n", "\n", "\n", "\n", "288\n", "\n", "STORE <= 1.5\n", "gini = 0.061\n", "samples = 254\n", "value = [8, 246]\n", "\n", "\n", "\n", "280->288\n", "\n", "\n", "\n", "\n", "\n", "282\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "281->282\n", "\n", "\n", "\n", "\n", "\n", "283\n", "\n", "SpecialCH <= 0.5\n", "gini = 0.245\n", "samples = 7\n", "value = [1, 6]\n", "\n", "\n", "\n", "281->283\n", "\n", "\n", "\n", "\n", "\n", "284\n", "\n", "gini = 0.0\n", "samples = 5\n", "value = [0, 5]\n", "\n", "\n", "\n", "283->284\n", "\n", "\n", "\n", "\n", "\n", "285\n", "\n", "LoyalCH <= 0.997\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "283->285\n", "\n", "\n", "\n", "\n", "\n", "286\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "285->286\n", "\n", "\n", "\n", "\n", "\n", "287\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "285->287\n", "\n", "\n", "\n", "\n", "\n", "289\n", "\n", "gini = 0.0\n", "samples = 132\n", "value = [0, 132]\n", "\n", "\n", "\n", "288->289\n", "\n", "\n", "\n", "\n", "\n", "290\n", "\n", "ListPriceDiff <= 0.22\n", "gini = 0.123\n", "samples = 122\n", "value = [8, 114]\n", "\n", "\n", "\n", "288->290\n", "\n", "\n", "\n", "\n", "\n", "291\n", "\n", "PriceDiff <= 0.195\n", "gini = 0.062\n", "samples = 62\n", "value = [2, 60]\n", "\n", "\n", "\n", "290->291\n", "\n", "\n", "\n", "\n", "\n", "304\n", "\n", "LoyalCH <= 0.924\n", "gini = 0.18\n", "samples = 60\n", "value = [6, 54]\n", "\n", "\n", "\n", "290->304\n", "\n", "\n", "\n", "\n", "\n", "292\n", "\n", "gini = 0.0\n", "samples = 34\n", "value = [0, 34]\n", "\n", "\n", "\n", "291->292\n", "\n", "\n", "\n", "\n", "\n", "293\n", "\n", "WeekofPurchase <= 264.5\n", "gini = 0.133\n", "samples = 28\n", "value = [2, 26]\n", "\n", "\n", "\n", "291->293\n", "\n", "\n", "\n", "\n", "\n", "294\n", "\n", "gini = 0.0\n", "samples = 11\n", "value = [0, 11]\n", "\n", "\n", "\n", "293->294\n", "\n", "\n", "\n", "\n", "\n", "295\n", "\n", "WeekofPurchase <= 265.5\n", "gini = 0.208\n", "samples = 17\n", "value = [2, 15]\n", "\n", "\n", "\n", "293->295\n", "\n", "\n", "\n", "\n", "\n", "296\n", "\n", "LoyalCH <= 0.951\n", "gini = 0.5\n", "samples = 2\n", "value = [1, 1]\n", "\n", "\n", "\n", "295->296\n", "\n", "\n", "\n", "\n", "\n", "299\n", "\n", "LoyalCH <= 0.878\n", "gini = 0.124\n", "samples = 15\n", "value = [1, 14]\n", "\n", "\n", "\n", "295->299\n", "\n", "\n", "\n", "\n", "\n", "297\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "296->297\n", "\n", "\n", "\n", "\n", "\n", "298\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [0, 1]\n", "\n", "\n", "\n", "296->298\n", "\n", "\n", "\n", "\n", "\n", "300\n", "\n", "LoyalCH <= 0.865\n", "gini = 0.32\n", "samples = 5\n", "value = [1, 4]\n", "\n", "\n", "\n", "299->300\n", "\n", "\n", "\n", "\n", "\n", "303\n", "\n", "gini = 0.0\n", "samples = 10\n", "value = [0, 10]\n", "\n", "\n", "\n", "299->303\n", "\n", "\n", "\n", "\n", "\n", "301\n", "\n", "gini = 0.0\n", "samples = 4\n", "value = [0, 4]\n", "\n", "\n", "\n", "300->301\n", "\n", "\n", "\n", "\n", "\n", "302\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "300->302\n", "\n", "\n", "\n", "\n", "\n", "305\n", "\n", "SalePriceMM <= 2.26\n", "gini = 0.056\n", "samples = 35\n", "value = [1, 34]\n", "\n", "\n", "\n", "304->305\n", "\n", "\n", "\n", "\n", "\n", "310\n", "\n", "LoyalCH <= 0.935\n", "gini = 0.32\n", "samples = 25\n", "value = [5, 20]\n", "\n", "\n", "\n", "304->310\n", "\n", "\n", "\n", "\n", "\n", "306\n", "\n", "gini = 0.0\n", "samples = 31\n", "value = [0, 31]\n", "\n", "\n", "\n", "305->306\n", "\n", "\n", "\n", "\n", "\n", "307\n", "\n", "LoyalCH <= 0.813\n", "gini = 0.375\n", "samples = 4\n", "value = [1, 3]\n", "\n", "\n", "\n", "305->307\n", "\n", "\n", "\n", "\n", "\n", "308\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "307->308\n", "\n", "\n", "\n", "\n", "\n", "309\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3]\n", "\n", "\n", "\n", "307->309\n", "\n", "\n", "\n", "\n", "\n", "311\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "310->311\n", "\n", "\n", "\n", "\n", "\n", "312\n", "\n", "WeekofPurchase <= 263.5\n", "gini = 0.227\n", "samples = 23\n", "value = [3, 20]\n", "\n", "\n", "\n", "310->312\n", "\n", "\n", "\n", "\n", "\n", "313\n", "\n", "LoyalCH <= 0.948\n", "gini = 0.105\n", "samples = 18\n", "value = [1, 17]\n", "\n", "\n", "\n", "312->313\n", "\n", "\n", "\n", "\n", "\n", "318\n", "\n", "LoyalCH <= 0.983\n", "gini = 0.48\n", "samples = 5\n", "value = [2, 3]\n", "\n", "\n", "\n", "312->318\n", "\n", "\n", "\n", "\n", "\n", "314\n", "\n", "LoyalCH <= 0.946\n", "gini = 0.375\n", "samples = 4\n", "value = [1, 3]\n", "\n", "\n", "\n", "313->314\n", "\n", "\n", "\n", "\n", "\n", "317\n", "\n", "gini = 0.0\n", "samples = 14\n", "value = [0, 14]\n", "\n", "\n", "\n", "313->317\n", "\n", "\n", "\n", "\n", "\n", "315\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3]\n", "\n", "\n", "\n", "314->315\n", "\n", "\n", "\n", "\n", "\n", "316\n", "\n", "gini = 0.0\n", "samples = 1\n", "value = [1, 0]\n", "\n", "\n", "\n", "314->316\n", "\n", "\n", "\n", "\n", "\n", "319\n", "\n", "gini = 0.0\n", "samples = 3\n", "value = [0, 3]\n", "\n", "\n", "\n", "318->319\n", "\n", "\n", "\n", "\n", "\n", "320\n", "\n", "gini = 0.0\n", "samples = 2\n", "value = [2, 0]\n", "\n", "\n", "\n", "318->320\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Visualise the tree with GraphViz\n", "dot_data = tree.export_graphviz(clf, out_file=None,\n", " feature_names=X.design_info.column_names, \n", " filled=True, rounded=True)\n", "graph = graphviz.Source(dot_data) \n", "display(HTML(graph._repr_svg_()))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (e) Predict the response on the test data, and produce a confusion matrix comparing the test labels to the predicted test labels. What is the test error rate?" ] }, { "cell_type": "code", "execution_count": 288, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[ 74 24]\n", " [ 40 132]]\n", "\n", "test error rate: 0.237\n" ] } ], "source": [ "# Here's the confusion matrix\n", "print(confusion_matrix(y[~train], clf.predict(X[~train])))\n", "\n", "test_err = 1 - clf.score(X[~train], y[~train])\n", "print('\\ntest error rate: {}'.format(np.around(test_err, 3)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (f) Apply the cv.tree() function to the training set in order to determine the optimal tree size.\n", "\n", "### (g) Produce a plot with tree size on the x-axis and cross-validated classification error rate on the y-axis.\n", "\n", "### (h) Which tree size corresponds to the lowest cross-validated classification error rate?" ] }, { "cell_type": "code", "execution_count": 308, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "

Optimal tree size:

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Test
Leaves
8.00.811304
\n", "
" ], "text/plain": [ " Test\n", "Leaves \n", "8.0 0.811304" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Estimate optimal tree with cross validation on training set\n", "\n", "cv_folds = 10\n", "\n", "results = []\n", "for mln in np.arange(2, 50):\n", " clf = tree.DecisionTreeClassifier(max_leaf_nodes=mln)\n", " score = cross_val_score(clf, X[train], y[train], cv=cv_folds)\n", " results += [[mln, np.mean(score)]]\n", "\n", "\n", "plt.figure(figsize=(10,5))\n", "plot_df = pd.DataFrame(np.asarray(results), columns=['Leaves', 'Test']).set_index('Leaves')\n", "sns.lineplot(data=plot_df);\n", "plt.ylabel('accuracy')\n", "plt.show();\n", "\n", "display(HTML('

Optimal tree size:

'))\n", "display(plot_df[plot_df['Test'] == plot_df['Test'].max()])" ] }, { "cell_type": "code", "execution_count": 285, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnUAAAFFCAYAAACKZRtkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3Xl8XGXd///XmS1bk6ZNJk3Tfb3oXrpAKS2LtOybUhARQVxwRb1xufVG/bmhIuiNX25UBBQVcQNEWUUEBGyhC3SFXqX7kqTZ2qbZZj2/P2YS0oV22mYymeT9fDz66JxzrnPmM72a5JNrdVzXRURERESymyfTAYiIiIjIiVNSJyIiItILKKkTERER6QWU1ImIiIj0AkrqRERERHoBJXUiIiIivYCSOhEREZFeQEmdiIiISC+gpE5ERESkF1BSJyIiItILKKkTERER6QV8mQ6gm+QAs4EqIJbhWERERESOxAsMBpYBoVRv6itJ3Wzg5UwHISIiInIM5gOvpFq4ryR1VQB79jQTj7sAlJT0o76+KaNBSepUX9lF9ZVdVF/ZRfWVXY6nvjwehwEDCiCZv6QqrUmdMeYa4OuAH7jTWnv3QdcvAG5LHq4BPmGtbTLGTADuAYqAVuBT1tqVxpgRwFpgU/Ke3dba81IIJQYQj7sdSV37sWQP1Vd2UX1lF9VXdlF9ZZcTqK9jGjKWtokSxpghwK3APGA6cKMxZmKn68XAb4CrrbVTgVXA95OX7wVus9ZOB25JlgOYBTxkrZ2e/JNKQiciIiLS66Vz9usC4HlrbYO1thl4GFjU6fo4YJu19s3k8RPA5cnX9wHPJF+vBoYnX88GJhtjVhpjnjfGTElj/CIiIiJZI53drxUc2BdcBZzS6fhtYJgxZpq1dhVwFVAOYK19oFO57wCPJV+3AQ+S6Jo9H3jMGDPBWhtOJaCSkn4HHAeDhUQiEXbs2EFra1uqn6tXycvLZdiwYfj9/kyHclTBYGGmQ5BjoPrKLqqv7KL6yi7dVV/pTOo8QOdOZAeItx9Ya/caY64DfmmM8ZDocu1IzowxDnA7MAc4O3nPtzo97yljzA+ACSS6bo+qvr6po187GCyktnY/dXVV5ObmEwyW4jjOsX/KLOa6Ls3NjWzcuIXS0sGZDueI2utLsoPqK7uovrKL6iu7HE99eTzOIQ1RKd13zHekbieJNVbalQOV7QfGGC+w01p7qrV2NvAGyQkQxhgf8HsS3a1nW2v3Jc/fZIwp6fRMB4icSJDRaJiCgqI+l9ABOI5DQUER0WhKDZ0iIiLSg6Wzpe454FvGmCDQDFwB3Njpugs8a4w5lUSydzPwp+S1O0jMfD3XWtt50b0zgTzgR8aYM0kszrf+RAPtiwldu7782UVERHqTtLXUWWt3kZi5+gKwksSs1aXGmKeMMbOstXHgEyQmRFhgD3B7Mgn8LGCA15KTIlYmH/t5YKExZi2JxO8DyeeIiIiI9GlpXafOWvsQ8NBB5y7s9PpJ4MmDbqt9t7iSieLCLg6zx/jxj29jzZpVRKMRdu7cwciRowG48sqrueiiS496/333/YKTTprAvHlnpjtUERER6WH6yo4SWeGLX/xvAKqqKrnppk/wwAMPHeWOA33sY59MR1giIiJ9UjQWp2ZPK5V1zVTWN1NV30JlXTOTRw/kyrPGZjq8QyipywL3338P69atpaammiuueD8jR47il7/8GaFQG/v3N/G5z/0X8+efxa23fouTT57JySfP5H/+50uMHj2GDRssAweW8N3v/pCiov6Z/igiIiLdwnVd9uwPEY2lNkqrLRzrSNoq65uprGumZk8rsU67QZT2z6WitIARg3rmkjJK6jr5z5oqXll9TNuspWze1MGcPuX4lw0Jh0M8+OBfAPj617/CV7/6DUaMGMmKFcv46U/vYP78sw4ov3Hj23zta99k/PiTuOWWL/Pss0+zaNHVJ/IRREREejTXddm2ez8rbC3L19ewe0/rMT/DcaCsOI+K0gJmjA9SUVJARWkB5QPzyQl40xB111FSlyUmTpzc8fob3/guixe/zAsvPMe6dWtobT30P+2AAQMZP/4kAEaPHktjY2O3xSoiIpKK9u7NqvoWfF6HitICSvrn4jmGlRnirsvmykZW2BpW2Frq9rXhcRwmjCjmnJlDyc9NLdXx+7wMHpjPoIF5+H09O3l7N0rqOjl9yom1pqVTTk5Ox+vPfObjzJiR6GadOXM23/721w8pHwgEDjh2XW3+LCIimRGJJro2O3dvVtW3sLuh5YDuTYCAz0N5ST4VpQVUlBQwuKSAitJ8ygbk4fUkFu2Ix13e3rmX5baW1zfUsmd/CK/HYdKogVxy+khOHhekX17P3ympqympyzKNjfvYsWMbd999L4FAgJ///C7ica3qIiIimdcWjh6YuNW1UFnfTO3eVtrbFjp3b548rpTBJfkMLikgFnM7xrJV1jfz9o69vLpud8ezvR6H8oH5BIvz2Fy5j8aWCH6fh8mjBrLorDFMG1Oacqtcb9W3P30WKirqz8UXX8aHPnQVPp+PGTNm09bWdtguWBERkXRoaYtQ2Z68dSRwzdQ3vrNfgNfjMGhgPsMHFTJn4qCOlrcjdW+OHXrghL7DJYm797Rghg9gpgkydUwJuQGlMu2cPtItNxLYcri9X6urt1FePiKjwWVaNvwbaK/D7KL6yi6qr+zSnfXV2BKmqiNxeye52tf0zvaSfp+HwQMT3aWDk4lbRWmiRc3nTedupNnhBPd+HQVsTfU+pbciIiJ9mOu67G0Kd3R9dk7imlrf2V49J+CloiSfSSMHMqQ9gSstoLQoF49HW072BErqRERE+oC461K/r42q+mYq6xKtblX1iZa31lCso1xBro/B7ct5lBZQkZy0MKAwR/uF93BK6kRERHqRWDxO7d62g8a7tVBV30w4+s7EuqKCABUl+cyZVN6xFltFaQFF+X4lb1lKSZ2IiEgWikTj7N7TaZmQZAK3u6GFaOyd8fIDi3KoKClg/LAhVJQmx76VFPTJJT96OyV1IiIiPVgoEqO6vqVjzFtDU5gtu/ZRs6eVeHKyowMEk8uETB1d0pG4DS7JJy9HP+r7CtW0iIhID9AainaarPBOEle/r432djevx2FwaQFDSguYdVJZouWtJLGFVcCfnbsgSNdRUiciIpIBoXCMNZvrWW5reHvnPvbsf2eNN5/XQ/nAfEZXFDFv6uDEzgqlBQwakMfg8v5agkYOS0ldD/LjH9/GmjWriEYj7Ny5g5EjRwNw5ZVXc9FFl6b8nO9+9xt88pM3EQyWpStUERE5Dq2hKKs21bHC1rJmUz3haJx+eX4mjxrIkOA7kxWC/fO0TIgcMyV1PcgXv/jfAFRVVXLTTZ/ggQceOq7nvP76Cu31KiLSQzS3RVj5diKRW7ulgWgsTv+CAKdPHcys8UHGDy/u2NNU5EQoqTtIy+M/OOz5/Eu+BkDb4t8Tr99+yPWc067BWzqCiH2ZyIZX3vX+44qppZkf//g2tmzZjOvGufbaGzjnnIVs2LCe22//AfF4nJycHG655Vs899w/2LOngZtvvomf//x+CgsLj/t9RUTk+OxvCfPG23UstzW8tXUPsbjLwKIczj55CDNNkLFD++PRsiHSxZTUZYFf/epeJk2awje+8R2ampr45Cc/wqRJk/nTn37Ptdd+mDPPPJsnnvgb69at5frrP8pjjz3CT35ylxI6EZFutK8pxOsballua7Hb9xJ3XYLFuSycPYxZpoxRgwu1/puklZK6gxytRS137gePeN1v5uM387syJJYvX0o0GuHvf/8rAG1trWzZspnTTpvHHXf8gCVLXuH00+dz+ulndOn7iojIkTU0trHC1rIiOdnBBcoH5nPhacOZOb6M4YP6KZGTbqOkLgvE4zG+9a3vM3bsOAAaGuopKuqPz+dj6tTp/Oc/L/OHPzzIa68t4UtfOv5uXhERObqava2ssDWssLVsrmwEYGiwgMvmjWKmSWytpUROMkFJXRaYMWM2jz32MF/60teora3hhhs+yH33/Za77voJF154Ke997yKGDx/BL37xfwB4vV5isdhRnioiIqmKx12Wrt/NP5buYFt1YjmREYMKueLM0cw0ZZQPzM9whCJK6rLCxz72Se644wdcd937icfj3HTTf1FePpjrr/8ot912K/fd93MCgZyO2bNz587j5ps/y//+788oLy/PcPQiItkrFo/z6rrdPLFkG7sbWqgoLeCqs8cy0wQJFudlOjyRAzh9ZOmLkcCW+vom4vHE5w0GC6mt3U919TbKy0dkNLhMy4Z/g/b6kuyg+souqq9DRWNx/rOmiieXbKNuXxvDyvpxydyRzDDBjM9aVX1ll+OpL4/HoaSkH8AoYGuq96mlTkREJCkSjfHy6iqeenUbDY0hRg0u5JoF45k2tkTj5KTHU1InIiJ9XigS498rK3nmtW3sbQozdkh/Pnz+SUwaNVDJnGSNtCZ1xphrgK8DfuBOa+3dB12/ALgtebgG+IS1tskYUwz8HhgN1AJXWWurjTEB4H5gFtAKXGOtXX+icbqu22e/aPtI97uIZLlQJMaaTfXsrG1Ky7OXrK2msSXCScOL+fjFEzlpxIA++3NBslfakjpjzBDgVmAmEAIWG2NesNa+mbxeDPwGOMta+6Yx5ivA94HPAd8DXrbWXmSM+RDwU+D9yWvN1toJxpgzgAeAOScSp88XoLm5kYKCoj73Bey6Ls3Njfh8gUyHIiJyiNZQlNWbEhver9lcTzgST8v7OMDEUQO5ZO5Ixg8rTst7iHSHdLbULQCet9Y2ABhjHgYWAd9JXh8HbGtP8oAngGdIJG4XAe0r6f4BuNsY40+e/yaAtfYlY0zQGDPcWnvovl0pGjAgyJ49tTQ17T3eR2Q1ny/AgAHBTIchIgIcYZ/UKdonVeRo0pnUVQBVnY6rgFM6Hb8NDDPGTLPWrgKuAsoPvtdaGzXGNALBd3nmUCClpC45k6RDMJjYRqu8fEBKH0gyq72+JDuovrJLJutrX1OIV9dWs3hNJas21BKLu5T2z+XCuSOZO7WCk0YOxOvpWz0pR6Ovr+zSXfWVzqTOA3QesOUAHW3n1tq9xpjrgF8aYzzAvUC4U1kOc+8Rn3k0h1vSRLKD6iu7qL6yS1fVV3t36Qpbw5otDYQjqS2C3j60t7R/Yp/UmSbIqMFFHUuHNNR3/Ti6bKavr+xygkuaHJN0JnU7gc6boJYDle0HxhgvsNNae2ryeDawKXl5V7L8TmOMDygE6pPPHNyp3AHPFBGR7tXSFmHlxjqWrz+wu3TOxEEU5qc2XjfH72HyqBLtkypygtKZ1D0HfMsYEwSagSuAGztdd4FnjTGnkkjMbgb+lLz2FHAdiYkT7ycxaSJijGk//4oxZh7QdiLj6URE5NjtbwnzRnLc25tbG4jFXQYU5nDWyRXMMmWMHdIfj7pLRbpd2pI6a+0uY8wtwAtAALjPWrs0mZh901q73BjzCRKTI3JIJIG3J2//BvCAMWYdsBf4YPL8XcA9yfMh4EPpil9ERN6xrynE62/XsXx9DXb7XuKu+67dpSKSGX1+mzDJDqqv7KL6yi7vVl8NjW2s2FDLivU1vL1zHy4waGA+s0yQWaZM3aUZoq+v7KJtwkREJCNq97aywtaywtawqbIRgCHBAi6dN4qZJsiQ0gIlciI9lJI6EZE+bldtE88u3soKW8u23YkWhRGDCnnfGaOZaYIMLinIcIQikgoldSIiPUw0Fqd2byuVdc1U1jVTVd9CZV0ztfvaiHf1kBk3sU0WwOiKIq46eywzTJCy4ryufR8RSTsldSIiGRKJxqhu6Jy8NVNZ38LuhhZi8XeSt5KiXCpKCxg3rDgti/COGNIfU1HEwKLcLn+2iHQfJXUiImnWFo52tLa1/11Z30zt3taOhXcdB8qK86goLWD62FIqSvOpKC2gfGA+uYH0fqvWwHuR3kFJnYhIF2lpi1DZnrQlE7equhbqG9s6yng9DoMG5jO8rB9zJg5icEkBg0vyGVySj9/nzWD0IpLtlNSJiByjxpYwVR2J2zstb/uawh1l/D4PgwfmM25of84oraCiJNHyFizOw+fVhvQi0vWU1ImIHIHrumyt3s9yW8OmXY1U1jXT1BrpuJ4T8FJRUsDkUQOpKClgcGkBFSX5lPbP064KItKtlNSJiBwk7rps3tXIclvDCltDfWMIr8dh1OAiZowPUlFakBjzVlLAgMIcrdsmIj2CkjoRESAed9mwYy/LbQ2vb6hlb1MYn9dh0siBXD5/NNPHlVKQ6890mCIi70pJnYj0WW3hKBt37WOFreX1DbXsb4kQ8HmYMrqEmSbItLGl5OXo26SIZAd9txKRXq+5LUJVXQuV9Z1npTZT3xgCIMfvZdrYEmaZMqaMLiEnoFmoIpJ9lNSJSK/gui77WyLvLOLbnsQdblZqST7jhhVzZkkBw8r6MWHEAAJ+JXIikt2U1IlIVnFdlz37Qwcs4luVXFqk86zU3ICXwe2zUksLOmamlhblalaqiPRKSupEpEeLROO8ubWBlRvr2FHTRGVdM23hWMf1glwfFaUFHRvPa1aqiPRVSupEpMcJR2Ks2dzAig01rNpYR2soRl6OlxGDCpk7ufyAlreifL+SNxERlNSJSA/RFo6yelM9y20tazbVE4rEKMj1MdOUMcuUMXHkAO3EICJyBErqRCRjWtqirNpYx3Jbw9otDUSicYry/Zw2uZyZJogZVqxETkQkRUrqRKRbNbVGeGNDLSs21LJuSwOxuMuAwhzOnFbBTBNk3NBiTWQQETkOSupEJO32NYd5Y0Mty20N67ftJe66lPbPZcGsocw0ZYyuKMKjcXEiIidESZ2IpMWe/SFW2BqW21re3rEXFxg0II8L5gxnpgkyYlChJjiIiHQhJXUickSu67JqUz2rN9Xjum4K5aFmbyvrt+0BYEhpAZecPpJZpowhwQIlciIiaaKkTkQOK+66vLGhlscXb2X77ibycrwEfKntulA6II/3njGaWcm140REJP2U1InIAeJxl+W2hscXb2VXbTODBuTxkQsnMGfSoJRnogaDhdTW7k9zpCIi0pmSOhEBIBaP89qbu3li8TaqG1oYXJLPjZdMZPaEMrweLSsiItLTKakT6eOisTiL11bz1JJt1OxtZWiwH5+6fDIzTVAzUkVEskhakzpjzDXA1wE/cKe19u6Drs8A7gECwA7gWmvtXmPM8k6x5QFjgCFALrAW2JS8tttae146P4NIb9XSFuW1N6t56tXt1De2MaK8kJveN4Vp40qVzImIZKG0JXXGmCHArcBMIAQsNsa8YK19s1OxnwLftNY+bYz5MfAl4OvW2lmdnvNb4DfW2t3GmCuAh6y1n0hX3CK92eEW/h1TUcSHzhvPlNElmpkqIpLF0tlStwB43lrbAGCMeRhYBHynUxkvUJR8nQ80dH6AMeYcYBpwQ/LUbGCyMWZlsuznrbVr0vYJRHqBIy38Oyu58K+SORGR7JfOpK4CqOp0XAWcclCZm4FnjTF3As3AqQdd/zZwi7U2ljxuAx4k0WV7PvCYMWaCtTacSkAlJf0OOA4GC1O5TXoI1Vfq6ve1snh1FYvXVLJucz2uCxWlBVzxnrHMnVLBmKH9057Iqb6yi+oru6i+skt31Vc6kzoP0HmlUgeItx8YY/KA+4EF1tqlxpibgd8CFyWvTwJKrbVPtN9jrf1Wp+c9ZYz5ATABWJVKQPX1TcTjiZC05EJ2UX0dXd3eVlYkW+Q27WoEkgv/zj104d+6uqa0xqL6yi6qr+yi+soux1NfHo9zSENUKtKZ1O0E5nc6LgcqOx1PBlqttUuTx/cA3+10/XLgT50faIy5icSYuvrkKQeIdGXQItlkd0MLy5NbcW2rTnzTGF7WTwv/ioj0QelM6p4DvmWMCZLoWr0CuLHT9Y3AMGOMsdZa4DJgWafrpwF3HvTMM0nMhv2RMeZMEmPy1qcpfpEeaVddMyvWJxK5nbWJFrdRg4u48uwxzBwfpGxAfoYjFBGRTEhbUmet3WWMuQV4gcSSJfclu1mfIjHjdbkx5sPAn40xDlDDOxMiAEaTaO3r7PPAA8aY64BW4APW2jgiPUQoHGPjrn3EU9gj9Vi4rsvGXY2ssDVU1bfgAGOH9ufqc8Yxc3yQkv65Xfp+IiKSfZxUNujuBUYCWzSmLnv19PpqDUX514qdPLtsB02t6RkR4DhghhUz66QyZowPUtwvJy3v0xV6en3JgVRf2UX1lV1OcEzdKGBrqvdpRwmRE9DcFuG55Tv557IdtISiTBldwoJZQ8nP6fovreCAPIryA13+XBER6R2U1Ikch/0tYZ5dtoPnX99JayjGyeNKuXjuSEYNLjr6zSIiImmgpE7kGOxrDvOP17bzwhu7CEdizDypjEvmjmRY2bFPPRcREelKSuqkzzqW8aR7m8I8/do2/r2ykmgszqkTBnHR3JEMKdWSISIi0jMoqZM+JRyJsXZLAytsDSs31tMaiqZ8r8dxOG3yIC46bSTlA7VsiIiI9CxK6qTXawtHWb2pnhW2ltWb6glFYhTk+o5pKRCf12H2hEGUFeelOVoREZHjo6ROeqWWtiirNtWxfH0Na7c0EInGKcr3c9rkcmaaIGZYMT6vJ9NhioiIdBkldZL1XNdlX3OYqrpmdtU1s3ZLA29ubSAacynuF+CMaRXMMkHGDS3G40nvJvYiIiKZoqROsobrujQ0hqisb6ayLvGnqr6FyrpmWjqNjSspyuU9M4Yy66QyRlcU4XGUyImISO+npE56vJdWVfLK2mp2VO8nFIl1nC/M91NRUsApEwdRUZJPRWkBFaUF9C8I4CiRExGRPkZJnfRY0Vich/65gRdXVjJ2aH/mTx3ckbgNLsmnULsriIiIdFBSJz1SY3OYn/11DRt27uPCOSO48YppNNQ3ZTosERGRHktJnfQ426r383+PrqaxJcKNl05kzsRyvJrgICIickRK6qRHWfrWbn715FsU5Pn52rUzGFmuvVRFRERSoaROeoS46/LXlzbz5JJtjB3an8+8dwr9CzRmTkREJFVK6iTjWkNR7n38TVZurOOMaRVce+54LQwsIiJyjJTUSUbtbmjh/z2ymt0NrXxw4XjeM2OIliMRERE5DkrqJGPWbqnnF4+tw+Nx+NLV0zlpxIBMhyQiIpK1lNRJRry0qpLfPLOeIaUF3HTFVILFeZkOSUREJKspqZNu9/zrO3nw2Q1MHj2QT18+mdyA/huKiIicKP00lW71z2U7+MO/3mb62FI+dflk/D5NiBAREekKSuqk2zzz2nb+/MJGZo4P8onLJmmGq4iISBdSUifd4onFW3n0pc3MPqmMj18yUQmdiIhIF1NSJ2nlui5//89W/vbKFuZMGsRHL5qA16OETkREpKspqZO0cV2Xv768mScWb+P0KeXccMEEPNrDVUREJC2U1ElauK7LX17cxDOvbeeMaRVcd77Bo0WFRURE0iatSZ0x5hrg64AfuNNae/dB12cA9wABYAdwrbV2rzHmTODR5DmAN6y1NxhjioHfA6OBWuAqa211Oj+DHDvXdfnDv97mueU7OXvGED64cLwSOhERkTRL2+AmY8wQ4FZgHjAduNEYM/GgYj8FvmmtnQZY4EvJ87OAO6y105N/bkie/x7wsrV2AnBv8n7pQeKuy4P/3MBzy3eyYNZQrlVCJyIi0i3S2VK3AHjeWtsAYIx5GFgEfKdTGS9QlHydDzQkX88GBhljPgBsBT5jrd0BXASckSzzB+BuY4zfWhtJ4+fo8zbt2kd1Q0tKZd/cuocl66o5/9ThXHnWGO3jKiIi0k3SmdRVAFWdjquAUw4qczPwrDHmTqAZODV5fi/wZ2vto8aYTwJ/BE7v/ExrbdQY0wgEgcpUAiop6XfAcTBYeCyfp0963dbw/QdX4Lqp33PlOeP40AUTujyhU31lF9VXdlF9ZRfVV3bprvpKZ1LnATqnAg4Qbz8wxuQB9wMLrLVLjTE3A78FLrLWfrK9nLX2F8aYHxpj+iefwbs982jq65uIxxMhBYOF1NbuP8aP1Lc0NLZx+++WU1FawGffOyWlmat+n4fifjnU1TV1aSyqr+yi+souqq/sovrKLsdTXx6Pc0hDVCrSmdTtBOZ3Oi7nwBa1yUCrtXZp8vge4LvGGA/wNeCH1tpYp/JRYFfyOTuNMT6gEKhPU/x9WjQW5+ePrSUai/OZ905h0MD8TIckIiIiR5DOVWCfA84xxgSNMfnAFcAzna5vBIYZY0zy+DJgmbU2Drw3WR5jzHXAa9baZuAp4Lpk+feTmDSh8XRp8OcXNrKpspEbLpxAuRI6ERGRHi+lpM4Y84gxZsGxPNhauwu4BXgBWAk8lOxmfcoYM8tauwf4MPBnY8xq4CNA+yzX64EvGGPWJc99LHn+G8Cc5PlPA585lpgkNcvW13TMXp19UlmmwxEREZEUOG4KI+CNMR8EbgQGA78EftU+qzVLjAS2aEzd0VXVN/Od3yxnaLCA/75mRo/Zo1X1lV1UX9lF9ZVdVF/Z5QTH1I0isQpIavelUsha+3tr7ZnApUAZsMwY8ztjzMGzWSWLhcIxfvbXtfi9Hj512eQek9CJiIjI0aX8Uzs5gWEcMJ7EBIsa4GfGmG+nKTbpRq7r8tt/WCrrmrnx0okMLMrNdEgiIiJyDFIdU/c9Elt2fQX4EzDWWvtF4Ezgs+kLT7rLv1dVsmRdNZfOG8XkUSWZDkdERESOUapLmpQBF1hrV3c+aa1tTu76IFlsa3UjD/1zA5NHDeSS00dmOhwRERE5Dql2v34H+CSASXjMGFMOYK19Nl3BSfo1t0X42V/XUpgf4OOXTNQ+rSIiIlkq1aTuAWB98vU24EXgV2mIR7pR3HW5/4m32LM/xKcvn0xhfiDTIYmIiMhxSjWpK7XW/j8Aa22btfZOEsubSBZ75rXtrNxYx/vfM5YxQ/pnOhwRERE5AakmdT5jTEX7gTFmEIfuwypZxG7fwyP/3sTsk8o4Z+bQTIcjIiIiJyjViRI/AVYaY54BXGAB8OW0RSVp5bouD/5zA2XFeXz4gpNwNI5OREQk66W6+PCvgIXAG8By4Dxr7UN5XoXmAAAgAElEQVTpDEzSZ/vuJnbVNnPuKcPJy0k1rxcREZGe7Fi2DNgBPAz8DWg2xixMT0iSbkvWVeP1ONrXVUREpBdJqZnGGPMd4GvJwwiQA7wJTElTXJImsXic197czdQxJfTL82c6HBEREekiqbbUXQcMJ9FSNx74MLAuTTFJGr21bQ/7msPMnVye6VBERESkC6Wa1NVYa6uAt4Bp1trfoVa6rLRk7W7yc3xMHaOtwERERHqTVJO6iDFmDGCB+cYYH6Ad37NMKBzj9Q21zDqpDL/Pm+lwREREpAulmtR9H/gl8ATwPhKTJp5PV1CSHq+/XUsoElPXq4iISC+U6noWPmvtOQDGmOnAOGB12qKStFiyrpqSolzGDtXuESIiIr1Nqknd90ksZYK1tgVYlbaIJC32NYVYt6WBi04bgUeLDYuIiPQ6qSZ1a4wxtwAvA03tJ621r6clKulyr71Vg+vCnInqehUREemNUk3qTk3++Vincy4wussjkrRYsraaEeWFVJQWZDoUERERSYOUkjpr7ah0ByLps6uumW279/OBc8ZlOhQRERFJk1R3lLj5cOettT/p2nAkHV5dV43HcThl4qBMhyIiIiJpkmr3a+eFhgPAmcC/uj4c6Wpx1+XVddVMHDWA/gWBTIcjIiIiaZJq9+sNnY+NMRXA/WmJSLrU2zv2Ut8Y4oozx2Q6FBEREUmjVBcfPoC1thIY2bWhSDosWbebHL+Xk8cFMx2KiIiIpNHxjKlzgFlATVoiki4TicZYtr6GmSZITkDbgomIiPRmxzOmzgW2A18+2k3GmGuArwN+4E5r7d0HXZ8B3ENinN4O4Fpr7V5jzITk+SKgFfiUtXalMWYEsBbYlHzEbmvteSl+hj5n1cZ6WkNRTpuktelERER6u5S6X5Nj6n6d/PtLwBJr7c4j3WOMGQLcCswDpgM3GmMmHlTsp8A3rbXTAJt8NsC9wG3W2unALcBvkudnAQ9Za6cn/yihO4Il66rp3y/AhBEDMh2KiIiIpFlKSZ0x5nvAt5OH+cBXjTFfP8ptC4DnrbUN1tpm4GFg0UFlvCRa49qf25p8fR/wTPL1amB48vVsYLIxZqUx5nljTOcWROmkqTXC6k31zJk4CI9H24KJiIj0dqlOlLgcOBcg2UJ3JnD1Ue6pAKo6HVcBQw8qczNwrzGmClgI/CL5Hg9Ya2PJMt8BHku+bgMeBGYAdwCPGWO0TsdhLFtfQyzuqutVRESkj0h1TJ3fWhvpdBwG4ke5x0Ni/F07p/M9xpg8EsuiLLDWLk1OxvgtcFHyugPcDswBzgaw1n6r0/OeMsb8AJgArErlQ5SU9DvgOBgsTOW2rLTc1jK8vJAZkwbjOL2jpa4311dvpPrKLqqv7KL6yi7dVV+pJnX/Mcb8nkQS5gLXA68d5Z6dwPxOx+VAZafjyUCrtXZp8vge4LsAxhgfiQRvCHC2tXZf8vxNJMbU1SfvcYDOyeYR1dc3EY8n8sxgsJDa2v2p3ppVava28tbWBhadNYa6uqZMh9MlenN99Uaqr+yi+souqq/scjz15fE4hzREpXRfiuVuAqqB/yXR7VkNfP4o9zwHnGOMCRpj8oEreGecHMBGYJgxxiSPLwOWJV/fQWKs3bntCV3SmcBHAYwxZ5IYk7c+xc/QZ7y6rhoHmKNtwURERPqMVGe/NgN/S85SXQi8aq1tOco9u0jMXH0BWEmihW2pMeYpY8wsa+0e4MPAn40xq4GPADcYY4LAZwEDvJacFLEy+djPAwuNMWtJJH4fsNYerRu4T3FdlyVrqzHDixlYlJvpcERERKSbpLr48K3AXBJj29pnv0621n7vSPdZax8CHjro3IWdXj8NPJ1qXMlEcWEqMfdVW6r2s3tPKxfOGZHpUERERKQbpdr9ehnHPvtVMmDJumr8Pg8zTVmmQxEREZFulGpSdzyzX6WbRWNxlr61m+ljS8nPTXUOjIiIiPQGxzv79cMcffardIG2cJQ3NtQRiR09h67d28r+lojWphMREemDUk3qbiKxCPBPgCiJma3fPuIdcsJq9rRw1yNr2FXXnPI9AwpzmDx6YBqjEhERkZ4o1aRuKjAOaCCxNtxcEnu1Dj/STXL83tzawM8fWwvA5xZNZXhZauvVFOT68XlT7VUXERGR3iLVpO4+EosBLyKxldflwCPpCqovc12X51bs5E//2sjgknxuumIKZQPyMx2WiIiI9HCpJnWutfY2Y0wpicV+rwKWpy+svikSjfO7Zy2vrK7i5HGlfOziieTlaMKDiIiIHF2q/XTt+1tsAiZba1uBWHpC6pv2NoX40R9e55XVVVx6+kg+874pSuhEREQkZalmDa8ZY/4EfAN40hgznsSECekCW6oa+b9H19DcFuHTl09m1klaY05ERESOTaotdf8F/K+1dgPwheR9H0hbVH3IkrXV/ODB1/E4Dv9z7UwldCIiInJcUmqps9a6wKvJ108CT6YzqL4gHnd5+MVNPLN0O2ZYMZ9672SK8gOZDktERESylAZtdaFXVlexuaoxpbK7apt4e+c+3jNjCFefM07LkIiIiMgJUVLXhd7c1sCbWxpSKuvzebjufMNZ04ekOSoRERHpC5TUdaEbL5mU6RBERESkj1Kfn4iIiEgvoKROREREpBdQUiciIiLSCyipExEREekFlNSJiIiI9AJK6kRERER6ASV1IiIiIr2AkjoRERGRXkBJnYiIiEgvoKROREREpBdQUiciIiLSCyipExEREekFfOl8uDHmGuDrgB+401p790HXZwD3AAFgB3CttXavMaYY+D0wGqgFrrLWVhtjAsD9wCygFbjGWrs+nZ9BREREJBukraXOGDMEuBWYB0wHbjTGTDyo2E+Bb1prpwEW+FLy/PeAl621E4B7k+UAPgc0J89/AXggXfGLiIiIZJN0dr8uAJ631jZYa5uBh4FFB5XxAkXJ1/kkWt8ALiLRUgfwB+ACY4y/83lr7UtA0BgzPH0fQURERCQ7pLP7tQKo6nRcBZxyUJmbgWeNMXcCzcCpB99rrY0aYxqB4Ls8cyiwvcujPw6xum20PPr/HXLeUzKMgiu+C8D+Bz4F4Vbw+si78Mv4BpvuDlNERER6oXQmdR7A7XTsAPH2A2NMHonxcQustUuNMTcDvyXRGucc9Kz2e4/4zKMpKel3wHEwWJjqrSmJ5g6hcd6Vh5z39SumKPlevrnvw420sfc/j5DXtJ3i4KwujaE36+r6kvRSfWUX1Vd2UX1ll+6qr3QmdTuB+Z2Oy4HKTseTgVZr7dLk8T3Ad5OvdyXL7zTG+IBCoD75zMHApnd55hHV1zcRjydywmCwkNra/cfyeVLgg4kXHXI2Bu+81/iFADgrnmV/1Q4iXR5D75Se+pJ0UX1lF9VXdlF9ZZfjqS+PxzmkISql+475jtQ9B5xjjAkaY/KBK4BnOl3fCAwzxrT3P14GLEu+fgq4Lvn6/SQmTUQ6nzfGzAParLU9ouv1WDn9BxHfV5PpMERERKSXSFtLnbV2lzHmFuAFEkuW3JfsZn2KxIzX5caYDwN/NsY4QA1wQ/L2bwAPGGPWAXuBDybP3wXckzwfAj6UrvjTLfeMj+D4czMdhoiIiPQSjuu6Ry+V/UYCW9Lf/Srpki31Fa1+m/DSv+DGogB4B40ld+41uNEwLY//8JDy3vJx5My5Gsc5eBhpdsuW+pIE1Vd2UX1llxPsfh0FbE35vmN6F+kysYZdtP37fuL7azMdinQRN9RM279+RryxBie3IPEn8E5rbMe55B+iIeJ7dkE0lMGoRUSkt0jrjhJyBJFWIvZlfKNm4ikMZjoa6QKhNx7HbWkk//Jv4A2OPOCa4wuQf8EXDzjX3kre21rpREQkM5TUZYhTVAZAvFEtdb1Fzsz34quYeEhC927ak7lolSXy5vPknv0JHI8az0VE5PjoJ0iGOLmF4M8lvm93pkORExRv2Ut8fy2OPwff8KnHfL/b3EB002uEVz2VhuhERKSvUFKXIY7j4CkqI96oZU2ymeu6tP37V7Q89l3caPi4nuEbMwff6FMIr/grsbptXRyhiIj0FUrqMshTVIarpC6rRd56gdiO1QROvhTHFziuZziOQ+6863ByC2l74d7jTg5FRKRvU1KXQf7JC8k57epMhyHHKb5vN6FX/4h3yCT8k95zQs9ycvuRe8ZHiO/ZSWj5o10UoYiI9CWaKJFBvsHm6IWkR3LjMVpfvBc8PnLP+hiOc+K/H/mGTyVw8iV4B43pgghFRKSvUVKXQW5bE5GNr+IbOglP8eBMhyPHIF67hXjtFnLP+jieggFd9tyc2VcAyeVO3BiOR1+iIiKSGnW/ZpAbDRFa/CDRKpvpUOQYeQeNpeD9P8Q35tQuf7brurQ9/wvaXvpNlz9behbXdYlWWY2jFJEuoaQug5z8AeDxabJEFnGjYcJr/4kbj+IpDKZl4WDHcfAUBolueJnI1te7/PnSc0TW/YvWx39A20u/znQoIl3KjYZpffYuzejvZkrqMsjxePAUBbVWXRYJLX+U0OLfE6vemNb3Ccy8HE/JcEIv/Zp4a2Na30syxz/uNPDnEt24hMiWFZkOR6TLhJY+THTrCty2/cRbG3HjsUyH1Ccoqcswp6iM+H611GWDaOV6Iqv/gX/C2fgqTkrrezleH7ln34gbbiX00q87thST7OfG44SW/oV4Uz1OTgH9rv8/PKUjCL38APGWvZkOT+SERXe9SWTts/gnnoNn4FBa/nIL4ZVPZjqsPkFJXYYlFiCu1Q/tHs4Nt9L24r04RUFy5nTPMjTegUPJOeUKotveILp5Wbe8p6SXG4/S9sIvCa98kmiya93xJBP4SCttSuAly7mhZtpevA+nfzk5c67Ck1+Md8gkwiv+Rqx2a6bD6/U0tS7DfMOn4eQUQDwGXlXHiXLDrbit+xIH/lw8+cW48Rju/sPsset48LTvwbu/DuLRQ4v0K8Hx+mlb/BBucwP5l96C489J50c4gH/KeeDx4xsxHbetCTfUdGiMOf1wcvvhRkO4zXvA48VTGOy2GCU1bixK279+TnTrCgKnXElg8sKOa94BQ8iZey1OIC8t4zRFukvb4odwW/aSf9ktOL7E98rceR+iudrS9sIvyX/ft457oXY5OmURGeYbOhnf0MmZDiPrxVv2EVnzD8JvPg+RNgB8o2eTt+AzuKFmmv/01UPucXIL6XfdXQC0Pv0T4nsrDymTf+WteIorcDwOgWkX4R00Nr0f5OAYHQ+ByQsACK18kvDrfzukTGDGZeTMei+xms20PnFb4ty0C8k59apujVXenRsN0/rc3cS2ryLntGsITDn3kDKBCWcdUF4/+CQb+YZOwjNgCN6yd9bbdHIKyD3zo7Q+dQehpQ+TO/eaDEbYuympyzA3HiNWswlPfnFHq5Ecm/jeapof+QbEovjGnIJv+DQg0coG4PhzyT37xkNv9Po7XuaceiVuuPWQIp6CATiOQ2DqBThFg9LzAVLkGzULT/9DY/AMHJb4u7iC3LNvJLptJeFVT+MdNgVfxYTuDlMOI7p5WSKhm3c9gYlnH7Fs2+LfE6/bRt7FX8XxaISMZAc3HsXx+PCPm3vY676hk/FPPIfIuucITF6Ip0i9CemgpC7T3Ditf/8BgRmXkjPrvZmOJmvEG2uIbltJYMq5OP0HEZh+Mf4xp+IpLj+krOMLvOs3mna+EScf8XpPWBzaWzIMb8mwd73uye+PZ9xcfCNn0ly3jbYX76Ng0fdwAnndGKV05rpxHMeDb9xc8gcMwRscedR7vKUjiaz9J5E1zxCYdmH6gxQ5Qa7r0vrsXXiKysid+8F3LZcz5yr8405TQpdG+jUwwxyvH6ffQOJaqy4lsT2VtL7wS5r/9FVCS/+cmEHoOOTMvOywCV1f5PhzyDv747jNe4hueyPT4fRZbqiZ1sd/SGTzMhzHSSmhA/AlE/PQskeJ1e9Ib5AiXSBiXyK2fdVRx/I6vhy8g8biunGiO9Z0U3R9i5K6HiAxA1Zr1R1JaPdWWv/5f7T85RaiW5bjn7yQgqtvx5PsYpUDte94cbQWSkkPt62Jlid/RKxmExzjvsCO45Az/3qcnHzaXvglbiySpihFTly8sYbQkj/grZiAPzn+92ii9hVan/4xkS3L0xxd36Pu1x7AU1TWsbxBd2n7z+9wm/eQd+7ncONRmn77uUPKOB5vx0SClqfuIFaz+ZAy+RfcjHfQWEKv/43w6n8k1ldbeBO+8nFdGm+LXUp05zoC0y/CP+VcPHlFXfr83shTVJbYhurtxXiHTdG/WTeJt+yj9cnbiTdWk3fu5zrGeB4LT14RuWd8hNZ/3El4zT/ImX5xGiIVOTFuPE7bi/cBDrlnfQwnxV9gfOPn4nnzeUIv/wbvoLF48ovTG2gfoqSuB3CKynDb9uOGW3AC+Wl/P9d1iWx8FU9e/+QZD/7xpx8uso5XvmFTDjuuzEkmCt6SEfjHn05001JCr/0J76W3dOnSDP1PvZjI6DMSy79Iytymetpe/jW+oVPIPfdzWi4jzeLNe2h94jbizQ3knX8zviETj/tZvhHTyT37xqOO9xTJlMibzxOr3kDuWR8/pl6T9rUZWx79Jm0v/Zq8876g701dREldD+AtHYlvxMm4kVD3JHX7ayHUjH/2IiCxXdmRBrcCBKacd8TrvhHT8Y2YTri4gtArvyG2Y/VxtVAcLLTsEfD68Zz3QZwcbTNzrDyFpeTMXkTo1T8S3fAKfjM/0yH1am5zA26kjbwLvohvsDnh57V3n7fvPuH4c0/4mSJdxT9+LjiJcaDHyjuggpxTriS05A9E7EsETjozDRH2PRpT1wP4hk4i77zP4ykY0C3vF6vdAoC3bFSXP9tv5uMUBgkte/SEV8aPN9UTXvX04RcOlpT5p5yLd7BJLJWhf8u0iDfvwY3H8JaNoeDqH3VJQtfODTXT/Mg3CS35Y5c9U+REuLEI8Za9OIF8ApMWHHcrm3/yQrwVE4huXqadVLqIkroewo2EiLft75b3itVuAa8Pz8ChXf5sx+sjd/715M770Ak3p4dffxxwCcy4rGuC66Mcx0PuWR8DoO3F+3Dj8QxH1LvE9lbS8tdvE1ryB4AuXzTYySnAb84gsv5FottXdumzRY5HePlfaf7LLcRb9p3QcxzHQ96Cz5B3/n+p+7WLqPu1h2j+45fxDZ9O7pkfSft7uU0NeEqG43jSU/3tO2S0/+Z1PF+s8cYaIvZl/BPOwlNY2qXx9UWewiC5cz9IePU/cNsacTQwuUvEGnbQ+uTtAPg77QjR1XJmv4/YzjW0vnAv3uCoxHpg864DoPXZu3CjoUPuyVt4E44/h9DyvyZm4R78zJmX4x00lsiW5dSv3Ep87NldPps83tqYkQk68aZ6wmv/iXfQOPyjZnb7+2eb6M61RN58HjcaPuC8f+LZ+EfOJFr99gG72cR2rsN/0nw8+f0PftQxc3L7JZ5Zt5VYzWYCE99zws/sy5TU9RBOUVm3rVWXt+DTh3zxdrV4ayNtz96V+KZwHOMtQiseA4+HwIxL0hBd3+QbPw/f2NNwtMdwl4jVbqXlqdtxfAHyL/pKWheodrx+ct/zKUJLfo8bbsGNvJPEueGWwyZ1HdejIdxwy6Hn48kxqpEQ+5Y/Dcufxj/+dALTLz6u3W1cN05020riNZvJOWUREfsybYsfIu+Cm7t8Nvy7ie/bTXjlk0Te/g/EY/gXJcaQxnZvxMnvrz2RO3HjcYhHcHw5xOq2E6vdilNw0C97seR+2PHoAf+HfKNnkTPnA10aT3jtv4hueBm3rYmcGZd26bP7krR+dzfGXAN8HfADd1pr7+50bTrwQKfiQWAP8B7g2U7n+wNBa20/Y8yZwKNA+4qcb1hrb0jfJ+g+nqIyYpXru+390r2vZPsG86EVj+Ebc8oxtQq68ThuqAX/pHM01b0LOY4DXh/xvdWEVj5J7vzrleAdp1jdNlqevA0nkE/+xf/dLVv8eQcOIf+irxxyPv/i/z7ifblzrj7idf/40ymbPJOqF/5CZP2/idiX8Y2ZQ86c96f09efG40Q3LyW88gniDTtxisoInHwx3iGTcPL70/rUHeSd/4W0blkX319HaNkjRDe9Ch4v/glnEZh2IZ5+JbiuS9vLvyG+Zxe+caeRM/3iHrFDTKa48SjRt5cQWvkk/lGzyDllEYHJCwhMPQ/H4z3sPb6KCfgu/2Za48o948O0uTHCyx+FWITArPepS/Y4pO07ujFmCHArMBMIAYuNMS9Ya98EsNauBKYny+YDS4FPWmtrOp33AP8Cbkk+dhZwh7X2B+mKO1M8RWVE316S9o28Ixv+Q3jVU+Rd9OW0JkyO4yFn1vto/cedROwrB2xWftR7PR7yz/+Cxn6lSXxvFdENLxPO70/OKYsyHU5W8hQF8Q2bSs6pV/WKBbB9/YPknv4hAidfQnj1M0Q3L8Px5QBH7kKNbHyV0IrHcPdVd+w97BtzKo7Hi+PPJf+Sr9L65O20Pv0T8s69Cd+wqV0atxtuTWyD58aJbl+Jf8p5BKaef8D3NsdxyLvgZsKrniby1otENyzGN3o2gZMvOeK2e72NGw0T2fAK4ZVP4jbV4ykZjnfQGCD9v+SnwvF4yT3rY4S8PsJvPI4bDZMz52oldsconb+mLwCet9Y2ABhjHgYWAd85TNmvAf+21r5y0PkbgBZr7UPJ49nAIGPMB4CtwGestb1iH53Eb/ou8f11eAdUpO19YjWbEssjdMM4F+/waXjKRhN+/e/4x81N6RtHrGEXbnMD3qGTtZl5mvhGnozfzCe86kl8w6fh7aausd4gWvkWnsIgnsJS8s75VKbD6XKe/GJy51yNe8oiHI8Pt62J5j9+BW/5eHJOvgRv+biOoRuOL0C8fjuOL0DOgs/gGzXzkMVnPfnF5LUndv/4f+Sd+1l8w6efcJyx6rcJvfE48X27Kbjq+3iKyuh37Z0dieghn6tgALlzryFw8sVE1jxLeN1zxPfsJH/RrX0iaXDDLTT/+X9wW/biGTSW3HnX4R02tcd9dsfxkDP/w+D1E1nzLP4xp+AtG5PpsLJKOpO6CqCq03EVcMrBhYwx/YEbgSkHnfeSaKHrPPVxL/Bna+2jxphPAn8EDrdq7mGVlPQ74DgYLEz11rRrC4+ipqiU4nzITWNcu/ZsJ7diDGVlJz7ANRWtCz5E1UPfJmfnq/SffdFRy1c//yihnZbhn/0FnpwDN6LvSfWV7eKX3MjOey3hl+9n6Ed+hCe36xd1zob6atu5npZNK4F3llMIlAyl3+T5xKNh9v7nkY7zbjRC27KnyBtzMsErj9zlmY0OV1/xsA//6Vewb+njtPz9VnKHTSCyp5r+p15K8ZxLiZ//ocT+1UdMDgqJXf9dah+/i4EjRhEoPb7/F67r0rZ1DXv+8wht29biyS+i+JRL6F+Sj8cXAFJ5biEMv4HYe64k2lhHTlkR4bqd1P/zV+RUHPjLTc6gURScNIdYWzP7Xvv7IU/y5BRQPCcx9mvva38n3tZ8SJn+p1yCN68fzetfI7T70B15CsafSs7g0YSqN9NsXzvk+rvF0AB4U4jB8fgonrcIxymkYea55A2fSO6IyT0umTuYe9mnCM1eQO6Q8Ylj1+3xMR9Nd30/TGdS56Hzd8rE9gSH60+7Fngs2e3a2fnA29bajl1/rbWf7PT6F8aYHxpj+ltrU5pXXV/fRDyeCCkYLKS2tnuWEElJYDB5V9/BfmB/muJyY1FCu7fin7yw2z67WzAS3+hTaG6D8FHeM7Z7Iy0bVxA4ZRH1jVHgnfI9rr56Af8ZH6X1iR+x/XffIv/S/+nS2dDZUF/R7atpfeYnyaNOu6eMmE7roOm44RaaXnnkgHu85ePwzLmux3+2Y3XE+hq/kPxRZxB560VC657DU1ROa8EQIh3l332SRmfesz/LPhfcqnpiVeuPuSu29cX7iW54GSe/mJw5H8A/4Syi/hzq94RSjuEAnhKo3U90+1baqrfRunn1AZd94+fSUjKJ+P46mg/6fwDg9BtIZMzZADS99hTu/rpDykSGnoqnyKV1zRKiGw7uiII2b3/8viCRTZa2w7zHCcfgOIQGjMU7aCxMuJAmoKmu6V3/SXqUwGD21+4nvOopYvU7EtuQvcuYv57ueL4fejzOIQ1RqUhnUrcT6Lx8fTlQeZhylwPff5fzHattJsfXfQ34obW289YC0RMPtedI528k8YYdEI+mZdHhd+M4DnkLPp1S2dCyR3DyighMWpjmqATAN9iQu/AzuE0NaVvepidxXZfY9lXE9uwkZ/rFeIdOImfedfjHnY7jP7TbzgnkU3jjrzMQac/j+HMITD2PwNQj7yyTivAbjxN+4wly5l9/xLG2bjxOdOtyvAOH8f+3d+fxVZV3Hsc/59wlKwECQVBRRPCnFAUFxQUVFLGluFsdl3GZqrUubae1dtGOrfPqorXLdLGvqdpqx5d1+rLVqWirorZicauKouivLoiiVCKKrEnuNn+cGxpIKASS3HNvvu9/zFnzXB9y7/c+51nCQSNIjZ5EYthupPaY2qN9wJK7TKD+zB9u9ng4YOgW/x3Un/bdf3q8ZtonYdonN3s8tcdUUntM3eoydBUStlSGclUo5Mm++hgtuQzVR1yowV1b0Jv/d+YCXzezJmAtcBLRY9YNzCwgGkjxWBfXHwRc077h7nkzOwF4BfiNmZ0FPOHundu8y9T6+38EhQI1R3+2V+6ff38pAImmvgt1G353y2oyz99HeuKsLpdCy769iNw7L1F10OldfsBK70iN2m/Dz5lXHyOx414VN+K4PRy0PXs3+RVvETTsQHr8TIJkWnNilUB632PIvbeE1nk3Qy5LevyMjY4X8jmyrz4ejaZduYzU3kdTfdBpPdIXT8pP1cTZBIkUrY/9mvUP/JiaGRfHYmBHXPVaqHP3t83sCuBhIA3c6O5Pmtm9wABWOaAAABKESURBVH+4+1+JpjFpc/eWLm4xmqi1r6OzgRvM7CpgOXBWb5W/JIKQ3AebvuSek7JDSYzcm6Cmb/rTdVRYvYK2BXMgTFA1+YROxzMvPkhQ19irE7jK5uXXr6Jl3i0EtYOiOdfqG0tdpB6RefVx2p75P/IrlxEMHE71tPNIjjmwX7RMxlWQTFMz81Ja5l5P6/xbIddGesIsCrlMNDp/wT0UVjcTNu5M9ZGfJrnb/qUuspRYeu+jIZGi9dFfsf6+/6Lm6M9sdlBMf9er72zFUau3bbJvVoeflxM9lu3q2k7NOe7+ItD9mWzLRNgwjOySZynk87028rNUrTCJplEkR02ibeF9pMcftWEW8XbVR3yK/Ifv6htYiYQ1DdR87Aus/8P3WHf3t6mdfXmfTNSae38phTWb9ANKpEnuNA6IWnDJdZ4oO7HjXtGkqSvepLD2/U7Hw8aRhPVDyC17GcIk1UdeRHK3yRpRHRNBIkX1URfT8tDPaX3iNwT1Q0iMMFrn30rYOJLqg04nseuETqNppf9KjzsiarH7650U1q8mGNCzoa5QyFfEvzd9XY2RYOAOkM9RWLuCoIc/UAuZVtb9/pukJx1HalRpls1JTz6R7BvP0PbcvVRNOSUqVyFPYf1qwtqB/WrOqDhKDh9L7ccvZ92917Hu98VgN7DL71w9Ir9yGevuuLLT/qCukfozogEMLY/8ksLq5k7n1P3LtQQNw2hb+ADZv83rdLz6sH8j3POwaNb7ZKoi3qwrTRAmqT7iQjI77E5y1H4EiRR1J/0nwcDhZT/SUXpHyg6NJrNPVpFfs4LMS38itfdMwuptH1maX7+KzML7yb75HLUnXlX2rfjlXfoK0z4rfX5Vc4+3kuTeeyOaUyoo3eihRONOJMccSNsLc6M/xNpBZBc/TcvDP6f2uCtIDB1VsrJJJDFsNLWzv8T6e69j/dzrqT3xGz32AVsoFMi9vYjskmeoOvhMwkEjqJ5+Qefg2KEjdM3Mz0Au0+le7WvXVu13LOlx0zsfL64XrP6Z8RaEYfRorag/r/QgW6f9sWt26Qu0PTuHtoX3kRp3RKdJp7ckv/YD2p7/I5mXHoZshuRukyi0riO/biW5d14mvffM3noJvUqhLkY2hLouWia2V755cfQ7SjBIoqOqSceTff1Jcm8tJBh7CG1/vTOazLVxl5KWS/4hMXRXamZ/Gcj3SKCLRp0uoPWZu8k3v05QO4j0xNkEdYO3uC7wllpvw4YmaNB6niL9TXrPw0nsMIa2Z+eQWXgfmRfnkrLDSO937BbDXdvzf6T1qTsgnyc55kDSE2dvmPS/5em7yCx6iELbetL7HVt2rcYKdTES1A2m/qyfdOpv1hNyzYsJ6hoJa/t+kERH4cAdqDvtOsK6wWRemU9+5TtUz7hYfZ1iJtG4EwCFXIaWP91Eep+jt2nUdPbNBbQ+9dto1OmAoVRNPZuUTSVIpHq6yCLSzyQG70TNEZ8iP/kE2hbcEy1Juc9HATotuZlf+XcIQ8KGYYQNO5AaewjpiR/vtG5z1cFnUsi20vb0ndEgnv1PLqtgp1AXI0EQQi8EOohCXSmmMulKWDeYQi5Ly8M/JxyyC8ndStPHT7as0LKG3PLXWDfnWmpmXkrYuDMAQbqGIJGikG2jkNlk8HqhQL41emvJf/guZDNUTzuf5JgpZd9fRUTiJ2wYRvVh51I15RSCqjoK+Rxrf/sfJIaOIjX2YDKvzCf7+hMkR0+h5sgLSY7al+Sofbu8VxCGVB/+SVoTqWgkdrYtmmqrTIKd3mFjpnXBveRXLOnRdSULrWsprFpOuOdhPXbP7dX61B0AVE0+UZ3YYyysG0ztMV9h3T3XsP6eazfsr55xManR+5N5+ZFoWopNJKccAxNOIjXuSFIfOUotsSLS64Kq4nKHuSypUfvRtughsq89Dqlq0vt8jNTeWzd5dhCEVE09O1qD9oUHSI4+gGSZrJGtUBczhXUfkF2yoEdXlgiq6qg74wcQoyVWqiYdT3K4kdhlQqmLIlsQ1jdSe+wVZBc/DYVoMZfEkKgPZGKEUXXImZ2uqdl1NGtBs7+LSJ8LUlVUTTmF9IRZZN9ZRHLHcd3u1hQEAVUHnU5q9ynRMmuUxxq0eseNmbBhGGRbKaxfRdCD/d/CusE9dq+eEKSqN9v8LfET1jR0Oco0MWRkl4MZapsGsLbC1kcVkfISVNeTGn3Atl8fBBsCXdvC+8gtf53q6efHuhuJnonETNiwAwD5Vct77J4tj99O69N39dj9RERE+pNCLkv2tSdomfszCl1MsxQXCnUx0z4Sp9CDoS776uNRh3URERHptqqJH6fq4DPIvvE06+//MYVs55Vu4kChLmaCAUMhCHqspS6/9gMK61bGZuSriIhIOUqPP4qqQ88h99ZCskueLXVxuhTfB8P9VJBIUnPMVzY8ht1eueKkwwp1IiIi2ye91zQSw3aP7bKWCnUxlBy+R4/dK9+8GIKQcKhWbBAREdlecQ10oMevsZR963la/tJ57q9tkWteTNi404b18kRERKQyqaUuhvLvLyXz4lyq9j+RIF27XfeqPuxcCi2aWkJERKTSqaUuhoLiCNieGCwR1g8hMXTUdt9HRERE4k2hLoY2zFX34faFuuzSF2iZdwuF1rU9USwRERGJMYW6GAobmoDtb6nLvrWQzN8ehZT604mIiFQ6hboYClLVBDUN2z0Bcb55MeGQXWK9pImIiIj0DH3ax1TVQacR1A/Z5usL+Ty595aQskN7sFQiIiISVwp1MZUac9B2XZ9f+Q5kWzXpsIiISD+hx68xlf/w77S9MHeb15fLF1eSCIcp1ImIiPQHCnUxlVv+Oq3zbyW/unmbrk+M3IfqGRcRDhzewyUTERGROFKoi6mwOFfdtg6WCGsHkhp9AEGgKhYREekP9IkfU8HA4lx12xDqCrkMLX/5H3LNb/RwqURERCSuFOpiKqiqh1TNNk1AnF/xFpkXH9zmR7ciIiJSfnp19KuZnQ5cCaSAH7r7Tzscmwjc3OH0JuADdx9vZmcD3wHeLR67x92vMLNdgFuBYYADZ7j7mt58DaUSBAFhwzDyq7sf6nLFQRIa+SoiItJ/9FqoM7OdgG8Ck4BWYL6ZPezuiwDcfQEwsXhuLfAkcGHx8snA593915vc9nrgene/3cy+BnwN+FJvvYZSS9lUIOj2dbnmxQTVA7ZrnjsREREpL73ZUjcDeMjd3wcwszuAk4Gruzj3K8Cf3f3R4vb+wFgz+yrwHHApsAY4DDi+eM7NwJ+p4FCXHn/UNl2Xb15M2LQbQdD9QCgiIiLlqTdD3Y7Asg7by4ADNj3JzAYCFwB7b3LudcB84FvAT4DLgFXunu1wzs7dKdCQIfUbbTc1DejO5X0u37aetneXkG4aSVhdt9XXrF65jEHjD6Ex5q+vu+JeX7Ix1Vd5UX2VF9VXeemr+urNUBcChQ7bAZDv4rwzgbvcfUPnMXc/of1nM7sWeA24fJP7sZn7bdaKFWvI56NbNDUNoLl5dXcu73PZd15i/ZxrqJl1Gcmdx2/VNYVsG9XTL6CtcWTsX193lEN9yT+ovsqL6qu8qL7Ky7bUVxgGnRqituq6bl+x9ZYCIzpsDwfe6eK844Hb2zfMbKCZ/XuH4wGQBZYDA80sUdw/YjP3qxjtc9V1Z1qTIJkmNeZAEo079VaxREREJIZ6M9TNBY40s6biQIiTgD92PMHMAqKBFI912L0GuNzMphS3LwHudPcMMA84tbj/LOAPvVj+kgvqBkMi2a1Ql/F5ZN54phdLJSIiInHUa6HO3d8GrgAeBhYAt7n7k2Z2r5lNLp7WBLS5e0uH63LAKcDPzOwlotB3efHwRcAFZrYIOJRoupSKFQQh4YBh3VpVovWZ35N9ZX4vlkpERETiqFfnqXP324DbNtk3q8PPy4key2563Txgvy72LwGm9XhBYyxoaNrqlrpCyxoKq5sJ95rWu4USERGR2NGKEjGXHGGEg7dukK8mHRYREem/erWlTrZfekLUsNm6YA7Z157qfHziLFK7TyG79EVaHvklAImmUX1ZRBEREYkBhboyEaTrooETm+5PVkU/JNOEQ3YhYVMJ0rV9XDoREREpNYW6MpEeN530uOmbPZ4cPpbkRz/XhyUSERGROFGfOhEREZEKoFAnIiIiUgEU6kREREQqgEKdiIiISAVQqBMRERGpAAp1IiIiIhVAoU5ERESkAijUiYiIiFQAhToRERGRCtBfVpRIAIRhsNHOTbcl3lRf5UX1VV5UX+VF9VVeultfHc5PdOe6oFAodOsXlampwLxSF0JERESkGw4FHt3ak/tLqKsC9geWAbkSl0VERETkn0kAI4CngNatvai/hDoRERGRiqaBEiIiIiIVQKFOREREpAIo1ImIiIhUAIU6ERERkQqgUCciIiJSARTqRERERCqAQp2IiIhIBegvy4RtxMxOB64EUsAP3f2nJS6SbMLMGoD5wGx3f8PMZgDfB2qA/3X3K0taQNnAzK4CTilu3uPul6u+4svMrgZOBgrATe7+fdVX/JnZdcBQdz/HzCYCNwINwCPAhe6eLWkBBQAzexgYBmSKuz4F7E4fZY5+11JnZjsB3yRaOmwicIGZjSttqaQjM5tCtCzKHsXtGuAXwHHAXsD+Zvax0pVQ2hXDwExgX6K/p0lmdhqqr1gys8OBI4B9gMnApWY2AdVXrJnZkcDZHXbdClzi7nsAAXB+SQomGzGzgOhza4K7T3T3icBS+jBz9LtQB8wAHnL39919LXAH0bdWiY/zgYuBd4rbBwCvuPvi4rfRW4FPlKpwspFlwBfcvc3dM8BLRG9qqq8Ycvc/A9OL9TKM6GnNIFRfsWVmjUSh4FvF7V2BGnd/vHjKzai+4sKK/73fzJ4zs0vo48zRH0PdjkQfRO2WATuXqCzSBXc/z93nddilOospd3+x/cPFzMYSPYbNo/qKLXfPmNk3gEXAg+jvK+7+G7gC+KC4rfqKr8FEf1MnAEcCFwK70If11R9DXUjUl6RdQPQhJPGlOos5M/sI8ADwReB1VF+x5u5XAU3ASKKWVdVXDJnZecBb7v5gh916P4wpd3/M3c9y9w/d/T3gJuBq+rC++mOoWwqM6LA9nH885pN4Up3FmJkdQvTt9Mvufguqr9gysz2Lnexx93XA74BpqL7i6lRgppktIAoHxwLnofqKJTObWuz/2C4A3qAP66s/jn6dC3zdzJqAtcBJwAWlLZJswROAmdkYYDFwOlHHbikxMxsJ3AWc6u4PFXervuJrNPANM5tK1HpwHNHjve+qvuLH3Y9q/9nMzgGmufu5ZvaCmR3i7n8B/hX4Q6nKKBsZBFxtZgcTjXQ9GzgTuLWvMke/a6lz97eJ+ic8DCwAbnP3J0tbKvln3L0FOAf4LVE/oJeJOptK6V0GVAPfN7MFxRaFc1B9xZK73wvcAzwLPA3Md/fbUX2VmzOAH5jZy0A98KMSl0cAd5/Dxn9fvygG7z7LHEGhUNjyWSIiIiISa/2upU5ERESkEinUiYiIiFQAhToRERGRCqBQJyIiIlIBFOpEREREKoBCnYj0S2Y2yszWlLocIiI9RaFOREREpAL0xxUlREQ2y8zSwDXA4UCCaCLRz7j7KjObDXwVSAPDgFvc/WtmdhvwtLt/r3iPTxPN/n+qmR0DXFm8Zh1wmbs/ZmZ7Eq0NWU20nNCN7n59n75YEakoaqkTEdnYl4EsMMndJxCt0/gdMwuALwBnu/tk4EDgK2Y2FLiBaFWGducAN5jZWOBbwCx335doeaDfmVkd8EXgbnefBMwCDjMzvSeLyDbTihIi0i+Z2SjgBXev32T/k0RrOK4r7koDy919mpnVA7MBA/YCPkG0nuqbwN+A04rXzQF2Bz5NtBD70g6/ookoxI0EfgX8iWhN6jvcfXlPv04R6T/0rVBEZGMJ4LPuPtHdJwIHACcXW9eeBfYDniFqacsAgbsXiB6lngWcC9xU3JcAHmy/V/F+BxKFyTnAWOA3wL7AQjPbuU9fqYhUFIU6EZGN3QdcYmbp4uPQG4BvEwWwBuBKd78bmAZUEQU3gJuBY4la735Z3PcgMLPYfw4zmwU8D9QU++Gd6u63AxcBq4ha90REtokev4pIv1R8/LoYWLvJoYOAC4lCWwJYQNQXbg1RwJsOtAILgY8An3f3+4r3/B2QdPdjO/yeTwBXEA2GyAKfc/d5ZrYXcCNQD+SIHsF+qdjCJyLSbQp1IiIiIhVAj19FREREKoBCnYiIiEgFUKgTERERqQAKdSIiIiIVQKFOREREpAIo1ImIiIhUAIU6ERERkQqgUCciIiJSAf4ffFh6E+UeZOMAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "

Optimal tree size:

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
TrainTest
Leaves
2.00.81250.8
3.00.81250.8
\n", "
" ], "text/plain": [ " Train Test\n", "Leaves \n", "2.0 0.8125 0.8\n", "3.0 0.8125 0.8" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Determine actual optimal tree using test set.\n", "\n", "results = []\n", "for mln in np.arange(2, 50):\n", " clf = tree.DecisionTreeClassifier(max_leaf_nodes=mln).fit(X[train], y[train])\n", "\n", " accuracy_train = clf.score(X[train], y[train]) \n", " accuracy_test = clf.score(X[~train], y[~train]) \n", " results += [[mln, accuracy_train, accuracy_test]]\n", "\n", "plt.figure(figsize=(10,5))\n", "plot_df = pd.DataFrame(np.asarray(results), columns=['Leaves', 'Train', 'Test']).set_index('Leaves')\n", "sns.lineplot(data=plot_df);\n", "plt.ylabel('accuracy')\n", "plt.show();\n", "\n", "display(HTML('

Optimal tree size:

'))\n", "display(plot_df[plot_df['Test'] == plot_df['Test'].max()])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (i) Produce a pruned tree corresponding to the optimal tree size obtained using cross-validation. If cross-validation does not lead to selection of a pruned tree, then create a pruned tree with five terminal nodes.\n", "\n", "### (j) Compare the training error rates between the pruned and unpruned trees. Which is higher?\n", "\n", "### (k) Compare the test error rates between the pruned and unpruned trees. Which is higher?" ] }, { "cell_type": "code", "execution_count": 326, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
testerror rate
0unpruned_train0.010000000000000009
1pruned_train0.15000000000000002
2unpruned_test0.24444444444444446
3pruned_test0.21851851851851856
\n", "
" ], "text/plain": [ " test error rate\n", "0 unpruned_train 0.010000000000000009\n", "1 pruned_train 0.15000000000000002\n", "2 unpruned_test 0.24444444444444446\n", "3 pruned_test 0.21851851851851856" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "clf_unpruned = tree.DecisionTreeClassifier().fit(X[train], y[train])\n", "clf_pruned = tree.DecisionTreeClassifier(max_leaf_nodes=8).fit(X[train], y[train])\n", "\n", "scores = [['unpruned_train', 1 - clf_unpruned.score(X[train], y[train])],\n", " ['pruned_train', 1 - clf_pruned.score(X[train], y[train])],\n", " ['unpruned_test', 1 - clf_unpruned.score(X[~train], y[~train])],\n", " ['pruned_test', 1 - clf_pruned.score(X[~train], y[~train])]]\n", "\n", "plot_df = pd.DataFrame(scores, columns=['test', 'error rate'])\n", "\n", "plt.figure(figsize=(10, 6))\n", "sns.barplot(x='test', y='error rate', data=plot_df)\n", "plt.show();\n", "\n", "display(plot_df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The unpruned tree performs best in the training setting where as the pruned tree performs best in the test setting. This suggests that the unpruned tree is overfitting the training data leading to poor test score." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 10. We now use boosting to predict Salary in the Hitters data set.\n", "\n", "### (a) Remove the observations for whom the salary information is unknown, and then log-transform the salaries." ] }, { "cell_type": "code", "execution_count": 341, "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", "
InterceptLeague[T.N]Division[T.W]NewLeague[T.N]AtBatHitsHmRunRunsRBIWalksYearsCAtBatCHitsCHmRunCRunsCRBICWalksPutOutsAssistsErrors
01.01.01.01.0315.081.07.024.038.039.014.03449.0835.069.0321.0414.0375.0632.043.010.0
11.00.01.00.0479.0130.018.066.072.076.03.01624.0457.063.0224.0266.0263.0880.082.014.0
21.01.00.01.0496.0141.020.065.078.037.011.05628.01575.0225.0828.0838.0354.0200.011.03.0
31.01.00.01.0321.087.010.039.042.030.02.0396.0101.012.048.046.033.0805.040.04.0
41.00.01.00.0594.0169.04.074.051.035.011.04408.01133.019.0501.0336.0194.0282.0421.025.0
\n", "
" ], "text/plain": [ " Intercept League[T.N] Division[T.W] NewLeague[T.N] AtBat Hits HmRun \\\n", "0 1.0 1.0 1.0 1.0 315.0 81.0 7.0 \n", "1 1.0 0.0 1.0 0.0 479.0 130.0 18.0 \n", "2 1.0 1.0 0.0 1.0 496.0 141.0 20.0 \n", "3 1.0 1.0 0.0 1.0 321.0 87.0 10.0 \n", "4 1.0 0.0 1.0 0.0 594.0 169.0 4.0 \n", "\n", " Runs RBI Walks Years CAtBat CHits CHmRun CRuns CRBI CWalks \\\n", "0 24.0 38.0 39.0 14.0 3449.0 835.0 69.0 321.0 414.0 375.0 \n", "1 66.0 72.0 76.0 3.0 1624.0 457.0 63.0 224.0 266.0 263.0 \n", "2 65.0 78.0 37.0 11.0 5628.0 1575.0 225.0 828.0 838.0 354.0 \n", "3 39.0 42.0 30.0 2.0 396.0 101.0 12.0 48.0 46.0 33.0 \n", "4 74.0 51.0 35.0 11.0 4408.0 1133.0 19.0 501.0 336.0 194.0 \n", "\n", " PutOuts Assists Errors \n", "0 632.0 43.0 10.0 \n", "1 880.0 82.0 14.0 \n", "2 200.0 11.0 3.0 \n", "3 805.0 40.0 4.0 \n", "4 282.0 421.0 25.0 " ] }, "execution_count": 341, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hitters_df = pd.read_csv('./data/Hitters.csv')\n", "\n", "# Drop null observations\n", "hitters_df = hitters_df.dropna()\n", "assert hitters_df.isnull().sum().sum() == 0\n", "\n", "f = 'np.log(Salary) ~ ' + ' + '.join(hitters_df.columns.drop(['Salary']))\n", "y, X = pt.dmatrices(f, hitters_df)\n", "\n", "pd.DataFrame(X, columns=X.design_info.column_names).head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (b) Create a training set consisting of the first 200 observations, and a test set consisting of the remaining observations." ] }, { "cell_type": "code", "execution_count": 346, "metadata": {}, "outputs": [], "source": [ "# Index for Training set of 200\n", "np.random.seed(1)\n", "train_sample = np.random.choice(np.arange(len(hitters_df)), size=200, replace=False)\n", "train = np.asarray([(i in train_sample) for i in hitters_df.index])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (c) Perform boosting on the training set with 1,000 trees for a range of values of the shrinkage parameter λ. Produce a plot with different shrinkage values on the x-axis and the corresponding training set MSE on the y-axis." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (d) Produce a plot with different shrinkage values on the x-axis and the corresponding test set MSE on the y-axis." ] }, { "cell_type": "code", "execution_count": 465, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
mse_trainmse_test
learning_rate
0.002290.0710570.206531
\n", "
" ], "text/plain": [ " mse_train mse_test\n", "learning_rate \n", "0.00229 0.071057 0.206531" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Gradient boosting\n", "\n", "max_features = 'auto'\n", "tree_count = 1000\n", "\n", "# np.arange(0.0001, 1.2, 0.01)\n", "\n", "results = []\n", "for learning_rate in np.logspace(-10, np.log(1.3), 100): \n", " regr = GradientBoostingRegressor(max_features=max_features, \n", " random_state=1, \n", " n_estimators=tree_count,\n", " learning_rate=learning_rate)\n", " regr = regr.fit(X[train], y[train])\n", " y_hat_train = regr.predict(X[train])\n", " y_hat_test = regr.predict(X[~train])\n", " \n", " mse_train = metrics.mean_squared_error(y[train], y_hat_train)\n", " mse_test = metrics.mean_squared_error(y[~train], y_hat_test)\n", " \n", " results += [[learning_rate, mse_train, mse_test]]\n", "\n", "# Plot\n", "df = pd.DataFrame(np.asarray(results), \n", " columns=['learning_rate', 'mse_train', 'mse_test']).set_index('learning_rate')\n", "plt.figure(figsize=(10,10))\n", "ax = sns.lineplot(data=df)\n", "ax.set_xscale('log')\n", "plt.ylabel('MSE')\n", "plt.show();\n", "\n", "# Show best learning rate\n", "display(df[df['mse_test'] == df['mse_test'].min()])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (e) Compare the test MSE of boosting to the test MSE that results from applying two of the regression approaches seen in Chapters 3 and 6." ] }, { "cell_type": "code", "execution_count": 446, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "MSE test: 0.455\n" ] } ], "source": [ "# Naive ols\n", "model = sm.OLS(y[train], X[train]).fit()\n", "y_hat = model.predict(X[~train])\n", "\n", "mse_test = metrics.mean_squared_error(y[~train], y_hat)\n", "print('MSE test: {}'.format(np.around(mse_test, 3)))" ] }, { "cell_type": "code", "execution_count": 463, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "RMSE Train CV: 0.6482094156231718\n", "@Lambda: 9.300000000000002\n", "MSE test: 0.469\n", "RMSE test: 0.685\n" ] } ], "source": [ "def lasso_cv(X, y, λ, k):\n", " \"\"\"Perform the lasso with \n", " k-fold cross validation to return mean MSE scores for each fold\"\"\"\n", " # Split dataset into k-folds\n", " # Note: np.array_split doesn't raise excpetion is folds are unequal in size\n", " X_folds = np.array_split(X, k)\n", " y_folds = np.array_split(y, k)\n", " \n", " MSEs = []\n", " for f in np.arange(len(X_folds)):\n", " # Create training and test sets\n", " X_test = X_folds[f]\n", " y_test = y_folds[f]\n", " X_train = X.drop(X_folds[f].index)\n", " y_train = y.drop(y_folds[f].index)\n", " \n", " # Fit model\n", " model = Lasso(alpha=λ, copy_X=True, fit_intercept=True, max_iter=10000,\n", " normalize=False, positive=False, precompute=False, random_state=0,\n", " selection='cyclic', tol=0.0001, warm_start=False).fit(X_train, y_train)\n", " \n", " # Measure MSE\n", " y_hat = model.predict(X_test)\n", " #print(y_test)\n", " MSEs += [metrics.mean_squared_error(y_test, y_hat)]\n", " return MSEs\n", "\n", "X_train = pd.DataFrame(X[train], columns=X.design_info.column_names)\n", "y_train = pd.DataFrame(y[train], columns=['Price'])\n", "\n", "#lambdas = np.arange(.000001, 0.01, .0001)\n", "\n", "lambdas = np.arange(0.2, 20, .1)\n", "\n", "MSEs = [] \n", "for l in lambdas:\n", " MSEs += [np.mean(lasso_cv(X_train, y_train, λ=l, k=10))]\n", "\n", "sns.scatterplot(x='λ', y='MSE', data=pd.DataFrame({'λ': lambdas, 'MSE': MSEs}))\n", "plt.show();\n", "\n", "# Choose model\n", "lamb = min(zip(MSEs, lambdas))\n", "print('RMSE Train CV: {}\\n@Lambda: {}'.format(np.sqrt(lamb[0]), lamb[1]))\n", "\n", "\n", "# Use chosen model on test set prediction\n", "model = Lasso(alpha=lamb[1], copy_X=True, fit_intercept=True, max_iter=10000,\n", " normalize=False, positive=False, precompute=False, random_state=0,\n", " selection='cyclic', tol=0.0001, warm_start=False).fit(X[train], y[train])\n", "\n", "y_hat = model.predict(X[~train])\n", "\n", "mse = metrics.mean_squared_error(y[~train], y_hat)\n", "rmse = np.sqrt(mse)\n", "\n", "print('MSE test: {}'.format(np.around(mse, 3)))\n", "print('RMSE test: {}'.format(np.around(rmse, 3)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Comment:**\n", "\n", "Boosting yields a test MSE of 0.207, which is significantly better than naive OLS (0.455) and the Lasso (0.469). \n", "\n", "It is interesting that naive OLS with all features outperforms the lasso. This suggests that the lasso is unable to identify redundant features in the model." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (f) Which variables appear to be the most important predictors in the boosted model?" ] }, { "cell_type": "code", "execution_count": 468, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.20666656200483657\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAqwAAAJhCAYAAACEtOJaAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3XtclHX+///nHFZSEaMJbKX65McDZmaya4riEdsVFR0yUvsQHjYpb2uNtZuEiWmthbKba0hsy9rRzbISITpZ6bZirahpm4qHT2nZlF9ABDkYx5nfH33iF+sBUGAuxsf9dut2m7nmel/X6/3un6fDa96Xye12uwUAAAAYlNnTBQAAAADnQ2AFAACAoRFYAQAAYGgEVgAAABgagRUAAACGRmAFAACAoRFYAQAAYGgEVgAAABgagRUAAACGRmAFAACAoRFYAQAAYGgEVgAAABgagRUAAACGZvV0AWg5xcUVcrncni7D8Gw2XxUVlXu6jHaBtWoe1qvpWKvmYb2ajrVqOk+tldlskr9/52aNIbB6EZfLTWBtItap6Vir5mG9mo61ah7Wq+lYq6ZrL2tlcrvd7aNSAAAAtJrKqhqVlVa2+n3MZpNsNt9mjeEbVi/iSMrUieIKT5cBAADaoXXJMSpT6wfWC8GPrgAAAGBoBFYAAAAYGoEVAAAAhkZgBQAAgKERWAEAAGBoBNZzKC8v16OPPqrIyEjZ7XbFxsZq//799Z8fPnxYwcHB2rRpU4NxKSkp2rVrlyQpNjZWv/rVr2S32zVp0iTNmDFD33333XnvW1ZWpnnz5rX8hAAAANopAutZuFwuxcXFqWvXrsrMzFRWVpbmzZunuLg4FRcXS5I2bNigiIgIrV+/vsHYnTt3qq6urv79smXLlJWVpezsbIWHh2vFihXnvfepU6d04MCBlp8UAABAO0VgPYvc3FwdP35cDodDVusPW9WGhoYqKSlJLpdLNTU1ys7O1v3336/9+/fr2LFjkqTMzEzt27dPiYmJOnTo0BnXLS8v15VXXln/2uFwaNq0aRozZowefvhhud1uLVu2TAUFBXzLCgAA8H94cMBZ5OXlqW/fvjKbG+b5UaNGSZI+/PBDde/eXT169NAtt9yi9evXa8GCBYqKitKGDRt07733Kjg4WJKUmJioTp06qaysTKdOndLatWslSR999JGuv/56paSkqLq6WhMnTtT+/fuVmJioGTNm6Omnn27bSQMAABgUgfUszGazfHx8zvn5hg0bFBkZKUmaMGGCHnzwQc2fP18dOnQ449xly5ZpyJAhkqT33ntPs2fP1ubNmxUZGanPP/9cL7zwgo4cOaKSkhKdPn1al19+eetMCgAAoJ2iJeAs+vfvr7y8PLnd7gbHV65cqXfeeUc5OTl67rnnFB4ersTERJWWluqDDz5o9LoRERFyuVw6evSo1q5dq+TkZF1xxRW688471bNnzzPuBwAAAALrWQ0aNEg2m02pqan1P6DKyclRRkaGnE6nQkNDtXXrVm3ZskX/+Mc/NHfuXL366quSJIvF0uBHVz+1b98+1dbWqkePHvr44481bdo0TZ48WVVVVTp48KBcLpesVqtqa2vbbK4AAABGR0vAWZhMJqWlpSkpKUmRkZGyWq3y9/dXenq6HnroIT3wwAMNzo+JidGaNWv05ZdfasSIEVqyZEn9bgA/9rBaLBbV1tbqT3/6k3x9fTVz5kwtXbpU6enp8vX1VUhIiJxOpwYNGqTu3bsrNja2vt8VAADgUmZy83dor+FIytSJ4gpPlwEAANqhdckxKiwsa/X7mM0m2Wy+zRvTSrUAAAAALYLACgAAAEMjsAIAAMDQCKwAAAAwNAIrAAAADI3ACgAAAENjWysAAACosqpGZaWVrX6fC9nWigcHeJGionK5XPz7ozEBAV3aZJ85b8BaNQ/r1XSsVfOwXk3HWjVde1orWgIAAABgaARWAAAAGBqBFQAAAIZGD6sXaW4D86UsIKCLp0toN1pqrdqqmR8A4H0IrF7EkZSpE8UVni4DOKt1yTEqE4EVANB8tAQAAADA0AisAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0Ais/6G8vFyPPvqoIiMjZbfbFRsbq/3792v27Nn68MMP689bsWKFQkJCVF1dXX9s+PDhcjqd57x2bGyscnNzlZubq9jY2FadBwAAgLcgsP6Ey+VSXFycunbtqszMTGVlZWnevHmKi4vT4MGD9emnn9af+8knn2jgwIH1x77++mt16tRJV199tafKBwAA8EoE1p/Izc3V8ePH5XA4ZLX+sEVtaGiokpKSFBYWpj179kiS8vPz1aFDB40bN07btm2TJO3atUthYWGSpHfffVdTp07V5MmTFRERod27d5/zni+++KJiY2P1/fff6/nnn9fkyZMVFRWlRx55pJVnCwAA0D4QWH8iLy9Pffv2ldnccFlGjRqlG264QceOHVNVVZW2bdumsLAwhYWFnRFYXS6XXn31VT3zzDN68803NWfOHKWnp5/1fhkZGXr//ff1zDPPqEOHDvrrX/+qDRs2KCMjQzU1NcrPz2/1OQMAABgdT7r6CbPZLB8fn7N+ZrFYdNNNN2nv3r3atm2bYmJidM0116iyslKnTp3Snj17tGjRIpnNZj399NPasmWLjh49qh07dpwRgCXp8OHDWrx4sVauXKnOnTtLkkJCQhQdHa2xY8dq9uzZ6tatW6vOFwAAoD3gG9af6N+/v/Ly8uR2uxscX7lypbZv367Q0FDt3r1bn3/+uQYOHChJGjp0qDZv3ix/f3/5+vqqoqJC0dHRcjqduvnmm8/546rOnTtr9erVSk5O1unTpyVJaWlpWrp0qdxut+bMmaMdO3a07oQBAADaAQLrTwwaNEg2m02pqamqq6uTJOXk5CgjI0O9evXS0KFDlZWVpT59+tT3uIaFhen555+v71/96quvZDKZNHfuXA0ZMkQffPBB/bV+KigoSOHh4Ro8eLBSUlJ08uRJTZgwQX369NH8+fMVFhamQ4cOtd3kAQAADIrA+hMmk0lpaWk6duyYIiMjNWnSJP3tb39Tenq6rrzySvXp00clJSUaPnx4/ZjQ0FAdOXJEw4YNkyT17dtX119/vcaPH6+JEyfK399f33333TnvGR8fr+zsbB0/flzTpk1TdHS0pkyZourqat12222tPmcAAACjM7n/8+/faLccSZk6UVzh6TKAs1qXHKPCwjJPl9GqAgK6eP0cWwpr1TysV9OxVk3nqbUym02y2XybN6aVagEAAABaBIEVAAAAhkZgBQAAgKERWAEAAGBoBFYAAAAYGoEVAAAAhsajWb1IysIoT5cAnFNlVY2nSwAAtFMEVi9SVFQul4ttdRvDHn1Nx1oBAIyAlgAAAAAYGoEVAAAAhkZgBQAAgKHRw+pFmvtc3ktZQECXNrtXZVWNykor2+x+AAB4GwKrF3EkZepEcYWny8B/WJccozIRWAEAuFC0BAAAAMDQCKwAAAAwNAIrAAAADI3ACgAAAEMjsAIAAMDQCKzN8Nhjj8nhcDQ4tm3bNo0dO1bl5eUeqgoAAMC7EVib4fe//7327dunzZs3S5JOnz6tpUuX6oknnpCvL3ugAgAAtAb2YW2Gzp07a9myZXr44Yc1dOhQpaSkKDw8XEOGDNG///1vJSUlqaqqSldccYUee+wxBQUF6V//+peeeuopVVVVqaysTA8//LDCw8P14IMPqry8XF9//bUSEhL08ccfa/v27TKbzfr1r3+t3/72t56eLgAAgCHwDWszDRs2TMOHD9fChQv18ccf63e/+52qq6uVmJioVatWaePGjYqNjdUjjzwiSfr73/+u5cuXa+PGjVq6dKlSUlLqr2Wz2fTuu++qR48e2r59u9588029/PLLOnz4sKqrqz01RQAAAEPhG9YLkJCQoNGjR+vpp5/WZZddpgMHDsjpdOqee+6RJLndblVVVUmSVq5cqS1btuitt97Sv//9b50+fbr+OjfddJMk6aqrrpLFYtH//M//aPTo0VqwYIE6dOjQ9hMDAAAwIALrBfD19ZWfn5+CgoIkSXV1dbruuuu0cePG+vdFRUVyu9264447NGzYMN18880KDQ3VwoUL66/j4+MjSerQoYNef/117dixQ1u3btW0adO0bt06XXvttW0/OQAAAIOhJaAF9OrVS4WFhdq9e7ckaf369YqPj9fJkyfldDrlcDg0cuRIbd68WXV1dWeM37t3r2bNmqXBgwcrISFB1113nY4ePdrW0wAAADAkvmFtAZdddplWrVqlxx9/XNXV1fLz89Py5ctls9k0efJkTZw4URaLRUOHDlVFRYUqKysbjL/xxht1ww03KDIyUh07dtSgQYM0fPhwD80GAADAWExut9vt6SLQMhxJmTpRXOHpMvAf1iXHqLCwzNNlXJCAgC7ttnZPYL2ajrVqHtar6VirpvPUWpnNJtlszdsOlJYAAAAAGBqBFQAAAIZGYAUAAIChEVgBAABgaARWAAAAGBqBFQAAAIbGPqxeJGVhlKdLwFlUVtV4ugQAANo1AqsXKSoql8vFtrqNYY8+AADaF1oCAAAAYGgEVgAAABgagRUAAACGRg+rF2nuc3kvZQEBXVrt2pVVNSorrWy16wMAcKkhsHoRR1KmThRXeLqMS9665BiVicAKAEBLoSUAAAAAhkZgBQAAgKERWAEAAGBoBFYAAAAYGoEVAAAAhkZgvQjl5eV69NFHFRkZKbvdrtjYWO3fv19Op1Ph4eFnnB8cHCxJ2rx5s5566ilJUkpKinbt2tWmdQMAALQnBNYL5HK5FBcXp65duyozM1NZWVmaN2+e4uLiVFJSct6xY8eO1fz58yVJO3fuVF1dXVuUDAAA0C6xD+sFys3N1fHjx+VwOGQ2/5D7Q0NDlZSUJJfLdd6xGRkZ2rFjh0JDQ7Vv3z4lJiYqNTVVn3zyiTZu3Ciz2awBAwbosccea4upAAAAGBqB9QLl5eWpb9++9WH1R6NGjZLT6VRBQYHsdvt5rxEVFaUNGzbo3nvvVa9evTRz5kzl5OTIYrFo0aJFys/PV7du3VpzGgAAAIZHYL1AZrNZPj4+5/w8MDBQWVlZDY792MN6NhaLRSEhIYqOjtbYsWM1e/ZswioAAIDoYb1g/fv3V15entxud4PjK1euVG5u7gVdMy0tTUuXLpXb7dacOXO0Y8eOligVAACgXSOwXqBBgwbJZrMpNTW1/kdTOTk5ysjIUK9evZp8HYvForq6Op08eVITJkxQnz59NH/+fIWFhenQoUOtVT4AAEC7QUvABTKZTEpLS1NSUpIiIyNltVrl7++v9PR0+fn5Nfk6I0aM0JIlS7RixQpNmzZN0dHR6tixo3r06KHbbrutFWcAAADQPpjc//k3bbRbjqRMnSiu8HQZl7x1yTEqLCzzdBktIiCgi9fMpS2wXk3HWjUP69V0rFXTeWqtzGaTbDbf5o1ppVoAAACAFkFgBQAAgKERWAEAAGBoBFYAAAAYGoEVAAAAhkZgBQAAgKGxD6sXSVkY5ekSIKmyqsbTJQAA4FUIrF6kqKhcLhfb6jaGPfoAAGhfaAkAAACAoRFYAQAAYGgEVgAAABgagRUAAACGxo+uvIjN5uvpEtqNgIAuFzSusqpGZaWVLVwNAAA4HwKrF3EkZepEcYWny/Bq65JjVCYCKwAAbYmWAAAAABgagRUAAACGRmAFAACAoRFYAQAAYGgEVgAAABgauwQ0ory8XE8++aR27twpi8UiPz8/JSQkqGvXroqIiFDPnj0lSS6XSxUVFYqKipLD4fBw1QAAAN6DwHoeLpdLcXFxGjJkiDIzM2W1WrV9+3bFxcUpPT1dgYGBysrKqj8/Pz9f48aN08SJE+uDLAAAAC4OLQHnkZubq+PHj8vhcMhq/SHbh4aGKikpSS6X64zzCwsL5Xa71blzZ+Xm5io2Nrb+s4SEBGVkZMjpdCoqKkoLFixQZGSkZs6cqZKSEtXU1GjBggWKiopSVFSUXnvttTabJwAAgJERWM8jLy9Pffv2ldnccJlGjRqlK664QgUFBbLb7YqIiNCQIUO0atUqpaam6qqrrjrvdQ8ePKjZs2frrbfekp+fn7Kzs7Vnzx6dOnVKmZmZ+utf/6pdu3a15tQAAADaDVoCzsNsNsvHx+ecn//YEuByubR8+XJ9+eWXCgsLa/S6NptN/fr1kyT17t1bp06dUu/evXX06FHdddddGjlypOLj41tsHgAAAO0Z37CeR//+/ZWXlye3293g+MqVK5Wbm1v/3mw2Kz4+Xvn5+Xr22WclSSaTqcG4mpqa+tc/DcE/nufv76+3335bd955p44ePapbb71VpaWlrTU1AACAdoPAeh6DBg2SzWZTamqq6urqJEk5OTnKyMhQr169GpxrtVoVHx+vtLQ0FRYWyt/fX998842qqqpUUlKiTz/99Lz32rx5sxYsWKDRo0crMTFRnTp10vHjx1ttbgAAAO0FLQHnYTKZlJaWpqSkJEVGRspqtcrf31/p6eny8/M74/yRI0cqJCRETz31lJYtW6ZRo0Zp4sSJCgoK0i9/+cvz3mvkyJF6//33NXHiRPn4+Gjy5MkKDg5urakBAAC0Gyb3f/69G+2WIylTJ4orPF2GV1uXHKPCwjJPl9FmAgK6XFLzvVisV9OxVs3DejUda9V0nlors9kkm823eWNaqRYAAACgRRBYAQAAYGgEVgAAABgagRUAAACGRmAFAACAobGtlRdJWRjl6RK8XmVVTeMnAQCAFkVg9SJFReVyudilrDFseQIAQPtCSwAAAAAMjcAKAAAAQyOwAgAAwNAIrAAAADA0fnTlRZr7XN5LWUBAlyadV1lVo7LSylauBgAAnA+B1Ys4kjJ1orjC02V4lXXJMSoTgRUAAE+iJQAAAACGRmAFAACAoRFYAQAAYGgEVgAAABgagRUAAACGxi4BF6G8vFxPPvmkdu7cKYvFIj8/PyUkJKhr166KiIhQz549JUkul0sVFRWKioqSw+FQbm6u5s6dq2uvvVZut1s1NTWaPn26Zs6cKUlKSEjQ4MGDNWXKFE9ODwAAwBAIrBfI5XIpLi5OQ4YMUWZmpqxWq7Zv3664uDilp6crMDBQWVlZ9efn5+dr3LhxmjhxoiSpf//+Wrt2raQfgu/EiRMVFhamXr16eWQ+AAAARkVLwAXKzc3V8ePH5XA4ZLX+kPtDQ0OVlJQkl8t1xvmFhYVyu93q3LnzGZ9VVVXJYrGoS5embWYPAABwKeEb1guUl5envn37ymxumPlHjRolp9OpgoIC2e12VVVVqbi4WDfeeKNSU1N11VVX6euvv9a+fftkt9vlcrl07NgxjR8/XoGBgR6aDQAAgHHxDesFMpvN8vHxOefnP7YEvPPOO7Lb7XK73QoLC6v/vH///srKylJ2drY+/vhjffXVV0pPT2+L0gEAANoVAusF6t+/v/Ly8uR2uxscX7lypXJzc+vfm81mxcfHKz8/X88+++xZr+Xr66vx48dr9+7drVozAABAe0RgvUCDBg2SzWZTamqq6urqJEk5OTnKyMg444dTVqtV8fHxSktLU2Fh4RnXqqur044dO9SvX782qR0AAKA9oYf1AplMJqWlpSkpKUmRkZGyWq3y9/dXenq6/Pz8zjh/5MiRCgkJ0VNPPaVJkybV97CaTCbV1tYqODhYcXFxHpgJAACAsRFYL8IVV1yhP/7xj2f9bMuWLWcce+655+pf79mz55zXXb58+cUXBwAA4CVoCQAAAIChEVgBAABgaARWAAAAGBqBFQAAAIZGYAUAAIChEVgBAABgaGxr5UVSFkZ5ugSvU1lV4+kSAAC45BFYvUhRUblcLnfjJ17iAgK6qLCwzNNlAACAJqIlAAAAAIZGYAUAAIChEVgBAABgaPSwehGbzdfTJRhWZVWNykorPV0GAAC4AARWL+JIytSJ4gpPl2FI65JjVCYCKwAA7REtAQAAADA0AisAAAAMjcAKAAAAQyOwAgAAwNAIrAAAADC0S26XgPLycj355JPauXOnLBaL/Pz8lJCQoK5du2rGjBnasmVLg/ODg4N16NChJl8/ODhYffv2lSS53W6VlZVpxIgRWrJkiSwWS4vOBQAA4FJwSQVWl8uluLg4DRkyRJmZmbJardq+fbvi4uKUnp7eYvfJysqqf11eXq7IyEht27ZNo0aNarF7AAAAXCouqcCam5ur48ePy+FwyGz+oRsiNDRUSUlJcrlc5x2bkZGhjz76SCUlJSooKND06dP17bffavv27br88su1Zs0a+fj4nDGuuLhY33//vS6//HI5nc4G3+KuXr1aknTfffdp+PDhGjdunD799FNZLBatWrVK11xzTQuvAAAAQPtzSQXWvLw89e3btz6s/mjUqFFyOp0qKCiQ3W4/5/i9e/cqOztbp06dUnh4uNasWaNFixYpNjZWOTk5uuWWWyRJdrtdtbW1KioqUs+ePZWYmKibbrpJTqfznNcuLCzU0KFDtXjxYi1fvlwvv/yyEhISWmbiAAAA7dglFVjNZvNZvwX9UWBgYIM/50s/9KT+6Be/+IV8fX3l6/vDI1CHDh0qSQoKClJpaWn9eT9e44UXXlBGRobGjh3bpPpGjBghSerdu7d27drVpDEAAADe7pLaJaB///7Ky8uT2+1ucHzlypXKzc1tdPzPfvazBu+t1vPn/VmzZikgIEDJycmSJJPJ1ODetbW1Dc7/MUz/53kAAACXsksqsA4aNEg2m02pqamqq6uTJOXk5CgjI0O9evVqlXsmJCTojTfe0MGDB+Xn56eSkhKdPHlS1dXVysnJaZV7AgAAeJNLqiXAZDIpLS1NSUlJioyMlNVqlb+/v9LT0+Xn59cq9+zdu7eioqK0YsUKPf/885ozZ46io6N11VVX6cYbb2yVewIAAHgTk5u/PXsNR1KmThRXeLoMQ1qXHKPCwjJJUkBAl/rXOD/WqnlYr6ZjrZqH9Wo61qrpPLVWZrNJNptv88a0Ui0AAABAiyCwAgAAwNAIrAAAADA0AisAAAAMjcAKAAAAQyOwAgAAwNAuqX1YvV3KwihPl2BYlVU1ni4BAABcIAKrFykqKpfLxba6AADAu9ASAAAAAEMjsAIAAMDQCKwAAAAwNHpYvUhzn8vrbSqralRWWunpMgAAQAsjsHoRR1KmThRXeLoMj1mXHKMyEVgBAPA2tAQAAADA0AisAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0AisTTR79mx9+OGH9e9XrFihkJAQVVdX1x8bPny4nE7nWcfHxsYqNzdXubm5io2NbfV6AQAAvAWBtYlCQ0P16aef1r//5JNPNHDgwPpjX3/9tTp16qSrr77aUyUCAAB4JQJrEw0dOlR79uyRJOXn56tDhw4aN26ctm3bJknatWuXwsLC9O6772rq1KmaPHmyIiIitHv37nNe88UXX1RsbKy+//57Pf/885o8ebKioqL0yCOPtMmcAAAA2gMCaxPdcMMNOnbsmKqqqrRt2zaFhYUpLCysQWAdOnSoXn31VT3zzDN68803NWfOHKWnp5/1ehkZGXr//ff1zDPPqEOHDvrrX/+qDRs2KCMjQzU1NcrPz2/L6QEAABgWT7pqIovFoptuukl79+7Vtm3bFBMTo2uuuUaVlZU6deqU9uzZo0WLFmnYsGHasmWLjh49qh07dshsPvPfBIcPH9bixYu1cuVKde7cWZIUEhKi6OhojR07VrNnz1a3bt3aeooAAACGxDeszRAaGqrdu3fr888/18CBAyX90CqwefNm+fv7y2QyKTo6Wk6nUzfffPM5f1zVuXNnrV69WsnJyTp9+rQkKS0tTUuXLpXb7dacOXO0Y8eONpsXAACAkRFYm2Ho0KHKyspSnz59ZLX+8OV0WFiYnn/+eYWFhemrr76SyWTS3LlzNWTIEH3wwQeqq6s74zpBQUEKDw/X4MGDlZKSopMnT2rChAnq06eP5s+fr7CwMB06dKitpwcAAGBIBNZm6NOnj0pKSjR8+PD6Y6GhoTpy5IiGDRumvn376vrrr9f48eM1ceJE+fv767vvvjvn9eLj45Wdna3jx49r2rRpio6O1pQpU1RdXa3bbrutLaYEAABgeCa32+32dBFoGY6kTJ0orvB0GR6zLjlGhYVljZ4XENClSeeBtWou1qvpWKvmYb2ajrVqOk+tldlsks3m27wxrVQLAAAA0CIIrAAAADA0AisAAAAMjcAKAAAAQyOwAgAAwNAIrAAAADA0Hs3qRVIWRnm6BI+qrKrxdAkAAKAVEFi9SFFRuVwuttUFAADehZYAAAAAGBqBFQAAAIZGYAUAAICh0cPqRZr7XN72rrKqRmWllZ4uAwAAtDICqxdxJGXqRHGFp8toM+uSY1QmAisAAN6OlgAAAAAYGoEVAAAAhkZgBQAAgKERWAEAAGBoBFYAAAAYGoG1lTidToWHh59xPDg4WJs3b9ZTTz0lSUpJSdGuXbvaujwAAIB2g8DqAWPHjtX8+fMlSTt37lRdXZ2HKwIAADAu9mH1gIyMDO3YsUOhoaHat2+fEhMTlZqaqk8++UQbN26U2WzWgAED9Nhjj3m6VAAAAI8jsLaigoIC2e32c34eFRWlDRs26N5771WvXr00c+ZM5eTkyGKxaNGiRcrPz1e3bt3asGIAAADjIbC2osDAQGVlZTU4FhwcfNZzLRaLQkJCFB0drbFjx2r27NmEVQAAANHDaihpaWlaunSp3G635syZox07dni6JAAAAI8jsHqYxWJRXV2dTp48qQkTJqhPnz6aP3++wsLCdOjQIU+XBwAA4HEEVg8bMWKElixZoq+++krTpk1TdHS0pkyZourqat12222eLg8AAMDjTG632+3pItAyHEmZOlFc4eky2sy65BgVFpY1e1xAQJcLGncpYq2ah/VqOtaqeVivpmOtms5Ta2U2m2Sz+TZvTCvVAgAAALQIAisAAAAMjcAKAAAAQyOwAgAAwNAIrAAAADA0AisAAAAMjUezepGUhVGeLqFNVVbVeLoEAADQBgisXqSoqFwuF9vqAgAA70JLAAAAAAyNwAoAAABDI7ACAADA0Ohh9SLNfS5ve1ZZVaOy0krCK1+AAAAgAElEQVRPlwEAANoAgdWLOJIydaK4wtNltIl1yTEqE4EVAIBLAS0BAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0AisAAAAMDQC60U6fPiwgoODtWnTpvpjKSkp2rVrlyQpNjZWv/rVr2S32zVp0iTNmDFD33333XmvWVZWpnnz5rVq3QAAAO1FkwNraWlpa9bRbm3YsEERERFav359/bGdO3eqrq6u/v2yZcuUlZWl7OxshYeHa8WKFee95qlTp3TgwIFWqxkAAKA9aTSwHjlyRBMmTNDEiROVn5+v8ePH68svv2yL2gyvpqZG2dnZuv/++7V//34dO3ZMmZmZ2rdvnxITE3Xo0KEzxpSXl+vKK6+sf+1wODRt2jSNGTNGDz/8sNxut5YtW6aCggK+ZQUAAFATAuuyZcu0aNEi2Ww2devWTXfeeaceeeSRtqjN8P75z3+qe/fu6tGjh2655RatX79eUVFR6t+/v5YtW6bg4GBJUmJioux2u8LDw/X888/rtttukyR99NFHuv7667V+/Xpt2rRJO3fu1P79+5WYmKjAwEA9/fTTnpweAACAITQaWEtKShQWFlb/PiYmRuXl5a1aVHuxYcMGRUZGSpImTJigjIwMVVdXn3Hejy0BW7Zs0eOPP67Zs2ervLxckZGRCgsL0wsvvKBly5appKREp0+fbutpAAAAGFqTHs1aVVUlk8kkSSosLJTL5WrVotqDoqIi5eTkaP/+/XrppZfkdrtVWlqqDz744LzjIiIitHjxYh09elSfffaZNm3apKlTp2rYsGE6fPiw3G53G80AAACgfWg0sN5xxx266667VFRUpCeffFJvv/225syZ0xa1GVpWVpZCQ0O1Zs2a+mOrV6/Wq6++KovF0uBHVz+1b98+1dbWqkePHnr66ac1bdo0TZo0SXv37tXBgwflcrlktVpVW1vbVlMBAAAwtEYD6+23367rrrtOH330kWpra/WHP/yhQYvApWrjxo164IEHGhyLiYnRmjVrdM8992jJkiX1uwEkJiaqU6dOslgsqq2t1Z/+9Cf5+vpq5syZWrp0qdLT0+Xr66uQkBA5nU4NGjRI3bt3V2xsrNauXeuJ6QEAABiGyd3I36BnzpypF198sa3qwUVwJGXqRHGFp8toE+uSY1RYWHZBYwMCulzw2EsNa9U8rFfTsVbNw3o1HWvVdJ5aK7PZJJvNt3ljGjuhrKyMHwIBAADAYxptCejYsaPGjBmj4OBgderUqf74M88806qFAQAAAFITAmt0dHRb1AEAAACcVaOB9dZbb22LOgAAAICzajSwhoSE1O/B+lO7d+9ulYIAAACAn2o0sL711lv1r6urq/X222+rY8eOrVoUAAAA8KNGA2tQUFCD9/fee69uv/123XXXXa1WFC5MysIoT5fQZiqrajxdAgAAaCNNejTrT3355ZcqKipqjVpwkYqKyuVy8WhXAADgXZrVw+p2u1VTU6MHH3yw1QsDAAAApGb2sJpMJvn5+cnXt3lPJwAAAAAuVKNPulqyZImCgoIUFBSk7t27y9fXV1OnTm2L2gAAAIBzf8PqcDh09OhRffPNN5o0aVL98draWnXo0KFNigMAAADOGVjj4+P17bffavHixVq8eHH9cYvFol69erVJcWgem619t2pUVtWorLTS02UAAACDOWdgvfrqq3X11Vfrvffek9ncsHPg9OnTrV4Yms+RlKkTxRWeLuOCrUuOUZkIrAAAoKFGf3S1ZcsWpaSk6PTp03K73XK5XCopKdGePXvaoj4AAABc4hoNrMnJybr//vv1yiuvKC4uTh9++KE6d+7cFrUBAAAAje8S0LFjR02YMEEDBw6Uj4+Pli5dqo8++qgNSgMAAACaEFh9fHxUXV2ta6+9VgcOHJDZbK5/kAAAAADQ2hptCQgPD9fdd9+tFStWaNq0afr000/l7+/fFrUBAAAAjQfWuXPnavLkyerWrZvS0tK0c+dORUZGtkVt7Z7T6VRERIR69uwpSXK5XKqoqFBUVJSGDBmiuXPn6tprr61/5O306dM1c+ZMSVJCQoIGDx6sKVOmeHIKAAAAHtdoYJWkzz//XOvXr9fcuXN15MgR2Wy21q7LawQGBiorK6v+fX5+vsaNG6crr7xS/fv319q1ayVJ5eXlmjhxosLCwtjnFgAA4Cca7WFNT0/XK6+8ovfee0+VlZVKTU3V008/3Ra1eaXCwkK53e4zdlqoqqqSxWJRly5dPFQZAACAMTX6Devbb7+t119/XVOnTpW/v79ee+01TZs2TfPmzWuL+tq9goIC2e12VVVVqbi4WDfeeKNSU1PVoUMH7du3T3a7XS6XS8eOHdP48eMVGBjo6ZIBAAAMpdFvWK1Wqzp06FD/3s/PT1ZrkzoJoP+/JeCdd96R3W6X2+1WWFiYJKl///7KyspSdna2Pv74Y3311VdKT0/3cMUAAADG0mhg/fnPf66PPvpIJpNJ1dXV+stf/qKgoKC2qM2rmM1mxcfHKz8/X88+++wZn/v6+mr8+PHavXu3B6oDAAAwrnMG1lWrVkmSZs6cqeeff16HDh3SwIEDtXXrVi1evLjNCvQmVqtV8fHxSktL04kTJxp8VldXpx07dqhfv34eqg4AAMCYzvm3/bfeekt33HGH/vCHP+ill17S6dOnZTKZ1LFjx7asz+uMHDlSISEheuqpp1RYWCi73S6TyaTa2loFBwcrLi7O0yUCAAAYyjkDa1hYmEaPHi23262hQ4fWH3e73TKZTDpw4ECbFNieXX311dqyZcsZx5977rlGxy5fvrw1SgIAAGh3ztkS8Oijj+rAgQP65S9/qQMHDtT/d/DgQcIqAAAA2kyjP7p6+eWX26IOAAAA4KwaDawAAACAJxFYAQAAYGgEVgAAABgaj6zyIikLozxdwkWprKrxdAkAAMCACKxepKioXC6X29NlAAAAtChaAgAAAGBoBFYAAAAYGoEVAAAAhkZgBQAAgKHxoysvYrP5erqEJqusqlFZaaWnywAAAO0AgdWLOJIydaK4wtNlNMm65BiVicAKAAAaR0sAAAAADI3ACgAAAEMjsAIAAMDQCKwAAAAwNAIrAAAADI1dAprB6XQqIiJCPXv2bHB86tSpiomJ8VBVAAAA3o3A2kyBgYHKysrydBkAAACXDAJrCwkNDVX//v1VWFio+Ph4/fnPf5bL5VLv3r21dOlSJSYm6tChQzKZTLrrrrsUFRWljIwMbdy4USUlJRozZox69+6tNWvWyGKx6Oqrr9Yf//hH+fj4eHpqAAAAHkVgbaaCggLZ7fYGx5KTk1VcXKy4uDgNGTJEubm5+uqrr/SPf/xDXbp0UXJysvz9/fXWW2/p5MmTuv3229W3b19JUn5+vt555x1ZrVaNHTtWr732mmw2m1asWKEjR47o+uuv98Q0AQAADIPA2kznawm46aab6l/36NFDXbp0kSRt375dTzzxhCTpiiuu0NixY7Vjxw75+vqqX79+slp/+N8wZswY3XHHHbrllls0btw4wioAAIDYJaBFXXbZZWd97Xa7G5zndrtVV1d3xnmJiYlKSUlR165dtWDBAnplAQAARGBtE6GhoXrjjTckSSdPntTmzZs1ePDgBufU1tbq17/+tfz9/XXPPffIbrfrwIEDnigXAADAUGgJaKaz9bDefPPN5x0zb948LV26VJMmTVJdXZ3mzp2rG264QYcOHao/x2q1yuFw6De/+Y18fHxks9m0fPnyVpkDAABAe2Jy/+ffq9FuOZIydaK4wtNlNMm65BgVFpZ55N4BAV08du/2hrVqHtar6Vir5mG9mo61ajpPrZXZbJLN5tu8Ma1UCwAAANAiCKwAAAAwNAIrAAAADI3ACgAAAEMjsAIAAMDQCKwAAAAwNPZh9SIpC6M8XUKTVVbVeLoEAADQThBYvUhRUblcLrbVBQAA3oWWAAAAABgagRUAAACGRmAFAACAodHD6kWa+1zei1FZVaOy0so2ux8AALh0EVi9iCMpUyeKK9rkXuuSY1QmAisAAGh9tAQAAADA0AisAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0NglQJLT6VRERIR69uwpk8mkmpoaBQYGKikpSVddddVZx7z22mvq1KmTIiMjJUmff/65/vSnPyk/P19Wq1UDBgzQggULdMUVV5z33gsXLtS9996roKCgFp8XAACAN+Ab1v8TGBiorKwsZWZm6u2331ZwcLCSk5PPef7u3btVXV0tSfriiy/029/+VnPnztWmTZuUnZ2tHj16aMaMGaqqqjrvfXNzc+V2u1t0LgAAAN6EwHoOQ4YM0f/+7/8qPDxcTqdT0g/hMjY2Vp988om2bNmilJQU5eTkaM2aNZo2bZqGDRsmSTKbzbr77rt12WWX6d1335XT6VR4eHj9tVevXq3Vq1crPT1dBQUFuvvuu1VcXKwVK1Zo8uTJioqKUmpqqkfmDQAAYDQE1rOoqanRpk2bNHDgwLN+PmzYMIWHh8vhcGjEiBHau3evBgwYcMZ5N998s/bt23fO+9x9990KDAxUenq6Tp8+ra1bt+rNN9/UK6+8oi+++KLRb2cBAAAuBfSw/p+CggLZ7XZJUnV1tQYMGKDf//73+vjjjxsdazKZVFtbe8bxmpqaJt+/W7du8vHx0fTp0zVmzBg9+OCD8vHxafoEAAAAvBSB9f/82MN6Nj/2mJ4tlErSgAED9Nlnn2ns2LENju/Zs0exsbEymUwN+lRra2tltTZceqvVqtdff107duzQ1q1bNX36dK1du1Y9evS4mGkBAAC0e7QENMLf319ffPGFJGnz5s31xy0Wi+rq6iRJ99xzjzZs2FD/bazb7VZaWpoqKys1fvx4+fn5qaSkRCdPnlR1dbVycnLOuE5eXp7uvPNO3XzzzXrooYfUs2dPHT16tA1nCgAAYEwE1kY4HA49/vjjuu2229SlS5f648OGDdMzzzyj9957T//1X/+lZ599Vs8995zGjx+vcePG6ZtvvtHatWvl4+OjLl26aM6cOYqOjtasWbN044031l9n9OjRuvvuu9WlSxcNHDhQkZGRuvXWW9WrVy+NHDnSE1MGAAAwFJObPZW8hiMpUyeKK9rkXuuSY1RYWNYm92ppAQFd2m3tbY21ah7Wq+lYq+ZhvZqOtWo6T62V2WySzebbvDGtVAsAAADQIgisAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0AisAAAAMDSedOVFUhZGtdm9Kqua/thZAACAi0Fg9SJFReVyudhWFwAAeBdaAgAAAGBoBFYAAAAYGoEVAAAAhkYPqxdp7nN5/1NlVY3KSitbqBoAAICWQWD1Io6kTJ0orrjg8euSY1QmAisAADAWWgIAAABgaARWAAAAGBqBFQAAAIZGYAUAAIChEVgBAABgaATWJjh8+LCCg4O1adOmZo/Nz89XXFzcOT8vKyvTvHnzLqY8AAAAr0ZgbYINGzYoIiJC69evb/bYbt266W9/+9s5Pz916pQOHDhwMeUBAAB4NQJrI2pqapSdna37779f+/fv17FjxyRJK1as0OTJkxUVFaXU1FRJ0r/+9S9NmTJFU6ZM0ezZs3Xy5Ek5nU6Fh4dLkrKzs2W32zVlyhQ5HA5VVVVp2bJlKigo0Lx581ReXq677767/hqbN2/22LwBAACMgsDaiH/+85/q3r27evTooVtuuUXr16/Xt99+q61bt+rNN9/UK6+8oi+++EJVVVVKS0vT0qVLlZGRoWHDhikvL6/BtVatWqXnnntOGRkZCgoK0pEjR5SYmKjAwEA9/fTT+uCDDxQUFKSMjAw9/vjj2rVrl4dmDQAAYBwE1kZs2LBBkZGRkqQJEyYoIyNDAQEB8vHx0fTp0/XSSy/pwQcflI+Pj8aOHat7771Xjz32mPr166fhw4c3uNaYMWN0xx13KDk5WePGjdP111/f4POQkBB9+OGH+u1vf6u9e/fS2woAACAC63kVFRUpJydHzz33nMLDw5WYmKjS0lJ98MEHev311zV//nyVlJRo+vTpOnr0qGbNmqW1a9fq2muv1R//+Ef95S9/aXC9xMREpaSkqGvXrlqwYIGysrIafH7dddfp3Xff1aRJk7Rr1y5FR0fL5XK15ZQBAAAMh8B6HllZWQoNDdXWrVu1ZcsW/eMf/9DcuXP1yCOP6M4779TNN9+shx56SD179tTRo0d1++23q6KiQrNmzdKsWbMatATU1tbq17/+tfz9/XXPPffIbrfrwIEDslqtqq2tlST9/e9/1+rVqzV+/HgtWbJEJ0+eVHl5uaemDwAAYAhWTxdgZBs3btQDDzzQ4FhMTIzWrFmjgIAARUZGqmPHjvrFL36hkSNHqmPHjkpISJDValWnTp20bNmy+nFWq1UOh0O/+c1v5OPjI5vNpuXLl8vPz0/du3dXbGys/vKXv+h3v/udJk2aJIvFogULFsjPz6+tpw0AAGAoJrfb7fZ0EWgZjqRMnSiuuODx65JjVFhY1oIVGVNAQJdLYp4tgbVqHtar6Vir5mG9mo61ajpPrZXZbJLN5tu8Ma1UCwAAANAiCKwAAAAwNAIrAAAADI3ACgAAAEMjsAIAAMDQCKwAAAAwNPZh9SIpC6MuanxlVU0LVQIAANByCKxepKioXC4X2+oCAADvQksAAAAADI3ACgAAAEMjsAIAAMDQ6GH1Is19Lq/0ww+tykorW6EaAACAlkFg9SKOpEydKK5o1ph1yTEqE4EVAAAYFy0BAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0AisAAAAMDR2CfgPTqdTM2bM0JYtWxocDw4O1qFDh5p0jeDgYPXt21eS5Ha7VVZWphEjRmjJkiWyWCwtXjMAAIA3I7C2kqysrPrX5eXlioyM1LZt2zRq1CgPVgUAAND+EFibISMjQx999JFKSkpUUFCg6dOn69tvv9X27dt1+eWXa82aNfLx8TljXHFxsb7//ntdfvnlZ3yDu3r1aknSfffdp+HDh2vcuHH69NNPZbFYtGrVKl1zzTVtOkcAAACjIbCeRUFBgex2+1k/27t3r7Kzs3Xq1CmFh4drzZo1WrRokWJjY5WTk6NbbrlFkmS321VbW6uioiL17NlTiYmJuummm+R0Os9538LCQg0dOlSLFy/W8uXL9fLLLyshIaFV5ggAANBeEFjPIjAwsMGf9KUf+lIl6Re/+IV8fX3l6/vDY1CHDh0qSQoKClJpaWn9+T+Of+GFF5SRkaGxY8c26d4jRoyQJPXu3Vu7du26uIkAAAB4AXYJaKaf/exnDd5brefP/LNmzVJAQICSk5MlSSaTSW63u/7z2traBuf/2FLwn+cBAABcqgisbSAhIUFvvPGGDh48KD8/P5WUlOjkyZOqrq5WTk6Op8sDAAAwNAJrG+jdu7eioqK0YsUKdenSRXPmzFF0dLRmzZqlG2+80dPlAQAAGJrJzd+dvYYjKVMniiuaNWZdcowKC8taqSJjCgjocsnN+UKxVs3DejUda9U8rFfTsVZN56m1MptNstl8mzemlWoBAAAAWgSBFQAAAIZGYAUAAIChEVgBAABgaARWAAAAGBqBFQAAAIbGo1m9SMrCqGaPqayqaYVKAAAAWg6B1YsUFZXL5WJbXQAA4F1oCQAAAIChEVgBAABgaARWAAAAGBqBFQAAAIbGj668iM3m26zzK6tqVFZa2UrVAAAAtAwCqxdxJGXqRHFFk89flxyjMhFYAQCAsdESAAAAAEMjsAIAAMDQCKwAAAAwNAIrAAAADI0fXV0Ep9OpiIgI9ezZU5LkcrlUUVGhqKgoORwOD1cHAADgHQisFykwMFBZWVn17/Pz8zVu3DhNnDixPsgCAADgwtES0MIKCwvldru1b98+xcbG1h9PSEhQRkaGnE6noqKitGDBAkVGRmrmzJkqKSlRTU2NFixYoKioKEVFRem1117z4CwAAACMg29YL1JBQYHsdruqqqpUXFysG2+8UampqerQocM5xxw8eFBPPPGE+vXrp/vuu0/Z2dkKDg7WqVOnlJmZqfz8fD355JOaOnVqG84EAADAmPiG9SL92BLwzjvvyG63y+12Kyws7LxjbDab+vXrJ0nq3bu3Tp06pd69e+vo0aO666679N577yk+Pr4tygcAADA8AmsLMZvNio+PV35+vp599lmZTCa53e76z2tqaupf+/j41L/+8Tx/f3+9/fbbuvPOO3X06FHdeuutKi0tbdM5AAAAGBGBtQVZrVbFx8crLS1NFotF33zzjaqqqlRSUqJPP/30vGM3b96sBQsWaPTo0UpMTFSnTp10/PjxNqocAADAuOhhbWEjR45USEiINm7cqFGjRmnixIkKCgrSL3/5y0bHvf/++5o4caJ8fHw0efJkBQcHt1HVAAAAxkVgvQhXX321tmzZcsbx55577rzjfjrmvvvuq3+9YsWKlisOAADAS9ASAAAAAEMjsAIAAMDQCKwAAAAwNAIrAAAADI3ACgAAAEMjsAIAAMDQ2NbKi6QsjGrW+ZVVNY2fBAAA4GEEVi9SVFQul8vd+IkAAADtCC0BAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0AisAAAAMDQCKwAAAAyNwAoAAABDI7ACAADA0AisAAAAMDQCKwAAAAyNwAoAAABDa3eBNTc3V7GxsZ4uo15CQoJGjx6tl156SbfffrvsdrtGjx6twYMHy263y26369ChQw3G/PnPf1ZERISqqqrqj33yySeaNWuWjhw5Irvdrn79+rX1VAAAAAzJ6ukCvIHD4dCUKVM0Y8YMSVJGRoZ27Nih5cuXn3OM0+nUqlWr9NBDDzU4/t///d/asGGDBgwY0Ko1AwAAtBft7hvWc0lPT9ett96qyZMnKzk5WW63W9IP32ZOnTpV48aNU2xsrE6cOCFJeueddxQREaEpU6Zo0aJFSkhIkCSFh4fL6XRKavht7tdff63Zs2fr1ltv1R133KG8vLyLqnf69OnKzs7WZ599dlHXAQAA8HZeEVi3bt2qffv26Y033lBmZqby8/P15ptv6uuvv9aRI0f06quvatOmTfr5z3+uN998UydPntQTTzyhF198UW+88YZOnTrV6D0eeughLViwQBs3btQf/vAHPfDAAxdV8xVXXKHExEQlJCQ0aA0AAABAQ17REvCvf/1Ln3/+uaZMmSJJqqysVPfu3WW32/XQQw/p9ddf19GjR/XZZ5/p2muv1a5duxQSEqJu3bpJkqKiovThhx+e8/oVFRXat2+fFi5cWH/s9OnTKi4uvqi6IyIi9O6772rVqlUaMWLERV0LAADAW3lFYK2rq9PMmTM1e/ZsSVJpaaksFov27dun3//+95o1a5bGjRsns9kst9sts9ksl8t1zuv92E5QW1srSXK5XOrQoYOysrLqz/l//+//6fLLL7/o2pcsWaLJ/197dx4Vdb3/cfw5LEqKhRLqta5WZpiiXJeQzbUoM3DE/Wpo3ettNbPUolKkQ1aiaYqnzGupod5cQtRUDMtMM5VOmmCLC8mVUCBEBQUFZn5/+HN+PzJrBpf5Dr4e53SO813fvPh0ePOZz3zp25cGDRpc9rVEREREaqNasSQgODiY1atXc/r0aSorK3n66afZuHEjGRkZBAUF8fe//53bbruNL774gqqqKjp27EhmZiYFBQVYrVbWr1+PyWQCoGHDhhw8eBCAzz77DIAGDRpw22232RrWr776iuHDh1+R2i8sDXjnnXeuyPVEREREahuXnGG98Jb+BVFRUdx///0MHjyYqqoqunbtSnR0NAUFBYwePZqoqCgAAgICyM3NtTWJ//jHP6hTpw633norN954I3D+E/8JCQnMmTOH8PBw2z2mTZtGfHw88+fPx9PTk5kzZ9qaXHssWbKE4uJiRo8efdG+3r17k5aWxokTJ2oaiYiIiEitZbJeeP/7OlJcXExycjKjR4/Gzc2N1157jRYtWtTo+a6xsbEEBQXZ1s9eCZWVlbRv397hJxEUFZVisVx3306H+fk1oLCwxNlluARl5RjlZT9l5RjlZT9lZT9nZeXmZsLX19uhc1xyhvVy+fj4cOrUKSIjI3F3d6dt27YMHjy4xtebPXs2paWltuewXo7s7OzLfgKBiIiISG1yXc6w1laaYbWPfvu2n7JyjPKyn7JyjPKyn7KynyvNsNaKD12JiIiISO2lhlVEREREDE0Nq4iIiIgYmhpWERERETE0NawiIiIiYmhqWEVERETE0NSwioiIiIihqWEVEREREUNTwyoiIiIihqaGVUREREQMTQ2riIiIiBiaGlYRERERMTQ1rCIiIiJiaGpYRURERMTQ1LCKiIiIiKGpYRURERERQ7tqDWtubi7+/v589dVX1bb36tWL3NzcGl+zV69eV6K8KyYpKYmwsDCmT5/O008/jdlsJiIigg4dOmA2mzGbzWzdurXaOStWrCAkJITjx4/btuXk5BAREUFpaSlms5mAgACOHTt2rb8cEREREcPxuJoX9/T0ZNKkSaxZswZvb++reSunGjp0KM8884zt9c6dO5kzZw7JycmXPKekpIT4+Hhmz55dbbu3tzerV6+mW7duV61eEREREVdyVZcENG7cmNDQUKZOnXrRvnnz5hEdHU3fvn1JTEzEarXyxBNPsGXLFgBmzJjBqFGjACgoKCAyMvIP75Wamkp0dDRms5mXX36Zs2fPArB48WIGDRpEZGQk0dHRZGdnA+ebyqioKPr160d8fDwxMTEAxMTEsHPnTqD6jO6vv/7KU089Rf/+/RkwYADbt2+/rGx69+7NgQMHWL9+/WVdR0RERKS2u+prWGNjY9m2bVu1pQFbt24lKyuLlStXkpqaSn5+PmvWrKF79+7s2LEDgG+++Ybs7GyqqqrYunUr3bt3v+Q9Dhw4wPLly/noo49YvXo1vr6+vP/++5SWlrJp0yaSk5P55JNP6NGjB2y3SGkAABdkSURBVEuWLKGiooIXXniBadOmkZqaiofHn080T5kyhQEDBpCSksK7775LXFwcpaWlNc6lbt26vPnmm7z++uvVlgaIiIiISHVXdUkAnH+LOyEhwbY0AODrr79m79699O/fH4Dy8nKaNWvGsGHDePLJJ22NoL+/P/v27ePLL7+0zYD+np07d5KTk8PgwYMBqKiooE2bNnh7e/PWW2+xbt06Dh8+zNatW7n77rvZv38/vr6+tG7dGoCBAwcyZcqUP/w6tm/fTnZ2tu0t/MrKSo4cOXJZ2QQGBtK3b1/i4+MZN27cZV1LREREpLa66g0rQHh4eLWlAVVVVYwcOZJHH30UgFOnTuHu7k79+vWxWCx8+umndOzYkZtvvpkdO3awb98+OnTowNGjR3/3+lVVVTz44INMnDgRgNOnT1NVVcXRo0eJiYnh4Ycfplu3btx888388MMPuLu7Y7FYLlmv1WoFzjelF1gsFhYtWoSPjw9wfpmCr68vmzZtuqxsnn32Wfr168eGDRsu6zoiIiIitdU1e6zVhaUBBQUFBAcHs3r1ak6fPk1lZSVPP/00GzduBKBbt268++67BAUFERwcTHJyMoGBgbi7u1/y2l26dCE9PZ2ioiKsVivx8fEsWrSIzMxMWrRowSOPPEK7du3YtGkTVVVV3HHHHZw6dYqffvoJgLVr19qu1bBhQw4ePAhQrRkNDg5m6dKlABw8eJCoqCjKysouO5cLSwPmzp172dcSERERqY2uWcN6YWlARUUFPXv25P7772fw4MFERkbSunVroqOjAejRowd5eXl06tQJf39/2/EX5OXl0aFDB9t/o0aNonXr1owePZqRI0fy0EMPYbFYeOyxxwgLC8NisdCnTx+io6O5/fbbyc3NpU6dOiQmJvLiiy/Sv39/jh07hpeXFwCjRo1i6dKlREdHU15ebrvvxIkT+e6774iKiuK5554jMTHRoScfpKenExcX97v7AgMDGT58eE1iFREREan1TNYL739fRywWC9OnT2f06NHUq1ePBQsWkJ+fT2xsrMPXSkpKAqj2WKsroVu3bixfvpymTZvafU5RUSkWy3X37XSYn18DCgtLnF2GS1BWjlFe9lNWjlFe9lNW9nNWVm5uJnx9HXvc6TVZw2o0bm5u+Pj4MHDgQDw9Pbnlllv+9ENXf+Sjjz7i7NmzjB8//rJrKy0tZfjw4XpygIiIiMj/ui5nWGsrzbDaR799209ZOUZ52U9ZOUZ52U9Z2c+VZliv2RpWEREREZGaUMMqIiIiIoamhlVEREREDE0Nq4iIiIgYmhpWERERETE0NawiIiIiYmhqWEVERETE0NSwioiIiIihqWEVEREREUNTwyoiIiIihqaGVUREREQMTQ2riIiIiBiaGlYRERERMTQ1rCIiIiJiaGpYRURERMTQ1LCKiIiIiKEZvmHNzc0lICAAs9mM2WzmgQce4KWXXuLXX38lMzOTV1555ZLn/tn+zz77jFmzZtWortjYWHr06MGHH37IoEGDMJvN9OjRg6CgIFutP/30k+34X375heDgYNtri8VCly5dmDx5sm3bF198wSOPPMLYsWMJCgpi9erVNapNREREpDbxcHYB9mjcuLGtebNarcyYMYMxY8awdOlS2rVrd8nz2rVr94f77733Xu69994a1zVmzBj69+/PiBEjAEhJSWHXrl28+eabFx17yy234O3tTXZ2NnfccQeZmZm0adOG7du324755ptvCA0N5bHHHmP8+PE1rktERESkNjH8DOtvmUwmnnnmGQ4cOMCHH35ITEwMP/74I1FRUbZjPv/8c5588kl27txJTEwMAAsWLKBv377069ePuLg44HyDGRsbC8CePXsYNGgQffv2ZeTIkeTk5AAQExNDYmIiQ4YMISIigi1bttS49pCQEL799lsAtm7dSu/evbnx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/ZSV/ZyRVU3uqb90JSIiIiKGpiUBIiIiImJoalhFRERExNDUsIqIiIiIoalhFRERERFDU8MqIiIiIoamhlVEREREDE0Nq4iIiIgYmhpWERERETE0NawiIiIiYmhqWEVERETE0NSwioiIiIihqWF1MWVlZUyfPp377ruPdu3aERgYSEREBAkJCZSUlDi7PEN5++23ATh16hTjx4+nS5cuhIWFMXnyZEpLS51cnfFobNlPY8sxGlv209hyjMaW/Vx9bKlhdTHjx4+nXr16LF68mD179vDtt9+SnJyMn58fzz//vLPLM5QtW7YAkJCQQLNmzUhPT2fdunX4+fnx4osvOrk649HYsp/GlmM0tuynseUYjS37ufzYsopLefDBBy+576GHHrqGlRhfv379rFar1RoZGXnRvj59+lzrcgxPY8t+GluO0diyn8aWYzS27OfqY0szrC6mUaNGbNiwAYvFYttmtVpZt24dDRs2dGJlxlNYWMj69etp2rQpe/bssW3fu3cvdevWdWJlxqSxZT+NLcdobNlPY8sxGlv2c/WxZbJarVZnFyH2O3r0KK+++ioZGRk0aNAAgJKSEu655x7i4uJo1qyZkys0jtTUVLKyssjMzKRx48YkJSWxcOFC5s+fz6xZs+jUqZOzSzSU344tk8lESUkJnTt31tj6jUuNrffff5+3335bY+s3NLbsp7HlGP1MtJ+r/0xUw+qiKisrKS4uxmKx4Ovri4eHh7NLcgmlpaXUq1cPNze9uXApGls1o7H15zS2akZj689pbNWMK40tNawuxmKxsHz5ctLS0jh27Bhubm40btyY7t278/DDD+Pp6ensEg1DWYkYQ0lJCUlJSRw9epT77rsPs9ls2zdp0iQSEhKcWJ2xKCvHVFZWsmrVKm666SZCQ0OZPHky+/fvp3PnzowbNw5vb29nl2gYrp6VGlYXM2nSJCwWC9HR0TRu3Bir1UphYSFr1qzhzJkzTJ8+3dklGoayckxqauof7u/Xr981qsT4lJVjRo8ezV133YW/vz/z5s2jTZs2tsYrOjqaVatWOblC41BWjnnppZc4e/YsRUVFnDhxgh49ehAVFUVaWho///wzb731lrNLNAxXz0pz5i4mIyODtLS0attatGhB586d6dOnj5OqMiZl5Zivv/6aTz/9lN69e//ufjVh/0dZOSY3N5c5c+YA0L17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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "max_features = 'auto'\n", "tree_count = 1000\n", "learning_rate = 0.00229\n", "\n", "regr = GradientBoostingRegressor(max_features=max_features, \n", " random_state=1, \n", " n_estimators=tree_count,\n", " learning_rate=learning_rate)\n", "\n", "regr = regr.fit(X[train], y[train])\n", "y_hat_test = regr.predict(X[~train])\n", "\n", "mse_test = metrics.mean_squared_error(y[~train], y_hat_test)\n", "print(mse_test)\n", "\n", "# Plot feature by importance in this model\n", "\n", "plot_df = pd.DataFrame({'feature': X.design_info.column_names, 'importance': regr.feature_importances_})\n", "\n", "plt.figure(figsize=(10,10))\n", "sns.barplot(x='importance', y='feature', data=plot_df.sort_values('importance', ascending=False),\n", " color='b')\n", "plt.xticks(rotation=90);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The boosting model suggests that CAtBat – Number of times at bat during his career – is by far the most important predictor of Salary. \n", "\n", "Number of walks during his career (CWalks) is also predictive of salary, but it seems likely that this feature would be covariant with CAtBat." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (g) Now apply bagging to the training set. What is the test set MSE for this approach?" ] }, { "cell_type": "code", "execution_count": 471, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "MSE test: 0.208\n", "RMSE test: 0.456\n" ] } ], "source": [ "# Bagging with 100 trees\n", "# although I'm using RandomForestRegressor algo here this is Bagging because max_features = n_predictors\n", "\n", "max_features = X.shape[1]\n", "tree_count = 1000\n", "\n", "regr = RandomForestRegressor(max_features=max_features, random_state=0, n_estimators=tree_count)\n", "regr.fit(X[train], y[train])\n", "y_hat = regr.predict(X[~train])\n", "\n", "mse = metrics.mean_squared_error(y[~train], y_hat)\n", "rmse = np.sqrt(mse)\n", "\n", "print('MSE test: {}'.format(np.around(mse, 3)))\n", "print('RMSE test: {}'.format(np.around(rmse, 3)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Bagging achieves a test MSE of 0.208 which is equivalent to that achieved by boosting. Bagging has the advantage here that the result was achived without need to tune hyper-parameters." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 11. This question uses the Caravan data set.\n", "\n", "### (a) Create a training set consisting of the first 1,000 observations, and a test set consisting of the remaining observations." ] }, { "cell_type": "code", "execution_count": 518, "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", "
InterceptMOSTYPEMAANTHUIMGEMOMVMGEMLEEFMOSHOOFDMGODRKMGODPRMGODOVMGODGE...ALEVENAPERSONGAGEZONGAWAOREGABRANDAZEILPLAPLEZIERAFIETSAINBOEDABYSTAND
01.033.01.03.02.08.00.05.01.03.0...0.00.00.00.01.00.00.00.00.00.0
11.037.01.02.02.08.01.04.01.04.0...0.00.00.00.01.00.00.00.00.00.0
21.037.01.02.02.08.00.04.02.04.0...0.00.00.00.01.00.00.00.00.00.0
31.09.01.03.03.03.02.03.02.04.0...0.00.00.00.01.00.00.00.00.00.0
41.040.01.04.02.010.01.04.01.04.0...0.00.00.00.01.00.00.00.00.00.0
\n", "

5 rows × 86 columns

\n", "
" ], "text/plain": [ " Intercept MOSTYPE MAANTHUI MGEMOMV MGEMLEEF MOSHOOFD MGODRK MGODPR \\\n", "0 1.0 33.0 1.0 3.0 2.0 8.0 0.0 5.0 \n", "1 1.0 37.0 1.0 2.0 2.0 8.0 1.0 4.0 \n", "2 1.0 37.0 1.0 2.0 2.0 8.0 0.0 4.0 \n", "3 1.0 9.0 1.0 3.0 3.0 3.0 2.0 3.0 \n", "4 1.0 40.0 1.0 4.0 2.0 10.0 1.0 4.0 \n", "\n", " MGODOV MGODGE ... ALEVEN APERSONG AGEZONG AWAOREG ABRAND \\\n", "0 1.0 3.0 ... 0.0 0.0 0.0 0.0 1.0 \n", "1 1.0 4.0 ... 0.0 0.0 0.0 0.0 1.0 \n", "2 2.0 4.0 ... 0.0 0.0 0.0 0.0 1.0 \n", "3 2.0 4.0 ... 0.0 0.0 0.0 0.0 1.0 \n", "4 1.0 4.0 ... 0.0 0.0 0.0 0.0 1.0 \n", "\n", " AZEILPL APLEZIER AFIETS AINBOED ABYSTAND \n", "0 0.0 0.0 0.0 0.0 0.0 \n", "1 0.0 0.0 0.0 0.0 0.0 \n", "2 0.0 0.0 0.0 0.0 0.0 \n", "3 0.0 0.0 0.0 0.0 0.0 \n", "4 0.0 0.0 0.0 0.0 0.0 \n", "\n", "[5 rows x 86 columns]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "caravan_df = pd.read_csv('./data/Caravan.csv').drop('Unnamed: 0', axis=1)\n", "\n", "# Patsy feature processing\n", "f = 'C(Purchase) ~ ' + ' + '.join(caravan_df.columns.drop(['Purchase']))\n", "y, X = pt.dmatrices(f, caravan_df)\n", "y = y[:, 1]\n", "\n", "# Display processed features\n", "display(pd.DataFrame(X, columns=X.design_info.column_names).head())\n", "\n", "# Index for Training set of 1000\n", "np.random.seed(1)\n", "train_sample = np.random.choice(np.arange(len(caravan_df)), size=1000, replace=False)\n", "train = np.asarray([(i in train_sample) for i in caravan_df.index])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (b) Fit a boosting model to the training set with Purchase as the response and the other variables as predictors. Use 1,000 trees, and a shrinkage value of 0.01. Which predictors appear to be the most important?" ] }, { "cell_type": "code", "execution_count": 519, "metadata": { "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "accuracy: 93.26%\n" ] }, { "data": { "image/png": "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4/rmm28czivRvn179u3bR2Rk5HXHTERERKSyu2UVhMqqhV4iPT2d9PR0tm3bxgMPPMDEiRONtgEDBhjt6enpRqIJ4OfnR3p6OmvXriUgIAAfHx9at25ttK9cudKomR4eHk5KSorDfRctWsSaNWuYOXMmeXl5hIaGOpS9LGtcJpOJCxculHpOi8VyHVESERERcS23LNksqxZ6qQG5udGnTx927959Tf17enoSExPDpk2bWLduHQD79+/n0KFDzJ49m8DAQBYsWMDhw4fZs2dPqetDQkLo1KkTzz///FWNq3Xr1pfs56uvvir1XqiIiIhIVXVLa6Nfqhb6pWzbto377rvvmvv38fEhKiqK+Ph4zp8/T1paGv369WPz5s1kZmby2WefERERUWp2s8SECRPYtWsXmzdvvuK4nnrqKVJTU9m6dStg/4DojTfe4Pz585dcXhcRERGpim7pPptl1UKH/74baTKZ8PHxcdgm6ffvbAI899xzxpftF+vbty/JycksXryYtWvXsnTpUof2YcOG0b9/f6ZOnVrq2vr16zNixAji4+Pp2LHjZcd19913k5SUxCuvvEJMTAzFxcXcf//9JCcn60t0ERERkf9PtdGdgDZ1F2e0LH5whZTOVMlOO8XBTnGwUxzsFAfVRpdyen2qvlwX53P+N33sJiIi10/JphPIzT2L1Vq1J5j1v1U7xUFERFyNkk0nUJ4paVfUoIFPRQ/BKVREHM7/ZiH/V9VBFxGRG0/JphPQO5tS0ZbFDyYfJZsiInLj3bRkMycnh6CgIPr37+/wZXl2djaRkZHExsYydepUfH19Aftm6G3btmXGjBlUr16dhIQEUlJSSpWtXLhwIUePHmXUqFHcddddAFitVgoKChgxYgQDBw5kx44dJCYmOtRMz8nJYejQoWRmZgLw/fffM2fOHP79739TvXp1mjVrxuTJk2natKlxzZIlS1i+fDnu7u64u7vTr18/o1472Ethzp07ly+//BIPDw9q1KjBuHHjCAoKuvEBFREREamEburMZp06dcjKyqK4uNjYpmjdunXUq1fPOCc9PR2w71MZFRXFhx9+aCR0AwYMICoqqlS/R48exc/PzyGZzM7Opk+fPvTo0eOK4zp16hRDhw4lOjqanj17GuMYOHAgq1evpl69eiQkJLBz506Sk5O5/fbbOX36NGPGjOHMmTOMHTuW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/OU7m8VatWpFYmIiVatWpX379gC0b9+epUuXcv78ed58800ANm7cyIULF3j11VcBe/JZUFDAyZMnS5zT3d2dHj16MGfOnNu610OHDlGnTh2qVnXcrqhq1arEx8cTFhZGmzZtaNas2W2dX0RERKQ8ccp3Not5eXlRuXJlsrKyaNOmDQD+/v7k5uaSn5/Pww8/DNg/DBo1ahQbNmxgw4YNZGVl0bx5c1avXn3N827dupXGjRvf8v1cuHCBt99+m4iIiGv2+/j40K9fP6ZOnXrddzpFREREKhKnmNm8kVatWrF161bjgx4XFxcefPBB4yOc06dPs23bNqZNm+Zw3MCBA3nrrbcIDw83lulNJhNFRUU88MAD/OUvfzHG/vKdTbBvqwQ/v5NZfGyXLl0YMmTIde/3lVde4eOPPyYtLc34al5ERESkojLZNAUn5cjdXkFINeIVg2KKg53iYKc42CkOZRsDFxfTbVU9dPqZzYqgoOAiVmvFzvn1B0RERKR8UrLpBFQb3e5/rY1+t89qioiIlEdKNp2AaqP/OlQXXURExPk41dfohw8fxtfXl8zMTAA+/fRThg8fXqL/008/NdoSEhJISkoyficnJ+Pv78+pU6cczu3r60t4eDg9evQgLCyMvn37cujQIYcxUVFRhIWFObRt27aNZs2aER4eTnh4OGFhYQQFBfHhhx8CMGLECMLDw3nmmWccxmVlZf06QRERERG5iznVzGZxFaBVq1bRtWtXWrduzfTp043+/6U+OuCwl2dycjKTJk1i1apVAJw5c4YDBw7g7e3N7t27eeKJJ4yx/v7+JCcnG79zcnLo1asXYWFhzJs3D7AnpXPnznUYJyIiIlLROc3MZnEVoNdee439+/fz3XffUbt27d+kPjrY668fPnzY+J2WlkbLli3p0qULK1euvOG9njhxAg8PD9zd3X+FJxcREREpv5wm2fziiy+4//77qV+/Pp07dzZmHFu3bs3u3bu5fPlyifroX3/99U3ro1+LzWZj3bp1DlV+UlJSCAkJISQkhMzMTM6dO2f07du3j/DwcLp06UJgYCCffvopixcvVrIpIiIichNOk2yuWbOGbt26ARAaGkpKSgpms5k2bdqwe/dutm/fXqI++s6dO0vURy8+R3F99KsVv08ZGhrKsWPHjNroOTk5nDx5krZt21K3bl38/PxYu3atcZy/vz+pqan8/e9/p3Xr1lSrVo2AgIDfPCYiIiIidzuneGezoKCArKws9u/fz/Lly7HZbPz3v//ls88+o3379v9zffQ6deoAXLP+OtgTXbPZTNeuXQEoLCxk5cqVvPzyyw7j3N3diY2NpWvXrqSnpxMaGvpbhENERESk3HCKmc3U1FRat27Nl19+yYYNG9i4cSNDhw5l5cqVv1l99GJms5m0tDSWLl1qHPuvf/2LU6dOsW3bthLjq1WrRlRUFDNmzODyZW2zIyIiInIjTpFsfvLJJ7z44osObREREezdu5djx47RqlUrPDw8StRHb9q0KfBzffRevXo5nGPgwIGsXr2aoqKi6157w4YNPPDAA8ZHRgBVq1ald+/e1/1QqHfv3lSpUoUlS5bc1vOKiIiIVBSqjS7lRnmoIKSynYpBMcXBTnGwUxzsFAfVRpfbpNro+gMiIiJSXjnFMrqIiIiIlE+a2XQCtzMlXR55e1e7pfHlYdlcRESkvFOy6QRGTl/L6bOFZX0bd50VMyK4gJJNERERZ1Ymy+h5eXn4+voyadIkh/acnBx8fX1JSUkhKCiI0NBQYyP28PBwPvvsMwB+/PFH4uPj6dKlC6GhoTz77LMOWxyNGzeOp59+2uHY8PBwioqKSEpKIikpyRh75MgRnnzySf75z38C4Ovr63CPmzdvdrjHoKAg8vLyyMvLw9/f3zh3165diY6O5vTp079JzERERETuRmU2s1m9enWysrIoKirC1dUVgPT0dGrWrGmMeffdd6lXr16JY6OionjggQdIS0ujUqVK5OfnM2jQILy9vXn66acBGDlyJD179rzhPRw7dowhQ4YQExND586dS/S7ubnx5ptv8umnn1K1asml7tq1axsbxdtsNmbNmsXIkSNZsWJFqeMgIiIiUp6V2QdCnp6e+Pn5sWPHDqNt8+bNtG3b9obH7d69myNHjvDmm29SqVIlwJ70TZkyxfhdGsePH2fIkCG89dZb10w0i8/btm1b4uPjb3o+k8lEVFQUR44c4eDBg6W+DxEREZHyrEzf2QwJCSEzM5PWrVuzd+9efH19uXrbz8jISNzc3ACoX78+c+bM4euvv6Zp06ZGe7FmzZo5/E5MTGTZsmXG7yeeeIKYmBgAvv32W1566SUeeughYyb0esaNG0dYWBibN2826rBfj7u7Ow899BC5ubk0atTops8vIiIiUt6VabIZFBTEnDlzsFqtZGRkEBISQnp6utF/vWX0qy1fvpw1a9ZgsVh45JFHmDt3LnDjZfTPPvuMt99+m9mzZ7N8+XIGDBhw3fNXrVqVv/zlL8Zy+s2YTCYqV65803EiIiIiFUGZ7rPp6elJo0aN2LVrF1u3br3pEjpAkyZN2Lt3r1GCcsCAAaSmphITE8P58+dLdd2XXnqJp59+mpkzZ5KYmHjTZe/27duXajndbDZz/PhxGjZsWKr7EBERESnvynxT95CQEBISEvD39+eee24+0dq8eXMaNmzIX/7yFy5ftm97c/nyZbKysnBxKd3jFC/B//73v2f48OGMHj2aS5cu3fCYcePGsWnTJvLz86/Zb7VaSUpK4vHHH+fBBx8s1X2IiIiIlHdlnmx27NiRnJwcQkNDSzXeZDIxb948vLy86N27N2FhYYSFhXH58mVmzpxpjEtMTCyx9dHRo0dLnG/gwIHUqlWLqVOn3vC6xcvpFovFaMvPz3c4/w8//MCsWbNK+eQiIiIi5Z/JdvUXOSJ3kfJYQUg14hWDYoqDneJgpzjYKQ5lGwMXF9NtVT1UBSEnUFBwEau1Yuf8+gMiIiJSPpX5MrqIiIiIlF+a2XQCtzMlXR55e1e7Znt5XC4XERGpKJwi2czLyyM4OJgGDRpgMpmwWCzUrl2b7t2789lnnzF//nwADh8+TFhYGDNnzqR79+4AJCQk4O7uTlRUFADJycnEx8ezceNGvL29jWv4+vrSqFEjTCYTRUVFeHp6MnnyZKMWOtjLYH7zzTekpaUZbdu2bWPo0KHGF+ZWq5XCwkKGDBnCCy+8wIgRI8jLy+PHH3/k9OnTxrjXX3+dJ598slTPP3L6Wk6fLfwfIli+rZgRwQWUbIqIiNyNnCLZBMc64wBxcXGkpKQ4fEG+adMm2rdvz6ZNm4xkc+fOnbz++uvGmJSUFDp16sSaNWsYOnSowzWuPn9ycjKTJk1i1apVAJw5c4YDBw7g7e3N7t27eeKJJ4yx/v7+JCcnG79zcnLo1asXYWFhzJs3D7AnpXPnznUYJyIiIlLROe07m4GBgZw7d44aNWpw/PhxwJ5sjho1iu3bt2Oz2fjpp5/45ptvePzxxwE4ePAg58+fZ8iQIXz00UdYrdYbnv/w4cPG77S0NFq2bEmXLl1YuXLlDe/txIkTeHh44O7u/is8qYiIiEj55ZTJpsViITMzk6ZNm9K6dWt2797N5cuXycvLIyAggHr16nHw4EG+/vprmjVrZmwGv2bNGoKDg40N4rOysq55fpvNxrp16xzqqaekpBASEmLUaz937pzRt2/fPsLDw+nSpQuBgYF8+umnLF68WMmmiIiIyE04zTJ68QbpYC/7GBAQwJgxY9ixYweff/453t7etGjRAoC2bduybds2fvzxR9q1awfYE9S0tDQWL14M2CsTrVy5kqeeesq4xtXnb9CgAVOmTAHsy+InT56kbdu2uLm54efnx9q1a3n55ZeBn5fRzWYzY8eOpWrVqgQEBNyRuIiIiIjczZwm2fzlO5vFWrVqRWJiIlWrVqV9+/aAvVb50qVLOX/+PG+++SYAGzdu5MKFC7z66quAPfksKCjg5MmT1KlTB+Ca5wf7jKjZbKZr164AFBYWsnLlSiPZLObu7k5sbCxdu3YlPT291FWPRERERCoqp1xGv5qXlxeVK1cmKyuLNm3aAPaZxtzcXPLz83n44YcB+zL4qFGj2LBhAxs2bCArK4vmzZuzevXqG57fbDaTlpbG0qVLjWP/9a9/cerUKbZt21ZifLVq1YiKimLGjBlGbXYRERERuTanTzbBPrvp4eFBjRo1AHBxceHBBx+kadOmAJw+fZpt27bRq1cvh+MGDhzI6tWrKSoquu65N2zYwAMPPGB8ZAT2Oui9e/e+7odCvXv3pkqVKixZsuR/fTQRERGRck210Z2A9tm8sRUzIipMKUuV7VQMiikOdoqDneJgpzioNrrcpsToHmV9C07t8k+Wsr4FERERuU1KNp1AQcFFrNaKPcGsf62KiIiUT0o2nYBqo9upNrqIiEj5o2TTCeidzRtTbXQREZG71x37Gj0vLw9fX18mTZrk0J6Tk4Ovry8pKSn4+vo69E2ePJl+/fpRWGhPxLKysujduzchISE8++yzTJs2jUuXLhnjCwsLmTx5Ms888wzdu3fnxRdfZMuWLUb/uHHjePrppwkPDyc8PJyQkBD+9re/Afatk8aNG2eM/eGHH+jatSvLly8nLy+PoKCg6z7b2bNnadKkibGhvIiIiIjY3dGtj6pXr05WVpbDVkTp6enUrFmzxNjY2Fhyc3N577338PT0ZMuWLcTExPDWW2+RkZHBJ598wpUrVxg+fDg2mw2bzcbQoUNxc3Nj3bp1fPrpp0ycOJGxY8c67Jc5cuRIUlNTSU1NJTk5mYSEBI4dO+Zw7VOnTvHyyy8zYMAABgwYcNPnSktLIygoiFWrVqGP+0VERER+dkeTTU9PT/z8/NixY4fRtnnzZtq2beswLi4ujtzcXBYuXIiHhwcA8+fP59VXX+Wxxx4D7NV8oqOjOXr0KLt27WL79u385z//ITo62qhZ3rhxY4YNG8b8+fOveT+1atWifv36HD161GgrKChg4MCBDBw4kIiIiFI9V0pKCi+++CLu7u5s3bq19AERERERKefu+KbuISEhZGZmArB37158fX1xc3Mz+mfOnMmSJUuIjIykcuXKRnt2dnaJeuRubm40a9aM7OxssrOz8ff3x2QyOYxp2bIl2dnZ17yXgwcP8t133xkJ7JkzZ3j55ZexWCz06FG67YgOHjzI6dOnadGiBSEhIaxatapUx4mIiIhUBHc82QwKCuLLL7/EarWSkZFBSEiIQ//Ro0eJj49n/PjxXLjw81Y4JpOJK1eulDif2WzGZDJhMpmuWSnIYrE4JKCJiYmEh4cTFhbGm2++yZQpU6hXrx5gfyf0j3/8Iw8++CAJCQmlep6PP/6Y4OBgXF1dCQ0NZf369Zw+fbpUx4qIiIiUd3f8a3RPT08aNWrErl272Lp1K2PGjCE9Pd3oT0pKwt3dnaysLGJiYpg1axYAAQEB7Nmzh0aNGhljzWYzBw4cYPDgwQAkJydjsVgcZkr37NmDv7+/8XvkyJH07NnzmvcWGhrKH/7wB9q3b0/37t1p27YtTz311HWfxWw28/e//5177rmHDRs2GO0pKSlERkbeYmREREREyp8yqY0eEhJCQkIC/v7+3HOPY75b/L5lTEwMu3fvZs2aNQBERUWxYMEC9u/fD9hnLGNjY3nkkUdo3rw5LVq0oGHDhkybNg2LxV5xZt++fSxYsIDhw4eX6r6Kk1Rvb2/eeustoqOjbzhLuXHjRmrUqMGmTZvYsGEDGzZsYMqUKfpQSEREROT/K5Nks2PHjuTk5BAaGnrdMffeey/Tp09n6tSpHD9+nBYtWhAfH8/UqVN59tln6datG5UqVWL+/PnGMvncuXNxd3enW7duhIaGMnXqVGbOnElgYOAt32PXrl158skn+fOf/4zNZuM///kPzZo1M/4bPHiw8WHQ1bp168ZPP/1EVlbWLV9TREREpLwx2TQFJ06uIlUQUtlOxaCY4mCnONgpDnaKQ9nGwMXFdFtVD1VByAmoNrr+gIiIiJRXZbKMLiIiIiIVg2Y2ncDtTEmXR97e1Uq0VaQldBERkfJIyaYTGDl9LafPFpb1bTilFTMiuICSTRERkbvVHU828/LyCA4OpkGDBphMJiwWC7Vr12b69Om8+OKLVK5cGTc3N65cuUL9+vWZOnUqnp6e9OrVi169etGvXz/jXAkJCXz77bckJiaybds2Zs2axaVLlygqKuKpp55izJgxHD16lDfeeAOA//u//6NKlSp4eXnh7u7O6tWrAbhy5QpPP/00Xbt25c033zTOn5SUxN///ndSU1ONakbbtm1j7ty5JCcnk5SUxMqVK6lVqxY2mw2r1Urfvn0d7lFERESkIiuTmc3atWuTmppq/I6Li2PGjBkAvPvuu0ZFn6lTp7Jw4ULeeOMNpk+fzssvv0znzp2pU6cOBw8eJDU1lbVr12I2mxkzZgwffvghPj4+mM1mRo4cyQcffMCAAQOMa40bN45WrVqV2NT9iy++oEmTJmRkZPD6668b9dgBTpw4waxZsxg/fvw1n6Vv375ERUUB9nKXL730EpUqVaJ3796/XsBERERE7lJO8YFQYGAgR44ccWizWq0UFhZSq1YtAPz8/HjhhReIjY3FarUyceJEJk2aRM2aNbl06RIXL17k0qVLgH1j+AkTJtCqVatSXT8lJYVnnnmGgIAA1q1b59DXp08f0tPT2blz503PU7NmTYYNG8aKFStKdV0RERGR8q7Mk02LxUJmZiZNmzYFIDIykvDwcDp06MDmzZsJDg42xg4fPpxvvvmGsWPH0qBBAzp37gyAl5cXr7zyCj179iQsLIzY2Fh++OEHh9KW13PmzBm++uorOnXqREhICKtWrXLor169Om+99RYTJkzg8uWbvzv4+9//ntzc3FsJgYiIiEi5VSbJZn5+PuHh4YSHh9O9e3dsNhtjxowB7MvoqampbNq0iZdeeolBgwYZpR/d3d2ZNGkSX3zxBRMnTnQ457Bhw/jyyy955ZVXKCwsZMiQISxduvSm9/Lpp5/SunVrvLy86NSpE4cOHeLAgQMOYzp37oy/v79Rp/1GTCaT8X6niIiISEXnFO9sXk/v3r2Jj4/n7Nmz1KxZE4D777+fe++9l2rVft4mZ8+ePezfv5+IiAi6detm/Ddt2jRefvnlG14jJSWF/Px8goKCAHBxcWHlypVMmTLFYdzEiRMJCwujevXqNzzfoUOHaNCgwU2fTURERKQiKPNl9BvZsmULdevWNRLN6/Hy8mLu3LkcPHjQaNu/fz9+fn43PG7fvn2cPHmSzz//nA0bNrBhwwYWLlxIWloaFy9edBhbo0YN3nrrLebPn3/d8+Xn5/POO+8QERFRiqcTERERKf+cbp/NyMhI3NzccHFxwdXVtVRL1/Xr1ycuLo7x48dz8eJFTCYTAQEBTJo06YbHpaSk0LNnT4dl78DAQOrXr09aWlqJ8Z07d6Zr167k5+cbbStXrmT9+vWYTCZsNht9+vTh2WefvYUnFhERESm/TLbiFyJFnFBFqyCkGvGKQTHFwU5xsFMc7BSHso2Bi4vptqoeOt3MZkVUUHARq7Vi5/z6AyIiIlI+OfU7myIiIiJyd9PMphO4nSnp8sjbu1qFWzYXEREp75wu2czLy6NTp0706dPHYfuhnJwcevTowfTp0/nkk0949dVXCQwMJCgoiLCwMEaPHm2Mvbospa+vL4cOHTL6Jk+ezJEjR1i4cCGenp4AnDx5ku7du5OSkkK9evWwWCwEBgbi4+NjHJeSksLkyZP5+uuvjbbDhw8ze/ZsgoOD6dSpE1Wr/pw0vvPOO9StW7dUzzxy+lpOny289WCVQytmRHABJZsiIiLlhdMlm2Cv2pOVlUVRURGurq4ApKenX3cLpGXLlvHMM8/g7+9/w/PGxsaSm5vLe++9Z9Q/t1qtTJgwAYvFYow7dOgQzZo1Y9GiRQ7HX538fvzxx2RkZNC1a1fOnj2Lm5tbqfYOFREREalInPKdTU9PT/z8/NixY4fRtnnzZtq2bXvN8a+88grR0dGYzebrnjMuLo7c3FwWLlxoJJoA77//Pm3btqVGjRpGW3Z2NmfOnKFnz548//zzbN++3eFcZ8+eJTExkSlTpmAymcjOzsZms9G3b1/+8Ic/kJGRcbuPLiIiIlKuOGWyCRASEkJmZiYAe/fuxdfXFzc3t2uODQsLw8fHh3nz5l2zf+bMmSxZsoTIyEiHPTX37dvH1q1bGThwoMN4k8lEp06dWLVqFW+99RajR4/mzJkzRv/SpUt59tlneeCBBwAwm808+eSTLF26lKSkJOLi4jh27Nj/9PwiIiIi5YHTJptBQUF8+eWXWK1WMjIyCAkJueH4yZMns3r1avbt21ei7+jRo8THxzN+/HguXLBvr3Pp0iUmT55MbGwsLi6OYejbty+vvvoqbm5uNG7cmICAAHbv3g3Yl93XrFnDSy+9ZIzv3LkzEydOpHLlytSrV49nnnmGTZs2/a8hEBEREbnrOW2y6enpSaNGjdi1axdbt2697hJ6MW9vb8aNG0d0dLTD+5cASUlJ9OjRg2bNmhETEwPAzp07KSgoYNiwYYSHh5Ofn09kZCS5ubmsXbuW7777zjjeZrMZs6r//ve/efjhh6lTp47Rv3HjRrKzsx2uec89Tvk6rIiIiMgd5bTJJtiX0hMSEvD39y9V8ta9e3d8fHyM5fdi7u7uAMTExLB7927WrFnDk08+yYYNG0hNTSU1NZXatWvz7rvv8sgjj3Do0CEWL14MQG5uLjk5OTRv3hyAPXv2GP+72IkTJ5g3bx5Wq5XTp0+zYcMGnn766V8hAiIiIiJ3N6dONjt27EhOTg6hoaGlPmby5MnGlka/dO+99zJ9+nSmTp3K8ePHr3uOESNGcObMGbp168aoUaOIj483tjX6/vvvHWY1wb7s7u3tTbdu3ejXrx+vv/668T6niIiISEWm2uhOQPts/mzFjIgKXbZSZTsVg2KKg53iYKc42CkOqo0utykxukdZ34LTuPyT5eaDRERE5K6hZNMJFBRcxGqt2BPM+teqiIhI+aRk0wmoNrpdtXsrqy66iIhIOaNk0wnonU071UUXEREpf5zua/S8vDx8fX2ZNGmSQ3tOTg6+vr6kpKTQv39/tm3bBtg3f589e7bD2HHjxpGSkgKAr6+vQ9/kyZPp168fhYWF9OzZk/DwcMLDw+natSuNGzfm9OnTnDhxgmbNmhl9gwYNcjjH5s2bHTZ1LywsZNSoUYSFhREWFsa6det+tXiIiIiI3M2ccmazevXqZGVlUVRUhKurKwDp6enUrFnzmuOXLVvGM888g7+//w3PGxsbS25uLu+99x4eHh5GQgrwxhtv8Ic//IFatWqRmZlJWFgYU6ZMcTjearWydOlSFi5cyO9//3uj/d133+X+++/n7bffpqCggPDwcAIDA6lVq9bthkBERESkXHC6mU2wVw/y8/Njx44dRtvmzZuvW0XolVdeITo6GrPZfN1zxsXFkZuby8KFC/Hw8HDo27JlCwcPHmTIkCEAZGdnc/jwYcLDwxkwYACHDh0C4NixYxw7doy//OUvDse3atWK/v37A3DfffdRvXp1Tp8+fesPLiIiIlLOOGWyCfbqQcWVgPbu3Yuvr69RMvKXwsLC8PHxYd68edfsnzlzJkuWLCEyMpLKlSuX6E9MTGT06NHGLGqlSpXo3r07n3zyCYMGDWLEiBGYzWYeffRRpk6dipeXl8Px7dq14/777wfsM7Bms5mGDRve9rOLiIiIlBdOm2wGBQXx5ZdfYrVaycjIICQk5IbjJ0+ezOrVq9m3b1+JvqNHjxIfH8/48eO5cMFxe50jR45w9uxZOnbsaLRFRUXx4osv4uLiwlNPPUWVKlXIzc296T1nZGQwbdo0EhMTVRtdREREBCdONj09PWnUqBG7du1i69at111CL+bt7c24ceOIjo7GYnHcGDwpKYkePXrQrFkzYmJiHPrWr19fohxmcnIyZ8+eNX7bbLabJo/JycnEx8ezaNEiGjVqVJpHFBERESn3nDbZBPtSekJCAv7+/qWaKezevTs+Pj7G8nsxd3d3AGJiYti9ezdr1qwx+vbs2UOLFi0cxu/YsYOPP/4YgO3bt2O1WnnkkUeue93169ezdOlSPvzwwxJfv4uIiIhUZE6dbHbs2JGcnJwSM483MnnyZDw9Pa/Zd++99zJ9+nSmTp3K8ePHAfj+++/53e9+5zBuwoQJfPXVV3Tr1o34+HgSEhJwcbl+qBITE/npp58YOnSosV1SdnZ2qe9ZREREpLwy2Wy2il3O1HBAAAAgAElEQVQnUZzG5Z8sFb6CkMp2KgbFFAc7xcFOcbBTHMo2Bi4uptuqeqivWJyAaqPb/89T0RNNERGR8sipl9FFRERE5O6mmU0ncDtT0uVRtXsra3ZTRESknFGy6QRGTl/L6bOFZX0bZW7FjAguoGRTRESkPCnzZDMvL4/g4GAaNGiAyWTCYrFQu3Ztpk+fztixYzlw4ABbtmwxti8CCA8P59577yU5ORmwVxj661//yg8//MA999xDQEAAY8eOpWbNmixYsIB//OMfABw8eNDYAzM4OJhhw4bxwQcf8NFHH2Gz2TCZTAwcOJAePXoA9v01ly5dytq1awFwcXFh8ODBPPvss8a9LF26lFWrVuHq6oqrqyvPP/88ERERdyR2IiIiIs6uzJNNgNq1a5Oammr8jouLY8aMGQBUrVqVTZs2ERQUBEBubi75+fnce++9gL060PDhw5kxYwZt27bFarXy/vvvM2DAANasWcOwYcMYNmwYAL6+vg7X+frrr1m9ejWrVq2icuXKFBQU8Nxzz9GoUSMaNWrE7NmzOXDgAH/729+oVq0aJ0+epF+/ftSoUYO2bduSlJTEjh07SE5OplatWpw5c4bhw4dz7tw5RowYcafCJyIiIuK0nPIDocDAQI4cOQJAly5dHDZpT09Pp2vXrsbv999/nz59+hgVhlxcXIwa6BkZGTe8zqlTp7DZbFy6dAmA++67j8TERGrUqEFhYSHLli3jzTffpFq1agDUqVOHWbNm4e3tzaVLl1i0aBHTpk2jVq1aANSsWZPY2Fjef/9945wiIiIiFZnTJZsWi4XMzEyaNm0KQIcOHdi+fbtRgvLzzz93qGOenZ1NQEBAifO0bNnymnXSr9ahQwceeOABnnzySfr160dSUhLVq1fnd7/7Hbm5udxzzz089NBDDscEBATw6KOPcuTIETw8PKhXr55Df8OGDXF3dy9VLXURERGR8s4pks38/Hyj8k737t2x2WyMGTMGsJeabN68OV999RWHDx/Gx8eHypUrG8eaTCau/D/27jyuyjL///jrAKKIijFiWWY6+u2oQ46OJbhkCZocVI65l0s15ZpLjunooKiNC2I45VY5tuk308xTgGL8KlLRUVPMcVI0J79Og6UouIAbcM75/XGGezzhSrId38/Hg8eDcy/Xdd2fvz6P67rv61NYWKzNn9dHvxpfX1+WLl3Khg0bsFgs7N+/n6ioKPbu3YuXl5fbe6I/ZzKZsNvtVz1XWFiIyWS6Yf8iIiIinq5CvrP5cxEREaSkpHD33XcXK13ZokUL9u7dS3h4uNvxb775hsGDB1+3308//ZS7776btm3b8sADDzBw4ED+8pe/kJCQwB//+EcuXbrEjz/+yL333mvcs2HDBk6dOkW/fv0oKCjgyJEjbnXTDx8+jMPhoFGjRrcSAhERERGPVCFmNm+kY8eO7Ny5ky1bttCxY0e3c8OHD2fdunVs27YNcH1BvnTpUi5duoTFYrluu3a7nfj4eHJycgDIz8/n8OHDNG/enGrVqjFw4EBmzJhBXl4e4PpyfsGCBTRu3Bg/Pz9GjhxJdHQ02dnZAGRnZzNt2jReeOEF/Pz8bncYRERERCqdCjGzeSO+vr787ne/A6Bq1apu5x544AHefvttXn31VWbNmoXdbqd169asXLmy2LU/17t3b06fPs1TTz2Fl5cr7+7WrRt9+vQBYPz48SxZsoR+/frh4+ODt7c3EyZMoEOHDgAMGzaMmjVr8uyzzxpbJw0YMEBbH4mIiIj8h8npdN7ZRbmlwrh0ueCOryAUFFSTkydzy3sY5UoxcFEcXBQHF8XBRXEo3xh4eZlKVPWwUsxserrs7Dwcjjs75w8KqnnHJ5oiIiKeqFK8sykiIiIilZNmNiuAkkxJV3ZaMhcREbkzlFuy+d1339GjRw8WLlxoVAQKCwujWrVqVKlShcLCQho1asTs2bPx9/enT58+9OnTh0GDBhltxMfH869//YuFCxeyc+dOFixYwMWLF7Hb7Tz22GNMmDCBf/7zn0yaNAmAn376ierVqxMQEICvry9r164FXPtiPv7443Tt2pVp06YZ7S9atIj169eTkJBg7O25c+dOFi9ezMqVK1m0aBGrV6+mTp06OJ1OHA4HAwYMcBvjzRg791NOnT7/i+JZ2ayKG0guSjZFREQ8Xbkto69bt46IiAjWrFnjdnzZsmUkJCSwYcMG6tWrx1tvvYWPjw9z585l0aJFHD9+HICDBw+SkJDAjBkzyM/PZ8KECbz66qskJibyySefcOTIET744AOjHnpCQgJhYWGMHTuWhIQEI9EE2Lx5Mw899BAbN24sVmby2LFjLFiw4JrPMWDAABISEkhMTGTFihWsWbPGrW0RERGRO1m5JJsFBQUkJSXx0ksvsX//fn744Ydi1zgcDs6fP2/UHW/WrBlPPfUUs2bNwuFwMHXqVGJiYggMDOTixYvk5eUZiaKvry/R0dG0adPmpsZjs9no0qULLVq0YMOGDW7n+vfvT3JyMrt3775hO4GBgYwcOZJVq1bdVL8iIiIinq5cks3Nmzdz77330qhRIzp37uw2uzls2DCsVisdO3Zk27ZtREREGOdGjRrF0aNHmThxIo0bN6Zz584ABAQEMHz4cHr16kWPHj2YNWsWJ06coGnTpjccS05ODn/7298IDw/HYrEUm2mtXbs2M2bMIDo6mkuXbrzs++CDD6ouuoiIiMh/lEuyuW7dOrp37w5AZGQkNpuN/Px84L/L6Fu3buWZZ57h+eefp2grUF9fX2JiYti8eTNTp051a3PkyJFs2bKF4cOHc/78eYYOHcp77713w7EkJiYSGhpKQEAA4eHhHDp0iAMHDrhd07lzZ4KDg6+7nF7EZDK51W4XERERuZOVebKZnZ1NWloa77zzDmFhYUydOpVz587x+eefF7u2b9++HDlyhNOnTxvH7r33XmrVqkXNmjWNY3v37uWDDz4gMDCQ7t27M3fuXBYvXnxT707abDa++eYbwsLCiIqKwsvLi9WrVxe7burUqSQnJ5Oenn7d9g4dOkTjxo1v2K+IiIjInaDMv0ZPSEggNDSU5cuXG8eKvur+ue3bt1OvXj0CAwOv22ZAQACLFy+mdevWxtL5/v37adas2XXv+/bbbzl+/Dhbtmxx+9p8xIgRxhfsRe666y5mzJjBSy+9RKtWra7aXlZWFm+++SbDhw+/br8iIiIid4oyTzY/+eQTxo8f73Zs4MCBLF++nBo1ajBs2DCqVKmCl5cX3t7eN7V03ahRI2JjY/nTn/5EXl4eJpOJFi1aEBMTc937bDYbvXr1clv2DgkJoVGjRiQlJRW7vnPnznTt2pWsrCzj2OrVq/niiy8wmUw4nU769+9Pt27dbjhmERERkTuBaqNXAHfqPptX1nZVvVsXxUExKKI4uCgOLoqDi+Kg2uhSQgun9CzvIZS5S5cLynsIIiIiUgaUbFYA2dl5OByaYBYRERHPo2SzAlBtdBEREfFUSjYrgDv1nU3VRhcREfF8HpFsZmZmEhERQePGjTGZTBQUFFC3bl3mzp3LxIkTOX78ONWrVzeu79evHwMHDsRsNnPo0CG3+6/Ur18/qlWrxooVKwD4/vvvadCgAVWqVOF3v/sd06dP57PPPmPZsmUUFhbidDqxWq288MILZfr8IiIiIhWVRySbAHXr1iUhIcH4HRsbS1xcHACzZs0iJCTklu6/Uu/evQEICwtj2bJl1K9fH4ATJ04wb948bDYbd911F+fPn2fw4ME0atSI8PDw2/FYIiIiIpVauZSrLAshISEcPny4VPs4ffo0BQUFRs10f39/YmNjadKkSan2KyIiIlJZeMzM5pUKCgpISUmhZcuWHD16lKlTpxrL6P7+/qxatarYPVlZWVitVrdjcXFxmM3ma/bTtGlTwsPD6dy5M82aNSMkJIQePXrwwAMP3N4HEhEREamkPCbZvDJZzM/Pp0WLFkyYMIExY8b84mX065k5cyajRo1i69atbN26lX79+vHqq6/yxBNPlOg5RERERDyJxySbJU0Wf4lNmzZx4cIFIiMj6d27N7179+ajjz7i448/VrIpIiIigge/s1kWqlWrRnx8PJmZmQA4nU4yMjJo1qxZOY9MREREpGLwmJnNX+pq72w+8sgjTJ069Zr3hIaGMnr0aEaMGEFBgav84qOPPsqLL75YqmMVERERqSxMTqdTdRKlzP28glBQUE1OnswtxxFVDIqDYlBEcXBRHFwUBxfFoXxj4OVlKlHVQ81sVgCqjS4iIiKeSu9sioiIiEip0cxmBVCSKenK7OdL6CIiIuK5lGxWAGPnfsqp0+fLexhlZlXcQHJRsikiInInqDDL6N999x1ms5mUlBQAEhMTGTVqVLHziYmJxrH4+HgWLVpk/F65ciXBwcGcPHnSOJaZmUlwcDBWq5WoqCgsFgvx8fE4HA4AJk+ezOOPP47VanX7s9vt2Gw22rRpY9wbERHB4sWLsdvtAG7nrVYr3bt354knnuCLL74o1ViJiIiIVBYVJtlct24dERERrFmzBnBtK/TNN98Y57du3UqHDh3YunWrcWz37t20a9fO+G2z2QgPD2fdunVubRdt+J6YmEhiYiLbt28nLS3NOD927FgSEhLc/ry9vQEICwsz7rXZbOzevdstwS06n5CQwPr165k0aRIxMTG3NzgiIiIilVSFSDYLCgpISkripZdeYv/+/fzwww/UrVuXu+66i//7v/8DXMnmuHHj+Prrr3E6nVy+fJmjR4/y29/+FoCDBw9y9uxZhg4dykcffWTMXP7c5cuXKSgo4K677rrlcVavXp0//OEPfPjhh1xrx6hjx44REBBwy22LiIiIeKIK8c7m5s2buffee2nUqBGdO3dmzZo1TJw4kdDQUPbs2UO9evXIzMykRYsW1K9fn4MHD5Kbm0urVq3w8XE9QtHMaHBwMD4+PqSlpfHYY48B/92w3el0cuzYMX7729/StGlTo/+FCxfy/vvvG79/97vfMX369KuO9X/+5384c+YMOTk5AKSmpmK1WsnLy+PSpUu0b9+epUuXllaoRERERCqVCjGzuW7dOrp37w5AZGQkNpuN/Px82rZty549e/j66695+OGHAWjXrh07d+5k9+7dtG/fHvjvzGhRGxaLhdWrVxvtX7mMvn37dqpXr86sWbOM8z9fRr9WoglgMpkAqFq1KuC+jP7AAw/QsGFDGjVqdBujIyIiIlJ5lfvMZnZ2Nmlpaezfv58VK1bgdDo5d+4cn3/+OR06dGDhwoXUqFGDDh06ANChQwfee+89zp49y7Rp0wD46quvyM3NZfTo0YAr+czOzub48ePF+vP19aVnz5689tprJRrvoUOHuOeee6hRw327oho1ajBv3jx69OhB27ZtadWqVYnaFxEREfEk5T6zmZCQQGhoKFu2bCE1NZWvvvqKESNGsHr1agICAqhWrRppaWm0bdsWgODgYI4cOUJWVhYNGzYEXB8GjRs3jtTUVFJTU0lLS6N169asXbv2qn3u2LGD5s2b3/JYc3Nzef311xk4cOBVz99///0MGjSI2bNnX/OdThEREZE7SbnPbH7yySeMHz/e7djAgQNZvnw533//PW3atGHHjh3GBz1eXl40aNDA+Ajn1KlT7Ny5kzlz5ri18dxzzzFjxgysVqvxzqbJZMJut3Pffffx5z//2bj25+9sgmtbJfjvO5lF9z7xxBMMHTr0ms8zfPhwPv74Y5KSkoiKiip5YEREREQ8gMmpKTgpY1erIBQUVJOTJ3PLaUQVh+KgGBRRHFwUBxfFwUVxKN8YeHmZSlT1sNxnNgWys/NwOJTzi4iIiOdRslkB3Am10VUPXURE5M6kZLMCuBNqo6seuoiIyJ2p3L9Gv10yMzMxm83FSkVmZGRgNpux2WwAFBYW0qFDB7cPhAAWLVrkVoYSXF+5T548mUOHDhn1z9u0aWPUUu/bt6/RR69evejatSvR0dEUFhaW4pOKiIiIVB4ek2wC1K5dm7S0NOx2u3EsOTmZwMBA4/fmzZt56KGH2LhxIxcvXrypds1ms7Fxe1hYmLEJfNHWShMnTiQmJoaUlBScTicfffTR7X0wERERkUrKo5JNf39/mjVrxq5du4xj27Zto127dsZvm81Gly5daNGiBRs2bPjFfR47doxLly7RsmVLAHr16sVnn332i9sVERER8QQelWyCq1RlSkoKAPv27cNsNlOlShUAcnJy+Nvf/kZ4eDgWi4U1a9b84v6ysrIICgoyfgcFBXHixIlf3K6IiIiIJ/C4ZDMsLIwtW7bgcDjYuHEjFovFOJeYmEhoaCgBAQGEh4dz6NAhDhw4APy35vmVnE7nVY9fyeFwuF1zM/eIiIiI3Ck8Ltn09/enadOmpKens2PHjmJL6N988w1hYWFERUXh5eXF6tWrAQgICODcuXNubWVnZxuViq7lnnvu4eTJk8bvU6dOUbdu3dv4RCIiIiKVl8clm+BaSo+Pjyc4OBgfH9fuTmfOnOH48eNs2rTJqKH+1ltvkZSURF5eHiEhIWzatImcnBzAVQc9OTnZqMl+Lffddx9Vq1YlPT0dcNV679ixY+k+oIiIiEgl4ZH7bHbq1Ino6GjGjRtnHFu0aBH9+/enWrVqxrGQkBAaNWpEUlISTz31FMOHD+fZZ58FwG6307dvXx577LEb9vfqq68ydepU8vLy+M1vfsOQIUNu+zOJiIiIVEaqjV4B3Cmbul+vlqvq3booDopBEcXBRXFwURxcFAfVRpcSWjilZ3kPodRdulxQ3kMQERGRcqBkswLIzs7D4dAEs4iIiHgeJZsVQEmmpCuTS5cLyD2nuugiIiJ3IiWbFYCnv7O5Km4guSjZFBERuROV6tZHmZmZmM1mYmJi3I5nZGRgNpux2WwAvPfee1gsFrp3747VauWDDz4wrrXZbLRp0war1YrVaqVr165MmzaNwsJCMjMzCQsLu2rfZrO52LGwsDAyMzMBOH/+PDNnzqRLly5ERUXx9NNPs337drfr09LS6Nu3LxaLhW7dujFnzhy3euqFhYW88cYbWCwWIiMj6dq1K2+++Sb65kpERETEpdRnNmvXrk1aWhp2ux1vb28AkpOTCQwMBFxbEu3atYuVK1dSp04dcnJyGDVqFGfOnOHFF18EXElibGws4NqSaMCAAXz88cd06NChRGNyOp2MGDGCZs2asWHDBnx9fTlw4ADDhg0jPj6ekJAQtm/fzvTp01m0aBG/+c1vyM/PJzY2llGjRvHOO+9gMpmYOXMmp06dYs2aNdSqVYu8vDxefPFFatasycCBA29D9EREREQqt1Lf1N3f359mzZqxa9cu49i2bdto164dFy9e5O2332bOnDnUqVMHgMDAQGbNmsXy5cvdZhGLeHt78/DDD3P48OESj+nrr7/mxx9/ZMqUKfj6+gLQvHlzRo4cydKlSwFYunQpo0eP5je/+Q0Avr6+TJkyhX/+85+kp6dz/PhxEhMTiY2NpVatWgDUqFGDmJgY41lERERE7nRl8s6mxWIhJSWF0NBQ9u3bh9lsxul0cvHiRfz8/Khfv77b9U2aNMHX15cjR44Ua+v06dNs3bqVYcOG3bBfq9Xq9jsrKwuAf/zjHwQHBxerYf7II48QHx9vXDN9+nS381WqVKFVq1b84x//ICcnh8aNGxcrZ9m4cWMaN258w7GJiIiI3AnKJNkMCwvjtddew+FwsHHjRiwWC8nJyZhMJux2+1XvKSwsNJLB1NRUrFYrTqcTp9NJly5d6N69O8eOHbtuvwkJCcXGAVyz34KCAqNPk8lEYWFhsWvy8/Pdriny2Wef8cYbb+BwOPD19WXdunXXHZuIiIjInaBMaqP7+/vTtGlT0tPT2bFjB+3atQOgWrVqFBQUFJvBPHz4MA6Hg0aNGgGuJDEhIYHExESSkpIYO3ZssVnJW/Hb3/6Wb7/9loIC943G9+7dS3BwMAAtWrRg7969bufz8/M5cOAAwcHBBAcH8/3335OXlwdAREQECQkJvPHGG5w+fbrEYxMRERHxJGWSbIJrKT0+Pp7g4GB8fFwTqn5+fowcOZLo6Giys7MByM7OZtq0abzwwgv4+fmVylgefvhhmjRpwpw5c4yE89tvv+WNN95g1KhRAIwZM4Y33niD/fv3A65Zz1mzZvHrX/+a1q1bc++99xIVFcUf//hHzp07B7hmYzdt2oSXV5mFVURERKRCK7N9Njt16kR0dDTjxo1zOz5s2DBq1qzJs88+i9PpxGQyMWDAgJv+mvvHH3+kVatWxu/WrVuzfPnyG963ePFi/vKXv9C9e3e8vb0JCAhg/vz5hISEAK6EdN68ecyePZuzZ89SWFhIx44dWbp0qTGrOmPGDN59912GDBmC3W7n/PnzhISE8Ne//vVmwyIiIiLi0UxObQoppexmKggFBdXk5MncMhpRxaU4KAZFFAcXxcFFcXBRHMo3Bl5ephJVPVQFoQpAtdFFRETEU+nlQhEREREpNZrZrABKMiVdmdzMMrqIiIh4JiWbFcDYuZ9y6vT58h5GqVkVN5BclGyKiIjciTxmGT0zMxOz2UxMTIzb8YyMDMxmMzabjYMHDzJkyBCioqLo1q0b0dHRXLhwAYDJkydjs9mM+77++ms6dOhAeno6NpuNNm3aYLVaiYqKIjIykuTkZOPaL774wjg3atQozp49WzYPLSIiIlLBeUyyCVC7dm3S0tLcqgMlJycTGBgIwPjx4xk/fryxObyPjw+vv/56sXZ2797Nyy+/zOLFi2ndujXgvrH8+++/z9SpU8nNzSUvL48ZM2awbNkyEhMTMZvNLFq0qGweWERERKSC86hk09/fn2bNmrFr1y7j2LZt24yKRadOneLSJddyrpeXF6NHj8Zisbi1sWfPHiZOnMiSJUto2bLlVfs5f/481atXp2rVqhQUFDB9+nTuvvtuAMxmMz/99FNpPJ6IiIhIpeNx72xaLBZSUlIIDQ1l3759mM1mirYSnTJlCiNHjqRu3bqEhIQQHh7O448/btz797//ndmzZ9O5c2ceeught3aL6rPb7XaOHj3K0KFD8fX1xdfXly5dugBw6dIlli1bxuDBg8vseUVEREQqMo+a2QTXcveWLVtwOBxs3LjRbeayV69ebN26lYkTJ+Lj48PkyZOZPXu2cf6zzz5jyZIlbN++nS+//LJYuwkJCaxfv57U1FQ2bNjA+vXrjfO5ubkMGzaMpk2b8uSTT5b+g4qIiIhUAh6XbPr7+9O0aVPS09PZsWOHsYReWFjIkiVLqFGjBl26dGH69Ol8+OGHrF271rj3D3/4A6GhocyZM4fo6GhOnDhx1T7q1q3L448/zp49ewDIysri6aefxmw2uyWvIiIiInc6j0s2wbWUHh8fT3BwMD4+rjcFLly4wIoVK9i+fbtxXUZGBs2aNTN+V6lSBYAOHTrQrVs3Xn75ZRwOR7H28/Pz2bNnD82bN8dutzNixAgsFgvR0dFG3XQRERER8cB3NgE6depEdHQ048aNM47VqlWLZcuWMX/+fKZOnUqVKlVo1KgRCxYsuGobEydO5Mknn+Stt97i7rvvNt7ZNJlM5Ofn065dO3r16sWXX37JgQMHsNvtpKSkABAcHKwZThERERHA5Cz6ekaklNxMBaGgoJqcPJlbRiOquBQHxaCI4uCiOLgoDi6KQ/nGwMvLVKKqhx45s1nZZGfn4XAo5xcRERHPo2SzAvDE2uiqhy4iIiKgZLNC8MTa6KqHLiIiIuBBX6OXZ230IpMmTXJrQ0RERORO5zHJJpRPbXSAEydOMGLECONrdBERERFx8ahl9KIN3Xft2kVoaChw49rox44dc2vjytroPy9ZWeTK2ugASUlJhIeHU7t27dJ6NBEREZFKyaOSTSj72ugAL7zwAgDp6ell85AiIiIilYRHLaND+dVGFxEREZHiPC7ZLI/a6CIiIiJydR6XbELZ1kYXERERkWvzyGSzU6dOZGRkEBkZaRwrqo2+ZMkSwsPDiYiIICkp6bq10U+dOsVbb70F/PedzZ49e9KzZ09atmxJr169yuR5RERERCor1UaXUnGrFYRU79ZFcVAMiigOLoqDi+LgojioNrqUkGqji4iIiKfyyGV0EREREakYNLNZAZRkSrqiuNXlchEREbmzKNmsAMbO/ZRTp8+X9zBKZFXcQHJRsikiIiJXV2mSzczMTMLDw+nfvz+vvPKKcTwjI4OePXsyd+5cFi9eTLVq1YwtjHJzcwkODiY2Npbq1asTFhbmdh6gefPmzJ07l8GDBzN69GhCQkLc+j137hwzZ87ku+++A1x7bE6bNo2GDRsa16SmpjJy5EjWrVtHcHBwKUZBREREpHKpNMkmQO3atUlLS8Nut+Pt7Q1AcnIygYGBxjXLli2jfv36gGs/zKeffppPP/2Up59+utj5mxEfH8+DDz5IfHw8AOvXr2f8+PF88sknxjU2m42IiAjWrFmjZFNERETkCpXqAyF/f3+aNWvGrl27jGPbtm0zqgT9XG5uLrm5udSuXbvEfZ46dYrLly8bm7tHRkYyZswY43xOTg47duxg4sSJbNy4kby8vBL3JSIiIuJpKtXMJriqA6WkpBAaGsq+ffswm81cuVXosGHD8Pb2Jjs7m3vuuYdBgwa51UcfNmyY2zL6kCFD6N279zX7GzlyJC+++CKrVq0iNDSU9u3bExUVZZxPTEykffv21K9fn+DgYBITE41ZVBEREZE7XaWa2QQICwtjy5YtOBwONm7c6JZIgmuZPCkpienTp3P69GkiIiIwmUxu5xMSEoy/6yWaAMHBwXz55ZcsXLiQhg0b8s477/D0009TWFgIwCeffEL37t0B16zn6tWrb/MTi4iIiFRelS7Z9Pf3p2nTpqSnp7Njx45rLqF37dqVRx99lD/96U8l7svpdDJ9+nTsdjtt2rThpZdeIiZ7vD0AACAASURBVDExkdOnT3PgwAH279/Pd999x+zZswkLC2PJkiUcPnyYvXv3lrhPEREREU9y08nmuXPnSnMct8RisRAfH09wcDA+Ptd+E2DcuHGkp6ezadOmEvVjMpn4/vvvefvtt413NjMzMyksLKRBgwbYbDb69evHpk2bSE1NZfPmzVitVs1uioiIiPzHDZPNI0eOEBkZSbdu3Thx4gQWi4Xvv/++LMZ2TZ06dSIjI4PIyMjrXverX/2KoUOHEhcXZyx7Dxs2DKvVavwNGDDAuH7o0KG0atXK+Pvxxx9ZsGABhw8fJjw8nMjISCZPnkx8fDzVq1dn/fr1xd7PfPbZZ9m4cSNnz569/Q8uIiIiUsmYnFd+XXMVv//973n++eeZP38+n376KR988AHJycl88MEHZTVGqcBuVwWhoKCanDyZextGVLkpDopBEcXBRXFwURxcFIfyjYGXl6lEVQ9v+DX6mTNnaN++PfPnzwdg4MCBfPTRR7c+Qrmm7Ow8HI7r5vwiIiIildJNvbN5+fJl44vukydPGu8vioiIiIhczw1nNp966imef/55srOziY+PZ8OGDbzwwgtlMbY7RkmmpCuC27WELiIiIp7rhslm3759adiwIZs2baKwsJA///nPtG/fvizGdktupnZ6r169KCws5PHHH6dr165MmzbNuG7RokUAbtWBbDYbX3/9Nc899xyTJk0C4KeffqJ69eoEBATg6+vL2rVrjesnTZpEaGgovXr1uqWxj537KadOny/Rc5enVXEDyUXJpoiIiFzbDZPNZ555hvfff59HHnmkLMbzi9xM7fTNmzfz0EMPsXHjRl5++WX8/Pxu2K7ZbCYhIQGAyZMn06ZNG7eE8sSJE0yfPp3t27cTGhp6m59KREREpPK64Tububm5XLhwoSzG8ovdTO10m81Gly5daNGiBRs2bLgt/SYlJREeHl6smpGIiIjIne6GM5t+fn506tQJs9lM9erVjeNvvvlmqQ6spK5XOz0nJ4e//e1vzJkzB29vb/73f/+XPn36/OI+i95hTU9P/8VtiYiIiHiSGyabtyMZK0thYWG89tprbrXTk5OTAUhMTCQ0NJSAgADCw8OZNm0aBw4coHnz5phMJn6+5ajT6XSrqy4iIiIit+aGyeaTTz5ZFuO4bX5eO33ChAlGsmmz2cjKyiIsLAwALy8vVq9ezSuvvEJAQAA//PCDW1vZ2dkEBASU+TOIiIiIeIobJputWrW66uzenj17SmVAt8PVaqefOXOG48ePs2XLFqpVqwbAzp07GTFiBJMmTSIkJIQVK1YwcuRIAgMDyc3NJTk5mfHjx5fno4iIiIhUajdMNtevX2/8n5+fz4YNG27qC+7y1KlTJ6Kjoxk3bpxxbNGiRfTv399INAFCQkJo1KgRSUlJPPXUUwwfPpxnn30WALvdTt++fXnsscfKevgiIiIiHuOGtdGvpm/fvm77S8ovU5n32bxd9VlV79ZFcVAMiigOLoqDi+Lgojh4aG30n/v+++/Jzs6+5Y7k2hZO6VneQyiRS5cLynsIIiIiUsHd0jubTqeTgoICXn755VIf2J0kOzsPh+OWJ5hFREREKrxbemfTZDJRq1YtatSonLW8K6rKWBtdddFFRETkZtww2Zw+fTrLly93O9avXz8++uijUhvUnaYyvrOpuugiIiJyM65ZrnLs2LH06NGD3bt306NHD+PPYrFw+fLlUhlMZmYmZrOZmJgYt+MZGRmYzWZsNhuDBw9m586dgGsD97/85S9u106ePBmbzQa4appfaebMmQwaNIjz58/zz3/+kwEDBhAVFcXgwYM5duwY4PrifuLEiVgsFp588km+//57tzYKCwvp37+/0QfA4MGD6datG1arFavVyt///vfbExARERGRSu6aM5uTJk3i2LFjTJs2jWnTphnHvb29adKkSakNqHbt2qSlpWG32/H29gYgOTmZwMDAq17//vvv06VLF4KDg6/b7qxZszhy5Ah//etf8fPzY+bMmYwaNYqOHTvy4YcfsmDBAuLj41m5ciV+fn5s3LiRXbt2MWXKFLdZ3CVLlnD06FHjt9Pp5OjRo3z11VfGnp4iIiIi4nLN7Kh+/frUr1+fzz77DC8v9wnQCxculNqAiioA7dq1i9DQUAC2bdtGu3btrnr98OHDmTJlCuvWrcPX1/eq18TGxnLkyBHeeustY5/Nd999Fx8fHxwOBz/++CO1atUCYNOmTcb+nI888gg5OTn8+OOP3HvvvezZs4eDBw/SqVMno+0jR44A8Pvf/54zZ87Qr18/Bg0adHuCISIiIlLJXXMZvUhqaipRUVF07tyZ8PBwOnXqRPv27Ut1UBaLhZSUFAD27duH2WymSpUqV722R48e3H///SxZsuSq5+fPn8+7777LsGHD3DZ09/Hx4dy5c8bMZr9+/QDIysoiKCjIuC4oKIjjx4+Tl5fH3Llz+fOf/+zW/rlz52jbti1LlizhvffeY/Xq1Wzbtu0XPb+IiIiIp7hhshkXF8eIESOoV68e06dP59FHH2XAgAGlOqiwsDC2bNmCw+Fg48aNWCyW614/c+ZM1q5dy7ffflvs3D//+U/mzZvHn/70J3Jz3TdBrVWrFlu3bmXBggWMHDkSu92O0+l0K8/pdDrx8vJi5syZDB8+nDp16ri10apVK+Li4qhZsyaBgYH06dOHzZs3/4KnFxEREfEcN0w2/fz8iIyMpGXLllStWpUZM2awadOmUh1U0VJ6eno6O3bsuOYSepGgoCAmT57MlClTKChw32h80aJF9OzZk1atWjF9+nTjeHJyMkXFkzp27MilS5c4e/Ysd999N1lZWcZ1p06dIigoiO3bt7No0SKsViupqaksXLiQxMREdu/ezfbt243rnU6n3t0UERER+Y8bJptVq1YlPz+fBg0akJGRgZeXl9vMX2mxWCzEx8cTHBx8U8lbVFQU999/v7H8XqToPc7p06ezZ88e1q1bB8A777zD559/DsCOHTu46667CAwM5LHHHiMhIQGA3bt3U7VqVe677z62bt1KQkICCQkJhIWFMXbsWKKiosjNzSUuLo7Lly+Tl5fHJ598QpcuXW5nKEREREQqrRsmm2FhYQwbNoyOHTvy3nvvMWbMGO66665SH1inTp3IyMggMjLypu+ZOXMm/v7+Vz1Xq1Yt5s6dy+zZs/m///s/YmNjeffdd7FarSxevJiFCxcCrm2M8vPz6datG7NnzyYuLu6G43zsscfo2bMnvXv3pnfv3rRq1ermH1RERETEg5mcRWvJ11H0NfaBAwfYtWsX3bt351e/+lVZjE8qqNtdQSgoqCYnT+be+EIPpzgoBkUUBxfFwUVxcFEcyjcGXl6mElU9vKmXC/ft28eaNWsYMWIER44cUaJ5m6k2uoiIiHiqGy6jL1u2jA8//JDPPvuMS5cusXjx4mtuMyQiIiIicqUbzmxu2LCBtWvX0q9fP+666y4++ugj+vfvz4svvlgW47sjlGRKuqzc7uVyERERubPcMNn08fFxq8xTq1Ytbe1zm42d+ymnTp8v72Fc1aq4geSiZFNERERK5oZZY7169di0aRMmk4n8/Hzefvtt7rvvvpvuIDMzk/DwcPr3788rr7xiHM/IyKBnz57MnTuXKVOm0LRpUwAKCgpo1aoVMTExVK1alUWLFrF69epim6m/+eab/PDDD4wYMYIGDRoA4HA4OH/+PEOHDuWpp57CZrMRGxtLvXr1cDqdFBYWMnr0aLcv3N977z3WrFmDt7c33t7e9OvXj4EDBwK43X+lV155hV/96ldERETQuHFjt7579uzJ2LFjbzo+IiIiIp7smsnma6+9xksvvcQzzzzD4sWLOXToEC1btuS3v/0tr7766i11Urt2bdLS0rDb7Xh7ewOuTdUDAwONa4r2tnQ6nYwZM4aPP/7YSPoGDBjAmDFjirX7ww8/EBwczMqVK41jGRkZ9OnThx49egCurZtiY2MBOHnyJF27duXRRx+lZs2aLFq0iF27drFy5Urq1KlDTk4Oo0aN4syZM8ZrAlfef6XMzEzq1q1rjBvgxIkTdO3alW7duhlJqIiIiMid7JrJ5vr163nqqaf485//zIoVK7hw4QImkwk/P79b7qSoItCuXbsIDQ0FYNu2bVetDFRQUMDFixeLzWTerGPHjuHn5+e29F/k/PnzVK9enapVq3Lx4kXefvtt1q9fb/QVGBjIrFmz6Nu3L7///e9vue+TJ0/idDqvudeniIiIyJ3mmslm+/btefzxx3E6nbRt29Y4XlQ7PCMj45Y6slgspKSkEBoayr59+zCbzVy5xafVagXg+PHj3H333W59rl69mi+++ML4Xb9+feOL+G+//Rar1crFixc5e/YsISEhvPPOO0aymZqaitVqxW63c/ToUYYOHYqvry/79u3Dz8+P+vXru42zSZMm+Pr6cuTIEbf7i/j6+rJ27VoAsrKysFqtXL58mdOnT/PQQw+xePFi7rnnnluKjYiIiIinumayOXPmTGbOnMnAgQP54IMPfnFHYWFhvPbaazgcDjZu3IjFYiE5Odk4X7Qc7XA4mDNnDuPHj+ftt98Grr2MDhjL6Pn5+UycOJEaNWrQokULt36LlsGzsrIYNGgQjRs35oEHHsBut1+1zcLCQqMk57WW0QFjGd3hcBAbG8v3339P+/btbzEyIiIiIp7rhvts3o5EE/67lJ6ens6OHTuuuoQO4OXlRZ8+fdizZ88tte/r68usWbP46quv3JLYK9WtW5fHH3+cPXv20KRJEwoKCowZzCKHDx/G4XDQqFGjm+7by8uLSZMmceLECSNBFhEREZGbSDZvJ4vFQnx8PMHBwdfdPmn79u00b978ltuvWbMmY8aMIS4ujkuXim/Xk5+fz549e2jevDl+fn6MHDmS6OhosrOzAcjOzmbatGm88MILt/xuqo+PD5MmTWLp0qWcPHnylscuIiIi4onKdMPMTp06ER0dzbhx44qdK3ov0mQyUbNmTbdtkn7+zibAH//4R+PL9iv17duXlStX8u6773L33Xcb71wWbd3Url07evXqBcCwYcOoWbMmzz77rPEu6oABA4yv4KH4O5sAzz33HA8//HCxvjt27EirVq14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REREXNUd/xo9NTWVgIAAJk6c6NR++PBhAgICiIuLA2D9+vX07NmTkJAQOnbsyKuvvkpGhuMdhZ07d9KkSRMsFovTX0JCAgABAQEMHDjQafwLFy7w//7f/2POnDlG2+rVq+nWrRtdunSha9euzJs3j7y8POMaAQEBTnXUATZt2kRAQAA7d+5k9OjRLFiwwKnfbrfToUMHUlJS/oBoiYiIiJRsxbL10bV10QtcWxc9Pj6ed955hxkzZrB+/XoSEhKoWLEi48ePN44PDAzEarU6/XXq1Mno//bbb7l06ZLx+z//+Q9333238TsuLo5///vfzJ07l7Vr17Js2TIOHz7slARXr17d6evzX9/n448/Tnx8vFP/nj17qFixIg0bNvw9IRIRERFxC8WSbN6sLvrcuXN59dVXqVevHuDY+mjUqFE0btz4lq/RoUMHPvvsM+P3hg0bnJLRuXPnMmHCBO69914Aypcvz5QpU1izZg3ff/89AHXr1sVms/Hdd98BkJ2dzalTp6hfvz4ALVu2JCsri2+++cYY12q18vjjj/+meIiIiIi4q2Lb1L2gLjpg1EX39vbm8uXLnDx5kmbNmjkd7+3tzeDBg43fBfXIr/27ePFikeOnpaUBULVqVcCxpP79998XKlXp5+dH/fr1OXTokNEWHBxsjJOUlET79u2NPpPJRI8ePVizZg0AOTk5JCUlERYW9vuCIyIiIuImii3ZNJvNbNmyxaku+rVMJhPgeMezIJl85JFHOHPmDFD0MnqlSpWM85s0acK3335LRkYGGzZsoHPnzoXu4dpl/AK5ubnGtcGRtP7nP/8BKPI+//73v7Nu3TrsdjufffYZLVu2dFquFxERESnNii3ZvF5ddD8/P+rUqWPUQa9du7aRTHp7exeZIBbFZDLRvn17PvvsMzZu3OiUbFauXJl7772Xffv2OZ1z4cIFvvvuO6eymHXr1iU3N5djx45x9uxZY2m/wD333GPcr9VqpWfPnrcVDxERERF3VKy10a9XF33kyJFERUVx/Phxo2337t1cunSpyHKUNxr/448/xsfHx/io59prTJ061XgfMysriwkTJhAaGso999zjdGxwcDATJkzAbDYXeZ0ePXqwcuVKTp06RYsWLW75/kRERETcXbHus3m9uuhhYWHcddddTJgwgaysLDIzM6lXrx5z586lZs2anD592nhn81pdunQhIiLC+P3ggw9y/vx5nnjiiULX7tKlC56enowYMYKcnBzy8/Pp0qULQ4cOLXRsSEgIs2bNIjo6usjn6Ny5M1FRUTzzzDNOS/AiIiIipZ1qo7sBd6ggpHq3DoqDYlBAcXBQHBwUBwfFQbXR5TapNrqIiIi4q2J9Z1NERERE3JtmNl3A7UxJX8sdltFFRETEPSnZdAHDp60i7WLWbZ//cXQ4GSjZFBEREdfjEslmamoqHTp04KmnnmLy5MlG++HDh+nevTuTJk0iJiam0DnBwcFERkYSHBxcaP/Ld999l5o1a3LgwAHeeustfvzxR7y8vAgKCmLMmDHGVkgBAQFERUU5fbHet29fhg0bRosWLQgICDDqnOfk5FCvXj3GjBlD3bp1Adi5cyezZs3iypUr5Ofn8+ijj/LSSy/9pi2aRERERNyVSySbABUrViQ5OZn8/HwjUVu3bh2VK1embNmyWK1W49j9+/cTGRnJoEGDAKhWrZpTf4Fjx47x3HPPER0dTevWrbHZbCxcuJB+/foRGxtLmTJlAJg5cyZt27alZs2aRd7btWMvW7aMgQMHsm7dOgBeeuklli1bRp06dcjJyWH48OF89NFH9OvX748JjIiIiEgJ5jIfCJUrV45GjRqxa9cuo23btm1GZaECFy5cYMSIEUyaNAl/f/8bjrlw4UKeeuopYwwPDw8iIiIoW7Ys69evN4575plnmDBhwi3dZ69evShTpgzJyclcuXKFzMxMrly5AoCPjw/jx4+nefPmtzSWiIiIiLtzmWQTHJunb9y4EYADBw4QEBCAt7e30W+z2RgzZgydO3cmODjYaD937pxRP91isbBw4UIADh48SFBQUKHrPPzww3z99dfG78GDB3Px4kVWrFhxS/dZv359Tpw4gZ+fH0OGDKFHjx507dqVqKgofvzxR2PZXURERKS0c6lk02w2s2XLFmw2G+vXryckJMSpf/78+WRlZTFmzBin9oJl9IK/guV1k8lEXl5eoevk5uY6/fby8mL69OnMnDmTM2fO3PQ+TSYTZcuWBSAyMpItW7YwZMgQsrKyGDx4MIsXL/4tjy0iIiLitlwq2SxXrhwNGzZkz5497Nixw2kJffv27Sxbtox33nnHabbzRoKCgti/f3+h9n379hEYGOjU9te//vWWl9O/+eYb6tevz/79+/noo4+oXLkyYWFhTJs2jblz597yDKmIiIiIu3OpZBMcS+kzZ84kMDAQLy/H90vnzp1jzJgxvPnmm9SoUeOWxxoyZAixsbFs27YNALvdzvz588nOzi40awq/LKfv27fvumN+/PHHmEwmWrRogZ+fH3PnziUlJcXoP3ToEI0aNbrlexQRERFxZy7zNXqB9u3bM378eEaMGGG05eXlkZmZyYwZM5yODQwMJDIy8rpj1a1bl0WLFvHWW28RFRVFfn4+TZs2ZenSpcaX6NcqWE7v0aOHU7vFYgEc74zWqVOHf//733h4eODv78/06dN59dVXyczMxGQyERQUxMSJE39PCERERETchslut6sodwnnDhWEqlatwPnzGcV9G8VOcVAMCigODoqDg+LgoDgUbww8PEy3VfXQ5WY2S6P09ExsNuX8IiIi4n5c7p1NEREREXEfmtl0AbczJe0OS+ciIiLi/tw+2bxZ3fVp06Zx//33M3XqVC5dukR+fj4PPvgg48eP56677mLcuHE0b97c+Gjoyy+/5MUXX+Sf//wnTZs2BSAxMZHIyEhiY2MLbal0K4ZPW0XaxazfdM7H0eFkoGRTREREXFupWEa/tu56gYK66wCjRo1i1KhRrF69mvj4eLy8vPjnP/9ZaJzdu3czevRo5s6daySaAHFxcQQHBxMTE/PnP4yIiIhICVIqks2b1V1PS0sjO9sxS+jh4cGwYcMK7cO5d+9exowZw7x583jwwQeN9gsXLrBjxw7GjBnD+vXryczMvANPJCIiIlIylIpkE25cd/2VV14hMjKSv/3tb7z22mscOnTIKaH86quvGDx4MM2bN6dx48ZO465evZo2bdpQu3ZtAgMDWb169Z17KBEREREXV2qSzRvVXe/Rowdbt25lzJgxeHl5MW7cOKZMmWL0b9iwgXnz5rF9+3Y+++wzp3E//fRTwsLCAAgNDWX58uV35oFERERESoBSk2xer+56Xl4e8+bNo3z58nTq1IlJkyaxbNkyp/rmL774Ii1btmTq1KmMHz+eH3/8EXCUpjxy5AhTpkzBbDYzb948jh49WmQ9dhEREZHSqNQkm1B03fWff/6ZJUuWsH37duO4w4cPO9U3L1hub9u2LV26dGH06NHYbDbi4uJ48skn2bx5M4mJiXz++edYLBbNboqIiIj8n1KVbLZv357Dhw8TGhpqtN19990sWLCAefPm0aFD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URxUG11+I9VGFxERkfrK4d/ZFBEREZG6SzObDqBySvpaXkYXERGR+kkzmw5g7Oy1DEv4F24NVeJSRERE6heHn9ksKioiPDycli1bYjKZsFgs+Pr6MmDAALZs2cLChQsB2LdvH1FRUbzyyisMGDAAgHnz5tGgQQNuueUWkpKSjK/UK02fPp3GjRsb/QNUVFRQWlpKTEwMY8eOpaCggJSUFJYvXw7AmTNnePzxx7n77ru5/fbbSU1NBWD//v00b94cV1dX7r77bl566aU/KkQiIiIiDsvhk00AX19fMjMzjd9JSUmYzWa+/vproy0/P59u3bqRn59vJJsff/wxEyZM4NtvvyU0NJSkpKQqfRcVFVXp/4cffqBv377069fP7tzS0lKeeOIJOnbsyIQJEwCMikGhoaEsXrzY2DZJREREROroMnpISAgnTpzA29ub//3vf4At2YyPj2f79u1YrVbOnz/PgQMHuOuuu664/+LiYqxWKx4eHkbb2bNnGTlyJJ06dTISTRERERG5vDoxs3kxi8XC5s2badeuHa6uruzYsYMmTZpQVFREUFAQzZo1Y8+ePZw+fZr27dsbVYeys7OJjo42+mnQoAHp6ekAHDlyhOjoaM6fP8/x48dp27YtKSkp3HzzzXz77bf8+OOPPPnkk+zbt48FCxbUynOLiIiI1EV1ItmsTAYBysrKCAoK4rnnnuOjjz4iNzcXHx8fgoODAejSpQsFBQWcPXuWrl27Gn1cahkdflqmr6ioICkpif3799td+8UXXxAfH89tt93G5MmTSUlJqcGnFREREak/6kSy+fN3Kit17NiR+fPn4+npSbdu3QDo1q0bS5cu5eTJk0yZMuWK7uPk5ERCQgIxMTG89dZbjBgxAoD27dvz9NNP8+OPPxITE8OKFSsYOnTo1T+YiIiISD1XJ9/ZrOTl5YWbmxt5eXl07twZgMDAQL755huOHDnCrbfeesV9uri4kJCQwMKFCykuLgbA1dW2JdF1113H3LlzeeWVV+w+ThIRERGR6tXpZBNss5vXXXcd3t7egG12snnz5rRr187uvMp3Ni/+W7t2bbV93nvvvbRv356//e1vVY7dddddPProo4wfP57z58///g8kIiIiUo+YrFarinI7iGu5gpCPz/UUF5+u7WHUOsVBMaikONgoDjaKg43iULsxcHIyGVUPr0SdeGezvispOUNFhXJ+ERERqX/q/DK6iIiIiDguJZsOoHFjT67/k1ttD0NERETkd+cQyWZRURGBgYFER0cTExNDv379eOyxx1izZg1PP/20cd6+ffsICAhg3bp1Rtu8efNITk42fi9fvpzAwEDjS/LK/kNDQy95/8qN3JcsWWLXPmnSJB5++GEufq3VbDYzadIk43jPnj2Jjo4mKiqK+++/nw0bNlzx84+dvRa3hq5XfJ2IiIiIo3OIZBN+2ktz7dq1vPPOOwQEBGA2m9m5c6dxzsX1zyt9/PHHdOnSxfhtNpsJCwsjIyPjV987KyuL0NBQ0tLS+Pn3Up999hmpqamXvHbs2LFkZmaSlZXF/PnzmT17Nh988MGvvreIiIhIfeYwyebP/Zb653v27OHkyZOMGDGCVatWUVFR8avuZTabGTZsGA0aNGDbtm12x+Li4vj73//Ot99++4v9+Pn5ERsby9tvv32FTysiIiJSPzlksnlx/fNOnTqxY8cOzp07V6X++WeffWZX/zwjI4Pw8HACAwNxcXEhLy/vF++1Z88ejh49SnBwMBEREaSlpdkdb9GiBaNGjeIvf/lLlVnP6txxxx188803v+3BRUREROoZh0k2K+ufR0dHM2DAAKxWK8899xydO3dmx44dbN++vUr9848//tioYW6xWMjKyqJ///4AREREsHLlyl+87+rVqwkPD8fZ2ZnIyEi2bt3K0aNH7c6JjY3FarVedjn9Ym5u+thHREREBBxon82rrX+ek5PD6dOnGT16NGBLPktKSjh8+PAl71lWVsb69etxcXEhOzvbaDebzYwcOdL47eTkxKxZs3jooYd48MEHL/sce/fupWXLlr/+wUVERETqMYeZ2byUX1v/3Gw2Ex8fT3Z2NtnZ2eTl5dGhQwfS09Mv2XdOTg7e3t7k5+cb102fPr3aD4VuvfVWRo0axVtvvXXJ/g4cOMDbb7/N0KFDr/7BRUREROoBh5nZvJyOHTuybdu2KvXPvby8ADh69CgFBQXMmjXL7rrHHnuMl19+mejoaL777jvat29vHOvQoQPOzs4MGzbM7pr+/fvz2muvVfu+Z2xsLP/+97/t2ubPn8+yZcswmUw4Ozvz/PPPc/fdd/8uzy0iIiJS16k2ugMYO3st81+IuabrvarerY3ioBhUUhxsFAcbxcFGcaibtdEdfhn9WjD/hRjOnbfU9jBEREREfnd1Yhm9vispOUNFhSaYRUREpP7RzKYDUG10ERERqa+UbDoA1UYXERGR+qreJJtFRUUEBAQwdepUu/bdu3cbddYBLly4QLdu3ZgxY4bdecnJySQnJ9u1mc1mJk2axN69e40N5zt27EjPnj2Jjo5myJAhAGzdutXYjP7pp5/m5MmTNfikIiIiInVHvUk2AW644Qby8vIoLy832jZs2ECjRo2M3++++y5t27Zl48aN/Pjjj7+q34CAADIzM8nMzCQ0NJSxY8eSmZlJeno6Z86c4eWXX2bx4sWsW7eOgICAKkmriIiIyLWqXiWbHh4etGnTho8++shoe//99+nSpYvx22w207t3b4KCgnjnnXeu+p4Wi4WXXnqJm266CbAlpt9///1V9ysiIiJSH9SrZBNsNdE3b94MwOeff05AQACurrb3IY8dO8YHH3xAWFgYERERpKWlXfX9vL296d27NwDnzp1j8eLF9OrV66r7FREREakP6l2yGRoaynvvvUdFRQUbN24kIiLCOLZu3To6deqEl5cXYWFh7N27ly+//BIAk8lUpS+r1Vpte3VOnz7NyJEjad26Nffff//v8zAiIiIidVy9SzY9PDxo3bo1n3zyCdu2bauyhL5z505CQ0MZMGAATk5OrFy5ErDVYD916pRdXyUlJUZJzMs5cuQIw4YNIyAggMTExN/3gURERETqsHqXbIJtKX3evHkEBgbi4mLbt/7EiRMcPnyY3NxcsrOzyc7OZtGiRWRlZXHmzBlCQkLIzc3l2LFjgG2mcsOGDXTu3Pmy9yovL2fUqFFERETw4osv/uqZUBEREZFrQb2sIHTffffx4osvEh8fb7QlJyfz4IMP4ub20+bpISEh+Pv7k5WVxdChQ3nyySd59NFHAVsSOWTIEHr06HHZe2VnZ/Pll19SXl5uvCsaGBioGU4RERERwGS1WlUn0QGcO2/h9KlztT2MWuPjcz3Fxadrexi1TnFQDCopDjaKg43iYKM41G4MnJxMNG7secXX1cuZzbpGtdFFRESkvqqX72yKiIiIiGNQsukAPD0b1vYQRERERGqEkk0H0LCha20PQURERKRGOOw7m0VFRYSHh9OyZUtMJhMWiwVfX19mz57N66+/TseOHRk4cCDDhw/npptu4tVXXzWuraxNPmbMGEJDQ3Fzc8PV1ZULFy7g7+9PYmKisX/mgQMHmDNnDl9//TUNGzbE39+fhIQE/Pz8AOyur3TnnXcye/ZsJk2axLZt2/Dy8qKiogIXFxdGjBhBZGTkHxgpEREREcflsMkmgK+vL5mZmcbvpKQk5s6dS4MGDezO27RpE+Hh4ZcsE7l48WKaNWsGQGJiIosWLSIhIYGjR48SGxvLhAkTGDBgAACZmZkMHTqUdevW0ahRoyrX/9zYsWMZOHAgAIWFhQwbNowbbrjBbjN5ERERkWtVnVpGDwkJ4auvvqrS/tRTTzFt2jROnDhx2esrKiooLS3lxhtvBGDFihV06dLFSDQBoqOj6dChAytWrLji8fn5+REbG8vbb799xdeKiIiI1EcOPbN5MYvFwubNm2nXrh0Wi8XuWHBwMCdOnGDmzJl2y+mVRo4ciaurKyUlJTg7OzN69GgAvvjii2o3bb/nnnvIz8+vcn2l2NhYBg0aVO0477jjDtasWfObnlFERESkvnHoZPPIkSNER0cDUFZWRlBQEM899xxJSUlVzn322WeJjo5m69atVY5dvAy+ZMkS4uLi2LBhAyaTifLy8irnWywWu7KTl1tGr87FVYpERERErmUOnWz+/J3Ny7nuuuuYNWsW48ePp2/fvsYHQD83ZMgQ5syZw/HjxwkKCuLTTz8lNjbW7pydO3cSGBj4m8a8d+9eWrZs+ZuuFREREalv6tQ7m78kODiY8PBwVq5ceclzPvzwQ5o0aUKjRo0YNmwYn3zyiV1Cu3btWnbs2MHQoUOv+P4HDhzg7bff/k3XioiIiNRHDj2z+Vs8++yzvPvuu3Ztle9cOjk54ezszGuvvQaAt7c3//rXv5g7dy5///vfsVqt3H777axYscL4Ev3i6ytdd911RkI7f/58li1bhslkwtnZmeeff5677777D3hSEREREcdnslqtKspdy86ft3Dq1LnaHkat8vG5nuLi07U9jFqnOCgGlRQHG8XBRnGwURxqNwZOTiYaN/a88utqYCxyhc6cOV/bQxARERGpEUo2RURERKTGKNkUERERkRpTa8lmUVERAQEBTJ061a599+7dBAQEYDabAbhw4QLdunVjxowZ1faTlJREp06dKCsrq9L3+++/b3duaGgoRUVFTJs2jejoaCIjIwkMDCQ6Opro6GgyMjIwm81MmjTJ7rqCggKGDx8O2OquV9Zer3TxNdUdFxEREblW1erM5g033EBeXp7dxuobNmyw+xL83XffpW3btmzcuJEff/zR7voLFy6wceNG2rdvz+bNm+2Oubq6MmXKFM6cOVPlvi+99BKZmZksXrzY2MszMzPzklWBREREROS3qdVk08PDgzZt2vDRRx8Zbe+//z5dunQxfpvNZnr37k1QUBDvvPOO3fW5ubk0b96cmJiYKntr+vr60qVLF+bMmVOzDyEiIiIil1Tr72xGREQYs5Kff/45AQEBxp6Wx44d44MPPiAsLIyIiAjS0tLsrjWbzYSHh9OjRw92797N119/bXd80qRJ5OfnV1lO/yXZ2dnG0np0dDSTJ0++iicUERERuXbVerIZGhrKe++9R0VFBRs3biQiIsI4tm7dOjp16oSXlxdhYWHs3buXL7/8EoCSkhLef/99IiIicHNz47777qsyu+np6cmMGTMuuZx+uTFVLq1nZmYyc+ZM49jFNdMrWa3WattFRERErnW1nmx6eHjQunVrPvnkE7Zt21ZlCX3nzp2EhoYyYMAAnJycjIRy3bp1WK1WBg8eTGhoKB9++CGZmZmcO2e/OXq3bt1+1+V0Ly8vTp06ZddWUlJyyVrsIiIiIteyWk82wbaUPm/ePAIDA3FxsVXQPHHiBIcPHyY3N5fs7Gyys7NZtGgRWVlZnDlzBrPZTFJSknEsPz8fLy8vNmzYUKX/yuX0I0eOXPVYQ0JCyM3N5dixYwCcPn2aDRs20Llz56vuW0RERKS+cYhk87777mP37t1ERkYabcnJyQwcOBA3NzejLSQkBH9/f1JTUzl+/Di9e/c2jjk5OfHII49UWUqHn5bTLRbLVY/1jjvu4Mknn+TRRx9lwIABPPTQQ8TExNCjR4+r7ltERESkvlFtdAdQUnKGiopr+9+gerc2ioNiUElxsFEcbBQHG8VBtdFFREREROwo2RQRERGRGqNkU0RERERqjJJNEREREakxtZ5s7tu3j4CAAKOK0Lp163j66aerHF+3bp3RNm/ePJKTk43fy5cvJzAwkOLiYru+LRYLf/3rX+nTpw9RUVEMHjzYbmuk5ORkunbtalQKioiIICoqik8++aTa45V/33//PQBnz55lzpw59OnTh8jISPr160d6evrvHyQRERGROsqltgeQkZFBeHg4aWlp9O3bl06dOjF79mzjeH5+Pt26dSM/P58BAwYA8PHHHzNhwgTjHLPZTFhYGBkZGYwaNcponzJlCufPn8dsNuPp6UlhYSEjRoygrKyMmJgYAB566CHGjBljXLN06VKSkpKMpPHnxy82ZswYbrnlFrKysmjYsCFHjhwhLi4OHx8fevbs+bvFSERERKSuqtWZTYvFQlZWFuPGjWPXrl0cPHgQX19fvL29+d///gfYks34+Hi2b9+O1Wrl/PnzHDhwgLvuuguAPXv2cPLkSUaMGMGqVauoqKgAoLCwkM2bN5OYmIinp+0zfT8/P1544QVSUlKqHU9FRQWHDx/+VdWAduzYwVdffcWUKVNo2LAhAL6+vkyfPt34LSIiInKtq9WZzXfffZemTZvi7+9Pr169SEtLY+LEiXTq1IkdO3bQpEkTioqKCAoKolmzZuzZs4fTp0/Tvn17o9JQ5cxoZfWhvLw8evTowX//+19atmyJu7u73T2Dg4MpLCzkxIkTAKxcuZKtW7dy6tQpKioq6NmzJ7NmzTLOrzxeqVmzZixYsIDPPvuMdu3a4erqatd/+/btaypcIiIiInVOrSabGRkZ9O/fH4DIyEgmTJhAfHw8nTt3Jjc3Fx8fH4KDgwHo0qULBQUFnD17lq5duwI/zYwuWbIEsJW9XLlyJT169MBkMlFeXl7lnhcuXADAZDIBPy2TFxcX88gjj9CuXTt8fX2N8y+3jH6x1NRUMjIysFgs3HbbbZecPRURERG5ltRasllSUkJeXh67du0iNTUVq9XKqVOn2LJlC926dWP+/Pl4enrSrVs3ALp168bSpUs5efIkU6ZMASAnJ4fTp08zevRowJZ8lpSUcPjwYYKCgjhw4AAnT560WxbfuXMnfn5+VZbKfXx8mDlzJnFxcQQHB+Pn53fZ8bdt25Zly5ZRXl6Os7MzsbGxxMbGUlBQoERTRERE5P/U2jubmZmZdOrUiffee4/s7GxycnIYNWoUK1euxMvLCzc3N/Ly8ujcuTMAgYGBfPPNNxw5coRbb70VsH0YFB8fT3Z2NtnZ2eTl5dGhQwfS09Np2rQpUVFRvPjii5SWlgJw8OBBZs+ebSSnP3f33XfTs2dPXnnllV8cf4cOHWjVqhUzZszg3LlzAJw7d468vDycnGr9I38RERERh1BrWdGaNWsYNmyYXdvDDz/M559/zv79++nYsSPXXXcd3t7eADg5OdG8eXPatWsHwNGjRykoKGDw4MF2fTz22GOkp6dTXl7OSy+9xJ133sngwYPp378/48aNIz4+3vgSvTrPPvssOTk5fPzxx4Dtnc2fb330wQcfYDKZWLBgAV5eXgwZMoSoqCiioqI4d+7cr0pWRURERK4FJqvVaq3tQVzrSkrOUFFxbf8bfHyup7j4dG0Po9YpDopBJcXBRnGwURxsFIfajYGTk4nGjT2v/LoaGIuIiIiICKBkU0RERERqkJJNEREREakxSjZFhc8dAQAAIABJREFUREREpMbUem30X7Jv3z6ioqKYP38+ffv2BWDSpEl07NiRgQMHMnz4cG666SZeffVV45rk5GTAVrs8NDQUNzc3XF1duXDhAv7+/iQmJhr7bB44cIA5c+bw9ddf07BhQ/z9/UlISDD22bz4+kp33nkns2fPZtKkSWzbtg0vLy8qKipwcXFhxIgRREZG/lHhEREREXFoDp9sVpajTEtLM5LNn9u0aRPh4eH06tWr2uOLFy+mWbNmACQmJrJo0SISEhI4evQosbGxTJgwgQEDBgC2/T+HDh3KunXraNSoUZXrf27s2LEMHDgQsNVjHzZsGDfccANdunS5qucWERERqQ8cehm9shzluHHj2LVrFwcPHqz2vKeeeopp06YZ9c4vpaKigtLSUm688UYAVqxYQZcuXYxEEyA6OpoOHTqwYsWKKx6vn58fsbGxvP3221d8rYiIiEh95NAzm++++y5NmzbF39+fXr16kZaWxsSJE6ucFxwczIkTJ5g5c6bdcnqlkSNH4urqSklJCc7OzkYFoS+++IIePXpUOf+ee+4hPz+/yvWVYmNjGTRoULVjvuOOO1izZs0VP6uIiIhIfeTQyWZGRgb9+/cHIDIykgkTJhAfH1/tuc8++yzR0dFs3bq1yrGLl8GXLFlCXFwcGzZswGQyUV5eXuV8i8WCyWSq9vpfw83N7VefKyIiIlKfOewyeklJCXl5eSxZsoTQ0FAmT57MqVOn2LJlS7XnX3fddcyaNYtp06Zx8uTJS/Y7ZMgQvvnmG44fP05QUBCffvpplXN27txJYGDgbxr33r17admy5W+6VkRERKS+cdhkMzMzk06dOvHee++RnZ1NTk4Oo0aNYuXKlZe8Jjg4mPDw8Mue8+GHH9KkSRMaNWrEsGHD+OSTT8jMzDSOr127lh07djB06NArHvOBAwd4++23f9O1IiIiIvWRwy6jr1mzhvHjx9u1Pfzww7z55pvGBz7VefbZZ3n33Xft2irfuXRycsLZ2ZnXXnsNAG9vb/71r38xd+5c/v73v2O1Wrn99ttZsWKF8SX6xddXuu6664yEdv78+SxbtgyTyYSzszPPP/88d99991U/v4iIiEh9YLJardbaHsS1rqTkDBUV1/a/wcfneoqLT9f2MGqd4qAYVFIcbBQHG8XBRnGo3Rg4OZlo3Njzyq+rgbGIiIiIiABKNkVERESkBinZFBEREZEa47AfCP2S6mqmDx8+nFOnThnn/PDDD7Ru3ZqlS5cSEBBA69at7fro2bMn48ePt6u1HhoaSmpqapV9NYcPH87hw4dxd3fHarVitVp56qmniIyMtKvFLiIiIiI/qbPJZnU105cvX24cP3jwIA899JBRLQiw2+Lot5g5cyYhISGAbT/NwYMH071796vqU0RERKQ+q5PL6L9UM/38+fOMGTOGuLg4goODa2QMAQEBuLu78+2339ZI/yIiIiL1QZ1MNqurmX6x6dOn4+fnR1xcnF17dHS03V9eXt5vHkPltf7+/r+5DxEREZH6rk4uo1+qZnqDBg1Yu3Yt27dvx2w2V7nuapfRJ0+ejLu7O+Xl5Xh5efH666/j4eFxVX2KiIiI1Gd1LtmsrJm+a9cuUlNTsVqtRs30O+64g9mzZ7Ns2TKuv/763/3eF7+zKSIiIiK/rM4lm5U10998802jLTk5mbfeeosff/yRhISEKl+di4iIiEjtqHPJ5qVqpi9YsABnZ2dSU1NJTU01jvn6+vLGG28Atnc2L9aiRQvmz59f5R79+/fHZDIZv3fu3PmL41q0aBFLliwxfk+bNo0BAwb8uocSERERqadUG90BqDa66t1WUhwUg0qKg43iYKM42CgOqo0uIiIiImJHyaaIiIiI1BglmyIiIiJSY5RsioiIiEiNqXNfoxcVFREeHk7Lli0xmUxYLBZ8fX2ZPXs2EydO5NSpU8a5P/zwA61bt2bp0qUEBARU2RKpZ8+ejB8/nkmTJtGxY0cGDhxIaGgoqampNGvWzO7c4cOHc/jwYdzd3bFarVitVp566ikiIyNJTk4GYMyYMTUfABEREZE6pM4lm2DbzujiakBJSUnMnTuX5cuXG20HDx7koYceYvTo0Ubb1VYQunhT97179zJ48GC6d+9+VX2KiIiI1Gf1Yhk9JCSEr776yvh9/vx5xowZQ1xcHMHBwTVyz4CAANzd3fn2229rpH8RERGR+qBOzmxezGKxsHnzZtq1a2e0TZ8+HT8/P+Li4uzO/fmm7hMmTPjNM5N5eXkA+Pv7k5OT85v6EBEREanv6mSyeeTIESNxLCsrIygoiOeeew6AtWvXsn37dsxmc5XrrnYZffLkybi7u1NeXo6Xlxevv/46Hh4eV9WniIiISH1WJ5PNn7+zWemrr75i9uzZLFu2jOuvv/53v+/F72yKiIiIyC+rF+9sApSWljJ27FgSEhKqfHUuIiIiIrWjTs5sVmfLli0cPHiQ1NRUUlNTjXZfX1/eeOMNoOo7my1atGD+/PlV+urfvz8mk8n4vXPnzl+8/6JFi1iyZInxe9q0aQwYMOCKn0NERESkPjFZrVZrbQ/iWldScoaKimv73+Djcz3Fxadrexi1TnFQDCopDjaKg43iYKM41G4MnJxMNG7seeXX1cBYREREREQAJZsiIiIiUoOUbIqIiIhIjVGyKSIiIiI15g/9Gn3fvn1ERUUxf/58+vbtC8Dw4cM5fPgw7u7uWK1WrFYrTz31FJGRkZjNZpKSkmjSpIldP9OnT6dx48aEh4fTsmVLACoqKigtLSUmJoaxY8cCsGnTJhYvXsyFCxewWq1ER0fzxBNPGP2sW7eON998k/LycpycnAgPD+fJJ5/ExcWFgoIC4uLiWLNmDbfffrtxTUBAAHv37gXg7NmzJCcn85///AcXFxdMJhOPPvooQ4YMqdE4ioiIiNQVf2iymZGRQXh4OGlpaUayCfabpe/du5fBgwcbZSRDQ0NJSkqq0ldRUVGVzd1/+OEH+vbtS79+/fD09GTOnDmYzWa8vb0pLS1l+PDh+Pv7ExYWhtls5p///CcLFiygefPmnDlzhkmTJjF16lRmzZpl9Dlp0iRWrVqFs7NzlTGMGTOGW265haysLBo2bMiRI0eIi4vDx8eHnj17/l5hExEREamz/rBldIvFQlZWFuPGjWPXrl0cPHiw2vMCAgJwd3fn22+/veJ7FBcXY7Va8fDw4Pjx41gsFs6dOweAh4cHSUlJtGrVCoCUlBQmT55M8+bNAfD09CQxMZH169dz6NAhANq3b4+Xl5exT+fFduzYwVdffcWUKVNo2LAhYNvTc/r06cZvERERkWvdHzaz+e6779K0aVP8/f3p1asXaWlpTJw4scp5eXl5APj7+7Nv3z6ys7PtNmNv0KAB6enpwE810s+fP8/x48dp27YtKSkp3Hzzzdx8882EhYXRq1cv2rRpQ0hICFFRUbRo0YJjx45x6NAhgoKC7O7t5eVFq1at2LVrF15eXoBt1nXgwIGEhYXZLad/9tlntGvXDldXV7s+2rdv//sETERERKQe+MOSzYyMDPr37w9AZGQkEyZMID4+HoDJkyfj7u5OeXk5Xl5evP7663h4eACXXkaHn2qkV1RUkJSUxP79++natatxfNq0aTz99NPk5+eTn5/PAw88wKuvvkpwcDAA5eXlVfq0WCx21YOaNm3K+PHjjeX0S0lNTSUjIwOLxcJtt91GSkrKFUZIREREpP75Q5LNkpIS8vLy2LVrF6mpqVitVk6dOsWWLVsA+3c2fwsnJycSEhKIiYnhrbfeYsSIEeTm5nL27FkiIyMZNGgQgwYNYtWqVaxevZo+ffrQvHlzdu7cabwbCnDs2DEKCwu58847KSoqMtoffPBBNm/ebLec3rZtW5YtW0Z5eTnOzs7ExsYSGxtLQUGBEk0RERGR//OHvLOZmZlJp06deO+998jOziYnJ4dRo0axcuXK3+0eLi4uJCQksHDhQoqLi3Fzc2PevHlG0mi1Wtm9ezdt2rQBYNy4ccyaNYvCwkIASktLmTx5MpGRkdxyyy1V+p85cyZLly41fnfo0IFWrVoxY8YM473Qc+fOkZeXh5OTdpQSERERgT9oZnPNmjWMHz/eru3hhx/mzTffxNPz8jU2f/7OJsBjjz1mLIVf7N5776V9+/b87W9/Y+bMmYwePZpRo0ZhsVgA6N69O8888wwA/fr1w9nZmfj4eMrKyigvL6dfv36MGjWq2nE0bdqUZ599lilTpgBgMplYsGABCxcuNLY6OnfuHD169OCVV175FVERERERqf9MVqvVWtuDuNaVlJyhouLa/jf4+FxPcfHp2h5GrVMcFINKioON4mCjONgoDrUbAycnE40bX36SsNrramAsIiIiIiKAkk0RERERqUFKNkVERESkxjhksrlv3z4CAgLYvHkzAOnp6cTFxVU574UXXiA1NRWz2UzHjh2Jjo4mOjqa/v3706dPH7Zu3Wp3/vLlywkMDKS4uLhKX5Wbwi9ZssSufdKkSZjNZru25ORkkpOTycvLM+7Zvn17evfuTXR0tPERkoiIiMi1ziGTzYtrqANERETw6aefUlJSYpzz448/kpOTQ1RUFGDb/D0zM5PMzEzWr19PQkICU6dOtevXbDYTFhZGRkZGlXtmZWURGhpKWloav/abqe7duxv3DAwMZObMmWRmZrJgwYLf+ugiIiIi9YrDJZvV1VD39PSkV69ebNiwwThv69atdOrUCW9v72r7OXTokFFyEmDPnj2cPHmSESNGsGrVKioqKuzON5vNDBs2jAYNGrBt27aaeTgRERGRa4zDJZvV1VAHGDRoEOvXrzfOW7t2LYMHDzZ+V+7HGRYWRteuXdm1axcLFy40jlfOlgYGBuLi4mLUYAdbInr06FGCg4OJiIgw7ikiIiIiV8fhks2f11A3m82UlZVxzz33cPz4cQoLCykuLubAgQN06dLFuO7iZfQWLVpw66234u/vD/w0W1rZb0REhF31otWrVxMeHo6zszORkZFs3bqVo0ePAtjVSa9ktVqrbRcRERERe39IBaFf63I11Pv160dMTAzr16/Hzc2N6OjoastCenp6MmfOHKKioujcuTPt27cnJyeH06dPM3r0aMCWfJaUlHD48GEaNWrE+vXrcXFxITs72+jHbDYzcuRIvLy8OHXqVJVxtmrVqmaDISIiIlIPONTM5i/VUL///vvZsmULmzZtYuDAgZfsx8/Pjz//+c8kJiZitVoxm83Ex8eTnZ1NdnY2eXl5dOjQgfT0dHJycvD29iY/P984Pn36dONDoc6dO7NhwwbOnj0LQHFxMbm5uXTq1OkPiYmIiIhIXeZQyeaaNWsYNmyYXdvDDz/M559/zv79+2nSpAne3t64u7vTrFmzy/b15JNPUlRUxNq1aykoKLB7vxNs9dXT09NJT0+vcs/+/ftz/vx58vLy6NGjB2FhYTzwwANERUXxxBNPMHHiRG6//fbf56FFRERE6jHVRncAqo2uereVFAfFoJLiYKM42CgONoqDaqOLiIiIiNhRsikiIiIiNUbJpoiIiIjUGCWbIiIiIlJjHGqfzYvt27ePqKgo5s+fT9++fQHbxu1ubm64urpy4cIF/P39SUxMxMvLC7PZTFJSEk2aNLHrZ/r06dx1111s2rSJxYsXc+HCBaxWK9HR0TzxxBN25w4cOBBfX1/+8Y9/GG1ms5nt27eTlJRktBUUFJCSksL8+fN59NFHAYxN4G+88UYAli5deslSmiIiIiLXCodNNivLS6alpRnJJsDixYuNbY8SExNZtGgRCQkJgC0ZvTgprPTDDz8wZ84czGYz3t7elJaWMnz4cPz9/QkLCwNsJSsbNGjAnj17+P7776skrdXx9vYmMzMTgOTkZADGjBlzdQ8uIiIiUo845DJ6ZXnJcePGsWvXLg4ePFjlnIqKCkpLS42ZxMs5fvw4FouFc+fOAeDh4UFSUpJdFSCz2UzXrl0JCwtj1apVv9/DiIiIiFzDHHJm891336Vp06b4+/vTq1cv0tLSmDhxIgAjR47E1dWVkpISnJ2djRKUANnZ2URHRxu/GzRoQHp6Oq1btyYsLIxevXrRpk0bQkJCiIqKokWLFsBPye3y5cs5ceIE48eP55lnnsHFxSHDIyIiIlJnOOTMZkZGBv379wcgMjISs9lMWVkZYFtGz8zMJD8/n0ceeYS4uDgq96UPDQ0lMzPT+EtPTzf6nDZtGtnZ2QwdOpTvvvuOBx54gH//+98A5Obm4uPjQ6tWrejQoQNOTk7k5OQAVFt/3Wq1YjKZajQGIiIiIvWBw03dlZSUkJeXx65du0hNTcVqtXLq1Cm2bNlS5dwhQ4YwZ84cjh8/ftk+c3NzOXv2LJGRkQwaNIhBgwaxatUqVq9eTZ8+fcjIyOD7778nNDQUgDNnzrBy5Up69+7Nn/70J06dOmXX37Fjx/Dy8vr9HlpERESknnK4ZDMzM5NOnTrx5ptvGm3JycmsXLmyyrkffvghTZo0oVGjRpft083NjRkzZhAUFESzZs2wWq3s3r2bNm3acPToUT744AO2bNnCTTfdBEBhYSHh4eEUFhbSrl07pk6dysGDB2nevDllZWWsWbOG++677/d9cBEREZF6yOGSzTVr1jB+/Hi7tocffpg333wTT09P451NJycnnJ2dee2114zzfv7OJsBjjz1GTEwMo0ePZtSoUVgsFgC6d+/OM888w/Lly+nRo4eRaAL4+fkRGhpKWloaEyZMYMaMGYwbN47y8nLKysro06cPDz74YA1GQURERKR+MFkrX3iUWlNScoaKimv73+Djcz3Fxadrexi1TnFQDCopDjaKg43iYKM41G4MnJxMNG7seeXX1cBYREREREQAJZsiIiIiUoOUbIqIiIhIjVGyKSIiIiI1pta+Ri8qKiI8PJyWLVtiMpmwWCz4+voyYMAAtmzZwsKFCwHYt28fUVFRvPLKKwwYMACAefPm0aBBA6MO+fLly5kzZw45OTn4+PgY97BYLKSkpLBx40YaNmxIw4YNefzxx4mMjAR+2lKpsuRlWVkZLi4uvPzyy3To0KHK8Ur/+Mc/aNKkCWfPniU5OZn//Oc/uLi4YDKZePTRRxkyZEiNx09ERESkLqjVrY98fX3JzMw0ficlJWE2m/n666+Ntvz8fLp160Z+fr6RbH788cdMmDDBOMdsNhMWFkZGRgajRo0y2qdMmcL58+cxm814enpSWFjIiBEjKCsrIyYmBoCHHnrISFoBli5dSlJSklF96OfHLzZmzBhuueUWsrKyaNiwIUeOHCEuLg4fHx969ux59QESERERqeMcahk9JCSEEydO4O3tzf/+9z/AlmzGx8ezfft2rFYr58+f58CBA9x1110A7Nmzh5MnTzJixAhWrVpFRUUFYNuYffPmzSQmJuLpaftM38/PjxdeeIGUlJRq719RUcHhw4d/VXWgHTt28NVXXzFlyhQaNmwI2JLn6dOnG79FRERErnUOs6m7xWJh8+bNtGvXDldXV3bs2EGTJk0oKioyKv/s2bOH06dP0759e1xcbEPPyMggPDycwMBAXFxcyMvLo0ePHvz3v/+lZcuWuLu7290nODiYwsJCTpw4AcDKlSvZunUrp06doqKigp49ezJr1izj/MrjlZo1a8aCBQv47LPPjLFerH379jUVIhEREZE6p1aTzSNHjhgVf8rKyggKCuK5557jo48+Ijc3Fx8fH4KDgwHo0qULBQUFnD17lq5duwK2BDUrK4slS5YAEBERwcqVK+nRowcmk4ny8vIq97xw4QIAJpMJ+GmZvLi4mEceeYR27drh6+trnH+5ZfSLpaamkpGRgcVi4bbbbrvk7KmIiIjItcSh3tms1LFjR+bPn4+npyfdunUDoFu3bixdupSTJ08yZcoUAHJycjh9+jSjR48GbMlnSUkJhw8fJigoiAMHDnDy5Em7ZfGdO3fi5+dXZancx8eHmTNnEhcXR3BwMH5+fpcde9u2bVm2bBnl5eU4OzsTGxtLbGwsBQUFSjRFRERE/o9DvbNZycvLCzc3N/Ly8ujcuTMAgYGBfPPNNxw5coRbb70VsH0YFB8fT3Z2NtnZ2eTl5dGhQwfS09Np2rQpUVFRvPjii5SWlgJw8OBBZs+ebSSnP3f33XfTs2dPXnnllV8cY4cOHWjVqhUzZszg3LlzAJw7d468vDycnBwyrCIiIiJ/OId5Z/PnOnbsyLZt2/D29gbAycmJ5s2bGzOSR48epaCgwO79SoDHHnuMl19+maeffpqXXnqJRYsWMXjwYJydnWnQoAHx8fHG1kfVefbZZ4mMjOTjjz8Gqr6zCfD888/TpUsXFixYwMKFC42tjs6dO0ePHj1+VbIqIiIici0wWa1Wa20P4lpXUnKGiopr+9/g43M9xcWna3sYtU5xUAwqKQ42ioON4mCjONRuDJycTDRu7Hnl19XAWEREREREACWbIiIiIlKDlGyKiIiISI35Qz4QulQd9NmzZzNx4kQOHz6Mu7s7VqsVq9XKU089RWRkJGazmaSkJJo0aWLX3/Tp02ncuLHRJ9iq/5SWlhITE8PYsWMB2LRpE4sXL+bChQtYrVaio6N54oknjH7WrVvHm2++SXl5OU5OToSHh/Pkk0/i4uJCQUEBcXFxrFmzhttvv924JiAggL179wKoNrqIiIjIL/jDvkavrg763LlzAZg5cyYhISEA7N27l8GDB9O9e3cAQkNDSUpKqtJfUVFRlT5/+OEH+vbtS79+/fD09GTOnDmYzWa8vb0pLS1l+PDh+Pv7ExYWhtls5p///CcLFiygefPmnDlzhkmTJjF16lS7L9wnTZrEqlWrcHZ2rjIG1UYXERERubxaW0YPCQnhq6++qtIeEBCAu7s733777RX3WVxcjNVqxcPDg+PHj2OxWIw9MD08PEhKSqJVq1YApKSkMHnyZJo3bw6Ap6cniYmJrF+/nkOHDgG20pNeXl688cYbVe6l2ugiIiIiv6xW9tm8uA76gQMH7I7l5eUB4O/vz759+8jOzjZKWgI0aNCA9PR04Kdyl+fPn+f48eO0bduWlJQUbr75Zm6++WbCwsLo1asXbdq0ISQkhKioKFq0aMGxY8c4dOgQQUFBdvf28vKiVatW7Nq1y9jPc+bMmQwcOJCwsDC75XTVRhcRERH5ZX9YsnmpOuhjxoxh8uTJuLu7U15ejpeXF6+//joeHh7ApZfR4ael+YqKCpKSkti/f79RNx1g2rRpPP300+Tn55Ofn88DDzzAq6++atRbr652usViMeqmAzRt2pTx48cby+mXotroIiIiIlXV2jubF7v4nc3fwsnJiYSEBGJiYnjrrbcYMWIEubm5nD17lsjISAYNGsSgQYNYtWoVq1evpk+fPjRv3pydO3ca74YCHDt2jMLCQu68806KioqM9gcffJDNmzfbLaerNrqIiIjIL6s3Wx+5uLiQkJDAwoULKS4uxs3NjXnz5hlJo9VqZffu3bRp0waAcePGMWvWLAoLCwEoLS1l8uTJREZGcsstt1Tpf+bMmSxdutT4rdroIiIiIr/MYWujV/r5O5tgq39euRR+sXvvvZf27dvzt7/9jZkzZzJ69GhGjRqFxWIBoHv37jzzzDMA9OvXD2dnZ+Lj4ykrK6O8vJx+/foxatSoasfRtGlTnn32WaZMmQKAyWRSbXQRERGRX6Da6A5AtdFV77aS4qAYVFIcbBQHG8XBRnFQbXQRERERETtKNkVERESkxijZFBEREZEao2RTRERERGqMQ32NXlRURHh4OC1btsRkMmGxWPD19eWee+7hk08+4a233rI7/4UXXqBNmzZ4enqSlJREkyZNANtm7WVlZSQkJNCrVy/j/OXLlzNnzhxycnLw8fGx6+v48ePce++9jB8/nscff9xonzRpEh07dmTgwIFGW3JyMgDt2rXj1VdfBeDgwYPceOONuLu706xZMxYsWPD7BkdERESkDnKoZBOqbv6elJTErl27+PTTTykpKaFx48YA/Pjjj+Tk5JCQkEBOTk6VSkNbt25l6tSpdsmm2WwmLCyMjIyMKlscZWVlERoaSlpaGo899phdFaFL6d69u7Ep/PDhwxk9evRVbU4vIiIiUt84/DJ6SEgIBw8epFevXmzYsMFo37p1K506dcLb27va6w4dOmTUNwfYs2cPJ0+eZMSIEaxatYqKigq7881mM8OGDaNBgwZs27atZh5GRERE5Brj0MmmxWJh8+bNtGvXjkGDBrF+/Xrj2Nq1axk8eLDxu3Lz97CwMLp27cquXbtYuHChcTwjI4Pw8HACAwNxcXEhLy/POLZnzx6OHj1KcHAwERERpKWl/TEPKCIiIlLPOVyyeeTIEaKjo4mOjmbAgAFYrVaee+457rnnHo4fP05hYSHFxcUcOHCALl26GNeFhoaSmZlJZmYmLVq04NZbb8Xf3x+wJa1ZWVn0798fgIiICFauXGlcu3r1asLDw3F2diYyMpKtW7dy9OhRgGqX061W669aZhcRERG51jn8O5sXi4mJYf369bi5uREdHV1tDXJPT0/mzJlDVFQUnTt3pn379uTk5HD69GlGjx4N2JLPkpISDh8+TKNGjVi/fj0uLi5kZ2cb/ZjNZkaOHImXlxenTp2yu0dJSQmtWrX6HZ9aREREpH5yuJnNy7n//vvZsmULmzZtsvs6/Of8/Pz485//TGJiIlarFbPZTHx8PNnZ2WRnZ5OXl0eHDh1IT08nJycHb29v8vPzjePTp08nLS0Nq9VK586d2bBhA2fPngWguLiY3NxcOnXq9Ec9toiIiEid5XAzm5fTpEkTvL29qaiooFmzZpc998knn2T16tWsXbuWgoICZs2aZXf8scce4+WXX+aOO+5g2LBhdsf69+/Pa6+9Rl5eHj169GDPnj088MADmEwmnJycmDhxIrfffvvv/nwiIiIi9Y1fFgZ+AAAUlElEQVTJarVaa3sQ17qSkjNUVFzb/wYfn+spLj5d28OodYqDYlBJcbBRHGwUBxvFoXZj4ORkonFjzyu/rgbGIiIiIiICKNkUERERkRqkZFNEREREaozDfSB0qfros2fPZtiwYbi5ueHq6sqFCxfw9/cnMTERLy8vzGazXX30StOnT+euu+5i06ZNLF68mAsXLmC1WomOjuaJJ56wO3fgwIH4+vryj3/8w2gzm81s377drhRmQUEBKSkpzJ8/n0cffRTA2JfzxhtvBGDp0qWXrG4kIiIicq1wuGQTqq+PPnfuXAAWL15sfImemJjIokWLSEhIAKhSH73SDz/8wJw5czCbzXh7e1NaWsrw4cPx9/cnLCwMsFURatCgAXv27OH777+vkrRWx9vb2xhncnIyAGPGjLmKJxcRERGpX+rEMnpISAhfffWVXVtFRQWlpaXGTOLlHD9+HIvFwrlz5wDw8PAgKSnJbmN2s9lM165dCQsLY9WqVb/vA4iIiIhcoxxyZvNiF9dHf//99xk5ciSurq6UlJTg7OxsVAWCn+qjV2rQoAHp6em0bt2asLAwevXqRZs2bQgJCSEqKooWLVoY98jKymL58uWcOHGC8ePH88wzz+Di4vDhEREREXFoDplNVdZHBygrKyMoKIjnnnuO999/324ZfcmSJcTFxbFhwwbg0svoANOmTePpp58mPz+f/Px8HnjgAV599VX69OlDbm4uPj4+tGrVCqvVipOTEzk5OfTu3bvakpiqjS4iIiLy6zhksnm5+ugXGzJkCHPmzOH48eOXPS83N5ezZ88SGRnJoEGDGDRoEKtWrWL16tX06dOHjIwMvv/+e0JDQwE4c+YMK1eupHfv3vzpT3+qUhv92LFjeHl5/fYHFBEREblG1Il3Ni/lww8/pEmTJjRq1Oiy57m5uTFv3jyKiooA28zk7t27adOmDUePHuWDDz5g/fr1Rm30tWvXsm3bNgoLC2nXrh2ff/45Bw8eBGwzrWvWrKFz5841/nwiIiIidZ1DzmxeTuU7m05OTjg7O/Paa68Zx37+zibYaqDHxMQwevRoRo0ahcViAaB79+4888wzLF++nB49enDTTTcZ1/j5+REaGkpaWhoTJkxgxowZjBs3jvLycsrKyujTpw8PPvjgH/PAIiIiInWYaqM7ANVGV73bSoqDYlBJcbBRHGwUBxvFQbXRRURERETsKNkUERERkRqjZFNEREREaoySTRERERGpMXUy2QwICPjFc4YPH/4HjKSqwsJC/vKXv9TKvUVEREQcTZ1MNn+N7du318p9v/vuOwoLC2vl3iIiIiKOps7ts3mxgoICFi1ahJubG/v37ycgIIBXX32VuXPnArYKQ+np6bz33nvMnz+fCxcu0KxZM2bMmIG3tzehoaEEBQWxe/du3n77bbKyslixYgXOzs7cd999TJw4kaNHjzJ16lQOHz6MyWTiueeeo0uXLiQnJ/Pdd9+xf/9+jh8/zoMPPsgTTzzBzJkzKSoqYtq0abz00ku1HCERERGR2lXnZzZ37tzJ1KlT2bhxI9999x35+flMnjwZgPT0dI4dO8a8efN46623WLt2Ld26dePVV181rr/33nvZvHkzhw4d4u2332b16tWsW7eOXbt28d///pfExEQGDfr/7d17UFSF/8bx98IiN3W8DEp2ddBKwUjyEt4vmQ6KhlY6jtpYmkhmVpKa18JLSpOSpo5300qoAKPUvERMM1ZaaqbCmJK3IkRDAUG57P7+OAPfSO3b91d7jrDPa8aZ5ezCPj4ez/nsOcvZISQnJ7NixQpmzZpFUVERAEeOHGH9+vUkJyeTmJjI0aNHmTFjBiEhIRo0RURERKjhRzYBWrZsSWBgIABBQUFcvny52v0//PADOTk5jBo1CgCHw1Htc81DQ0MB2L9/Pz179qRevXoAbNiwAYC9e/eSnZ3N22+/DUB5eXnVafIBAwbg7+8PQK9evfjmm28ICQlx0d9UREREpOap8cOmt7d31W2bzcafPxCpoqKCsLAwVq5cCcC1a9e4cuXKdd9vt9ux2WxVy3Nzc/H19cXhcLBx40YaNGgAwPnz52ncuDG7d+/G09Oz6vEOh6Pa1yIiIiJSC06j34ynpyfl5eWEhoZy6NAhfv75ZwCWL19e9Z7OP2rXrh0ZGRlcuXKF8vJyXn75ZY4cOcLDDz/M+++/D8CJEyeIjIykpKQEgN27d1NaWsrly5dJT0+nS5cuVc8rIiIiIrXgyObN9O7dm0GDBpGcnMz8+fOZNGkSDoeDpk2bEh8ff93jg4ODGTFiBMOGDcPhcNCnTx86depEUFAQs2bNIjIyEoBFixZRt67xuaDe3t4MHz6coqIixo0bR4sWLcjPz6ewsJDY2NgbPo+IiIiIO7E5/3zeWf6WpUuXAvD888//45918WIRDod7/zMEBNQjL6/Q6hiWUw/qoJJ6MKgHg3owqAdrO/DwsNG4cd3/+ftq7ZHNmsTDw/bfH+QG1INBPaiDSurBoB4M6sGgHqzr4P/7vDqyKSIiIiIuU2t/QUhERERErKdhU0RERERcRsOmiIiIiLiMhk0RERERcRkNmyIiIiLiMho2RURERMRlNGyKiIiIiMto2BQRERERl9GwKSIiIiIuo2FTRERERFxGw6aIiIiIuIyGTROVlJTw5ptv8sgjj9CmTRtCQ0Pp06cPcXFxFBYWWh1PTJSTk0NMTAyDBw9m+fLlVFRUVN03btw4C5OZq7CwkMWLF7Nu3Tpyc3MZNmwYYWFhjB07ltzcXKvjWaq4uNjqCKZasmQJAAUFBUyePJmOHTvSuXNnZs+eTVFRkcXpzPPLL7/w0ksvcebMGXJychg5ciRt27ZlxIgRnDlzxup4pgkLC2Pbtm1Wx7gl5efnWx3hf2ZzOp1Oq0O4i+eee47g4GAGDx5MQEAAAHl5eaSmpvL999+zevVqixO63rJly/7y/gkTJpiUxFqjR49mwIAB3HfffSxbtoyKigpWrFiB3W7nscceIzU11eqIpoiJiSEoKIjc3Fz27dvH+PHjGThwINu2bWPXrl2sXLnS6oiWiYqKIiUlxeoYpqn8+8bGxnLbbbcxZswYHA4HmzdvJjMzk3feecfqiKYYPnw4gwYNIioqihdeeIFevXoRGRnJF198waZNm/jggw+sjmiK3r17c/vtt+Pn58fkyZNp0aKF1ZEskZOTw1tvvYWvry9jx44lJiaGCxcuULduXZYuXcr9999vdcS/RUc2TfTzzz8TExNDYGAgnp6eeHp6EhgYSHR0NDk5OVbHM0V5eTlr167F4XBYHcVSly5dYsiQIYSEhLBixQrq1atHbGys1bFMd+7cOV5++WXmzZtHWVkZQ4cOxdfXlyFDhrjVkc02bdrQqlUrWrVqxf3330+rVq3IzMysuu1OsrKyeOmll6hfvz4NGjRgwoQJnDp1yupYpikpKWHo0KHUqVOHvLw8nnjiCXx8fIiIiHCrI7z169dn48aN9O7dm+joaMaMGUNKSgpnz56ltLTU6nimmTJlCqGhodxxxx0MHTqU559/nq+//po33niD119/3ep4f5uGTRM1atSI7du3Vxu0nE4nn332GQ0bNrQwmXkmTZpEREQEvr6+TJgw4bo/7sJut/PTTz8BYLPZWLhwIb///juzZs2qdkq9trPb7WRnZ+Pl5cX69eurlh87dgybzWZhMnMlJibStm1bEhISyMrKqho0K2+7g7y8PLZt20ZgYCCHDh2qWn748GG8vb0tTGauJk2akJSUBEC7du3IyMgA4KuvvqJBgwZWRjOdzWbjiSeeYOfOnYwcOZIDBw4QExNDx44drY5mmoKCAkaMGMGzzz6L3W7n0UcfBeChhx7iypUrFqf7+zRsmig+Pp6tW7fSvn17evToQY8ePWjXrh1paWksXLjQ6nimmTZtWtXbCNzV1KlTGTduHGlpaQB4eXmxYsUKLly4wIkTJyxOZ55XX32V8ePHU1FRwb333gvA7t27iY6OZsaMGRanM0/r1q1Zt24de/fuZdq0aVy5csWthm2AyZMnc+DAAQoKCli7di0AGzZsICYmhunTp1uczjxz585l+/btdOrUiX379hEdHU379u1ZtGgRcXFxVsczzR/f4efh4UH37t2Ji4sjLS2NgwcPWpjMXHXr1mXLli2sWbOGiooK0tPTAfj+++9r1IswvWfTAuXl5eTn5+NwOGjcuDF2u93qSGKRsrIyvLy8qi3LzMx0u1Onf1RaWordbsfDwz1fC+/Zs4eVK1dy+fJldu7caXUcSxUVFeHn5+eW60J+fj5nz56lvLycgIAA7rzzTqsjmer333+nUaNGVsew3C+//EJCQgIOh4MXXniBKVOmkJ2djY+PD0uXLqVNmzZWR/xbNGyayOFwkJSUxI4dO/jtt9/w8PCgSZMmdO/enREjRlw3dNRGN+ugW7dujBw50i06AK0LlSp72L59O7m5uW7bw59duHCBL7/8kscff9zqKKbR/wmDejDcbNvgbvuKG6mJg7iGTRPNnDkTh8NBVFQUTZo0wel0kpeXxyeffEJxcTFvvvmm1RFdTh0Y1INBPRi0Y9W6UEk9GNSDoba8+NCwaaJ+/fqxY8eOG94XERHhFtcUUwcG9WBQDwbtWLUuVFIPBvVgqC3bBr1Z0ET+/v4cPnyYBx54oNrygwcP4u/vb1Eqc6kDg3owqAfD/v37r9ux3n333bRr146IiAiLUplL64JBPRjUg6G2bBs0bJpo7ty5vPLKK1y7do2AgABsNhvnz5/H29ub+Ph4q+OZQh0Y1INBPRi0Y9W6UEk9GNSDobZsG3Qa3QK//vor58+fx+FwEBgYSLNmzayOZDp1YFAPBnfvITMz8y93rDXlU0L+De6+LlRSDwZ376G2bBs0bN4ijh49SnBwsNUxLKUODOrB4I49uPuO9WbccV24EfVgcMceavq2wf0uXnaLSkhIsDqC5dSBQT0Y3LGHZs2a8eCDDxIWFla1Mzl69KjFqaznjuvCjagHgzv2UNO3DTqyabKTJ0/y+eefV7uEQdeuXWvMhVn/DerAoB4M6uGvPfvss6xatcrqGKbQumBQDwb18Ndq0rbBc86cOXOsDuEu3nvvPd566y1atGhB8+bNadKkCcXFxaxZs4bi4mLatm1rdUSXUwcG9WBQD/9x8uRJtmzZQlpaGhkZGRw7dgwfHx/GjBljdTRTaF0wqAeDeviP2rBt0JFNE/Xt25fU1FR8fX2rLS8pKSEqKuqm1xSrTdSBQT0Y1IPhvffeIykpib59+xIQEABAXl4eO3fuZODAgTz99NMWJ3Q9rQsG9WBQD4basm3QpY9MZLfbKS8vv2751atXa8ynAPxT6sCgHgzqwfDuu+/ecMc6evRooqKiaswO5Z/QumBQDwb1YKgt2wYNmyaKjo7mscceIzw8vNolDL755htefPFFq+OZQh0Y1INBPRi0Y9W6UEk9GNSDobZsG3Qa3WS5ubl8/fXX1S5hEB4eTtOmTa2OZhp1YFAPBvUAaWlpLFmy5KY71v79+1sd0RRaFwzqwaAeas+2QcOmiMgtQDtWEbmR2rBt0LApIiIiIi6ji7qLiIiIiMto2BQRERERl9GwKSLiYj/++CMTJ0409TkLCwsZNWqUqc8pInIjes+miEgtdO7cOSIjIzl48KDVUUTEzek6myIiLvbtt98SFxdHSEgIPj4+HD9+nIsXL9KrVy8aNGhAeno6eXl5zJ07l/DwcKZOnYq3tzdZWVlcvHiRzp07M2PGDLy8vPjuu+9YtGgRJSUleHl5MWnSJLp160ZycjIfffQRJSUl1K1bFzCuxTdo0CCSk5NJSUkhMTGRsrIyLl++zNixYxk+fDjJycns2rULDw8PTp8+jY+PDwsXLiQoKIi8vDxmz55NdnY2Hh4eDBs2jFGjRlFYWMi8efM4fvw4ZWVlhIeH88orr2C3a5ciItfTaXQRERMdO3aMjRs3snnzZtatW4efnx9btmxh1KhRrF69uupxhw8fZt26dWzbto2TJ0+SmJhIfn4+EydOZPr06aSlpbFw4UJiY2M5e/YsACdOnGDTpk1s2rSJBQsW4OPjw9atW7l69Soffvghq1atIjU1lcWLFxMfH1/1XPv372fmzJl8+umnhIaGsmrVKgBee+017rnnHnbs2EFiYiJJSUmcPn2a+fPnExwcTHJyMqmpqeTn57N+/XpzixSRGkMvQ0VETNSzZ0+8vLwICAjAz8+Prl27AnDXXXdx6dKlqsdFRUXh7+8PwKBBg9izZw933nknd911F6GhoQC0bNmSsLAw9u3bh81m47777qs6qvlH/v7+rFy5koyMDE6dOkVWVhbFxcVV9wcHBxMYGAhA69at2bVrFwB79+4lNjYWgHr16vHpp58C8OWXX/Ljjz/y0UcfAcYRVBGRm9GwKSJiojp16lT7+mannj09PatuO51OPDw8qKiowGazVXuc0+mkvLwcLy8v/Pz8bvizfvvtN4YOHcqTTz7JQw89RL9+/UhPT6+638fHp+q2zWaj8q38dru92vOdPXuWhg0b4nA4SEhIICgoCICCgoLrcomIVNJpdBGRW9D27dspLS3l2rVrpKSk0LNnTx588EGys7M5fPgwAD/99BP79++nQ4cO132/3W6noqICp9PJkSNHaNSoETExMXTp0qVq0KyoqPjLDOHh4Xz88ceA8dvtTz31FKdOnaJLly5s2LABp9NJaWkp48ePZ/Pmzf9yAyJSW+jIpojILcjHx4fhw4dTUFBA3759GTJkCB4eHiQkJBAXF8fVq1ex2WwsWLCA5s2bX/db5wEBATzwwAP079+f9evX07RpU/r164fNZqNDhw40atSI06dP/2WGWbNmMWfOHCIjI3E6nYwbN46QkBCmT5/OvHnziIyMpKysjE6dOjFmzBhX1iEiNZgufSQicouZOnUqLVu25JlnnrE6iojIP6bT6CIiIiLiMjqyKSIiIiIuoyObIiIiIuIyGjZFRERExGU0bIqIiIiIy2jYFBERERGX0bApIiIiIi7zf1aOnYZt0s7PAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "max_features = 'auto'\n", "tree_count = 1000\n", "learning_rate = 0.01\n", "\n", "model = GradientBoostingClassifier(max_features=max_features, \n", " random_state=1, \n", " n_estimators=tree_count,\n", " learning_rate=learning_rate)\n", "\n", "model = model.fit(X[train], y[train])\n", "#y_hat_test = regr.predict(X[~train])\n", "\n", "accuracy = model.score(X[~train], y[~train])\n", "print('accuracy: {}%'.format(np.around(accuracy*100, 2)))\n", "\n", "# Plot feature by importance in this model\n", "\n", "plot_df = pd.DataFrame({'feature': X.design_info.column_names, 'importance': model.feature_importances_})\n", "\n", "plt.figure(figsize=(10,20))\n", "sns.barplot(x='importance', y='feature', data=plot_df.sort_values('importance', ascending=False),\n", " color='b')\n", "plt.xticks(rotation=90);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we use boosting to predict if someone purchases caravan insurance, a classification problem. The boosting model yields a test set prediction accuracy of 93.2%. \n", "\n", "The model suggests that the ten most important predictors are:\n", "\n", "- PPLEIZER: Contribution boat policies\n", "- ALEVAN: Number of life insurances\n", "- PBRAND: Contribution fire policies\n", "- MOSTYPE: Customer Subtype; see L0\n", "- MBERARBG: Skilled labourers\n", "- APERSAUT: Number of car policies\n", "- AFIETS: Number of bicycle policies\n", "- MRELGE: Married\n", "- MGEMLEEF: Avg age\n", "- MFWEKIND: Household with children\n", "\n", "Broadly these predictors indicate whether customer has other insurance policies, and their level of family commitment e.g. married, with children.\n", "\n", "We can't tell the direction in which these predictors are related with reposnse **Revision note:** is this possible in the boosting setting?\n", "\n", "From tnis might hypothesise that customers who have already purchased insurance of other kinds are more inclined to purchase caravan insurance. Also, those with more family commitment and responsibility might also be more inclined to purchase insurance. It seems plausible that these two groups are more risk averse." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### (c) Use the boosting model to predict the response on the test data. Predict that a person will make a purchase if the estimated probability of purchase is greater than 20 %. Form a confusion matrix. What fraction of the people predicted to make a purchase do in fact make one? How does this compare with the results obtained from applying KNN or logistic regression to this data set?" ] }, { "cell_type": "code", "execution_count": 575, "metadata": {}, "outputs": [ { "data": { "text/html": [ "

BOOSTING: Confusion matrix

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4405 120]\n", " [ 266 31]]\n", "\n", "Positive Predictive Value: 0.2053\n" ] } ], "source": [ "max_features = 'auto'\n", "tree_count = 1000\n", "learning_rate = 0.01\n", "\n", "model = GradientBoostingClassifier(max_features=max_features, \n", " random_state=1, \n", " n_estimators=tree_count,\n", " learning_rate=learning_rate)\n", "\n", "model = model.fit(X[train], y[train])\n", "#y_hat_test = regr.predict(X[~train])\n", "\n", "\n", "# Boosting stats\n", "threshold = 0.2\n", "y_hat_proba = model.predict_proba(X[~train])\n", "y_hat = (y_hat_proba[:, 1] > threshold).astype(np.float64)\n", "confusion_mat = confusion_matrix(y[~train], y_hat)\n", "\n", "# What fraction of the people predicted to make a purchase do in fact make one?\n", "pos_pred_val = np.around(confusion_mat[:, 1][1] / np.sum(confusion_mat[:, 1]), 5)\n", "\n", "display(HTML('

BOOSTING: Confusion matrix

'))\n", "print(confusion_mat)\n", "\n", "print('\\nPositive Predictive Value: {}'.format(pos_pred_val))" ] }, { "cell_type": "code", "execution_count": 576, "metadata": {}, "outputs": [ { "data": { "text/html": [ "

K=1

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4280 245]\n", " [ 274 23]]\n", "\n", "Positive Predictive Value: 0.08582\n" ] }, { "data": { "text/html": [ "

K=2

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4507 18]\n", " [ 293 4]]\n", "\n", "Positive Predictive Value: 0.18182\n" ] }, { "data": { "text/html": [ "

K=3

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4476 49]\n", " [ 288 9]]\n", "\n", "Positive Predictive Value: 0.15517\n" ] }, { "data": { "text/html": [ "

K=4

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4524 1]\n", " [ 297 0]]\n", "\n", "Positive Predictive Value: 0.0\n" ] }, { "data": { "text/html": [ "

K=5

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4522 3]\n", " [ 297 0]]\n", "\n", "Positive Predictive Value: 0.0\n" ] }, { "data": { "text/html": [ "

K=6

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4525 0]\n", " [ 297 0]]\n", "\n", "Positive Predictive Value: nan\n" ] }, { "data": { "text/html": [ "

K=7

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4525 0]\n", " [ 297 0]]\n", "\n", "Positive Predictive Value: nan\n" ] }, { "data": { "text/html": [ "

K=8

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4525 0]\n", " [ 297 0]]\n", "\n", "Positive Predictive Value: nan\n" ] }, { "data": { "text/html": [ "

K=9

" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "[[4525 0]\n", " [ 297 0]]\n", "\n", "Positive Predictive Value: nan\n" ] } ], "source": [ "# KNN\n", "\n", "# PREDICT\n", "for K in range(1, 10):\n", " # model\n", " model = KNeighborsClassifier(n_neighbors=K).fit(X[train], y[train])\n", " # Predict\n", " y_pred = model.predict(X[~train])\n", " \n", " # Confusion table\n", " display(HTML('

K={}

'.format(K)))\n", " confusion_mtx = confusion_matrix(y[~train], y_pred)\n", " print(confusion_mtx)\n", " \n", " ## Classifier stats\n", " pos_pred_val = np.around(confusion_mtx[:, 1][1] / np.sum(confusion_mtx[:, 1]), 5)\n", " print('\\nPositive Predictive Value: {}'.format(pos_pred_val))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Comment:** KNN performs best when k=2 achieving a Positive Predictive Value of 0.182, which is slightly worse but not disimilar to the boosting result (0.205). The boosting model also excels in achieving roughly 8 times more True Positive predictions, so we would certainly choose the boosting model in this case.\n", "\n", "It is worth noting that the dataset in this setting is highly dimensional with over 80 predictors, so the effectiveness of KNN is likely hindered by the curse of dimensionality." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 12. Apply boosting, bagging, and random forests to a data set of your choice. Be sure to fit the models on a training set and to evaluate their performance on a test set. How accurate are the results compared to simple methods like linear or logistic regression? Which of these approaches yields the best performance?\n", "\n", "# TODO: I'd like to do this using the kaggle house prices dataset" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }