Skip to content

Instantly share code, notes, and snippets.

@maciekmm
Last active April 16, 2020 10:28
Show Gist options
  • Save maciekmm/4e0f0b8e75a41b26aed4350ae3ee1d6e to your computer and use it in GitHub Desktop.
Save maciekmm/4e0f0b8e75a41b26aed4350ae3ee1d6e to your computer and use it in GitHub Desktop.
Tutorial #2 Grupa B 14:40
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "Tutorial2.ipynb",
"provenance": [],
"collapsed_sections": [
"FTasEyCRuskA",
"ol19TUo_uxEU",
"zFS3UOnYvAF0"
],
"toc_visible": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "Sy8H4XkXtMBL",
"colab_type": "text"
},
"source": [
"# Tutorial 2 - Feature selection and extraction"
]
},
{
"cell_type": "code",
"metadata": {
"id": "ozVKVy3c01XK",
"colab_type": "code",
"outputId": "fa3dcb99-21da-43ae-985d-f57c3623db2d",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 74
}
},
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import seaborn as sns\n",
"from sklearn.datasets import fetch_openml, load_breast_cancer, load_iris\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.preprocessing import MinMaxScaler, StandardScaler, Normalizer, normalize\n",
"from sklearn.feature_selection import SelectKBest, chi2, RFE\n",
"from sklearn.neighbors import KNeighborsClassifier, RadiusNeighborsClassifier, LocalOutlierFactor\n",
"from sklearn.metrics import accuracy_score\n",
"from sklearn.utils import resample\n",
"from sklearn import decomposition\n",
"from sklearn.ensemble import ExtraTreesClassifier\n",
"from sklearn.decomposition import PCA\n",
"import imgaug.augmenters as iam"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"/usr/local/lib/python3.6/dist-packages/statsmodels/tools/_testing.py:19: FutureWarning: pandas.util.testing is deprecated. Use the functions in the public API at pandas.testing instead.\n",
" import pandas.util.testing as tm\n"
],
"name": "stderr"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "aFSBAFsluos4"
},
"source": [
"## Zadanie 1. Selekcja cech\n",
"\n",
"*Opisać najważniejsze procedury selekcji cech. Jako przykład przedstawić działanie odpowiednich procedur scikit-learn eliminujących cechy na podstawie wybranego zbioru UCI dataset (np. Wisconsin_cancer, i jeszcze jakiś jeden inny, nie zapomnieć o normalizacji). Przedstawić uporządkowany histogram wag poszczególnych cech.*"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "JqOV3YY-U7jd",
"colab_type": "text"
},
"source": [
"### Filter methods"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "LPwMyLZ9VEO3",
"colab_type": "text"
},
"source": [
"Filtry polegają na zdefiniowaniu metryki, a następnie obliczeniu jej dla wszystkich cech i wyborze najlepszych z nich. Przykładowe algorytmy:\n",
"\n",
"\n",
"* Chi-squared\n",
"* Pearson`s correlation\n",
"* Variance threshhold\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "CB1bR7VTU_j9",
"colab_type": "text"
},
"source": [
"### Wrapper methods\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Al8lqQPKXd1x",
"colab_type": "text"
},
"source": [
"Metody opakowane używają dodatkowego algorytmu uczenia maszynowego jako kryterium doboru podzbioru cech. Wybierany jest ten podzbiór, który daje najlepsze wyniki przy użyciu zastosowanego algorytmu.\n",
"Przykłady:\n",
"\n",
"\n",
"* Forward selection\n",
"* Recursive feature elimination\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "NZ4tLx6eZbaM",
"colab_type": "text"
},
"source": [
"### Embedded methods\n",
"Metody wbudowane wykorzystują algorytmy posiadające wbudowane sposoby selekcji cech. Przykłady:\n",
"\n",
"* Lasso regression\n",
"* Ridge regression\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "BS4Dta1FaDYd",
"colab_type": "text"
},
"source": [
"### Przykłady zastosowania"
]
},
{
"cell_type": "code",
"metadata": {
"id": "QI2MftCOaQRI",
"colab_type": "code",
"colab": {}
},
"source": [
"def print_selected_features(mask_arr, features):\n",
" print(\"best features: \")\n",
" for i, mask in enumerate(mask_arr):\n",
" if mask:\n",
" print(\"[%d] %s\" % (i, features[i]))\n",
"\n",
"\n",
"def selectKbest_selection(X_train, y_train, m_best, features):\n",
" selector = SelectKBest(chi2, k = m_best)\n",
" selector.fit(X_train, y_train)\n",
"\n",
" print_selected_features(selector.get_support(), features)\n",
"\n",
"\n",
"def rfe_selection(X_train, y_train, m_best, features):\n",
" estimator = ExtraTreesClassifier() # algorithm used to estimate relevance for each feature\n",
" selector = RFE(estimator, m_best)\n",
" selector.fit(X_train, y_train)\n",
"\n",
" print_selected_features(selector.get_support(), features)"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "MMM9bEfLaa77",
"colab_type": "code",
"outputId": "7628b6bc-447a-4202-9578-c99d7c7318cd",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 495
}
},
"source": [
"# breast cancer dataset\n",
"wisconsin = load_breast_cancer()\n",
"features = wisconsin.feature_names\n",
"print(\"all features: \")\n",
"print(features)\n",
"\n",
"X, y = load_breast_cancer(return_X_y=True)\n",
"Xnorm = normalize(X)\n",
"X_train, X_test, y_train, y_test = train_test_split(Xnorm, y, test_size=0.2)\n",
"\n",
"m_best = 5\n",
"print(\"\\nSelectKBest: \")\n",
"selectKbest_selection(X_train, y_train, m_best, wisconsin.feature_names)\n",
"print(\"\\nRFE: \")\n",
"rfe_selection(X_train, y_train, m_best, wisconsin.feature_names)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"all features: \n",
"['mean radius' 'mean texture' 'mean perimeter' 'mean area'\n",
" 'mean smoothness' 'mean compactness' 'mean concavity'\n",
" 'mean concave points' 'mean symmetry' 'mean fractal dimension'\n",
" 'radius error' 'texture error' 'perimeter error' 'area error'\n",
" 'smoothness error' 'compactness error' 'concavity error'\n",
" 'concave points error' 'symmetry error' 'fractal dimension error'\n",
" 'worst radius' 'worst texture' 'worst perimeter' 'worst area'\n",
" 'worst smoothness' 'worst compactness' 'worst concavity'\n",
" 'worst concave points' 'worst symmetry' 'worst fractal dimension']\n",
"\n",
"SelectKBest: \n",
"best features: \n",
"[1] mean texture\n",
"[2] mean perimeter\n",
"[3] mean area\n",
"[21] worst texture\n",
"[22] worst perimeter\n",
"\n",
"RFE: \n",
"best features: \n",
"[0] mean radius\n",
"[2] mean perimeter\n",
"[3] mean area\n",
"[20] worst radius\n",
"[22] worst perimeter\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "aG_NIuCUayMj",
"colab_type": "code",
"outputId": "7de02300-5fb3-447d-f99d-8eb40ab6c642",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 256
}
},
"source": [
"# iris dataset\n",
"iris = load_iris()\n",
"features = iris.feature_names\n",
"print(\"all features: \")\n",
"print(features)\n",
"\n",
"X, y = load_iris(return_X_y=True)\n",
"Xnorm = normalize(X)\n",
"X_train, X_test, y_train, y_test = train_test_split(Xnorm, y, test_size=0.2)\n",
"\n",
"m_best = 3\n",
"print(\"SelectKBest: \")\n",
"selectKbest_selection(X_train, y_train, m_best, iris.feature_names)\n",
"print(\"\\nRFE: \")\n",
"rfe_selection(X_train, y_train, m_best, iris.feature_names)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"all features: \n",
"['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']\n",
"SelectKBest: \n",
"best features: \n",
"[1] sepal width (cm)\n",
"[2] petal length (cm)\n",
"[3] petal width (cm)\n",
"\n",
"RFE: \n",
"best features: \n",
"[1] sepal width (cm)\n",
"[2] petal length (cm)\n",
"[3] petal width (cm)\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "Wz4nLk6xcw0p",
"colab_type": "text"
},
"source": [
"### Histogramy wag poszczególnych cech"
]
},
{
"cell_type": "code",
"metadata": {
"id": "DFKmRhwUc6BX",
"colab_type": "code",
"colab": {}
},
"source": [
"def plot_feature_relevance(data, target, features_names):\n",
" model = ExtraTreesClassifier()\n",
" model.fit(data, target)\n",
" ys = model.feature_importances_\n",
"\n",
" fig = plt.figure()\n",
" ax = fig.add_axes([0, 0, 1, 1])\n",
" ax.bar(features_names, ys)\n",
" plt.xticks(rotation=90)\n",
" plt.show()"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "IvdnuGrDdDH3",
"colab_type": "code",
"outputId": "fbecb612-dc28-464e-e677-4a88b6889ce0",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 445
}
},
"source": [
"# breast cancer\n",
"wisconsin = load_breast_cancer()\n",
"\n",
"plot_feature_relevance(normalize(wisconsin.data), wisconsin.target, wisconsin.feature_names)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\nJOb/AWxhb7dx21y4AAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "KiPu4oVWdDQn",
"colab_type": "code",
"outputId": "faa98cc6-2668-429a-b4be-32a73d4abee4",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 414
}
},
"source": [
"# iris\n",
"iris = load_iris()\n",
"\n",
"plot_feature_relevance(normalize(iris.data), iris.target, iris.feature_names)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\nrSRJjf1/1idEe8ArubIAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "FTasEyCRuskA"
},
"source": [
"## Zadanie 2. KNN\n",
"*Zbadać jakość klasyfikatorów k-nn (dla różnego k=1,3,5) dla pełnego zestawu N cech, dla mniejszego zestawu m cech wybranych w sposób losowy i dla wyselekcjonowanego zestawu m najlepszych cech. Przy pomocy studentów wypełnić tabelkę: (k=1,3,5; m=N,5,2) dla tych dwóch zbiorów.*"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"id": "1czUrTViuskF",
"colab": {}
},
"source": [
"# Utility functions\n",
"def predict_and_check_util(k, X, y):\n",
" X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.8)\n",
"\n",
" knn = KNeighborsClassifier(n_neighbors=k) \n",
" knn.fit(X_train, y_train)\n",
" y_predict = knn.predict(X_test)\n",
"\n",
" return accuracy_score(y_test, y_predict)\n",
"\n",
"def predict_and_check_best(k, m, X, y):\n",
" X_new = SelectKBest(chi2, k=m).fit_transform(X, y)\n",
"\n",
" acc = predict_and_check_util(k, X_new, y)\n",
" return acc\n",
"\n",
"def predict_and_check_random(k, m, X, y):\n",
" X_new = X[:, :m]\n",
"\n",
" acc = predict_and_check_util(k, X_new, y)\n",
" return acc\n",
"\n",
"\n",
"# k values used in k-nn\n",
"ks = [1, 3, 5]"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "60A0Eq-_UE3e",
"colab_type": "code",
"colab": {}
},
"source": [
"data, target = load_breast_cancer(return_X_y=True)\n",
"X, y = data.copy(), target.copy()"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "f6597453-e66c-47bf-e1ee-84c24339f90c",
"id": "oGiaDpOzuskh",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"source": [
"# wisconsin dataset:\n",
"features_count = X.shape[1]\n",
"ms = [features_count, 5, 2]\n",
"\n",
"acc_best = []\n",
"acc_random = []\n",
"\n",
"for k in ks:\n",
" for m in ms:\n",
" acc_best.append([k, m, predict_and_check_best(k, m, X, y)])\n",
" acc_random.append([k, m, predict_and_check_random(k, m, X, y)])\n",
"\n",
"df = pd.DataFrame(acc_best, columns=['k-neighbours', 'm-best', 'score'])\n",
"print('Best scores:')\n",
"print(df)\n",
"print()\n",
"\n",
"df = pd.DataFrame(acc_random, columns=['k-neighbours', 'm-best', 'score'])\n",
"print('Random scores:')\n",
"print(df)\n"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"Best scores:\n",
" k-neighbours m-best score\n",
"0 1 30 0.916667\n",
"1 1 5 0.901316\n",
"2 1 2 0.864035\n",
"3 3 30 0.916667\n",
"4 3 5 0.932018\n",
"5 3 2 0.925439\n",
"6 5 30 0.925439\n",
"7 5 5 0.932018\n",
"8 5 2 0.918860\n",
"\n",
"Random scores:\n",
" k-neighbours m-best score\n",
"0 1 30 0.925439\n",
"1 1 5 0.824561\n",
"2 1 2 0.850877\n",
"3 3 30 0.918860\n",
"4 3 5 0.864035\n",
"5 3 2 0.857456\n",
"6 5 30 0.903509\n",
"7 5 5 0.769737\n",
"8 5 2 0.872807\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"id": "wsTV4CnrWpnA",
"colab_type": "code",
"colab": {}
},
"source": [
"data, target = load_iris(return_X_y=True)\n",
"X, y = data.copy(), target.copy()"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "abf2db21-d035-43e9-c893-f45b4ed8111f",
"id": "KXt3LJA2usku",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"source": [
"# iris dataset:\n",
"features_count = X.shape[1]\n",
"ms = [features_count, 3, 2]\n",
"\n",
"acc_best = []\n",
"acc_random = []\n",
"\n",
"for k in ks:\n",
" for m in ms:\n",
" acc_best.append([k, m, predict_and_check_best(k, m, X, y)])\n",
" acc_random.append([k, m, predict_and_check_random(k, m, X, y)])\n",
"\n",
"df = pd.DataFrame(acc_best, columns=['k-neighbours', 'm-best', 'score'])\n",
"print('Best scores:')\n",
"print(df)\n",
"print()\n",
"\n",
"df = pd.DataFrame(acc_random, columns=['k-neighbours', 'm-best', 'score'])\n",
"print('Random scores:')\n",
"print(df)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"Best scores:\n",
" k-neighbours m-best score\n",
"0 1 4 0.858333\n",
"1 1 3 0.966667\n",
"2 1 2 0.925000\n",
"3 3 4 0.841667\n",
"4 3 3 0.933333\n",
"5 3 2 0.975000\n",
"6 5 4 0.958333\n",
"7 5 3 0.941667\n",
"8 5 2 0.933333\n",
"\n",
"Random scores:\n",
" k-neighbours m-best score\n",
"0 1 4 0.925000\n",
"1 1 3 0.941667\n",
"2 1 2 0.633333\n",
"3 3 4 0.925000\n",
"4 3 3 0.858333\n",
"5 3 2 0.783333\n",
"6 5 4 0.950000\n",
"7 5 3 0.791667\n",
"8 5 2 0.708333\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "ol19TUo_uxEU"
},
"source": [
"## Zadanie 3. Kowariancja\n",
"*Opisac Pythonową procedurę liczenia macierzy kowariancji. Pokazać, jak tworzy się „hot map” dla takiej macierzy. Co można z niej odczytać.*"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "HCzB83wPuxEb"
},
"source": [
"Kowariancja określa zależność liniową między dwiema zmiennymi. Dodatnia kowariancja oznacza, że wartości dwóch zmiennych zachowują sie wprost proporcjonalnie. Ujemna - odwrotnie proporcjonalnie, a bliska zeru: że zmienne nie są ze sobą powiązane. W macierzy kowariancji, `Cov[i][j]` oznacza kowariancję zmiennych `i` oraz `j`."
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "c2aada70-d820-4250-d6b5-3f4f5d13b16b",
"id": "QxrCRkkduxEg",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"source": [
"data = {\n",
" 'a': [2, 4, 7, 5, 2],\n",
" 'b': [1, 5, 12, 10, 5],\n",
" 'c': [10, 7, 3, 5, 6],\n",
" 'd': [0, 1, 0, 1, 0]\n",
"}\n",
"\n",
"df = pd.DataFrame(data,columns=['a','b','c', 'd'])\n",
"\n",
"covMatrix = pd.DataFrame.cov(df)\n",
"\n",
"print(covMatrix)\n",
"print()\n",
"\n",
"sns.heatmap(covMatrix, annot=True, fmt='g')\n",
"plt.show()"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
" a b c d\n",
"a 4.50 8.50 -4.5 0.25\n",
"b 8.50 19.30 -10.9 0.45\n",
"c -4.50 -10.90 6.7 -0.10\n",
"d 0.25 0.45 -0.1 0.30\n",
"\n"
],
"name": "stdout"
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 2 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "ZH7_9W5Cu1Zy"
},
"source": [
"## Zadanie 4. PCA\n",
"*Opisać działanie transformacji PCA. Opisać Pythonowe procedury realizujące transformatę PCA. Pokazać jak wybierane są nowe cechy, kombinacją jakich oryginalnych cech są nowe cechy. Przedstawić (podobnie jak w przypadku selekcji cech) uporządkowany histogram wag (wartości własnych) poszczególnych nowych cech. Porównać do tego, stworzonego wcześniej, dla oryginalnych cech*"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "t1G2kQpru1Z4"
},
"source": [
"### Transformacja PCA\n",
"\n",
"#### Po co?\n",
"Częstym problemem w metodach uczenia maszynowego jest przekleństwo wymiarowości. Przy pomocy transformacji PCA można zredukować wymiarowość zbioru.\n",
"\n",
"Często, gdy mamy wiele cech, spora część z nich jest ze sobą skorelowana. Zadaniem PCA jest odkrycie, które z cech są ze sobą skorelowane i w związku z tym, które można by zastąpić kombinacją liniową innych cech.\n",
"\n",
"#### Zasada działania PCA\n",
"Zbiór z N cechami można interpretować jako N-wymiarowy układ współrzędnych.\n",
"Algorytm PCA oblicza w zestawie kowariancję pomiędzy cechami i szuka takiego obrotu tego układu współrzędnych, żeby pierwsza współrzędna miała największa wariancję, druga mniejszą, itd. Współrzędna przed obrotem jest daną cechą, a po obrocie kombinacją liniową starych cech. Każda kolejna współrzędna (nowa cecha po zastosowaniu PCA) ma mniejszy wpływ na dane.\n",
"\n",
"Dzięki takiemu obrotowi układu, można odciąć cechy mające mniejszy wpływ na wynik.\n",
"\n",
"*Obrazkowo:*\n",
"\n",
"![PCA](https://hackernoon.com/drafts/kk19133no.png)\n",
"\n",
"_https://hackernoon.com/dimensionality-reduction-using-pca-a-comprehensive-hands-on-primer-ph8436lj_\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "SdHJ0-8yu1Z9"
},
"source": [
"Załadujmy zbiór danych dotyczący raka piersi."
]
},
{
"cell_type": "code",
"metadata": {
"id": "P32P-PbZSJYX",
"colab_type": "code",
"colab": {}
},
"source": [
"breast_cancer_ds = load_breast_cancer()"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "9fb7f294-0e3b-4f65-dde8-e1595f4a3469",
"id": "w9m_wDhDu1aR",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 35
}
},
"source": [
"data = breast_cancer_ds['data'].copy()\n",
"\n",
"print('Breast cancer data shape: ', data.shape)\n",
"normalized = normalize(data) # normalization is an important preprocessing step in PCA"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"Breast cancer data shape: (569, 30)\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "yRydUXyau1ac"
},
"source": [
"Przypomnijmy sobie wykres wag starych cech:"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "4479037e-1286-44ee-e429-b329f1b2add6",
"id": "VpsldJlQu1ad",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 547
}
},
"source": [
"# feature importance\n",
"model = ExtraTreesClassifier()\n",
"model.fit(normalized, breast_cancer_ds['target'])\n",
"\n",
"xs = breast_cancer_ds.feature_names\n",
"ys = model.feature_importances_\n",
"\n",
"# Plotting\n",
"fig = plt.figure(figsize=(10,5))\n",
"ax = fig.add_axes([0, 0, 1, 1])\n",
"ax.bar(xs, ys)\n",
"plt.xticks(rotation=90)\n",
"plt.title(\"Wagi starych cech\")\n",
"plt.ylabel(\"Waga\")\n",
"plt.xlabel(\"Cecha\")\n",
"plt.show()"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\naDQajUajj/8PnSRguau8pn4AAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 720x360 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "jCBPvFvmu1an"
},
"source": [
"Zaaplikujmy PCA"
]
},
{
"cell_type": "code",
"metadata": {
"id": "Mirm-106csa5",
"colab_type": "code",
"colab": {}
},
"source": [
"def pca_transform(normalized_data, features_to_keep = 8):\n",
" if features_to_keep > normalized_data.shape[1]:\n",
" raise ValueError(\"Zmniejszże liczbe komponentów, bo ni mom tyle ficzerów. Z pustego salomon nie naleje. Dostępnych: {}\".format(normalized_data.shape[1]))\n",
"\n",
" # create and fit/train the PCA\n",
" pca = decomposition.PCA(n_components=features_to_keep)\n",
" pca.fit(normalized_data)\n",
"\n",
" # apply dimensionality reduction to normalized normalized_data\n",
" pca_normalized_data = pca.transform(normalized_data)\n",
" return pca, pca_normalized_data"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "c2bfb620-8478-45be-e50e-fdc1909450d9",
"id": "l-kIxS1mu1av",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 54
}
},
"source": [
"to_keep = 8\n",
"pca, pca_data = pca_transform(normalized, to_keep)\n",
"eigenvalues = pca.singular_values_\n",
"\n",
"print(\"Original shape: \", normalized.shape)\n",
"print('Reduced shape: ', pca_data.shape)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"Original shape: (569, 30)\n",
"Reduced shape: (569, 8)\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "_2hK6mhKu1a5"
},
"source": [
"Algorytm PCA zostawił 8 kombinacji liniowych starych cech o malejącej wadze/udziale w danych.\n",
"\n",
"### Wykres wag nowych cech"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "82b8a428-33bb-4e42-ad41-a736a8b8dafd",
"id": "vrXnXI_Su1a6",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 404
}
},
"source": [
"labels=['PCA #{}'.format(i) for i in range(to_keep)]\n",
"\n",
"fig = plt.figure(figsize=(to_keep * 2, 6))\n",
"plt.bar(labels, eigenvalues)\n",
"plt.xlabel(\"Nowa cecha\")\n",
"plt.ylabel(\"Waga\")\n",
"plt.title(\"Wagi nowych cech\")\n",
"\n",
"plt.show()"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA7AAAAGDCAYAAAASzPzoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO3df/ylZV0n/tdbQMX8lc2sqwIOD8XU\nFM1GLUulsha1ZNUsWNOvrkr1DbWsTdwKS9tEs9aHu5hLilhbslrazjcx62smJGoMCSK45Cgog7aM\nIFj5K/C9f5x71uP4mZnPwJw5n+szz+fjcR5z7vu+zn2/73Nxhnmd676vU90dAAAAWOtus+wCAAAA\nYDUEWAAAAIYgwAIAADAEARYAAIAhCLAAAAAMQYAFAABgCAIsAOyDqnp9Vf3qsuvYV1XVVXXfJR17\n03T8Q5dxfADWDwEWgOFV1Uuq6l27rPv4btadeGuO1d0/3d0vvzX7AABuGQEWgPXgvCSPqqpDkqSq\n7pHksCTfucu6+05tAYABCbAArAcXZhZYHzotPzrJe5Ncscu6T3T3Z6rq2VX1sar6x6r6ZFX91PzO\nquqXquqzVfWZqnru/OW3VXV2Vf3GSkVU1bOq6m+q6tVV9fmqurKqHj+3/Z5VtaWqrq+qbVX1vGn9\n7avqS1W1YVr+5aq6qaruPC2/vKpeU1UPr6r/vTOUT9ueUlWXTM8Pqar/WFWfmM7toqo6cq7Ex02j\n0DdU1RlVVbs5j93up6ruX1V/OZ3DFVX143OvO7yqfruqPlVVN07vxeFzu356VX26qj5XVb+80rEB\nYE8EWACG191fTfKhJI+ZVj0myflJ/maXdTtHX69N8iNJ7pzk2Un+c1U9LEmq6vgkL0ryuMxGbI/b\nx3IemVlw3pDkVUneOBcUz0myPck9k/xYkt+sqh/o7i9nFsIfO7V7bJJPJfneueX3dfeFSa5L8sNz\nx3tGkt+fnr8oyUlJnjCd279P8sW5tj+S5OFJjk3y40n+zW7OYcX9VNW3JPnLJH+U5F8lOTHJ66rq\ngdPrXp3ku5I8KsndkvxSkq/N7ff7knx7kh9MclpVPWA3xweAFQmwAKwX78vXw+qjMwuw5++y7n1J\n0t3v7O5P9Mz7kvzFtD2ZBbs3dfdl3f3FJL+2j3V8qrt/r7tvTvLmJPdIcvdpBPN7k7y4u7/c3Rcn\neUOSZ87V/9hpoqNjk7x2Wr59ZqFzZ/h+c5KfTJKqultmIfSPpm3PTfIr3X3FdG6XdPd1c7Wd3t03\ndPenMxuhfmhWtrv9/EiSq7r7Td19U3d/OMmfJHlaVd0ms6D7wu6+prtv7u4Luvsrc/v99e7+Undf\nkuSSJA/Zt7cWgIOdAAvAenFeku+bQt3G7v54kgsyuzf2bkkeNLVJVT2+qj44XQZ7Q2YjjRum/dwz\nydVz+51/vhr/sPPJFICT5I7Tfq/v7n+ca/upJPeanr8vs9HehyW5NLORzscm+e4k2+aC6H9P8qPT\naOiPJzm/uz87bTsyySdWU1tmI7N33E273e3n3kkeOV2CfMP03j09yb/O7P27/X46PgCsSIAFYL34\nQJK7JHlekvcnSXd/IclnpnWf6e4rq+p2mY0avjrJ3bv7rknOTbLzMt/PJjlibr/z95DeGp9Jcreq\nutPcuqOSXDM9vyCzy2ufnNnlwpdP25+QaeR4OqdrpnN9SmaXD//B3P6uTnKf/VDr7vZz9VTbXece\nd+zun0nyuSRf3k/HB4AVCbAArAvd/aUkWzO7f/P8uU1/M63beQnubZPcLsmOJDdNkyzN31P61iTP\nrqoHVNUdkuyX33zt7qszC6mvmCZtOjbJczIbUd05WntRkp/N1wPrBUl+em55p9/P7P7SByd5+9z6\nNyR5eVUdUzPHVtW33YJyd7efP0tyv6p6RlUdNj0eXlUP6O6vJTkrye9Mk1UdUlXfM31hAAD7hQAL\nwHryvswmF/qbuXXnT+vOS5LpEt4XZBZUP5/k3yXZsrNxd78rs/tP35tkW5IPTpvm7+W8pU5Ksimz\n0dh3JHlpd///u9R/WJK/nVu+U775p3/ekdnlvO+Yu0w5SX4ns/P6iyRfSPLGJIdn3624n+m9++HM\nJm/6TGaXBL8ysy8EkuQXM7v8+cIk10/b/FsDgP2munvZNQDAmjXNlPvRJLfr7puWXc9OVfWJJD+1\nSwAGgHXNt6IAsIuqenJV3a6qvjWzUcT/b42F16cm6SR/texaAOBAEmAB4Jv9VGa/FfuJJDcn+Znl\nlvN1VfXXSX43yc9O950CwEHDJcQAAAAMwQgsAAAAQxBgAQAAGMKhyy5gX23YsKE3bdq07DIAAABY\ngIsuuuhz3b1xpW3DBdhNmzZl69atyy4DAACABaiqT+1u28IuIa6qs6rq2qr66B7aHFdVF1fVZVX1\n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\ntt+uqv7HtP1DVbVpkfUAAAAwroVN4lRVhyQ5I8kPJdme5MKq2tLdl881e06Sz3f3favqxCSvTPIT\ni6oJAAAYj0m29p/RJ9la5AjsI5Js6+5PdvdXk5yT5IRd2pyQ5M3T8z9O8oNVVQusCQAAgEEtMsDe\nK8nVc8vbp3Urtunum5LcmOTbFlgTAAAAg6ruXsyOq34syfHd/dxp+RlJHtndp8y1+ejUZvu0/Imp\nzed22dfJSU6eFr89yRULKfrgsiHJ5/baimXRP2ufPlrb9M/apn/WNv2ztumftU3/7B/37u6NK21Y\n2D2wSa5JcuTc8hHTupXabK+qQ5PcJcl1u+6ou89McuaC6jwoVdXW7t687DpYmf5Z+/TR2qZ/1jb9\ns7bpn7VN/6xt+mfxFnkJ8YVJjqmqo6vqtklOTLJllzZbkvw/0/MfS/JXvaghYQAAAIa2sBHY7r6p\nqk5J8u4khyQ5q7svq6qXJdna3VuSvDHJH1TVtiTXZxZyAQAA4Jss8hLidPe5Sc7dZd1pc8+/nORp\ni6yB3XJJ9tqmf9Y+fbS26Z+1Tf+sbfpnbdM/a5v+WbCFTeIEAAAA+9Mi74EFAACA/UaAHVBV3VxV\nF1fVR6vqbVV1h2n9v66qc6rqE1V1UVWdW1X3m3vdz1XVl6vqLqs4xlumCbh+rqpOmlt/dFV9qKq2\nVdX/mCboYs6S++eUqW+6qjYs5gzHtuT++cOqumI69llVddhiznJcS+6fN1bVJVX1kar646q642LO\nclzL7J+57a+tqn/av2e2Piz583N2VV05Hf/iqnroYs5yXEvun6qq/1RVf19VH6uqFyzmLMe15P45\nf+6z85mq+tPFnOX6IMCO6Uvd/dDuflCSryb56aqqJO9I8tfdfZ/u/q4kL0ly97nXnZTZ7NBPWcUx\nNnX3lUkem+S8ufWvTPKfu/u+ST6f5Dm3/nTWnWX2z/uTPC7Jp/bDeaxXy+yfP0xy/yQPTnJ4kufe\n6rNZf5bZPz/f3Q/p7mOTfDrJKSu++uC2zP5JVW1O8q374TzWq6X2T5L/MB3/od198a0+m/Vnmf3z\nrMx+uvL+3f2AJOfc6rNZf5bWP9396J2fnSQfSPL2/XNK65MAO77zk9w3yfcn+Zfufv3ODd19SXef\nnyRVdZ8kd0zyK5l90FZUsxGiy5Pcv6ouTvLDSd5ZVc+dPsQ/kOSPp+ZvTvJvF3BO68kB659pnx/u\n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\nAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 1152x432 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "BpLLln6Ru1bB"
},
"source": [
"### Udział starych cech w nowych cechach\n",
"\n",
"Prześledźmy jaki udział stare cechy mają w poszczególnych nowych cechach.\n"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "27ce0e3c-ebd3-4ece-90dd-594208e6f600",
"id": "l77ScLMUu1bC",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 621
}
},
"source": [
"fig, ax = plt.subplots(figsize=(20,10))\n",
"\n",
"heatmap = ax.pcolor(abs(pca.components_.transpose()), cmap='Reds')\n",
"\n",
"fig.colorbar(heatmap)\n",
"\n",
"ax.set_yticks(np.arange(pca.components_.shape[1])+0.5, minor=False)\n",
"ax.set_xticks(np.arange(pca.components_.shape[0])+0.5, minor=False)\n",
"ax.set_xticklabels(labels, minor=False)\n",
"ax.set_yticklabels(breast_cancer_ds.feature_names, minor=False)\n",
"\n",
"plt.xlabel(\"Nowa cecha\")\n",
"plt.ylabel(\"Stara cecha\")\n",
"plt.title(\"Udział starych cech w nowych cechach.\")\n",
"plt.show()"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABIAAAAJcCAYAAACBhN80AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nOzde7hdZXX3/e8vAQGTAErwAFVRwCIq\nRAhYqEFBH7WtYrB4QJSirRTfKgpC5al9FX08gMDDW7XVIigeUKkgQhGFCuSAUA4hJAFstYj1RBEQ\nENAghPH+Me+ti83eO8e9V7L29+O1Luea8z6MOdfCiz0c971SVUiSJEmSJGlwTel3AJIkSZIkSRpf\nJoAkSZIkSZIGnAkgSZIkSZKkAWcCSJIkSZIkacCZAJIkSZIkSRpwJoAkSZIkSZIGnAkgSZLWQ0kq\nyQ4raXNwkotXcbzjknxp3UQ3MVblGYzj3Nu1+Tfqx/z91u/vS5IzknxoHMbt23dKkqR+MwEkSdI4\nG+mPznXxB3ZVnVlVL1276MaW5EdJXjKec0iSJGn8mQCSJEnjJsnUfscgSZIkE0CSJK0XkhyT5NYk\nP0/ylp7z2yS5r+f16yTVrh2a5PKetv+Q5CdJfpVkUZI5w6Z5UpJDRph7ZpILktyd5JdJFiaZkuSL\nwFOBf21z/21r/7Uk/5PkniQLkjy7Z6wzknwqyYVJ7geOSnJbbyIoyauTLGnHU5P8XZKbk9zb4n5K\nT3gvSfKDFts/Jskoz2/UcZLslOTf2r39Z5LX9vTbLMnJSf673c/lSTbrGfrgJD9OckeS944y99Nb\nfFPa+88k+UXP9S8medcofX+U5OgkS9v8ZyXZtOf6W5P8V4v9/CTbtPMfSPKJdrxxkvuTnNhzT8uT\nPD7JN5O8Y9icS5Mc0I6f3fNsbkvydz1NH5PkC+153phk9kj3MNY47Xt0bPtc7kzyL0ke39PvBUmu\naM/vJ0kO7Rn2cS3+e5NclWT7nn6jftfX1XdKkqRBYwJIkqQ+S/Jy4GjgfwE7Ar9bclVVP6+q6UMv\n4Fzgq6MMdQ0wC3g88GXgaz3JhM2BZwP/NUK/dwM/BbYGngj8XTd1vQn4MfDKNv/HWvtvtTifAFwH\nnDlsvDcAHwZmAJ8A7gR6l6q9CfhCOz4KOAj40xbjW4Bf97R9BbAHsAvwWuBlo9z7iOMkmQb8W3se\nTwBeD/xTkp1bv5OA3YG96Z7b3wIP94z7AuAPgRcD70vyrOETV9UtwK+A57VT+wD39bR9ITB/lLhp\n9/Vy4OntPg8FSLIf8NF2/cnAf/P7z34+8KJ2vAfwP21egL2A/6yqXwKfB944NFGSXYFtgW8mmQF8\nB/g2sA2wA3BJT1z7t/m2BM4HPjlS8CsZ5x3A3PYMtgHuAv6x9Xsa3XfpE3TfvVnA9T1Dvx74APA4\nuu/th3uujfVdX1ffKUmSBooJIEmS+u+1wOeq6oaquh84bqRGSd4D7ET3B+2jVNWXqurOqnqoqk4G\nNgH+MMlfAH8JXFJVV4zQ9UG6BMPTqurBqlpYVTVasFX12aq6t6oeaLHummSLnibnVdV3q+rhqlpO\nTxKiVX+8jO6PdoC/Av6+qv6zOkuq6s6esY6vqrur6sfAZXR/9I9ktHFeAfyoqj7Xnsti4BzgNa1i\n5y3AO6vqZ1W1oqquaPc15ANV9ZuqWgIsAXYdZf75wAuTPKm9P7u9fzpdEmLJaM8T+HhL9P0S+Nee\nezwY+GxVXddi+t/AXkm2A64EdkyyFV3i53Rg2yTTeWTC6XzgmUl2bO/fBJxVVb9tz+Z/qurkqlre\nPtOreuK6vKourKoVwBfHuPexxjkceG9V/bTn+3Jgus213wB8p6q+0r53d1ZVbwLo3Kq6uqoeoksy\n/u6zH+273i6vq++UJEkDxQSQJEnjbwWw8bBzG9MlXqCrjPhJz7X/Hj5Akj8B3gnMrarfjDRJW0r0\nvbaU6G5gC2AmXRLgH8aI70S6CouLk/wwybGjNWzLa45vy2t+BfyoXZrZ0+wnw7p9CXhlq8Z5LbCw\nqm5t154C3DxGbP/Tc/xrYPoo7UYb52nA89tyn7vbczkYeFKLedN1NP9QRc4+wAJgHl0i5oV09/vw\nKP3GmmMber4LVXUfXTXVtu07cG0bf582/xXAH9OTAGoJuLOAN7aE10F0yRxY/We/aUb+VbSxxnka\ncG7Ps/8e3T8PT1yD+X/37Mf4rq8snjHHlSRpkJkAkiRp/P0Y2G7Yuafz+z/ub6X7o3XIU3sbJvlD\nuiqa11bV8OTKUJs5dMuXXgs8rqq2BO4BUlV38chlTY/QKjbeXVXPoFv2c1SSFw9dHtb8DcCr6Jap\nbdFzX737qDyiT1X9jK5i5dV0FShf7Ln8E2B71t5o4/wEmF9VW/a8plfV24A7gOXraP75wBy6JNB8\n4HKGJWPWwM/pEigAtATaVsDPeubcj27p2TXt/cuAPemSUEM+T5f0ejHw66q6sp3/CfCMNYyt11jj\n/AT4k2HPf9P2nVijz36s73rPnOviM5UkaaCYAJIkafydBfx9kj9om+K+BHgl3TIhgH8BDk2yc5LH\nAu8f6phkc+A8umU0lw8fuMcM4CHgdmCjJO+jW3q0UklekWSHthnuPXQVGkMJo9t45B/3M4AH6CpR\nHgt8ZFXmoNvz52+B5wJf7zl/GvB/kuyYzi5tWdPqGm2cC+iWQL0p3WbJGyfZI8mzWlXOZ4H/m26z\n7alJ9kqyyepOXlU/AH5Dt9RtflX9iu7Z/TlrngD6CvDmJLNaTB8BrqqqH7Xr84FDgJvakq55dMuf\nbqmq23tiu5Lu8zyZRybfLgCenORdSTZJMiPJ89cgzrHG+TTw4bbfD0m2TvKqdu1Mug2ZX5tkoyRb\nJVmV5Vgr+66vq++UJEkDxQSQJEnj74N0y3Mup9sE92PAwVV1A0BVfQv4/4BL6ZZiXdrTdze6vU1O\nSc+vgY0wx0V0m/B+n66yaDmPXoo1mh3pNvG9j65S55+q6rJ27aN0yau7kxxNl8j5b7oqlJuAf1/F\nOc6lLQeqqt4Nef8vXQLsYrqNlE8HNnt095UacZyqupduA+rX01XU/A9wAt2eMdBtvr2MroLml+3a\nmv770Xzgzp4qrfl0VSnXrclgVfUd4P+l27PoVrqqltf3NLmC7lkNVfvcRPe591b/DPkCXfLtSz3j\n30u38fgr6Z7LD4B91yDOscb5B7oliBcnuZfu+/L81u/HdBs1v5vu2V/P6PsM9VrZd32NvlNJ5ozy\nz5YkSQMhY+zxKEmStM4kuRn465bY0ARKcghwWFW9oN+xSJKk/rACSJIkjbskf063N9ClK2urdast\nK/x/gFP7HYskSeofE0CSJGlcJZkHfAr4m5X8GpbWsSQvo9sr5zbgy30OR5Ik9ZFLwCRJkiRJkgac\nFUCSJEmSJEkDbqN+B6DBMXPmVrXdU5/a7zAkSZIkSeNg0eLr76iqrfsdx3h4Sjaq5UzcCqk7ePii\nqnr5hE2ICSCtQ9s99alce/m8fochSZIkSRoHmbblf/c7hvGynOLPmTZh8/0z986csMkal4BJkiRJ\nkiQNOCuAJEmSJEnSpBYGv0Jm0O9PkiRJkiRp0rMCSJIkSZIkTXpTkombbOL2m/6dDbYCKMncJDuP\ncm3rJFclWZxkzlrOs12SN6xiuxtWod0ZSQ5sx6eNdg/jKcnhSQ6Z6HklSZIkSVJ/rPcVQEmmVtWK\nES7NBS4Abhrh2ouBZVX1V6sx3mi2A94AfHk1+qySkeKbCFX16X7MK0mSJEnS+sg9gNZCkmOSHNGO\nT0lyaTveL8mZ7figJMuS3JDkhJ6+9yU5OckSYK8kxye5KcnSJCcl2RvYHzgxyfVJtu/pOwv4GPCq\ndm2zEcZ7X5Jr2rynJl2dV5IdknwnyZIk17VxjwfmtLGObJU+C9v161osYz2HJPlkkv9M8h3gCT3X\n5iWZ3XPPJya5scWwZ7v+wyT7tzZTW5tr2rP463b+Ra3t2Un+I8mZPff0iGfXzh2X5Oih55Xk39v1\nc5M8rie2E5JcneT7a1tJJUmSJEmS+mc8E1wLgaGkwWxgepKN27kFSbYBTgD2A2YBeySZ29pPA66q\nql2B7wEHAM+uql2AD1XVFcD5wDFVNauqbh6atKquB94HnNWu/aZ3vKq6HPhkVe1RVc8BNgNe0bqf\nCfxjm3dv4FbgWGBhG+sU4BfA/6qq3YDXAR9fyXM4APhDYGfgkDbuSKYBl1bVs4F7gQ8B/6v1/2Br\n85fAPVW1B7AH8NYkT2/Xnge8q83zDOCPk2w1/NmNMO8XgPe068uA9/dc26iq9mzjvn+EviQ5LMm1\nSa69/Y47x34SkiRJkiStp6Zk4l59ub9xHHsRsHuSzYEHgCvpEkFz6JJDewDzqur2qnqILvmyT+u7\nAjinHd8DLAdOT/Jq4NdrEEvveAD7tj2CltEloJ6dZAawbVWdC1BVy6tqpLk2Bj7T+n6NLuEyln2A\nr1TViqr6OXDpKO1+C3y7HS8D5lfVg+14u3b+pcAhSa4HrgK2AnZs166uqp9W1cPA9a3PmM8uyRbA\nllU1v536PL//DAC+3v57UU8Mj1BVp1bV7KqavfXMrUZ9CJIkSZIkqX/GLQHUkhe3AIcCV9AlffYF\ndqCr6hnL8qF9elpyaE/gbLpKnW+P1XFl4yXZFPgn4MCqei7wGWDT1RjrSOA2YFe6hNZj1iCekTxY\nVUP7gD9MlzSjJXSG9moK8I5WjTSrqp5eVRe3aw/0jLWCrnpnbZ/d0Jgr2AD2i5IkSZIkaU1NmcBX\nP4z3vAuBo4EF7fhwYHFLdFwNvDDJzCRTgYOA+cMHSDId2KKqLqRLvuzaLt0LzFiDmIaSPXe0sQ8E\nqKp7gZ8OLUNLskmSx44wzxbArS0x8yZg6krmWwC8ru3f82S6JNiaugh4W1tKR5JnJpk2WuMxnh0A\nVXUPcFfP/j5vYoTPQJIkSZIkbdjGu6pjIfBe4Mqquj/J8naOqro1ybHAZXSVLd+sqvNGGGMGcF6r\n3AlwVDv/VbqlWEfQVfPcPELfR6mqu5N8BrgB+B/gmp7LbwL+OckHgQeB1wBLgRVtA+kz6KqHzkn3\nM+rfBu5fyZTn0i0zuwn4Md1SuDV1Gt1SrOvaJs+30/0a2mhGe3a9/gL4dEt2/RB481rEJ0mSJEnS\nBieEKenT5jwTJL9fdSStndm7Pa+uvXxev8OQJEmSJI2DTNtyUVXN7ncc4+FJ2ajeOHX6hM138op7\nJvxZDvrP3EuSJEmSJE16buwrSZIkSZImvUGvkBn0+5MkSZIkSZr0rACSJEmSJEmTWoApg70HtAkg\nSYCbwW/YBvzXCiRJegT/vWXDVg/3OwJp0jIBJEmSJEmSJr1B3yNn0O9PkiRJkiRp0rMCSJIkSZIk\nTW6BDPjWClYASZIkSZIkDTgTQOtQkrlJdu53HKsiyZZJ/p9+xyFJkiRJUr+FLkEyUa9+MAG0BpJM\nHeXSXGCDSAABWwIjJoCSuDRQkiRJkqQBMqkSQEmOSXJEOz4lyaXteL8kZ7bjg5IsS3JDkhN6+t6X\n5OQkS4C9khyf5KYkS5OclGRvYH/gxCTXJ9l+2NyvaWMuSbKgnVuQZFZPm8uT7JrkuCSfT7IwyX8n\neXWSj7W4vp1k49b+R0k+2ua7NsluSS5KcnOSw4fd9zUt1g+008cD27e+JyZ5UZvvfOCmJB9M8q6e\nMT6c5J3r8vOQJEmSJGl9MSUT9+rL/fVn2r5ZCMxpx7OB6S2ZMgdYkGQb4ARgP2AWsEeSua39NOCq\nqtoV+B5wAPDsqtoF+FBVXQGcDxxTVbOq6uZhc78PeFnrv387dzpwKECSZwKbVtWSdm37Fsf+wJeA\ny6rqucBvgD/rGffHVTWr3dsZwIHAHwEfaOO+FNgR2LPd0+5J9gGOBW5usR7TxtoNeGdVPRP4LHBI\nG2MK8PoWxyMkOawln669/Y47R3rmkiRJkiSpzyZbAmgRXQJkc+AB4Eq6RNAcugTKHsC8qrq9qh4C\nzgT2aX1XAOe043uA5cDpSV4N/HoV5v4ucEaStwJDS8i+BryiJaHeQpfAGfKtqnoQWNbaf7udXwZs\n19Pu/J7zV1XVvVV1O/BAki2Bl7bXYuA6YCe6hNBIrq6qWwCq6kfAnUmeN9S/qh6V4amqU6tqdlXN\n3nrmVqvwGCRJkiRJWv8M+h5Ak2qvl6p6MMktdFU3VwBLgX2BHeiqekZLjAAsr6oVbZyHkuwJvJiu\n4ubtdNU6Y819eJLn01XvLEqye1XdmeTfgFcBrwV27+nyQOv3cJIHq6ra+Yd55Of2QM/5B3rOD7UL\n8NGq+ufeeJJsN0KY9w97fxrds3oSXUWQJEmSJEnaAE22CiDoKn2OBha048PpqlsKuBp4YZKZbaPn\ng4D5wwdIMh3YoqouBI4Edm2X7gVmjDRpku2r6qqqeh9wO/CUduk04OPANVV11zq6x14XAW9pMZNk\n2yRPGCvWHucCL6erjLpoHGKTJEmSJKnvAkxJJuzVD5OqAqhZCLwXuLKq7k+yvJ2jqm5NcixwGd3n\n/82qOm+EMWYA5yXZtLU7qp3/KvCZttH0gcP2AToxyY6t/SXAkjbnoiS/Aj63rm+0jX9xkmcBV6b7\nkt0HvLGqbk7y3SQ3AN8CvjlC398muQy4e6j6SZIkSZIkbXjy+5VF6oe28fQ8YKeqerjP4TxC2/z5\nOuA1VfWDlbWfvdvz6trL5417XBoH/u/Ahq1P/w+CJEl94b+3bNjWrz95tJoyY6tFVTW733GMh22n\nbFSHP2bzCZvvfQ/cNeHPcjIuAVtvJDkEuAp473qY/NkZ+C/gklVJ/kiSJEmStCFzE2iNm6r6AvCF\nfscxkqq6CXhGv+OQJEmSJElrzwSQJEmSJEma1LpNoPsdxfhyCZgkSZIkSdKAswJIkpsIS9KacCNa\nqT/895YNW6b2OwJpVINeITPo9ydJkiRJkjTpWQEkSZIkSZImvSkMdoWhFUCSJEmSJEkDzgogSZIk\nSZI0qfkrYAMkydwkO/c7jn5J8sEkL1lJmxcl2XuiYpIkSZIkSRNj4CqAkkytqhUjXJoLXADcNMEh\nrReq6n2r0OxFwH3AFeMbjSRJkiRJ65dBr5BZb+4vyTFJjmjHpyS5tB3vl+TMdnxQkmVJbkhyQk/f\n+5KcnGQJsFeS45PclGRpkpNaVcv+wIlJrk+y/bC5n5jk3CRL2mvvdv6oNtcNSd7Vzm2X5HtJPpPk\nxiQXJ9msXdshyXfaGNcl2T7J9CSXtPfLkryqtT0+yd/0xHBckqN7nsU1Lf4PjPK87mvP6cY2/tbt\n/Kwk/976npvkce38GUkObMc/SvKBnph2SrIdcDhwZHtGc5K8pt37kiQL1uoDliRJkiRJfbPeJICA\nhcCcdjwbmJ5k43ZuQZJtgBOA/YBZwB5J5rb204CrqmpX4HvAAcCzq2oX4ENVdQVwPnBMVc2qqpuH\nzf1xYH7rvxtwY5LdgTcDzwf+CHhrkue19jsC/1hVzwbuBv68nT+znd8V2Bu4FVgOHFBVuwH7Aicn\nCXAW8NqeGF4LnJXkpW38Pdt97p5knxGe1zTg2hbDfOD97fwXgPe0e1/Wc364O1pMnwKOrqofAZ8G\nTmnPaCHwPuBl7X72H2mQJIcluTbJtbffcecoU0mSJEmStP5Kuj2AJurVD+tTAmgRXbJjc+AB4Eq6\nRNAcuuTQHsC8qrq9qh6iS7YMJUZWAOe043voki6nJ3k18OtVmHs/ukQIVbWiqu4BXgCcW1X3V9V9\nwNf5fYLqlqq6vifu7ZLMALatqnPbOMur6td0e0l9JMlS4DvAtsATq2ox8IQk2yTZFbirqn4CvLS9\nFgPXATvRJYSGe5guiQTwJeAFSbYAtqyq+e3853ue0XBf741/lDbfBc5I8lZg6kgNqurUqppdVbO3\nnrnVKMNIkiRJkqR+Wm/2AKqqB5PcAhxKtwfNUrqKmR3oqnpGSoIMWT60709VPZRkT+DFwIHA2+kS\nPOvSAz3HK4DNxmh7MLA1sHu7xx8Bm7ZrX2sxPonfJ3MCfLSq/nk1Y6rVbD90DysY5XtQVYcneT7w\nZ8CiJLtXlWU+kiRJkqSBM4XB/hmw9akCCLpKn6OBBe34cGBxVRVwNfDCJDOTTAUOolv69AhJpgNb\nVNWFwJHAru3SvcCMUea9BHhb6z+1VdIsBOYmeWySaXTLyhaOFnhV3Qv8dGhZWpJNkjwW2AL4RUv+\n7As8rafbWcDr6ZJAX2vnLgLe0u6DJNsmecIIU05p/QDeAFzeKpfuSjJUqfQmRnhGY3jEM0qyfVVd\n1TaQvh14ymqMJUmSJEmS1hPrYwLoycCVVXUb3VKuhQBVdStwLHAZsARYVFXnjTDGDOCCtuTqcuCo\ndv6rwDFJFg/fBBp4J7BvkmV0S6J2rqrrgDPoEk9XAae1ZVtjeRNwRJv7CrrKnjOB2W3sQ4D/GGpc\nVTe2eH/W7o+quhj4MnBl63M2Iyeu7gf2THIDXYXTB9v5v6Db7Hop3R5CHxyh72j+FThgaBPoNs6y\nNscVdM9dkiRJkiRtYNIV12hDk+S+qpre7zh6zd7teXXt5fP6HYYkSRPDf4eS+iODvURDWp9l2paL\nqmp2v+MYD0+dulG9Z7MtJ2y+t99/54Q/y/WtAkiSJEmSJEnr2HqzCbRWz/pW/SNJkiRJ0oYqDH6F\nzKDfnyRJkiRJ0qRnBZAkSZIkSZr0pgz4FmMmgCRJktZEPdzvCLSmVjzY7wi0NjbapN8RaG24ibfU\nNyaAJEmSJEnSpBbCFAY7QekeQJIkSZIkSQPOCiBJkiRJkjTpDfoeQFYASZIkSZIkDTgrgCRJkiRJ\n0qQ34AVAVgCNhyRzk+zc7zhWJsk2Sc5ux7OS/Gm/Y5IkSZIkSeueCaC1kGTqKJfmAut9Aqiqfl5V\nB7a3swATQJIkSZKkSSd0ewBN1KsfJmUCKMkxSY5ox6ckubQd75fkzHZ8UJJlSW5IckJP3/uSnJxk\nCbBXkuOT3JRkaZKTkuwN7A+cmOT6JNsPm/uJSc5NsqS99m7nj2pz3ZDkXe3cdkm+l+QzSW5McnGS\nzdq1HZJ8p41xXZLtk0xPckl7vyzJq1rb45P8TU8MxyU5uo1/Q5LHAB8EXtdifl2SHyTZurWfkuS/\nht5LkiRJkqQNy6RMAAELgTnteDYwPcnG7dyCJNsAJwD70VXG7JFkbms/DbiqqnYFvgccADy7qnYB\nPlRVVwDnA8dU1ayqunnY3B8H5rf+uwE3JtkdeDPwfOCPgLcmeV5rvyPwj1X1bOBu4M/b+TPb+V2B\nvYFbgeXAAVW1G7AvcHKSAGcBr+2J4bXtHABV9VvgfcBZLeazgC8BB7cmLwGWVNXtwx9kksOSXJvk\n2tvvuHOUxy1JkiRJ0vptCpmwV3/ub3JaBOyeZHPgAeBKukTQHLrk0B7AvKq6vaoeoku27NP6rgDO\nacf30CVdTk/yauDXqzD3fsCnAKpqRVXdA7wAOLeq7q+q+4Cv8/sE1S1VdX1P3NslmQFsW1XntnGW\nV9Wv6arWPpJkKfAdYFvgiVW1GHhC2/NnV+CuqvrJSuL8LHBIO34L8LmRGlXVqVU1u6pmbz1zq1W4\nfUmSJEmSNNEmZQKoqh4EbgEOBa6gS/rsC+xAV9UzluVVtaKN8xCwJ3A28Arg2+MQ7gM9xysY+5fb\nDga2BnavqlnAbcCm7drXgAOB19FT/TOaliC6Lcl+dPf4rdUPXZIkSZIkrQ8mZQKoWQgcDSxox4cD\ni6uqgKuBFyaZ2TZ6PgiYP3yAJNOBLarqQuBIYNd26V5gxijzXgK8rfWfmmSLNv/cJI9NMo1uWdnC\n0QKvqnuBnw4tS0uySZLHAlsAv6iqB5PsCzytp9tZwOvpkkBfG2HYkWI+jW4p2NeGkl6SJEmSJA2a\nTOAG0G4CPfEWAk8Grqyq2+iWci0EqKpbgWOBy4AlwKKqOm+EMWYAF7QlV5cDR7XzXwWOSbJ4+CbQ\nwDuBfZMso1vStXNVXQecQZd4ugo4rS3bGsubgCPa3FcAT6Jbqja7jX0I8B9Djavqxhbvz9r9DXcZ\nsPPQJtDt3PnAdEZZ/iVJkiRJkjYM6QpepEdLMhs4parmrLQxMHu359W1l88b36AkSVpfPGxx7AZr\nxYP9jkBrY6NN+h2B1kb6VPqgdSLTtlxUVbP7Hcd4eMZGG9eHpj9uwuY7+J7bJ/xZjrWfjCaxJMfS\nLVU7eGVtJUmSJEnS+s0EkEZUVccDx/c7DkmSJEmSJsKg16dN5j2AJEmSJEmSJgUrgCRJktaE+1hs\nwPzsNmj+sydpHASYMuD/+2IFkCRJkiRJ0oCzAkiSJEmSJE16g13/YwWQJEmSJEnSwLMCSJIkSZIk\nTXpWAEmSJEmSJGmDZgKoR5K5SXbudxyra0ONW5IkSZKk9UUm8NUPkzIBlGTqKJfmAhtiImVDjVuS\nJEmSJE2ADSoBlOSYJEe041OSXNqO90tyZjs+KMmyJDckOaGn731JTk6yBNgryfFJbkqyNMlJSfYG\n9gdOTHJ9ku2Hzf3EJOcmWdJee7fzR7W5bkjyrnZuuyT/keSMJN9PcmaSlyT5bpIfJNmztTsuyReT\nXNnOv7Wdn57kkiTXtXt5VU8ch7SYl7S+j4o7ybwkJyS5us0/p/WdmuTEJNe0Mf66nX9ykgWt/w1J\n5rS2Z7T3y5IcOS4fqiRJkiRJ64EkE/bqhw1tE+iFwLuBjwOzgU2SbAzMARYk2QY4AdgduAu4OMnc\nqvoGMA24qqrenWQr4HRgp6qqJFtW1d1JzgcuqKqzR5j748D8qjqgVRBNT7I78Gbg+XRVXFclmd/m\n3gF4DfAW4BrgDcAL6JI1f0dXtQOwC/BHLb7FSb4J/AI4oKp+lWQm8O8ttp2Bvwf2rqo7kjy+qn45\nPO72ZdqoqvZM8qfA+4GXAH8J3FNVeyTZBPhukouBVwMXVdWH2709FpgFbFtVz2ljbjnSB5LkMOAw\ngKc+5Sljf3qSJEmSJKkvNqgKIGARsHuSzYEHgCvpEkFz6JJDewDzqur2qnoIOBPYp/VdAZzTju8B\nlgOnJ3k18OtVmHs/4FMAVbWiqu6hS+icW1X3V9V9wNdbLAC3VNWyqnoYuBG4pKoKWAZs1zPueVX1\nm6q6A7gM2JMumfSRJEuB78xF5/QAACAASURBVADbAk9sMXyttaWqfjlGvF/veWZD870UOCTJ9cBV\nwFbAjnQJqjcnOQ54blXdC/wQeEaSTyR5OfCrkSapqlOranZVzd565lZjhCNJkiRJkvplg0oAVdWD\nwC3AocAVdEmffemqbb63ku7Lq2pFG+chukTL2cArgG+PQ7gP9Bw/3PP+YR5ZeVXD+hVwMLA1sHtV\nzQJuAzZdw/lX9MwX4B1VNau9nl5VF1fVArpE2c+AM5IcUlV3AbsC84DDgdNWc35JkiRJkjYIE7kB\ntJtAr7qFwNHAgnZ8OLC4VddcDbwwycy2lOkgYP7wAZJMB7aoqguBI+kSHQD3AjNGmfcS4G2t/9Qk\nW7T55yZ5bJJpwAHt3Op4VZJN27K0F9FV42wB/KKqHkyyL/C01vZS4DWtLUkevwpx97oIeFtbNkeS\nZyaZluRpwG1V9Rm6RM9ubenZlKo6h27Z2W6reV+SJEmSJGk9saHtAQRdguW9wJVVdX+S5e0cVXVr\nkmPpllIF+GZVnTfCGDOA85Js2tod1c5/FfhMuo2mD6yqm3v6vBM4Nclf0lXVvK2qrkxyBl3iCeC0\nqlqcZLvVuJ+lLd6ZwP+pqp+n29D6X5MsA64F/qPd341JPgzMT7ICWExXDfWIuMeY6zS65WDXpdso\n6Ha6vYheBByT5EHgPuAQumVnn0sylCT836txT5IkSZIkbVA2xAqZ1ZGucEb90Pbcua+qTup3LOvC\n7N2eV9dePq/fYUiSNDHq4X5HoDX10IP9jkBrY+NN+h2BNGll2paLqmp2v+MYDztstHGdtPnE7Wt7\nwF23Tfiz3BArgCRJkiRJktapPv06+4QxAdRHVXVcv2OQJEmSJEmDzwSQJEmSJEma9NK33+eaGCaA\nJEmS1kQGfavIAeYeMhs29zDdwPn5Sf1iAkiSJEmSJE1qaa9B5v91JUmSJEmSNOCsAJIkSZIkSZOe\nFUCSJEmSJEnaoFkBJEmSJEmSJr0pA14CZAXQKkgyN8nO60EchybZpuf9j5LM7GdMkiRJkiRp/WcC\nqEeSqaNcmgv0PQEEHApss7JGkiRJkiRpdWRC/9MPA5EASnJMkiPa8SlJLm3H+yU5sx0flGRZkhuS\nnNDT974kJydZAuyV5PgkNyVZmuSkJHsD+wMnJrk+yfbD5n5NG3NJkgXt3KFJvpHk31qVztuTHJVk\ncZJ/T/L41m5We780yblJHjfa+SQHArOBM1scm7UQ3pHkunZvO7X+xyX5bJJ5SX449GzatTcmubqN\n8c9JprbXGe0+liU5srU9oudZfHXdf3KSJEmSJGm4JC9P8p9J/ivJsSNcf2qSy1qeYWmSP13ZmAOR\nAAIWAnPa8WxgepKN27kFbdnUCcB+wCxgjyRzW/tpwFVVtSvwPeAA4NlVtQvwoaq6AjgfOKaqZlXV\nzcPmfh/wstZ//57zzwFeDewBfBj4dVU9D7gSOKS1+QLwnjbXMuD9o52vqrOBa4GDWxy/aW3vqKrd\ngE8BR/fMvxPwMmBP4P1JNk7yLOB1wB9X1SxgBXBweybbVtVzquq5wOfaGMcCz2txHD7Sg09yWJJr\nk1x7+x13jtREkiRJkqT1Wib4NWYs3eqkfwT+hG410kEjbEvz98C/tDzD64F/Wtk9DkoCaBGwe5LN\ngQfokiyz6RJAC+mSMPOq6vaqegg4E9in9V0BnNOO7wGWA6cneTXw61WY+7vAGUneCvQuIbusqu6t\nqtvbuP/azi8DtkuyBbBlVc1v5z8P7DPa+THm/3rPM9iu5/w3q+qBqroD+AXwRODFwO7ANUmub++f\nAfwQeEaSTyR5OfCrNsZSuoqjNwIPjTR5VZ1aVbOravbWM7caI0xJkiRJkrQK9gT+q6p+WFW/Bb4K\nvGpYmwI2b8dbAD9f2aADkQCqqgeBW+j2yLmCLumzL7ADXVXPWJZX1Yo2zkN0D/ps4BXAt1dh7sPp\nMm9PARYlGcqCPNDT7OGe9w+zbn99bWjcFcPG7Z1/6FqAz7cKollV9YdVdVxV3QXsCsyjq/Q5rfX7\nM7qs4250SSN/NU6SJEmSpLU3c2g1TXsd1nNtW+AnPe9/2s71Og54Y5KfAhcC71jZhAORAGoW0i2B\nWtCODwcWV1UBVwMvTDKzlVIdBMwfPkCS6cAWVXUhcCRdUgTgXmDGSJMm2b6qrqqq9wG30yWCVqqq\n7gHuSjK0dO1NwPzRzq8sjlV0CXBgkie02B+f5Gntl8SmVNU5dMms3ZJMAZ5SVZcB76HLKE5fi7kl\nSZIkSVo/BTKBL7rtXGb3vE5dzYgPAs6oqj8A/hT4Yvs7flSDVNGxEHgvcGVV3Z9keTtHVd3aNk26\njK4K5ptVdd4IY8wAzkuyaWt3VDv/VeAzbTPlA4ftA3Rikh1b+0uAJXR76qyKvwA+neSxdMuw3ryS\n82e0878B9lrFOX6nqm5K8vfAxe2L8SDwN8BvgM/1fFn+N91yti+1JWkBPl5Vd6/unJIkSZIkabX8\njEcWl/xBO9frL4GXA1TVlS2PMZNuC5gRpSuQkdbe7N2eV9dePq/fYUiSJGmQ+ffLBs7Pb0OW6Y9f\nVFWz+x3HeHjmxo+pT245c8Lme9kdt476LNv2K9+n27f3Z8A1wBuq6saeNt8CzqqqM9oPPl1C9+NO\no/5DNkhLwCRJkiRJkjZobX/itwMX0e1r/C9VdWOSDyYZ+vXxdwNvTbIE+Apw6FjJHxisJWCSJEmS\nJElrZMpKf6B94rS9iS8cdu59Pcc3AX+8OmNaASRJkiRJkjTgrADSOvPwzd/nvte8tN9haA1M+9Rn\n+x2C1kY93O8ItIYy8w/6HYLWwuJnrupvPmh9s8vxf93vELQWpv7Zof0OQWtj4036HYE0orTXILMC\nSJIkSZIkacBZASRJkiRJkia9DHgJkBVAkiRJkiRJA84KIEmSJEmSNOkNeAGQFUCSJEmSJEmDzgqg\nDViSucD3q+qmfsciSZIkSdKGLANeA2QF0AYgydRRLs0Fdl6LcU0ASpIkSZI0CZgAGkdJjklyRDs+\nJcml7Xi/JGe244OSLEtyQ5ITevrel+TkJEuAvZIcn+SmJEuTnJRkb2B/4MQk1yfZftjcr0xyVZLF\nSb6T5Int/HFJvpjku8AXk2yd5Jwk17TXH7d2eya5svW/IskfTsQzkyRJkiRpogWYkol79YMVIONr\nIfBu4OPAbGCTJBsDc4AFSbYBTgB2B+4CLk4yt6q+AUwDrqqqdyfZCjgd2KmqKsmWVXV3kvOBC6rq\n7BHmvhz4o9b+r4C/bbFAVzX0gqr6TZIvA6dU1eVJngpcBDwL+A9gTlU9lOQlwEeAPx8+SZLDgMMA\nnrLpY9b6gUmSJEmSpHXPBND4WgTsnmRz4AHgOrpE0BzgCGAPYF5V3Q7QqoL2Ab4BrADOaePcAywH\nTk9yAXDBKsz9B8BZSZ4MPAa4pefa+VX1m3b8EmDn5HcpyM2TTAe2AD6fZEeggI1HmqSqTgVOBdht\ni2m1CnFJkiRJkqQJ5hKwcVRVD9IlXg4FrqCrCNoX2AH43kq6L6+qFW2ch4A9gbOBVwDfXoXpPwF8\nsqqeC/w1sGnPtft7jqfQVQrNaq9tq+o+4P8Al1XVc4BXDusvSZIkSdJAyQS++sEE0PhbCBwNLGjH\nhwOLq6qAq4EXJpnZNno+CJg/fIChipyquhA4Eti1XboXmDHKvFsAP2vHfzFGfBcD7+iZa9YI/Q8d\no78kSZIkSVrPmQAafwuBJwNXVtVtdEu5FgJU1a3AscBlwBJgUVWdN8IYM4ALkiyl29vnqHb+q8Ax\nbaPm7Yf1OQ74WpJFwB1jxHcEMLttLn0TXYIK4GPAR5MsxqWCkiRJkqQBN+gVQP5hP86q6hJ69s+p\nqmcOu/4V4Csj9Jvec3wr3RKw4W2+yyg/A98SSY9KJlXVccPe3wG8boR2VwK9sf79SPNIkiRJkqT1\nnwkgSZIkSZI06aVvtTkTwyVgkiRJkiRJA84KIEmSJEmSNOllsAuArACSJEmSJEkadFYAaZ2Z8sQn\nsNk739bvMLQG7n3Lm/odgtbC5l8d6ccDtSFYceZJ/Q5Ba2GXjx2+8kZaLz1w7jf7HYLWwqaz9u53\nCFoLU56xa79DkEYUBr9CZtDvT5IkSZIkadKzAkiSJEmSJE16A74FkBVAkiRJkiRJg84KIEmSJEmS\nNOllwH8GzAqgdSzJ3CQ7j+P4V6yjcV6UxB30JEmSJEmaBEwAraEkU0e5NBdY5wmgJBsBVNW6Stq8\nCFitsYZikCRJkiRp0GQCX/0w6RJASY5JckQ7PiXJpe14vyRntuODkixLckOSE3r63pfk5CRLgL2S\nHJ/kpiRLk5zUKmr2B05Mcn2S7YfNfUaSTye5Nsn3k7yinZ+a5MQk17Sx/rqdf1GShUnOB24aiqHn\n2vwk5yX5YYvl4CRXt9i3b+22TnJOG/uaJH+cZDvgcODIFueckdq1/scl+WKS7wJfHKePRZIkSZIk\njaPJWNGxEHg38HFgNrBJko2BOcCCJNsAJwC7A3cBFyeZW1XfAKYBV1XVu5NsBZwO7FRVlWTLqrq7\nJWsuqKqzR5l/O2BPYHvgsiQ7AIcA91TVHkk2Ab6b5OLWfjfgOVV1ywhj7Qo8C/gl8EPgtKraM8k7\ngXcA7wL+ATilqi5P8lTgoqp6VpJPA/dV1UkASb48vF0bG7qKphdU1W+GB5DkMOAwgKc+YavRn7ok\nSZIkSeqbyZgAWgTsnmRz4AHgOrpE0BzgCGAPYF5V3Q7QqoL2Ab4BrADOaePcAywHTk9yAXDBKs7/\nL1X1MPCDJD8EdgJeCuyS5MDWZgtgR+C3wNWjJH8ArqmqW1ucNwNDSaNlwL7t+CXAzj2bWW2eZPoI\nY43V7vyRkj8AVXUqcCrA7Gc+vUa/bUmSJEmS1k/9XJo1USZdAqiqHkxyC3AocAWwlC5ZsgPwPbrE\ny2iWV9WKNs5DSfYEXgwcCLwd2G9VQhjhfYB3VNVFvReSvAi4f4yxHug5frjn/cP8/rOdAvxRVS0f\nNvbwscZqN1YMkiRJkiRpPTfp9gBqFgJHAwva8eHA4qoq4GrghUlmto2eDwLmDx+gVcdsUVUXAkfS\nLccCuBeYMcbcr0kype3R8wzgP+mWW72tLUUjyTOTTFsH9wldVdA7euKeNUqco7WTJEmSJGmwJWQC\nX/0wmRNATwaurKrb6JZyLQRoS6qOBS4DlgCLquq8EcaYAVyQZClwOXBUO/9V4Jgki4dvAt38mC7J\n9C3g8FZxcxrdJs/XJbkB+GfWXXXWEcDstrn0TXTJLoB/BQ4Y2gR6jHaSJEmSJGkDN+mWgAFU1SXA\nxj3vnzns+leAr4zQb3rP8a10mzkPb/Ndxv4Z+O9U1SOSK21PoL9rr17z2utRMVTVI65V1Yt6jn93\nraruAF43QpzfB3YZdnqkdseNeieSJEmSJA2IKQO+CdBkrQCSJEmSJEmaNCZlBVC/VNWh/Y5BkiRJ\nkiQ9Wga8BMgKIEmSJEmSpAFnBZAkSZIkSZrUAvTpx7kmjAkgrTubTmPKzs/vdxRaA9Ne8/J+h6C1\nsdmMfkegNXTTR77c7xC0Fp5z2bn9DkFraLO9/6TfIWgtLH/PO/odgtbCpp/8Yr9DkCYtE0CSJEmS\nJGlyy+BXALkHkCRJkiRJ0oCzAkiSJEmSJE16GfASICuAJEmSJEmSBpwJoPVAkrlJdl7da6s49ruS\nPHbNo5MkSZIkafAlE/fqBxNAEyjJ1FEuzQVGS/KMdW1VvAtYrQRQEpcGSpIkSZI0QEwArYIkxyQ5\noh2fkuTSdrxfkjPb8UFJliW5IckJPX3vS3JykiXAXkmOT3JTkqVJTkqyN7A/cGKS65Ns39P3Udfa\n69tJFiVZmGSnJBsluSbJi1q/jyb5cIt5G+CyJJcNxdMz/oFJzmjHZyT5dJKrgI+NNM/4PWFJkiRJ\nkjSerPRYNQuBdwMfB2YDmyTZGJgDLEiyDXACsDtwF3BxkrlV9Q1gGnBVVb07yVbA6cBOVVVJtqyq\nu5OcD1xQVWf3TlpVVwy/luQS4PCq+kGS5wP/VFX7JTkUODvJO4CXA8+vqt8mOQrYt6ruWIX7/ANg\n76paMdI8wH7DOyQ5DDgM4KnbPnmVH6gkSZIkSeuTQd8E2gTQqlkE7J5kc+AB4Dq6RNAc4AhgD2Be\nVd0O0KqC9gG+AawAzmnj3AMsB05PcgFwweoEkWQ6sDfwtZ4v5iYAVXVjki+2Mfeqqt+uwX1+rSV/\nRp1nuKo6FTgVYPYuz6k1mFOSJEmSJI0zE0CroKoeTHILcChwBbAU2BfYAfgesOMY3ZdX1Yo2zkNJ\n9gReDBwIvJ0RqmrGMAW4u6pmjXL9ucDdwBPGGKM3SbPpsGv3r+I8kiRJkiQNjNC/zZkninsArbqF\nwNHAgnZ8OLC4qgq4Gnhhkplto+eDgPnDB2iVNVtU1YXAkcCu7dK9wIxR5v3dtar6FXBLkte08ZJk\n13b8auDxdJVHn0iy5Shj35bkWUmmAAeMNOFY80iSJEmSpA2PCaBVtxB4MnBlVd1Gt5RrIUBV3Qoc\nC1wGLAEWVdV5I4wxA7ggyVLgcuCodv6rwDFJFvduAj3KtYOBv2ybSt8IvCrJTOB44K+q6vvAJ4F/\naP1PBb49tAl0i/MCukqmW8e430fNM/bjkSRJkiRpAxWYkkzYqx9cAraKquoSYOOe988cdv0rwFdG\n6De95/hWYM8R2nyXUX7qfZRrLx+h6e/iqaqP9xx/AvhEz/uzgbMZpqoOHfb+llHmkSRJkiRJGxgT\nQJIkSZIkadJzDyBJkiRJkiRt0KwAkiRJkiRJk1zIgJcAWQEkSZIkSZI04KwA0rozdSqZ9rh+R6E1\nMOWVh/Y7BK2V6ncAWkPPXXxFv0PQ2th4k35HoDVUd/6s3yFoLWz2mUf9nok2IHXPHf0OQRpRgAx4\nicyA354kSZIkSZKsAJIkSZIkSZNbcA8gSZIkSZIkbdisAJIkSZIkSZPegBcAWQG0vkoyN8nO63jM\neUlmt+MLk2y5LseXJEmSJEnrJxNAfZZk6iiX5gIrTQAlWaMqrqr606q6e036SpIkSZKkDYsJoDWU\n5JgkR7TjU5Jc2o73S3JmOz4oybIkNyQ5oafvfUlOTrIE2CvJ8UluSrI0yUlJ9gb2B05Mcn2S7YfN\nfUaSTye5CvhYkj2TXPn/s3fn4XpV5f3/35+EOQGigBYFjEUrAkIIQWUUkVpnacUi4gD6k+IAWgtK\nK1VKtRX5OkFViv1iACnwizhQB5ACCZNAgmQEQStaWq0CAspMkvv7x7OOPp6eKcM5z8nJ+3Vdz3X2\nXs9aa997n+Bl7txr7SS3JLk+yXNav02TXJjktiRfAzbtmuMnSbZOMj3J0q7245Oc3I6P64rrwtF5\nkpIkSZIk9V6SMfv0gnsArb5rgL8CTgdmARsn2RDYH7g6ydOAU4E9gfuA7yY5pKq+DkwBbqyqv0qy\nFfB/gZ2qqpJMq6r7k1wCfLOqvjLI9bcD9qmqFUm2APavquVJDgb+AXgd8E7g4ap6bpLdgO+v4j2e\nCDyzqh4bbLlYkqOBowF22O7pqzi9JEmSJEkaC1YArb6bgT1b8uUx4Ht0EkH700kO7QXMraq7q2o5\ncD5wQBu7Ari4HT8APAr83yR/Bjw8wuvPqaoV7XhLYE6r5Pk0sEtrPwD4MkBVLQYWr+I9LgbOT/Im\nYPlAHarqrKqaVVWzttl6q1WcXpIkSZKk8SEZu08vmABaTVX1BHAncCRwPZ2kz4uBZwG3DTP80b7k\nTUsOPR/4CvAq4NIRhvBQ1/HfA1dV1a7Aq4FNRjgHdBI73X8Ouse+EvgcMBOYv7r7DUmSJEmSpN4y\nAbRmrgGOB65ux8cAt1RVATcBL2r77EwGDgfm9Z8gyVRgy6r6NvCXwO7tq98Am48wji2B/27HR3a1\nXw28sV1nV2C3Acb+AnhKkq2SbEwnCUWSScD2VXUV8MF2jakjjEeSJEmSpHVGgEnJmH16wQTQmrkG\n2Bb4XlX9gs5SrmsAqurndPbQuQpYBNxcVd8YYI7NgW8mWQxcC7y/tV8InNA2dt5xgHHdPgH8Y5Jb\n+P19nb4ATE1yG3AKnWVrv6dVMp1CJ2F1OfCD9tVk4MtJlgC3AKf71jBJkiRJktZN6RSrSGtu1h67\n14IrL+t1GFoN9civex2C1kC23KbXIWh1Pf5oryPQmthw415HoNVU9/738J00bmXaU3odgtZAPXBP\nr0PQGpj0jF1vrqpZvY5jNOy22Sb1zWc9Y8yu94wld4z5s7QCSJIkSZIkaYJzU19JkiRJkrTeS69e\nzzVGrACSJEmSJEma4KwAkiRJkiRJ670JXgBkAkhrUSbBxpv2Ogqthvh7k3pj4816HYG0Xso2O/Q6\nBGm9la2363UI0nrLBJAkSZIkSVqvhYlfAeQeQJIkSZIkSROcFUCSJEmSJGn9lpBJE7sEyAogSZIk\nSZKkCW7MEkBJjktyW5Lz18JcRyZ52gj6zU5y6DB9pidZ2o5nJTl9TeNbHUmu78V1JUmSJEnSxDeW\nS8DeBRxcVf/V3Zhkg6pavopzHQksBX62lmIDoKoWAAvW5pyrcO19xupa/Z/5SH8Hq/m7kiRJkiRp\n3Jvom0CPSQIoyZnAHwLfSXI2sCWwY2v7zyR/DZwHTGlD3lNV17exHwTeBKwEvkMnQTMLOD/JI8De\nwAnAq4FNgeuBv6iqGiKePYGz2+l3u9oPBI6vqlclORl4ZotxB+AvgRcCLwf+G3h1VT3R5voUMBW4\nBziyqn6eZC5wI/BiYBrw9qq6JskuwJeAjehUYL2uqn6Y5MGqmpokwCfadQr4aFVd1GI7uV1jV+Bm\n4E397zPJjsDngG2Ah4F3VNUPkswGHgX2AK5L8uR+5+cCZwKbAf8BvK2q7mv3sRDYD7gA+ORgz1WS\nJEmSJI1PY7IErKqOoVOt8+Kq+nRr3plORdDhwC+BP66qmcBhwOkASV4OvBZ4QVXtDnyiqr5CJwl0\nRFXNqKpHgH+qqr2qalc6SaBXDRPSl4Bj25xD2RE4CHgN8GXgqqp6HvAI8MokGwJnAIdWVV9S6WNd\n4zeoqucD7wM+0tqOAT5bVTPoJLJ+ryIK+DNgBrA7cDBwWpJt23d7tLl2ppOY2neAmM9q97YncDzw\n+a7vtgP2qar3D3B+LvDBqtoNWNIVL8BGVTWrqv5X8ifJ0UkWJFlw9z33DhCOJEmSJEnj36RkzD69\n0Mu3gF3SkjcAGwL/lGQGsAL4o9Z+MPClqnoYoKp+NchcL07yATrVK08GlgH/NlDHJNOAaVV1dWs6\nj061zUC+06p8lgCTgUtb+xJgOvAcOtU4l3cKd5gM/Lxr/Ffbz5tbf4DvAR9Ksh3w1ar6Yb9r7gdc\nUFUrgF8kmQfsBfwauKlvCV2ShW3Oa7vubSqwDzAnv/sDtXHX3HPavL93nmTL9kzmtfZzgDld/S4a\n8OkAVXUWnaQTs2buMWjVlSRJkiRJ6p1eJoAe6jr+S+AXdKpeJtFZmjQiSTahU+Uyq6ruaku3NllL\nMT4GUFUrkzzRtdxqJZ1nF2BZVe091Hg6Sa0N2lz/muRG4JXAt5P8RVVduSrx9J+zyyTg/lZdNJCH\nhjkfzEj7SZIkSZK0zgkTfw+g8fIa+C2Bn1fVSuDNdCppAC4HjkqyGUDbtwbgN8Dm7bgv2XNPq4AZ\n8q1fVXU/cH+S/VrTEWsQ9+3ANkn2bvFt2Pb4GVSSPwR+XFWnA98AduvX5RrgsCSTk2wDHADcNJJg\nqurXwJ1JXt+ulSTDLXOjqh4A7kuyf2t6MzBviCGSJEmSJGkdMl4SQJ8H3ppkEbATreKkqi4FLgEW\ntCVPx7f+s4EzW9tjwBfpvBXsMmD+CK53FPC5Nn61c3xV9TidhNOpLfaFdJZgDeXPgaXt2rvS2Xun\n29eAxcAi4ErgA1X1P6sQ1hHA21s8y+jsoTQSb6Wz39BiOnsQnbIK15QkSZIkaZ2WZMw+Pbm/IV6W\nJa2SWTP3qAXXzu11GJIkSZKkUZAp026uqlm9jmM0zJiyaV2+6x+O2fWectOtY/4se7kHkCRJkiRJ\nUu/FPYAkSZIkSZK0jrMCSJIkSZIkrfd6tTfPWLECSJIkSZIkaYKzAkiSJEmSNDZ8CZHGsQleAGQF\nkCRJkiRJ0kRnBZAkSZIkSVqvBfcAkiRJkiRJ0jrOBJAkSZIkSdIE5xIwSZIkSZK0fgtkgpfITPDb\nW7ckOSTJzr2OQ5IkSZIkTSwmgMaXQ4ABE0BJ1lq1Vv+5Rjr32oxBkiRJkqTxIyRj9+mF9TYBlGRK\nkm8lWZRkaZLDkhyU5Otdff44ydfa8YNJTkuyLMm/J3l+krlJfpzkNa3PkUm+nuTyJD9J8p4k709y\nS5Ibkjy59dsxyaVJbk5yTZKdkuwDvAY4LcnC1mduks8kWQB8KMmdSTZsc2zRfd4V8zZJLk4yv332\nbe0nJzkvyXXAeQOcT09yZZLFSa5IskMbNzvJmUluBD4x2r8XSZIkSZK09q3PFR0vA35WVa8ESLIl\n8Gvg80m2qaq7gaOAs1v/KcCVVXVCSwp9FPhjOhU75wCXtH67AnsAmwA/Aj5YVXsk+TTwFuAzwFnA\nMVX1wyQvAD5fVQcluQT4ZlV9pcUEsFFVzWrn04FXAl8H3gB8taqe6HdfnwU+XVXXtiTOZcBz23c7\nA/tV1SNJTu53/m/AOVV1TpK3AafTqUgC2A7Yp6pW9H+ISY4GjgbYYfvth3/qkiRJkiSNR5N8DfxE\ntQT44ySnJtm/qh6oqgLOA96UZBqwN/Cd1v9x4NKusfNa8mUJML1r3quq6jctgfQA8G9dY6YnmQrs\nA8xJshD4Z2DbIeK8qOv4X+gkpWg/vzRA/4OBf2pzXwJs0a4JcElVPdLVt/t8b+Bf2/F5wH5d/eYM\nlPwBqKqzqmpWVc3aZuuthrgNSZIkSZI0EkleluT2JD9KcuIgff48ya1tpdK/DtSn23pbAVRVdySZ\nCbwC+GiSK6rqFDpJcBYwNgAAIABJREFUlX8DHqWT+FjehjzREkQAK4HH2jwr++2N81jX8cqu85V0\nnvck4P6qmjHCUB/qivm6tlTrQGByVS0doP8k4IVV9Wh3Y6smeqhf3/7nw8YgSZIkSdKE1KO9efpL\nMhn4HJ1VR/8FzE9ySVXd2tXn2cBfA/tW1X1JnjLcvOttBVCSpwEPV9WXgdOAmQBV9TPgZ8BJDFxh\ns0aq6tfAnUle3+JIkt3b178BNh9minPpVOoMFtt3gWP7TpKMNNF0PZ1lZQBHANeMcJwkSZIkSVp7\nng/8qKp+XFWPAxcCr+3X5x3A56rqPoCq+uVwk663CSDgecBNbanUR+js6dPnfOCuqrptlK59BPD2\nJIuAZfzuF3khcELbNHrHQcaeDzwJuGCQ748DZrXNnG8FjhlhTMcCRyVZDLwZeO8Ix0mSJEmStG4L\nY/0WsK2TLOj6HN0VzdOBu7rO/6u1dfsj4I+SXNdeOvWy4W5xfV4CdhmdDZIHsh/wxX79p3YdnzzQ\nd1U1G5jd1T696/i331XVnXQ2oe4f03X8/mvgDxwktq9U1f0DBV5V9wCHDdDeP+b+5z8FDhpg3JED\nXUeSJEmSJK22e/pe+LSaNgCeTSdvsB1wdZLnDZYr6BugLkluprPnzV/1Opb+kpwBvJzOvkWSJEmS\nJGltGT9vAftvoPs129u1tm7/BdzYXk51Z5I76CSE5g82qQmgfqpqz17HMJiqOnb4XpIkSZIkaR02\nH3h2kmfSSfy8AXhjvz5fBw4HvpRkazpLwn481KQmgCRJkiRJ0nou4+YtYFW1PMl76GxbMxk4u6qW\nJTkFWFBVl7TvXtr2/l0BnFBV9w41rwkgSZIkSdLYGCd/wZbGu6r6NvDtfm0f7jou4P3tMyImgCRJ\nkiRJ0notgYyfPYBGxfr8GnhJkiRJkqT1ggkgSZIkSZKkCc4lYJIkSZIkSRN8jyorgCRJkiRJkiY4\nE0A9kuRpSb4ygn5/MxbxSJIkSZK0PsukjNmnF0wA9UhV/ayqDh1B17WeAEqywVDnIx0nSZIkSZLW\nDeM2AZTkLUkWJ1mU5LzWNj3Jla39iiQ7tPbZSU5Pcn2SHyc5tGueDyZZ0ub5eGt7R5L5re3iJJsl\n2TLJT5NMan2mJLkryYZJdkxyaZKbk1yTZKcB4j05yXlJvpfkh0ne0dqT5LQkS1sch3Xdy9J2fGSS\nr7Zr/DDJJ1r7x4FNkyxMcn6L6Vst7qV9c/WLY8BY2zM6M8mNwCcGOJ+R5Ib2bL+W5Elt3Nwkn0my\nAHjv2vr9SpIkSZI0riRj9+mBcVnRkWQX4CRgn6q6J8mT21dnAOdU1TlJ3gacDhzSvtsW2A/YCbgE\n+EqSlwOvBV5QVQ93zfPVqvpiu9ZHgbdX1RlJFgIvAq4CXgVcVlVPJDkLOKaqfpjkBcDngYMGCH03\n4IXAFOCWJN8C9gZmALsDWwPzk1w9wNgZwB7AY8DtSc6oqhOTvKeqZrRYXwf8rKpe2c63HGCeoWLd\nrj3TFUlm9ztfDBxbVfOSnAJ8BHhfG7dRVc0a4FokORo4GmCH7bcfqIskSZIkSeqxcZkAopOwmFNV\n9wBU1a9a+97An7Xj84BPdI35elWtBG5N8tTWdjDwpap6uN88u7bEzzRgKnBZa78IOIxOAugNwOeT\nTAX2Aebkd1m6jQeJ+xtV9QjwSJKrgOfTSUpdUFUrgF8kmQfsBSzuN/aKqnoAIMmtwDOAu/r1WQJ8\nMsmpwDer6pruL0cQ65wWx++dt0TStKqa19rPAeZ09btokPulqs6ik3Ri1sw9arB+kiRJkiSNWwn0\naG+esTJeE0Cr47Gu4+F+a7OBQ6pqUZIjgQNb+yXAP7RKoT2BK+lU89zfV4UzjP4JkFVJiHTHv4IB\nfjdVdUeSmcArgI8muaKqTunqMmmYWB8a5nwwI+0nSZIkSZLGofG6B9CVwOuTbAXQtXTrejqVOQBH\nANcMMLbb5cBRSTbrN8/mwM+TbNjmAaCqHgTmA5+lU2Gzoqp+DdyZ5PVtjiTZfZDrvTbJJi3uA9tc\n1wCHJZmcZBvgAOCmkTyE5okWJ0meBjxcVV8GTgNmdndcxVi7xz0A3Jdk/9b0ZmDeEEMkSZIkSZpQ\nkozZpxfGZQVQVS1L8jFgXpIVwC3AkcCxwJeSnADcDRw1zDyXJpkBLEjyOPBtOm/V+lvgxjbHjXQS\nQn0uorP86cCutiOALyQ5CdgQuBBYNMAlF9NZPrY18PdV9bMkX6OzdG0RnYqgD1TV/ySZPqKH0Vle\ntTjJ94FzgdOSrASeAN45QP+RxtrfW4EzW7LsxwzzbCVJkiRJ0rojVW7bsjYkORl4sKr+T69j6ZVZ\nM/eoBdfO7XUYkiRJkqRRkCnTbh7sBUHrupnTptY1B+42Zteb+o3vjfmzHK9LwCRJkiRJkrSWjMsl\nYOuiqjq51zFIkiRJkqTVEDpvApvArACSJEmSJEma4KwAkiRJkiSNDfeg1TiWCV4iM8FvT5IkSZIk\nSSaAJEmSJEmSJjiXgEmSJEmSJLkJtCRJkiRJktZlVgBJkiRJkqT1W0ImWQGkMZbklCQHt+P3Jdms\n1zFJkiRJkqR1lxVA41BVfbjr9H3Al4GH1+Y1kkyuqhWDnY90nCRJkiRJE4J7AK0fkrwlyeIki5Kc\n19qmJ7mytV+RZIfWPjvJ6UmuT/LjJId2zfPBJEvaPB9vbe9IMr+1XZxksyRbJvlpkkmtz5QkdyXZ\nsM1/aJLjgKcBVyW5Ksnbknym61rvSPLpAe7lpUm+l+T7SeYkmdraf5Lk1CTfB14/wPnhLfalSU7t\nmu/BJJ9MsgjYexQevyRJkiRJGkUjSgAl2TXJn7ckyVuSvGW0AxtLSXYBTgIOqqrdgfe2r84Azqmq\n3YDzgdO7hm0L7Ae8CuhL9LwceC3wgjbPJ1rfr1bVXq3tNuDtVfUAsBB4UevzKuCyqnqi7wJVdTrw\nM+DFVfVi4P8HXp1kw9blKODsfveydbuXg6tqJrAAeH9Xl3uramZVXdh9DlwNnAocBMwA9kpySOsz\nBbixqnavqmv7Xe/oJAuSLLj7nnsHfsCSJEmSJI13kzJ2n17c3nAdknyETiLkDODFdJIarxnluMba\nQcCcqroHoKp+1dr3Bv61HZ9HJ+HT5+tVtbKqbgWe2toOBr5UVQ/3m2fXJNckWQIcAezS2i8CDmvH\nb2jng6qqB4ErgVcl2QnYsKqW9Ov2QmBn4LokC4G3As/o+r7/NfrO9wLmVtXdVbWcTsLrgPbdCuDi\nQWI6q6pmVdWsbbbeaqjwJUmSJElSj4xkD6BDgd2BW6rqqCRPpbMnzfrusa7j4dJ3s4FDqmpRkiOB\nA1v7JcA/JHkysCed5M5w/gX4G+AHwJcG+D7A5VV1+CDjHxrmfCCPuu+PJEmSJGmiSiDuAcQjVbUS\nWJ5kC+CXwPajG9aYu5LOHjhbAbSEDMD1dCpzoFO5c80w81wOHNX31q6ueTYHft6Wbh3R17lV9MwH\nPgt8c5Aky2/a+L4xN9J5/m8ELhig/w3Avkme1WKYkuSPhokb4CbgRUm2TjIZOByYN4JxkiRJkiRp\nnBtJBdCCJNOALwI3Aw8C3xvVqMZYVS1L8jFgXpIVwC3AkcCxwJeSnADcTWfPnaHmuTTJDDrP7HHg\n23Sqdf4WuLHNcSNdCR06S7Dm8LuqoP7OAi5N8rO2DxB09gKaUVX3DRDD3a3K6IIkG7fmk4A7hon9\n50lOBK6iU0X0rar6xlBjJEmSJEmaMHq0N89YSVWNvHMyHdiiqhaPVkAaXpJvAp+uqit6HUu3WTP3\nqAXXzu11GJIkSZLGq1X4+6fGn0x90s1VNavXcYyGPbfavK57+djd2qbnzx3zZzmSCiCSPJ3ORsIb\ntPMDqurq0QxM/1urxLoJWDTekj+SJEmSJK270tkIaAIbNgGU5FQ6b6q6lc7boACKzmvDNYaq6n5g\nJPv5SJIkSZIk/dZIKoAOAZ5TVY8N21OSJEmSJGkd5FvA4MfAhqMdiCRJkiRJkkbHoBVASc6gs9Tr\nYWBhkiuA31YBVdVxox+eJEmSJEmS1tRQS8AWtJ83A5eMQSySJEmSJEljL0z418APmgCqqnMAkkwB\nHq2qFe18MrDx2IQnSZIkSZKkNTWSPYCuADbtOt8U+PfRCUeSJEmSJGnsJRmzTy+MJAG0SVU92HfS\njjcbvZAkSZIkSZK0No0kAfRQkpl9J0n2BB4ZvZAmhiTTkryr13FIkiRJkqQRmJSx+/TAUJtA93kf\nMCfJz+hsi/QHwGGjGtXEMA14F/D5XgcykCST+/Z1Guh8kDEBUlUrRz1ASZIkSZK01gxbAVRV84Gd\ngHcCxwDPraqbRzuwkUryliSLkyxKcl5rm57kytZ+RZIdWvvsJF9IckOSHyc5MMnZSW5LMrtrzgeT\nfDrJsjZ+m9b+jiTz27UuTrJZa39qkq+19kVJ9gE+DuyYZGGS09q15ib5SpIfJDm/JVRIsmeSeUlu\nTnJZkm1b+3FJbm33cWFre1Gbc2GSW5JsPsAzeVOSm1qff24bd/fd1yeTLAL2HuD8/UmWts/7up7l\n7UnOBZYC24/KL1KSJEmSpF5JxvbTA8MmgFqS44PAe6tqKTA9yatGPbIRSLILcBJwUFXtDry3fXUG\ncE5V7QacD5zeNexJwN7AX9J5vf2ngV2A5yWZ0fpMARZU1S7APOAjrf2rVbVXu9ZtwNtb++nAvNY+\nE1gGnAj8R1XNqKoTWr896FRU7Qz8IbBvkg1bvIdW1Z7A2cDHWv8TgT3afRzT2o4H3l1VM4D96bcc\nL8lz6VRo7dv6rACO6LqvG6tq96q6tvu8zXMU8ALghcA7kuzRxj0b+HxV7VJVP+13vaOTLEiy4O57\n7kWSJEmSJI0/I9kD6EvA43SSJgD/DXx01CJaNQcBc6rqHoCq+lVr3xv413Z8HrBf15h/q6oClgC/\nqKolbUnTMmB667MSuKgdf7lr/K5JrkmyhE5SZZeuOL7QYlhRVQ8MEu9NVfVf7XoL2/WeA+wKXJ5k\nIZ2E1nat/2Lg/CRvApa3tuuATyU5DphWVcv5fS8B9gTmt/leQifZBJ1k0MVdfbvP9wO+VlUPtY2+\nv0onwQTw06q6YaAbqqqzqmpWVc3aZuutBrltSZIkSZLGt0zKmH16YSR7AO1YVYclORygqh7uW7q0\njnqs/VzZddx3PtjzqPZzNnBIVS1KciRw4GpeGzrJlw3o7Ku0rKr2HqD/K4EDgFcDH0ryvKr6eJJv\nAa8ArkvyJ1X1g64xoVP99NcDzPdov31++p8P5qER9JEkSZIkSePUSCqAHk+yKS0JkmRHfj+R0UtX\nAq9PshVAkie39uuBN7TjI4BrVnHeScCh7fiNwLXteHPg523Z1hFd/a+gs0cSSSYn2RL4Tes/nNuB\nbZLs3cZvmGSXJJOA7avqKjpL8LYEpibZsVUtnQr07c/U7Qrg0CRPafM9OckzRhDHNcAhSTZLMgX4\nU1b9uUmSJEmStG5a3/cAorP/zaXA9knOp5Ng+MCoRjVCVbWMzn4589pGxp9qXx0LHJVkMfBmfrc3\n0Eg9BDw/yVI6y7tOae1/C9xIZxlWd9XNe4EXt6VhNwM7V9W9dCp0liY5bYh7eJxOsunUdg8LgX2A\nycCX25y3AKdX1f3A+9qci4EngO/0m+9WOsvIvtv6XA5sO9wNV9X36VQ43dTu8V+q6pbhxkmSJEmS\npPEvne1whunUqbB5IZ3lRTf07bkzUSV5sKqm9jqOdc2smXvUgmvn9joMSZIkSePVCP7+qfErU590\nc1XN6nUco2HPp2xZN7xu3zG73kZnfmfMn+VI3gL2p8DyqvpWVX0TWJ7kkNEPTZIkSZIkSWvDiJaA\ndb/Vqi1D+sgQ/dd5Vv9IkiRJkrR+STJmn14YSQJooD4jeXuYJEmSJEmSxoGRJHIWJPkU8Ll2/m46\nGx1LkiRJkjRyPap8kIYXmDSx/3yOpALoWOBx4CLgQuBROkkgSZIkSZIkrQOGrQCqqoeAE8cgFkmS\nJEmSJI0C9/KRJEmSJEma4EsUR7IETJIkSZIkSeswK4AkSZIkSdL6LUz4CqBhE0BJNgHeDuwCbNLX\nXlVvG8W41glJpgP7VNW/tvMjgVlV9Z4ehiVJkiRJkvR7RrIE7DzgD4A/AeYB2wG/Gc2g1iHTgTf2\nOohVlWSDoc6HGDd5dCKSJEmSJKnHkrH79MBIEkDPqqq/BR6qqnOAVwIvGN2wVl+SKUm+lWRRkqVJ\nDmvtP0nyj0kWJlmQZGaSy5L8R5JjWp8kOa2NW9I1dsB24OPA/m3Ov2xtT0tyaZIfJvlEV1wPJvlY\ni+uGJE9t7dskuTjJ/PbZt7W/qM27MMktSTZPsm2Sq1vb0iT7D3D/eyaZl+Tmdn/btva5ST6TZAHw\n3gHOX9KusyTJ2Uk27npupyb5PvD6tf8bkyRJkiRJo20klR9PtJ/3J9kV+B/gKaMX0hp7GfCzqnol\nQJItu777z6qakeTTwGxgXzrL2pYCZwJ/BswAdge2BuYnuRrYZ5D2E4Hjq+pV7VpHtn57AI8Btyc5\no6ruAqYAN1TVh1pi6B3AR4HPAp+uqmuT7ABcBjwXOB54d1Vdl2Qq8ChwNHBZVX2sVeNs1n3jSTYE\nzgBeW1V3t0TVx4C+5XobVdWs1vfVfedtmd8PgZdU1R1JzgXeCXymjbu3qmYO9LCTHN3iYofttx/i\n1yJJkiRJ0ngVmDSx35M1krs7K8mTgJOAS4BbgVNHNao1swT441a1sn9VPdD13SVdfW6sqt9U1d3A\nY0mmAfsBF1TViqr6BZ0lb3sN0T6QK6rqgap6lM6zekZrfxz4Zju+mc7yMYCDgX9KsrDFt0VL+FwH\nfCrJccC0qloOzAeOSnIy8Lyq6r8U7znArsDlbb6T6CzZ63NRv/4XdY27s6ruaOfnAAcMMe63quqs\nqppVVbO22XqrwbpJkiRJkqQeGrICKMkk4NdVdR9wNfCHYxLVGmgVLDOBVwAfTXJFVZ3Svn6s/VzZ\nddx3vrbeiNY974queZ+oqhqgfRLwwpYw6vbxJN+icx/XJfmTqro6yQF0luHNTvKpqjq3a0yAZVW1\n9yCxPTTM+WBG2k+SJEmSpHXTBH8L2JAVQFW1EvjAGMWyViR5GvBwVX0ZOA0YcOnSIK4BDksyOck2\ndKpgbhqi/TfA5msY8neBY7vin9F+7lhVS6rqVDqVPzsleQbwi6r6IvAvA9zb7cA2SfZuc2yYZJcR\nxHA7MD3Js9r5m+lUOUmSJEmSpAlgJFUv/57keDrLgH5bCVJVvxq1qNbM84DTkqyks3/RO1dh7NeA\nvYFFQAEfqKr/STJY+73AiiSL6OwpdN9qxHsc8Lkki+n8Pq4GjgHel+TFdKqTlgHfAd4AnJDkCeBB\n4C3dE1XV40kOBU5vex9tQGcfn2VDBVBVjyY5CpiTzhvB5tPZE0mSJEmSpIkvTPgKoPxuVdIgHZI7\nB2iuqhr3y8E0tmbN3KMWXDu312FIkiRJkkZBpky7ue/FQhPNnn/wpLrxiIPG7HobfuqrY/4sh60A\nqqpnjkUgkiRJkiRJPTPBK4BGtPFxe/37znRemQ5Av82HJUmSJEmSNE4NmwBK8hHgQDoJoG8DLweu\nBUwASZIkSZKkCSAwacj3ZK3zRnJ3hwIvAf6nqo4Cdge2HNWoJEmSJEmStNaMZAnYI1W1MsnyJFsA\nvwS2H+W4tC5auYJ66P5eR6HVkEmTex2C1sAxW+/c6xC0ms6859Zeh6A1UI8+NHwnjUvZYuteh6A1\nsWJ5ryPQmlj+eK8jkNZbI0kALUgyDfgicDOd149/b1SjkiRJkiRJGkvr+ybQVfWudnhmkkuBLapq\n8eiGJUmSJEmSpLVl2D2AklzRd1xVP6mqxd1tkiRJkiRJ67TQqQAaq08PDFoBlGQTYDNg6yRPovM4\nALYAnj4GsUmSJEmSJGktGGoJ2F8A7wOeRmfvn74E0K+BfxrluCRJkiRJksbO+roHUFV9FvhskmOr\n6owxjGm9lmRyVa0Y5WtsUFXLBzsf6ThJkiRJkrRuGGoJ2F7AXX3JnyRvAV4H/BQ4uap+NTYhThxJ\nvg5sD2wCfLaqzmrtDwL/DBwMvDvJdOA4YCPgRuBdVbUiyReAvYBNga9U1UcGuMaOwOeAbYCHgXdU\n1Q+SzAYeBfYArkvy5H7n5wJn0ln29x/A26rqviRzgYXAfsAFwCfX8mORJEmSJKnHApOG3SZ5nTbU\n3f0z8DhAkgOAjwPnAg8AZ41+aBPS26pqT2AWcFySrVr7FODGqtoduBc4DNi3qmYAK4AjWr8PVdUs\nYDfgRUl2G+AaZwHHtuscD3y+67vtgH2q6v0DnJ8LfLCqdgOWAN3JpY2qalZV/a/kT5KjkyxIsuDu\ne80JSpIkSZI0Hg21B9Dkriqfw4Czqupi4OIkC0c/tAnpuCR/2o63B55NJ+GzAri4tb8E2BOYn876\nw02BX7bv/jzJ0XR+b9sCOwOL+yZPMhXYB5iT361d3Ljr+nP6LS+b0yqLtgSmVdW81n4OMKer30WD\n3VCrYjoLYNaM3WrIu5ckSZIkabxaX/cAAiZ37fnyEuDoEY7TAJIcSGeJ195V9XBbWrVJ+/rRrsRM\ngHOq6q/7jX8mnYqevdrSrNld4/tMAu5vlUMDeWiY88GMtJ8kSZIkSRqHhloCdgEwL8k3gEeAawCS\nPIvOMjCtmi2B+1ryZyfghYP0uwI4NMlTAJI8OckzgC3oJGIeSPJU4OX9B1bVr4E7k7y+jU2S3YcL\nrKoeAO5Lsn9rejMwb4ghkiRJkiRNHKFTATRWnx4Y6i1gH0tyBZ2lRt+tqr7lPZOAY8ciuAnmUuCY\nJLcBtwM3DNSpqm5NchLw3SSTgCeAd1fVDUluAX4A3AVcN8h1jgC+0ObYELgQWDSC+N4KnJlkM+DH\nwFEjvzVJkiRJkjSeDbmUq6r+V5Kiqu4YvXAmrqp6jAGqdtp3U/udX8QA++5U1ZEjuM6dwMuGGzvA\n+UIGqEqqqgOHu6YkSZIkSeu8Cb4H0MR+x5kkSZIkSZLczFmSJEmSJK3fQsikiV0jM7HvTpIkSZIk\nSSaAJEmSJEmSJjqXgGntmTSZTJnW6yi0OpY/3usItAa+8IvFvQ5Bq2ujTXsdgdZAmNgbRU5k9cDd\nvQ5Ba2Llil5HoDWw4uMf6HUI0uDcBFqSJEmSJEnrMiuAJEmSJEnS+i1YASRJkiRJkqR1mxVAkiRJ\nkiRJVgBpKEmOSfKWtTTX36yNeSRJkiRJkrpZAbQGkmxQVWeuxSn/BviHVYxhclWt0qsQWtzLBzsf\n6ThJkiRJkiaGwKSJXSMzse9uGEmmJ/lBkvOT3JbkK0k2a9/tmWRekpuTXJZk29Y+N8lnkiwA3pvk\n5CTHd3336SQL2nx7Jflqkh8m+WjXdd+U5KYkC5P8c5LJST4ObNrazh+sX2t/MMknkywC9u53Tzsm\nubTFfU2SnVr77CRnJrkR+MQA5zOS3JBkcZKvJXnSQPc7ur8RSZIkSZI0GtbrBFDzHODzVfVc4NfA\nu5JsCJwBHFpVewJnAx/rGrNRVc2qqk8OMN/jVTULOBP4BvBuYFfgyCRbJXkucBiwb1XNAFYAR1TV\nicAjVTWjqo4YrF+7xhTgxqravaqu7Xf9s4BjW9zHA5/v+m47YJ+qev8A5+cCH6yq3YAlwEdGcr9J\njm4JrwV333PvAI9DkiRJkqR1QDJ2nx5wCRjcVVXXteMvA8cBl9JJ2lyezi9mMvDzrjEXDTHfJe3n\nEmBZVf0cIMmPge2B/YA9gflt7k2BXw4wz0uG6LcCuLj/gCRTgX2AOfndH6iNu7rM6bdcbE5VrUiy\nJTCtqua19nOAOSO536o6i07SiVkz96jB+kmSJEmSpN4xAQT9kxYFhE7yZu8B+gM8NMR8j7WfK7uO\n+843aHOfU1V/PUxcQ/V7dJB9fyYB97eKoYH0j3uo+1idfpIkSZIkrXuCbwFbD+yQpC/R80bgWuB2\nYJu+9iQbJtllLV3vCuDQJE9pcz85yTPad0+05WfD9RtQVf0auDPJ69uYJNl9uICq6gHgviT7t6Y3\nA/OGGCJJkiRJkkZJkpcluT3Jj5KcOES/1yWpJLOGm9MEUCfZ8+4ktwFPAr5QVY8DhwKnto2WF9JZ\nWrXGqupW4CTgu0kWA5cD27avzwIWJzl/mH5DOQJ4e4t7GfDaEYb2VuC0dq0ZwCkjvSdJkiRJktZ5\n42QPoPYCqM8BLwd2Bg5PsvMA/Tan87KmG0dyey4Bg+VV9ab+jVW1EDhggPYD+52fPNB3VTUXmDvI\ndxcxwL46VfVB4IMj6Dd1kHuhqu4EXjZA+5HDnC8EXjjAuAP7t0mSJEmSpFHzfOBHVfVjgCQX0inu\nuLVfv78HTgVOGMmkVgBJkiRJkqT1XGDSpLH7wNZ9b9Run6O7gnk6cFfX+X+1tt9Fm8wEtq+qb430\nDtfrCqCq+gmdt31JkiRJkiSNlXuqath9ewaSZBLwKeDIVRlnBZAkSZIkSdL48d/A9l3n27W2PpvT\nKWaZm+QndLZzuWS4jaDX6wogSZIkSZIkYDy9Bn4+8Owkz6ST+HkDnbeWA799k/fWfedJ5gLHV9WC\noSY1AaS1q1b2OgKtjvHzP3RaDdlkSq9D0Opa/kSvI9Ca2GjjXkeg1ZRJk3sdgtZA3XPX8J00bl18\nwZB/P5UEVNXyJO8BLgMmA2dX1bIkpwALquqS1ZnXBJAkSZIkSVq/hXH1D+NV9W3g2/3aPjxI3wNH\nMqd7AEmSJEmSJE1wVgBJkiRJkqT1XPpezz5hTey7kyRJkiRJkgmg1ZFkWpJ3rcH4GUlesTZjkiRJ\nkiRJayAZu08PmABaPdOA1U4AATOAVUoApWOt/b6STB7qfKTjJEmSJEnS+GcCaPV8HNgxycIkpwEk\nOSHJ/CSLk/xda/vTJFe05M22Se5IsgNwCnBYG39YkpOTHN83eZKlSaa3z+1JzgWWAtsPdJ3+krw0\nyfeSfD/JnCSrOYCyAAAgAElEQVRTW/tPkpya5PvA6wc4PzzJknb9U7vmezDJJ5MsAvYenUcqSZIk\nSVIPWQGkAZwI/EdVzaiqE5K8FHg28Hw61T17Jjmgqr4G/Bx4N/BF4CNV9Z/Ah4GL2viLhrnWs4HP\nV9UuwHMGuk535yRbAycBB1fVTGAB8P6uLvdW1cyqurD7HLgaOBU4qM29V5JDWp8pwI1VtXtVXdvv\nekcnWZBkwd333DOCRydJkiRJksaabwFbO17aPre086l0EjVXA8fSqd65oaouWI25f1pVN4zgOn1e\nCOwMXJdOVnEj4Htd3/dPOPWd7wXMraq7AZKcDxwAfB1YAVw8UHBVdRZwFsCsmXvUKt6bJEmSJEm9\nF3pWmTNWTACtHQH+sar+eYDvtgNWAk9NMqmqVg7QZzm/X421SdfxQyO8Tnefy6vq8EG+f2iY84E8\nWlUrRtBPkiRJkiSNQy4BWz2/ATbvOr8MeFvXXjtPT/KUJBsAZwOHA7fxu6VY/cf/BJjZxs4EnjnI\ndQe8Tr8+NwD7JnlW6zMlyR+N4J5uAl6UZOu20fPhwLwRjJMkSZIkaR0XmDRp7D49YAXQaqiqe5Nc\nl2Qp8J22D9Bzge+1ZVcPAm8CjgGuqapr2wbK85N8C7gKODHJQuAf6SyvekuSZcCNwB2DXPe7g1zn\nl1197k5yJHBBko1b80mDzdk17udJTmyxBfhWVX1jlR+OJEmSJEkad0wAraaqemO/888Cn+3X7ZSu\n738D7NT13V79+r50kEvtOoLr9I/tygHmp6qmD3N+AfC/9imqqqlDXU+SJEmSpHXeBN8DyCVgkiRJ\nkiRJE5wJIEmSJEmSpAnOJWCSJEmSJEkuAZMkSZIkSdK6zAogrV0xp7hOmuzvbZ1WK3sdgVbXBhv1\nOgKtiapeR6DVtZH/F3hdlqc9q9chaA0c9qPv9zoErYE3bL1dr0MYPWHC/312Yt+dJEmSJEmSrACS\nJEmSJEnru8Ak9wCSJEmSJEnSOswKIEmSJEmSJPcAkiRJkiRJ0rrMBFAPJTkwyTfb8WuSnNjrmCRJ\nkiRJWi8lY/fpAZeArWVJAqRq1d7LXFWXAJeMTlS/L8kGVbV8sPMhxk2uqhWjG50kSZIkSVrbrABa\nC5JMT3J7knOBpcD2Sb6QZEGSZUn+rqvvy5L8IMn3gT/raj8yyT+149lJDu367sH2c9skVydZmGRp\nkv0HiGXPJPOS3JzksiTbtva5ST6TZAHw3gHOX5LkliRLkpydZOM27idJTm3xvn40np8kSZIkST2V\nwKRJY/fpASuA1p5nA2+tqhsAknyoqn6VZDJwRZLdgDuALwIHAT8CLlrFa7wRuKyqPtbm3az7yyQb\nAmcAr62qu5McBnwMeFvrslFVzWp9X913nmQT4IfAS6rqjpbIeifwmTbu3qqaOVBASY4GjgbYYfvt\nV/F2JEmSJEnSWLACaO35aV/yp/nzVjVzC7ALsDOwE3BnVf2wqgr48ipeYz5wVJKTgedV1W/6ff8c\nYFfg8iQLgZOA7bq+759wuqhr3J1VdUc7Pwc4YIhxv1VVZ1XVrKqatc3WW63SzUiSJEmSNG64B5BG\n6KG+gyTPBI4H9qqq+5LMBjZZhbmW05JzSSYBGwFU1dVJDgBeCcxO8qmqOrdrXIBlVbX3cDEOcj6Y\nkfaTJEmSJEnjkBVAo2MLOkmTB5I8FXh5a/8BMD3Jju388EHG/wTYsx2/BtgQIMkzgF9U1ReBfwH6\nL8u6Hdgmyd6t/4ZJdhlBvLe3uJ7Vzt8MzBvBOEmSJEmSJoZMGrtPD1gBNAqqalGSW+gkfO4Crmvt\nj7Y9c76V5GHgGmDzAab4IvCNJIuAS/ldBc6BwAlJngAeBN7S77qPt82jT0+yJZ3f72eAZcPE+2iS\no4A5STags9TszFW/c0mSJEmSNB6lsxWNtOZmzdyjFlw7t9dhSOufWtnrCLS6evSvP1pL/P9QUo/4\n39467dGHex2B1kC23u7mvhcLTTSzpj+tbvzw0WN2vQ3e/ndj/iytAJIkSZIkSerR5sxjxX96lCRJ\nkiRJmuCsAJIkSZIkSeu3BCZN7BoZE0CStK5zHxmpNyZ4mbg0fvnf3jpt06m9jkBab5kAkiRJkiRJ\nmuD/uOM/G0uSJEmSJE1wVgBJkiRJkiRN8K0VJvbdSZIkSZIkyQogSZIkSZK0nktgknsArXOS7JRk\nYZJbkuy4hnPNSPKKEfQ7MMk3R9BvbpJZ7fjbSaatSXyrI8kpSQ4e6+tKkiRJkqTemKgVQIcAX6mq\nj3Y3JgmQqlq5CnPNAGYB316L8QFQVcMmlkZDVX24F9eVJEmSJGnccg+gVZdkepIfJJmd5I4k5yc5\nOMl1SX6Y5Pmt35QkZye5qVXrvLZr/DVJvt8++7T2A1sFzVfa/Oe3pE73tV8BvA94Z5Kr2ly3JzkX\nWApsn+QLSRYkWZbk77rG7pXk+iSLWkxbAqcAh7WKosOSPD/J91q81yd5zjDPYtMkFya5LcnXgE27\nvvtJkq3XwvM6MslXk1za+n+itU9ucy5NsiTJX7b22UkObccvaXMtaXNv3BXb37XnvyTJTqv9B0KS\nJEmSJPXUaFYAPQt4PfA2YD7wRmA/4DXA39Cp0vkQcGVVva0thbopyb8DvwT+uKoeTfJs4AI6VTgA\newC7AD8DrgP2Ba7tu2hVfTvJmcCDVfV/kkwHng28tapuAEjyoar6VZLJwBVJdgN+AFwEHFZV85Ns\nATwMfBiYVVXvaWO3APavquVtGdU/AK8b4jm8E3i4qp7brvP9UXhe0KlU2gN4DLg9yRnAU4CnV9Wu\nLfbfW26WZBNgNvCSqrqjJcneCXymdbmnqmYmeRdwPPD/9Q86ydHA0QA7bL/9EI9BkiRJkqRxLO4B\ntLrurKolbbnVMuCKqipgCTC99XkpcGKShcBcYBNgB2BD4P+1d+/hdlX1vf/fnwQEBRoQqBcEo4Ag\ntxDc4BGFggL1CihQFEUQFfUc8FYqVnpaKlqp1KNFSylajB5ywIKiVC0ol3CzEgLkwh1rbEuhoLUi\ngkFJvr8/1siPxWbvZCc7e6+9136/nmc9mXOsMcf4jjnZSfhmjDG/mGQJcCGwU1e786vq3tbuwq62\nVuVfVyZ/mj9IcjNwC51k0k7ADsD9VXUjQFX9sqoeH6KtGcCFSW4FPtuuX5V9gfNam4uBxcPUG839\notV/qKqWAbcDzwd+DLwwyeeTvBr45aA+d2j93t3Ov9LiXekb7debGOY+V9U5VTVQVQNbbrH58HdB\nkiRJkiT1zFjOAHqs63hF1/mKrn4DHFZVd3VfmORU4AFgFp0k1bJh2l3OyMbwSFfbL6Azm2XPqvrv\nJHPoJFJG6jTgqqp6Y5tdNG8Nrl2V0dyvlzLEfWnjmwX8PvBe4A/ozDBa05hGep8lSZIkSZqE4h5A\nY+wy4MSV+/gkmd3KZ9CZjbMCOBqYvg77/B06CaGHkjwLeE0rvwt4TpI9WyybJFkPeBjYpOv6GcB/\ntONjR9DfNXSWc5FkF2C3UcQ+3P0aUpItgGlV9XXgT4A9BlW5C5iZZLt2fjRw9SjikyRJkiRJE1Cv\nE0Cn0VnutTjJbe0c4CzgmCSLgB3pmsEzWlW1iM7SrzuB/0dnHyGq6jfAkcDnW7/fpzMz6Cpgp5Wb\nQAOfBj6V5BZGNivmb4GNk9xBZ0Ppm0YR/nD3azhbAfPakrHzgD/u/rItF3sHnSVtS+jMNjp7FPFJ\nkiRJkqQJKJ1tZqTRG9hjdi24bl6vw5AkSZIkjYFstOlNVTWw+pqTz8C2W9cNn/rguPW33pEnjfu9\n7PUMIEmSJEmSJI0xN/aVJEmSJEnyNfCSJEmSJEmazJwBJEmSJEkaH+5Bq4nM18BLkiRJkiRpMnMG\nkCRJkiRJmtoSmOYeQJIkSZIkSZrEnAEkSZIkSZLkHkCSJEmSJEmazEwATVFJZiY5qtdxSJIkSZI0\nISTj9+kBE0BT10xgyARQEpcGSpIkSZLUR6ZMAqjNeLkzyZwkdyeZm+SAJNcnuSfJXq3eRknOTTI/\nyS1JDum6/tokN7fP3q18vyTzklzU2p+bPDWdl+T9SW5PsjjJBUmmtX63bN9PS/KjJFu2GP82yQ+T\n/Lj1cW6SO5LM6WrzV0nOSHJbksuT7NVi+XGSg1ud6a3Oja3v97TLTwf2SbIwyYeSHJvkkiRXAlck\n+WqSQ7v6mrvyXkiSJEmS1F/S2QNovD49MGUSQM12wGeAHdvnKOAVwEnAx1qdU4Arq2ovYH/gjCQb\nAQ8CB1bVHsCRwJld7c4GPgjsBLwQePkQfX8UmF1VuwHvraoVwHnAW9v3BwCLquqn7Xwz4GXAh4BL\ngM8COwO7Jtm91dmoxboz8DDwCeBA4I3Ax1uddwIPVdWewJ7Au5O8oMVzbVXtXlWfbXX3AA6vqt8D\n/h44FiDJDGBv4DuDB5Xk+CQLkiz46c/+a4hhS5IkSZKkXptqCaClVbWkJV9uA66oqgKW0FkSBXAQ\n8NEkC4F5wIbANsD6wBeTLAEupJPsWWl+Vd3b2l3Y1Va3xcDcJG8DHm9l5wJvb8fHAV/uqv+PXbE9\nMCjule3/Bri0HS8Brq6q3w4xnre38dwAbA5sP8z9+X5V/Rygqq4Gtm8zlN4CfL2qHh98QVWdU1UD\nVTWw5RabD9OsJEmSJEkTWIBpGb9PD0y1vV4e6zpe0XW+gifuRYDDququ7guTnAo8AMyikzhbNky7\nyxn6vr4O2Bd4A3BKkl2r6t+TPJDklcBePDEbqLvN7jgHx/rbliR6Ur2qWtG1j0+AE6vqskHj2W+I\nGB8ZdP5V4G3Am4F3DFFfkiRJkiRNAlNtBtBIXAacuHIfnySzW/kM4P42C+doYPpIG0wyDdi6qq4C\nTm5tbdy+/hKdpWAXVtXydTOEJ7kMeF+S9VssL2pL2h4GNlnNtXPoLG2jqm4fg9gkSZIkSdI4mGoz\ngEbiNOBzwOKWuFkKvB44C/h6krfTWXY1eLbMqkwHzmt76QQ4s6p+0b67hM7Sry8Pd/EofYnOcrCb\nW1Lrp8ChdJakLU+yiE6i578HX1hVDyS5A/jmGMUmSZIkSdLE0KPNmcdLnlhBpF5IMgB8tqr26XUs\ngyV5Bp39hPaoqodWV39gj9m14Lp5Yx6XJEmSpEnK//+c1LLxZjdV1UCv4xgLA9s/v2747MdWX3Ed\nWe8N7x33e9nf6a0JLslHga8Df9zrWAZLcgBwB/D5kSR/JEmSJEma1JLx+/SAS8B6qKpOB07vdRxD\nqarLgef3Og5JkiRJkjR6JoAkSZIkSdIUF5jW34ukTABJkiRJksZHj5a+SDIBJEmSJEmSprrQ9wnK\n/p7fJEmSJEmSJGcASZIkSZIkkf6eI9Pfo5MkSZIkSZIzgCRJkiRJ0lQX9wBSf0jypSQ7rabOoaur\nI0mSJEmSJh9nAE0RVfWuEVQ7FPg2cPsYhyNJkiRJ0sQyrb/nyEyI0SWZmeTOJHOS3J1kbpIDklyf\n5J4ke7V6GyU5N8n8JLckOaTr+muT3Nw+e7fy/ZLMS3JRa39u8tQ5XUm2S3J5kkXt+m3TcUaSW5Ms\nSXLk6tpMsmeSH7R25ifZZBWxXZDkdV0xzElyeJLprd8bkyxO8p5V3K+5Se5osTyjffeqdm+WtHu1\nQSufl2SgHf8qySdbnD9M8qwW18HAGUkWtnvw/iS3tzguWJfPXJIkSZIkjZ8JkQBqtgM+A+zYPkcB\nrwBOAj7W6pwCXFlVewH700lWbAQ8CBxYVXsARwJndrU7G/ggsBPwQuDlQ/Q9F/ibqpoF7A3cD7wJ\n2B2YBRzQ+nrOcG0meRrwNeADrZ0DgF+vIravAX8A0K59FfAd4J3AQ1W1J7An8O4kLxgi5h2As6rq\nxcAvgf+ZZENgDnBkVe1KZ4bX+4a4diPghy3Oa4B3V9UPgEuAP6qq3avqX4CPArOrajfgvUO0Q5Lj\nkyxIsuCnP/uvoapIkiRJkjSxhc4eQOP16YGJlABaWlVLqmoFcBtwRVUVsASY2eocBHw0yUJgHrAh\nsA2wPvDFJEuAC+kkZlaaX1X3tnYXdrUFQJJNgK2q6mKAqlpWVY/SST6dX1XLq+oB4Go6CZnh2twB\nuL+qbmzt/LKqHl9FbP8E7N9m6LwGuKaqft3G+PY2xhuAzYHth7hf/15V17fj81q8O7T7eHcr/wqw\n7xDX/obOUi+Amwbfky6LgblJ3gY8PlSFqjqnqgaqamDLLTYfphlJkiRJktRLE2kPoMe6jld0na/g\niTgDHFZVd3VfmORU4AE6s3WmAcuGaXc562bMa9Lmh4aKraqWJZkH/D6dmUErl1gFOLGqLltNDLWa\n81X5bUuuwarjfx2dBNIbgFOS7NqSWpIkSZIkaRKZSDOARuIy4MSuPXdmt/IZdGbfrACOBqaPtMGq\nehi4N8mhrc0N2n461wJHtj15tqSTCJm/iqbuAp6TZM/WziZJ1ltNbF8D3gHsA1zaNcb3JVm/tfOi\ntsxtsG2SvKwdHwVc12KYmWS7Vn40nZlLI/UwsEnrdxqwdVVdBZzcxrHxGrQlSZIkSdIkEci08fv0\nwGRLAJ1GZ0nV4iS3tXOAs4Bjkiyis3/QI2vY7tHA+5MsBn4APBu4mM4SqEXAlcBHquo/h2ugqn5D\nZybP51sc36ezRG1VsX0P+D3g8nY9wJfovIXr5iS3An/H0DN07gL+V5I7gM2Av62qZXQSShe2JWcr\ngLPX4D5cAPxRklvoLDs7r7VzC3BmVf1iDdqSJEmSJEkTRJ5YCaTJIslM4NtVtUuPQ3mSgT1m14Lr\n5vU6DEmSJEnSGMhGm95UVQO9jmMsDOzwwrrh7E+MW3/rvfKt434vJ9sMIEmSJEmSJK2hibQJtEao\nqn4CTKjZP5IkSZIkTWo92ptnvPT36CRJkiRJkuQMIEmSJE0x7oE5uXVeCKzJasXyXkcgDS2Baf39\n+4szgCRJkiRJkvqcM4AkSZIkSZLcA0iSJEmSJEmTmTOAJEmSJEmS+nyPMWcASZIkSZIk9TkTQFNY\nkoEkZ7bj/ZLs3euYJEmSJEkaf+nsATRenx5wCdgUVlULgAXtdD/gV8APehaQJEmSJEkaE1NuBlCS\nmUnuTDInyd1J5iY5IMn1Se5Jslert1GSc5PMT3JLkkO6rr82yc3ts3cr3y/JvCQXtfbnJk9dQJhk\nuySXJ1nUrt82HWckuTXJkiRHrq7NJHsm+UFrZ36STVYR2wVJXtcVw5wkh7f2v51kJvBe4ENJFibZ\nJ8nSJOu3+r/TfS5JkiRJUr9JMm6fXpiqM4C2A44AjgNuBI4CXgEcDHwMOBQ4Bbiyqo5LsikwP8nl\nwIPAgVW1LMn2wPnAQGt3NrAzcB9wPfBy4LpBfc8FTq+qi5NsSCcJ9yZgd2AWsAVwY5JrhmszyXzg\na8CRVXVjkt8Bfr2K2L4G/AHwnSRPA14FvA94KUBV/STJ2cCvquqvAJLMA14HfBN4M/CNqvrt4BuZ\n5HjgeIBttt56JPdekiRJkiSNsyk3A6hZWlVLqmoFcBtwRVUVsASY2eocBHw0yUJgHrAhsA2wPvDF\nJEuAC4GdutqdX1X3tnYXdrUFQJJNgK2q6mKAqlpWVY/SST6dX1XLq+oB4Gpgz1W0uQNwf1Xd2Nr5\nZVU9vorY/gnYP8kGwGuAa6rq16u5R18C3tGO3wF8eahKVXVOVQ1U1cCWW2y+miYlSZIkSVIvTNUZ\nQI91Ha/oOl/BE/ckwGFVdVf3hUlOBR6gM1tnGrBsmHaXs27u75q0+aGhYmszguYBvw8cCVywuk6r\n6vq2pGw/YHpV3bpW0UuSJEmSNNGFnm3OPF76e3SjcxlwYteeO7Nb+Qw6s29WAEcD00faYFU9DNyb\n5NDW5gZJngFcCxyZZHqSLYF9gfmraOou4DlJ9mztbJJkvdXE9jU6M3n2AS4dos2HgU0GlX0V+H8M\nM/tHkiRJkiRNDiaAhncanSVVi5Pc1s4BzgKOSbII2BF4ZA3bPRp4f5LFdN649WzgYmAxsAi4EvhI\nVf3ncA1U1W/ozOT5fIvj+3SWqK0qtu8Bvwdc3q4f7B+BN67cBLqVzQU2o7OXkCRJkiRJfWpivQY+\nyauT3JXkR0k+OsT3H05ye5LFSa5I8vzVttnZ+kZ6qiSHA4dU1dEjqT+wx+xacN28sQ1KkiRptPz7\n7+TWo7fnaB1ZsbzXEWgUssnmN1XVwOprTj4DL96+5n/5/4xbf9NfdvCw9zLJdOBu4EDgXjovr3pL\nVd3eVWd/4IaqejTJ+4D9qurIVfU5VfcA0mok+TydDaNf2+tYJEmSJEkac9MmTIJ5L+BHVfVjgCQX\nAIcA/38CqKqu6qr/Q+Btq2vUBJCGVFUn9joGSZIkSZL61BZJFnSdn1NV57TjrYB/7/ruXuClq2jr\nnXTe/r1KJoAkSZIkSZLG9y1gP1sXy+mSvA0YoLPn7yqZAJIkSZIkSZo4/gPYuuv8ea3sSZIcAJwC\n/F5VPba6Rk0ASZIkSZLGh5t4a6IKE+m/zxuB7ZO8gE7i583AUd0VkswG/g54dVU9OJJGfQ28JEmS\nJEnSBFFVjwMnAJcBdwD/UFW3Jfl4koNbtTOAjYELkyxMcsnq2nUGkCRJkiRJmuIy3nsArVJVfRf4\n7qCyP+06PmBN25w4o5MkSZIkSdKYcAaQJEmSJEnSxNkDaEw4A6hPJDk2yXN7HYckSZIkSZp4nAHU\nP44FbgXu63EckiRJkiRNPhNoD6CxMKlGl2RmkjuTzElyd5K5SQ5Icn2Se5Ls1eptlOTcJPOT3JLk\nkK7rr01yc/vs3cr3SzIvyUWt/bnJU+d+JdkuyeVJFrXrt03HGUluTbIkyZFdbV6d5FtJfpzk9CRv\nbTEtSbJtqzcnydlJFrQxvX5VsbbvTm5tLGrtHg4MAHPb7t9PT/KTJH/erl2SZMfV3JudW9nCJIuT\nbN/qfqf1c+vKsUmSJEmSpMllMs4A2g44AjgOuBE4CngFcDDwMeBQ4BTgyqo6LsmmwPwklwMPAgdW\n1bIk2wPn00mcAMwGdqYzg+Z64OXAdYP6ngucXlUXJ9mQTgLtTcDuwCxgC+DGJNe0+rOAFwM/B34M\nfKmq9kryAeBE4IOt3kxgL2Bb4Kok2w0Xa5LXAIcAL62qR5M8s6p+nuQE4KSqWgDQ8lc/q6o9kvxP\n4CTgXau4N+8F/rqq5iZ5GjAdeC1wX1W9rrU5Y/DDSHI8cDzANltvPexDkyRJkiRpwkpgmnsATTRL\nq2pJVa0AbgOuqKoCltBJpAAcBHw0yUJgHrAhsA2wPvDFJEuAC4GdutqdX1X3tnYXdrUFQJJNgK2q\n6mKAqlpWVY/SST6dX1XLq+oB4Gpgz3bZjVV1f1U9BvwL8L1WvmRQ+/9QVSuq6h46iaIdVxHrAcCX\nW99U1c9Xca++0X69aQT35p+BjyU5GXh+Vf26xXlgkr9Msk9VPTS4g6o6p6oGqmpgyy02X0UokiRJ\nkiSpVybjDKDHuo5XdJ2v4InxBDisqu7qvjDJqcADdGbmTAOWDdPuctbNvRlJrAA16LoCPrSKWNe0\n/+7xDHlvgDuS3AC8DvhukvdU1ZVJ9qAzE+gTSa6oqo+vRRySJEmSJKmHJuMMoJG4DDhx5T4+SWa3\n8hnA/W2Wz9F0ljmNSFU9DNyb5NDW5gZJngFcCxyZZHqSLYF9gflrGO8RSaa1fYFeCNy1ili/D7yj\n9U2SZ7byh4FNRtDXkPcmyQuBH1fVmcC3gN3SeavYo1V1HnAGsMcajkuSJEmSpMkh08bv0wP9mgA6\njc4SqsVJbmvnAGcBxyRZRGeZ1SNr2O7RwPuTLAZ+ADwbuBhYDCwCrgQ+UlX/uYbt/hudpNE/Ae+t\nqmXDxVpVlwKXAAvaMq6TWhtzgLNXbgK9ir6Guzd/ANza2twF+CqwK509ghYCfwZ8Yg3HJUmSJEmS\nJoB0ts9RrySZA3y7qi7qdSyjNbDH7Fpw3bxehyFJkrRq/v13cnvqy3o1mdSKXkegUcjGz7ypqgZW\nX3PyGdh5h5p/wd+NW3/Td9t/3O9lv84AkiRJkiRJUjMZN4HuK1V1bK9jkCRJkiRpakvP9uYZL/09\nOkmSJEmSJDkDSJIkSZIkqd/3GDMBJEmSpKmlz/+CL01ofb7ERprITABJkiRJkqSpLfR9grK/RydJ\nkiRJkiRnAEmSJEmSpKkuMK2/58j09+gkSZIkSZJkAmgySfLBJM/oOv9VL+ORJEmSJKlfJBm3Ty+Y\nAJpcPgg8Y7W1JEmSJEmSukz6BFCSmUnuTDInyd1J5iY5IMn1Se5Jslert1GSc5PMT3JLkkO6rr82\nyc3ts3cr3y/JvCQXtfbnZog0XZL3J7k9yeIkF7SyU5N8pbX7r0nelOTTSZYkuTTJ+q3eq1osS1ps\nGwxXnuT9wHOBq5Jc1dX/J5MsSvLDJM9qZXOSnJnkB0l+nOTwrvp/lOTGFu+fd92b77R2bk1yZCs/\nvWtsfzUWz0+SJEmSpAkh08bv0wOTPgHUbAd8BtixfY4CXgGcBHys1TkFuLKq9gL2B85IshHwIHBg\nVe0BHAmc2dXubDqzbnYCXgi8fIi+PwrMrqrdgPd2lW8LvBI4GDgPuKqqdgV+DbwuyYbAHODIVr4e\n8L7hyqvqTOA+YP+q2r/1sRHww6qaBVwDvLur/+e0e/B64HSAJAcB2wN7AbsDL0myL/Bq4L6qmlVV\nuwCXJtkceCOwcxvbJ4a68UmOT7IgyYKf/uy/hqoiSZIkSZJ6rF8SQEuraklVrQBuA66oqgKWADNb\nnYOAjyZZCMwDNgS2AdYHvphkCXAhnWTPSvOr6t7W7sKutrotBuYmeRvweFf5P1XVb1sM04FLW/nK\nmHZocd/dyr8C7LuK8qH8Bvh2O75pUHzfrKoVVXU78Kyue3AQcAtwM51k2fYtpgOT/GWSfarqIeAh\nYBnw90neBDw6VABVdU5VDVTVwJZbbD5MmJIkSZIkqZf65TXwj3Udr+g6X8ETYwxwWFXd1X1hklOB\nB4BZdOLxRDgAABkXSURBVBJiy4ZpdzlD36/X0UnQvAE4Jcmu3ddW1Yokv20JqcExjVZ3u4Pj6449\nXb9+qqr+bnBDSfYAXgt8IskVVfXxtnzuVcDhwAl0ZjRJkiRJktRfAvRoc+bx0i8zgEbiMuDElfv4\nJJndymcA97dZPkfTma0zIkmmAVtX1VXAya2tjUd4+V3AzCTbtfOjgatXUQ7wMLDJSOMbwmXAcUk2\nbvFvleR3kzwXeLSqzgPOAPZodWZU1XeBD9FJkEmSJEmSpEmoX2YAjcRpwOeAxS1xs5TO/jhnAV9P\n8nY6y7QeWYM2pwPnJZlBJ194ZlX9YiSvdKuqZUneAVyYZD3gRuDsqnpsqPJ22Tl09ue5r2sfoBGr\nqu8leTHwzy3GXwFvo7OH0hlJVgC/Bd5HJ9H0rbYnUYAPr2l/kiRJkiRNDunZ5szjJU+sIJJGZ2CP\n2bXgunm9DkOSJEmSNAay0aY3VdVAr+MYCwO77lQ3Xvx/x62/adsPjPu9nEozgCRJkiRJkobmHkCS\nJEmSJEmazJwBJEmSJEmSNK2/58j09+gkSZIkSZLkDCCtO8tuv527Zu3R6zC0FrZ72769DkGjMP3D\nf9XrELS2Hnu01xFoFB5971t6HYLW0tM/6e+bk1l+d2avQ9BoPG3DXkcgDS1xDyBJkiRJkiRNbs4A\nkiRJkiRJSn/Pkenv0UmSJEmSJMkZQJIkSZIkSe4BJEmSJEmSpEnNGUBTWJL1qurxXschSZIkSVLv\nOQNIayHJzCR3JpmT5O4kc5MckOT6JPck2avV2yjJuUnmJ7klySFd11+b5Ob22buV75dkXpKLWvtz\nk6fOU0vy7iQ3JlmU5OtJntHK5yQ5O8kNwKeTbJvk0iQ3tf52bPXekOSGFtPlSZ41bjdPkiRJkiSt\nUyaAxtZ2wGeAHdvnKOAVwEnAx1qdU4Arq2ovYH/gjCQbAQ8CB1bVHsCRwJld7c4GPgjsBLwQePkQ\nfX+jqvasqlnAHcA7u757HrB3VX0YOAc4sape0uI6q9W5DvgfVTUbuAD4yFADTHJ8kgVJFvz38hUj\nvC2SJEmSJGk8uQRsbC2tqiUASW4DrqiqSrIEmNnqHAQcnOSkdr4hsA1wH/CFJLsDy4EXdbU7v6ru\nbe0ubG1dN6jvXZJ8AtgU2Bi4rOu7C6tqeZKNgb2BC7smEW3Qfn0e8LUkzwGeBiwdaoBVdQ6dJBK7\nbLhBrfaOSJIkSZI04aTvN4E2ATS2Hus6XtF1voIn7n2Aw6rqru4Lk5wKPADMojNTa9kw7S5n6Oc4\nBzi0qhYlORbYr+u7R9qv04BfVNXuQ1z/eeD/VNUlSfYDTh2ijiRJkiRJmgRcAtZ7lwEnrtzHJ8ns\nVj4DuL+qVgBHA9PXsN1NgPuTrA+8dagKVfVLYGmSI1rfSTKrq///aMfHrGHfkiRJkiRNLsn4fXrA\nBFDvnQasDyxuy8ROa+VnAcckWURn/6BHhrl+OP8buAG4HrhzFfXeCryz9XMbcEgrP5XO0rCbgJ+t\nYd+SJEmSJGkCcQnYGKmqnwC7dJ0fO9R3VfVr4D1DXH8PsFtX0cmtfB4wr6veCcP0/7fA3w5Rfuyg\n86XAq4eo9y3gW0O1LUmSJElS/+nvPYCcASRJkiRJktTnnAEkSZIkSZKmttD3bwFzBpAkSZIkSVKf\ncwaQJEmSJElSf08AMgGkdWfDrX6X7f7if/U6DK2FuuaqXoegUaleB6C1tPyab/Q6BI3C0z/12V6H\noLX040OO6nUIGoUXnH92r0PQKEx74axehyBNWSaAJEmSJEmS+nwKkHsASZIkSZIk9TlnAEmSJEmS\npCkuvgVMkiRJkiRJk5sJoEkkyXOTXLSO2jo0yU7roi1JkiRJkia9ZPw+PWACaJJIsl5V3VdVh6+j\nJg8F1igBlMQlg5IkSZIkTUJTKgGUZGaSO5PMSXJ3krlJDkhyfZJ7kuzV6m2U5Nwk85PckuSQruuv\nTXJz++zdyvdLMi/JRa39uclTU3qtzl8nWZjk1hH0d2ySS5JcCVzR+r+167tvJvl+kp8kOSHJh9v1\nP0zyzFZv2ySXJrmpxb5ji/tg4IwWy7ZD1WvXz0lydpIbgE+P9TOSJEmSJEnr3lSc0bEdcARwHHAj\ncBTwCjoJkY/RmRlzCnBlVR2XZFNgfpLLgQeBA6tqWZLtgfOBgdbubGBn4D7geuDlwHVD9P+Mqto9\nyb7AucAuq+gPYA9gt6r6eZKZg9rapfW7IfAj4OSqmp3ks8Dbgc8B5wDvrap7krwUOKuqXpnkEuDb\nVXURQJIrBtcDXtn6eR6wd1UtH/FdliRJkiRpUunvTaCnYgJoaVUtAUhyG3BFVVWSJcDMVucg4OAk\nJ7XzDYFt6CR3vpBkd2A58KKududX1b2t3YWtraESQOcDVNU1SX6nJXyG6w/g+1X182HGclVVPQw8\nnOQh4B9b+RJgtyQbA3sDF3ZNSNpgcCMjqHfhcMmfJMcDxwNss8Vmw4QpSZIkSZJ6aSomgB7rOl7R\ndb6CJ+5HgMOq6q7uC5OcCjwAzKKzfG7ZMO0uZ/h7W0OcD9ffS4FHRjGWacAvqmr3VbTBCOoNG0NV\nnUNnlhED2249eGySJEmSJE0OvgZ+SroMOHHlPj5JZrfyGcD9VbUCOBqYvhZtH9nafAXwUFU9tIr+\nRqWqfgksTXJEazdJZrWvHwY2GUE9SZIkSZI0yZkAGtppwPrA4rZM7LRWfhZwTJJFwI6senbOcJYl\nuQU4G3jnavpbF94KvLPFfBtwSCu/APijtmn0tquoJ0mSJEnSFJBx/Iy/KbUErKp+Qmfj5JXnxw71\nXVX9GnjPENffA+zWVXRyK58HzOuqd8Iqwjivqj44qN3h+psDzBkmxsHfzRzquqpaCrx6iLav56mv\ngR+q3rGrGIskSZIkSZoEplQCSJIkSZIk6SmSvt8DyATQOKqq/XodgyRJkiRJmnpMAEmSJEmSJPX5\nDCA3gZYkSZIkSepzzgDSurPxDKa9/PW9jkJrYcUmM3odgkbjN4/1OgKtpccv+cdeh6BReNrLXtvr\nELSWXvDVM3sdgkbhuoOO6XUIGoV977651yFIq+AMIEmSJEmSJE1izgCSJEmSJElTXtwDSJIkSZIk\nSZOZM4AkSZIkSZKcASRJkiRJkqTJzATQBJfk2CTPHcX1H1uX8UiSJEmSpMnHBNDEdyyw1gkgYI0T\nQElcGihJkiRJmkIyzp/xZwJoNZLMTHJnkjlJ7k4yN8kBSa5Pck+SvVq9jZKcm2R+kluSHNJ1/bVJ\nbm6fvVv5fknmJbmotT83g7YcT3I4MADMTbIwydOTvCTJ1UluSnJZkuckmZHkriQ7tOvOT/LuJKcD\nT2/Xzm2x3NrV/klJTm3H85J8LskC4AND9TMOt1uSJEmSJI0BZ3qMzHbAEcBxwI3AUcArgIPpzLA5\nFDgFuLKqjkuyKTA/yeXAg8CBVbUsyfbA+XSSOgCzgZ2B+4DrgZcD163stKouSnICcFJVLUiyPvB5\n4JCq+mmSI4FPtj5PAOYk+Wtgs6r6IkCSE6pq93Y8czXjfFpVDbR+rh7cTxv/kyQ5HjgeYJutRjNR\nSZIkSZKkHurzTaBNAI3M0qpaApDkNuCKqqokS4CZrc5BwMFJTmrnGwLb0EnufCHJ7sBy4EVd7c6v\nqntbuwtbW9cxvB2AXYDvt8lC04H7Aarq+0mOAP4GmLWW4/za6voZrKrOAc4BGJi1S61lv5IkSZIk\naQyZABqZx7qOV3Sdr+CJexjgsKq6q/vCtsTqATpJmWnAsmHaXc7qn0eA26rqZU/5IpkGvBh4FNgM\nuHeI6x/nycv+Nhz0/SOr60eSJEmSpL4T+n4GkHsArTuXASeu3McnyexWPgO4v6pWAEfTmU2zJh4G\nNmnHdwFbJnlZ62P9JDu37z4E3EFnedqX2zIugN92HT8A/G6SzZNsALx+mD5X1Y8kSZIkSZpkTACt\nO6cB6wOL2zKx01r5WcAxSRYBO/LELJuRmgOc3ZaITQcOB/6ytbcQ2Ltt/vwu4A+r6lrgGuBP2vXn\ntJjmVtVvgY8D84HvA3cO1WFV/WaoftYwbkmSJEmSJpH+fguYS8BWo6p+Qmc/nJXnxw71XVX9GnjP\nENffA+zWVXRyK58HzOuqd8Iw/X8d+HpX0UJg3yGqvrjrmg93HZ+8ss92fiZw5hD97DfofLh+JEmS\nJEnSJGMCSJIkSZIkyT2AJEmSJEmSNJk5A0iSJEmSJKm/JwCZANI6lOlkw417HYXWwrTZ+/c6BI3G\nhhv1OgKtpQ0+e16vQ9Bo9Pk08b72O5v3OgKNwr5339TrEDQayx/vdQTSlGUCSJIkSZIkTXG9ezvX\neHEPIEmSJEmSpD7nDCBJkiRJkqQ+X97tDCBJkiRJkqQ+ZwJIkiRJkiSpz5kAmkKS/CTJFu34B72O\nR5IkSZKkCSF0loCN16cHTABNcknWah+nqtp7XcciSZIkSZImJhNAayHJzCR3JpmT5O4kc5MckOT6\nJPck2avV2yjJuUnmJ7klySFd11+b5Ob22buV75dkXpKLWvtzk6emBludzyVZAHwgyRuS3ND6uDzJ\ns1q9zZN8L8ltSb5E1zvtkvyqq89vd5V/Icmx7fj0JLcnWZzkr8bshkqSJEmS1HMZx8/48y1ga287\n4AjgOOBG4CjgFcDBwMeAQ4FTgCur6rgkmwLzk1wOPAgcWFXLkmwPnA8MtHZnAzsD9wHXAy8Hrhui\n/6dV1QBAks2A/1FVleRdwEeAPwT+DLiuqj6e5HXAO0c6uCSbA28EdmztbjpMveOB4wG2ed5WI21e\nkiRJkiSNIxNAa29pVS0BSHIbcEVLlCwBZrY6BwEHJzmpnW8IbEMnufOFJLsDy4EXdbU7v6rube0u\nbG0NlQD6Wtfx84CvJXkO8DRgaSvfF3gTQFV9J8l/r8H4HgKWAX/fZgh9e6hKVXUOcA7AwO6zag3a\nlyRJkiRp4vA18BrGY13HK7rOV/BEYi3AYVW1e/tsU1V3AB8CHgBm0Zn587Rh2l3O8Em6R7qOPw98\noap2Bd5DJ9E0Uo/z5P8ONgSoqseBvYCLgNcDl65Bm5IkSZIkaQIxATS2LgNOXLmPT5LZrXwGcH9V\nrQCOBqaPsp8ZwH+042O6yq+hszSNJK8BNhvi2n8FdkqyQVvm9apWf2NgRlV9l07CatYoY5QkSZIk\naYIaxzeA+RawvnQasD6wuC0TO62VnwUck2QRsCNPns2zNk4FLkxyE/CzrvI/B/Ztfb8J+LfBF1bV\nvwP/ANzafr2lfbUJ8O0ki+ksQfvwKGOUJEmSJEk9kiq3bdG6MbD7rFpw5T/1Ogythfrtsl6HoFHI\nxs/sdQhaW7/xZ29S6/N9AvpZPfivvQ5Bo5BnPb/XIWg0li/vdQQahWy+1U0rX0bUbwb2mF0Lrr1q\n3PrLxpuN+710BpAkSZIkSVKf8y1gkiRJkiRJfT671xlAkiRJkiRJfc49gLTOJPkpnbeK9astePIm\n25o8fHaTm89v8vLZTW4+v8nN5zd5+ewmt35/fs+vqi17HcRYSHIpnec3Xn5WVa8ex/5MAEkjlWRB\nv2541u98dpObz2/y8tlNbj6/yc3nN3n57CY3n58mMpeASZIkSZIk9TkTQJIkSZIkSX3OBJA0cuf0\nOgCtNZ/d5Obzm7x8dpObz29y8/lNXj67yc3npwnLPYAkSZIkSZL6nDOAJEmSJEmS+pwJIEmSJEmS\npD5nAkh9L8nyJAuT3JrkwiTPaOXPTnJBkn9JclOS7yZ5Udd1H0yyLMmMEfRxfpIXtGve0lX+giQ3\nJPlRkq8ledrYjLI/9fjZndCeWyXZYmxG2N96/PzmJrmr9X1ukvXHZpT9q8fP7++TLEqyOMlFSTYe\nm1H2p14+u67vz0zyq3U7sqmhxz97c5Isbf0vTLL72IyyP/X42SXJJ5PcneSOJO8fm1H2rx4/v2u7\nfu7uS/LNsRmlpjoTQJoKfl1Vu1fVLsBvgPcmCXAxMK+qtq2qlwB/DDyr67q3ADcCbxpBHzOrainw\ne8A1XeV/CXy2qrYD/ht45+iHM6X08tldDxwA/Os6GMdU1cvnNxfYEdgVeDrwrlGPZurp5fP7UFXN\nqqrdgH8DTlgH45lKevnsSDIAbLYOxjFV9fT5AX/U+t+9qhaOejRTSy+f3bHA1sCOVfVi4IJRj2bq\n6dnzq6p9Vv7cAf8MfGPdDEl6MhNAmmquBbYD9gd+W1Vnr/yiqhZV1bUASbYFNgb+hM5v6kNKZ5bB\n7cCOSRYCBwHfSfKu9gfGK4GLWvWvAIeOwZiminF7dq3NW6rqJ2M1mClovJ/fd6sB5gPPG6NxTRXj\n/fx+2eqFTgLPN1asvXF9dkmmA2cAHxmj8Uw14/r8tE6N97N7H/DxqlrR+nhwDMY0lfTkZy/J79D5\n/wdnAGlMrNfrAKTxkmQ94DXApcAuwE2rqP5mOv9yci2wQ5JnVdUDgytV1VuTHAFsQyfR81dVdUTr\nbwvgF1X1eKt+L7DVuhrPVDLez07rVi+fXzpLv44GPjDqgUxRvXp+Sb4MvBa4HfjDdTGWqaZHz+4E\n4JKqur+Tv9Pa6uHvnZ9M8qfAFcBHq+qx0Y9maunRs9sWODLJG4GfAu+vqnvWyYCmmB7/vfNQ4IqV\n/xAirWvOANJU8PSWaV9AZynB34/gmrcAF7R/Rfk6sKrEwB7AImC39qvWHZ/d5DYRnt9ZwDUr/6VO\na6Snz6+q3gE8F7gDOHLNQp/yevLskjy3Xff5tYxbHb382ftjOstn9wSeCZy8ZqFPeb18dhsAy6pq\nAPgicO4axq6J8feWtwDnjzhiaQ2lMzte6l9JflVVGw8qexXwZ1W17xD1d6XzG//9rehpwNKqevmg\neq8F/gJ4AZ0/JLYEHgH+rar2b0sXfgo8u6oeT/Iy4NSq+v11O8L+1atnN6juT4CBqvrZOhnUFNLr\n55fkz4DZwJtWTonXyPX6+XXV3xf4SFW9fvSjmhp6+Ofe6+j8D9Oydsk2wI+rsw+eRmgC/eztB5zk\nz97I9fLZJbkTeE1VLW1/B/1FVa12U2I9odc/e231wF3AVlW1DGkMOANIU9WVwAZJjl9ZkGS3JPvQ\nybyfWlUz2+e5wHOTPL+7gar6LvAS4Naq2hW4DZi98jfytvfIVcDh7ZJjgG+N9cCmgDF/dhpT4/L8\n2pr63wfeYvJnnRrz55eO7VYeAwcDd47H4PrcePy5952qevbKdoBHTf6sM+P1e+dz2q+hsxTl1rEe\n2BQwXn9v+Sad/Wqgs8Hw3WM3pCllPP/eeTjwbZM/GksmgDQlteTMG4ED0nml423Ap4D/pLOW9+JB\nl1zcygebDSxK5/Xu69dT1+ueDHw4yY+AzRnZVFKtwng9uyTvT3Ivnc2DFyf50joeypQ0jj97Z9N5\nQ8c/p/NK1T9dl+OYqsbp+QX4SpIlwBLgOcDH1+1Ipp5x/NnTGBjH5ze362dvC+AT63AYU9I4PrvT\ngcPa8/sUvv1ynRjn3zvfjMu/NMZcAiZJkiRJktTnnAEkSZIkSZLU50wASZIkSZIk9TkTQJIkSZIk\nSX3OBJAkSZIkSVKfMwEkSZIkSZLU50wASZKkSS9JJflM1/lJSU7tYUgjlmRmklt7HYckSepvJoAk\nSVI/eAx4U5Iteh2IJEnSRGQCSJIk9YPHgXOADw3+os2wuTLJ4iRXJNkmyfQkS9OxaZLlSfZt9a9J\nsn2SvZL8c5JbkvwgyQ5DdZzk5CRLkixKcnor2zbJpUluSnJtkh1b+bOSXNzqLkqyd2tmepIvJrkt\nyfeSPL3Vf3eSG1vdryd5xhjcO0mSNAWYAJIkSf3ib4C3JpkxqPzzwFeqajdgLnBmVS0H7gJ2Al4B\n3Azsk2QDYOuquge4E9inqmYDfwr8xeAOk7wGOAR4aVXNAj7dvjoHOLGqXgKcBJzVys8Erm519wBu\na+XbA39TVTsDvwAOa+XfqKo9W/07gHeu5b2RJElT3Hq9DkCSJGldqKpfJvkq8H7g111fvQx4Uzv+\nvzyRpLkW2Bd4AfAp4N3A1cCN7fsZwFeSbA8UsP4Q3R4AfLmqHm0x/DzJxsDewIVJVtbboP36SuDt\nre5y4KEkmwFLq2phq3MTMLMd75LkE8CmwMbAZSO9H5IkSd2cASRJkvrJ5+jMktloBHWvAfYB9gK+\nSyfJsh+dxBDAacBVVbUL8AZgwxHGMA34RVXt3vV58WqueazreDlP/CPdHOCEqtoV+PM1iEGSJOlJ\nTABJkqS+UVU/B/6BJy+V+gHw5nb8Vp5I8MynM1NnRVUtAxYC76GTGILODKD/aMfHDtPl94F3rNyb\nJ8kzq+qXwNIkR7SyJJnV6l8BvK+VTx9iudpgmwD3J1m/xS5JkrRWTABJkqR+8xmg+21gJ9JJ0iwG\njgY+AFBVjwH/Dvyw1buWTsJlSTv/NPCpJLcwzLL5qroUuARYkGQhnf1+oJOseWeSRXT2+TmklX8A\n2D/JEjpLvXZazVj+N3ADcD2dPYkkSZLWSqqq1zFIkiRJkiRpDDkDSJIkSZIkqc+ZAJIkSZIkSepz\nJoAkSZIkSZL6nAkgSZIkSZKkPmcCSJIkSZIkqc+ZAJIkSZIkSepzJoAkSZIkSZL63P8HUafVCfJ3\nOsAAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 1440x720 with 2 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "SZKExX9Vu1bI"
},
"source": [
"Z powyższego można wywnioskować, iż niektóre cechy np. *radius_error*, *mean_symmetry* czy *worst fractal dimension* nie wnoszą wiele do zbioru danych. Możemy więc z nich zrezygnować aby zredukować wymiar, możemy też użyć zestawu naszych nowych cech."
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "Zp79Z2g9u8bF"
},
"source": [
"## Zadanie 5. KNN\n",
"*Zbadać jakość klasyfikatorów k-nn (dla różnego k=1,3,5) dla pełnego zestawu N „starych”cech oraz N nowych cech. A także dla mniejszego zestawu m najlepszych „starych” cech i dla wyselekcjonowanego zestawu m „nowych” najlepszych cech (przy pomocy PCA). Przy pomocy studentów wypełnić tabelkę: (k=1,3,5; m=N,5,2) dla tych dwóch zbiorów.*"
]
},
{
"cell_type": "code",
"metadata": {
"id": "MKBiE8K4hGz0",
"colab_type": "code",
"colab": {}
},
"source": [
"breast_cancer_ds = load_breast_cancer()"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "S2BtKYO2SBYX",
"colab_type": "code",
"outputId": "b6d90f2d-83d1-49ec-9bf7-3cd2be28af05",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 35
}
},
"source": [
"data = breast_cancer_ds['data'].copy()\n",
"\n",
"print('Breast cancer data shape: ', data.shape)\n",
"normalized = normalize(data)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"Breast cancer data shape: (569, 30)\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"id": "YUuJBrxLu8bu",
"colab": {}
},
"source": [
"def with_m_most_important(data, target, m):\n",
" model = ExtraTreesClassifier()\n",
" model.fit(data, target)\n",
" importance = model.feature_importances_\n",
"\n",
" most_important = list(map(lambda x: x[0], sorted(enumerate(importance), key = lambda x: x[1], reverse=True)[:m]))\n",
" return data[:,most_important]\n"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "2TwgyL-2Qt5M",
"colab_type": "code",
"outputId": "75b4d0f4-8971-4231-cf24-4aeeb508a466",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 439
}
},
"source": [
"ks = [1,3,5]\n",
"features_count = normalized.shape[1]\n",
"ms = [features_count, 5, 2]\n",
"\n",
"acc_pca = []\n",
"acc_etc = []\n",
"\n",
"for k in ks:\n",
" for m in ms:\n",
" pca, pca_data = pca_transform(normalized, m)\n",
" acc = predict_and_check_util(k, pca_data, breast_cancer_ds.target)\n",
" acc_pca.append([k, m, acc])\n",
"\n",
" old_data = with_m_most_important(normalized, breast_cancer_ds.target, m)\n",
" acc = predict_and_check_util(k, old_data, breast_cancer_ds.target)\n",
" acc_etc.append([k, m, acc])\n",
"\n",
"df = pd.DataFrame(acc_pca, columns=['k-neighbours', 'm-features', 'score'])\n",
"print('PCA scores:')\n",
"print(df)\n",
"print()\n",
"\n",
"df = pd.DataFrame(acc_etc, columns=['k-neighbours', 'm-features', 'score'])\n",
"print('ETC scores:')\n",
"print(df)"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"PCA scores:\n",
" k-neighbours m-features score\n",
"0 1 30 0.881579\n",
"1 1 5 0.894737\n",
"2 1 2 0.892544\n",
"3 3 30 0.890351\n",
"4 3 5 0.918860\n",
"5 3 2 0.903509\n",
"6 5 30 0.912281\n",
"7 5 5 0.899123\n",
"8 5 2 0.905702\n",
"\n",
"ETC scores:\n",
" k-neighbours m-features score\n",
"0 1 30 0.855263\n",
"1 1 5 0.907895\n",
"2 1 2 0.881579\n",
"3 3 30 0.903509\n",
"4 3 5 0.912281\n",
"5 3 2 0.901316\n",
"6 5 30 0.905702\n",
"7 5 5 0.899123\n",
"8 5 2 0.910088\n"
],
"name": "stdout"
}
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "ZBdp5C0UkAIE",
"colab_type": "text"
},
"source": [
"Zauważmy, że PCA nie zawsze osiąga lepszy wynik niż wybór m najlepszych cech. Spójrzmy na heat-mapę (powyżej) udziału starych cech w nowych dla zestawu 'breast cancer'. Okazuje się, że jedynie około 9 starych cech ma jakiś udział w nowych cechach."
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "zFS3UOnYvAF0"
},
"source": [
"## Zadanie 6. PCA 2D\n",
"*Pokazać wizualizację zbioru danych przy pomocy PCA w 2 wymiarach. Na rysunku zaznaczyć przykłady żle sklasyfikowane i tzw. Outliery (znaleźć procedurę do poszukiwania outlierów!)*"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "fklxC4qQvAF6"
},
"source": [
"Na początku redukcja datasetu do 2 wymiarów używająć PCA:"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"id": "jxo9Q9E7vAF_",
"colab": {}
},
"source": [
"def set_plot(title, label1, label2):\n",
" fig = plt.figure(figsize=(22, 14))\n",
" ax = fig.add_subplot(111)\n",
"\n",
" ax.set_title(title)\n",
" ax.set_xlabel(label1)\n",
" ax.set_ylabel(label2)\n",
"\n",
" return ax"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"id": "tN8v8EadlP8S",
"colab_type": "code",
"colab": {}
},
"source": [
"original_data, original_target = load_breast_cancer(return_X_y=True)\n",
"data, target = original_data.copy(), original_target.copy()"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "92366a68-673b-42ac-8882-f1b31e5b38da",
"id": "Z9LPspqKvAGc",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"source": [
"# Apply PCA\n",
"data = normalize(data)\n",
"pca = PCA(n_components=2)\n",
"new_data = pca.fit_transform(data)\n",
"\n",
"# Split into targets, to visualise it better\n",
"malignant = new_data[np.where(target == 0)]\n",
"benign = new_data[np.nonzero(target)]\n",
"\n",
"# Plotting\n",
"ax = set_plot('new 2D space', 'feature 1', 'feature 2')\n",
"\n",
"x, y = malignant[:,0], malignant[:,1]\n",
"ax.plot(x, y, 'g^')\n",
"x, y = benign[:,0], benign[:,1]\n",
"ax.plot(x, y, 'yx')\n",
"\n",
"plt.show()"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABQ0AAAM2CAYAAABc6aXNAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nOzdf5Ck910f+M9X2hNZW2O2hWUpY2nG\nI0Mc70nBCrOQVM7opqhKcCkEDI4iElMkOQV5dSlUcUCFUlkZdorosuEIUVAW5dCtc3FylnI2xOBy\nuBxsJCtShV2xAslLnNi7bGszI9mgsdMyFmPtfu+PmR73Mz+7Z7r7efrp16tqSprunulvP8/Tszvv\n/Xw/n5RzDgAAAACAtivKXgAAAAAAUC1CQwAAAACgQGgIAAAAABQIDQEAAACAAqEhAAAAAFAgNAQA\nAAAACoSGAAAAAECB0BAAgF1LKf2JlNK/TSl9MaX0Skrp11JK7+i4/ydTSl9LKbVWP/5LSunnU0p/\nvMx1AwCwPaEhAAB7cSAiPhER74iI6yLiNyPi3657zGM554mIuCYi3hsR10fEs4JDAIDqEhoCANRI\nSun3Uko/llL6nZTSl1NKj6WU/ljH/X8xpfRcSulLKaWnU0p/avX2v5FS+pWOx/3XlNK/6fj8xZTS\nu9Y/X875N3POj+acX8k5fy0i/nFEvCOl9E2bPPZrOefPRMRfiYgvRsTf3eI1fHNK6YnV9f9+Sumx\njvtySulHU0rnVu/7RymlK1bve3tK6TdSSn+wet+/Sikd6PjaG1NKH1+tivyDlNLPd9z3N1NKv5tS\nWlqtlpzu8pADANSS0BAAoH7uiIjvjoiZiPhTEfHXIyJSSrdGxP8ZEXdHxDdFxCMR8YmU0jdExBMR\n8e6U0hUppcmIuCoi/uzq190UEVdHxO908dzfGREv5Zz/YKsH5JwvxUo14ru3eMh8RPy/EdGIiBsi\n4p+uu/+9ETEbEX86Ir43Iv7m6u0pIh6MiMmIeGdE3BgRP7n6Gq6MiF+NiAsR8baIeGtEfHT1vu+N\niL8XEd8fEddGxKcj4v/u4rUCANSW0BAAoH4eyjkv5JxfiYhfiYh2heCPRMQjOef/lHO+lHP+FxHx\nRxHxZ3LO5yKitfrY74yIX4uIhZTSn4yI2yLi0znny9s9aUrphoh4OCI+2MUaF2Jlu/JmvhYR0xEx\n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\nVc+qtH3z9Hve0/baNdYfO80Ze6Y5ZNfcuvdNyx9ue8kq62bzHGpm2u5q+79zc8pHVl07q7eOvLyx\n7b1tn217+QHr1tw/sb1tMDP75uaYm1ZXNZtpHZm5uu1DbXe3va3tqXPrzDM7zAbzYo7ZwXw9mS2t\n7e8meWqMcd00uZ0wxnjvGttdkOT7kvzaGOMtc8tvTPLXY4yPT3+oPTDG+KNV1c/qrSczbU9Mck+S\nc5KMJF9KcvYY4z/b3pHkmjHGPSsunRVp+4Ik/5zkoiR7k9yd5JfGGA/NbfPOJD8xxriq7RVJfn6M\n8da2P5rkr5Kcm+SHknwuyRljjH2rfh2szgYzsyvJzWOMH1995WyGdeZlV5LvT3JNkpvGGJ+alh90\n/7TCl8CKbSQz07pvjTFevMqa2VzrzMz5Se4aY3y77a8nOW/aL5lndpiN5GVaZ47ZwRxpyFZ3WZIb\npts3JPm5tTYaY9yW5On5ZW2b5GeT7H9TddDxbCvrycwlSW4dYzw1vUG6NcmbV1Qfm+/cJHvGGI+O\nMf4vycczy828+Rx9KskF05xyWZKPjzGeGWN8Ncme6fHY3jaSGXae583LGOOxMcbuJN89YKz90860\nkcywM60nM58fY3x7uvuFJKdMt80zO89G8sIOp2nIVvfKMcYT0+1/S/LKJca+LMk3xxjPTvf3JnnV\n4SyOLWk9mXlVkn+Zu39gNv5sOvz+t/3Rvy093+9/YZtpDvmvzOaU9Yxl+9lIZpLktLb3tf37tm84\n0sWy6TYyT5hjdqaN/t6Pa3tP2y+09QH5zrBsZn41yWcOcSxHv43kJTHH7GjHbHYB0PZzSX5wjVXv\nn78zxhhtfZ+eI52Zt40xHm/7kiSfTvKOJH9+aJUC5IkkrxljPNn27CR/0/bHxhj/vdmFAdvGqdN7\nl9cmub3tP44xvrLZRbE1tH17Zl9FftNm18LWd5C8mGN2ME1DNt0Y48KDrWv79bYnjzGeaHtykm8s\n8dBPJvmBtsdMR32ckuTxDZbLFnAYMvN4kvPm7p+S5I7psR+f/n267V9mdji/puH28niSV8/dX2tu\n2L/N3rbHJHlpZnPKesay/RxyZsbs5NHPJMkY40ttv5LkjMzOJ8X2tJF54qD7J7a1De1b5t67PDqd\nm/msJP6g397WlZm2F2b2ofqbxhjPzI0974CxdxyRKtkqNpIXc8wO5+vJbHU3Jdl/Ra8rk/ztegdO\nf6h9Psn+K8wtNZ6j1noyc0uSi9ue0NnVlS9OckvbY9qelCRtX5jkLUn+aQU1s1p3Jzm9s6urvyjJ\nFZnlZt58ji5Pcvs0p9yU5IrOrpR7WpLTk3xxRXWzeQ45M21fPp2APNMn9KcneXRFdbM51pOXg1lz\n/3SE6mTrOOTMTFk5drp9UpLXJ3nouUexDTxvZtqeleT6JJeOMeY/RDfP7DyHnBdzDJqGbHXXJbmo\n7SNJLpzup+05bT+6f6O2dyb5ZGYnnt/b9pJp1XuTXN12T2bnlvrYSqtnMzxvZsYYTyX5YGY70LuT\nfGBadmxmzcPdSe7P7BO4P1n9S+BImo48fldmb5C/nOTGMcaDbT/Q9tJps48ledk0d1yd5Npp7INJ\nbszszdJnk/yGKydvfxvJTJI3Jtnd9v7MLpBy1TTfsE2tJy9tf6rt3iS/mOT6tg9OYw+2f2Ib20hm\nkvxIknvaPpDZh+XXzV8Rle1pnfulDyV5cZJPTufqvmkaa57ZYTaSl5hjdrzODpwAAAAAAJhxpCEA\nAAAAsEDTEAAAAABYoGkIAAAAACzQNAQAAAAAFmgaAgAAAAALNA0BADiotu9u++W2f3EIY3e1/eUj\nUdf0+O9qu6ftaHvSkXoeAICdSNMQAIDn8s4kF40x3nYIY3clWbpp2PYF69z0H5JcmORryz4HAADP\nTdMQAIA1tf1Iktcm+Uzb97Q9vu2ftv1i2/vaXjZtt6vtnW3vnX5+ZnqI65K8oe390/hfafvhuce/\nue150+1vtf29tg8k+em2b5+e5/6216/VSBxj3DfGeOwI/zcAAOxImoYAAKxpjHFVkn9Ncv4Y4/eT\nvD/J7WOMc5Ocn+RDbY9P8o3Mjkb8ySRvTfIH00Ncm+TOMcaZ0/jncnySu8YYr0vy5PQ4rx9jnJlk\nX5JDOdIRAIBDdMxmFwAAwFHj4iSXtr1mun9cktdk1lj8cNv9Db4zDuGx9yX59HT7giRnJ7m7bZJ8\nb2aNSQAAVkTTEACA9WqSXxhjPLywsP2dJF9P8rrMvsnynYOMfzaL33Q5bu72d8YY++ae54YxxvsO\nR9EAACzP15MBAFivW5L8ZqfD/9qeNS1/aZInxhjfTfKOJPvPP/h0kpfMjX8syZltv6ftq5Oce5Dn\nuS3J5W1fMT3PiW1PPayvBACA56RpCADAen0wyQuT7G774HQ/Sf4wyZXTRUx+OMn/TMt3J9nX9oG2\n78nsasdfTfJQZuc9vHetJxljPJTkt5L8XdvdSW5NcvKB27V9d9u9SU6Zavro4XmZAAB0jLHZNQAA\nAAAAW4gjDQEAAACABZqGAAAAAMACTUMAAAAAYIGmIQAAAACwQNMQAAAAAFigaQgAAAAALNA0BAAA\nAAAWaBoCAAAAAAv+H9530/YWxTXeAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 1584x1008 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "c4a3fed1-4300-4a30-b039-f0d05f903b08",
"id": "8zsJGBRXvAGl",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"source": [
"# Find wrongly classified points\n",
"neigh = KNeighborsClassifier(n_neighbors=3)\n",
"neigh.fit(new_data, target)\n",
"prediction = neigh.predict(new_data)\n",
"\n",
"wrong_pred = target - prediction\n",
"wrong_points = new_data[np.where(wrong_pred != 0)]\n",
"\n",
"print('There are: {} wrongly classified points, that is {}%'.\n",
" format(wrong_points.shape[0], (wrong_points.shape[0] / target.shape[0] * 100))\n",
" )\n",
"\n",
"# Plotting wrongly classified points\n",
"ax = set_plot('Clasif errors', 'feature 1', 'feature 2')\n",
"\n",
"x, y = malignant[:,0], malignant[:,1]\n",
"ax.plot(x, y, 'g^')\n",
"x, y = benign[:,0], benign[:,1]\n",
"ax.plot(x, y, 'yx')\n",
"x, y = wrong_points[:,0], wrong_points[:,1]\n",
"ax.plot(x, y, 'bo') # wrongly classified points marked in blue circles\n",
"\n",
"plt.show()\n"
],
"execution_count": 0,
"outputs": [
{
"output_type": "stream",
"text": [
"There are: 35 wrongly classified points, that is 6.151142355008787%\n"
],
"name": "stdout"
},
{
"output_type": "display_data",
"data": {
"image/png": "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\nBKK4at+FAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 1584x1008 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "Lqe0HmUgvAGt"
},
"source": [
"### **Detekcja outlierów**\n",
"\n",
"Problem detekcji outlierów polega na tym, że mamy sklasyfikować dane punkty jako należące do pewnej \"standardowej dystrybucji danych\" (jakakolwiek dla danego zbioru danych by nie była) lub do niej nienależące. Jest wiele algorytmów dla rozwiązań tego problemu.\n",
"\n",
"Przykłady:\n",
"\n",
"![alt text](https://scikit-learn.org/stable/_images/sphx_glr_plot_anomaly_comparison_0011.png)\n",
"https://scikit-learn.org/stable/_images/sphx_glr_plot_anomaly_comparison_0011.png\n"
]
},
{
"cell_type": "code",
"metadata": {
"colab_type": "code",
"outputId": "5cffe500-c52b-49dd-aefa-1db85dffd9ff",
"id": "ntXgm7KvvAGu",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"source": [
"# Outlier prediction using local classifier\n",
"clf = LocalOutlierFactor(n_neighbors=8)\n",
"labels = clf.fit_predict(new_data)\n",
"\n",
"outliers = new_data[np.where(labels == -1)]\n",
"\n",
"# Plotting\n",
"ax = set_plot('Outliers', 'feature1', 'feature2')\n",
"\n",
"x, y = malignant[:,0], malignant[:,1]\n",
"ax.plot(x, y, 'g^')\n",
"x, y = benign[:,0], benign[:,1]\n",
"ax.plot(x, y, 'yx')\n",
"x, y = outliers[:,0], outliers[:,1]\n",
"ax.plot(x, y, 'bo') # outliers marked in blue circles\n",
"\n",
"\n",
"plt.show()\n"
],
"execution_count": 0,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\nelmSlErdJtu+qMWL78wFvya1a0fB7SAGpqs3tjhOEg9aJpvRuhfXac8dexgokyfsIVJxH/QT16Fb\nAAB4wSAUAMY7enSDUqk1BXsRplJrNDq6u6aKv+KqxWx2f9mKwuJqOCcwrGdfRDf7yfm951xxdaEk\n2fa4zp173dcSY4YzAAAgAElEQVTWZy+qV1JakqaO/eqrH9Hk5AX94hf7fQ284lqF52XvRi/7Q8b1\nfKC0uLd+BoXqsNLCrvqL+3YSca+SBACgXoSGAAxSXPls64MP3qmpfbc4rLKsprLtusUBo21P1B3m\nudlPzu8954qDo1TqNlnWHN9bn92qNpRm+fKd6up6KbfedHqbFi++S+fP91cMOb2GXia0atfC65tt\nt/tDxvV8oDRCjZlMDVKjbiOPYohUnLeTaLShWwAAlEJoCMAIUwHSywWVUldf/Yiy2X/xXPFXKqxK\np7epvX1zyUqs4oAxv8XXYfIAifwQraWlR1dc8QkNDfVpcvI9dXW9pM7OrWpv36xDhz4banDoppIy\nP+hasOBmnT37asWQM5PNaMsPdil1+A7XoZfpU6rL8fpm2+3+mHE9H5iJUKM0t0Fq2CFe1NWPUVT9\nxXlvyLhXSQIA4AdCQwCB8VoRVhwg5Vf85bcSV6v4KxdW2fbEjEqsatVwcZBfOTY2tk+/+MWb05+Z\n+hE/dc63qbOzr+bW51q4qaQcG9un4eGvqqXlt3Tq1PNqb99cMeTse6NPz/84pdezv+kp9ApqSnWQ\nvLzZ9nodx/F8YKYkhBp+B3degtQwQzwTqh/jXPUXBS/nK+oqUgAAgkJoCCAwXtsgnUqpxYvv1qlT\nz8uymgqCPacCsFrFX7mwqrl59YxKrHr2FXTzJqFScOrX3nLOmlOpNTp06BZZ1iVatuyrmjXrMh06\ndEtur8i2tk1GVUs6z2tnZ59+/vMfqLX1XqXT2zQ8/HjJkDP/Tff2f/1H/drCu12HXkFNqTaF1+vY\nxPPBm27vkhAC+R3cuQ1Sww7xTGgjj3PVXxS8nK+oq0gBAAgKoSGAulQKvry0QeZXSn3sY89q2bLH\ndOzYA/rRj/59wffVGrSVq8SqpxXZzZuESsGpn3vLTYWi3ZqcfE9Ll96ntrZNWrr0Pk1Ovqfm5m5j\nKsnynz8n6Jo3b5UWL75Tp0//tRYsuFmDgw+XDDnz33R3/dovXYdeSagmrcbL/pimng/edHsXdAgU\n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\n1bUrbD95mDP2DHPI1qltbxvWf7mqLpln3SzO0fZMVW2tqv+ZmlPeO+/amb819MvLquoLVXWwqi5/\n1LYVj09sbuvsmUNTc8zO+VXNIq2hZ66qqnurandV3VRVZ01tM88smXX2izlmifl4MhtaVb0zyYPd\nff0wuZ3W3dessN+FSZ6Y5Ne6+9VT6z+a5G+6+yPDH2p3d/efzKt+5m8tPVNVT0uyK8m2JJ3kziTn\ndvd/VtUtSa7u7l1zLp05qarHJ/mXJBcn2ZvkjiS/2N33Tu3zliQ/3t1vrqrXJ/m57n5dVf1Ikr9K\ncl6S5yb5bJIXdvehef8czM86e2Zrkk9294/Nv3IWYY39sjXJDya5OsnO7v7YsH7V49McfwTmbD09\nM2z7bnc/aZ41s1hr7JlXJLm9uw9U1a8nuWA4Lplnlsx6+mXYZo5ZYs40ZKO7LMmHhscfSvKzK+3U\n3TcleWh6XVVVkp9JcvhF1arj2VTW0jOXJLmxux8cXiDdmORVc6qPxTsvyZ7uvr+7/zfJRzLpm2nT\nffSxJBcOc8plST7S3Q9391eT7Bmej81tPT3D8nnMfunur3X37iSPPGqs49NyWk/PsJzW0jM3d/eB\nYfG2JGcMj80zy2c9/cKSExqy0T27ux8YHv97kmfPMPbpSb7T3QeH5b1JTj+WxbEhraVnTk/yjanl\nR/fGnw+n3/+uP/o3pcf6/Y/2GeaQ/8pkTlnLWDaf9fRMkjy/qr5YVf9QVecf72JZuPXME+aY5bTe\n3/spVbWrqm6rKm+QL4dZe+ZXknzqKMdy4ltPvyTmmKW2ZdEFQFV9NskPrbDpuumF7u6q8nl6jnfP\nXNHd+6rqyUk+nuSNST58dJUC5IEkZ3b3/qo6N8nfVtWPdvd/L7owYNM4a3jt8oIkn6uqf+ruryy6\nKDaGqnpDJh9Ffvmia2HjW6VfzDFLTGjIwnX3Rattq6pvVtVzuvuBqnpOkm/N8NT7kzy1qrYMZ32c\nkWTfOstlAzgGPbMvyQVTy2ckuWV47n3D14eq6i8zOZ1faLi57EvyvKnlleaGw/vsraotSZ6SyZyy\nlrFsPkfdMz25ePTDSdLdd1bVV5K8MJPrSbE5rWeeWPX4xKa2rmPL1GuX+4drM78kiT/oN7c19UxV\nXZTJm+ov7+6Hp8Ze8KixtxyXKtko1tMv5pgl5+PJbHQ7kxy+o9f2JJ9Y68DhD7Wbkxy+w9xM4zlh\nraVnPpPklVV1Wk3urvzKJJ+pqi1V9YwkqaqTkrw6yT/PoWbm644kZ9fk7upPSPL6TPpm2nQfXZ7k\nc8OcsjPJ62typ9znJzk7yefnVDeLc9Q9U1XPHC5AnuEd+rOT3D+nulmMtfTLalY8Ph2nOtk4jrpn\nhl45eXj8jCQvTXLvkUexCTxmz1TVS5K8L8ml3T39Jrp5Zvkcdb+YYxAastFdn+TiqrovyUXDcqpq\nW1V94PBOVXVrkhsyufD83qq6ZNh0TZKrqmpPJteW+uBcq2cRHrNnuvvBJO/I5AB6R5K3D+tOziQ8\n3J3krkzegfvT+f8IHE/Dmce/mckL5C8l+Wh331NVb6+qS4fdPpjk6cPccVWSa4ex9yT5aCYvlj6d\n5DfcOXnzW0/PJHlZkt1VdVcmN0h58zDfsEmtpV+q6ieram+SX0jyvqq6Zxi72vGJTWw9PZPkh5Ps\nqqq7M3mz/PrpO6KyOa3xuPSuJE9KcsNwre6dw1jzzJJZT7/EHLP0anLiBAAAAADAhDMNAQAAAIAR\noSEAAAAAMCI0BAAAAABGhIYAAAAAwIjQEAAAAAAYERoCAPCYquq3q+pLVbVjxnFbq+qXjnEtv19V\n36iq7x7L5wUA4P8JDQEAWIu3JLm4u6+YcdzWJDOHhlX1+CNs/rsk5836nAAArJ3QEACAI6qq9yZ5\nQZJPVdV1VfVnVfX5qvpiVV027LO1qm6tqi8M/356GH59kvOr6q6qemtV/XJVvWfquT9ZVRcMj79b\nVX9QVXcn+amqesPwfe6qqvcdDhK7+7bufmCe/wcAAMtGaAgAwBF195uT/FuSVyQ5Ncnnuvu8Yfld\nVXVqkm9lcibiTyR5XZJ3D8OvTXJrd7+4u//wMb7VqUlu7+4XJdk/PM9Lu/vFSQ4lmfUsRwAAjtKW\nRRcAAMAJ5ZVJLq2qq4flU5KcmUmo+J6qOhzwvfAonvtQko8Pjy9Mcm6SO6oqSX4gk2ASAIA5EBoC\nADCLSvLz3f3l0cqq30vyzSQvyuTTLN9fZfzBjD/tcsrU4+9396Gp7/Oh7n7bsSgaAIDZ+HgyAACz\n+EyS36rh9L+qesmw/ilJHujuR5K8McnhG5k8lOTJU+O/luTFVfW4qnpeVr+hyU1JLq+qZw3f52lV\nddYx/UkAAFiV0BAAgFm8I8lJSXZX1T3DcpL8cZLtw01MzknyvWH97iSHquruqnprkn9M8tUk92Zy\n3cMvrPRNuvveJL+T5O+raneSG5M8J0mq6p1VtTfJE6tq73CWIwAAx1B196JrAAAAAAA2EGcaAgAA\nAAAjQkMAAAAAYERoCAAAAACMCA0BAAAAgBGhIQAAAAAwIjQEAAAAAEaEhgAAAADAiNAQAAAAABj5\nPy4vgOvUNdNyAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 1584x1008 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "OpYEd8zAvDEF"
},
"source": [
"## Zadanie 7.\n",
"*ZADANIE: W zbiorach MNIST, FMNIST, CIFAR-10 . Do dalszych eksperymentów wybraćilość przykładów nie większy niż M=2xN !!!(N- ilość cech).*\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "3HDsgMNBvDEc"
},
"source": [
"### a. Najmniej informatywne piksele\n",
"\n",
"Znaleźć NAJMNIEJ INFORMATYWNE cechy (piksele). Zobrazować je na rysunku, wielkością odpowiadającemu klasyfikowanym obrazkom.\n"
]
},
{
"cell_type": "code",
"metadata": {
"id": "xPkxIJj-goc_",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "3cR4f-38vDEp"
},
"source": [
"### b. Klasyfikacja k-nn\n",
"\n",
"Dokonać klasyfikacji k-nn na pełnym zbiorze i zbiorze bez m najmniej informatywnych cech."
]
},
{
"cell_type": "code",
"metadata": {
"id": "fK7bGzMhgo1I",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "HnUkIWBxvDEy"
},
"source": [
"### c. Transformacja PCA\n",
"\n",
"Przetransformować zbiory przy pomocy PCA z N-D do N-D. Jak wyglądają(obrazki) wektory własne odpowiadające największym wartościom własnym. Sprawdzić, czy poprawił się wynik klasyfikacji. Dokonać wizualizacji 2-D przy pomocy PCA."
]
},
{
"cell_type": "code",
"metadata": {
"id": "U-M0PpPkgpLF",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "WKYwKpjMvDFH"
},
"source": [
"### d. Redukcja wymiaru\n",
"\n",
"Usunąć m najmniej informatywnych cech PCA. Jak wygląda wynik klasyfikacji."
]
},
{
"cell_type": "code",
"metadata": {
"id": "ImMwRvAkgphS",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "V_bYc6EovDFN"
},
"source": [
"### e. Wybór najlepszych cech\n",
"Wybrac m NAJLEPSZYCH cech PCA. Jak wygląda teraz wynik klasyfikacji.\n",
"Wartość m w przypadku wyboru najgorszych cech ma być duże (dla N=784 jakieś m=500), w przypadku wyboru najlepszych małe (m=10-20)"
]
},
{
"cell_type": "code",
"metadata": {
"id": "ZxiXe1Zmgp5q",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "zgubQcPvfoIv",
"colab_type": "text"
},
"source": [
"### f. PCA z Imgaug\n",
"Dokonać klasyfikacji z PCA i bez PCA (na pełnym zbiorze cech i zadanym małym M), ale zwiększając ilość przykładów przy pomocy augmentacji (imgaug)."
]
},
{
"cell_type": "code",
"metadata": {
"id": "HMqCwza6gqdS",
"colab_type": "code",
"colab": {}
},
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "Kszk5trzf68i",
"colab_type": "text"
},
"source": [
" ### h.Wnioski\n",
" (co lepsze augmentacja czy inżynieria cech?)"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "C7KzgQo2gq2G",
"colab_type": "text"
},
"source": [
""
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment