{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "slideshow": { "slide_type": "skip" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "%load_ext autoreload\n", "%autoreload 2\n", "%pylab inline\n", "%config InlineBackend.figure_format = 'svg'\n", "\n", "import seaborn as sns\n", "# nice / large graphs\n", "sns.set_context(\"notebook\")\n", "plt.rcParams[\"figure.figsize\"] = (8, 5)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "
\n", "

Machine Learning Weekend

\n", "
\n", "\n", "\n", "\n", "
\n", "

Mojmír Vinkler

\n", "
\n", "mojmir.vinkler@gmail.com\n", "
\n", "https://gitlab.com/kiwicom/ml-weekend/merge_requests/1\n", "
\n", "feel free to comment!\n", "
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# What is `scikit-learn`?\n", "\n", "* Free software machine learning library for the Python\n", "\n", "\n", "\n", "# Why `scikit-learn`?\n", "\n", "* Simple and efficient tools for data mining and data analysis\n", "* Accessible to everybody, and reusable in various contexts\n", "* Built on NumPy, SciPy, and matplotlib\n", "* Open source, commercially usable - BSD license" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# Installation\n", "```\n", "pip install scikit-learn\n", "```\n", "\n", "### (all requirements for this tutorial)\n", "```\n", "pip install scikit-learn pandas seaborn jupyter\n", "```" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 1. Loading Data" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Loading sample scikit-learn datasets" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 5.1, 3.5, 1.4, 0.2],\n", " [ 4.9, 3. , 1.4, 0.2],\n", " [ 4.7, 3.2, 1.3, 0.2],\n", " [ 4.6, 3.1, 1.5, 0.2],\n", " [ 5. , 3.6, 1.4, 0.2]])" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn import datasets\n", "import pandas as pd\n", "iris = datasets.load_iris()\n", "iris['data'][:5, :]" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0, 0, 0, 0, 0])" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "iris['target'][:5]" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Importing `.csv` file with pandas" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "df = pd.DataFrame(iris['data'], columns=iris.feature_names)\n", "df['target'] = iris['target']\n", "df.target = df.target.map(dict(zip(range(3), iris.target_names)))\n", "df.to_csv('iris.csv', index=False)" ] }, { "cell_type": "code", "execution_count": 34, "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", "
sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)target
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
\n", "
" ], "text/plain": [ " sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) \\\n", "0 5.1 3.5 1.4 0.2 \n", "1 4.9 3.0 1.4 0.2 \n", "2 4.7 3.2 1.3 0.2 \n", "3 4.6 3.1 1.5 0.2 \n", "4 5.0 3.6 1.4 0.2 \n", "\n", " target \n", "0 setosa \n", "1 setosa \n", "2 setosa \n", "3 setosa \n", "4 setosa " ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "df = pd.read_csv('iris.csv')\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 37, "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", "
sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)
05.13.51.40.2
14.93.01.40.2
24.73.21.30.2
34.63.11.50.2
45.03.61.40.2
\n", "
" ], "text/plain": [ " sepal length (cm) sepal width (cm) petal length (cm) petal width (cm)\n", "0 5.1 3.5 1.4 0.2\n", "1 4.9 3.0 1.4 0.2\n", "2 4.7 3.2 1.3 0.2\n", "3 4.6 3.1 1.5 0.2\n", "4 5.0 3.6 1.4 0.2" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y = df['target'].map({'setosa': 0, 'versicolor': 1, 'virginica': 2})\n", "X = df.drop('target', 1)\n", "X.head()" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2 50\n", "1 50\n", "0 50\n", "Name: target, dtype: int64" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y.value_counts()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 2. Data Preprocessing" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "
\n", "\n", "\n", "
" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "# filtering missing values\n", "X = X.dropna()\n", "\n", "# cleaning data\n", "X = X[X['sepal length (cm)'] > 0]\n", "\n", "# standardization\n", "X = (X - X.mean()) / X.std()" ] }, { "cell_type": "code", "execution_count": 53, "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", "
setosaversicolorvirginica
0100
1100
2100
3100
4100
\n", "
" ], "text/plain": [ " setosa versicolor virginica\n", "0 1 0 0\n", "1 1 0 0\n", "2 1 0 0\n", "3 1 0 0\n", "4 1 0 0" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# dummy variables\n", "pd.get_dummies(df['target']).head()" ] }, { "cell_type": "code", "execution_count": 54, "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", "
sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)sepal length (cm)^2
500.8317950.720721-0.783226-1.0899920.691883
51-0.3564840.720721-1.074079-0.8250630.127080
520.6337480.407364-0.492373-0.8250630.401637
54-0.158437-0.532707-0.928652-0.8250630.025102
56-0.5545301.034078-0.783226-0.5601350.307503
\n", "
" ], "text/plain": [ " sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) \\\n", "50 0.831795 0.720721 -0.783226 -1.089992 \n", "51 -0.356484 0.720721 -1.074079 -0.825063 \n", "52 0.633748 0.407364 -0.492373 -0.825063 \n", "54 -0.158437 -0.532707 -0.928652 -0.825063 \n", "56 -0.554530 1.034078 -0.783226 -0.560135 \n", "\n", " sepal length (cm)^2 \n", "50 0.691883 \n", "51 0.127080 \n", "52 0.401637 \n", "54 0.025102 \n", "56 0.307503 " ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# new features\n", "X['sepal length (cm)^2'] = X['sepal length (cm)']**2\n", "X.head()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 3. Transforming your Data\n", "\n", "* Scikit-learn estimators **support only numerical features**. So any text or categorical features must be transformed before training.\n", "* Scikit-learn does not allow **missing (NaN) values**" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Turning the text content into numerical feature vectors" ] }, { "cell_type": "code", "execution_count": 91, "metadata": { "slideshow": { "slide_type": "-" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "From: tedr@athena.cs.uga.edu (Ted Kalivoda)\n", "Subject: Re: Christianity and repeated lives\n", "Organization: University of Georgia, Athens\n", "Lines: 20\n", "\n", "In article danc@procom.com (Daniel Cossack) writes:\n", ">JEK@cu.nih.gov writes:\n", ">>The Apostle Paul (Romans 9:11) points out that God chose Jacob\n", ">>rather than Esau... If we admit the possibility that they had lived previous\n", ">>lives, and that (in accordance with the Asiatic idea of \"karma\")\n", ">\n", ">And following Romans to 9:13, \"As it is written, Jacob have I loved,\n", ">but Esau have I hated.\" How could God have loved \n" ] } ], "source": [ "news = datasets.fetch_20newsgroups(subset='train', categories=['alt.atheism', 'soc.religion.christian'])\n", "print(news.data[2][:600])" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "text/plain": [ "<1079x19666 sparse matrix of type ''\n", "\twith 195086 stored elements in Compressed Sparse Row format>" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.feature_extraction.text import CountVectorizer\n", "\n", "# bag of words representation\n", "count_vect = CountVectorizer()\n", "X_counts = count_vect.fit_transform(news.data)\n", "X_counts" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.018001222830914831" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# sparseness\n", "X_counts.sum() / (X_counts.shape[0] * X_counts.shape[1])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Standardization\n", "\n", "= normalize your data to have zero mean and unit stadard deviation" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([ 5.84333333, 3.054 , 3.75866667, 1.19866667]),\n", " array([ 0.82530129, 0.43214658, 1.75852918, 0.76061262]))" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn import preprocessing\n", "scaler = preprocessing.StandardScaler()\n", "scaler.fit(iris['data'])\n", "scaler.mean_, scaler.scale_" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "-1.4684549872375404e-15" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_iris_transformed = scaler.transform(iris['data'])\n", "X_iris_transformed[:, 0].mean()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Imputation of missing values" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Imputer(axis=0, copy=True, missing_values='NaN', strategy='mean', verbose=0)" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import numpy as np\n", "from sklearn.preprocessing import Imputer\n", "imp = Imputer(missing_values='NaN', strategy='mean', axis=0)\n", "imp.fit([[1, 2], [np.nan, 3], [7, 6]])" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 4. , 3.66666667]])" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "imp.transform([[np.nan, np.nan]])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Pipelines\n", "\n", "Framework for chaining feauture extractors, vectorizers and estimators." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Pipeline(steps=[('vect', CountVectorizer(analyzer='word', binary=False, decode_error='strict',\n", " dtype=, encoding='utf-8', input='content',\n", " lowercase=True, max_df=1.0, max_features=None, min_df=1,\n", " ngram_range=(1, 1), preprocessor=None, stop_words=None,\n", " strip...inear_tf=False, use_idf=True)), ('clf', MultinomialNB(alpha=1.0, class_prior=None, fit_prior=True))])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.pipeline import Pipeline\n", "from sklearn.feature_extraction.text import TfidfTransformer\n", "from sklearn.naive_bayes import MultinomialNB\n", "\n", "text_pipe = Pipeline([('vect', CountVectorizer()),\n", " ('tfidf', TfidfTransformer()),\n", " ('clf', MultinomialNB()),])\n", "text_pipe" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 4. Choosing Proper Model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "
\n", "\n", "Source: http://scikit-learn.org/stable/tutorial/machine_learning_map/index.html" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "text/plain": [ "RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n", " max_depth=None, max_features='auto', max_leaf_nodes=None,\n", " min_impurity_split=1e-07, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " n_estimators=10, n_jobs=1, oob_score=False, random_state=None,\n", " verbose=0, warm_start=False)" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "clf = RandomForestClassifier()\n", "clf" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n", " max_depth=5, max_features='auto', max_leaf_nodes=None,\n", " min_impurity_split=1e-07, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " n_estimators=10, n_jobs=-1, oob_score=False, random_state=3,\n", " verbose=0, warm_start=False)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = RandomForestClassifier(random_state=3, max_depth=5, n_jobs=-1)\n", "clf" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 5. Model Training" ] }, { "cell_type": "code", "execution_count": 75, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Train size: 120\n", "Test size: 30\n" ] } ], "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "X = iris['data']\n", "y = iris['target']\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=3)\n", "print('Train size: {}'.format(len(X_train)))\n", "print('Test size: {}'.format(len(X_test)))" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 19.3 ms, sys: 4.32 ms, total: 23.6 ms\n", "Wall time: 119 ms\n" ] }, { "data": { "text/plain": [ "RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n", " max_depth=5, max_features='auto', max_leaf_nodes=None,\n", " min_impurity_split=1e-07, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " n_estimators=10, n_jobs=-1, oob_score=False, random_state=3,\n", " verbose=0, warm_start=False)" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "clf.fit(X_train, y_train)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAu4AAAJQCAYAAADR3eHPAAAAAXNSR0IArs4c6QAAQABJREFUeAHs\nnQeYFEXzxtucE2ZMmDPmnFFBVBQTGDAiZowYEYyoKGbFhBHFAOacc0JFQcxZTJjzZ8L596/+X883\nNzeb7nbvdvfeep69menp7ul+Z++uurrqrckiL04iBISAEBACQkAICAEhIASEQFUjMHlVj06DEwJC\nQAgIASEgBISAEBACQsAQkOKuL4IQEAJCQAgIASEgBISAEKgBBKS418BL0hCFgBAQAkJACAgBISAE\nhMCUgkAI1DsC7777rhs7dmy9T1PzEwIVQWDmmWd2Xbp0qUjf6lQICAEhIARKQ2AyBaeWBphq1x4C\nXbt2dQ888EDtDVwjFgJVgsAXX3zh5p133ioZjYYhBISAEGi7CMji3nbffZuZ+aRJk1yfPn3c5Zdf\n3mbmrIkKgXIg8MILL7i11lrL8TskEQJCQAgIgdZHQD7urf8ONAIhIASEgBAQAkJACAgBIVAQASnu\nBSFSBSEgBISAEBACQkAICAEh0PoISHFv/XegEQgBISAEhIAQEAJCQAgIgYIISHEvCJEqCAEhIASE\ngBAQAkJACAiB1kdAinvrvwONQAgIASEgBISAEBACQkAIFERAintBiFRBCAgBISAEhIAQEAJCQAi0\nPgKig2z9d6ARCIEYgU8//dTde++97pVXXnHDhg2Ly8t1cs4557hpp53WHXDAATm7/PXXX93jjz/u\nnnnmGTd48OCc9d5++213zz33uJVXXtl16tQpZ71CN15++WW3zDLLuOmnn75Q1Sbfv/32290222zT\n5PaVavjnn3+6J5980r322mtu3XXXdWuuuaabfPL89pSXXnrJvf/++5lDov3CCy8c3+P79Oyzz8bX\n//zzj5tppplc9+7d4zKdCAEhIASEQO0gIMW9dt6VRlrnCKAwo2SdeuqpbrLJJqvIbK+66io344wz\n5lXcSVZ15JFHun///Ten4v7555+7Cy64wF1yySXNWmDcfffdbqqppqqo0g6Qc889t3H5M94pp6yO\nP3tff/21KerHHXec22uvvdyZZ57pTjvtNHfXXXflVN59wjy30047uQ8++CDz+8GCL6m4H3300e6m\nm26K6/K9evPNN+NrnQgBISAEhEBtIZDftFNbc9FohUDVIXDdddcVPSYUapSyNdZYo+g2pVZ88cUX\nzZqer93222/vVl999UYKbnIu8803n+vXr1++bgrew/o/YcIEt9lmmxWs29wKa6+9tttuu+3cPvvs\n09yuytKeRRHjWX755d3ee+/t5phjDnf66ae78ePHOxT5XPLII4+4LbbYwn300UcOa334PPTQQ65D\nhw62+xHafvLJJ+7vv/92HMPnyy+/dEsttVSooqMQEAJCQAjUGAJS3GvshWm4tYMA7ib5lLBcM8Ei\nXCmL+wwzzOCmm266XI+Oy3HXSLpsZM1liimmiOuXeoKCevHFF7v999+/1KZNrs8C4d1333XsKDRH\nPv74Y/f88883pwv31FNPmSsSGX2DgOfuu+/uLrroIvfbb7+F4gZHFnfnnnuuKelTTz21C58777zT\nFgLJytRjznPNNZdbcMEF7cPOg0QICAEhIARqF4Hq2DOuXfw08jpE4LPPPjN3BZRK/I8ffPBBh4W5\nd+/ejZReLKBYsWebbTbXs2dPN/vssxsiKLpbb721KeCXXXaZa9++vevWrZvdQ3kklfy4cePcOuus\nU7Lv9RNPPGHPpLMVVljBbbDBBu6KK65w//nPf6x/UtSvv/76jnncfPPN5oYSFGTcM/BLxzUjKd9/\n/70bNWqUQyldddVVHS4ZYfGQby6hD9rj9sIzd9hhB7fEEkuEW5lHXDh23nnn+BnJSvi8o9j+8ccf\nbvPNN3crrrhifJs5oqRutdVWjrncd999MbYovhMnToxdTRjHzDPPHLfl5NBDD3XHHHOM69y5c4OF\nSYNKOS7wK8eVZfjw4e6ss85y4NxUweceweKelOWWW86UdubF+NOS9Uys97fddpu9v1D/hx9+cFde\neaXD/eqggw4yn3ZccVDgJUJACAgBIVDDCPh/0BIhUNcIbLrpppG3bBY1x+uvvz7ySnjkrdLRfvvt\nF3kFN/LKY+R/xSPvPhL99ddf1o93UYi8i0N04403Rj6wMPLuJZF3d4jeeOMNu//qq69GXimP5pxz\nzsgrvhHXiLeCRhtuuGHkla3IuztE3r0hGjp0qN0LP7zCFs0///zhstFx0qRJkVfwIh9kGvlgQ7v/\n1ltvRd5SH/mgwwb1wxipd/XVV0c+MDHyVtcGdXyQabTaaqtFzz33XORdKyK/0IimmWaayCvfVi/X\nXLySb7iA7SabbBJ515lonnnmsf6//fbbBs9IXrz++uvWzge/Jovt/Pjjj49OPPHE6PfffzdcmZNX\n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\nN/h5550X+8tjZT/uuOMsaRSWej4kPtpmm20sALZULvFPPvnEOOs5BsEff+655w6XDov88ssvb89i\nR6OpUsz8brvtNtsxIZst1nYWEODArsLKK69sCjvvm89CCy1kiZ6aOh61EwJCQAgIgfpDQBb3+nun\nmlGdIgC3eS0n/iHpU8+ePeO3g3KKQp5M2kRGV9xCkq4hvXr1MsrJK6+8Mm5b7Mm5557rNttsM3O1\ngeeeT1Jpp59QzqKiOVLM/Mgky3Nmm222+FGrr766nZ9++ulxmU6EgBAQAkJACGQhIIt7FioqEwJl\nQuDxxx+PreRk5Nx7772t5yeeeML8mHGL2HPPPa3s3XffdWSqHDdunFtnnXVMqc01DCy2WG9RFjfd\ndFNLZMSzxo4da0223XbbBllUv/jiC3Oz+eyzz6zvjTfeOFfXFStfcsklG/RNJtIPPvjABYX122+/\nNZeY3XbbrUE9/M0XXXRRd8stt7gTTjihwb18Fz/88IND2cfVCPcUfNrPPPPMBrjka1/qvULzo7+3\n337b/PaTffO9IPnTM888kyzWuRAQAkJACAiBRghIcW8EiQqEQPkQwMcbV5C77rqrQcDmBhtsYH7c\nwXebOgRGEtiIWwftvvrqK7f//vtnDobATpT+Hj16mOsFGUhpQ38ot8sss0ysoKLQ33jjjdZXCMpE\nOb744osz+0bJx+0jn2D5Z3HRVPn888/dUUcd5dZaa624H56JMs/c0sJcn3vuOeONL3bXgUXNoEGD\nDHf87m+++WZ39913u1GjRjnceCopWfPjebjHsED76aefGrgRsTB55JFHzPefdyQRAkJACAgBIZCF\ngBT3LFRUJgTKiADuGvfcc4991lxzTesZv+pNNtkk9mFGiSZQEaW0g3elWHHFFa1+LsWdTlDO05J0\nMeEe1mas/FjxZ5hhBnNBefDBB93QoUPdrrvu6sJ4kv2g4OJXnk+mmmoq99dff+WrkvMeCioW8Hfe\necfqoORef/31buLEiXYNk0xaUHh53nfffefmmGOO9O3Ma5T9gw8+2D4wybCgwRWHwNe33nrLzTrr\nrJntmluYa37026lTJ5s3rDLdunWLH4Ui365dO2O7iQt1IgSEgBAQAkIghYB83FOA6FIIlBuBRRZZ\nxPysr7rqKocCiXC+zz77xI/CdQbWGOTNN990EyZMcO+99158v6knWNphScG6feCBB9oHSz4W3vff\n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\nb7zR7bzzzu7mm292PXr0qPwD9QQhIASEgBAQAiUgIMW9BLBUVQjUMgL//vuvWdjfeust8+WeffbZ\na3k6FRt737593TXXXONGjx7tll566Yo9Rx0LASEgBISAECgVASnupSKm+kKgRhE44YQT3ODBg93T\nTz9t/tw1Oo2KD/vvv/92G2ywgfvxxx9NeZ9xxhkr/kw9QAgIASEgBIRAMQjIx70YlFRHCNQ4ArjF\nnHLKKe7888+X0l7gXRKYOnLkSPftt9+63r17F6it20JACAgBISAEWg4BWdxbDms9SQi0CgIff/yx\nW2WVVdyWW27prr322lYZQy0+9LHHHnOdO3d2Q4YMcYceemjJU3jooYccMQWFZIsttnBwpeeTTz/9\n1N17773ulVdeccOGDctXVfeEgBAQAkKgjhGQxb2OX66mJgT++OMPt91227n555/fXXrppQKkBAQ6\nderkTj31VHfkkUcax3sJTa3qSiut5F544QULdu3Xr5/7888/3aRJk+wD/eTLL7/s9txzT4dSnk9+\n/fVX9+yzz9pYHnjggXxVdU8ICAEhIATqHAFZ3Ov8BWt6bRuBPn36mNsHSuJiiy3WtsFowuyjKHLd\nu3c3JZtEVXPPPXdJvWAhX3XVVd3666/vnnzyyUZtoZ7ccccdjemn0c1Uwbbbbms+95999lnqji6F\ngBAQAkKgrSAgi3tbedOaZ5tD4KqrrnJXXnmlu+6666S0N/HtTzbZZIbfdNNN53r27GnW8lK6gh8+\nn8Bgs/DCC+erEt+bcsopHeORCAEhIASEQNtFYMq2O3XNXAjULwKvvvqqO/DAA93RRx/tttpqq/qd\naAvMbJZZZnG33XabW3PNNd2xxx7rzjzzzLI89YYbbnC77LJL3Nd//vMf98QTTxhV5xRTTOF23XVX\nN99888X3s07YEcCST+Io2sDPv+mmm8ZVv/jiC4d7DVb6ddZZx2288cbxPZ0IASEgBIRA7SEgi3vt\nvTONWAjkReCHH34wv/a1117b/KLzVtbNohDo2LGjxQicddZZpsQX1ShPpd9++63Bu8GPffHFF3dY\n9o855hj3zz//mKKNMp9PyH77/vvvW/DsWmutZdlwQ/3HH3/cnXjiiQ5fe/jocflhMScRAkJACAiB\n2kVAinvtvjuNXAg0QgALLJbav/76y910001mhW1USQVNQmC33XZz++67rwWUvvvuuyX1MW7cOLN2\nY/Feb731XPv27R3W8CB33nmn+/LLL03BxnLerVs398knn7jx48eHKo2OvOvLL788doPClz7srrAQ\n2Hvvvd25555rivsOO+xgrj5Dhw61gNlGnalACAgBISAEagIBucrUxGvSIIVAcQgMGjTIQUOI+8Sc\nc85ZXCPVKhoBePAJUoWp58UXX3TTTz99UW2x2D/66KNx3e+//96tscYa8fVOO+1kAaoEv8IEFAJZ\n33vvvZy8+/i7L7nkkqaQo8BvvfXWDvYa5MYbb3RY6wl+DfLVV1+5RRdd1Cz0uP1IhIAQEAJCoPYQ\nkOJee+9MIxYCmQg8/PDDjuyo5513nsNtQlJ+BKaZZho3atQoU7L32Wcfd/311zfpIe3atTN/+dB4\n8sknN8aagQMHummnnTZW1v/9999QJfN40UUXOazpuMFgzcdvHuX/jTfecPPOO6+7+OKLM9upUAgI\nASEgBGoTASnutfneNOoyIIA7wd13311UT7gh4INcrTJhwgTjC4f5BKYSSeUQWHDBBd2IESNc165d\nbYHUVL/xvfbaKx7kRx995DbccENTtEmUVawrzoorrmg7APjFX3bZZbageP31181F6p133nF///23\nIxOsRAgIASEgBOoDAfm418d71CyagACJb3beeWd38803uw8//NBS3MPCQhksHHxwWYAL/b777mvC\nE1qmCf7s22+/vVlar7jiipZ5aBt/ChlV2d04/PDDy+IzThApSjZKO1LI0k4dEjoNHz7cQTmJZZ3M\nqvjJw4CzwgorOAJg00m3fvzxR4efu0QICAEhIARqEwFZ3GvzvWnUZUAAH2CS3+APHATOc6zXuEFA\nA4isssoqDp/kapVDDz3UvfXWW+6ll15yM8wwQ7UOs+7GNWDAAPNzx1UFv/esmAIUZeTjjz+2Y64f\nKNko3SwQV1999Vi5JoCVPmaddVb3008/mTJOUCr+7RxRzHv16mXXLCbmmGMO+7AbAOMMPu/4zLMg\nwBKPmw/c/hIhIASEgBCoUQT8H3+JEGiTCHiu88j7hTeYu3eJifyvcuSVpbjcK0yRd0OIr6vpxC80\nbLxeIaumYbWZsfgFXdShQ4fI+5dHkyZNajDvW2+9Ndpggw3s/fCd8ovByCvPDeqEi+eeey5aaKGF\nIu9DH22zzTaR3w2K/IIxmm222SIfeBp5dpjIU0VaX94PPpo4cWLkF56R92OP/OIzGjlyZOSpKiPu\n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\nnnvzzTddv379HJZ3FnVJmTBhgsNdRiIEhIAQEAJCII2AFPc0IroWAmVEgCQ7H330kVlWyZjZs2dP\n4+ru0aOH69y5s+vfv38Zn6auagWBaaed1p1xxhlG/7n00kubAh/GLneZgISOQkAICAEhkEZAinsa\nEV0LgTIiQDZMFLEgt912m8PiSjDq8OHD3WSTTRZu6dgGESAI9dVXX3WnnnqqfU+mnHJK9/fff7sb\nbrihDaKhKQsBISAEhEAhBKS4F0JI94VAMxBAAUMRCwJ/91dffWU+zI899lgo1rENI4Cyfuyxx7rx\n48cbLShQ4C7zyiuvtGFUNHUhIASEgBDIQkDBqVmoqEwIlAGBcePGuRVWWCFvT/i5w++N8taW5J57\n7nFbbbWVi6KoLU1bcxUCZUGAnboRI0YYxWhZOlQnQkAI1AwCbUtbqJnXooHWAwLBTSZpcU/P69xz\nz7VAxMcffzx9q66vv/zySzfddNO5a665pq7n2dTJ/ec//3HTTDNNA9/3pvaldvWHwP777++++OKL\n+puYZiQEhEBBBKS4F4RIFYRA0xBIu8mke4FR5N9//3WLL754+labuCbZ1A477NAm5qpJCoFyIsBO\nnUQICIG2iYAU97b53jXrCiMwduxYY4/J9RhcY+aee2531VVXGbtMrnoqFwJCQAgIASEgBIRAQEDB\nqQEJHYVAGREIbjLpLuHsxj+Vre533nlHSnsaIF0LASEgBISAEBACORGQxT0nNLohBJqOQJabDEr7\nIoss4q699lq31lprNb1ztRQCQkAICAEhIATaJAKyuLfJ165JVxKB1157zX3yySfxI3CLQWk/7rjj\njPJPSnsMjU6EgBAQAkJACAiBEhCQxb0EsFRVCBSDAG4yKOtwthOAutxyy7nrrrvOLb/88sU0Vx0h\nIASEgBAQAkJACGQiIMU9ExYVCoGmI4CbDEo7rCmnnXaaO/TQQ83i3vQe1bI1Efj000/dvffeawmR\nhg0bVvahfPjhh5Y59eSTT3bzzz9/Zv+//vqrgzL0mWeeMd7/zEq+8O2333Zw5K+88squU6dOuaoV\nLH/55ZfdMsss46affvqCdZta4fbbb3fbbLNNU5u3SLs777zTdenSxU077bR5nwd95x133JFZhyzJ\n5CwIwvfp2WefDZf2t2KmmWZy3bt3j8t0IgSEgBDIhYAU91zI1FD5QQcd5L7++usaGnH9DvW3336z\nrKhzzDGHW2211dyLL77odtppp5qcMEuwZAIAAEAASURBVApL7969a3Ls5Ro0CjNK1qmnnmpBxeXq\nN9nPmDFj3NVXX23UmLkU9wceeMAdeeSRRh9Kwq4s+fzzz90FF1zgLrnkEtecBcbdd9/tpppqqooq\n7YwfVqU+ffrYeKstARkLtRNOOMEWa99//31BxX3UqFFut912y3otrlu3bg0U96OPPtrddNNNcV2C\n1d988834WidCQAgIgXwIyMc9Hzo1cO+vv/5yF198sZJxVMm7wrq2ySabuI022sjNOOOMVTKq0ofx\nyiuvOHYO6lFwWypWeIcsvNZYY41im5Rcb/vtt3fffPON69q1a8621Fl99dUbZdilHUo9Mt9887l+\n/frl7KOYG+ecc46bMGGC22yzzYqp3qw6a6+9tttuu+3cPvvs06x+yt0YizhubUsssUTRXWNtf+yx\nx9wvv/zi/vzzz/iz3nrr2RxDR8S+kJCNY/iQjGyppZYKVXQUAkJACORFQBb3vPDUzs2jjjqqgVWn\ndkaukVYjAoGushrH1pwx4W5CkHAu62iuvrEIYxmtlLBDU0iIl+ATZNKkSW7nnXduoBgSBN1UGT9+\nvBkB3n///aZ2UXI7FgjsZrD4aM5i4eOPP3YowOUI/F5wwQVtHh06dChqPhhPjjnmGNthSzaYOHGi\nGz16tMPdJgiZkpnnXHPNVdCKH9roKASEgBBIIiDFPYmGzoWAEKhKBIgZePTRRx07GmSaRRnCNxwf\n6bQ1nFTwKIKfffaZW2edddzGG29sc0Jp33rrrU0Bv+yyy1z79u3NjYGb+Cg/8cQTDrcVlN9dd93V\nLNjFgkF7XFSwpuIPvcsuu5i/efBlxnLPYgFf5ltvvdWhHGNh79ixo7m/PPnkk7ZDg3tVEFw0cMFA\nKV111VVdFEXx4gGrLs945JFHTAlkUZH0o6YP2uP2Ag5kqC1kQcaFg4VA1gIFlyGsyuQewBqNG9Us\ns8xiQ2XuvA+ej8vefffdF2MLliiwd911ly06GMfMM88cpmhHYkBQfDt37txgYdKgUo4LcCSOZPjw\n4e6ss84qi+Ke41E5i4llSb63UPG2225z66+/vpttttms6IcffnBXXnmlA0vcG/FpP/PMM11YKIR2\nOgoBISAE8iHwP/NNvlq6JwSEgBBoJQRQPHv27GmWSpQz/O7JTIvLy7rrrmuKcBgayvmJJ57oVlpp\nJbf00kubcnTggQfabRQoFOVpppnGLbnkkm6BBRawchQpFgPTTTedKZAsElD4UUiLFdrin44CSpwD\nFnTG9vrrr1sZ5yjtyJprrmlc/rAN4dvM3AgkxT0pCAoyllmUZIJWv/32W1Ocg1L9xx9/xBZqXGSY\nD2MIQmwF/WJFv+iii0yB/O6778LtRkfqoXBnWb0JeKUvsMPvGwV+0UUXtYUTC44VVljB3IkuvfRS\nd/rpp9tCg0UFbfC1P+KII8yNBH/2Xr16NXo2WPM+CaotVhgTiytcTN566y1boLAAYNFGAG++T1hM\nFfusptZj0YUrUBAWdYMGDXI77rijLbZuvvlm+47ef//9oYqOQkAICIHCCHgrjqSGEfCWt8i/5chb\nvGp4Fhp6tSGw3377Rd5Pv2LDuvzyy6NZZ5216P69ZdW+595iG7f56quvojnnnDPyCnPklaLI+xdH\nPsFV5BXxuI5X8q3d888/b2Xeyhl5hT2+z8n1118feReUiP4Qz8Nvbbybg13zg+fynHziFX7r21ue\n42qhr6uuuiou8xb3yFvn4+tx48bZ85Jlfhch8sGocZ1///3X5uat5nFZ6NtbceMyb523vvbcc8+4\nzFvdrYxjLvHxDFbH72I0qMKcVlxxxYj3FcQvMCJvZY5Cf94v3tqOHDkyVIn8AsbKmGuQ/v37R37R\nFHkXn1AUH/2iKho4cGB8nevEL4Qir/ja+/JuMZHfWWlQNYyFv4m5Pj7wtkGbXBfHHnus9eF3LnJV\nyVnudxkMo/CdSlfk++pdtmwe88wzT+St8ekqea/5Lp599tl56+imEBAC9YmALO6F1zaqIQSEQCsj\ngIsM4pXIeCSBlQSL/EcffeRuvPFGs5IT74GVnY9XnMw6nPTbDlbr0BHBp1ic6Q9LNlZk5L333gtV\nijriFrL33nubmw4WciS4hXjFPe6DcWKRDsIOQFIIcsRiToBzEMaMO0Z67NzPKsMKHgTLPvLBBx+E\nokZHrNaIVyIb3MMKT0KxLbbYIi6HapIgzC233NLKgstMMk8BOwBIchxYx3HxwSqeFvoIY0jf45ox\nEKCL1Z/gUazUzz33nLnsJOv37dvX/f7773k/P/30U7JJRc6humRnhe9UlhAzgfX9vPPOs+8oO0US\nISAEhEAxCMjHvRiUVEcICIGqRCD4bcOu8sYbb7h5553XAizzDTat6BLwiYLlLb7mnx78lb2VO183\nmfdQ3E855RTzuT7ssMMcLC24cKCgsRBAufe7BLHbTFYnuI0gQeEOddLjLlQe7geqRYJZcwn40X+a\nr5yxsGhizEnBrzufpBcj1IViEsGVKC3EALAAyyW4ID344IOugw8YxV0KRposYa5hvln3W6rM7z40\ncJPJ9Vzcifh+lLpIzNWfyoWAEKh/BKS41/871gyFQN0iAKUe4l1kTCnGNxxf4qAkZk08rQBjrd9w\nww1N4ceK/O6772Y1K6osBLx61xKzqmNdhlbz2muvdVjdWQwUoj/8+eef7VlY3YMffnh4euyUZ5WF\n+sUesYb7TWVTqpM0powXRRuLMMGjxUq+MWXdI3CThE+5hGDjp59+2vz98YnfdNNN3UknndQoGPWl\nl16ygN1c/VDO4oldmUoJuy3s2sDNX0hYELVr165g4HChfnRfCAiBtoOAXGXazruu+plinRw6dGjJ\n44RdZK+99sprsSu504wGbPM/9NBDxgTBNn2xFtmmtssYgopSCOBWssoqq5iLB24ZKJkESSblxx9/\njL9XKI1pyzPBrCj7wfWj2PeafEby3McHGKMMLjiHHHKIWbF33313U97ZFUi6+yTbhfPgcsLc8klQ\ngNPzydcm171g3U8ncgtjGTFiRIOmBLriDlIOAW+YZwh4zSdwoj/88MPmIoNVHas77DY+fiFuxqKL\noNB8H1h9KinggjtRetGV9UyCaJk/wcsSISAEhEAxCEhxLwYl1WkRBLBIlpIcJwwqZJ6EwaNSgkID\nSwn+tSwSYNaA/q6QktfUdpWaR633m3zHZArFwhoyieJ2gLJEEiLcKfCZvuWWW8zCDQMJgisNfu8s\n9vD5RtHnAwc4/txYS8PiEWs5Sj+CXzT1sEoXEqzB7ADgLw8dILLvvvvaM5IsI6EfFnZI8Ivne4UF\nHIrDp556yu4xFqy4uJP4YFYH8w1zQVBcGRflgTkmHLkPLWTyaBepHyia008/vbHgJG8xFhh62DFg\nQQIlJ1zk/A5svvnmVhV/dyTMg3OYepDwbM7BDwGXpPAemQ/PKkbgaudd8e5x7cECDxsOiyJiB2Dn\nyfdhJ6MYYRcASY+XMmIiiEFgAZ+WXG4yQ4YMsUUlPvgI74xFJrszxfD4p5+jayEgBNooAv6Ph6SG\nEfD/LI35oB5YZWAD8f/UmvQ2vI9uk9oV0wgWDG8Ri7xiEVeHbWOhhRaKPPd1XJY+aWq7dD+tcV1t\nrDJesbbv+QYbbBDBFAPjh7e0R0nWEnDy9IoRzCv+z7l9vCU58gu7GELv8hF5a60x2lxwwQVW7pUv\ne5cwnnhe+MgvzqxvmE5gU/GKauSpFq0/mE9gDCkkZ5xxRuS5yxtU8xzyjb7fL7zwQuSDLuOxekpE\na+PddyLva2/lMOV4fvWoW7du9j2EfcZTVVo9z1FvdWAA8gqpsd8wd6/4R17Jtrn06NHD6viA0Siw\n6zQY2H8vvG9+5LnmG93yi4XIL0Yib+G3j3criihDwM7vdFj/flchgpUGjP1CwMp8UGvkFWqr54M1\nrYzxeMt4/Byv0EZe+Y6vSz159dVXI78gijyfe6lNM+vDBMM790mSbLxg4nfaGtS96aab7N6FF17Y\noNwvvuz7BQtSWvzi0dp415jI87hHPgYi4v03RcQq0xTU1EYI1AcCrPolNYxAPSnu1foaUERQhgL9\nXRgnSpwP3GtAPxjucWxqu2QfrXVerYq7Z+KIvOXWFES/25ETHmgRvf975n1vRY+8H3mDeyyykjSS\n9M3vVlMFxTo9vqYsSv2OTTwu6C7TwjOCEp2+V+o1Y2bR4y3gmU2hLPSW/Mx7TS1k/D65lCn2Te0j\ntGvO+wp9lHJkgZcWvkMsVHIJiz4Wl2HhlateoXIp7oUQ0n0hUL8IyFWmje60tPS02Tons6S3lFqQ\nHlvNad9c3EqStHlsn+PTyvY828skLCEZTTp40P/zt+A5ts4rIcGXN/j7hmfgF8z2P9v2WdLUdll9\nqex/CODSsfDCC+cNyvS7ITkzUkI9GJIhhV5hlgmUk5ThP16IOSW0zTriwhF80MP9ZIKkUFboSPBi\nGFcyaDS04xkkYCqHMOYrrrjCkizxO5UWz7tvgZTp8uZcH3744fY3AfeX5kpz3ldTnp3lw867yhdk\n66345nKXZu9pyvPVRggIgbaJgBT3tvneW3TW+IoSQIiie/zxx1uGRJRg/llDmYcCf80117jFFlvM\n+aQkNjba4JcMkwXsDGRdxJcX/2MYQILvbK7Mk+kJ0jZfNkXuTZgwId3MrgNVW/ApDpX4J4ykFxLh\nflPbhfY6/g+B4BccfM7/d0dn5UQAn3zvymJxAlnKezmfRWwCfxe23XbbcnarvoSAEBACdY2A6CDr\n+vVWx+QIFPTb2A5WCATlHWu099s1DmPK9thjD0tbHtKRk54ehd37klrCFthcYJLwPr0WxEZQGCwg\nWLfg34ZFIp8QvBZo9nLVIyFKWDgk68B4AYVc2qKH5RchsDFLmtouq6+2XObdXswKDAYwghAkTBBi\n+n20ZYzKOXeCa1lYs+NVSYx79epVtt2Ccs5ffQkBISAEqhkBKe7V/HbqZGywd5Dg5a+//jJFANo+\ntpTTFu500pbgbgBNXEiqErahYXcJkm4XypNHmEQKSS7u7ywXBfoKrj7pbJPhOU1tF9rr+P8IwI3u\ngwDtEzDJ9a7CfR2bh0Cu73Tzem3YulwuPg171ZUQEAJCoL4RkKtMfb/fqpgdtGm4OuCOguAGgxKP\nZa9UwfKN+LCTkpriX1zoExYH6Y7xZUVJZ9cgKYEGLywmkvc4b2q7dD9t/RqrL/7VyU/af7ytY6T5\nCwEhIASEQNtAQBb3tvGeW3WWpIH39Ghu//33d6eeeqoFkp5++unGvdxSAyO5U1rxTj/bUw1mplLH\nNQNhhwA//CCBdzuX4t7UdqF/HesfAb6X7CwdcMABJU0WHnp+lwjW9gwjJbUtpTK/M/DHv/baa5Yk\nyFM6OgJ5SxE45eEqJzA9KZR7GlvLjdCxY0eLZ8m1S0U76pJwKVdgJ7tqb7/9tsXAJJ+jcyEgBIRA\nPSFQ2l/gepq55tJiCGDJJrATxhj+QZPA5Ygjjmix5/MgEibly6bIPf7pZ4nnDXe44wT/+1CHJC9k\nwfQUeqGowbGp7Rp0oou6RqAek46lXxgL9/PPP79BMQsBgsxZ9B511FG2sCeRUla8yL333us8ZaTr\n3r278zSKDfrhAjc8km6R9CowOTWqpAIhIASEQJ0gIMW9Tl5kNU8DGkgUY9LK4yKDf3pwM0mOG+se\nGSoJikOgkMQlhjZBgpU7+Q88WNLDvVA3eSQDZb5sitwjG2SW4O/rE6ZYNs7gokM2Rc/r7q688soG\nFkiUEBQVpJR2Wc9VWf0jQBZPz/df8kR90iZTWLt27Vpy22IawChDlleCVPk+k9mTXTJoXLMCuHP1\nCb0kGU2TQt8Eo5N5FQs+Qd783mBJ90mcklXtbwVjyLU4pjLByz5JUqZS36AzXQgBISAE6gABucrU\nwUus9ilgbSdVPb7uSdlkk00srTu82sOGDbMteRTi/v37W3r18847z6rDKOMzSjrSsvvsiFZ2/fXX\nW38o+aQSR+B5Jz27z9Zo1+X8ATMOOwekZYeiEssg7DiMKSko81BV4hOPP36x7ZJ96LztIBA42psy\nY5TpSgkLXWJS+D4H4fuMYn322We7AQMGxPzy4X76CE2qz2pq7E8jRoyIb/tsoW7s2LHumGOOics4\nWX311d1FF11kC2xoIpEFF1zQjh06dLBj1g+fYbbB4j6rjsqEgBAQAvWCgBT3enmTVTwPlBP+Ia+7\n7roOP1QCVUlchBUe/nb+gfft29c+yWmwvZ7eYr/tttuSVex85MiRjcrKXUAwpE9jbwo5lv255547\n8xEkgWJnIQTRFtsuszMV1jQC7BgNHz7crMaLL764KabEPYTvBpMj6RiL0rDbw0IUCzx+5OQ5QHF+\n55133I477tjA6ozVGt9zfMJRXMstweUEa3dSkknHdthhh+StBuf8DrCwZUfqhBNOaHCP+SBh9yrc\nDPNgwRAU93BPRyEgBISAEPh/BKS465tQUQRwQWFbHPcYFJZkcCcW+FtuuaWizy9358whl9LOs3IF\n1xVqV+5xqr/WRQDmJNxA2EnCjYNkYsQ8oJziy80uEUr9wQcfbK4iKO60IUiV3AXw1OP/TuZUri+9\n9FJzU2nXrp0j6RjKMAtf3NCCwpueMUnHAmVp+l64JsNsVgbQ5iYPI2j20EMPbZShlueGDLIvv/yy\n22mnncJQHLSvSJLqNb6pEyEgBISAEDAEpLjri1BRBMaNG2duJSgwuMagKOCTOnr0aMe9NNNERQej\nzoVACyHQVpOOAS87AbiVrb322plos3CB4pN6WN0DtSfxLUg+t5jMDlUoBISAEGhDCEhxb0MvuzWm\nirUdSyJWw0MOOcT+obP9vueeexqVXSUzM7bGfPVMIQACbTXp2I8//mhucTfeeGPOLwIWfqgsCUjl\n70CPHj3cW2+9ZX8jaESCNokQEAJCQAhkIyDFPRsXlZYJAaxphx9+uH3we1XGyzIBq26qGoHgBoa/\ndqdOnVot6VhTQUomD0tmJg5sULlyFxx22GHmunPXXXfFj8bthqBz4lNIogUeRx55pPn8E3gORvjw\nE7RKXQLMJUJACAgBIZCNgBT3bFxUWgEEKqm0syiACYNAPzKyQjVX7ZIvYUypyWmqfa5tbXxtNekY\nnOoPP/xwg9eNCwwB6fjzL7vssqa4U4GEZ3yQjz76yKHs42I000wzWZl+CAEhIASEQGMEpLg3xkQl\nNYgAdJMEupKhEeWgmgXlZvDgwW7o0KGuT58+jTI9kpyGYEY4sLFEwshz0kknuQceeMASWVXz3DS2\n/0cgmXQM2kZoRJOW65bAiaRjsDflEwKts3zRCaQ95ZRTLOlYMqC8UNIxFs5pwSXmuuuuc5999ln6\nll2Tp6Fnz55uySWXLDmDbGaHKhQCQkAI1DECSsBUxy+3LU0NPvUDDzywJqacL2FMKclpamKybXSQ\nbTXpWKmvm4UFi9eFF17YPfLIIxYDk9UHcTIILjdZUuh+VhuVCQEhIARqEQEp7rX41jTmTASwciKB\npSKzUhUUQt+31FJLZY4kJKdJ+/mSnAYXBCyekupHIJl0rGPHjsbBPvPMM5sbFy5SZP698MILGyQd\nw12E5GNISDr2xRdfNEg6xvsn2yp0iwhJx+699147L/cP3Fa23HJL2y1grDwzV9Ix+OYLUU8mx4cr\nGHSXJDPr3r27zWOuueZKVrHziRMnOhKxhfwN5HxIu+Lcf//9FvhOA3YZYLACY4kQEAJCoB4RkKtM\nPb7VCs4J+jZo3HDngJscBRSf8iBkS0T5hOoR2rdtttkm3LIj7BH8U8W3lX+4JGMhkQvBcFibn332\nWQf/9Prrr2882KEx2+z4wO6///72/AcffNDNN998xo0deKFD3awj1jwUntlmm8225Wefffa4Gklw\nUH44wiWN9X6RRRaJ77fkiZLTtCTalXtWW046lkb1zDPPdHyS8vTTT5uLWEg8lbyXPMeVBz54Prmk\na9eujg/MVRIhIASEQL0jIMW93t9wmeeHxY1tbf6RkkAF95SguGMZu/POO91jjz3mPvnkEwezBko6\nyjZsFPhpky592223teQxs8wyizFK4AOLUn799de79u3bm/UNyyNsE2ussYa74YYbLKsq2+T4suMT\nS79kMiWJDfVyBb5SlzFuvPHGZj2Eho7kNSw+YMaAvo5A1ieeeMISw+BbjuRS3JuT1KaYVxEWIUpO\nUwxa1VlHSccKvxes7BIhIASEgBAoHQEp7qVj1mZbYG0n+HPkyJGGwaqrrmrb6AGQiy++2HXp0sVc\nVUiisuKKKxrLC4o7TBFki2Qbe8KECaako6Si0GP9ZhueVO+UcY5lHCs5ijtZJAnMRIE/6KCD4uDT\ngQMHWgAdW+777rtvGEaDI1v8WOYJ8kTOPfdcs+5DUUmfLBbIdhoyng4aNMh2DBp0krjYbLPN3M8/\n/5woaXxKH8cdd1zjG0WUKDlNESBVeRUlHavyF6ThCQEhIARqGAEp7jX88lp66PiOw/wAAwQK/NZb\nb+369esXDwOrNS4CCGnZUdDTSi5+vrijBMsyCj1W9sUXXzwum3766U25xuc3CP3iw55kjMHf9fTT\nTzcayFyK+znnnONYYCQDV5nD999/b13j6oP1vVevXqbUs5vAeHJJMb6zuaz/ufpMlis5TRKN2jxX\n0rHafG8atRAQAkKgFhCQ4l4Lb6mKxgg1IT7pbHXjfoIVHD9UBMt2CKrDhx0FvZhgyiyaPJTfQlR2\nKPjzzz+/g14xS3CDIbgPTu1u3bplVTFOaRYfuPDgrnP++edbNsfMyr4wLDhy3S9HuZLTlAPF1utD\nScdaD3s9WQgIASFQ7whIca/3N1zm+eH+MmbMGIe1+7LLLrNATvzO27Vr5wYMGBAHjqLg3nrrrUU9\nPRcLTK7y0Omff/5pvu6452TJ5JP/P2kS48uluFMH9gzYLXDDIViOINWjjz46q0uHBZ/n5hMWLVnc\n2PnapO/RBx9EyWnS6NTOdXN2X2pnlhqpEBACQkAItBQCUtxbCuk6eA4KK0mOCODEn52kMrA5QNWG\n9Z3AT5T5YJWGJaaSQqAoAatQ1mUJbjm4vsCpTSr2MC7q4tsOcw3UcnvuuacF2L766qsx9V0uxb05\nSW2yxlioTMlpCiGk+6UiUEtZhj/99FNjmgpz/OeffyxeJldwKzSTuPEde+yxoYmOQkAICIG6QkCK\ne129zspOhuDUSy+91PzBsYZjpSYrJJ9ff/3VHg4lG4GgY8eONd9zlH3u0ZYAUNxf0hZr7gef8zAD\n6qWTrfBPGzrJpZde2qph0ccqHRR3UqsjYSyc43ZywAEHmEsM/vAw2aB8wxm94IILuvfee8+Ud6z2\nuN6gEBBAm0ueeuqpXLdKKi8mYQwYMHYWHwTZBp76kh6kykIghUAtZRlmAZ2keeTvDvEzuQS3OBb0\nUtxzIaRyISAEah2B//clqPVZaPwthgBuGzvvvLPROeIXDmMMyu7yyy9vbibwM6+yyir2zxVlEyWa\nIFYUc9hWOELfSOIY7kHN+Pnnnzva4T9PYprBgwdbYCssM6RKD4Jby9ChQx30kTvttJNRTpL4BRk9\nerTRTXJ+7bXXGkc85/vtt5/9E4deEXpKEhlhxWbcCP71UFvy7BtvvNEU+auvvtruVepHoYQxxSan\nqdT41G99I1ArWYahlGV3gGP4fPnllzmTl11xxRXujTfeqO+Xp9kJASHQ5hGYzFtCozaPQg0DgBKK\n8gl/Oq4rlRas3rjAwK6CxTot0DvCFBME63pW8Gm4X+wRBRzaR+YLWw2Wc1xhihUWBB9++KFZr7Gs\nB2E+WLLxa2ec9Nvawo4A2TZzccm3xPhY2JAMCk7+SghKFguwsPNQiWeoz9wIYLWGoYndpd69e+eu\n2Ip3WFAvt9xytsM37bTT5h0Jid/II0G9ESNG2N+nvA1q/CbsU7j/QWsrEQJCoG0hIFeZtvW+mz3b\n4K6RpbTTeVJp57ocSjv9JIV/WqUK/u1JKsnQPswnK916qNPSx1z+uy09Dj2veQjky8jLQhL6VAK9\nyUBM3AisTEG4Hxbj9HPfffcZTSlB1tSfOHGisSCxCwXLU1jEshB99NFHjZYVilX6YMFKBmNyIhQS\nWJjIb0CmYnIKELuSlHxzStZr7jkLuiuvvNJ25Qga53eC7KtZf3ewypMYjvrs4EmEgBAQAvWMgBT3\nen67dTS333//3aGU4F4TkiXV0fQ0lTpDIF9GXr7D5A8gQDrkIkBJJn6DBSZ5Bfr06WNuW7ijsfPB\nThDxGgSDkwQMpX/SpEnmcoZyDpUpyvYhhxxiweLsvnF/oYUWcrfffrvRneIrvt122+VEGtc03MVC\nwjSU5d12280C0WmUb07pTlkAsGDIJ/irM+8sQRnHtQ5/9WeffdbmiVvcqFGjDINkGxK2YZ1PGw2S\ndXQuBISAEKgbBHCVkdQuAt4VBVenyP/zrt1JFBi5V3AizxVv8/TBmpFnfynQQrebi4B3TYp8TEBz\nu8nZ3jN/RLPOOmvO+7V+w8d3RD5wOp6GV2Ij78Jh13yfvaU88u5mdv3aa6/Zd9vHacT1Pe2olfks\nxXGZV/KtzAdlx2X9+/eP/K5W5JV0K3v//fetjrfCx3V4zpxzzhn5nAeRV4it3PuCWz3vKmPX3sUt\n8q5ZkV9UxO28C43V8cqzleWbU9zovydh/PxtyvXxVJnpZpnXjNlnIjbM5plnnshb4+N6fgETnXji\nifG1dx+xvxVxQZ2e8C79oq5OZ6dpCQEhkA8BBafWzRKsficCa8zbb79t/tBY4ch8KhEC1YxAMiMv\nCcJgBtp2221tyARWjx8/3hKXwZyEhR2B4ShIiLUg6DtI+N6vsMIKocgs98SRYOFGQuZi8i0EIUEa\nFnws8slsxOE+RyztuOcQd0CWYT7EsZBEzS8GrGq+OSX74rxv376OXbJ8n8AClW6bvsadjd97fNgZ\nEzsDCDsABJX7xUu6ia6FgBAQAnWLgFxl6vbV1s/EghJTPzPSTOodgU6dOrlcGXnxS0eZHjhwoAVT\nrrbaagZHobwHWfEiIcFToSzDSyyxhD2DRQS+72mBjWXeeeeN3WLS97nON6d0fZTtED+SvtfU6549\ne5pLTFjgEJwJdrgJBeEeiyFyS/gdHRtzuKejEBACQqAeEJDiXg9vsRXmQGKUe++9173yyit5ec9b\nYWiNHvnxxx+br2y4gRIDZWUQmFMI/kNxgYM+GSQY6mCpJGgPH+TNN9/ceODDvVKP5eoLSyvWWu9q\n4dZdd1235pprOpTCICg0SYVu++23d0HRC3V0rAwCvIdcGXl5/xtuuKEpyewmwYhSjOTLJJzvHn1D\np4jkYioi4BVfenzLc31H8s3JOk/8eOmll9wjjzySKGl8yjOx8Bcr3t3HMjQnFyEkUEsKVnys/Acf\nfLAFo7PYkAgBISAE6gmB//2Xr6dZaS4VRYDgOgLGyJSKMlvtwljhnke5gcs9aXGEM56APmgshwwZ\nYqwVLEiSQp299trLGDYWW2wxU7rgnW+KlKsv2D1IRMUCirFBIUlAYtJqy+IE3noWJcwfVwhJyyAA\nwwnvYtNNN3Vk5IWdhbwGiPfJNgU5JA5LvrNKjY7FKd8H7yOe+Qjcb1jkkWAtKbijkDsByTenZBvO\nWYwQSJrvQwK1UoT8D2DFIhW55557zP0HF6DwIbAWBZ/rBx98sJTuVVcICAEhUBMISHGviddUXYOE\n1QU/3WLo5app5DByoLgE6jxYLzp06ODIJHnZZZeZjzHMFPjSBmFh4gPjnA+2c1j6UBrgToZeD+Wg\nFClXXygvsIPg/0ymSDLXkhUWv2nGGoSdA3yUN9lkk1CkYwshEDLy8riQkZf3hKAgk0iIBdW3334b\nK8b4qaMoIywkEXZVgrBgRpJZhsOOSjrLMN/pICQ4wwLOojFI8C8PfeKGAs0q7j3sFMBwc8stt7h9\n9tnHqCppl29Ood9w3GWXXWw3jh25XJ8XX3wxVG90ZBHNIgLrOeIDtezaBzXb971RAxUIASEgBNoI\nAlLc28iLrsQ08WEttEVfieeWq0/cAlBYgrAgQSEPij3lZ5xxhltppZXsE+r16tXLaCmxQJYi5err\nqaeesuyzBBwGwe1g9913t2C9oMyFezq2PAL4o+fKyHvEEUcYTSPBqijG0DxiDef7wc4JFIghey8L\nRlxroH+85JJLbCInnXSSZSamHomsEII3g+831ywMWNSxkCNz8fDhw2NO9qwsw4wXCzULWdxXlllm\nGXfKKadY1uFAs5hvTjyznDJu3DijpWQxQaArmOH+ko/OspzPV19CQAgIgapFIB/ljO5VPwKl0kH6\nLfPIKwj28f/04wl6pgYr89lJ4zLv8xpde+21kf+nGflgr7g8nEA5By0Z4q2FkWd4iM4999zIW36t\njGdxzcf72FpZ+OGtgJFXfCOvhETeFzYUV+QI/Z7/BYy8NTNv/1DqrbfeepHfkrd6PpDPKOj22GOP\nRu28YhPxKVbK2ZdXYGw+3ne/weO9hdTKOSblmmuusXJvZU0W5z0XHWReeAreDLSLPlFS5veO71qS\netHvokT8LjdXvMJu79or8pFfwEXQUNJ3KcL3Kv37SvtCcyrlGcXUBTuf4TXyLl7FVG9TdUQH2aZe\ntyYrBBogoODUql1SVWZg+HjjCkLgIha7IJ5z2nylg+82dUjsgm8sgW20g4oNH9IsIbCT7KM9evSw\nYFWylNKG/shmiAUvZD2Ezi1fopd0/81N5pLuL+sadwIsjWuttVacFAZXGtxSmFtamOtzzz1nW/jF\n7DqUs69gWU2PK2R/LTbYMT0nXZcPgcCoEt5JumcCPQN1I/f4Dk099dTpas26xkUHGspShaRNWVJo\nTlltmlMGdrnwa06/aisEhIAQqGUEpLjX8ttr4ti9BdwCuwjugokEIcgRX+jAqHLxxRe7Ll26mELB\n9jm80NTPpbjTB8p5WnAzSQo+tWzhsxWO4sJ9tugJgCPtexhPss3NN99sfuXJsvQ5TBh//fVXurio\na9gvSKsOqwaCEk9WS9LKIzDJpAWliOd99913RfnclrsvXGPSih5jQnCTkLRNBIJPePCVb5soaNZC\nQAgIgfpFQIp7/b7bnDODEo606d4txhgusKRxjr9tEHxqg0XQb1e7CRMmuJ9//jncbvIxmegldJJM\n9JKluOPj6l03QvWyH1mwkODJuwiYj/sNN9xgwbf4vCNZFnXSyePzO9tssxU1nkr0lX4wY0JyMYek\n6+u6vhDg+8vuFgJjC6xDBImmF3j1NWvNRggIASHQthCQ4t623nc8WzIjbrHFFuYy0717dzd27FhH\n0FsQLO8PPfSQWdlxo4GdBHaI5koxiV7Sz2BhEbbp0/fKec3OAko7bj4vvPCCBXvSf1awJ6wfsMxg\n+S5GCLJDytUXSjqMIyweggQmkqydj1BHx/pFoH379kY5GWgnmWkuTvb6RUEzEwJCQAjUNwJS3Ov7\n/eacHdSIWN6hQZx22mkd10kZMGCAJffBjQVXkVI5l5N9Jc9RdAsleknW57wSyVzSzwjXKL0oQFit\nUbbZdWC3IS3Q+KXdgNJ1ktfl7AtLKsK44JUPwpgQKe4BkZY/tmZiMizrpVjXsdAn41zSiclgsylX\n0jFyIyR37Pju4p4W3LuSb4rYGtz0+LvUFMFNCMYn3gXGCTj0sxbYsDOR44ExEI/TsWPH+HFKXhZD\noRMhIASqDAEp7lX2QlpqOLh/4K9OQOY///xjNHTh2fzDJrkSSn3w7yZIs5AEq3iaUzrZLpnoBReY\nIPyzHTFihDvggANCUXwMyVzigowTnl1KFsaMLqyIlPCMpXPnzmbN7t27t2WIZf4hKykKCAGicKcX\nK1jGy9UX/UDVh9KRVNzZESEWIWSWLHZsqlceBIjfCInJstyryvOU8vXCWKE2xX2NTK5JJRrOd5R2\n/gaQ7Iv7nHvWpZIHgBtat27dLJA7NCZDcfJ5lKPc4+rD9xiu+qYo7rQj6djaa69tsSqe6cqtuuqq\nLs0Zz6KBhGTsTqDgQ83J3x7KEeg5+Tt24oknWrwLCwDtXhg0+iEEhEBrI9CAY0YXNYdAqXSQyQn6\nwMrIK+aR921PFkc+cNQo5bwVKoJC0FumIs9gErVr1y7y7hiRV1ytvlduI+/jHdPNQTvn3U0in6Qo\n8ta8yCdxiXzAqfUFBSUUeP6fYeStz5G3DEZnnnmm0b354NMIasnQb4PBlOEiFx3k/fffb3SX0OYF\n8cp45P+Zh0ubB/NOUiz6JDCR53uP64QTz6se+Z2LyPvsh6IGRzAppi/PVhOtttpqEc/JJVB0epee\nGHso87zCHnmlp1ET0UE2gqSiBXw3vKtZRZ9Rjs7z/V74RWo0ZsyY+DFQx84+++yRt5THZcWe8Hvh\nmaSMYhKaSa8oN6J4pJyPT+xmfy+8Al5s9w3qea77iL9rQU4++WTrL1C8Uu53DyO/kI6Sz/DJsKye\nX8yEpnZsyu9Ogw4qdCE6yAoBq26FQA0goARMrb1yasXneyXSgjD33XffBqMgI+dee+1lVI5YnghO\nxTKFRZFkLvhSQxcJ1eMPP/xgVimsclgZjz/+eMvgudxyyzn/T9MYZPw/GaOSfP/9982KXSjRS4PB\nVPCC7Xp8/aFVBAPGi6UuWN14NNR4bKnDsnPMMcc4GHnAI6SBTw4P6ky/GDA/+WR5OC+2L3DCPYgd\nhBBwGvoIR7Jbbrnllm6rrbayd8PYwX7llVcOVXRsJQTY/akFi3sueMqVKIz+CTyHQYqdIehg+eA2\nlramh3vEmTRVYHnCxYa/a0F22203O00mVSMjK89JBpZjpUdK2UWzBvohBISAEGhhBOQq08KAV9vj\nUMjTW9aMER9RlPOQNZEyXERCMCRZIfmkBTcOmCzISkpbjvDABzcT6uOjjZ875Sg4gd893Velr8k8\nynhxj4EvOpeyRbAqLDv4kM8yyyw5t8wJvMU/N62UJOdRTF/QYsL6M3DgwEzfXPpjrChYKPaMa+65\n504+RuclIkBuATKKIt6ybAtOznnvuFnw/dhzzz0pcrhuEbyMQrrOOusYE5HdyPgBNadPXma/B5tu\nuqkFPvMsgsERXDSS339yFuCi8tlnn1nf+Ge3pPBdYkEeFN7wbL7TBKj7naeYuSbcy3fk7wv4oazD\nKc93mgy/uX7X8vVV6B7+/Wneet4RC1yMEUFw3QkugKGMd05bb5kPRToKASEgBKoSASnuVflaWm5Q\nWUp7eHpSaacsKO3hfq4j/+SD8prPLzRXopdc/Ta3HBaWtLCgKFbpnWOOOdLNG1zTP8F+WMMLSaG+\nSO6EoldICLorNP5cVvtCfbel+wQnKjGZc+VMFMb3Z/3117dFC78XKPAsfmBuYnGSFTBaru+c3+12\nI0eONKYsdviSwt88Fl/eDdAW4uEeCxNyOrCjmP7bF+roKASEgBBobQSkuLf2G9DzK44Aiwe2ykn8\nRGZUgtWKUYpLHRgW29NOO63Z1JXsbGDZJyCwOeJ95M2VCQWG+VfCytmc8VVbWyUmc2VNOsb7xXWF\nD8IuA0GpKMcsbnE9q4RAuXrYYYfZAoGEVFjbobb1cSP2uE6dOtmOHy5wBM0GQZHHzUZKe0BERyEg\nBKoRASnu1fhWNKayItCjRw/Hp9JCIqdyCEp2c5V2xhESah199NHlGFbd96HEZM6VM1FY+gsDoxSM\nMUsuuaQx2VRKcYfClUUrvuwXXHCB69evnzHGEDeCwFyDIs/vx6BBg9yss87qHn30Uff666/bwj49\nbl0LASEgBKoJASnu1fQ2NBYhIARaFYG2npgMX3SkHInCsl4kbioEuJOpudKCGxxxOLidEWcQEpbh\nWsYCYvjw4bYLAH87LjwEnOMyJRECQkAIVDMCUtyr+e1obEJACLQoAm09MRmKe7mSjuV6cUsttVSL\n5hpgJ4yA4GSMDq5oSfYorO+wXx1++OG5hq1yISAEhEBVICDFvSpegwYhBIRANSBAHEBbTkyGcluu\nRGG53uftt99uVvdc98tdDttT0pc93T/j8Tz1zueTsEVL+r6uhYAQEALVhIB43KvpbWgsQkAItDoC\n5DCAFQnu8WSgInkMkJtuusmoUaFNJMCRXAbcg40EIcgRVxOYTRAy2XbwvOG0gwIVOkIChpFXX33V\nkZW3Z8+eRpmIPzaBmz55mVEvYgmGHjRLoF3F5SPfJ50xNKufdBlWZ+bkExXFt1Bqu3fvbvSVoRCm\nGPjPUXqzBOYWXFWYYxCUaLAh50CW8FwkK/tyoeeRCRWf9fHjx8dd+2RM9nwCj7ME+kd87ZlfS8TB\nZI1BZUJACAiBkhCogSRRGmIeBDxPeuSthJb1z794HYVB2b4DnnknzzevebfICuuDApvXSQVbe+U9\nMwst5T7BUuSV+sgHP0ajRo2yLMCeqST6/PPPI68gWjZifhc9Z3k0ceJEG+WwYcNsvj7407KDPvnk\nkxHZL71iG/mcBlbHJ/ay7Lfh99gnMWuQvbTc082VOZXneOU32mCDDSIf2Bydc845Nk7PSd9gCNdd\nd51913iP//zzT4N7XPgFReRdUqwOWZjpa/DgwZFnemlUl2zDYOf58q2+55GPfABpg3qFnucXT9FK\nK61kfw/JPDxgwIDo/PPPt2zPyY7I8OwXNBHvslevXpHnrk/ebnCuzKkN4NCFEBACVYDAZIyhJE1f\nlasOAZLEkERIIgT+j72zgLei2v74tsX6m2A9uwMQMRBFRERQQQwUG8UWsBMVDOwWsDtQxABUFFFQ\nUQwUuzBRRMVCnz71qfNf3/XePm/u3Dkdd845a30+956ZPTt/M3tm7bVXlBIBjPbwAFIOQkpLZFgv\nYS1HG8XUiRvBdDEOon6+vdFjtvaQIocDk+HHPByYzJevVGAy/KkL4+p+/PHHBv7MfT/4zRZ0jPcO\nQZWuueaacLHUMdjMmDFDsVxhhRVS6YUeZGuPehkPwZjS3T92M6gHt7Dp8vj+3Xbbba5Pnz66ixKO\nvuqvN9Uvtgi4vDSd/Ka6A9auIdB0CJiOe9NhX7KWS+E6sGSdsYoMgRpAIBNDF1afYahho8dMQ6+m\nwGR+HMUGCgObNddc01dX9G8ugclw75iJiNzMXy5kwctyQcnyGAKGQCURMMa9kmhbW4aAIWAIJASB\nYgOTlSpQWK5wVLI9C16W612xfIaAIVBpBExVptKIW3uGgCGgBo1JVpWxW2QIJBkBU5VJ8t2xvhkC\n5UXAvMqUF1+r3RAwBAwBQ8AQMAQMAUPAECgJAsa4lwRGq8QQMAQMAUPAEDAEDAFDwBAoLwLGuJcX\nX6vdEDAEDAFDwBAwBAwBQ8AQKAkCxriXBEarxBAwBAwBQ8AQMAQMAUPAECgvAuZVprz4Wu2GgCGQ\nBgEiaFq0SqcRV5s1a+YksFMapCzZI4CP9mzuHn3eWv4lIqyRIWAI1CcCJnGvz/tuozYEmhSB9u3b\nu1133bVJ+5CExgn0JFFU3ZtvvpmE7iS6D2A1YcIEJxFmE93PSnSue/fuzuJ3VAJpa8MQSB4C5g4y\neffEemQIGAJ1gADS4y233NLNNddc7tlnnzVJcg73/Nprr3VHHHGEu+mmm9xBBx2UQwnLYggYAoZA\nbSFge7O1dT9tNIaAIVAFCPz++++uZ8+ebs6cOW7KlCnGtOd4zw4//HD35ZdfusMOO8w1b97c7bTT\nTjmWtGyGgCFgCNQGAiZxr437aKMwBAyBKkEgCALXu3dv9/jjj6ukfcMNN6ySnienmwcffLAbMWKE\ne/LJJ93mm2+enI5ZTwwBQ8AQKDMCxriXGWCr3hAwBAyBMALHHXecGzZsmDLupqccRib347/++kt3\nLNiteO6559zaa6+de2HLaQgYAoZAFSNgjHsV3zzruiFgCFQXApdffrk7/vjj3d13361S9+rqfbJ6\ni7Hqtttu62bNmqXqRsstt1yyOmi9MQQMAUOgDAgY414GUK1KQ8AQMASiCIwcOVKZ9YsvvliZ9+h1\nO88fAdwiYuC7wAILuGeeecYttthi+VdiJQwBQ8AQqCIEjHGvoptlXTUEDIHqRACXj9tvv73DuPKK\nK66ozkEktNefffaZ22KLLVRd5rHHHnPzzz9/Qntq3TIEDAFDoHgEjHEvHkOrwRAwBAyBtAi8/fbb\nKhXu3Lmzu/fee93cc1v4jLRgFXjhjTfecB06dNDF0T333KMuNgusyooZAoaAIZBoBIxxT/Ttsc4Z\nAoZANSMwc+ZM165dO7fKKqu4J554QlU6qnk8Se77pEmTXNeuXdVV5JVXXpnkrlrfDAFDwBAoGAET\n/RQMnRU0BAwBQyA9Avho79atm1t00UXd6NGjjWlPD1VJruCh54477nBDhw51F154YUnqtEoMAUPA\nEEgaAhaAKWl3xPpjCBgCVY/AH3/84XbZZReH8SQuC5dYYomqH1M1DKBXr17uq6++ckcffbRbfvnl\n3X777VcN3bY+GgKGgCGQMwLGuOcMlWU0BAwBQyA7AgRY6tOnj3vllVc0wNJKK62UvZDlKBkC/fv3\n1+iqffv21eiqGAUbGQKGgCFQKwiYjnut3EkbhyFgCCQCgRNPPNFdddVVbty4ca5Tp06J6FO9dcIv\nnh544AE3ceJE17Zt23qDwMZrCBgCNYqAMe41emNtWIaAIVB5BDCKPPbYY92dd97p9t5778p3wFpM\nIfDnn3+67t27687H888/79ZYY43UNTswBAwBQ6BaETDGvVrvnPXbEDAEEoXAqFGj3J577unOP/98\nd9JJJyWqb/XamV9++cVts802amsA896iRYt6hcLGbQgYAjWCgDHuNXIjbRiGgCHQdAg8++yzbrvt\ntnOHHnqoqsk0XU+s5SgCs2fPdu3bt1fvPgTCWmSRRaJZ7NwQMAQMgapBwBj3qrlV1lFDwBBIIgLv\nvPOOBlhCsnvfffdZgKUE3qSPP/5Yo6u2bNnSPfLII26++eZLYC+tS4aAIWAIZEfAGPfsGFkOQ8AQ\nMARiEfjyyy81wBKeYwiwtOCCC8bms8SmR+DVV191+Hrv0aOH+nufa665mr5T1gNDwBAwBPJEwAIw\n5QmYZTcEDAFDAAR++uknt8MOO7iFFlpIAywZ057s56JNmzYOLzMjR440G4Rk3yrrnSFgCGRAwPy4\nZwDHLhkChoAhEIfAv//9b7frrru6b775RgMsLbnkknHZLC1hCHTu3Nndeuutbt9999UATXgAMjIE\nDAFDoJoQMMa9mu6W9dUQMASaHAF8hB944IHupZdecs8884xbeeWVm7xP1oHcEcBN56xZs9zxxx/v\nll12WbfXXnvlXthyGgKGgCHQxAgY497EN8CaNwQMgepC4JRTTlF1i0cffdS1bt26ujpvvVUEYNqx\nTyDCbfPmzd22225ryBgChoAhUBUImHFqVdwm66QhYAgkAYGhQ4e6AQMGuNtuu83tt99+SeiS9aFA\nBNg5QWVm7NixDjeRG220UYE1WTFDwBAwBCqHgDHulcPaWjIEDIEqRgDDxl69erkhQ4Y4pO5G1Y/A\nH3/84XbccUf31ltvOQI0rbrqqtU/KBuBIWAI1DQCxrjX9O21wRkChkApEHjuueccho0HHXSQGzZs\nWCmqtDoSgsDPP//stt56a/fPf/5Tmfell146IT2zbhgChoAh0BgBY9wbY2IphoAhYAikEHjvvfc0\n8maHDh3c/fffbwGWUsjUzsHXX3+tAZpg2p966im38MIL187gbCSGgCFQUwgY415Tt9MGYwgYAqVE\nAO8j7dq1cyussIKbMGGCa9asWSmrt7oShMD06dN1gda2bVs3ZswYN++85rshQbfHumIIGAL/RcAC\nMNmjYAgYAoZADAKoUBBgicBKMHLGtMeAVENJa665pnvkkUfUxechhxxSQyOzoRgChkAtIWAihVq6\nmzYWQ8AQKAkCBFjabbfd3FdffaUBlpZaaqmS1GuVJBuBTTbZxI0aNcp1797dLbfccu68885Ldoet\nd4aAIVB3CBjjXne33AZsCBgC2RDo27evMuy4CVxllVWyZbfrNYRA165d3Y033qhBtpZffnnXr1+/\nGhqdDcUQMASqHQFj3Kv9Dlr/DQFDoKQInHbaaW7EiBGqNtGmTZuS1m2VVQcCBxxwgEZXPfroozW6\n6u67714dHbdeGgKGQM0jYIx7zd9iG6AhYAjkisA111zjzj//fHfrrbe6Ll265FrM8tUgAvjqJ7oq\nQZqWWWYZdRlZg8O0IRkChkCVIWBeZarshll3DQFDoDwIjB492u26667u7LPPdgMHDixPI1ZrVSHw\n999/u969e7vx48e7Z5991m244YZV1X/rrCFgCNQeAuZVpvbuqY3IEDAE0iBA9FPUXz755JMGOaZM\nmeL22msvhzcRY9obQFPXJ3PPPbe744473EYbbeTQfZ8xY0YDPN5++219nl566aUG6XZiCBgChkC5\nEDCJe7mQtXoNAUMgcQhsvPHG7tVXX3VLLrmkSlE5f//999V/d/v27R2M/TzzzJO4fluHmhaBOXPm\nOAJw/fHHH44oujw/SOBxF0rEVTwQ4Y3GyBAwBAyBciNgjHu5Ebb6DQFDIBEITJs2TaWjdAbmfL75\n5nM333yzSthbtGihETPNV3siblUiO4G++xZbbOHwNDNgwAC3//77u7/++suhTsPz9Pnnn6sLyUR2\n3jplCBgCNYOAqcrUzK20gRgChkAmBIYPH67MOnlguH7//Xc1PCTA0tixYy3AUibw7Joy7I899pj7\n4Ycf3N577+3w9Q/TDs0111zu+uuvN5QMAUPAECg7Asa4lx1ia8AQMASaGoGffvpJdZVhtjwFQaCM\n17vvvuvwJmNkCGRD4K677nLvvfee49kJ059//umGDRvm+DUyBAwBQ6CcCBjjXk50rW5DwBBIBAK3\n3357RqZq0KBBapiKJN7IEIgiwHNx0EEHuSFDhkQvpc5nz57tHnroodS5HRgChoAhUA4ETMe9HKha\nnYaAIZAoBNZcc0334YcfZu3Tnnvu6e65556s+SxDfSGw8847qzpVVNIeRgE9980339xNnjw5nGzH\nhoAhYAiUFAGTuJcUTqvMEDAEkobA008/nZVpn3feedXAcIMNNkha960/CUBg8cUXV/UYnpN0hFQe\njzPvvPNOuiyWbggYAoZA0QgY4140hFaBIWAIJBkBdI/TMVw+HYnqBx984E4//fQkD8X61kQI3Hbb\nbe6FF15wbdu21R7g3z2O8FTE82ZkCBgChkC5EDBVmXIha/UaAoZAkyPwzTffqDeQqO46XkBQe4AR\nu+qqq1y7du2avK/WgepAAD32448/3n366acprzLhnuNS9Ouvv3aLLrpoONmODQFDwBAoCQLxYoOS\nVG2VGAKGgCHQtAjcdNNN6qov3AukpSuuuKIbOXKke/nll41pD4Njx1kR6NmzpwbtGjp0qAZi8rs2\nviBuRom2amQIGAKGQDkQMIl7OVC1Og0BQ6DJEcDHNgz6rFmztC8wWPhsP+uss1y/fv3c/PPP3+R9\ntA5UNwJETb3ooov0j10d3EGym7PGGmuo6lV1j856bwgYAklEwCTuSbwr1idDwBAoGoFx48Yp0w4j\nhcePo446yn322WfuuOOOM6a9aHStAhBYZJFF3Nlnn+0++eQTjaTKswZNnz7dYRRtZAgYAoZAqREw\niXupEbX6yoIAnhr4QPpIhWVpxCqtKQSef/55N3PmTNVxb9WqlTJZNTXAPAYDQ3nyySe7Nm3a5FEq\nt6xz5sxx/fv3d7/99ltuBWo4F1i8/vrrquO+0koruc0226yGR2tDKxcC6667ru4Mlqt+q7e6ETCJ\ne3Xfv7rpPW7WHnjggboZrw20eARQV+jUqZNr3759XTPtIDl27Fg3adKk4kGNqQH/+Oh0ozZS7/R/\n//d/rkOHDq5jx45utdVWq3c4bPwFIMB8skjOBQBXR0XSO6WtIxBsqNWBwMILL6wGhdXRW+ulIZAc\nBP74QzuBAABAAElEQVTxj3+UvTMYaxqzWnaYrYEaR2D48OFu8ODBNT5KG14xCJjEvRj0rKwhYAgY\nAoaAIWAIGAKGgCFQIQSMca8Q0NaMIWAIGAKGgCFgCBgChoAhUAwCxrgXg56VNQQMAUPAEDAEDAFD\nwBAwBCqEgDHuFQLamjEEDAFDwBAwBAwBQ8AQMASKQcAY92LQs7KGgCFgCBgChoAhYAgYAoZAhRAw\nxr1CQFszhoAhYAgYAoaAIWAIGAKGQDEIGONeDHpW1hCIQWDGjBnqh/fggw+OuVp80scff+wOOugg\n98UXX6StDJ/a+O4m6E4meu+999wll1zinnrqqUzZsl6bOnWq+/XXX7PmKybDgw8+WEzxipQdPXp0\nwYGIRo4c6V566aVG/eR5GjFiROoPn+kPPfRQo3yWkB2Bf//73+7JJ590xx57rHv00UfTFsg1X9oK\nynCB+cWcPu2004qq/c8//3QEJysnvfrqq47nNumUbs7F9fvFF190F110kbv00kvdp59+GpdF0x55\n5JHUXGXeUqbc78a0nbELtYlAYGQIVAEC119/fbD44osnvqc///xzcPfddwfLL798sMIKK5Slv/fd\nd18gb6NAGI+09ZNnlVVWCSR6Y9o8wvgHRxxxhNZ14403ps2X7cKYMWOCcePGZctW9HUJwhXIYigQ\npqroukpdwcMPPxxsvPHGiuX333+fd/Uvv/xyMN988wUSeKVR2d69e2u93HP+JApq8O677zbKlylh\nxRVXDIThyJSl4GuyaNN+ffTRRwXXUamCr7zySnDooYdqf2+44Ya0zeaaL20FZbggAeiClVdeOeBe\nFko//vhjcN555wU//fRToVXkVI45evjhhwdPP/10TvmbIlOmORftjyz0gn322Sf4/PPPA4niHfTq\n1SvYfffdA4nk3SAr85L56ecqv8zffGjYsGHBMsssk08Ry1tnCJjEXWaWkSGQCYHbb7890+UG1xZZ\nZBG31157lTXUuXww3OzZs123bt0atB0+Ic+mm27q5p23YYw1yj322GOaVRYW7oQTTggXy/v4sssu\nc/Ixc127ds27bL4FtthiC7fbbrs5YbzyLVrW/EgWN9xwQ7fWWmsV1M4vv/yiAVeQ8kbps88+c6Tz\n6/9mzZrl1llnnWjWujwPP8+5ANCmTRt31FFHZc2aa76sFRWZIfzu2WWXXTQqa6FVzpw50+23337u\n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\nIiACIiACIiACIjASAhLcR4JVmYqACIiACIiACIiACIhAvQQkuNfLU7mJgAiIgAiIgAiIgAiIwEgI\nSHAfCVZlKgIiIAIiIAIiIAIiIAL1EpBXmXp5KrcJEcBXOQvriCCqJAIiMBwBfk9KIiACIiACzSMg\nrzLNaxOVaAACzz33nLv22mud4okNAK/gkiuuuMJZVFJ36qmnpgZyKri89sN//etf3WGHHebmz5/v\nVlhhhdrzn/YMl1hiCbf11lvrJXjaO4LqLwIi0EgCEtwb2SwqlAg0gwAvQkTS3GKLLdxpp53WiEK9\n9tprbrXVVmtUmRoBRoUQAREQARHoPAHZuHe+iVVBERicAJr2Bx980O27776DZ1LzlYsssojbZ599\n3HnnnedefPHFmnNXdiIgAiIgAiLQXAIS3JvbNiqZCEycwCmnnOI222wz9573vGfiZYkXYPfdd/eb\nZ599dny3vouACIiACIhApwlIcO9086pyIjA4gXvvvdddffXVjdK2h9osueSSbrfddnMLFixwmM4o\niYAIiIAIiMA0EJDgPg2trDqKwAAEEIpXWWUVt9VWWw1w9egvwVwGMx7MeZREQAREQAREYBoIaHHq\nNLSy6igCFQlgO77iiiu6Y445xh1wwAEVrx7f6SyaJV111VXju6nuJAIiIAIiIAITIiCN+4TA67Yi\n0GQCwXY82JI3taz77befN+fBrEdJBERABERABLpOQIJ711tY9ROBigRwAYmZzK677uqwJW9y2nLL\nLb05Dz7mlURABERABESg6wQkuHe9hVU/EahIoIkuILOqINeQWWS0XwREQAREoIsEJLh3sVVVJxEY\ngkBTXUBmVSmY8wTznqzztF8EREAEREAE2k5AgnvbW1DlF4EaCTTZBWRWNeUaMouM9ouACIiACHSN\ngAT3rrWo6iMCQxDAVrzJLiCzqibXkFlktF8EREAERKBLBOQOskutqbqIwBAE2uICMquKcg2ZRUb7\nRUAEREAEukJAGveutKTqIQJDEgg24sFmfMjsxn65XEOOHbluKAIiIAIiMGYC0riPGbhuJwJNJPDa\na6+51VZbzaG1Pu2005pYxMIy4cZy1VVXbXUdCiupE0RABERABKaagDTuU938qrwIvE7gyiuvdA8+\n+KDbd999W4tk1qxZDlv38847z2H2oyQCIiACIiACXSMgwb1rLar6iMAABNrmAjKrisHMJ5j9ZJ2n\n/SIgAiIgAiLQRgIS3NvYaiqzCNRIoI0uILOqj2tIIr4S+RXzHyUREAEREAER6BIBCe5dak3VRQQG\nIICQ20YXkFlVxdwHsx8iwCqJgAiIgAiIQJcIaHFql1pTdRGBigTa7gIyq7pyDZlFRvtFQAREQATa\nTEAa9za3nsouAkMSCLbgwTZ8yOwac7lcQzamKVQQERABERCBGglIcK8RprISgTYRwH0iZjLYhGMb\n3qW05ZZbevMfIsEqiYAIiIAIiEBXCEhw70pLqh4iUJEANuBtdwGZVeVFFllEriGz4Gi/CIiACIhA\nawlIcG9t06ngIjAcga64gMyiEMx/gjlQ1nnaLwIiIAIiIAJtISDBvS0tpXKKQI0EuuQCMgsL5j+7\n7babXENmAdJ+ERABERCB1hGQ4N66JlOBRWB4Ath+d8kFZBYRIqnKNWQWHe0XAREQARFoGwG5g2xb\ni6m8IjAkga66gMzCIteQWWS0XwREQAREoG0EpHFvW4upvCIwJIFg8x1swIfMrvGXyzVk45tIBRQB\nERABEShJQIJ7SVA6TQS6QOC1117rrAvIrPaRa8gsMtovAiIgAiLQNgIS3NvWYiqvCAxB4Morr+ys\nC8gsLHINmUVG+0VABERABNpGQIJ721pM5RWBIQh03QVkFppgFhTMhLLO034REAEREAERaDIBCe5N\nbh2VTQQGJHDfffe5r33ta+6ee+7p5TANLiB7lU18SXMNSeTYX/3qV+7ggw92//nPfxJXaFMEREAE\nREAEmkdAXmWa1yYqkQgMTeDkk092BxxwgM9nww03dAcddJAXUn/961+7v/zlLw7zkWlLvLisscYa\n7uKLL3ZPPvmk+973vuceeughj4Fjq6+++rQhUX1FQAREQARaRmB2y8qr4oqACJQg8Nxzz7nFFlvM\nvfzyy+7GG290119/vd9moebf//53N2fOnBK5dOuURRdd1K200kpul112cSzS5S+k559/PnzVpwiI\ngAiIgAg0lsD0qd0a2xQqmAjURwBBFFMQ0quvvuo/EeJ/+ctfuuWWW8596Utf6jOj8Sd08F8wh9l8\n883daqut5h5//HH3yiuv9AntVFuCewcbX1USAREQgQ4SkODewUZVlUQAjXsQ2OM02Pfvf//bnXXW\nWW7NNdd055xzTvxw577vtNNOjlmGa6+91tctzZZ91qxZDl5KIiACIiACItB0AhLcm95CKp8IDEDg\nmWeemaFVjmeDmcgyyyzjNt544/juzn3/zGc+4xDM015iQmVnz54tjXuAoU8REAEREIFGE5Dg3ujm\nUeFEYDACTz/9dOaFLExdYokl3G9+8xv3jne8I/O8LhzYbrvt3BlnnJFbFWncc/HooAiIgAiIQIMI\nSHBvUGOoKCJQF4Es0w+EVDTMuEFca6216rpdo/PZc8893XHHHZdbRtm45+LRQREQAREQgYYQkODe\nkIZQMUSgTgIvvPBCanYI7pdeeqlbb731Uo93dec3v/lNt//++6e6wWSxataLTld5qF4iIAIiIALt\nJCDBvZ3tplKLQC6Bl156KfU4i1G33nrr1GNd33niiSe6nXfe2eEWMp6w92dNgJIIiIAIiIAINJ2A\nBPemt5DKJwIVCfzjH/9IXYx5wgknuM9//vMVc+vO6cw2nHvuue7jH/+4NxeK10yCe5yGvouACIiA\nCDSVgAT3praMyiUCAxJImn0gsB5yyCE+euqAWXbmMuz7L7vsMrf22mv3Ce/PPvtsZ+qoioiACIiA\nCHSXgAT37ratajalBOILLfEgM2/ePHf88cdPKY2Z1X7jG9/orrrqKrfKKqv0hPesNQEzr9YeERAB\nERABEZgcAQnuk2OvO4vASAgEjTuaduzZzzzzzJHcp82ZLrXUUj4o07LLLuur8eKLL7a5Oiq7CIiA\nCIjAlBCQ4D4lDa1qTg+BoHFfd9113SWXXDJjMeb0kMiv6QorrOB++9vfujlz5jg8y/zzn//Mv0BH\nRUAEREAERGDCBGZFliZcBt1eBBpJ4Oabb3brr79+6kLPRhZ4AoVCY/3EE0+kulkctjjiX0xwlPyL\n764zREAEREAExk1g9rhvqPuJQFsIPPnkk15ov/DCC3u20G0p+zjKeeutt7r58+d7bfViiy1W+y3F\nPx/pqPnn311HRUAEREAEJkFAgvskqOuerSIwd+5cNwrBtFUQUgoLEwT3USfxTyc8Lv7pd9deERAB\nERCBSRCQjfskqOueIiACIiACIiACIiACIlCRgAT3isB0ugiIgAiIgAiIgAiIgAhMgoAE90lQ1z1F\nQAREQAREQAREQAREoCIBCe4Vgel0ERABERABERABERABEZgEAQnuk6Cue4qACIiACIiACIiACIhA\nRQIS3CsC0+kiIAIiIAIiIAIiIAIiMAkCEtwnQV33FAEREAEREAEREAEREIGKBCS4VwSm00VABERA\nBERABERABERgEgQkuE+Cuu4pAiIgAiIgAiIgAiIgAhUJSHCvCEyni4AIiIAIiIAIiIAIiMAkCEhw\nnwR13VMEREAEREAEREAEREAEKhKQ4F4RmE4XAREQAREQAREQAREQgUkQkOA+Ceq6pwiIgAiIgAiI\ngAiIgAhUJCDBvSIwnS4CIiACIiACIiACIiACkyAgwX0S1HVPERABERABERABERABEahIQIJ7RWA6\nXQRGReCVV15xN91008DZ33777e6RRx4Z+Pppv1D8p70HqP4iIAIi0HwCEtyb30Yq4RQQePHFF938\n+fPdWmutNXBt3//+97vjjz/e3XDDDQPnMa0Xiv+0trzqLQIiIALtIjC7XcVVaUWgewQee+wxt/fe\ne7vzzz/fvfnNbx64grNnz3YLFixw22yzjVtqqaWGegkYuBAtvFD8W9hoKrIIiIAITCkBadyntOFV\n7eYQOOigg9x2223nllxyyaELteiiizry22uvvYbOa1oyEP9paWnVUwREQATaT0CCe/vbUDVoMYFb\nbrnFXXHFFW6HHXaorRabbrqpe+mll9yll15aW55dzUj8u9qyqpcIiIAIdJOABPdutqtq1RIC3/nO\nd9w666wzlIlMWlXXW289d+yxx6Yd0r4YAfGPwdBXERABERCBxhOQ4N74JlIBu0zgj3/8o1t++eVr\nr+Kaa67pyPvll1+uPe8uZSj+XWpN1UUEREAEuk9Agnv321g1bCgBhOoHH3zQve1tb6u9hNjL497w\n/vvvrz3vrmQo/l1pSdVDBERABKaHgAT36Wlr1bRhBJ577jn36quvuiWWWKL2kr3pTW/yeT766KO1\n592VDMW/Ky2peoiACIjA9BCQ4D49ba2aNozAcsst5+bMmeMXktZdtOeff95n+fa3v73urDuTn/h3\npilVEREQARGYGgIS3KemqVXRJhLAFv2pp56qvWhPPPGEmzVrlnvnO99Ze95dylD8u9SaqosIiIAI\ndJ+ABPfut7Fq2GACG2ywgfvTn/6UWsKvf/3rbo899ug7ltx31113uY033tjddNNNfec99NBDbvPN\nN3eLL754335t9BMQ/34e2hIBERABEWg2AQnuzW4fla7jBBDEH3/8cffAAw/MqOnll1/u+MMOPqTk\nvrvvvttdd9117vbbbw+neE8yP//5z91Xv/rV3j59SScg/ulctFcEREAERKCZBGY3s1gqlQhMB4Gl\nllrKHX300e7EE090CxYs6Kv0rbfe6v7zn/84oqGGlNy30047uXXXXdfFbdkR2tdff31HICalfALi\nn89HR0VABERABJpFQBr3ZrWHSjOFBPbcc0/37LPPujvuuKOv9niGQbCMp7R9caH93nvvdRdccIG7\n6KKL4pfpew4B8c+Bo0MiIAIiIAKNIiDBvVHNocJMI4FFFlnEnXPOOe700093aNQHTQ8//LA7/vjj\n3VlnnTUSF5ODlqvp14l/01tI5RMBERABEQgEZCoTSOhTBCZI4A1veINbuHChe+SRRwYuxWKLLeZf\nAPAmo1SNgPhX46WzRUAEREAEJkNAgvtkuOuuIpBKYKWVVkrdX2bnKCKwlrlvl84R/y61puoiAiIg\nAt0jIFOZ7rWpaiQCIiACIiACIiACItBBAhLcO9ioqpIIiIAIiIAIiIAIiED3CEhw716bqkYiIAIi\nIAIiIAIiIAIdJCDBvYONqiqJgAiIgAiIgAiIgAh0j4AE9+61qWokAiIgAiIgAiIgAiLQQQIS3DvY\nqKqSCIiACIiACIiACIhA9whIcO9em6pGIiACIiACIiACIiACHSQgwb2DjaoqiYAIiIAIiIAIiIAI\ndI+ABPfutalqJAIiIAIiIAIiIAIi0EECEtw72KiqkgiIgAiIgAiIgAiIQPcISHDvXpuqRiIgAiIg\nAiIgAiIgAh0kIMG9g42qKomACIiACIiACIiACHSPwOzuVUk1EoF6CMye/frP4w1veEM9GXYwl1mz\nZrlFFhnN+7/4F3eYUfIvvrvOEAEREAERGDeBWZGlcd9U9xOBNhB4+eWX3RVXXOFeeeWVNhR3ImVc\ndtll3YYbbjiSe4t/MdZR8i++u84QAREQAREYNwEJ7uMmrvuJgAiIgAiIgAiIgAiIwAAERjPHPUBB\ndIkIiIAIiIAIiIAIiIAIiEA2AQnu2Wx0RAREQAREQAREQAREQAQaQ0CCe2OaQgURAREQAREQAREQ\nAREQgWwC/w8GQKT30/cBIwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "execution_count": 19, "metadata": { "image/png": { "height": 600, "width": 600 } }, "output_type": "execute_result" } ], "source": [ "import pydotplus as pydot\n", "from IPython.core.display import Image, SVG\n", "from io import StringIO\n", "from sklearn.tree import export_graphviz\n", "\n", "def show_tree(tree, max_depth=3, height=600, width=600, feature_names=None):\n", " io = StringIO()\n", " export_graphviz(tree, out_file=io, max_depth=max_depth, feature_names=feature_names)\n", " graph = pydot.graph_from_dot_data(io.getvalue())\n", " return Image(graph.create_png(), height=height, width=width)\n", " \n", "show_tree(clf.estimators_[0], feature_names=iris.feature_names)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 6. Making Predictions" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0, 0, 0, 0, 0])" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf.predict(X_test[:5])" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 1. , 0. , 0. ],\n", " [ 1. , 0. , 0. ],\n", " [ 1. , 0. , 0. ],\n", " [ 1. , 0. , 0. ],\n", " [ 0.9, 0.1, 0. ]])" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf.predict_proba(X_test[:5, :])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Model persistence" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "import pickle\n", "\n", "# saving your model\n", "with open('myclassifier.pkl', 'wb') as f:\n", " pickle.dump(clf, f)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n", " max_depth=5, max_features='auto', max_leaf_nodes=None,\n", " min_impurity_split=1e-07, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " n_estimators=10, n_jobs=-1, oob_score=False, random_state=3,\n", " verbose=0, warm_start=False)" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# somewhere far far away in production\n", "with open('myclassifier.pkl', 'rb') as f:\n", " clf = pickle.load(f)\n", "clf" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 7. Model Evaluation" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Evaluation on test data" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "slideshow": { "slide_type": "-" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " setosa 1.00 1.00 1.00 40\n", " versicolor 1.00 0.97 0.99 40\n", " virginica 0.98 1.00 0.99 40\n", "\n", "avg / total 0.99 0.99 0.99 120\n", "\n" ] } ], "source": [ "from sklearn import metrics\n", "y_pred = clf.predict(X_train)\n", "print(metrics.classification_report(y_train, y_pred, target_names=iris.target_names))" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " setosa 1.00 1.00 1.00 10\n", " versicolor 0.91 1.00 0.95 10\n", " virginica 1.00 0.90 0.95 10\n", "\n", "avg / total 0.97 0.97 0.97 30\n", "\n" ] } ], "source": [ "y_pred = clf.predict(X_test)\n", "print(metrics.classification_report(y_test, y_pred, target_names=iris.target_names))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Feature importance" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ax = pd.Series(clf.feature_importances_, index=iris.feature_names).plot(kind='barh', figsize=(5, 5))\n", "ax.set(xlabel='Importance');" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Train-test curves" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "slideshow": { "slide_type": "-" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.datasets import load_digits\n", "from sklearn.model_selection import validation_curve\n", "from sklearn.naive_bayes import GaussianNB\n", "\n", "digits = load_digits()\n", "X_digits, _, y_digits, _ = train_test_split(digits.data, digits.target, test_size=0)\n", "plt.imshow(X_digits[0, :].reshape(8, 8), cmap=plt.cm.gray_r, interpolation='nearest')" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.model_selection import learning_curve\n", "estimator = GaussianNB()\n", "\n", "train_sizes, train_scores, test_scores = learning_curve(\n", " estimator,\n", " X_digits, y_digits,\n", " train_sizes=range(100, 1195, 100),\n", " n_jobs=-1\n", ")\n", "plt.plot(train_sizes, train_scores.mean(axis=1), 'o-', label='Training score')\n", "plt.plot(train_sizes, test_scores.mean(axis=1), 'o-', label='Cross-validation score')\n", "plt.legend(loc=\"best\");" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 8. Cross-validation" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CV scores: 0.947 +- 0.040\n" ] } ], "source": [ "from sklearn.model_selection import cross_val_score\n", "import numpy as np\n", "\n", "cv = 5\n", "scores = cross_val_score(clf, iris.data, iris.target, cv=cv, scoring='accuracy')\n", "print('CV scores: {:.3f} +- {:.3f}'.format(scores.mean(), scores.std()))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# 9. Hyperparameter Optimization" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "text/plain": [ "RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n", " max_depth=None, max_features='auto', max_leaf_nodes=None,\n", " min_impurity_split=1e-07, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " n_estimators=10, n_jobs=1, oob_score=False, random_state=None,\n", " verbose=0, warm_start=False)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "clf = RandomForestClassifier()\n", "clf" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "
\n", "Always split your data into train/validation/test when optimizing hyperparameters!\n", "
" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "GridSearchCV(cv=None, error_score='raise',\n", " estimator=RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',\n", " max_depth=None, max_features='auto', max_leaf_nodes=None,\n", " min_impurity_split=1e-07, min_samples_leaf=1,\n", " min_samples_split=2, min_weight_fraction_leaf=0.0,\n", " n_estimators=10, n_jobs=1, oob_score=False, random_state=None,\n", " verbose=0, warm_start=False),\n", " fit_params={}, iid=True, n_jobs=-1,\n", " param_grid={'max_depth': [3, 5, 10], 'min_samples_leaf': [1, 5, 10, 30]},\n", " pre_dispatch='2*n_jobs', refit=True, return_train_score=True,\n", " scoring='accuracy', verbose=0)" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.model_selection import GridSearchCV\n", "parameters = {\n", " 'max_depth': [3, 5, 10],\n", " 'min_samples_leaf': [1, 5, 10, 30],\n", "}\n", "gcv = GridSearchCV(clf, parameters, scoring='accuracy', n_jobs=-1)\n", "gcv.fit(X_train, y_train)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'max_depth': 3, 'min_samples_leaf': 1}: 0.967 +- 0.033\n", "{'max_depth': 3, 'min_samples_leaf': 5}: 0.953 +- 0.024\n", "{'max_depth': 3, 'min_samples_leaf': 10}: 0.947 +- 0.018\n", "{'max_depth': 3, 'min_samples_leaf': 30}: 0.720 +- 0.049\n", "{'max_depth': 5, 'min_samples_leaf': 1}: 0.960 +- 0.016\n", "{'max_depth': 5, 'min_samples_leaf': 5}: 0.947 +- 0.033\n", "{'max_depth': 5, 'min_samples_leaf': 10}: 0.940 +- 0.042\n", "{'max_depth': 5, 'min_samples_leaf': 30}: 0.667 +- 0.000\n", "{'max_depth': 10, 'min_samples_leaf': 1}: 0.960 +- 0.028\n", "{'max_depth': 10, 'min_samples_leaf': 5}: 0.953 +- 0.037\n", "{'max_depth': 10, 'min_samples_leaf': 10}: 0.960 +- 0.028\n", "{'max_depth': 10, 'min_samples_leaf': 30}: 0.693 +- 0.039\n", "\n", "Best:\n", "{'max_depth': 3, 'min_samples_leaf': 1}\n" ] } ], "source": [ "for params, mean_test_score, std_test_score in zip(gcv.cv_results_['params'],\n", " gcv.cv_results_['mean_test_score'],\n", " gcv.cv_results_['std_test_score']):\n", " print('{}: {:.3f} +- {:.3f}'.format(params, mean_test_score, std_test_score))\n", " \n", "print('\\nBest:')\n", "print(gcv.best_params_)" ] }, { "cell_type": "code", "execution_count": 84, "metadata": { "slideshow": { "slide_type": "-" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " setosa 1.00 1.00 1.00 10\n", " versicolor 1.00 0.90 0.95 10\n", " virginica 0.91 1.00 0.95 10\n", "\n", "avg / total 0.97 0.97 0.97 30\n", "\n" ] } ], "source": [ "clf.set_params(**gcv.best_params_).fit(X_train, y_train)\n", "y_pred = clf.predict(X_test)\n", "print(metrics.classification_report(y_test, y_pred, target_names=iris.target_names))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# Scikit-learn Cheat Sheet" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "
\n", "\n", "Source: https://s3.amazonaws.com/assets.datacamp.com/blog_assets/Scikit_Learn_Cheat_Sheet_Python.pdf" ] } ], "metadata": { "celltoolbar": "Slideshow", "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.0" } }, "nbformat": 4, "nbformat_minor": 2 }