{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 01 - Introduction to Machine Learning\n", "\n", "by [Alejandro Correa Bahnsen](albahnsen.com/)\n", "\n", "version 0.4, Feb 2017\n", "\n", "## Part of the Tutorial [Practical Machine Learning](https://github.com/albahnsen/Tutorial_PracticalMachineLearning_Pycon)\n", "\n", "\n", "This notebook is licensed under a [Creative Commons Attribution-ShareAlike 3.0 Unported License](http://creativecommons.org/licenses/by-sa/3.0/deed.en_US). Special thanks goes to [Jake Vanderplas](http://www.vanderplas.com)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## What is Machine Learning?\n", "\n", "In this section we will begin to explore the basic principles of machine learning.\n", "Machine Learning is about building programs with **tunable parameters** (typically an\n", "array of floating point values) that are adjusted automatically so as to improve\n", "their behavior by **adapting to previously seen data.**\n", "\n", "Machine Learning can be considered a subfield of **Artificial Intelligence** since those\n", "algorithms can be seen as building blocks to make computers learn to behave more\n", "intelligently by somehow **generalizing** rather that just storing and retrieving data items\n", "like a database system would do.\n", "\n", "We'll take a look at two very simple machine learning tasks here.\n", "The first is a **classification** task: the figure shows a\n", "collection of two-dimensional data, colored according to two different class\n", "labels. " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Import libraries\n", "%matplotlib inline\n", "import numpy as np\n", "import pandas as pd\n", "import matplotlib as mpl\n", "import matplotlib.pyplot as plt\n", "plt.style.use('fivethirtyeight')\n", "cmap = mpl.colors.ListedColormap(['r', 'g', 'b', 'c'])" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create a random set of examples\n", "from sklearn.datasets.samples_generator import make_blobs\n", "X, Y = make_blobs(n_samples=50, centers=2,random_state=23, cluster_std=2.90)\n", "\n", "plt.scatter(X[:, 0], X[:, 1], c=Y, cmap=cmap)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A classification algorithm may be used to draw a dividing boundary\n", "between the two clusters of points:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "SGDClassifier(alpha=0.01, average=False, class_weight=None, epsilon=0.1,\n", " eta0=0.0, fit_intercept=True, l1_ratio=0.15,\n", " learning_rate='optimal', loss='hinge', n_iter=200, n_jobs=1,\n", " penalty='l2', power_t=0.5, random_state=None, shuffle=True,\n", " verbose=0, warm_start=False)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import SGDClassifier\n", "clf = SGDClassifier(loss=\"hinge\", alpha=0.01, n_iter=200, fit_intercept=True)\n", "clf.fit(X, Y)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Plot the decision boundary. For that, we will assign a color to each\n", "# point in the mesh [x_min, m_max]x[y_min, y_max].\n", "x_min, x_max = X[:, 0].min() - .5, X[:, 0].max() + .5\n", "y_min, y_max = X[:, 1].min() - .5, X[:, 1].max() + .5\n", "xx, yy = np.meshgrid(np.arange(x_min, x_max, .05), np.arange(y_min, y_max, .05))\n", "Z = clf.predict(np.c_[xx.ravel(), yy.ravel()]).reshape(xx.shape)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.contour(xx, yy, Z)\n", "plt.scatter(X[:, 0], X[:, 1], c=Y, cmap=cmap)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This may seem like a trivial task, but it is a simple version of a very important concept.\n", "By drawing this separating line, we have learned a model which can **generalize** to new\n", "data: if you were to drop another point onto the plane which is unlabeled, this algorithm\n", "could now **predict** whether it's a blue or a red point." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The next simple task we'll look at is a **regression** task: a simple best-fit line\n", "to a set of data:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nsKiAf+f07bff6vzzz1dUVFSghwIAWERAw6m5uVkLFizQ1KlTFRbG2gsAQMfYmpubPWd70fz587Vo\n0aLT/xKbTevXr9eoUaPajzmdTt12222KjIxUWVmZzjvvPGMqBgBYXofCqampSYcPHz7ja+Lj49Wt\nWzdJPwRTWFiY3n77bS7pAQB80qFw8kVLS4smT54sSVqzZg3BBADwmaGr9VpaWjRp0iQ5nU699tpr\namlpUUtLiyTJbrcrMjLSyOEAABZlaDjt2rVLn376qSQpMzNTkuTxeE75nRQAAKdj+GU9AAD8ZZr1\n3TfeeKPsdnv7n0suuSQkd5ZYsWKF0tPT1bt3b2VlZamysjLYJfmluLjYa17sdrtSUlKCXZbPKioq\nlJubq2HDhslut6u0tPSk1xQVFSk1NVV9+vTRhAkTtHv37iBU2nFn6yk/P/+kuRs3blyQqu2YxYsX\na+zYsUpISFBiYqKmTJmiL7/88qTXhdpcdaSvUJyvFStWaNSoUUpISFBCQoLGjRun999/3+s15zpX\npgknm82mO+64Qw6HQ3v37tWePXu0ZMmSYJflk7Vr12r27NmaNWuWtmzZohEjRmjy5Mk6cOBAsEvz\nS3Jycvu87N27VxUVFcEuyWdOp1NpaWkqLi4+5SKdpUuX6sUXX1RJSYk2b96smJiY9u9PzepsPUnS\ndddd5zV3b731VidX6ZuKigrl5eXp/fff1/r16xUREaGJEyequbm5/TWhOFcd6UsKvfnq16+fnnnm\nGX300Uf64IMPNGbMGN1+++364osvJPk3V6a5rDdhwgQNGzZMzz77bLBLOWc33HCDLr30Uq9QzczM\n1MSJEzV37twgVnbuiouL9e6774ZkIJ1OfHy8SkpKlJub234sJSVFv/71rzVz5kxJUmtrq5KSkjR/\n/nxNnTo1WKV22Kl6ys/P13/+8x+98cYbQazMP06nUwkJCXr99deVk5MjKfTnSjp1X1aYL0kaNGiQ\nnnrqKU2dOtWvuTLNmZP0/ZnHkCFDdPXVV2vu3LntK/1CQVtbm3bt2qWsrCyv42PHjtW2bduCU5RB\nvvrqK6Wmpio9PV333nuvamtrg12SoWpra1VfX6/rrruu/Vi3bt10zTXXhPzcffzxx0pKStIVV1yh\nGTNm6NChQ8EuySdHjx6V2+1Wjx49JFlnrk7s67hQni+32601a9bo2LFjuuqqq/yeK0NX6/njl7/8\npfr376/evXtr9+7deuqpp/TFF19ozZo1wS6tQw4fPiyXy6XY2Fiv4zExMfrwww+DVJX/rrzySi1b\ntkxJSUlqbGxUSUmJcnJytG3btpP+wwpVDQ0NstlsiomJ8ToeExOjb775JkhV+S87O1s333yzBgwY\noK+//lrz5s3TzTffrA8//DBkbut47LHHlJ6erhEjRkiyzlyd2JcUuvP1xRdfaNy4cWptbdWFF16o\nP//5z0pJSdH27dv9mquAhpMv2x7ddddd7cdTU1M1cOBAjR07Vp999pl+8pOfBLJMnMH111/v9fcr\nr7xS6enpev3115Wfnx+kqtARkyZNav/n42e+l156qTZt2qQJEyYEsbKOmTNnjrZv366NGzfKZrMF\nuxzDnK6vUJ2v5ORkbd26VUeOHNG7776rBx54QO+9957fvzeg4fTggw9qypQpZ3xNfHz8KY9nZGQo\nPDxcNTU1IRFOPXv2VHh4uBoaGryONzY2nnQ2FcqioqKUkpKimpqaYJdimNjYWHk8HjU2Nqpfv37t\nx602d71791bfvn1DYu5mz56t8vJybdiwQQkJCe3HQ32uTtfXqYTKfEVERGjgwIGSpPT0dH366ada\ntmyZfvvb3/o1VwH9zslutysxMfGMf47vx3eizz//XC6XS3FxcYEs0TCRkZHKyMjQBx984HV88+bN\nGjlyZHCKCoDW1lY5HI6QmZeOGDhwoOLi4rR58+b2Y62traqsrLTU3B06dEgHDx40/dwVFhZq3bp1\nWr9+vYYMGeL1s1CeqzP1dSqhMl8ncrvd+u9//+v3XIU/9thjTwWwzg6pra3V8uXL1b17d/3vf//T\ntm3bNHPmTPXv31+PP/54yJzSX3TRRSoqKlJcXJwuuOACPfvss/r444/1/PPPKzo6OtjlnZO5c+fq\n/PPPl8fj0b59+/Too49q//79Wrp0aUj15HQ6tWfPHtXX1+tPf/qT0tLSFB0drba2NkVHR8vlcmnJ\nkiVKTEyUy+XS448/roaGBi1ZssS0O+qfqafw8HDNmzdPF110kVwulz777DPNmDFDbrdbJSUlpu1p\n1qxZevPNN/Xqq6+qX79+cjqd7cuOj9ccinN1tr6cTmdIztfTTz/d/v+HAwcOaNmyZSorK9PTTz+t\nQYMG+TVXplhKfuDAAd1///3avXu3nE6n+vXrp5ycHBUUFITcl+6rVq3Sc889p/r6eqWmpqqoqMj0\nn+jO5N5771VlZaUOHz6sXr166YorrtDjjz+u5OTkYJfmk61bt+qmm2466YNObm6uXnjhBUnS73//\ne7366qtqbm5WZmamFi5caOobjs/U06JFi3T77berurpaR44cUVxcnMaMGaM5c+aob9++Qar47Ox2\n+yk/jBYWFqqwsLD976E2V2frq7W1NSTnKz8/X1u3blVDQ4Oio6OVlpamGTNmeK1aPte5MkU4AQDw\nY6a6zwkAAIlwAgCYEOEEADAdwgkAYDqEEwDAdAgnAIDpEE4AANMhnAAApkM4AQBM5/8BHlTBAYI+\nKjMAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "a = 0.5\n", "b = 1.0\n", "\n", "# x from 0 to 10\n", "x = 30 * np.random.random(20)\n", "\n", "# y = a*x + b with noise\n", "y = a * x + b + np.random.normal(size=x.shape)\n", "\n", "plt.scatter(x, y)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import LinearRegression\n", "clf = LinearRegression()\n", "clf.fit(x[:, None], y)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 0.506232]\n", "0.728575360537\n" ] } ], "source": [ "# underscore at the end indicates a fit parameter\n", "print(clf.coef_)\n", "print(clf.intercept_)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x_new = np.linspace(0, 30, 100)\n", "y_new = clf.predict(x_new[:, None])\n", "plt.scatter(x, y)\n", "plt.plot(x_new, y_new)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Again, this is an example of fitting a model to data, such that the model can make\n", "generalizations about new data. The model has been **learned** from the training\n", "data, and can be used to predict the result of test data:\n", "here, we might be given an x-value, and the model would\n", "allow us to predict the y value. Again, this might seem like a trivial problem,\n", "but it is a basic example of a type of operation that is fundamental to\n", "machine learning tasks." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Representation of Data in Scikit-learn\n", "\n", "Machine learning is about creating models from data: for that reason, we'll start by\n", "discussing how data can be represented in order to be understood by the computer. Along\n", "with this, we'll build on our matplotlib examples from the previous section and show some\n", "examples of how to visualize data.\n", "\n", "Most machine learning algorithms implemented in scikit-learn expect data to be stored in a\n", "**two-dimensional array or matrix**. The arrays can be\n", "either ``numpy`` arrays, or in some cases ``scipy.sparse`` matrices.\n", "The size of the array is expected to be `[n_samples, n_features]`\n", "\n", "- **n_samples:** The number of samples: each sample is an item to process (e.g. classify).\n", " A sample can be a document, a picture, a sound, a video, an astronomical object,\n", " a row in database or CSV file,\n", " or whatever you can describe with a fixed set of quantitative traits.\n", "- **n_features:** The number of features or distinct traits that can be used to describe each\n", " item in a quantitative manner. Features are generally real-valued, but may be boolean or\n", " discrete-valued in some cases.\n", "\n", "The number of features must be fixed in advance. However it can be very high dimensional\n", "(e.g. millions of features) with most of them being zeros for a given sample. This is a case\n", "where `scipy.sparse` matrices can be useful, in that they are\n", "much more memory-efficient than numpy arrays." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## A Simple Example: the Iris Dataset\n", "\n", "As an example of a simple dataset, we're going to take a look at the\n", "iris data stored by scikit-learn.\n", "The data consists of measurements of three different species of irises.\n", "There are three species of iris in the dataset, which we can picture here:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iris Setosa\n", "\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iris Versicolor\n", "\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iris Virginica\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Iris versicolor and the petal and sepal width and length\n", "From, Python Data Analytics, Apress, 2015.\n" ] } ], "source": [ "from IPython.core.display import Image, display\n", "imp_path = 'https://raw.githubusercontent.com/jakevdp/sklearn_pycon2015/master/notebooks/images/'\n", "display(Image(url=imp_path+'iris_setosa.jpg'))\n", "print(\"Iris Setosa\\n\")\n", "\n", "display(Image(url=imp_path+'iris_versicolor.jpg'))\n", "print(\"Iris Versicolor\\n\")\n", "\n", "display(Image(url=imp_path+'iris_virginica.jpg'))\n", "print(\"Iris Virginica\")\n", "\n", "display(Image(url='https://raw.githubusercontent.com/albahnsen/PracticalMachineLearningClass/6160065e1e574a20edddc47116a0512d20656e26/notebooks/iris_with_length.png'))\n", "print('Iris versicolor and the petal and sepal width and length')\n", "print('From, Python Data Analytics, Apress, 2015.')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quick Question:\n", "\n", "**If we want to design an algorithm to recognize iris species, what might the data be?**\n", "\n", "Remember: we need a 2D array of size `[n_samples x n_features]`.\n", "\n", "- What would the `n_samples` refer to?\n", "\n", "- What might the `n_features` refer to?\n", "\n", "Remember that there must be a **fixed** number of features for each sample, and feature\n", "number ``i`` must be a similar kind of quantity for each sample." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Loading the Iris Data with Scikit-Learn\n", "\n", "Scikit-learn has a very straightforward set of data on these iris species. The data consist of\n", "the following:\n", "\n", "- Features in the Iris dataset:\n", "\n", " 1. sepal length in cm\n", " 2. sepal width in cm\n", " 3. petal length in cm\n", " 4. petal width in cm\n", "\n", "- Target classes to predict:\n", "\n", " 1. Iris Setosa\n", " 2. Iris Versicolour\n", " 3. Iris Virginica\n", " \n", "``scikit-learn`` embeds a copy of the iris CSV file along with a helper function to load it into numpy arrays:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "dict_keys(['target', 'target_names', 'DESCR', 'feature_names', 'data'])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.datasets import load_iris\n", "iris = load_iris()\n", "iris.keys()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(150, 4)\n", "[ 5.1 3.5 1.4 0.2]\n" ] } ], "source": [ "n_samples, n_features = iris.data.shape\n", "print((n_samples, n_features))\n", "print(iris.data[0])" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(150, 4)\n", "(150,)\n" ] } ], "source": [ "print(iris.data.shape)\n", "print(iris.target.shape)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1\n", " 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2\n", " 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2\n", " 2 2]\n", "['setosa' 'versicolor' 'virginica']\n" ] } ], "source": [ "print(iris.target)\n", "print(iris.target_names)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This data is four dimensional, but we can visualize two of the dimensions\n", "at a time using a simple scatter-plot:" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\ncCO769tO1++NNf3Hjx+vRx55RBs2bDhm2WuvvaZHHnlE48ePN5UdXKShQVq+PE8NDZ2/j9XNw2T3\nDzu6khweM2L1b0hOd2+Bd8S6do5msgt5796S3x9V796x17Fy/nKOAwDgTnbfx62k5eXhcOmq8xhr\nhM+ZM0f9+vXT+PHj9Y1vfEO33XabbrvtNl199dW69NJL1a9fP82dO9dyeu+8846GDRumqVOnavr0\n6abCRBrU1+dp8eIi1dd37lgRq5uHye4fiaZlR9cTp7u3wDtiXTtHM9mF3Mq5aWodAABgP7vv41bS\nslKXcWt39HTFZaw7+oknnqgXXnhBCxYs0NNPP61nn31WktSnTx99/etf14IFC3TiiScmlOZFF12k\nBx54wFSISJOKilZVVh5URUVrp+9jdfMw2f0j0bTs6HridPcWeEesa+doJruQWzk3Ta0DAADsZ/d9\n3EpaVuoybu2Onq64fI2NjVGjKUqKRqPas2ePpI6x4j6fL+E03nnnHU2cOFGnn366pkyZohtuuMF0\nmAAAoBt/3Nmkfw3uM57u3HP6avzJhcbThX027GnWTXWNxtOtGlOiswcUGE8XANwiLc/7fT6fSktL\nVVpamlQDXJIGDRqkV199VU899ZRefPFFbd261XCUSJSpMRFeGxPO+Fd3s/v4MK4JAAC4lVfr69lW\nR0m6O/qKFSt09dVXKy8vsSTa2tr0+OOP61vf+lbc9fLz85Wfny9JmjBhgrZt26azzjrruOuGQqGE\nYkByduwYoNraAl1ySbOGDNnjeDqm03Iyj0xWVlaW1vQPj9WRWhQIpL8L0+FxTVKT/H5vvWXc7n0F\nAADsZepeb7LOYCWtbKujJN0IX7Roke666y59+9vf1le+8hWdeeaZcdd/4403tHLlSq1YsUKtra3d\nNsL379+v3ode4fvyyy9r9uzZMddNdyUfHQYOlPr3z1FZWbuKi/s5no7ptJzMA8mzewyRl6f5Yiw3\nAACZzdS93u5x49lWR0l6TPgnn3yipUuX6v7779fevXt10kknafTo0Tr99NNVUlKiaDSqxsZGvf32\n29q4caN27dqlAQMG6Prrr9fs2bNVVFQUN/1169bpjjvuUGFhoSoqKrRgwYKkNhAAACSPMeGIhTHh\nAJCclF/M1traqjVr1uiZZ57RX/7yF7355puKRjuS9Pl8OuOMM3Teeedp8uTJmjBhgnJzU59mB+kT\niXR0B+l46uv+vMPhju7BgUCb/P70xmeVk/sQ6Wfy+FpJy8v5ITPQCEcsNMIB97G7bmwqv2yrf6Q8\nRVleXp6mTp2qqVOnSuoY8/33v/9dknTCCScoJ4d5ZL3EyfEYyeTtxvG52TamJdt4eYwUY7KA7LPz\nQKs+OJiea7m5zfgEOwBSZHfd2FR+2Vb/MDZP+GG5ubkaMGCA6WRhEyfHYySTtxvH52bbmJZs4+Ux\nUozJArLPBwfb0/K0WpIWlfdNS7oAkmd33dhUftlW/zDeCIe3FRfL2F+fYnUrifV9vLxj/cbvl2NP\nwJPZDnifyeNrJa39+6Vw2KdBg2RL9ywrMWVblzEAAJxm9d5rd9344EFp3z6fDh5MLZ1sqz/TVxxp\nc7hbSSiUY+n7ZNJykhtjQuY53M0rGEz9fRqmzlnOfQAA7OXWe299fZ4WLy5SfT3PdhPB3kLaxOpW\nkkx3Ezd2UXFjTMg8JruVuXHaEgAA0D233nsrKlpVWXlQFRWtTofiKTTCkTaxupUk093EjV1U3BgT\nMo/JbmWmzlnOfQAA7OXWe+/QodLQoTTAE+Wu/gzIauGwVFOTq3DY+m8iESkYzFEkkr64TOVhR6zI\nPFbOG5Pnlsn8OOcBANnO1L3Qaj3Z7noDkkMjHK6RzNhXO8bHMI4WTrJy3pg8t0zmxzkPAMh2pu6F\nVuvJdtcbkByj3dEbGxv1xBNP6K233lJjY6Oi0c7zR/p8Pv3Xf/2XySyRQZIZ+2rH+BjG0cJJXp7G\njHMeAJDtTN0LrdaTmY7UG4w1wp977jnNmDFDBw4cUJ8+fVRSUnLMOj6fz1R2yEC9e0t+f1S9e1v/\nTaLjYxKdNi2ZPEzFCphmZXoTK+ep1XOZcx4AkO1MTf2ZTD05lZiQXsYa4bfeeqsGDhyo5cuXa8SI\nEaaSRRY53DVGaklbwRArDzvyBpJh5dy0ev5yngMA4D7c67OPsUb4jh07dNttt9EAR9Kc7FpOtxy4\nFd3DAQDIbNzrs4+xRvgZZ5yh/fv3m0oOWciOrjEmp00D7ED3cAAAMhv3+uxj7JV4c+fO1UMPPaS3\n3nrLVJIZw8lpABLNO976dk+xkEreTL2QPew+1m7Mz2pMyVx7qeRnd1oAAHiRyXvhxo3S0qX52rgx\ntfy4P6dX0k/Cb7755mO+69evn8477zx96Utfkt/vV25u51fo+3w+/fznP082S89ycmxGonnHW9/U\ndhyeYkFqkt9v7U3oJrcDmcXuY+3G/KzGlMy1l0p+dqcFAIAXmbwX1tfna8GCIi1cKI0e3ZJ0ftyf\n0yvpRvhDDz0Uc1ltbe1xv8/WRriTYzMSzTve+nZPsZBK3oyHyR52H2s35mc1pmSuvVTyszstAAC8\nyOS9sKKiRQsXdnymkh/35/TyNTY2RrtfDQAAZKM/7mzSvwb3GU937jl9Nf7kQuPporMNe5p1U11j\nWtJeVN5X814xf25UjSnR2QMKjKcLAG5hbEz4u+++q4MHD8ZcfvDgQb377rumskOKMmWch6ntsGMs\nPJzjxnHcTmAMGAAA9jJ17zX1Xhe4g7FG+KhRo/TUU0/FXL5mzRqNGjXKVHZI0eFxHqGQsVPAEaa2\nI146mbKvspndx9Ct54yVuNwaOwAAXmTq3nv4vS7BYG7MdeAdxqYoi0bj92pvbW2Vz+czlR1SlCnj\nPExthx1j4eEcN47jdgJjwAAAsJepe6+p97rAHYw1wiXFbGRHIhHV1taqtLTUZHZIgdfmEIxEOv5K\nWFbWruLiz76PtR2x1o8l3v7w2r7Csew+hnbnFw53/IU8EGiT359aXJzvAACYY+W+un+/FA77NGiQ\nYtZb/X6lNLMJ3CWlRvhdd92lxYsXS+pogM+aNUuzZs067rrRaFQ33HBDKtkhizFFGRCbqanHAACA\n/biPZ5+UGuHnnnuuvve970mSfvWrX+miiy7SGWec0Wkdn8+nXr16afTo0Zo2bVoq2SGLMUUZEBtd\n1AAA8C7u49knpUb4+PHjNX78eEnSgQMHdN111ykQCBgJDDhaol1k6VKLbEIXNQAAvIv7ePYx9vrb\n++67jwZ4Bog3RUKiUyMw1REQnx1T7B2N6U0AALCX3dOPUf/2BmMvZnv88cfjLvf5fCosLNTgwYM1\natQo9ejRw1TWMCjeWOpEx6swLhuIz9Q1YjUdxpwBAGAvK/dok/dn6t/eYKwRfsMNNxx5O3rX6cqO\n/t7n86lPnz760Y9+pB/+8Iemsoch8cZSJzpehXHZQHx2TLF3NMacAQBgL7unH6P+7Q3GGuF/+tOf\ndP3116t///76x3/8Rw0ZMkSStH37dv3qV79SY2OjFi9erD179qi6uloLFy5U7969j7zYDe7Xu7fk\n90fVu3fn7xOdPgyAdVam27N6rcW6hgEAwGcSneo2nkyfJhXJMTYmfOnSpTrppJNUU1OjqVOnasSI\nERoxYoSmTZummpoalZaW6te//rWmTJmiVatWqby8XA8++GC36S5ZskSTJk0yFSa6cbgLSyh07KkR\na1m83wCIzcq1Y/L64loFAKB7dt8vD3dHDwZzbckPzjP2JPzpp5/W/Pnzj7vM5/Np0qRJuv322yVJ\nOTk5mjp16pF/x9Lc3KzNmzebChEWxOvCEmsZ3V6A5Fi5dkxeX1yrAAB0z+77JcPFso+xRng0GtXf\n/va3mMvfeOMNtbd/diL36NGj25ezLV++XN/85jd15513mgoT3YjXhSXWMrq9AMmxcu2YvL64VgEA\n6J7d90umKMs+xvpYTJw4UQ8++KDuu+8+ffLJJ0e+/+STT7RkyRI9/PDDmjhx4pHvX3nllSPjxo+n\ntbVV69ev1//7f//PVIg4ipNTIcRanykVkAwr543Jc8uN+QEAAHPsvo83NEjLl+epoSH1/OANxp6E\n33333Xrrrbc0d+5cLViwQAMHDpQk7d69W62trTr33HN19913S5KamppUWFioG2+8MWZ6v/nNb/S1\nr33NUt6hUCj1DcgyweBpWrasUDNnNisQeDultHbsGKDa2gJdckmzhgzZk/T6iaYDbygrK0tr+lam\n4jA5XYcb8wMAAObYfR+vr8/T4sVFqqw8qKFDW1PKD95grBHer18/rV27VqtXr9bzzz+vd999V5I0\nfvx4jRs3TlOmTFFOTseD98LCQv3Hf/xH3PQaGhq0efNmPfTQQ9q2bZuWLVummTNnHnfddFfyM1HP\nnlLPnj4FAgXy+1PbfwMHSv37H36DZL+k1080HUBy57hqxnEDAOBddt/HKypaVVl5UBUVNMCzha+x\nsTHa/WrOmjRpktasWeN0GAAAZJ0/7mzSvwb3GU937jl9Nf7kQuPporMNe5p1U11jWtJeVN5X814x\nf25UjSnR2QMKjKcLAG7hiXlqaIB3sGNsaDJ5MGYV2cTk+W7y3QwAAMA+VusDpuoN1Lczi7FGeDQa\n1cMPP6xx48ZpyJAhOuGEE475r3///qayy0p2zFmYTB7MPYxsYvJ8Z15QAAC8yWp9wFS9gfp2ZjE2\nJnz+/PlasmSJRo4cqa9//esqKSkxlTQOsWNsaDJ5MGYV2cTk+c68oAAAeJPV+oCpegP17cxirBH+\n+OOPa9q0aXrkkUdMJYkuTM5ZGIl0/EWt4yVoqeXB3MPIFLGui6OZPN+ZFxQAgMxmqt5AfTuzGOvP\n0NTUpC9/+cumkkOa0aUFOBbXBQAAsII6A1Jh7En4l770Jb322mv6zne+YypJpBFdWoBjcV0AAAAr\nqDMgFcb+dHPvvfcqGAzq5z//uXbv3m0qWaTJ4S4tsbrcAtmI6wIAAFhBnQGpMPYk/Oyzz1Y0GtWd\nd96pO++8U/n5+crJ6dzG9/l82rlzp6kskQIrY1+BbMN1AQAAqA8g3Yw1wq+44gr5fD5TySHNDo9j\nkVp4yQNwCNcFAACgPoB0M9YIX7p0qamkYAPGsQDH4roAAADUB5Buxhrh8BamOQCOxXUBAM7L9Ukb\n9jQbT/fEohwN7kXVF92jPoB0M1oSNTQ0aPHixXrppZe0Z88ePfHEExo7dqz27t2r+fPn67vf/a4C\ngYDJLGEYY2AA7+G6BZBJIs3tmvfKPuPpVo0p0eBexpMFUsZ9PPsYezv6pk2bNG7cOL3wwgsqLy9X\nW1vbkWX9+/fXtm3b9OCDD5rKDmnCnIeA93DdAgDgXdzHs4+xJ+ELFy7UiSeeqNraWrW2tmr16tWd\nll988cV68sknTWWHNGEMDOA9XLcAAHgX9/HsY+zPLS+//LJmzJih4uLi474l/ZRTTtGuXbtMZZcR\nIhEpGMxRJOJ0JJ+JN+ehG+OFN2X6uWT39jFXKQAA5oTDUk1NrsJhe/LjPp59jPZ56NGjR8xlu3fv\njrs8G3mt64nX4oV7Zfq5lOnbBwBAJgsGc1VdXahgMNfpUJChjHVHHzVqlNauXauZM2ces6ylpUVP\nPvmkysvLTWWXEbzW9cRr8cK9Mv1cyvTtAwAgkwUCbZKaDn0C5hlrhN9888362te+ph/84AeaPn26\nJGnXrl2qra3Vvffeq4aGBlVVVZnKLiN4bfoDr8UL98r0cynTtw8AgEzm90t+Pw1wpI+xRvi4ceP0\nwAMPqLKyUitWrJAkXX/99YpGoyouLlZ1dbXOP/98U9kBAAAAAOA5RucJv/LKK3XZZZfphRde0Pbt\n29Xe3q7Pfe5zGjdunPr06WMyKwAAAAAAPMdoI1ySevbsqcsuu8x0sgAAAAAAeB6v7rVBrOmKMn2a\nJsAtrF5rXJMAAMDuKcqQfZJ+Et6vX7/jzgcej8/n0969e5PN0rMOT1cktXR6WVOs7wGYZfVa45oE\nAACHpyiTmnhBG9Ii6UZ4ZWVlwo3wbBVruiKmMQLsYfVa45oEAABMUYZ0S7oRPmfOHJNxZLRY0xUx\njRFgD6vXGtckAABgijKkG2PCAQAAAACwCY1wAAAAAABsQiMcAAAAAACb0AgHAAAAAMAmrm2Eb9u2\nTRMmTNDkyZP1/e9/3+lwAAAAAABImWsb4cOGDdPatWv1zDPPKBqNauPGjU6HBAAAAABASlzbCM/N\nzT3y/z169JDf73cwGgAAAAAAUpf0POFf+MIX5PP5EvqNz+dL6In2mjVrtGjRIp1xxhk64YQTEg3R\nsyIRKRTKUVlZu4qLnY4GwNG4PgEAAPUBpCLpRvgFF1yQcCM8UZMmTdKkSZNUWVmpZ599Vpdddtlx\n1wuFQmmNw247dgxQbW2BLrmkWUOG7HE6HCAlZWVlTodgVCiUo3Xr8iW1KBBodzocAADgAOoDSEXS\njfClS5eajOMYzc3NKigokCT17dtXRUVFMdfNtEr+wIFS//6H/7LWz+lwABylrKxdUsuhTwAAkI2o\nDyAVSTfC0622tlZLliyRz+fTGWecoXHjxjkdkm2Ki8Vf1ACX4voEAADUB5AK443wlpYW/e1vf9O+\nffvU3n7siXnBBRdYSmfy5MmaPHmy6fAAAAAAAHCMsUZ4NBrVokWLtGzZMh04cCDmeh999JGpLAEA\nAAAA8BRjjfBf/OIXqqqq0owZMzRmzBj90z/9kxYuXKji4mJVV1crLy9Pt912m6nsAACAx+080KoP\nDprvznliUY4G93LtiDsAQJYzdodasWKFpk2bpl/84hdHnnaPGjVKY8eO1dVXX62LL75Y//u//6ux\nY8eayhIAAHjYBwfbdVNdo/F0q8aUaHAv48kCAGBEjqmE3nvvvSMN7JycjmQ//fRTSVKPHj101VVX\n6fHHHzeVHQAAAAAAnmOsEV5SUqKmpiZJHVOKFRQUKBwOH1neo0cPxoMDAAAAALKasUb48OHDtWnT\npo5Ec3J0zjnn6MEHH1Q4HNa7776rRx55JOPm8wYAAAAAIBHGGuFXXnml3njjjSNPw+fPn6+GhgaN\nHDlSo0aN0vbt2zV//nxT2QEAAAAA4DnGXsx2zTXX6Jprrjny74qKCr388stas2aNcnNzdfHFF+uM\nM84wlR0AAAAAAJ5jrBH+7rvvasCAASoqKjry3emnn67rr79eknTw4EG9++67OuWUU0xlCQAAAACA\npxjrjj5q1Cg99dRTMZevWbNGo0aNMpUdAAAAAACeY6wRHo1G4y5vbW2Vz+czlR0AAAAAAJ5jrBEu\nKWYjOxKJqLa2VqWlpSazAwAAAADAU1IaE37XXXdp8eLFkjoa4LNmzdKsWbOOu240GtXpTzZrAAAg\nAElEQVQNN9yQSnYAAABAUnJ90oY9zWlJ+8SiHA3uZexVSwAyXEqlxbnnnqvvfe97kqRf/epXuuii\ni455A7rP51OvXr00evRoTZs2LZXsAAAAgKREmts175V9aUm7akyJBvdKS9IAMlBKjfDx48dr/Pjx\nkqQDBw7ouuuuUyAQMBIYAAAAAACZxli/mfvuu89UUgAAAAAAZCSjL2ZraGjQrFmzNHz4cJWWlurF\nF1+UJO3du1c33nijgsGgyewAAAAAAPAUY43wTZs26aKLLtILL7yg8vJytbW1HVnWv39/bdu2TQ8+\n+KCp7AAAAAAA8BxjjfCFCxfqpJNOUjAYVFVV1THzhl988cX685//bCo7AAAAAAA8x1gj/OWXX9aM\nGTNUXFx83PnCTznlFO3atctUdgAAAAAAeI7RMeE9evSIuWz37t1xlwMAAAAAkOmMNcJHjRqltWvX\nHndZS0uLnnzySZWXl5vKDgAAAAAAzzHWCL/55pv1/PPP6wc/+IE2bdokSdq1a5dqa2s1bdo0NTQ0\n6Ec/+pGp7AAAAAAA8Bxj84SPGzdODzzwgCorK7VixQpJ0vXXX69oNKri4mJVV1fr/PPPN5UdAAAA\nAACeY6wRLklXXnmlLrvsMj3//PPasWOH2tvb9bnPfU7jxo1Tnz59TGYFAAAAAIDnGG2ES1LPnj01\nZcoU08kCAAAAAOB5xhvhL774otauXat33nlHknTqqadqwoQJGjt2rOmsAAAAAADwFGON8AMHDui6\n667TunXrFI1GVVJSIkl6+umndf/99+viiy/Www8/rN69e5vKEgAAAAAATzH2dvRbb71Vf/jDH/Tj\nH/9Y27dv15tvvqk333xT27dv180336za2lrNmzfPcnqvvvqqJkyYoEmTJmnu3LmmwgQAAAAAwDHG\nnoSvXLlSM2bM0M9+9rNO359wwgmaO3eudu/erZUrV6qqqspSeqeeeqpWr16tgoICzZo1S9u2bdPw\n4cNNhQsAAOAaOw+06oOD7cbTbW6LGk8TAJAaY43w9vZ2jRw5MubykSNHatWqVZbTKy0tPfL/eXl5\nys3NTSk+AAAAt/rgYLtuqms0nu6i8r7G0wQApMZYd/RLL71Ua9eujbl87dq1uvTSSxNOd/Pmzdq7\nd6+GDRuWSngAAAAAADjO2JPwn/zkJ7ruuut01VVXaebMmRoyZIgkafv27Vq2bJnef/993X777frw\nww87/e7oJ95dNTY26pZbbtGjjz4aN+9QKJT6BgBIi7KyMqdDAAAAAFzDWCP8/PPPlyRt3bpV69at\n67QsGu0Yj1RRUXHM7z766KPjptfW1qZZs2bp9ttv14ABA+LmTSUfAAAAAOAFxhrhlZWV8vl8ppLT\nqlWrtGHDBs2fP1+StGDBAgUCAWPpAwAAAABgN2ON8Dlz5phKSpI0ffp0TZ8+3Wia6RaJSKFQjsrK\n2lVc7Hw6AOB2bizv3BgTAJhAXRVwB2MvZkNHYbRuXb5CodR2q6l0AMDt3FjeuTEmADCBuirgDsae\nhEMqK2uX1HLo0/l0AMDt3FjeuTEmADCBuirgDjTCDSoulgKB1AsjU+kAgNu5sbxzY0wAYAJ1VcAd\n6EMCAAAAAIBNaIQDAAAAAGATGuEAAAAAANiERrgLRSJSMJijSCT1tMJhqaYmV+Gwu+ICkPmslBlu\nLFesxuTG2AEgHlPlMuUkkBoa4S5kctqHYDBX1dWFCgZzXRUXgMxnpcxwY7liNSY3xg4A8Zgqlykn\ngdTwdnQXMjntQyDQJqnp0Kd74gKQ+ayUGW4sV6zG5MbYASAeU+Uy5SSQGhrhLmRy2ge/X/L7U2+A\nS0xHASAxVsoMN5YrVmNyY+wAEI+pcplyEkgNjfAERSIdXWvKytpVXNx5WTjc0f07EGiT3999Wg0N\nUn19nioqWjV0qLU8ACBZVsoWU+tYZaXctLtMpAwGkKhcn7RhT7PxdE8sytHgXuaq6xs3SvX1+aqo\naNHo0cmnY7KcpMxFNqIRnqDDY1uklmP+snd4/LXUZOnpc319nhYvLlJl5UENHdpqKQ8ASJaVssXU\nOlZZKTftLhMpgwEkKtLcrnmv7DOebtWYEg3uZS69+vp8LVhQpIULpdGjW5JOx2Q5SZmLbEQjPEHx\nxrYkOv66oqJVlZUHVVHR2ul7xs8ASAe7xwJaYaXctLtMpAwGkKkqKlq0cGHHZypMlpOUuchGNMIT\nFG9sS6Ljr4cOVacn4FbyAIBk2T0W0Aor5abdZSJlMIBMNXp0ak/ADzNZTlLmIhsxX0AMJuc1bGiQ\nli/PU0ODtTxirR9vzu9YaTFPOIBEbNkiLVuWry1b7MkvVnl3NDvK43TlZ0Wm5wcg/ayW3cGgtGRJ\nvoLB2OtYKSOslKUAYqMRHoPJeQ0Pj/2ur+/c8SBWHrHWjzfnd6y0mCccQCLq6vK1aFGR6urybckv\nVnl3NDvK43TlZ0Wm5wcg/ayW3X/+c77mzSvSn/8cez0rZYSVshRAbFw5MZgcn5Lo2O9Y68cbOxkr\nLeYJB5CIMWNaNG9ex6cdYpV3R7OjPE5XflZken4A0s9q2X3eeS1atKjjMxYrZYSVshRAbFnTCE90\n+oP9+6Vw2KdBg2R5uoRYU+2UlkrDh7ertNRaHkVFUt++URUVdV6/d2/J74+qd+9j8441nibWeMtk\npoNgzA7gTlav51jTIh5txAhpxIj4lTir+VlZL1Z5dzSr5bGV/GK9i+Nobh2DbmoaH8pyIPOcfLJ0\n9tltOvnk+Ou1tEjt7R2fsXz4obRtW45KSlIrSwHEljV90RLtfpdMN+5Yv0m0q3ii6SSD7ohA5rB6\nPZvqPmg1PyvrWSlrrZbHmV6uZfr2AUie1fIhGOzojh4Mxu6OTldzIP2y5upKtPtdMt24Y/0m0a7i\niaaTDLojApnD6vVsqvug1fysrGelrLVaHmd6uZbp2wcgeVbLh0Cgozt6IBD7UThdzYH0y5pGeKLd\n7xKdbizebxLtKp5oOsmgOyKQOaxez6a6D1rNz8p6Vspaq+Vxppdrmb59AJJntXyoqOh+jnC6mgPp\nlzWN8FjjtRMdY2dqTJ7ptBLNw468AbfgfO9gaj/EKk/Txe78rOK8yj47D7Tqg4Pp+UNIc1s0LekC\nR9uypeNN6mPGtGjEiOOvY6XMpfwDUpM1jfDDYwqlpk5PVA6PoZFaLP0FMdH17Uor0TzsyBtwC873\nDqb2Q6zyNF3szs8qzqvs88HBdt1U15iWtBeV901LusDRDk9lNm9e7JdwWilzKf+A1GRNI9zUOGuv\njcuOlQdjC5FNON87mNoPJqc+dGN+VnFeAfAaK1OZWSlzKf+A1GRNI9zUOGuvjcmLFa/J7aBLEtzO\na9dtupjaD/GmS0yHZN7RYQcr+5PyEYCblJRIAwe2q6Qk9jpWylzuq0BqmOfEQZky3UymbAcAa7jm\nrWNfAXCTZKbgBWBe1jwJd6NM6cqTKdsBwBqueevYVwDcxK3De4BsQyPcQZnSlSdTtgOANVzz1rGv\nALiJW4f3ANkm4/rHRSJSMJijSMTpSADAXSgfASAzUb4D3uLqRviuXbs0duxYDRo0SO3t1p4kMP4O\nAI6P8hEAMhPlO+Atru6OfsIJJ+j3v/+9vvWtb1n+DePvAOD4KB8BIDNRvgPe4upGeEFBgQoKChSN\nRi3/hvF3AHB8lI8AkJko3wFv8USfFZ/PZ3uejK0BAG+h3AaA+CgnAXdw9ZNwq0KhkPE0d+wYoNra\nAl1ySbOGDNljPH0gW5SVlTkdArLE4TGRUgtPhADgOCgnAXfwRCM8Go3G7ZKejkr+wIFS//45Kitr\nV3FxP+PpAwDMYkwkAMRHOQm4g6u7o7e2tuorX/mKtmzZounTp+u1116zLe/DY2uKi23LEgCQAspt\nAIiPchJwB1c/Cc/Ly9OqVaucDgMAAAAAACN8jY2N1l89DgAAAAAAkubq7ugAAAAAAGQSRxvhr776\nqiZMmKBJkyZp7ty5nZbddddduvDCCzV16lTdd999DkUIAAAAAIA5jjbCTz31VK1evVpr1qzRhx9+\nqG3btnVafscdd2j16tW64YYb0hpHOqY4I2/yJu/43BZPIojdfl6NW/J27JJ74yeuxBBXYojLHC/G\nLHk3bsm7sXs1binx2B1thJeWlqqgoEBSx0vYcnNzOy1fsGCBrrjiCm3atMmJ8AAAAAAAMMoVY8I3\nb96svXv3atiwYUe+mz17tv74xz/q3nvvVWVlpYPRwc0iESkYzFEk4u083Jg3kKpwWKqpyVU4bE9+\nXC8AYkmkfIhEpB07BhxZl7IFgGmOT1HW2NioW265RY8++min70tKSiRJQ4YMkc/ni5uGia4L2dpN\n2Ot579gxQLW1BbrkkmYNGbInLXknm4fX8zalrKzM9jzhDsFgrqqrCyU1ye9vS3t+oVCO1q3Ll9Si\nQKA97fkB8I5EyodQKEe1tQXq3z9HgUA7ZQsA4xxthLe1tWnWrFm6/fbbNWDAgE7LPv74Y/Xp00d7\n9+5VW1v8yluqlfxQKORYQ4G8UzNwoNS/f47KytpVXNwvLXknk0cm5A2kKhBok9R06DP9ysraJbUc\n+gSAzyRSPpSVteuSS5qPrEvZAsA0Rxvhq1at0oYNGzR//nxJ0vz58/XEE0/o7rvv1vz587Vt2zZF\no1EtWLDAyTDhYsXFSvtfpe3Iw415A6ny+2XLE/DDuF4AxJJI+VBcLA0ZsufIH78pWwCY5mgjfPr0\n6Zo+fXqn78rLyyVJVVVVToQEAAAAAEDauOLFbAAAAAAAZAMa4QAAAAAA2IRGOAAAAAAANqERDgAA\nAACATWiEI2WRiBQM5igSycy8ndw+wO7zL9PzA+BeJsuDcFiqqclVOJx6WgBgGo1wpCwUytG6dfkK\nhew/nezI28ntA+w+/zI9PwDuZbI8CAZzVV1dqGAw10BkAGCWo1OUITOUlbVLajn0mXl5O7l9gN3n\nX6bnB8C9TJYHgUCbpKZDnwDgLjTCkbLiYikQcKYCbUfeTm4fYPf5l+n5AXAvk+WB3y/5/TTAAbgT\n/f8AAAAAALAJjXAAAAAAAGxCd3QAAADA4z5ubldb1Hy6eTlS73ye2wEm0QgHAAAAPC74YbPu37rf\neLo3j+qjLw7sYTxdIJvRCAcAAAA87mBrVB8cNP+iyxbenQkYR98SeEIkIgWDOYpE0rN+MmnF+j4c\nlmpqchUOp563kzJlO5xg8vwzKRyWgsHT4h5TK7E3NEjLl+epoSH1mNy6rwDYr2t5cPS/4y1LJm2r\ny5LJyxTKRyBz0QiHJ4RCOVq3Ll+hkLVTNtH1k0kr1vfBYK6qqwsVDOamnLeTMmU7nGDy/DMpGMzV\nsmXxj6mV2Ovr87R4cZHq61PvTOXWfQXAfl3Lg6P/HW9ZMmlbXZZMXqZQPgKZi+7o8ISysnZJLYc+\nza+fTFqxvg8E2iQ1Hfr0rkzZDieYPP9MCgTaNHNmswKBgpjrWIm9oqJVlZUHVVHRmnJMbt1XAOzX\ntTw4tnyItyyxtK0uSyYvUygfgcxFIxyeUFwsBQLWb0KJrp9MWrG+9/slv9/7DddM2Q4nmDz/TPL7\npUDgbfn9ZTHXsRL70KHS0KGpN8Ct5gcgO3QtD7r+O96yRNO2uiyZvEyhfAQyF/1bAAAAAACwCY1w\nAAAAAABsQiMcwP9n787jmyjzP4B/kh5QoKQX5QiXpQGxC1QJKym7IFDkRgERFRWWS45V12Upi1qq\nIEtB3epPOaSy4gK6iCjIUbQFxJ+2IAHKctaUCvIrh0BpgHL0SH5/1IYmaZJJM5lcn/frxatkZvJ8\nv3M8z+RJZuYhIiIiIiKJsBNOREREREREJBF2womIiIiIiIgkwk44+SW9HtBq5dDrracXFcVYTSdr\ntrYhSUvM/cDjXxge+0S+z1499pY67i15EJH02Aknv6TTyZGdHQKdTm41PScn1Go6WbO1DUlaYu4H\nHv/C8Ngn8n326rG31HFvyYOIpMdxwskvqVQGABW//TWfnpxcbjWdrNnahiQtMfcDj39heOwT+T57\n9dhb6ri35EFE0mMnnPySQgGo1dYnNYUCiIu7DIUi0gNZ+RZb25CkJeZ+4PEvDI99It9nrx57Sx33\nljyISHq8/oWIiIiIiIhIIuyEExEREREREUmEnXAiIiIiIiIiibATTkRERERERCQRdsKJiIiIiIiI\nJMJOOPklvR7QauXQ691XlrPTpcrXWZ6MTY6JuX8KC4HvvlOhsFCaeDy2iMhdLNsXZ1/bK0vKvIko\nMLETTn5Jp5MjOzsEOp3rh7itspydLlW+zvJkbHJMzP2TlxeMN99siLw826NTSlF3iIhcZdm+OPva\nXllS5k1EgYnjhJNfUqkMACp+++uespydLlW+zvJkbHJMzP2j0VRi9uxKaDTSxOOxRUTuYtm+OPva\nXllS5k1EgYmdcPJLCgWgVotzgrNVlrPT6xNDCp6MTY6JuX/i4wGjUYf4eJUk8XhsEZG7WLYvzr62\nV5Y7sV0kIoCXoxMRERERERFJRvAv4UajEceOHUNBQQGuXLkCmUyG6OhodOzYEQkJCZDJZO7Mk4iI\niIiIiMjnOeyEf/fdd1i3bh2ysrJw48YNGI1Gs/kymQxNmjTBoEGDMG7cOPTp00dw8AMHDuDll1+G\nXC7HAw88gIULF5rmXbhwAVOnTkV5eTnmzp3rVLlERERERERE3shmJzwnJwcLFy5Efn4+OnfujGee\neQaJiYlo3749IiIiYDQaUVpaijNnziA/Px+7d+/Go48+im7duiE1NRX9+/d3GLxt27bYsmULQkND\nMXXqVJw4cQKdO3cGAGRkZCA1NRUJCQl4/PHH2QknIiIiIiIin2ezE/7ss8/imWeewYoVK9CpUyeb\nBfz+97/HmDFjAAAFBQVYtWoVnn32WRQXFzsM3qxZs7uJBAcjKCjI9Pr48ePo0aMHACA8PBw3btxA\nkyZNHK8RERERERERkZey+WC2I0eOYPHixXY74JY6deqEJUuW4L///a9TSRw9ehRXrlxBx44dTdMM\nhrtPjgwPD4der3eqTKofvR7QauWoa3Pbm+criosBrbYdBHxHFPCc3d/+cHwIodcDRUUxkq1ncTGw\neXOQKMesWLn7+7729/Uj8hTLumXZJtU139fqojM5++L6EZE4bP4SHh0dXe9CnXlvaWkp5syZg48/\n/thsulx+9/uB69evQ6FQ2CxDp9M5n6QbyvCH2EVFMcjJCUVycjni4i4LnidGbClote2QmdkQwG2o\n1Wckjw941/62x9n9bWt5lcr2cFi+SKeTIycnFNHRckmGmdFqg7ByZfUxq1RWuVSWWLnrdHJkZ4cA\nqPDLoXb8ff2IPMWyblm2SXXN97W66EzOvrh+RCQOj44TXlVVhalTp+KNN95ATEyM2byEhATs378f\n9913n8NL0V39kK/T6TzWUfC22LGxQHS0HCqVAQpFpOB5YsSWQqNGAHAbvXuHQqmUPr637W97nN3f\nYh4f3kylMiA5uRwqlTQfmNTqKlR/aeRaBxwQL/fq91dItg2k5u/rR+QplnXLsk2qa76v1UVncvbF\n9SMicTjVCV+3bh3Wrl2LM2fOoLS0tM4npZ87d05weZs2bcKhQ4cwb948AEBaWho2bNiAxYsX44UX\nXsC0adNw584dzJ0715k0yQUKBWx+G2tvnq9QKgG1+oxHOuC+xtn97Q/HhxAKBRAXd1myLxqUSrj8\nC3gNsXL3933t7+tH5CmWdcuyTaprvq/VRWdy9sX1IyJxCO6Ev/rqq1i2bBlatWqFBx54AE2bNnU5\n+OjRozF69GizaWq1GgDQqlUrfPXVVy7HICIiIiIiIvIWgjvha9euxcCBA7Fu3Tqz+7WJiIiIiIiI\nSBinetMPP/wwO+BERERERERE9SS4Rz148GDk5ua6MxciIiIiIiIivya4E7548WKcP38eL730Eg4c\nOIALFy7g0qVLVv+IiIiIiIiIqG6C7wkPCwvD/fffj6VLl1qN6V1bSUmJKImR7ygurh7LWK2uglIp\nbWy9vnqczephsRxP93eBut5S0uurx0SPjYXL27iwEMjLC4ZGU4n4eNvxuE+JyB9Ztqf2Pk94si1k\nO0xEYhPcCZ81axbWrl2LHj16oHv37qI8HZ38g1YbhJUrGwK4LdpQSkLpdHJkZ4cAqDAb5sPWdH8X\nqOstJZ1OjpycUERHy13exnl5wViyJAwpKbcQH19pMx73KRH5I8v21N7nCU+2hWyHiUhsgjvhmzdv\nxtixY7F8+XJ35kM+SK2uAnD7t7/SUqkMACp+++t4ur8L1PWWkkplQHJyuSjbWKOpRErKLWg0dXfA\na+JxnxKRP7JsT+19nvBkW8h2mKRwrqwSF2+Jc4zdahiLG5fLAQDNw+Ro1Vhwl48kIniPhISEmMbw\nJqpNqYTkv4DXUChQ57fStqb7u0BdbykpFEBc3GUoFJEulxUfD5u/gNeOx31KRP7Isj2193nCk20h\n22GSwsVbBryUWypiiXcAABlJEWjVWMRiSRSCH8w2atQoZGVluTMXIiIiIiIiIr8m+JfwESNGYO7c\nuRg9ejTGjRuH1q1bIygoyGq57t27i5ogERERERERkb8Q3AkfPny46f+7d++2mm80GiGTyfh0dCIi\nIiIiIiIbBHfCly5d6s48iIiIiIiIiPye4E74U0895c48iIiIiIiIiPye4AezlZWV4ezZszbnnz17\nFjdv3hQlKfIPxcXA5s1BKC42n67XA0VFMdDrradrtXKr6fbm2YtR1/K2YttjLy93s7censop0NXn\nGLJXlqP9KGQZW/XA0rFjwM6dnXDsmDTxiCiwFRYCa9YEo7Cw+rWjtsOVc5tl2fX5TFF7vtB2nudj\nIqoPwZ3wl19+2e6v4ePGjUNqaqooSZF/0GqDsHJlQ2i15g/w0+nkyMkJhU4nt5qenR1iNd3ePHsx\n6lreVmx77OXlbvbWw1M5Bbr6HEP2ynK0H4UsY6seWMrNDcGCBWHIzQ2RJB4RBba8vGAsWRKGvLzq\nCy8dtR2unNssy67PZ4ra84W28zwfE1F9CL4cfffu3Rg3bpzN+cOGDcMnn3wiSlLkH9TqKgC3f/t7\nl0plQHJyOVQqg9V0oMJqur159mLUtbyt2PbYy8vd7K2Hp3IKdPU5huyV5Wg/ClnGVj2wlJRUgdTU\nKiQlSROPiAKbRlOJlJRb0GgqAThuO1w5t1mWXZ/PFLXnC23neT4movoQ3Am/ePEiWrZsaXN+8+bN\nceHCBVGSIv+gVAJKpfWJVqEA4uIuQ6GItJquVtd9ErM1z16Mupa3Fdsee3m5m7318FROga4+x5C9\nshztRyHL2KoHlhISgNDQAqhUKkniEVFgi48H4uMrTa8dtR2unNssy67PZ4ra84W28zwfE1F9CL52\nJiYmBidPnrQ5/+TJk1AoFKIkRUREREREROSPBHfCBwwYgNWrV+PQoUNW8w4ePIjVq1djwIABoiZH\nRERERERE5E8EX44+d+5cZGdnY8CAARgwYAA6d+4MADh+/DhycnIQGxuLV155xW2JEhEREREREfk6\nwZ3w5s2bY/fu3UhLS8O2bduwY8cOAEB4eDgef/xxpKWloXnz5m5LlIiIiIiIiMjXCe6EA0BsbCyW\nL18Oo9GIy5cvA6i+V1wmk7klOX+h11cPYaFSGcDb5n0P9x/VVjN+bGwsfO548OXcicg7iHlOZJtE\nRIGqXoMaymQyNGvWDM2aNWMHXACOIenbuP+oNjHHCZeaL+dORN5BzHMi2yQiClQ2W721a9eisrLS\n1mybqqqqsHbtWpeS8jcqlQEDBnAMSV/F/Ue1iTlOuNR8OXci8g5inhPZJhFRoLLZCV+wYAESExOx\nePFiFBQUOCyooKAA6enp6NatG9544w1Rk/R1NWNI8lIr38T9R7XdHT/W05k4z5dzJyLvIOY5kW0S\nEQUqm/eEHzp0CMuXL8eKFSuwePFitGjRAomJiWjfvj0iIiJgNBpRWlqKM2fOID8/HxcuXEBMTAym\nT5+OadOmSbkORERERERERD7BZie8UaNGmDVrFl588UVkZWVh+/bt+PHHH7Fjxw4YjUYA1feGd+jQ\nAf369cOQIUMwcOBABAUFSZY8ERERERERkS9x+HT04OBgDB8+HMOHDwdQfc/31atXAQBRUVGQy/kw\nDSIiIiIiIiIhnBqiDACCgoIQExPjjlyIiIiIiIiI/Bp/xiYiIiIiIiKSCDvhJLniYkCrbYfiYtfL\n0usBrVYOvd71sryRv69foJN6/+r1QFFRjKTxHK0fj3Ei3+KozrpSp6VqD9juEJGnsRNOktNqg5CZ\n2RBaresP8dPp5MjODoFO55+Hsr+vX6CTev/qdHLk5IRKGs/R+vEYJ/ItjuqsK3VaqvaA7Q4ReZrT\n94QTuUqtrsKUKeVQq0NdLkulMgCo+O2v//H39Qt0Uu9flcqA5ORySeM5Wj8e40S+xVGddaVOS9Ue\nsN0hIk9jJ5wkp1QCavUZKJUql8tSKAC12n9Pov6+foFO6v2rUABxcZehUERKFs/R+vEYJ/Itjuqs\nK3VaqvaA7Q4ReRqvwyEiIiIiIiKSiFO/hJeWluLzzz/H6dOnUVpaCqPRaDZfJpPh/fffFzVBIiIi\nIiIiIn8huBO+c+dOjB8/HmVlZQgPD0dERITVMjKZzKngFy5cwNixY/HTTz+huLgYcvndH+bT09Ox\ndetWREZGYvDgwZgxY4ZTZRMRERERERF5G8Gd8FdffRWxsbFYs2YNEhISRAkeFRWFr776Ck8//XSd\n8xcuXIg+ffqIEouIiIiIiIjI0wTfE15UVITnnntOtA44AISGhkKhUFhd1l4jLS0NI0eOxJEjR0SL\nSUREREREROQpgjvhHTp0wI0bN9ySRF2XsU+bNg3ffvst3n77baSkpLglbiDQ6wGtVg693j3L16es\n4mJAq22H4mJxytq8OciqLFvL6/VAUVGMU+vnyW1Ijtk6BtylPseQK4Ssn9BjrlIrBYwAACAASURB\nVLAQ+O47FQoLpYlHRL7BmTqdnw8sXx6C/Py632uvLMv2xbI9ZdtCRIFC8OXor7zyClJSUjB69Gi0\nb9/ejSlVq7nnPC4uzuG95jqdzuV4YpThjbGLimKQkxOK5ORyxMVddhjb0fJixNZq2yEzsyGA21Cr\nz4hSVvW442ccLl8zHbgqeP2c3SbObnMpeSK2SuX6UHT2aLVBWLmy+nhSKqvcGgsAdDo5cnJCER0t\nl2SIGyHrp9PJkZ0dAqDCbk55ecF4881ghIZWIj6+0u3xiMg3OFOn8/JCkJYWhtdfBxITK6zea68s\ny/bFsj1l20JEgcJmJ3zWrFlW0yIjI/Hggw+id+/eUCqVCAoKMpsvk8nw1ltvOZ2E0Wi0uiT9+vXr\nCA8Px5UrV1BVZf+Dtasf8nU6nds7Cp6KHRsLREfLoVIZrMYGriu2veXFit2oEQDcRu/eoYLHCrdX\nVqNGMqjV5mXZWj42FgCuomfPSMHr5+w2cXabS8WTsd1Jra5C9Rc67u+AA4BKZUBycjlUKmk+IApZ\nv+pcKhzmpNFUYvbsSmg00sQjIt/gTJ3WaCrw+uvVf+t6r72yLNsXy/aUbQsRBQqbnfB//etfNt+U\nk5NT53RnO+GVlZV47LHHcOzYMYwePRqpqan47LPPsHjxYsybNw8nTpyA0WhEWlqa4DLJnEIBp75N\ndnb5+pSlVAJq9RnBHXBHZdX1a52t5RUKIC7uslNfMHhyG5Jjto4Bd6nPMeQKIesn9JiLjweMRh3i\n423XPTHjEZFvcKZOJyZW/wJu6732yrJsXyzbU7YtRBQobHbCr1696v7gwcHYtGmT2bTu3bsDADIy\nMtwen4iIiIiIiEhKgh/MdvbsWdy6dcvm/Fu3buHs2bOiJEVERERERETkjwR3wrt164atW7fanJ+V\nlYVu3bqJkhQRERERERGRPxLcCbc1lneNyspKh08xJyIiIiIiIgpkgjvhQN3jeQOAXq9HTk4OmjVr\nJkpSRERERERERP7Ibic8PT0dUVFRiIqKgkwmw9SpU02va/+75557sGHDBowePVqqvAOSXg9otXLo\n9Z7OxD0KC4E1a4JRWCh9bHvb1tY8Z/eHXl89hri/7j+6S+ixIWQ5sZYBgOJiQKtth+JiaeIRkWeI\nWUeLi4HNm4NsthuWsWov78m2gu0UEXkzm09HB6qfVD5p0iQAwIcffoi+ffuiQ4cOZsvIZDI0btwY\niYmJGDFihPsyJeh0cmRnhwCo8MshPPLygrFkSRhSUm4hPr5S0tj2tq2tec7uD51OjpycUERHy/1y\n/9FdQo8NIcuJtQwAaLVByMxsiEaNZDaHIRMzHhF5hph1VKsNwsqVDQHcrrPdsIxlvrzRY20F2yki\n8mZ2O+EDBgzAgAEDAABlZWWYOHEi1Gq1JImRNZXKAKDit7/+R6OpRErKLWg00nbAAfvb1tY8Z/eH\nSmVAcnK53+4/ukvosSFkObGWAQC1ugpTppRDrQ6VJB4ReYaYdVStrgJw+7e/jmPVXr5JE4iWh7PY\nThGRN7PbCa9t2bJl7syDBFAo4Nff5sbHQ/JfwGvY27a25jm7PxQKIC7uMhSKyHrnSb5B6LEhZDmx\nlgEApRJQq89AqVRJEo+IPEPMOqpUwuaVM3XFslzeU20F2yki8mY2O+GffvppvQp88skn650MERER\nERERkT+z2QmfMWOG1bSap6NbDldW+6np7IQTERERERER1c1mJ/zw4cNmr/V6PaZPn47IyEhMnjwZ\n8fHxAIDCwkJkZmZCr9dj+fLl7s2WiIiIiIiIyIfZ7IS3bdvW7PWMGTMQGxuLjRs3mv3ynZCQgBEj\nRmDUqFFYtmwZ7x0nIiIiIiIiskHwg9m2bduG1NRUsw54DZlMhqFDh+KNN94QNTkiIiIiIiLyPufK\nKnHxlngPQLzVMBY3LpejeZgcrRoL7qb6JMFrZzQaUVBQYHP+yZMnre4VJ+9VXAxote3QqFH1k0xr\nFBZWj9et0VTitzsOBM0Tg15fPa6nSmWAQiFsnrPT6xObfF/18R4EtbrK7HivD70eKCqKQWwsXD5W\nhBx3Qupdfj6QlxcCjaYCiYnS5E5E0nLlPFVYCHz3nQoyWfVIJJZtYu3XgPk8y7iOXhNR4Lh4y4CX\ncktFLvUOMpIi0KqxyMV6GbnQBYcOHYqPPvoI7733HsrKykzTy8rK8N5772H16tUYMmSIW5Ik8Wm1\nQcjMbAitNshsel5eMJYsCUNenvX3M/bmiUGnkyM7OwQ6nfVhaWues9PrE5t8n1YbhJUrrY/3+tDp\n5MjJCRXlWBFy3Ampd3l5IUhLC0NeXojDeGLlTkTScuU8lZcXjDffbGhqRyzbxNqvLedZxnX0moiI\nHBPcm0pPT8eZM2cwb948vP7662jevDkA4OLFi6iqqkLPnj2xaNEityVK4lKrqzBlSjnU6lCz6RpN\nJVJSbkGjsR6v2948MahUBgAVv/0VNs/Z6fWJTb6v+ted26ZfeVyhUhmQnFwuyrEi5LgTUu80mgq8\n/nr1X0fxxMqdiKTlynlKo6nE7NmV0GiqX1u2idZt5N3/W8Z19JqIiBwT3AlXKBTYvn07tm3bhpyc\nHJw9exYA8PDDD2PAgAEYPHhwnfeLk3dSKgG1+gyUSpXZ9Ph4ID6+7g/79uaJQaEA1Oq6T+K25jk7\nvT6xyfcplYBS6XoHHKg+VuLiLkOhiBSlLEfHnZB6l5gIJCba74DXxBMrdyKSlivnqfh4wGjUIT6+\n+pxv2SZav777f8u4jl4TEZFjTl9XPHToUAwdOtQduRARERERERH5Nd7AQ0RERERERCQRm7+EDxs2\nDHK5HF988QWCg4MxfPhwh4XJZDJ89dVXoiZIRERERERE5C9sdsKNRiMMhrv3+BgMBof3fHOIMiIi\nIiIiIiLbbHbCt23bZvc1ERERERERETmH94QHKL0eKCqKgV7v3Hu0WrnVe4qLgc2bg1Bc7HpOdZVP\n5GuE1gkhx7yY9aI+9Z6IfI9lu+Go7ttrZ5xtg3guJyJyTHAnfNiwYVi0aBH27NmDmzdvujMnkoBO\nJ0dOTih0OuHfw+h0cmRnh1i9R6sNwsqVDaHVBrmcU13lE/kaoXVCyDEvZr2oT70nIt9j2W44qvv2\n2hln2yCey4mIHBM8RFlVVRXeffddLFmyBCEhIejatSs0Gg2SkpKg0WgQERHhzjxJZCqVAcnJ5VCp\nhI/tWb1shdV71OoqALd/++taTnWVT+RrhNYJIce8mPWiPvWeiHyPZbvhqO7ba2ecbYN4Licickxw\nJzwrKwvl5eXQarXIy8vD3r178fHHH+P999+HXC5Hp06d0KtXL7z55pvuzJdEolAAcXGXoVBEOvUe\ntdr6pKpUAkqlax1we+UT+RqhdULIMS9mvahPvSci32PZbjiq+/baGWfbIJ7LiYgcE9wJB4DQ0FAk\nJSUhKSkJQPWv4+vXr8c777yDEydO4OTJk+yEExEREREREdngVCfcYDAgPz8fP/zwA3Jzc7Fv3z6U\nlpaiRYsWGDVqFDQajbvyJCIiIiIiIvJ5gjvho0aNwv79+1FWVob27dsjKSkJCxYsQK9evdC+fXs3\npkhERERERETkHwR3wnfv3g25XI6RI0di5MiRSEpKQlRUlDtzIyIiIiIiIvIrgjvhGzduRG5uLnJz\nczF58mSUl5ejU6dOpnvEk5KS0LJlS3fmSkREREREROTTBHfC+/Xrh379+gGA2VPS8/LysGHDBty4\ncQPt27fHwYMH3ZZsoNDrq8fZVKkMUCjcF6OoKAaxsTCLIUVsIm8l5PgvLga02nZo1Kj6KehERDVs\nnVulil3TfgE8lxMReTN5fd4UGhqK6OhoREVFISIiAo0bN4bRaMTp06dFTi8w6XRyZGeHQKer1+4R\nHCMnJ9QqhhSxibyVkONfqw1CZmZDaLVBEmZGRL7A1rlVqtg17RfP5URE3k3wL+GHDx82XY6+d+9e\nXLlyBUajEe3atcNDDz0EjUZjGrqMXFP9LXaF6dtsd8VITi63iiFFbCJvJeT4V6urMGVKOdTqUOkS\nIyKfYOvcKlVs8/aL53IiIm8luBP+0EMPQSaT4d5778Ujjzxi6nTzPnDxKRSAWu3eE6dCAcTFXYZC\nESl5bCJvJeT4VyoBtfoMlEqVRFkRka+wdW6VKnbt9ovnciIi7yW4E/7pp5+iZ8+eiIiIcGc+RERE\nRERERH5LcCd80KBB7syDiIiIiIiIyO959IkdFy5cQJ8+fdCyZUsYDAareSNGjMCgQYOwZ88eD2VI\nREREREREJB6PdsKjoqLw1VdfQa1WW83LyMhAamoqvvjiC7z55pseyI6IiIiIiIhIXIIvR3eH0NBQ\nhIaGwmg0Ws07fvw4evToAQAIDw/HjRs30KRJE6lTJCIiIiIiIhKNVwwgKZPJrKbVvjw9PDwcer1e\nypREpdcDWq0clqtQXAxote1QXOyZnIqKYqxycvSeutbD1nQxY5N/EfMYEHL8CT1Gi4uBzZuDXK6T\nQuM5W3eIyL/Ya3MctUfOtB+WbS7bHiIiz/LoL+H2yOV3vx+4fv06FAqFzWV1Op3L8cQow5aiohjk\n5IQiObkccXGXTdO12nbIzGwI4DbU6jNui28vJ+CqWU5C3mO5HramixlbbO7c34xtTqWyHspLp5Mj\nJycU0dFyl4fR0enkyM4OAVBhsywhywCAVhuElSur66RSWeXWnJxZjoj8k702x1F75Ez7Ydnmsu0h\nIvIsr+iEG41Gq0vSExISsH//ftx3330OL0Wv60O+M3Q6nctl2BMbC0RHy6FSGczGDm3UCABuo3fv\nUMnHHI6NBYCr6NkzUvB4prbWw9Z0MWOLyd37m7EdU6kMSE4uh0rl+oe/6jIq7JYlZBkAUKurUP2l\nWP074M7EE7ocEfkne22Oo/bImfbDss1l20NE5Fk2O+Fdu3at8zJxe2QyGfLz8wUvX1lZicceewzH\njh3D6NGjkZqais8++wyLFy/GCy+8gGnTpuHOnTuYO3euU3l4G4UCdX7TrFQCavUZyTvgNTnFxV12\nqhNsaz1sTRczNvkXMY8BIcef0GNUqYRLv4A7G8/ZukNE/sVem+OoPXKm/bBsc9n2EBF5ls1OeK9e\nvZzuhDsdPDgYmzZtMpvWvXt3AECrVq3w1VdfuTU+ERERERERkZRsdsKXL18uZR5EREREREREfs8r\nno5OREREREREFAicfjBbRUUFfvrpJ1y7ds1sGLEavXr1EiUxIiIiIiIiIn8juBNuNBqxYMECZGZm\noqyszOZyJSUloiRGRERERERE5G8EX47+zjvvICMjA6NHj8aKFStgNBrx2muvISMjA507d0aXLl3w\n5ZdfujNXIiIiIiIiIp8muBO+du1ajBgxAu+88w6Sk5MBAN26dcP48eOxa9cuVFVV4fvvv3dbokRE\nRERERES+TnAn/P/+7//Qp0+f6jfJq992584dAECDBg0wduxYfPrpp25IkYiIiIiIiMg/CO6ER0RE\n4Pbt2wCApk2bIjQ0FMXFxab5DRo04P3gRERERERERHYI7oR37twZR44cqX6TXI4HHngAq1atQnFx\nMc6ePYvVq1dDpVK5LVEiIiIiIiIiXye4Ez5mzBgUFBSYfg2fN28eCgsL0aVLF3Tr1g2nTp3CvHnz\n3JYoERERERERka8TPETZuHHjMG7cONNrjUaDvXv3IisrC0FBQejfvz86dOjgliSJiIiIiIiI/IHg\nTvjZs2cRExODsLAw07T27dtj+vTpAIBbt27h7NmzaNOmjfhZEhEREREREbngXFklLt4yiF5uw8ZR\nTi0vuBPerVs3fPDBBxgzZkyd87OysjB58mQ+nI2IiIiIiIi8zsVbBryUWyp6uf+4v4FTywu+J9xo\nNNqdX1lZCZlM5lRwIiIiIiIiokAiuBMOwGYnW6/XIycnB82aNRMlKSIiIiIiIiJ/ZLcTnp6ejqio\nKERFRUEmk2Hq1Kmm17X/3XPPPdiwYQNGjx4tVd5EREREREREPsfuPeHdu3fHpEmTAAAffvgh+vbt\na/UEdJlMhsaNGyMxMREjRoxwX6ZEREREREREPs5uJ3zAgAEYMGAAAKCsrAwTJ06EWq2WJDEiIiIi\nIiIifyP46ejLli1zZx5EREREREREfs+pB7MVFhZi6tSp6Ny5M5o1a4Y9e/YAAK5cuYKZM2dCq9W6\nJUkiIiIiIiIifyC4E37kyBH07dsXu3fvRo8ePVBVVWWaFx0djRMnTmDVqlVuSZKIiIiIiIjIHwju\nhL/++uto0aIFtFotMjIyrMYN79+/P/bt2yd6gkRERERERET+QnAnfO/evRg/fjwUCkWd44W3adMG\nFy5cEDU5IiIiIiIiIn/i1D3hDRo0sDnv119/tTufiIiIiIiIKNAJ7oR369YNX3/9dZ3zKioqsHHj\nRvTo0UO0xIiIiIiIiIj8jeBO+KxZs7Br1y688MILOHLkCADgwoULyMnJwYgRI1BYWIi//vWvbkuU\niIiIiIiIyNcJHie8X79++OCDD5CSkoK1a9cCAKZPnw6j0QiFQoGVK1eiZ8+ebkuUiIiIiIiIyNcJ\n7oQDwJgxYzB06FDs2rULRUVFMBgMuOeee9CvXz+Eh4e7K0ciIiIiIiIiv+BUJxwAGjVqhGHDhrkj\nFyIiIiIiIiK/5nQnfM+ePfj666/xyy+/AADatm2LgQMHok+fPqInR0RERERERORPBHfCy8rKMHHi\nRGRnZ8NoNCIiIgIAsG3bNqxYsQL9+/fHRx99hCZNmrgtWX+j1wNFRTGIjQUUCk9nQ0TkndhW+ie9\nHtDp5FCpDNyvREQUUAQ/Hf3VV1/FN998g7/97W84deoUfv75Z/z88884deoUZs2ahZycHKSmproz\nV7+j08mRkxMKnc6p4dqJiAIK20r/pNPJkZ0dwv1KREQBR/Av4V9++SXGjx+Pl19+2Wx6VFQUXnnl\nFfz666/48ssvkZGRIXqS/kqlMiA5uRwqlcHTqRAReS22lf6pen9WcL8SEVHAEfz1s8FgQJcuXWzO\n79KlC4xGoyhJBQqFAoiLu8zL8IiI7GBb6Z8UCkCt5qXoREQUeAR3wh9++GF8/fXXNud//fXXePjh\nh0VJioiIiIiIiMgfCe6Ez549G8XFxRg7dixycnJQVFSEoqIiZGdn4/HHH8f58+fxt7/9DZcuXTL7\nR0RERERERETVBN8T3rNnTwDA8ePHkZ2dbTav5jJ0jUZj9b6SkhK75b788ss4dOgQEhMTsWjRItP0\n9PR0bN26FZGRkRg8eDBmzJghNFUiIiIiIiLyQUEy4NDlcreUXV7lHbdPC+6Ep6SkQCaTiRr88OHD\nuHnzJrKysjBr1izk5+cjMTHRNH/hwoUcf5yIiIiIiChA6MsNSN1/zS1lL+jR1C3lOktwJ3zu3Lmi\nB9dqtejbty8AoE+fPvjxxx/NOuFpaWmIjIzE/Pnz7T4UjoiIiIiIiMgXeHRwTr1ej/DwcACAQqGA\nXq83zZs2bRq+/fZbvP3220hJSfFUih6h1wNarRy1NgcRkc9hW0bO4PFCRESBQvAv4e7QtGlTXL9+\nHQBw7do1KGqNUxIREQEAiIuLc3gZvE6nczkXMcoQK3ZRUQxyckKRnFyOuLjLksaWEmMHRmyVSiV5\nTPIOOp0c2dkhACqgVnMsaLKPxwsREQUKj3bCe/TogY8//hiPPPII9uzZg3HjxpnmXb9+HeHh4bhy\n5QqqqqrsluPqh3ydTuexjkJdsWNjgehoOVQqAxSKSEljS4WxAys2BSaVygCg4re/RPbxeCHyXufK\nKnHxVv3q5q2Gsbhh4yFbzcPkaNXYo90Rp7myLezxlgeGkTQ8etR369YNoaGhGDx4MLp164b7778f\nc+bMweLFizFv3jycOHECRqMRaWlpnkxTcgoF+CsAEfk8tmXkDB4vRN7r4i0DXsotdaGEO3VOzUiK\nQKvGLhTrAa5vi7p5ywPDSBoe/+opPT3d7PXixYsBABkZGZ5Ih4iIiIiIiMhtPPpgNiIiIiIiIqJA\nwk44ERERERERkUQ8fjk6ERERERGRWMR4eJqtB8rxAWokBnbCiYiIiIjIb4j38DTrB8rxAWokBl6O\n7kF6ffWY4Hq9+fTiYmDz5iAUF7seo7AQWLMmGIWFrpel1wNardwqXyKi+hKzvRNCSDsmtK2TOnex\nuLMtt1e25fnIcll77+X5h4iI/Ak74R6k08mRkxMKnc58N2i1QVi5siG02iCXY+TlBWPJkjDk5bl+\n0YNOJ0d2dohVvkRE9SVmeyeEkHZMaFsnde5icWdbbq9sy/OR5bL23svzDxER+RNeju5BKpUBycnl\nUKnM71lRq6sA3P7tr2s0mkqkpNyCRlPpclnVeVZY5UtEVF9itndCCGnHhLZ1UucuFne25fbKtjwf\nWS5r7708/xARkT9hJ9yDFAogLu4yFIpIs+lKJaBUivOhLj4eiI93vQMOVOerVvMDEBGJR8z2Tggh\n7ZjQtk7q3MXizrbcXtmW5yPLZe29l+cfIqL6CZIBh+p4wJwY+JC6+mMnnIiIiIiIyA/pyw1I3X/N\nLWXzIXX1x5uriIiIiIiIiCTCTjgRERERERGRRNgJJyIiIiIiIpIIO+FEREREREREEgn4TrheDxQV\nxUCvt56u1cqtpjsqy5n32IpdXAxs3hyE4mLhsaVQn21C5A147Faz1eZ4kpB9U1wMaLXtJGsTvbUN\n9gWW266wEFizJhiFhY73NespEREFioDvhOt0cuTkhEKnk1tNz84OsZruqCxn3mMrtlYbhJUrG0Kr\nDRIcWwr12SZE3oDHbjVbbY4nCdk3Wm0QMjOlaxO9tQ32BZbbLi8vGEuWhCEvL9jhvmY9JSKiQBHw\nQ5SpVAYkJ5dDpTJYTQcqrKY7KsuZ99iKrVZXAbj921/vUZ9tQuQNeOxWs9XmeJKQfaNWV2HKlHKo\n1aGS5OStbbAvsNx2Gk0lUlJuQaOpRLNmgL19zXpKRESBIuA74QoFEBd3GQpFpNV0tdq5DwLOvsdW\nbKUSUCq978NffbYJkTfgsVvNVpvjSUL2jVIJqNVnoFSqJMnJW9tgX2C57eLjgfj4StNre/ua9ZSI\niAIFr/kiIiIiIiIikgg74UREREREREQSYSeciIiIiIiISCLshBMRERERERFJhJ1wIiIiIiIiIokE\nTCe8sBBYsyYYhYWuLV9cDGzeHITiYuHv0esBrVYOvd58en4+8M039yI/3/XYtmLYek9xMaDVtquz\nLGfZik1E0hBaBwsLge++U9ltB+21MzXy84Hly0Os2q765KXVAkuXhkCrdS1vobkLWUbMNk2vB4qK\nYkQrS+q21lH+ltvz2DEgMzMEx45Vv87LA957LwR5edb72vI4srd+PM8QEZE/CZhOeF5eMJYsCUNe\nnrBR2Wwtr9UGYeXKhtBqgwS/R6eTIzs7BDqd3GL5ELz2WiPk5YW4HNtWDFvv0WqDkJlZd1nOshWb\niKQhtA7m5QXjzTcb2m0H7bUzd8sJQVpamFXbVZ+89u0LQWpqGPbts12WkLyF5i5kGTHbNJ1Ojpyc\nUNHKkrqtdZS/5fbMzQ3BggVhyM0N+W1+9f7VakOs9rXlcWRv/XieISIifxIw44RrNJVISbkFjabS\n8cJ2llerqwDc/u2vsPeoVAYAFb/9rb18BV57zQCNpspiuvOxbcWw9R61ugpTppRDrQ61Xnkn2YpN\nRNIQWgc1mkrMnl0Jjcb2MvbambvlVOD116v/uprXgw9WYMGC6r+u5C00dyHLiNmmqVQGJCeXi1aW\n1G2to/wtt2dSUgVSU6v/Vs+v3r9qdQVCQmC2ry2PI3vrx/MMERH5k4DphMfHA/Hxwjrg9pZXKgGl\nsu4Pb7beo1AAarX1B4fERKBx45NQqVQux7YVw9Z7lEpArT4DpVJlNc9ZtmITkTSE1sH4eMBo1CE+\n3na9t9fO1EhMBBIT7XfAhealVld30OwRkjcgLHchy4jZpikUQFzcZSgUkaKUJXVb6yh/y+2ZkAAk\nJNzdnxqN+Zc1tfe15XFkb/14niEiIn/C67qIiIiIiIiIJMJOOBEREREREZFE2AknIiIiIiIikgg7\n4UREREREREQSYSeciIiIiIiISCJ+1wnX6wGtVg693ntiFxYCa9YEo7DQPeUTEQlRXAxote1QXGx7\nGbHaKxLOl9p2Z3OtvfyxY0BmZgiOHXNvjkRERN7O74Yo0+nkyM4OAVAh+XAmtmLn5QVjyZIwpKTc\ncmqYNKHlExEJodUGITOzIRo1ktkcpkus9oqE86W23dlcay9/6FAQFiwIQ2qq+TBmRBS4gmTAocvl\nopdbXmUUvUwiMfldJ1ylMgCo+O2vd8TWaCqRknILGo1rH2g9uW5E5PvU6ipMmVIOtTrU5jJitVck\nnC+17c7mWnv5sDADUlOBpCR2wImomr7cgNT910Qvd0GPpqKXSSQmv+uEKxTw2C8JtmLHx0OUX5Q8\nuW5E5PuUSkCtPgOlUmVzGbHaKxLOl9p2Z3OtvbxCwV/AiYiIAD+8J5yIiIiIiIjIW8lKS0t50wQR\nERERERGRBPhLOBEREREREZFE2AknIiIiIiIikgg74UREREREREQSYSeciIiIiIiISCLshBMRERER\nERFJhJ1wIiIiIiIiIomwE+4BN27cQHFxMW7cuOHpVCTF9Q6s9baF20N63ObS88dtfvDgQY/GP3Hi\nBH766SezaVqt1kPZ3JWfn49Lly6hqqoK27Ztw65duzydUp0yMzM9nYKZ48ePY+PGjR4/rgDgwoUL\nAACj0YitW7fin//8JzZu3IjKykqP5rV9+3bcvHnTozkEGn9su71doG7zgBsnfNmyZZgxYwaOHDmC\nlJQUyGQyVFVVIS0tDUlJSW6NvWfPHrz55psIDw9HeHg4rl+/jhs3bmDWrFl46KGH3Bqb6x1Y6w14\ndt3r4untUV/eth2dwW0uPV/d5rUZDAaraUajEaNHj8amTZs8kBHwyiuvPFOK+QAAIABJREFU4NKl\nSwgODsaVK1ewdOlSxMTEYPjw4diyZYtHcgKAP//5zzAajWjQoAEuXbqEli1bomnTprh06RLeffdd\nj+U1ePBgq2knTpxA586dkZWV5YGMqo0ePRobN27EsmXLsGfPHgwcOBB79+6FUqlEWlqax/KqOY7m\nzJmDsLAw9O7dG0eOHMGhQ4ewevVqj+V17733ok2bNmjWrBmGDRuGIUOGICIiwmP5COGr7bcvt93c\n5tITY5sHXCe8pqEdOXIk3n77bcTFxeHKlSt46qmn8PXXX7s19qBBg/DFF1+gUaNGpmllZWUYNWqU\n22NzvQNrvQHPrntdPL096svbtqMzuM2l56vbvLaWLVtCrVbDaDRCJpMBqO6EHzt2DD///LNHcho8\neLCp83j06FHMmTMHb7zxBubNm+fRTviQIUOwfft2AEBSUhJyc3MBAMOGDcPWrVs9ltfSpUtx9OhR\nPPXUU/jjH/8IAHjsscfw+eefeywn4G7dHjJkCLZu3Qq5vPqCzEGDBmHHjh0ey+uRRx7B5s2bTX9r\neHo/1sQ/ffo0tmzZgh07dqBBgwYYMmQIJk+e7LG87PHV9tuX225uc+mJsc0D7nL0q1evYs+ePbh6\n9Sri4uIAANHR0aYPGu4UGhqKY8eOmU07fvw4GjRo4PbYXO/AWm/As+teF09vj/rytu3oDG5z6fnq\nNq+tY8eOWLt2LbZu3YotW7Zgy5Yt2Lp1K7p16+axnAwGA8rLywEAv/vd77Bu3TosWrQIJ0+e9FhO\nAFBVVWX6f2pqqun/RqNnf9+YOXMm3n33Xfz000+YOHGi6YsCTysoKMBzzz2H06dP486dO6bpt2/f\n9mBWwJNPPonnn38eSqUSU6dOxccff4zZs2fj/vvv92heNdq3b4/nn38e27Ztw4oVKxAcHOzplGzy\n1fbbl9tubnPpibHNvbcWu8mwYcOQl5eHQYMGobS0FBEREbh+/To6d+7s9tgrV65ERkYG5s+fD4PB\nALlcjoSEBKxYscLtsbnegbXegGfXvS6e3h715W3b0Rnc5tLz1W1e2/r16xEWFmY13ZO/ov7jH/+A\nXq9Hs2bNAAARERH49NNPPXZ5fI133nkHVVVVCAoKMl0CXl5ejpkzZ3o0L6D6A+6kSZMwfvx4/Oc/\n/8Hvfvc7T6eEnJwc0/9rOpI3btzAK6+84qmUAABPPPEE+vTpg507d+LSpUuorKzEs88+iy5dung0\nr5deeslqWmxsLCZMmCB9MgL5avvty203t7n0xNjmAXc5OhEREREREZGnBNzl6LbMmTPHY7FTUlI8\nFpvrHVixvSG+JW/LRyhfzRvwbN1zBbc5EZFv8tX221fzBnw3d1/NG3Aud/4SjuphO6ZMmSJpzOPH\nj+PEiRO455578MADD/h17AsXLqBFixYwGo3Ytm0bfvrpJ7Rr1w6PPPKI2+9r8mTs7du346GHHjJ7\n4ISUPB2/LidOnEBQUBA6duxomqbVaqFWqz2YlWN15b1//3706NHDg1kJk5+fD6VSiaioKOzYsQNh\nYWHo16+fp9NyyFfzrosnzjFERJ6Sn5+PH3/8EXq9HgqFAj169PCa++uddeDAAXTv3t3TadSLL+Tu\nq58LAdc/GwZcJ9yTw3bYGpqjdevWmDdvnt/G9uTQH56M7emhRTwd35K3DjHkiK/mDXjv8EmO+Gre\ngPcODUVEJIW5c+eivLwcffr0gUKhwLVr17Bnzx4EBwcjPT3d0+nZ5I1DMwrlq7n78ucrMXIPyAez\neWrYjponu27dutU0NMfEiRMxaNAgv45dMwTJyZMnTUN/9OvXD8OGDfPr2PHx8WZDi4wbN07SoUU8\nHd/SwYMHzYYYGj9+PN544w3J83CWr+YNAEVFRWbDJ61ZswYAJDn+XeGreQOePceQ95k+fTp++OEH\n/Pe//7W73KJFi7BkyRJcvXpVoszqLzIyEhMnTsTbb79d7zJu3ryJ+++/H6mpqXj66adFzM6+K1eu\noEuXLvj3v/+N5ORkyeIGkvz8fKsvHIcPH17nF5TeRKlU2hya0dv5au6+/PlKjNwDrhM+c+ZMlJeX\nY82aNfjoo4/w2GOPSRbbcmiOmqfPSjE0hydjWw790atXLxw9elSSS5M8GbtGzdAizz//PH799VfJ\nh4rxdPwaNUMMhYaGmoYYmjp1qseHGHLEV/MGvHf4JEd8NW/As+cYEld2djYOHDiAv//97/UuQyaT\nCRqyRuhyUhFj3e1Zvnw5QkJC8MQTT7ilfFuio6PxzDPPYOHCheyEu8n999+Pv/zlL+jbty/Cw8Nx\n/fp17Nmzx6NDHApRMzSjQqEwm/7oo496KCPhfDV3X/58JUbuAXc5em2VlZX4z3/+g8LCQrz22mtu\nj/fLL7+Y/t+yZUuEhITgxo0byMvLw4ABA/w2NgCcP3/eNPRH06ZN8fvf/16yoT88FXvnzp3o37+/\n2+N4a3xLBw4cQNu2bU1DDAHVna1NmzZh9OjRHszMPl/NG6i+DLpjx44ICgoyTSsvL0dOTg6GDBni\nwczs89W8LUl9jiFxzZ49G6tWrUJJSUm9y5gxYwZ++OEHHD582O5y6enpWLJkiUuxxGRv3V39Jbyy\nshKdO3fG5MmTPfIApoKCAvTs2RObN29G7969JY8fCA4fPgytVgu9Xo+mTZuiR48eXt8Jv3DhAqKi\nohAaGmo2vbKy0qvHZQd8N3df/nwlRu4B3QknIiIiqgs74e7phG/ZsgXjx49HXl4eOnXq5Gqq9ZKU\nlIQuXbrggw8+8Eh8IiIOUUZEREQ+bdGiRYiMjERBQQEmT56Mtm3bon379njppZdQVlZmtfyuXbsw\ndOhQtG7dGq1bt8Zjjz2GI0eOmObPmDEDH374IYDqTmdkZCSioqJw9uxZAMC6devw6KOPolOnTmje\nvDm6d++OjIwM0W+ZcJQnUH3feYsWLXD+/Hk89dRTaN26NeLj45GammqVz9WrVzF16lS0bdsW7dq1\nw4wZM3DkyBFERkbi008/FbTuNbZt24akpCQ0b94cGo0GO3fuFLRO27dvR4sWLersgF+8eBF/+ctf\nkJCQgObNm6Nr16548cUXTfvwk08+QWRkJL7//nukpKQgPj4e7dq1wwsvvICKigpcu3YN06dPR/v2\n7dG+fXu8+uqrdebQt29fZGVl+cQtLkTkn7z3GgUiIiIiAWrup544cSKUSiXS0tJw5MgRrF69GufO\nncP69etNy27YsAHPPfcc+vXrh7S0NNy5cwcff/wxhgwZgt27dyM+Ph4TJ07EhQsX8O233yIzM9PU\nWYuJiQEArFq1Cp06dcLDDz+Mhg0bYs+ePZg/fz6uX78u2ogjtvIcOnQodu3ahfj4eNO61zwJWa1W\n44033sC3336LpUuXIi4uDn/6058AVD9TYezYsTh48CAmTZqEjh07IisrC9OnTze7H93RugPAvn37\nsGPHDkycOBFNmjTBBx98gPHjx+Po0aMOR+H48ccfkZiYaDX9119/Rb9+/XD16lVMmDAB9957L86f\nP4+tW7eipKQEjRs3Ni07d+5cNG/eHHPnzoVWqzXdD3vo0CG0bNkSaWlp+Oabb7Bs2TJ07twZ48aN\nM4uVmJiI5cuX49ixY/jd737n5J4hInIdO+FERETkF1q3bm3W4Y6NjcVbb72FPXv2oE+fPrh58yZS\nUlLw9NNP43/+539Myz3zzDNQq9VYsmQJVq5cCbVajQ4dOuDbb7+t8+F627dvR8OGDU2vJ06ciL/8\n5S/IzMzE3LlzERIS4tJ6CM2zRkVFBUaNGoW//e1vAIAJEyagT58+WLNmjakTvmXLFuzfvx8LFy7E\njBkzAACTJk3CI488Yhbb0boDgE6nw759+9C+fXsAwB/+8Af84Q9/wOeff2539I2qqir8/PPPGDhw\noNW8tLQ0XLx4EdnZ2WYPT63rvvHY2FjTiAOTJk1CUVERli5divHjxyMjIwMAMH78eHTt2hVr1661\n6oS3b98eRqMRBQUF7IQTkUfwcnQyU3NJnyPr1q1DZGSk1eVp3qhLly4YM2aMy+X06tUL//jHP0TI\nSLiKigokJCTgX//6l6RxybcIrbf1NX36dHTt2lXQspGRkVi8eLGgZVk3SUwymQxTpkwxmzZt2jQY\njUZ8/fXXAKov79br9Rg9ejRKSkpM/yorK6HRaPC///u/gmLVdMANBgNKS0tRUlKCpKQklJWV4aef\nfnJ5XXbv3u10ns8++6zZa41Gg9OnT5te79q1C8HBwZgwYYLZcpMnT3b6suzevXubOuAAkJCQgPDw\ncLN4dbl69SqMRqPVr+VGoxHbtm3DgAEDHI5eIpPJrDrV3bt3BwCz4c7kcjkSExNx5swZqzJq4l+5\ncsVuLApMzpzz6mPo0KGChtz85ZdfzG4VcSQyMhKzZs1yKbebN2+iU6dOWLt2rUvlOOvKlSto1aoV\ncnJyJI3rSfwlnMz46nAqP/74I3bt2oUZM2agadOmZvPEyHPDhg04c+aM6dcDqYSEhGDGjBl46623\n8PTTT1s9+ZIIcH99lMlkkMvr950t6yZJKS4uzux1VFQUIiIiTCOEFBUVwWg01jl0j0wmM3sivz15\neXmYP38+Dh48iPLycrMyrl275sIaVDt16pRTeYaEhCA2NtZsWkREBEpLS02vz549i9jYWDRq1Mhs\nOcttJoRSqbSaZhnPHstO/+XLl3H9+nV07txZ0Ptbt25t9rqmbbHMq2nTpnXmVBPfmz7HkDikHFrQ\nlfLre07l8IH+g51w8gv79u3DkiVLMG7cOKsP+mJ477338Mgjjzi8180dnn76acyfPx+fffaZ2bf8\nRFJ57733YDAY6vVe1k3yJgaDATKZDMuXL0eLFi3qVcbp06cxcuRIxMfHIz09HUqlEg0aNMDhw4fx\n2muv1buuuJJnfT/Q15etLysc/aIeFRUFmUwmuLPubPy6pteVU0386Ohol/Ig7/PNN99g1apVbuuk\nimHTpk31fq8716+yshIrVqzA5MmTPTK02cSJE7Fy5Up89913ATF8IDvhRA4cPnwYR44cEe1hO85S\nKBTo27cv1q1bxw/65BFBQUGCfyGUEusmWTp16pTZL7slJSUoLS1F27ZtAQD33HMPjEYjoqOj0adP\nH7tl2folLCsrC+Xl5Vi/fr3ZL6+OLsV2hjN5CtWmTRt89913uHnzptmv4adOnbJa1l2/AsrlcnTo\n0MHqEvGYmBiEh4fj+PHjbolr6cyZM5DJZOjYsaMk8Yhq89axu7OysnDlypU6r8CRQqdOndC5c2es\nW7cuIDrhvCdcYmVlZXj11VfRrVs3NG/eHPHx8Rg2bBjy8vLMljt48CDGjBmDtm3bomXLlhg8eLDV\nPWDODMmSlZWFJ554wjTsR5cuXTBv3jzcuXNH1PVzJu/CwkJMnz4d7dq1Q9u2bTFz5kzcvn3bbNnb\nt28jJSUFHTp0QJs2bfDUU0/h3LlzZvedpqenmz6Ed+3a1TScyg8//GBW1t69e9G/f3+0aNECiYmJ\n+M9//iNonbZt24bg4GD88Y9/tJp37do1pKamIjExEc2bN8d9992HKVOm4MKFCwCA77//HpGRkfj8\n88+Rnp6O++67D61bt8YzzzwDvV6PiooKvPzyy+jYsSNat26N6dOn17lP+vbti3379vH+NQ/xh3p7\n/PhxREZGYsuWLaZphYWFiIyMhFqtNlt26tSpZvfD1XV/XHl5OebOnYv4+Hizulkb6yZJyWg0IjMz\n02za8uXLIZPJTA8C69evHxQKBd5++21UVFRYlVF7P9Y8jVuv15stU/OFVO1fvO/cuWP2oDRXOZOn\nM2VWVlbio48+Mk0zGo348MMPrTrdttZdDA8++CDy8/PNpslkMgwbNgw5OTk4ePCg6DEt5efno0mT\nJkhISHB7LLLNl4cW3LFjByIjI3H48GGz/CIjIzFq1CizZQcPHmx2D/jQoUMxfPhws2X0ej2mT59u\nNnygZf3j8IH+xTu/ivFjL730Er766itMmTIFnTp1QmlpKQ4cOICjR49Co9EAqP5w+Nhjj6Fr166Y\nM2cOQkJCsH79eowaNQqbNm1Cr169ADg3JMu6devQsGFDTJs2DU2bNsX+/fuxbNkynDt3zlShXVWf\nvO+55x689tprOHz4MP79738jNjYWaWlppjKnT5+OzZs3Y+zYsejRowd++OEHPP7442YfGIYPH45T\np05h48aNSE9PR1RUFACYNSKnT5/GhAkT8PTTT+Opp57C2rVrMXPmTNx///11Nja17d+/H506dUKD\nBg3Mpt+8eRNDhgxBQUEBxo0bh8TERJSUlCA7OxtFRUVmlxC+++67CAsLw0svvYSioiKsXLkSL774\nIsLCwnD58mX8/e9/h1arxaeffoq2bdti7ty5ZrESExNhNBqxb98+DBkyxJndQiLwh3p73333ISIi\nArm5uaaTf25uLuRyOYqKivDrr7+a7indu3evKd+anC0/pP/5z3/G559/jjFjxuD3v/89vv/+e9ZN\n1k2PO3fuHMaMGYOBAwfiyJEj+Pe//43k5GTTr8nh4eHIyMjA1KlT0bt3b4wePRqxsbE4e/Ysdu7c\nic6dO2Pp0qUA7u7b2bNnIzk5GcHBwRg8eDD69++PkJAQjB07FhMmTMCdO3ewfv16UX/dciZPoYYN\nG4bu3bsjLS0Np0+fRqdOnZCVlWW6NLt23bW17mFhYS6v25AhQ/DJJ5+goKDArI6npaXh22+/xdCh\nQ01DlF28eBFbt27FunXr0KZNGwCOL3kXYvfu3Rg0aBDvCfcwXx5asGfPnpDJZMjNzUW3bt0A3D2n\n7t+/HwaDAXK5HOXl5Th06BBefPFFq/Wu7cknn8SPP/6IP/3pT+jUqRO2b9/O4QP9fOQCdsIl9s03\n3+DZZ5/FggULbC7z17/+FUlJSfjiiy9M0yZOnIg//vGPWLBgAXbs2GG2vKMhWQDgww8/NBtOZfz4\n8YiLi8PChQsxf/58tGrVyuV1czbvxMREs6FXrly5gjVr1pg64YcPH8amTZvw3HPPIT093VTezJkz\nzS5ZS0hIQNeuXbFx40YMGTLEdKKu7dSpU9i+fTt69uwJAHj00UeRkJCAdevWYf78+XbXS6fT1dko\nvfvuuzh+/DhWr16NESNGmG0HS5WVldi+fbvpQ9rly5exceNG9OvXzzTMysSJE3Hq1CmsW7fO6oN+\nzVNoCwoK+EHfA/yl3j744IPIzc01vc7NzcWAAQPwww8/IDc3F48++iiKi4tx9uxZ05cLdTl69Cg2\nbNiAyZMn48033wRQPUzQtGnTWDfJY2QyGVatWoW33noLCxYsgEwmw4QJE6zq7ciRI9GyZUv885//\nxNKlS3Hnzh20aNECDz74oGk4LwAYMWIEZsyYgY0bN2Ljxo0wGo04fPgwOnTogE8++QTz58/Ha6+9\nhqioKDz55JP4wx/+gJEjR9aZl9D865OnvRi1p8vlcmzYsAFz5szB+vXrIZfLMWTIEMyePRuDBw82\na2tsrXubNm1sPrRK6MOsBg4ciJiYGHz55Zdm97U2b94cO3fuxMKFC/HFF19Ar9ejRYsW6N+/v9m9\n2852nC2XLygowIkTJ7Bo0SKnyiH38cWhBSMiInDvvfciNzcX06dPBwDTefTLL79Efn4+HnjgAWi1\nWty5cwdJSUk2y9q2bZvpYY/PP/88gOpzau3zF8DhA/0NL0eXWNOmTXHgwAGcP3++zvlHjhyBTqez\nGpZEr9fjoYceglarNbtkW8iQLMDd4VSMRiOuXbuGkpISPPjggzAYDGaX0tRXffKuaziVkpIS3Lhx\nAwCwc+dOyGQyTJo0yWy5qVOnOv1NeHx8vOlDPlD9MJb4+HhB9/CVlJTU+e3hli1bcO+991o1knV5\n4oknzH4lqWs4lZrp58+ft7r8kMOpeJa/1NukpCQcO3YM169fB1D9gaF3795Qq9WmS8Rzc3Mhk8ns\nfmDIzs62uw7OYN0kMUVFRSEzMxNnzpzB6dOnkZGRgSZNmlgt17NnT3z22Wf4+eefce7cORw8eBDL\nly83uzVDJpNh4cKFOHnyJK5cuYKSkhLTF0n9+/fHnj17cO7cORw9ehSvvPIK+vTpg5KSErOrSJYt\nW2Z16XVd/v73v9d5DAnJs+bqGCFlRkZGYuXKlfjll19w+vRpLFu2DJcvX4ZMJjP7Us/eupeUlOCt\nt96yinf48GG8//77Dtc1KCgI06dPx9q1a1FVVWU2r2XLlnj//fdRUFCAC//f3p2GRPH/cQB/Tx7k\nkfywNpMutaIyjzUwnZEUOh50GaFB1ANJSiwsgkgQ0Q4DryIttbT0QRRaYlJiB1YuibYZpB2QQmUi\nYU+0VbO01P0/COfvumte63j0fj0cduc7I/tx5jvz/X7fX7+itrYW58+fl+ew7927F62trXKdDjzX\n1tZWqFQqg+2m/ja5ubnw9vY221x7Gp/pHC0oSRK0Wi2AP1O0Xr16hV27dsHFxUW+pj5//hxWVlbw\n9fUdcj+PHz+GhYUFwsPD5W2CIDA+cIbjm3CFJSQk4PDhw/Dw8ICXlxc2btyIPXv2YPny5QD+v0BK\nVFSUye8LgoDW1laDi+VwkSwA8P79e8THx6OyshI/f/402J+54lRGe9yDI0b6C0+n08He3h5NTU0Q\nBAGurq4GnxtLnMrgtvrbG2ucCgA0NDRg27ZtI/q+qdgUAEZvMh0cHKDX69HW1mYwvIhxKpNrptSt\nKIro7e2FVquFu7s7mpqaIEkSvn//jrt37wL4c8OgUqnkczOlvzYHn8OyZctGfUysTSLldHV1GbwJ\n7OvrQ05ODubMmSMPqVVCZGQksrOzkZ+fr+iihi0tLbh58yauX7+uWJs0vOkaLSiKIvLy8lBfX4+W\nlhb8+vULkiRBkiRUVVXhyJEj0Gq18PLyMooGHKipqQlOTk4Gw7oB/PU6PBTGB04f7IQrbOfOnZAk\nCffv38fTp0+Rk5ODixcv4vLlywgJCZEXejlz5ozRQkj9Bt4AjkR7ezu2b98Oe3t7xMfHw9XVFbNn\nz0ZzczMOHTpktjiV0R73WCNOxmI8bTk6Oioap2LquBinMrlmSt36+PjAxsYGVVVV0Ol08o13R0cH\nkpOTodPpoNVqDd5MTzTWJpFyoqOj0dXVBV9fX3R3d6OkpAQvX77EyZMnjdZWmEg2Njaoq6tTrL1+\nc+fOxZcvXxRvl8ZnqkYLSpIEvV6PqqoqtLa2YuXKlXB0dIQoioiLi0Nvby9evHiBsLCwMR3zWDA+\ncPpgJ3wSqFQqhIWFISwsDO3t7di0aRMSExMREhIiv/W1s7Mb8VCp4SJZKioq8O3bN9y4ccNgnqdG\nozHbOY3luIezePFi6PV6NDQ0YMWKFfJ2JeNUgD+LSJkaMuPq6qponAoAxqlMoplQt5aWlvLQ87a2\nNvj5+UEQBPj6+sLS0hKlpaWoq6sb9oahvzY/ffpk8Jv88OGD0WdZm0RTR2BgIDIzM/Ho0SN0d3fD\nzc0NqampRtO+iJQ0XaMFnZ2dsXTpUlRWVkKn08nTuAICAqDT6XDr1i10dHT8dXoX8OeaqtFo0NnZ\nafA2XMlrKuMDlcc54Qrq6+szGu7i4OCApUuXyjEEarUabm5uyMzMlOdGDzR4jsRIIlksLCyg1+sN\nnvLp9XpkZGSYrZhHe9wjsWHDBjk+ZaCcnJwh41TG+wTPFD8/P9TX1xvFEwUHB6Ourk4exjuRampq\nIAgC/Pz8JrwtMjTT6lYURdTW1kKj0cg3BrNnz4ZarUZ6ejoADHvDsGnTJpPnkJ2dzdqkSTHUnGAy\nFBoaivLycjQ2NuLr16+oqqpiB5wm1XSPFhRFEZWVlaiurpavnS4uLliwYAHS0tIwa9asvy50CgCb\nN29Gb28v8vLy5G39fxfGB85cfBOuoI6ODri7u2PHjh3w8PCAg4MDnj9/jidPniAiIgLAnx/7pUuX\nsHv3bvj7+2Pfvn1YuHAhmpub5UUe7t27Z7Df4SJZ/P394ejoiMjISERERMDKygp3797Fjx8/zHZu\nYznu4ajVagQHB+Pq1atoa2uTI8r6nwwO/Mfk4+MDvV6P06dPIzQ0FNbW1ggKCjLLcJatW7ciMTER\nz549w+bNm+XtR48exb1793DgwAE8ffoUarUaOp0Ojx8/Rmxs7LAdmdEMu9doNFi3bt0/MTxnqplp\ndStJElJSUvD582eD36gkSUhLS4ODgwM8PT3/ug9PT0+EhoYiNzdXfqNeUVGBjx8/Gv2uWZtERPQ3\n0zlaUBRFFBQUGC1oKooi7ty5g9WrVw8bDbZlyxb4+/vj9OnTaGxsxKpVq1BaWmqyo834wJmDnXAF\n2dra4uDBgygvL8fDhw/R09ODJUuW4OzZs4iMjJQ/J0kSysrKkJqairy8PHR0dGD+/PlYu3at0Yri\nI4lk+e+//1BYWIjY2FgkJyfDzs4OwcHBCA8PN1jFdeA+x2I0xz1S2dnZcHJyQlFREUpLSxEYGIi8\nvDz4+voaLC6jVqtx6tQpXLt2DVFRUejr60NJSYlRNvNgIzlXDw8PeHt7o7i42OBG39bWFg8ePEBS\nUhJKSkpQUFAAlUqFgIAAgwWqxtM28OdpZ3l5ucnVaGnizbS67R96bm1tbbDCsCiKSE9PH3I++OD9\nZ2ZmYt68eSgsLMSDBw8QGBiI27dvY82aNUZ5w6xNIiIyZbpHC0qSBEEQ4OLiAmdnZ3m7KIooLi42\neb0evH9BEJCfn4+YmBgUFhZCEARs3boVCQkJCAwMNPge4wNnDkGn05l/FSxSRFJSElJSUlBfX/9P\nDcF78+YNgoKCcPXq1SFzEs2tqKgIx44dw9u3b4d9omluGRkZyMrKQk1NjaIL59DE+FfrdqKwNomI\npideD6eeCxcuIDc3F69fvx7xqvPmEh0djerqarOuWTWVcU44TWkDs5X7Xb58GRYWFsMOKTWnkJAQ\nuLi4ICsrS7E2AeD379+4cuUKTpw4wZt8IhNYm0REROYRGRmJnp515t/xAAAAx0lEQVQe5OfnK9pu\nf3xgXFycou1OJg5HpyktPT0dtbW1WL9+PSwtLVFWVoYnT55g//79Rjm+E62iokLR9gDAysoK7969\nU7xdoumEtUlERDR+jA9UDjvhNKX5+flBo9Hg3Llz6OzsxKJFixATE4Pjx49P9qERERERERGNGueE\nExERERERESmEc8KJiIiIiIiIFMJOOBEREREREZFC2AknIiIiIiIiUgg74UREREREREQKYSeciIiI\niIiISCHshBMREREREREp5H9xxoMMlFOYrgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data_temp = pd.DataFrame(iris.data, columns=iris.feature_names)\n", "data_temp['target'] = iris.target\n", "data_temp['target'] = data_temp['target'].astype('category')\n", "data_temp['target'].cat.categories = iris.target_names\n", "pd.scatter_matrix(data_temp, figsize=(15, 15))\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Dimensionality Reduction: PCA\n", "\n", "Principle Component Analysis (PCA) is a dimension reduction technique that can find the combinations of variables that explain the most variance.\n", "\n", "Consider the iris dataset. It cannot be visualized in a single 2D plot, as it has 4 features. We are going to extract 2 combinations of sepal and petal dimensions to visualize it:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X, y = iris.data, iris.target\n", "from sklearn.decomposition import PCA\n", "pca = PCA(n_components=3)\n", "pca.fit(X)\n", "X_reduced = pca.transform(X)\n", "plt.scatter(X_reduced[:, 0], X_reduced[:, 1], c=y, cmap=cmap)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\njAnPstvtZGdnM3To0AbPDxs2TEq5+YHKykpcLheRkZHeDsVtXC4X77//PjU1NWRmZjZ6rV8nsAce\neICrrrqKYcOGeTsUt1u8eDHJyckkJyezZs0aVq1ahV6v93ZYbtPUMmPCs0pKSnA6nVLKzU899NBD\n9O7d+7wf9P5gx44dJCcnExcXxwMPPMDbb79Nt27dGr3H5z45mlq26l//+he//PILjz32mLdDbpLm\nluO68cYb+fbbb1m9ejWdOnXitttuw2q1erEFZxeIZcZa0iYhLrSHH36YTZs28dZbb/nt/OvpOnfu\nzPr16/nqq6+48847mTp1Krt27Wr0Hp+bAystLaWkpKTRa5KSknjggQf497//3eCNczqdaDQaMjMz\n+fTTTz0darM0pV3JyckYjcYznrfb7XTo0IHnnnuOG2+80VMhtkhz23V6mbGmVmq50FryXvnrHJjd\nbicxMZHFixczevTo+uf/3//7f+zcuTNgDpYNtDmwWbNm8Z///IePP/44oObFTzdmzBhSUlJYsGDB\nOa9x60Zmd2hq2aq//vWv3HvvvQ2eGzhwIH//+98ZOXKkp8JrseaU4/o1l8uFqqrU1ta6OarW83SZ\nMW9ozXvlb/R6PX369GHdunUNEtjatWsZM2aMFyMT5zJz5kxWrVoV0MkL6j73zveZ53MJrKkSEhJI\nSEg44/l27dqRmprqhYjcY//+/Xz44YcMGTKEmJgYCgoKeO655wgKCmLEiBHeDq/FTpYZq66u5p13\n3qGqqoqqqiqgLmH46/xeUVERhYWF5Obmoqoqu3btoqysjPbt2/vNxHpWVhZTp06lb9++DBgwgMWL\nF1NYWMjtt9/u7dBapbq6mn379qGqKi6Xi0OHDrFt2zbMZnOD4uP+5MEHH+Tdd9/lnXfeITw8vH6e\nMiQkhJCQEC9H13Jz5szh6quvJikpiaqqKlasWMF3333HihUrGr3P54YQWyMqKop//OMffr2MvqCg\ngPvvv58tW7ZQXl5ObGwsl156KX/+859JT0/3dngttn79+jPel7OVGfM3Tz75JE899dQZcxALFy70\nq+GqJUuW8MILL1BYWEi3bt2YN28eAwYM8HZYrbJ+/Xquv/76M96byZMns3DhQi9F1Tpms/ms810z\nZ85k5syZXojIPaZPn8769espKioiPDycHj16cN99952xOvbXAiqBCSGEaDt8bhWiEEII0RSSwIQQ\nQvglSWBCCCH8kiQwIYQQfkkSmBBCCL8kCUwIIYRfkgQmhBDCL0kCE0II4ZckgQkhhPBL/x+G8LA/\nabXTOAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X, y = iris.data, iris.target\n", "from sklearn.manifold import Isomap\n", "pca = Isomap(n_components=3)\n", "pca.fit(X)\n", "X_reduced = pca.transform(X)\n", "plt.scatter(X_reduced[:, 0], X_reduced[:, 1], c=y, cmap=cmap)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(150, 3)" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_reduced.shape" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAbAAAAEWCAYAAAAHC8LZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xd4lGX28PHvMy2TSZ30kJAQSOjSXCIoAoIFdKUICNhW\nUVcgi7qr7yKu7Iqyov7EgoIVXFyFXVFcLOhaABVxAUsAaQktgQBJCOmZybTn/SMQiEBImWFKzue6\nuC5n8jyTczswZ+52bqWsrExFCCGE8DMabwcghBBCtIQkMCGEEH5JEpgQQgi/JAlMCCGEX5IEJoQQ\nwi9JAhNCCOGXJIEJIYTwSx5JYBs2bGDy5Ml0794ds9nM8uXLG70+Pz8fs9nc4E9UVBRr1qzxRHhC\nCCECgM4TL1pdXU2PHj2YPHky06ZNa9I9iqKwcuVKevToUf+c2Wz2RHhCCCECgEcS2FVXXcVVV10F\nwPTp05t0j6qqREZGEhsb64mQhBBCBBifmgO79dZbycjIYMSIEaxatcrb4QghhPBhHumBNVdoaChz\n585lwIABaLVaVq9ezZQpU3jllVeYMGGCt8MTQgjhg3wigUVFRZGVlVX/uE+fPpSWlvLCCy9IAhNC\nCHFWPjWEeLp+/fqxb98+b4chhBDCR/lsAtu6dSvx8fHeDkMIIYSP8kgCq66uZtu2bWzduhWXy8Wh\nQ4fYtm0bhw4dAmDOnDmMHj26/vrly5fz3nvvkZOTw549e3jxxRdZsmQJ99xzjyfC81m5ubneDsEj\nArFdgdgmkHb5k0BsU3N5ZA7s559/5vrrr0dRFADmzZvHvHnzmDx5MgsXLqSwsJC8vLwG9zzzzDMc\nOnQIjUZDeno6CxcuZPz48Z4ITwghRADwSAIbNGgQpaWl5/z5okWLGjyePHkykydP9kQoQgghApTP\nzoEJIYQQjZEEJoQQwi9JAhNCCOGXJIEJIYTwS5LAhBBC+CVJYEIIt3OpKgU2G4U2m7dDEQFMEpgQ\nwq1cqsqn5eUM3LmTIbt3s7mqytshiQAlCUwI4Vb5Nht3HDhAhcvFUYeD+w8epMLh8HZYIgBJAhNC\nuJUCaE97rFWU+qo8QriTJDAhhFulGAy83bEjiXo9nYKCeCElhTCt9vw3CtFMPnEemBAicCiKwvDw\ncL7u0gWtohCtk48Z4RnyN0sI4Tb7a2v51/HjVDqd3BodTbfgYG+HJAKYJDAhhFtYnE7+WlDAR+Xl\nAHxaXs5nnTsTr9d7OTIRqGQOTAjhFjWqylaLpf7xAZuNGpfLixGJQCcJTAjhFmatlj8nJNQ/vi8u\njliZ/xIeJH+7hBDNoqoq+TYbKtDeYEB7Yom8RlEYZzbTzWjErqp0MRoJldWHwoMkgQkhmmVdZSU3\n79+PXVVZ3KED10VE1Ccxo0ZDv5AQL0co2goZQhRCNNkxu537Dh6kxuXCrqrcc+AAh+12b4cl2ihJ\nYEKIJtMpCiGaUx8bJq0WGSQU3iJDiEKIJovU6XipfXs2VlejKAqZJhPtDAZvhyXaKElgQogm22Wx\n8P8OHeIni4UwjYblHTt6OyTRhskQohCiyXKsVn46sder0uXi4xObloXwBklgQogmi9LpGsx5dQoK\n8losQngkgW3YsIHJkyfTvXt3zGYzy5cvP+89O3bs4LrrriMxMZEePXrw9NNPeyI0IUQr9A8JYWla\nGmMiI3k0MZHhYWHeDkm0YR6ZA6uurqZHjx5MnjyZadOmnff6yspKxo4dy6BBg1i3bh27d+8mKyuL\nkJAQsrKyPBGiEKIFgjQafhsZyW8jI70dihCeSWBXXXUVV111FQDTp08/7/XvvvsuFouFl19+GYPB\nQJcuXcjJyWHRokWSwIQQQpyVT8yBbd68mYEDB2I4bTnu8OHDOXLkCPn5+V6MTAjREgdra3mlqIi/\nHz7MztMK/ArhTj6RwIqKioiLi2vwXGxsLKqqUlRU5KWohBAt4VRVni0s5KGCAv6vsJAJe/dy2Gbz\ndlgiAPlEAhNCBA6Ly8Xmmpr6x4fsdirlWBXhAT6xkTkuLu6MnlZxcTGKopzRMztdbm6up0O74AKx\nTRCY7QrENkHr26XT6bjHbGbGiaHDSZGRUFJC7mlJzRsC8f0KtDZlZGQ063qfSGCZmZk8+uij2Gy2\n+nmwNWvWkJiYSEpKyjnva25jfV1ubm7AtQkCs12B2CZwX7sSXS66hYZicbnoajRitOrZflCLokD3\n7k4u9Or7QHy/ArFNzeWRIcTq6mq2bdvG1q1bcblcHDp0iG3btnHo0CEA5syZw+jRo+uvHz9+PCaT\nienTp7Nz504+/PBDXnjhBVmBKISfMmo0/CYkhMvDwghz6nn9dQMjRoRyzTWhvPmmAZkSE+7gkQT2\n888/M3jwYIYOHYrVamXevHkMGTKEefPmAVBYWEheXl799eHh4XzwwQccOXKEYcOGMXPmTGbMmNGk\nJfhCCN9WUqIwf76x/vH8+UaOHVO8GJEIFB4ZQhw0aBClpaXn/PmiRYvOeK5bt2588sknnghHCOFF\nJpNKz55ONm6s+7jp2dNBSIjq5ahEIPCJOTAhROAym+Gll2pYscKARgMTJtiIiPB2VCIQSAITwoep\nqkq+zYYKpBgMaBT/HHrLyFB5+OFab4chAozsAxPCR6mqypcVFVyycyeZO3fyaXk5LtWzQ292ezRf\nf63lhx80WK0Nf1brcpFXW8vRs6zA2G2x8O/jx/myooJyh8OjMQpxkiQwIXxUkcPBH/LzsaoqNlVl\nWl4eR+x2j/2+khJ44olERo8O5corQ/nsMy0OVcWlqlicTt4uKeHiHTu4IieHLaft6TpQW8sNe/dy\nT14e4/fu5SM5I0xcIJLAhPBROiBEe+r0rVCtFr0HhxCPHtXw8cd1qwUjIqCmQxVj9uzh9v372Wqx\n8MChQziAI3Y7fz9ypL43WOxwUHBaYv1cEpi4QCSBCeGjovV6FnfoQO/gYC4KDuattDTi9HqP/b7w\ncJWEhLqST1MequBhTS7rq6r4sLycXVZrg4MsQzQaTqbSBJ2O9NMKcY+Wo1bEBSKLOITwYX1NJj7O\nyEBVVcJ1nv3n2r69yttvH+PLL8O5eIiN52qd9T/7uKyMJR06MPvwYZL0emYmJKCc6A22Dwri3506\n8YvFQpROR1+TyaNxCnGSJDAhfFyYVnv+i9wkIiKfhx7KwOrSMe9YErMKCjAoClPj4hgWFsZloaEY\nNRpCfxVTJ6ORTkZjg+dqXS52WK3Uulx0DgoiyoO9R9E2SQITQpzBqNHwu+hohoSFoVcUOgUFoSgK\nMc1IQh+VlXF3Xh4q8PuYGB5p147wC5iMReCTOTAhxFmZtFq6BweTYTQ2e/9ZpdPJs4WFnFz0/9qx\nYxz14ApK0TZJAhOijTtss7GoqIj78vM5GhXlltc0Kgq9goPrHyfqdIRo5ONGuJcMIQrRxv37+HHm\nHDkCwHulpawJCaHLr+azmkuv0fBQYiLpQUEcczq5NTqapNNWKgrhDpLAhHATh6ricLnItlg4ZLPR\nKSiIviEh3g7rvLacOHgSoNrlosLpbOTqpusQFMSDiYluea3TFRcr1NRAXJzKaZ080QZJn14IN9hc\nVcXYPXtYVVbGyNxc7srLY/SePXxbWYnq4fJPrTUlJgbDiTmua0JDSfXhntKOHRpGjAihX78wFi0y\nUFnp7YiEN0kPTIhWyq+tZfy+fQDstFrrFy5UuFz8r6qKZIOBtKAg7wV4HoNCQ1nbpQuVTifhVVUe\n3SytqvDTTxo2bdKSnu5iwIDmnc78+usG9u6tW8n4+OPBDBni4De/cXkoWuHrJIEJ0Uq1qkr5iWG3\nzqfNHYVpNOg1Ghxe6IFVOZ3kWq1oFYXORiPGRhZQaBSFHifG4nKPHIGEBI/FtX27ht/+NhSLpa7H\nt3x5NSNHNr34b8M90ioe3tstfJwMIQrRDE5VJcdqpSwyEqur7pt/kl7P4+3aAfDWsWP8u2NHHklI\n4KHERNrpdKScZ0guu7qaP+bn88zRo+TVtv7IEavLxeJjx7giJ4chu3fzQWkpzlYm0WMOB+srK/mh\nupqaVsyRFRYq9ckLYOvW5u0Lu+OOWoYNs5OU5GLRIgtdu0rvqy2T7y9CNJGqqnxeXs6t+/fjAJ5T\nFG6OisKk1XJnTAzDwsMxnNj02yM4GLvLRZLBgKGR3k/eiUrux08khUK7naeTk+vLNLVEod3O44cP\n18UMzD1yhCvDw4lt4dBghdPJE4cPs6SkBIAF7dtza3R0i2Ls0EGlXTsXhw9r0OlULr+8eUevpKer\nvPVWDVargtmsIvui2zZJYEI00XGnk1kFBZz8yH3w4EGuCAujQ1AQJq22fhgOILmJCyEqXa765AWQ\nXVODXVXrF1W0RLBGQ4rBwL4T53Z1CgoiuBV7sIrs9vrkBfBSURGjIyOJaMH4XadOLj78sIq9ezXE\nxan06tX8HlRoKISG1vUoc3MV3norCJcLfvc7G507S4+sLZEEJkQTBSkKCTodB04khiidrlWJBuqG\nH2+NiuKfx4+jBe6Pj2+0x9YUcXo9b3fsyKKiIoI1Gn4fG3tG7cLmCNVo6GAw1Lf7NyEhrUqI6ekq\n6emtX6pfVgZ/+IOJjRvrPsa+/17Le+9V46a92MIPSAIToolCtVqeT0nh8cOHqXS5eLRdO9q1csm5\nWafj0aQkbo6OxqTR0M1NG5u6BwfzUmqqW14rwWDgXx07srKsjEitlt9GRLQ6ybpDTY3Crl2nEvPu\n3doT82u+vW1BuI8kMCGaoWtwMG917MihggJS3bRJOVqnIzo01C2v5Sldg4N52Md2DcfGqjz8sJWZ\nM+tWfj70kJWYGElebYkkMCGaSaso2E6rXtEWHD8OhYUawsNVkpJ8I0no9XDLLTZ+8xsHqgpdu7rw\n4e12wgM8Ng7wxhtv0Lt3bxISEhg6dCjff//9Oa/Nz8/HbDY3+BMVFcWaNWs8FZ4QXmdzuahwNG8V\nnjccPapw330mBg4MY+TIEHbt8v7w4UkhIXDxxS5+8xsXjXVi7fZoVq/WsXq1jiNHWjdvKXyHR/4m\nrly5klmzZvHggw/y7bffkpmZyYQJEygoKDjnPYqi8MEHH5CTk0NOTg67d+9m8ODBnghPCK87UFvL\ntLw8rs7N5f3SUmpdvrt6bscODR99VLcEPz9fy3//27KBm7IyyM7WsHu3woXc211TA6++Gs9NN4Vw\n000hzJ0bRFXVhfv9wnM8ksAWLVrELbfcwq233kpGRgZPP/008fHxLFmy5Jz3qKpKZGQksbGx9X90\nss1e+Bj1xEbmoshISlvRe1pWUsL7ZWXsslq568ABdlmtbozSveqqX5zKONHRzc8+ZWXwxBNGhg4N\nY8iQML77zj0buPbsUfjTn4zccUcwW7ee/eOsrEzhP/85NX/3wQcGysqkFxYI3J7A7HY72dnZDB06\ntMHzw4YNY+PGjY3eezLhjRgxglWrVrk7NCFabUNVFUN27eK6Q4eYc/hwi5NYyWn3qeDTPbBevZws\nXGihd28nWVm1XHFF89ucn6/htdfqJqisVoX58+v2brWGxQJ/+UswS5YE8cEHBiZMCOHw4TMTU0SE\nyjXXnPqCMGKEnYgI35jHE63j9i5OSUkJTqeTuLi4Bs/Hxsby9ddfn/We0NBQ5s6dy4ABA9Bqtaxe\nvZopU6bwyiuvMGHCBHeHKESzWF0uyhwOQrVaFhQVYTkx/vWPkhJ+FxODuQUjBXfExrK6ooIjdjtZ\nsbENaij6GpMJbr7ZztixdoKDoSVb34KDVUwmlZqaupszMly0diV+bS3s2XPqRQoLFc7WkQ0JgXvv\nLeS662JxuSAzs3kFhIXv8okxuqioKLKysuof9+nTh9LSUl544QVJYMKrShwOXiws5K2SEoaGhTHO\nbOa/FRUABCtKi08Z7hkczFedO1PjchGv1xPmBzWRGhbSbZ6MDJX33qvm+eeD6NTJxT33tL7mY0QE\n/O1vVm6/3YTLpTB7tpWEhLP3rIzGEkaPNrf6dwrf4vYEFh0djVarpaioqMHzxcXFZ/TKGtOvXz/e\neeedRq/Jzc1tUYy+LBDbBP7brtyICJ4/8Xd5ZVkZQ0NC+EN0NLk2G1Ojo9GVlbGvpgZnKwrcHj3x\nx1d46r2Ki1N45pkgVNWFzWbjbL9Go9Fgt0eiKKDTleE6zzhjjx4G/vvfWOx2hdjYUgoKqs+4RqvV\ncfBgBxYsMNCtm4PBg4sxGI67q1le5a//rs4lIyOjWde7PYHp9Xr69OnDunXrGD16dP3za9euZcyY\nMU1+na1btxIfH9/oNc1trK/Lzc0NuDaBf7frQHl5g8carZa5KSnsLi/nL8XF5NtszEtOZlhYWIuK\n25Y6HBgUhRAf6YF5+71av17L9OkmNBqV11+PpX//80+Udep08r/OvtF6xw4NkyaFUltb9/48+6yW\nKVOi3RSx93j7vfIFHlmFmJWVxbJly3jrrbfIyclh5syZFBYWcscddwAwZ86cBslt+fLlvPfee+Tk\n5LBnzx5efPFFlixZwj333OOJ8IRosj4mE1OiozEoCsPDwhgUGopDVZldXMyXlZXk1NZy07597Gvm\nMSiqqrKmooKrcnK4Yc8edrSxjdFnc/iwwm23mcjP13DggJbf/97EaTWEW6ysTKlPXgDbt/vGlwXR\neh6ZAxs7diylpaXMnz+fwsJCunXrxooVK0hKSgKgsLCQvLy8Bvc888wzHDp0CI1GQ3p6OgsXLmT8\n+PGeCE+IJovV63ksKYk/xscTptUSqdNR63JRftrQVq2q0tx1eftPJD6rqrIHmHXoEO926kSQD9QY\nPJeqKqiuVoiKUvHEoc2qCk7nqUTjcCi4XK2vbZiW5uLSS21s2GDAaFQZP97eykiFr1DKyspkPamP\nCNQhgUBs1/qSEm4pKKDC6eSZ9u25KSqq0VOPfy3XaiVz5876j+a+JhOr09MJ9vJQ4rneqwMHFB56\nKJgff9QyY0Ytd9xhc/tKPlWFr77ScuedIWi1ded+DRrU+qr1ANu3l1JeHkNkpEq3bq4WraT0NYH4\n76q5fGIVohD+JrGsjPVdu2JXVdrp9c3uOaUaDLyUksK9+fmEarU8mZTk9eTVmI8/1vPZZ3Xdrr/+\nNZj+/Z0MHOie5HKSosCVVzrZsKESjQYSE9333dpgOMall8oqxEAjCUy0Gcfsdo45HJh1OuJbOQbm\ncrmafGjl2Rg0Gm40m7ksNBSdorTqtVrLZoNt2zRUVCjExcWe85rTtWLR5Xn5SrFg4fskgYk24aDN\nxrS8PNZXVdE7OJg3O3SgYyObh6ucTnZYLDhUle7BwUTqdOyyWNhTW0s7vZ5wN5Q502s0dPCB8ulf\nfqnj5ptNqKrCoEEGFi+2Eh/fMIkMH+7gP/9xsHOnljvuqCUtzYMZTIgmkgQm2oQtNTWsP1HBdYvF\nwg81NedMYHZV5Z2SEmaeKD79x/h4JkVGcu2ePRx3OtEB76ekkH6hgm8mpxP27VNwuSA1VeV8RT7e\nfNOAqtZNCq1fb6CgoPaMBLZhg5YePVxcfbWD9et17NvnIClJkpjwLt9d8iSEG5l+NUcV2sic1QGr\ntX7zMsCCwkJKnE6Onxg3cwA/+2jxXVWFL77QcemlYQwYEMa//60/Y/jv1wYNOrWGMirKhfksU0WK\norB8uYFnnjHyv//pLvgiCLsdNm/W8p//6Ni+XT62RB3pgYk2oZ/JxOPt2vFuaSkjw8Pp38hpyuur\nquhsNHLEXrfcurvRSLhWi1FRsJ6og9jNB4b+zub4cZg5Mxi7vS7DPPBAMEOHOkhNPfe80qRJduLi\nVA4dUhgypIq0tDPn4665xs6XX+rYvFnHtGm19Ox5YXtfmzdr+e1vQ3C5FCIiVD77rIpu3Xy3ALK4\nMCSBCZ+Va7XyXmkpBkVhrNlMx2YkjRqnk8N2O0aNhmSDgUidjhnx8UyJicGk0ZyzaoZLVVlVVsaA\n0FC6GY3YVJWboqLoERzM6owMtlkspAUFkVha6q5mulVQECQkOMnLq+ulmM3n37MVH68yeXJdss7N\nzQPOXJqdlqby5ps1VFbW7QNrTu3hwkKF/fsVwsNp8RL2n3/WntgTBuXlCnl5Ct26Nf91RGCRBCZ8\n0jG7nbsPHCDbYkFL3RDgRcHBxOv1ZJzn07Pa6eSNY8f42+HDRGq1vN+pExef6HGdr2STRlH4Q3w8\nk/buJUqnY3REBGlBQSiKQr+QEPqdeJ3co75UvfCU0FB4/nkrc+bUbTx+7DEr7dq5Z1VfWBiEhTXv\ntQoLFe67L5jPPtNjNKq8/341l13mxOmE5uwauOgiJ3UbmhVMJpXkZFmpKCSBCR9V43Kx3WpFAZZ0\n6MDTR4+y3WolQqvlo/R0ejVSGn1/bS1/O3wYgDKnk3lHjvBup05UOZ3oFeW8+62uCAtjXdeuVDmd\ndAoKItrPDlbt1s3FO+/U4HLhlooZO3ZoWLVKT1yci2uucTQreeTlKfX7x6xWhZ9+0vDDD1o+/VTP\nzTfbGDvWTmjo+V8nM9PJJ59Uc/CgQteuLnr2bHz40G4/tTWgc2cZagxU/vUvU7QZMTod98fFUeRw\nkGezsf3Eoolyp5N1lZWNJjC9oqBXFOwn5qs6Ggx8XVnJwwUFxOl0PJWcTNfgsxd+BdAqCj0b+bk/\n0Gqb18M5l0OHFMaPN3H4cN2L7dlTyxNPWJs8DBgeXncWmMVSVxIqMhJmzKj7f/u//+lIS6tqUrUN\noxEuu6zp825ffaXjppvqjlkZMsTOvHlRTb5X+A9JYMInmbRasuLi2GGx8GNNDRrg5PfolPNs+k03\nGnknLY1HDx+mvcHAzTExXJOTg1VV2Qn89fBh3klLQ+/DdQd9RUWFUp+8AP73Py1WKzQ1v3fp4mLl\nymr++U89KSkujh9vmPkqKjyznPHNNw31c2Zff62npOTci3Yao6pw8GDd67Rvr6IodZu6f/5Zy/79\nChkZKn37Olt9OKdoGfnfLnxWpE5HhtHIDouFuUlJjIqM5O9JSQw6z5iTVlG4OiKCzzIyeCstDaNG\nU796EOC4w4HsYGqahAQXN9xwch2+yvTptU1OXlBXHmrgQCd//GMtS5cGoSiQklL3VSQz0+Gx1YwD\nB57aGmA2uwgLa2655Tpr1mgZMCCMSy4J4/PPdagq/PSTlpEjQ5g6NYSRI0PYskU+Rr1FemDCp8Xq\n9Tzcrh3bamq42GSis9GIuYlzUierZaQaDDzbvj0PHDxIuFbL35OSmlV4ty2LioJ586zcfrsNk0k9\n79zT2VitcPSohrvuqqWkRGHUKBs9ezq54grnGRum3WXSJDsxMSr5+Rquu85OaGgh0ITJttMUFipM\nn26ipqauB/b735v4/vsK9u3T1PfubDaF/HwNffvKPJs3SAITPq+9wUD7FtQKVFWV7VYrxx0OhoaG\n8mP37uiB9j66h8tXxcerxMe3vKf0+ec6brvNBCj07+/grrtqGTDAc8kLICFB5ZZbTh2bkpvb/ASj\n1aoEB5+KMSRERatVSE93oder2O11KyJjYmRFpLdIAhMBa3N1NaP27MGqqnQ3GlnesaMkLy/4xz8M\nQF2PZfNmHU89ZWl0Y/W5HDyosGmTFq0W+vd3erzob0wMLF5cw4wZJlwuWLDAQny8SmWlkzlzrFRV\nKYSEqCxYYODiiy3N2hsn3EMSmPCqKqeTLTU1VLlc9DAaSQ4KothuR6soRLVy+frnFRX1c187rFb2\n19aSKgnsghs61MGaNXVL6WNjXURFNT/xlJfXVRhZvbrudW66qZZnnrHSyGJUt7j4YhefflpXQzMi\nou45RVF49FEjNltdUh4+3O6WFZ+i+SSBCa9aVVZGVn4+AINCQ3kkIYE78/II1mh4LTW1fuNwS3Q7\n7SuxQVH8bj9XoJg0yU5SkouCAg3Dhzvo0KH5CayiQuGLL069f//9r57Zs2sxmTw/fHcycZ2Ulqby\nzjvV/PnPwcTGunj8catHTqgW5yf/ooXX2F0u/nHsWP3j9VVVfFddTcGJGoT3HjzI6vT0Fh9dckVY\nGK+lprLNYmFkRAQ9/Hxvl7+Ki1MZN65lqwBPioxUGTfOxr/+VdeDnjjRjtnsnbknjQauusrJV19V\nYTDQpI3YwjMkgQmv0Ws0XB0ezuaaGqButWDFaScl2lWV1qztitLruTEqihtbGafwvrAwePTRWkaP\ndqDRQL9+Tq/POUXJ3mivkwQmvOp3MTFkGI0cdzrpFxzM3tpawjQajBoNC9q3J1KG/cQJCQkqI0e2\nrid3IblcsHNnXTmrtDQXCQmyWtHd5NNBeFWcXs8Ys5kCm41xe/ZQ5XJxR0wMl4eGcomMzQg/tmGD\nlhtuCMFmU7jySjsvvWSRJOZmsptT+IRih4NdtbUcsttZUFTEi0VFuFT5xy7819KlhvqVil9+qSc/\n/wKfAtoGSAITPiFWpyPjtCXuYyMj0VzoY3+FcKNevU7N55pMKuHhXgwmQMkQovAJSQYDyzt2ZEtN\nDZFabf35XUL4q/Hj7ej1sHu3hkmT7HTtKuWm3M1jPbA33niD3r17k5CQwNChQ/n+++8bvX7Hjh1c\nd911JCYm0qNHD55++mlPhSZ8VLrRyLioKIZHRMjiDeH3EhNVpk618dxzVi65RMpHe4JHEtjKlSuZ\nNWsWDz74IN9++y2ZmZlMmDCBgoKCs15fWVnJ2LFjSUhIYN26dcybN48XX3yRhQsXeiI8IYQQAcAj\nCWzRokXccsst3HrrrWRkZPD0008THx/PkiVLznr9u+++i8Vi4eWXX6ZLly6MGjWK++67j0WLFnki\nPCHatrIytF9/jfarr6C42NvR+KyKCvjwQx2PPhrE+vVaHC1YwV9eDl9/reXzz7UcOSJzuu7m9gRm\nt9vJzs5m6NChDZ4fNmwYGzduPOs9mzdvZuDAgRhOqzg+fPhwjhw5Qv6JMkNCCDew2TC8/jqho0cT\nOm4cxnnzoKrK21H5pA0btNx2WwjPP29kzJgQtm1r3sel0wlvvWVg9OhQbrwxlD//2cjmzRrKyz0U\ncBvk9gRWUlKC0+kkLi6uwfOxsbEUFRWd9Z6ioqKzXq+q6jnvEUI0n1JWRtAbb9Q/NixdilJS4sWI\nfNfevaezGQwWAAAf/0lEQVQq9DocCkVFzetBVVScrMRf56OPDKxdq+fVVw1YLG4Ls03z65ny3Nxc\nb4fgdoHYJoCdBQXs1OvZb7dzWXAwsaWluFz+vSrLH9+rEEWhw8iRaEJCQFVR9u6lyGql7LS2+GO7\nmqK57erbNxWTyUhNjUJqqpP4+HJyc480+X6dzsiQIR3Zu7euZH63bk4KCjSsXq1j6FA7hYUOXC7I\nyChHr2/Zl4hAe68yMjKadb3bE1h0dDRarfaMnlNxcfEZvayT4uLiznq9oijnvAea31hfl5ubG3Bt\nAti7dy9bjEamnhgODtNo+LJzZ7r4cXFdf36vnNdeS9A994BGQ83rrxPbpQuxJ37mz+1qTEvalZEB\nX35ZRVGRQmqqi7S0UKB5r/HAAw4yM6vJy6s7x+yJJ4IYNszBxo06Zs+u2xh2220hPPFEVLOLAgfq\ne9Ucbh9C1Ov19OnTh3Xr1jV4fu3atQwYMOCs92RmZvL9999js9nqn1uzZg2JiYmkpKS4O0RxgWm1\nWjZVV9c/rnS5ONaSGXHRasqRI5imTkVTWoqmpATTH/6AIsP059S9u4uhQ52kpbWsKkxSksqkSQ6u\nvdZGRQU8+2wNf/hDLYcPa9BoVNq3d5Ge7uK777Tk5ckij+byyCrErKwsli1bxltvvUVOTg4zZ86k\nsLCQO+64A4A5c+YwevTo+uvHjx+PyWRi+vTp7Ny5kw8//JAXXniBrKwsT4QnLjCHw8H1kZGcnFHo\nFhRE+9MW7IgLSFFocPqiVlv3nPCoiy5SueEGG19+qWfMmFDWrdMxe7aVGTNqmTvXyMSJoUyaZJIk\n1kwemQMbO3YspaWlzJ8/n8LCQrp168aKFStISkoCoLCwkLy8vPrrw8PD+eCDD3jwwQcZNmwYkZGR\nzJgxg+nTp3siPHGBqarKoLAwvujcmeNOJ+lBQaTIycheoSYkUPOPf2CaOrVuCPG111BjY89/o2i1\nY8c0fPxx3Re3nTt1GAx2Dh5U6usl7typIy9PQ2qqbHpuKo8t4pgyZQpTpkw568/Otr+rW7dufPLJ\nJ54KR3iZXlFadbqycBOXCzUoCMvf/oYaH4+za1dvR9Rm/Po7W0yMSkLCqWRlNKpERUkB6+bw61WI\nQojm0WzbRujIkSgnTr2uXrYMx7XXejmqtqF3bydz51p4800DQ4c6GDTIQXCwypIl1ezcqeWqqxz0\n6OHfK3MvNElgQrQhytGj9ckLQLNjB0gCuyDCw2HaNBu33GIjJAT0+rrnb7jBAciippaQ41SEaEvC\nw3GlpgKgGo04+/b1ckBti1YLkZGnkpdoHemBiVZzqCr/q6riq4oKeptMXBEWRoRUk/dNx45hmzAB\nDIa6T9HTtjeIc7NYoLRUISxMJSzM29GIk6QHJlptW00NY/bs4bmiIm4/cIAN8qHos1w9e6L74guM\nTzyBbtkyXN27ezskn3fsGMybZ2TAgDCmTpWl7r5EviaLVit2OBqM4OdarYyMiPBaPOLc1LQ0al55\nBU1JCa74eNT0dG+H5PO2btWyYEHdEsJPPtFz7bV2UlPt57lLXAiSwESrpQcFkWowkGezYdJouKy5\nNXHEBaPs2oV+zRqU6mpUgwHbjTdCu3beDsunqb9a2e7nJTwDiiQw0UBebS0flJVxzG5ncnQ0PZpQ\nr7Cj0ch/0tPJq60lVq9v0j3COzQ7dqAcOgTBwWj37UNz4AAuSWCN6t3byfTptSxdauCyyxwMHtyy\nFYMOR91cmsyhuY8kMFHPoao8dfQoy44fB2BlWRlfdO5MUhPKPqUFBZEm1TV8n6qiKS+H4mKcvXqd\n2b0QZ4iJgUcesZKVVUtYmEp4ePNf4+BBheefD+L773VMm1bLuHF2TCb3x9rWSAIT9SwuF9k1NfWP\nk/R6iux2nKoqpZ8CgcOBotejHDiApqwMx9VXo8qnaJOYTGAytTzZf/65jsWL6/4NzZgRTJcuLjIz\nzywZtX27hp07NSQkqPTr55Qkdx6yClHUC9NquT8+HoABISFcERbGFTk5XL57N5vk1F7/V16O4bXX\n0G/YgHbHDoLvvx9FJnQ87uhROHTo9I9a5awHWubkKFx/fQh33RXCb38bwvr12jMvEg1IAhMNjIqM\nZE3nzjySmMjThYUAlDudPHbkCA4ZbvJvNhuayspTjy2WuokZ4VEff6wjNlYlNbXuy8L48bV063bm\nF4cjRzQcP37yI1nh229lt/P5SAITDRg1GvqFhBCv1xN02jEbcTqd/GXxd2Fh1E6bhhoWhqooWB95\nBFd0tLejCnj5+ToefdTIddfZefhhK7//vY24uDO/DLZr5yIm5mRiUxk8WJbqn498JomzSg8KYlnH\njvQMDmZEeDizEhPRyLlRfk0pLYUffqBq6VKqVqxAs3UrilaGqTzthhtsmEwqixYF8fPPWlJSzj6S\nkZGh8uGH1SxZUs0nn1QzaJAcq3I+sohDnJWiKAwPD2dASAh6RcGgke86/k612XCOGoXuxx9RjUbs\nd92FKu+rx/Xp42Lt2mrKyyEpyUVjx6917+6ie3eZl2wqSWCiUSHyDT1gKFVVaA8cQJubW7f3a/du\nnJ06eTusNiEtzT1JKSdHoaJCOWcvrq2RBCZEG6HU1BD8yCMoFRUAWO+9V8qi+5HNmzWMHRtKVZXC\nyJF2Zs+O8nZIXifjB0K0EYrFgmoyYb/6apxdu6LZswfMZm+HJX6luFghJ0fh2LGGzy9bZqCqqm4e\n+tNP9Rw9KiXbJIGJeqqqospS+YDljImhNisLpaQEx4AB2O6+G+TYG59y4IDCzTebyMwMZ8oUE/n5\npxZOZWScGobU61VCQ2WuTP72CgC2Wyw8cfgwGkVhVmIi3aWeYcDRFhRgnD0bBdD9+CPOiy7CecUV\n3g5LnOaHH7Rs2lT3sfzNN3p+/tlGSkrdXr3Ro+1YrZCdreXOO23ExBwF0rwYrfdJAhMcs9u5Y/9+\ncmprAdhfW8tHGRmY5dt5QFEsFk7fCKEpKvJaLOLsfl066vTvkUlJKn/6k63+cW6ubEKXIURBrapy\n2H5q0+Rhux2rlBgKOM6OHbEPH17330lJ2KX35XP693fw4INWunRx8pe/WLj4YklSjZGv2II4vZ6n\nkpP5Q34+APOSk4mV1WkBR+3eHcvs2VjvvbeuGkda2x5+8kWxsfDww7Xce28toaEg2/Qa5/YEZrPZ\n+Mtf/sLKlSuxWq0MHjyY+fPn066RM4eWLVtGVlYWiqLULyJQFIWjR49iaMJRHqJ19IrCeLOZPiYT\nCnVVOHRSdSPwGAyoffogy3R8m0ZDi45saYvcnsAeeughPvvsM5YsWYLZbObhhx9m4sSJfPPNNyiN\nfCiGhISQnZ3dYBWcJC/PcKgquywWalWV9KAgInQ6gjQaOYhSCB91/DiUlipERqq0pHzlsWNQVQPG\nCCcJEYFTnMCtHdSKigrefvttHn/8cYYMGUKvXr149dVX2b59O+vWrWv0XkVRiImJITY2tv6P8IzP\ny8sZsns3w3NymF9YSKVTaq4J4asOHVKYOtXExReHc/PNIRw4UNcRcDgi+ec/9fzxj0a+/lp7zoMF\n8vIUlq9xMbfyIOMO5/DPwhIsAfJv3q0JLDs7G4fDwRWnTQ4nJSXRpUsXNm7c2Oi9FouFiy66iB49\nejBx4kS2bt3qztDECdVOJ08ePcrJv74LiooaLOAQQviW7Gwtn39eNyf9v//p+OGHuh7Uli2xzJhh\n4s03gxg3LoRffjn7x/mWLRpKuhznPdsxtlutzDiczy9W6wWL35PcmsCKiorQarVERTUscRIbG0tR\nI0t2MzIyeOmll1i+fDmLFy/GaDQyYsQI9u/f787wBBCk0dDltNOVo7RaTDJTLITP+vVh6Dod/PST\ngk6nQautm3JxOBRKS88+RWMyQTkNu2eBsspYKSsrO++c7ty5c5k/f/65X0RR+Oijjzhy5AjTpk2j\nuLi4wc9HjRpFeno6zz77bJOCcrlcXH755Vx++eU8+eST57wuNze3Sa8nGqqJjOTfFguFDgd3R0YS\nW1qKK0D+QgsRaByOCFaubMf77xu5+mo7Wi0sXGikWzcH48bZmTs3mF697Lz00lGCgwvPuN9mi2K/\nGsJDrj0cctqZGBHJ/cFGdD54ynpGRkazrm/SIo6srCwmTZrU6DXJycls2rQJp9PJ8ePHG/TCiouL\nufTSS5sclEajoU+fPuzbt6/R65rbWF+Xm5t7wdrU+/QHUZ4tCnoh23WhBGKbQNrlq2bOdDBtWhWb\nNmmZNKmuBuLOnTpSUmpZvbqKlBQXycnhwNmXL3a2Q3dLZ2w6FwkGHZEBUqSgSa0wm82Ym1D0s0+f\nPuh0OtauXcu4ceMAKCgoYPfu3QwYMKBZgf3yyy/06tWrWfcIIUQg0unqvmdqNA2HCePjVS699PwL\nMvR66KgPvFXdbk3D4eHh3Hrrrfztb38jJiaGyMhIHnnkES666CKGDBlSf92oUaPo378/s2fPBuCp\np56if//+dOzYkcrKSl555RV27tzJCy+84M7whBDCr/Xv72D+/Bo++UTP6NE19Ovn7Yi8y+39yCef\nfBKdTseUKVOwWq0MGTKEV199tcEesLy8PFJSUuofl5eXc//991NUVER4eDi9evXi008/pU+fPu4O\nTwgh/JbZDHfeaWfKFDv79++joqITP/6oITJSpWdPV5s7XKBJizjEheHOcfoyh4M1lZX8WF3NiIgI\nBoaGeq26hr/PP5xNILYJpF3+ZPv2Uv70p2Q2btSh1aqsWFHNsGGBsb+rqWT9dID6rqqKKQcOsLC4\nmDF79rDNYvF2SEIINyoqMrFxY12Xy+lUWL488Oa4zkcSWIDac+JoFAAndUemCCECR0SEg7CwUwNo\nmZltr3J9GxsxbTsuDw0lRKOh2uWik8FA+q93Qwoh/JrJZOftt6tZu1ZHly4urryy7X1JlQQWoPqF\nhPBF584cczhIMRjoIAlMiIBRXKzw8MOJrF2rJyHBxdNPW2iL5WNlCDGAdQ8OZnBYmCQvIQLM4cMK\na9YYUFWFI0e0vPJKEAFSn7dZJIEJIYSfiYxUiYs7Vf7t8ssdaAPnlJQmkyFEIYTwM6mpKsuWHeOb\nb8JISFAZNqztLeAASWBCCOGXIiLy+dOfAmtvW3PJEKIQQgi/JAlMCCGEX5IEJoQQwi9JAhNCCOGX\nJIEJIYTwS5LAhBBC+CVJYEIIIfySJDAhhBB+SRKYEEIIvyQJTAghhF+SBCaEEMIvSQITQgjhlySB\nCSGE8EuSwIQQQvglSWBCCCH8ktsT2NKlS7n++utJTU3FbDZz8ODBJt23atUqBgwYQHx8PAMHDuTj\njz92d2hCCCECiNsTWE1NDcOHD2fWrFkoitKkezZt2sSdd97JxIkTWb9+PePHj+f222/np59+cnd4\nQgghAoTbT2SeNm0aANnZ2U2+55VXXmHw4MH88Y9/BOCBBx7g22+/5eWXX+b11193d4hCCCECgE/M\ngW3atIkrrriiwXPDhw9n48aNXopICCGEr/OJBFZUVERcXFyD52JjYykqKvJSREIIIXxdkxLY3Llz\nMZvN5/wTFRXFd9995+lYA9JBm43vq6rItVrRaHzi+4QQQviFJs2BZWVlMWnSpEavSU5ObnEQcXFx\nZ/S2iouLz+iV/Vpubm6Lf6cvqImM5PfFxeyurSVCq2VFUhIuP2/Tufj7e3U2gdgmkHb5k0BrU0ZG\nRrOub1ICO9nT8pTMzEzWrVvHjBkz6p9bu3Ytl1xySaP3Nbexvua/5eXsrq0FoNzpZHNtLVl+3qaz\nyc3N9fv36tcCsU0g7fIngdim5nL7mFVRURHbtm0jNzcXVVXZtWsX27Zto6ysrP6aUaNG8fjjj9c/\nnjp1Kt988w3PP/88ubm5PPvss6xfv57p06e7OzyfEq3TcfpGg2S93muxCCGEv3F7AluyZAmDBw/m\nnnvuQVEUJk6cyJAhQ/j000/rr8nLy6OwsLD+cWZmJosXL2b58uUMGjSId999lzfffJO+ffu6Ozyf\n0is4mBUdO3JbdDSLUlLocqI3JoQQ4vyUsrIy1dtBBIr9tbUU2u3E6/WkBQWd9Zq82lrePX6cI3Y7\nt8fE0Mtkqv9ZoA4JBGK7ArFNIO3yJ4HYpuZy+0bmtmq3xcKYvXs5YreTrNezMj2dzkZjg2ucqsoz\nR4/yz+PHAfiovJw1XbrQ3mDwRshCCOHXZN22m2yzWDhitwNwyG7nF4vljGtqXS62nvZ8scNBtdN5\nwWIUQohAIgnMTWJ+tQAjRndm59ak1fJAfHz9//Q7Y2JIlIUbQgjRIjKE6Ca/MZl4s0MH/ltezoiI\nCPqdNrd1upEREazt0gWry0WG0UjEWRKdEEKI85NPz1Y4ZLOxqboal6qSGRrKWLOZsefZL6fXaOh9\njuQmhBCi6SSBtVC108ljhw/zbmkpANdGRPBKSgrh0qMSQogLQubAWqjC6eSLior6x19VVFDucnkx\nIiGEaFskgbVQpFbLpKio+sc3ms2YtVovRiSEEJ5TXKxw8KCCL9VbkPGuFgrWavlTfDxXhIXhAvqa\nTIRKAhNCBKDt2zXce6+RuDiVcePsXHutA1+YypceWCvE6vVcHRHBiIgI4mU5vBAiQC1bpueGGxwU\nF2v473/17NrlG6lDemBCCCEaddFFTrKyTDidCj/8AKmpLvr18/5Yom+kUSGEED4rPl7F6Tx1dsbR\no0ojV184ksCEEEI0qndvJ7ffXtfjMptd3HWXzcsR1ZEhRCGEEI2KioJHH7Vy9902QkJUOnTwjUNM\nJIEJIYQ4r8hIiIys2+u6Y4eGrVs1xMWp/OY3TsLDvROTJDAhhBBNtm+fhtGjQygurpuBWry4mnHj\nHF6JRebAhBBCNFlhoVKfvADWrPFeP0gSmBBCiCZLTHSRknLyHEOVkSO90/sCGUIUQgjRDB06qLz/\nfjU7dmiJiVHp29d7h/JKAhNCCNEsGRkqGRne63mdJEOILVTjdOJUfWMpqRBCtEWSwJrJrqp8XFbG\nyNxc7s3P54AvlWYWQog2RIYQm2mXxcJt+/fjArZYLLTT6/lLu3beDksIIdoct/fAli5dyvXXX09q\naipms5mDBw+e955ly5ZhNpuJiorCbDbX/7fN5hvlSk5ncbk4/djKow7vjwMLIYQ3lZXB6tU6Fi40\nkJ194Qb23N4Dq6mpYfjw4Vx33XU8/PDDTb4vJCSE7Oxs1NPmlQwGg7vDa7UMo5F7YmJ49dgxonU6\n7oqJ8XZIQgjhVV9+qeOuu0IACAtT+eKLKrp29fwJ9W5PYNOmTQMgOzu7WfcpikKMHyQDs07HX9q1\n446YGEK0Wtr7YJIVQogLadOmU6mkslLh2LELU63eZxZxWCwWLrroInr06MHEiRPZunWrt0M6p3Ct\nlq7BwZK8hBACuPZaOxpN3ehZerqD9u093/sCH1nEkZGRwUsvvUTPnj2pqqri5ZdfZsSIEXz33Xek\npaV5OzwhhBCNuOwyJ198UUVJiUJGhovU1AuzxahJCWzu3LnMnz//nD9XFIWPPvqIyy67rEVB9O/f\nn/79+9c/zszM5PLLL+fVV1/lySefbNFrCiGEuDD0erj44gvT6zqdUlZWdt5UWVpaSklJSaPXJCcn\nYzQa6x9nZ2czbNgwtmzZQvv27ZsdWFZWFsXFxbz77rvnvCY3N7fZryuEEMI3ZWRkNOv6JvXATi5t\nv5B++eUXevXq1eg1zW2sr8vNzQ24NkFgtisQ2wTSLn8SiG1qLrfPgRUVFVFYWEhubi6qqrJr1y7K\nyspo3749kZGRAIwaNYr+/fsze/ZsAJ566in69+9Px44dqays5JVXXmHnzp288MIL7g5PCCFEgHB7\nAluyZAlPPfUUiqKgKAoTJ04EYOHChUyePBmAvLw8UlJS6u8pLy/n/vvvp6ioiPDwcHr16sWnn35K\nnz593B2eEEKIANGkOTBxYQTqkEAgtisQ2wTSLn8SiG1qLp/ZByaEEEI0hyQwIYQQfkkSmBBCCL8k\nCUwIIYRfkgQmhBDCL0kCE0II4ZckgQkhhPBLksCEEEL4JUlgQggh/JIkMCGEEH5JEpgQQgi/JAlM\nCCGEX5IEJoQQwi9JAhNCCOGXJIEJIYTwS5LAhBBC+CVJYEIIIfySJDAhhBB+SRKYEEIIvyQJTAgh\nhF+SBCaEEMIvSQITQgjhlySBCSGE8EtuTWBlZWX8+c9/JjMzk8TERHr27MkDDzxAaWnpee9dtWoV\nAwYMID4+noEDB/Lxxx+7MzQhhBABxq0J7MiRIxw9epTHH3+c77//ntdee40NGzZw1113NXrfpk2b\nuPPOO5k4cSLr169n/Pjx3H777fz000/uDE8IIUQAUcrKylRP/oIvvviCSZMmkZeXR2ho6FmvmTJl\nCmVlZaxcubL+uTFjxhAbG8vrr7/uyfB8Sm5uLhkZGd4Ow+0CsV2B2CaQdvmTQGxTc3l8DqyiooKg\noCBMJtM5r9m0aRNXXHFFg+eGDx/Oxo0bPR2eEEIIP+XRBFZWVsYTTzzB7373OzSac/+qoqIi4uLi\nGjwXGxtLUVGRJ8MTQgjhx5qUwObOnYvZbD7nn6ioKL777rsG91RXVzN58mSSkpKYM2eOR4IPNIE6\nHBCI7QrENoG0y58EYpuaS9eUi7Kyspg0aVKj1yQnJ9f/d3V1NePHj0ej0fCvf/0Lg8HQ6L1xcXFn\n9LaKi4vP6JUJIYQQJzUpgZ3saTVFVVUVEyZMAGDFihWNzn2dlJmZybp165gxY0b9c2vXruWSSy5p\n0u8UQgjR9mgfeuihR931YlVVVYwdO5bKykqWLFkC1PXGqqurMRgMaLVaAEaNGsWePXsYMmQIAImJ\nicybNw+DwUB0dDRLly5l2bJlLFiwgMTERHeFJ4QQIoA0qQfWVNnZ2fz4448AXHzxxQCoqoqiKHz0\n0UdcdtllAOTl5ZGSklJ/X2ZmJosXL+bvf/878+bNIy0tjTfffJO+ffu6MzwhhBABxOP7wIQQQghP\nCJhaiOPHj8dsNvPhhx96O5RWu+++++jbty+JiYmkp6dz0003kZOT4+2wWqU1ZcZ82dKlS7n++utJ\nTU3FbDZz8OBBb4fUIm+88Qa9e/cmISGBoUOH8v3333s7pFbbsGEDkydPpnv37pjNZpYvX+7tkFrt\n2WefZdiwYaSkpJCens6kSZPYuXOnt8NqtTfeeIPLLruMlJQUUlJSuPrqq/n888/Pe19AJLAXX3wR\nrVaLoijeDsUt+vXrx8svv8ymTZtYuXIlqqoyduxYnE6nt0NrsZaWGfN1NTU1DB8+nFmzZvnt37+V\nK1cya9YsHnzwQb799lsyMzOZMGECBQUF3g6tVaqrq+nRowdPPvlkkxaT+YMNGzZw99138/nnn/PR\nRx+h0+kYM2YMZWVl3g6tVZKSknjsscf45ptvWLduHYMHD+bmm29mx44djd7n90OIP/30E7fddhtf\nf/016enpLF26lFGjRnk7LLfavn07gwYN4ocffqBTp07eDsdtmlJmzF9kZ2czbNgwtmzZQvv27b0d\nTrNceeWVXHTRRTz33HP1z1188cWMGTOG2bNnezEy90lOTub//u//mDx5srdDcavq6mpSUlJYtmwZ\n11xzjbfDcau0tDQeffRRfve7353zGr/ugVVWVnL33XezYMECoqOjvR2OR1RXV/P222/Xd60DSVPK\njAnPstvtZGdnM3To0AbPDxs2TEq5+YHKykpcLheRkZHeDsVtXC4X77//PjU1NWRmZjZ6rV8nsAce\neICrrrqKYcOGeTsUt1u8eDHJyckkJyezZs0aVq1ahV6v93ZYbtPUMmPCs0pKSnA6nVLKzU899NBD\n9O7d+7wf9P5gx44dJCcnExcXxwMPPMDbb79Nt27dGr3H5z45mlq26l//+he//PILjz32mLdDbpLm\nluO68cYb+fbbb1m9ejWdOnXitttuw2q1erEFZxeIZcZa0iYhLrSHH36YTZs28dZbb/nt/OvpOnfu\nzPr16/nqq6+48847mTp1Krt27Wr0Hp+bAystLaWkpKTRa5KSknjggQf497//3eCNczqdaDQaMjMz\n+fTTTz0darM0pV3JyckYjcYznrfb7XTo0IHnnnuOG2+80VMhtkhz23V6mbGmVmq50FryXvnrHJjd\nbicxMZHFixczevTo+uf/3//7f+zcuTNgDpYNtDmwWbNm8Z///IePP/44oObFTzdmzBhSUlJYsGDB\nOa9x60Zmd2hq2aq//vWv3HvvvQ2eGzhwIH//+98ZOXKkp8JrseaU4/o1l8uFqqrU1ta6OarW83SZ\nMW9ozXvlb/R6PX369GHdunUNEtjatWsZM2aMFyMT5zJz5kxWrVoV0MkL6j73zveZ53MJrKkSEhJI\nSEg44/l27dqRmprqhYjcY//+/Xz44YcMGTKEmJgYCgoKeO655wgKCmLEiBHeDq/FTpYZq66u5p13\n3qGqqoqqqiqgLmH46/xeUVERhYWF5Obmoqoqu3btoqysjPbt2/vNxHpWVhZTp06lb9++DBgwgMWL\nF1NYWMjtt9/u7dBapbq6mn379qGqKi6Xi0OHDrFt2zbMZnOD4uP+5MEHH+Tdd9/lnXfeITw8vH6e\nMiQkhJCQEC9H13Jz5szh6quvJikpiaqqKlasWMF3333HihUrGr3P54YQWyMqKop//OMffr2MvqCg\ngPvvv58tW7ZQXl5ObGwsl156KX/+859JT0/3dngttn79+jPel7OVGfM3Tz75JE899dQZcxALFy70\nq+GqJUuW8MILL1BYWEi3bt2YN28eAwYM8HZYrbJ+/Xquv/76M96byZMns3DhQi9F1Tpms/ms810z\nZ85k5syZXojIPaZPn8769espKioiPDycHj16cN99952xOvbXAiqBCSGEaDt8bhWiEEII0RSSwIQQ\nQvglSWBCCCH8kiQwIYQQfkkSmBBCCL8kCUwIIYRfkgQmhBDCL0kCE0II4ZckgQkhhPBL/x+G8LA/\nabXTOAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.scatter(X_reduced[:, 0], X_reduced[:, 1], c=y, cmap=cmap)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAb4AAAEuCAYAAADx63eqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvXl8VOXZx/09y2zZE7YEkhB2IrvKqggIbhWwWgVsi0+t\nta8LLq+W1lqX+ih1rUtdWte3gFoLLo/08RGp1g1QRFBQZEeBsAfINpPZzjnvH8kZJsMsZ5LZkpzv\n55NPkpk597nPMvfvXNd9Xdct1NTUaJiYmJiYmHQSxHR3wMTExMTEJJWYwmdiYmJi0qkwhc/ExMTE\npFNhCp+JiYmJSafCFD4TExMTk06FKXwmJiYmJp0KU/hMTExMTDoVpvCZmJiYmHQqTOEzMTExMelU\nmMJnYmJiYtKpMIXPxMTExKRTYQqfiYmJiUmnwhQ+ExMTE5NOhSl8JhnL9OnT+e1vf5vubrQLXn31\nVUpLS9PdDROTdoEpfCYp57rrrmPOnDkxP/fyyy9z9913t3o/w4YNo7CwkMLCQoqLixk6dCg///nP\nWb58edxtPfDAA0yYMKHVfWkt8QiaIAgJ3/91111HYWEhRUVFdOvWjZEjR3LnnXficrlafG7ZsmXM\nnDmT3r1706tXL8444wzuu+8+qqurW3zO5/PRr18/ysrKqK+vT3h/TUyMYAqfScbh8/kAKCgoIDs7\nu9XtCILAbbfdxrZt21i3bh0vvfQSvXv35uc//3m7sSQ1TUuKoMXDlClT2LZtGxs2bODOO+/kxRdf\nbPFAcu+993LllVcyYsQIlixZwpo1a3jggQfYs2cPL730Uou23nnnHfr06cPo0aN5/fXXU30oJiaA\nKXwmGcB1113H7NmzeeKJJxgyZAhDhgwB4MILL2whUMuWLeOMM86gpKSEPn36MH369JMsilCys7Pp\n1q0bvXr1YsyYMSxYsIA///nPPP/886xcuTLwuXvuuYfRo0dTUlLC8OHDufvuu/F6vUCT1fXggw+y\nZcuWgPXzj3/8A4Cnn36aM844g169enHKKadw4403UltbG2i3rq6OX//61wwYMIDi4mJGjRrF3/72\ntxbv33TTTQwYMICysjKmT5/O119/DcDKlSuZN28eTqczsN8HH3ww6vEuX76c008/neLiYmbMmMEP\nP/wAwJ49eygqKgq0rbNw4UL69euH3++P2KbVaqVr16707NmTn/zkJ8yaNYt33nkHgHXr1vHoo49y\n3333ce+99zJ27FhKS0uZOHEizz33HNdcc02LthYvXszs2bOZPXs2ixYtinosJibJwhQ+k4xg9erV\nbNq0iTfeeIO3334baOm6O3z4ML/61a/42c9+xhdffMG7777L7NmzW7WvuXPnUlBQwLJlywKvZWdn\n88wzz/DFF1/w6KOP8uabb/LII48AcMkllzBv3jwGDBjA9u3b2bp1K5dccgkAkiTxwAMP8Pnnn/PC\nCy+wfv16fve73wXavffee9myZQtLly7lyy+/5KmnnqKkpCTw/qxZszh06BBLly7l008/ZcKECcyc\nOZPDhw8zduxY7r//frKysgL7veGGGyIel9vt5qGHHuKvf/0r//73v1EUhSuuuAKA8vJyzj77bF55\n5ZUW27zyyitcfvnlyLJs+PxZrVY8Hg8AS5YsIScnh1//+tdhP5uXlxf4e8+ePaxatYpLL72UGTNm\nsH37djZt2mR4vyYmicL43W5ikkTsdjvPPPNMxAH4wIED+P1+Zs6cGZjzGjx4cKv2JYoi/fv3Z/fu\n3YHXfvOb3wT+Lisr45ZbbuGpp57i9ttvx263k52djSRJdO3atUVbwRZNWVkZ99xzDz/72c8CVl1V\nVRUjRoxg5MiRAC3m6z7++GM2bdrEjh07sNlsANx+++28++67/POf/+SGG24gLy8PQRBO2m84FEXh\nwQcfZPTo0QA8++yzjBw5ko8//phJkyYxd+5cbr75ZhYsWIDVamXr1q18+eWXPPnkk4bP3bp163j9\n9dc5++yzAfj++++pqKhAkqSY27766qtMnjyZwsJCAGbMmMHChQt56KGHDO/fxCQRmBafSUZQWVkZ\n1eoYNmwYkyZNYvz48VxxxRW89NJLHD16tNX70zStxf9vv/02F1xwAYMGDaK0tJTbb7+dqqqqmO18\n/PHHXHzxxQwZMoSysjLmzp2L1+vl0KFDAFx11VW8+eabnHnmmdx5552sWrUqsO3GjRtxOp3069eP\n0tLSwM+WLVv4/vvv4z4mURQ59dRTA/+XlZVRUlLC1q1bgSbXscVi4V//+hfQFDx02mmnMWjQoKjt\nvv/++5SWllJcXMx5553HxIkTAy7X0PMYCU3TeOWVV1oENc2aNYslS5YEXMomJqnCFD6TjCArKyvq\n+6Io8tZbb/HWW28xdOhQFi9ezKmnntoqV5mqquzYsYOKigoA1q5dy1VXXcW0adP45z//yaeffsof\n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\n8N1KDkS3dk9wtAjFkOE333zDQw89dMXrGRkZV0VMz7GfndlspqKigj59+tCjRw8WL14MwL59+3jy\nySe5ePEiU6dO5c477yQ2NhaLxcLKlSuZNGkS48eP5+mnn672XMLVFctzhTDxhSEbCgoKOHPmDB06\ndPD4WavVyvHjx9m1axdHjx5FoVDQrl07WwNfqWMywa4iItaSCrSLVIokeblgsVhsFrIrzJkzhwUL\nFlR7LT4+nj/++OOqUCMKOHbsGG3atAGqum307duXW2+9lZdeeonZs2czb948brzxRqZNm0ZycnK1\niit5eXk88cQTZGZm8uOPP9KwYcNgnUbQECa+MEIWQh3SPXv2cP78eerVq0daWhopKSlepWU4g6Ai\nDXTeoBSWlFzJ5RCaeZYgLj576tQpZs2axRdffFHtc/3792fdunWBmqrkcCz6PGbMGPbt28d7771H\n165dKSkpYfjw4Wg0GgwGA9nZ2UyePJl7772XunXrAnDp0iU+/fRTxo8fD8CpU6fQ6/W2NIXahqs7\nghlGjUZ0dDS9e/emd+/ewF91SH/99VcOHjyI0WikdevWpKen06xZMzQajeixBetBgNz96aRMRFco\nFLI08XV3PKlied7CkwpXoVBQUlLClClTiIuLY9GiRSxcuJB9+/aRkZHBnj17bPL8mgJ7V6N91ZhV\nq1YRHR2NUqnkzJkzbNy4kaZNm1KvXj1GjRrFxIkTadGiBatWrbI9M1AV95w3bx5r165lxIgRNGrU\niKZNmwI1o5OCHAhbfGHUaBiNRg4cOMD27dv59NNP6dixI126dKFr16506NBBduGMGHhKRJejDZQc\nLtJglBxzt1lQq9X88MMPzJ07lylTpjBgwABZ5yMnTp48ydatWxk9evQV+XOFhYU88sgj7Nixg27d\nuqFQKMjIyEChUPDqq68yatQoAIYNG0ZWVhYzZ87kwQcfBODo0aN89tlnrFmzhlGjRjFhwgRb1/Ta\njDDxhXHV4M033+T111+3/b9Pnz489dRTnDx5ks6dO9OqVSuX1eXFQFj0a1q5Mfv5SOkildNKdrdZ\nUCiqOim8/PLLVFZWMnv2bOLj4yU7dqBRXl7OuHHj2LBhA1u2bKFr167V3l+8eDGvvfYas2bNYtiw\nYdStW5eff/6ZJ554goSEBN566y26devG6dOnGTp0KGfPnqV3795oNBry8/PJzMxk2rRpNaZJbCAQ\n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\nzf8BAaXHKzAfWh4AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from mpl_toolkits.mplot3d import Axes3D\n", "fig = plt.figure()\n", "ax = Axes3D(fig)\n", "ax.set_title('Iris Dataset by PCA', size=14)\n", "ax.scatter(X_reduced[:,0],X_reduced[:,1],X_reduced[:,2], c=y, cmap=cmap)\n", "ax.set_xlabel('First eigenvector')\n", "ax.set_ylabel('Second eigenvector')\n", "ax.set_zlabel('Third eigenvector')\n", "ax.w_xaxis.set_ticklabels(())\n", "ax.w_yaxis.set_ticklabels(())\n", "ax.w_zaxis.set_ticklabels(())\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Clustering: K-means\n", "\n", "Clustering groups together observations that are homogeneous with respect to a given criterion, finding ''clusters'' in the data.\n", "\n", "Note that these clusters will uncover relevent hidden structure of the data only if the criterion used highlights it." ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\nAysqKuKhhx5i3rx5NGrUyNPhuEVJSQnvv/9+Zdfan9SkzJhwL6vVSlpaGv369atyfMCAAVLKzQcU\nFRXhcDgIDw/3dCgu43A4+PjjjyktLSUlJaXac306gT3++OPceOONDBgwwNOhuNyiRYtISEggISGB\n9evXs2rVKvR6vafDcpmalhkT7pWbm4vdbpdSbj5q6tSpdO7c+Yo3el+wZ88eEhISiI6O5vHHH+f9\n99+nbdu21V7jdXeOmpat+vDDD/n111/55z//6emQa6S25bjuvPNOvv/+e9auXUvLli259957KSsr\n82ALLs0fy4zVpU1CXG3Tp09n69atvPfeez47/3qhVq1asWnTJr755hseeOABJkyYwL59+6q9xuvm\nwPLy8sjNza32nPj4eB5//HH+85//VPng7HY7Go2GlJQUPv/8c3eHWis1aVdCQgJGo/Gi41arlWbN\nmvHKK69w5513uivEOqltuy4sM1bTSi1XW10+K1+dA7NarcTFxbFo0SKGDh1aefz//u//2Lt3r988\nWNbf5sCmTZvGf//7X9asWeNX8+IXGjZsGImJicybN++y57h0I7Mr1LRs1d///nceeeSRKsd69uzJ\ns88+y+DBg90VXp3VphzX7zkcDlRVpby83MVR1Z+7y4x5Qn0+K1+j1+vp0qULGzdurJLANmzYwLBh\nwzwYmbicKVOmsGrVKr9OXuC8713pnud1CaymYmNjiY2Nveh448aNadq0qQcico3Dhw/z6aef0rdv\nXyIjIzl+/DivvPIKAQEBDBo0yNPh1dm5MmMlJSV88MEHFBcXU1xcDDgThq/O72VnZ5OVlUV6ejqq\nqrJv3z7y8/Np0qSJz0ysp6amMmHCBLp27UqPHj1YtGgRWVlZ3HfffZ4OrV5KSko4dOgQqqricDg4\nduwYu3btwmw2Vyk+7kueeOIJli9fzgcffEBoaGjlPGVQUBBBQUEejq7uZs6cyU033UR8fDzFxcWs\nWLGCH374gRUrVlR7ndcNIdZHREQE//rXv3x6Gf3x48d57LHH2LFjBwUFBURFRfGHP/yBJ598kqSk\nJE+HV2ebNm266HO5VJkxX/P888/zwgsvXDQHMX/+fJ8arlq8eDFz584lKyuLtm3bMnv2bHr06OHp\nsOpl06ZN3H777Rd9NmPHjmX+/Pkeiqp+zGbzJee7pkyZwpQpUzwQkWtMmjSJTZs2kZ2dTWhoKO3b\nt+fRRx+9aHXs7/lVAhNCCNFweN0qRCGEEKImJIEJIYTwSZLAhBBC+CRJYEIIIXySJDAhhBA+SRKY\nEAkx6OUAAAAeSURBVEIInyQJTAghhE+SBCaEEMInSQITQgjhk/4/LHuHZUvn3EcAAAAASUVORK5C\nYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.cluster import KMeans\n", "k_means = KMeans(n_clusters=3, random_state=0) # Fixing the RNG in kmeans\n", "k_means.fit(X)\n", "y_pred = k_means.predict(X)\n", "y_pred[y_pred == 0] = -1 \n", "y_pred[y_pred == 1] = 0\n", "y_pred[y_pred == -1] = 1 \n", "plt.scatter(X_reduced[:, 0], X_reduced[:, 1], c=y_pred, cmap=cmap);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lets then evaluate the performance of the clustering versus the ground truth" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[50 0 0]\n", " [ 0 48 2]\n", " [ 0 14 36]]\n" ] } ], "source": [ "from sklearn.metrics import confusion_matrix\n", "\n", "# Compute confusion matrix\n", "cm = confusion_matrix(y, y_pred)\n", "np.set_printoptions(precision=2)\n", "print(cm)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def plot_confusion_matrix(cm, title='Confusion matrix', cmap=plt.cm.Blues):\n", " plt.imshow(cm, interpolation='nearest', cmap=cmap)\n", " plt.title(title)\n", " plt.colorbar()\n", " tick_marks = np.arange(len(iris.target_names))\n", " plt.xticks(tick_marks, iris.target_names, rotation=45)\n", " plt.yticks(tick_marks, iris.target_names)\n", " plt.tight_layout()\n", " plt.ylabel('True label')\n", " plt.xlabel('Predicted label')\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nfDzm5uZ515vbDnmonBCiJNItgImfmSvS29nZYWFhQWhoKA0aNABeXM+JiIhg5syZedYjD5UTQmgV\nTYfw06ZNo2PHjlStWpXExES2bNnCyZMn2bJlCwC+vr4sWLAAe3t7atSowbx58zA2NqZnz5551i1P\ngBNCaBV1Lhq97HUr0gOMGjWK5ORkxo0bx6NHj2jcuDHbt28v2BXpAY4fP87SpUs5f/48jx8/JiMj\nI1uZ27dva1KlEEJoRNMR/OtWpM80fvx4xo8fr3Esak9jOnjwIN27d+fKlSu0b9+ep0+f0qlTJzp0\n6EBGRgYODg4MGzZM4wCEEEITWrmc3bx581QPjnvy5AkbNmygf//+tGnThr///ptOnTrh7OxcmLEK\nIQQ6JWg9O7V7oBcvXqRPnz7o6+urlpNKT3/xjBUHBwcGDBjAvHnzCidKIYT4/3QUimyv4qJ2D1RP\nTw8jIyPgxcLKCoWCe/fuqfZXq1aNf/75p+AjFEKIl5SgZ8qp3wOtXr26KkHq6+vj4ODA3r17VfsP\nHTqk1sRTIYR4E1r5TKQOHTqwfft21bB9yJAh/PLLL7Ro0YLmzZuzZ88ePvvss8KKs0D5+fnx4Ycf\nFlh9/v7+uLi4FFh9QojcaeVFpLFjxzJgwABVth84cCB6enrs2rULXV1dhg0bpjUJNCAgAKVSWdxh\nCCHyQZN8uWDBAkJCQrhy5Qr6+vo0adKEb775BicnJ1UZPz8/Nm7cmOW4pk2bZlt0OSdqJ1BDQ0Oq\nVKmSZdsnn3zCJ598om4VRSI1NRU9Pb3XlnnnnXeKKBr1paWlUaaM3NcgRF40uWh06tQpBg8eTMOG\nDVEqlcyaNYvu3bsTFRWFiYmJqpybmxvLly9XdazyyiGqWDQLvWCtWbOGmjVrZusNDho0iL59+wKw\nb98+2rZti6WlJQ0aNGDmzJmkpqaqytavXx9/f38+//xzbG1tGTJkCPCil1mvXj0sLCyoVasWvr6+\nqmNyGsIvXryYxo0bY2FhQd26dZkxY4Zq3+XLl+nevTtWVlZUr14dPz8/Hj9+nOv7UiqVzJkzh7p1\n62JhYYGLi0uW88WxsbGYmpqybds2PD09qVKlCqtXr9b8AxTiLaTJVfitW7fi4+ODo6MjTk5O/Pjj\nj9y7dy/bWp/6+vpUrlwZMzMzzMzMsiTX18m1y/Pll1+q+Xb+j0Kh0Ggqk5eXFxMmTCA0NJR27doB\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Accuracy 0.893333333333\n" ] } ], "source": [ "plot_confusion_matrix(cm)\n", "\n", "print('Accuracy ', np.diag(cm).sum() / cm.sum())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Classification Logistic Regression" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Accuracy 0.96\n" ] } ], "source": [ "from sklearn.linear_model import LogisticRegression\n", "\n", "clf = LogisticRegression()\n", "clf.fit(X, y)\n", "y_pred = clf.predict(X)\n", "cm = confusion_matrix(y, y_pred)\n", "plot_confusion_matrix(cm)\n", "print('Accuracy ', np.diag(cm).sum() / cm.sum())" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n5KxZ2rRUAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Accuracy 0.993333333333\n" ] } ], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "\n", "clf = RandomForestClassifier()\n", "clf.fit(X, y)\n", "y_pred = clf.predict(X)\n", "cm = confusion_matrix(y, y_pred)\n", "plot_confusion_matrix(cm)\n", "print('Accuracy ', np.diag(cm).sum() / cm.sum())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Recap: Scikit-learn's estimator interface\n", "\n", "Scikit-learn strives to have a uniform interface across all methods,\n", "and we'll see examples of these below. Given a scikit-learn *estimator*\n", "object named `model`, the following methods are available:\n", "\n", "- Available in **all Estimators**\n", " + `model.fit()` : fit training data. For supervised learning applications,\n", " this accepts two arguments: the data `X` and the labels `y` (e.g. `model.fit(X, y)`).\n", " For unsupervised learning applications, this accepts only a single argument,\n", " the data `X` (e.g. `model.fit(X)`).\n", "- Available in **supervised estimators**\n", " + `model.predict()` : given a trained model, predict the label of a new set of data.\n", " This method accepts one argument, the new data `X_new` (e.g. `model.predict(X_new)`),\n", " and returns the learned label for each object in the array.\n", " + `model.predict_proba()` : For classification problems, some estimators also provide\n", " this method, which returns the probability that a new observation has each categorical label.\n", " In this case, the label with the highest probability is returned by `model.predict()`.\n", " + `model.score()` : for classification or regression problems, most (all?) estimators implement\n", " a score method. Scores are between 0 and 1, with a larger score indicating a better fit.\n", "- Available in **unsupervised estimators**\n", " + `model.predict()` : predict labels in clustering algorithms.\n", " + `model.transform()` : given an unsupervised model, transform new data into the new basis.\n", " This also accepts one argument `X_new`, and returns the new representation of the data based\n", " on the unsupervised model.\n", " + `model.fit_transform()` : some estimators implement this method,\n", " which more efficiently performs a fit and a transform on the same input data." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Flow Chart: How to Choose your Estimator\n", "\n", "This is a flow chart created by scikit-learn super-contributor [Andreas Mueller](https://github.com/amueller) which gives a nice summary of which algorithms to choose in various situations. Keep it around as a handy reference!" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import Image\n", "Image(url=\"http://scikit-learn.org/dev/_static/ml_map.png\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Original source on the [scikit-learn website](http://scikit-learn.org/stable/tutorial/machine_learning_map/)" ] } ], "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.5.1" } }, "nbformat": 4, "nbformat_minor": 0 }