Last active
April 6, 2021 21:05
-
-
Save venglov/64a24a3eb0f7a4d8540ceb1d90d122ff to your computer and use it in GitHub Desktop.
Lab2_IOwADC.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"nbformat": 4, | |
"nbformat_minor": 0, | |
"metadata": { | |
"colab": { | |
"name": "Lab2_IOwADC.ipynb", | |
"provenance": [], | |
"collapsed_sections": [ | |
"rqzv-_4bpp3M", | |
"Zp3uNj4bpvhc", | |
"uOy_aCC0mZQ_", | |
"QNx8Z_RLm8t7", | |
"83aOL-0Nn47X", | |
"EnaQFodEnPoP", | |
"8Ty4qN-JnOuW", | |
"y_xECRLJnYvZ", | |
"J02GDEMep8zQ", | |
"DIextHZ1oUTB", | |
"WJ055yVBofDI", | |
"fdLSAXMFoqTJ", | |
"Jn92L_z5qBgd", | |
"OMJuhDdNo3R5", | |
"-EGIavJUpDVH", | |
"zJj2pEwGpOy4" | |
], | |
"authorship_tag": "ABX9TyMq+jST9R78wbcql2x4feBa", | |
"include_colab_link": true | |
}, | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3" | |
}, | |
"language_info": { | |
"name": "python" | |
}, | |
"accelerator": "GPU" | |
}, | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "view-in-github", | |
"colab_type": "text" | |
}, | |
"source": [ | |
"<a href=\"https://colab.research.google.com/gist/VVlovsky/64a24a3eb0f7a4d8540ceb1d90d122ff/lab2_iowadc.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "rqzv-_4bpp3M" | |
}, | |
"source": [ | |
"# Zadanie 1" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "QIoAwbeE08Hb" | |
}, | |
"source": [ | |
"import cv2\n", | |
"import numpy as np\n", | |
"import matplotlib.pyplot as plt\n", | |
"import seaborn as sns\n", | |
"from sklearn import svm\n", | |
"from sklearn.utils import shuffle\n", | |
"from sklearn.model_selection import GridSearchCV, StratifiedKFold, KFold\n", | |
"from sklearn.metrics import classification_report, confusion_matrix, accuracy_score\n", | |
"from sklearn.ensemble import RandomForestClassifier\n", | |
"from keras import models\n", | |
"from keras import layers\n", | |
"from keras.utils import to_categorical\n", | |
"from copy import copy\n", | |
"\n" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "9XLPOGusA0bg" | |
}, | |
"source": [ | |
"def cross_wrapper(func):\n", | |
" def func_wrapper(x_train, y_train, x_test, y_test, *args, **kwargs):\n", | |
" acc_arr = []\n", | |
" x_full = np.concatenate((x_train, x_test), axis=0)\n", | |
" y_full = np.concatenate((y_train, y_test), axis=0)\n", | |
" x_full, y_full = shuffle(x_full, y_full, random_state=0)\n", | |
" kf = KFold(n_splits=7)\n", | |
" fig, ax = plt.subplots(figsize=(9,9))\n", | |
" for train_index, test_index in kf.split(x_full):\n", | |
" x_train, x_test = x_full[train_index], x_full[test_index]\n", | |
" y_train, y_test = y_full[train_index], y_full[test_index]\n", | |
" acc_arr.append(func(x_train, y_train, x_test, y_test, *args, **kwargs))\n", | |
" plt.show()\n", | |
" print(f'MEAN ACC: {np.array(acc_arr).mean()}')\n", | |
" return func_wrapper\n", | |
"\n", | |
"def evaluate(y_test, y_pred):\n", | |
" acc = accuracy_score(y_test, y_pred)\n", | |
" print(f'Acc: {acc}')\n", | |
" cm = confusion_matrix(y_test, y_pred)\n", | |
" # print(f'Confusion matrix \\n{cm}')\n", | |
" plt.close(\"all\")\n", | |
" fig, ax = plt.subplots(figsize=(9,9))\n", | |
" sns.heatmap(cm, annot=True, annot_kws={\"size\": 8})\n", | |
" return acc\n", | |
"\n", | |
"@cross_wrapper\n", | |
"def svm_model(x_train, y_train, x_test, y_test):\n", | |
"\n", | |
" # parameters = {'kernel':('linear', 'rbf'), 'C': np.linspace(start = 0.001, stop = 2, num = 200)}\n", | |
" parameters = {'kernel':('linear', 'rbf'), 'C': [0.86, 1]}\n", | |
"\n", | |
" svc = svm.SVC()\n", | |
" clf = GridSearchCV(svc, parameters, scoring='accuracy', cv=StratifiedKFold())\n", | |
" clf.fit(x_train, y_train)\n", | |
" params = clf.best_params_\n", | |
" my_svc = clf.best_estimator_\n", | |
" print(\"Chosing params: \", params)\n", | |
"\n", | |
" # model = svm.SVC(C=15.5,gamma=0.7)\n", | |
" # model.fit(x_train, y_train)\n", | |
"\n", | |
" y_pred = clf.predict(x_test)\n", | |
" return evaluate(y_test, y_pred)\n", | |
"\n" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "CB0MMMKGr82u" | |
}, | |
"source": [ | |
"@cross_wrapper\n", | |
"def random_forest(x_train, y_train, x_test, y_test):\n", | |
"\n", | |
" model = RandomForestClassifier(max_depth=15, n_estimators=100, max_features=60)\n", | |
" model.fit(x_train, y_train)\n", | |
" y_pred = model.predict(x_test)\n", | |
"\n", | |
" return evaluate(y_test, y_pred)\n" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "LW-SmU8gGsiR" | |
}, | |
"source": [ | |
"# @cross_wrapper\n", | |
"def ann(x_train, y_train, x_test, y_test, input_shape=81, from_hog=True):\n", | |
" network = models.Sequential()\n", | |
" network.add(layers.Dense(512, activation='relu', input_shape=(input_shape,)))\n", | |
" network.add(layers.Dense(10, activation='softmax'))\n", | |
"\n", | |
" network.compile(optimizer='rmsprop',\n", | |
" loss='categorical_crossentropy',\n", | |
" metrics=['accuracy'])\n", | |
" \n", | |
" if from_hog:\n", | |
"\n", | |
" nn_x_train = np.array(x_train).reshape((60000, 81))\n", | |
" nn_x_test = np.array(x_test).reshape((10000, 81))\n", | |
"\n", | |
" else:\n", | |
"\n", | |
" nn_x_train = x_train\n", | |
" nn_x_test = x_test\n", | |
" nn_x_train = nn_x_train.astype('float32') / 255\n", | |
" nn_x_test = nn_x_test.astype('float32') / 255\n", | |
"\n", | |
"\n", | |
"\n", | |
"\n", | |
" encoded_y_train = to_categorical(train_labels)\n", | |
" encoded_y_test = to_categorical(test_labels)\n", | |
"\n", | |
" network.fit(nn_x_train, encoded_y_train, epochs=12, batch_size=128)\n", | |
"\n", | |
" pred_prob_y = network.predict(nn_x_test)\n", | |
" y_pred = np.argmax(pred_prob_y,-1)\n", | |
"\n", | |
" return evaluate(y_test, y_pred)\n" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "_6fN7TQe-nIZ" | |
}, | |
"source": [ | |
"SZ=28\n", | |
"affine_flags = cv2.WARP_INVERSE_MAP|cv2.INTER_LINEAR\n", | |
"\n", | |
"\n", | |
"def deskew(img):\n", | |
" m = cv2.moments(img)\n", | |
" if abs(m['mu02']) < 1e-2:\n", | |
" return img.copy()\n", | |
" skew = m['mu11']/m['mu02']\n", | |
" M = np.float32([[1, skew, -0.5*SZ*skew], [0, 1, 0]])\n", | |
" img = cv2.warpAffine(img,M,(SZ, SZ),flags=affine_flags)\n", | |
" return img\n", | |
"\n", | |
"\n", | |
"def grid_display(list_of_images, list_of_titles=[], no_of_columns=None, figsize=None):\n", | |
" if figsize is None:\n", | |
" figsize = (len(list_of_images) * 10, len(list_of_images) * 10)\n", | |
"\n", | |
" if no_of_columns is None:\n", | |
" no_of_columns = len(list_of_images)\n", | |
"\n", | |
" fig = plt.figure(figsize=figsize)\n", | |
" column = 0\n", | |
" for i in range(len(list_of_images)):\n", | |
" column += 1\n", | |
" if column == no_of_columns+1:\n", | |
" fig = plt.figure(figsize=figsize)\n", | |
" column = 1\n", | |
" fig.add_subplot(1, no_of_columns, column)\n", | |
" plt.imshow(list_of_images[i], 'gray')\n", | |
" plt.axis('off')\n", | |
" if len(list_of_titles) >= len(list_of_images):\n", | |
" plt.title(list_of_titles[i])\n", | |
"\n", | |
"\n", | |
"def openCVHOG(im):\n", | |
" winSize = (20,20)\n", | |
" blockSize = (10,10)\n", | |
" blockStride = (5,5)\n", | |
" cellSize = (10,10)\n", | |
" nbins = 9\n", | |
" derivAperture = 1\n", | |
" winSigma = -1.\n", | |
" histogramNormType = 0\n", | |
" L2HysThreshold = 0.2\n", | |
" gammaCorrection = 1\n", | |
" nlevels = 64\n", | |
" signedGradients = True\n", | |
"\n", | |
" hog = cv2.HOGDescriptor(winSize,blockSize,blockStride,cellSize,nbins,derivAperture,winSigma,histogramNormType,L2HysThreshold,gammaCorrection,nlevels, signedGradients)\n", | |
" descriptor = np.ravel(hog.compute(im))\n", | |
" \n", | |
" return descriptor" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "Dc19mH2kAFLs", | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"outputId": "f0d372b2-f95d-46e2-e6da-96b62004bede" | |
}, | |
"source": [ | |
"from keras.datasets import mnist\n", | |
"\n", | |
"(train_images, train_labels), (test_images, test_labels) = mnist.load_data()\n", | |
"train_raw = train_images.reshape(len(train_images), 28 * 28)\n", | |
"test_raw = test_images.reshape(len(test_images), 28 * 28)\n" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz\n", | |
"11493376/11490434 [==============================] - 0s 0us/step\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "huh2nqKqLvRU" | |
}, | |
"source": [ | |
"# Zadanie 2" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "Zp3uNj4bpvhc" | |
}, | |
"source": [ | |
"## Data Preprocessing" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "JOxMNa_aAHt5" | |
}, | |
"source": [ | |
"\n", | |
"train_deskewed = np.float32([deskew(im) for im in train_raw])\n", | |
"test_deskewed = np.float32([deskew(im) for im in test_raw])\n", | |
"train_deskewed = np.asarray(train_deskewed).reshape(-1,28*28)\n", | |
"test_deskewed = np.asarray(test_deskewed).reshape(-1,28*28)" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "l3qapd-1ARkM" | |
}, | |
"source": [ | |
"hogdata_train = np.float32([openCVHOG(im) for im in train_images]).reshape(-1,81)\n", | |
"hogdata_test = np.float32([openCVHOG(im) for im in test_images]).reshape(-1,81)\n", | |
"\n", | |
"hogdata_train_deskewed = np.float32([openCVHOG(deskew(im)) for im in train_images]).reshape(-1,81)\n", | |
"hogdata_test_deskewed = np.float32([openCVHOG(deskew(im)) for im in test_images]).reshape(-1,81)" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "Or9lGVqhAeAi" | |
}, | |
"source": [ | |
"from collections import Counter\n", | |
"hogdata_train_deskewed_short = hogdata_train_deskewed[:600]\n", | |
"train_labels_short = train_labels[:600]\n", | |
"hogdata_train_short = hogdata_train[:600]" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "uOy_aCC0mZQ_" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->HOG->SVM\n", | |
"\n", | |
"Acc = 92%\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 807 | |
}, | |
"id": "Fhzz3mlqDzcq", | |
"outputId": "116139de-cef6-4240-f686-b91bcb67b478" | |
}, | |
"source": [ | |
"svm_model(hogdata_train_short, train_labels_short, hogdata_test[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.99\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.95\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.86\n", | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.9\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.92\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.9\n", | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.92\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.92\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "QNx8Z_RLm8t7" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew->HOG->SVM\n", | |
"\n", | |
"Acc = 95%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 811 | |
}, | |
"id": "t6SsnvXnF_kB", | |
"outputId": "94631bd7-e590-4197-cb68-2d3c0c784e3d" | |
}, | |
"source": [ | |
"svm_model(hogdata_train_deskewed_short, train_labels_short, hogdata_test_deskewed[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.97\n", | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.98\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.94\n", | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.94\n", | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.93\n", | |
"Chosing params: {'C': 1, 'kernel': 'linear'}\n", | |
"Acc: 0.94\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.95\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.95\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "83aOL-0Nn47X" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->HOG->Random Forest\n", | |
"\n", | |
"Acc = 87%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 685 | |
}, | |
"id": "hVnvIYA9GPZb", | |
"outputId": "e6d0db71-4931-469d-c7de-ffca08206bf5" | |
}, | |
"source": [ | |
"random_forest(hogdata_train_short, train_labels_short, hogdata_test[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Acc: 0.9\n", | |
"Acc: 0.9\n", | |
"Acc: 0.85\n", | |
"Acc: 0.89\n", | |
"Acc: 0.86\n", | |
"Acc: 0.85\n", | |
"Acc: 0.89\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.8771428571428571\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "EnaQFodEnPoP" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew->HOG->Random Forest\n", | |
"\n", | |
"Acc = 90%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 685 | |
}, | |
"id": "vdQs_3LIGPoz", | |
"outputId": "678fbb84-7f86-43cf-fdc6-6b688be7974a" | |
}, | |
"source": [ | |
"random_forest(hogdata_train_deskewed_short, train_labels_short, hogdata_test_deskewed[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Acc: 0.94\n", | |
"Acc: 0.91\n", | |
"Acc: 0.91\n", | |
"Acc: 0.83\n", | |
"Acc: 0.9\n", | |
"Acc: 0.93\n", | |
"Acc: 0.93\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.9071428571428571\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "8Ty4qN-JnOuW" | |
}, | |
"source": [ | |
" ## Obrazy oryginalne->HOG->ANN\n", | |
"\n", | |
" Acc = 97.4%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1000 | |
}, | |
"id": "kCDMjk7hGtkX", | |
"outputId": "99267d61-2996-4fb1-fcd3-46bb7384de86" | |
}, | |
"source": [ | |
"ann(hogdata_train, train_labels, hogdata_test_deskewed, test_labels)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Epoch 1/12\n", | |
"469/469 [==============================] - 4s 2ms/step - loss: 0.7165 - accuracy: 0.8356\n", | |
"Epoch 2/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1929 - accuracy: 0.9401\n", | |
"Epoch 3/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1574 - accuracy: 0.9503\n", | |
"Epoch 4/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1354 - accuracy: 0.9571\n", | |
"Epoch 5/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1297 - accuracy: 0.9595\n", | |
"Epoch 6/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1128 - accuracy: 0.9635\n", | |
"Epoch 7/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1080 - accuracy: 0.9663\n", | |
"Epoch 8/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1016 - accuracy: 0.9677\n", | |
"Epoch 9/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0961 - accuracy: 0.9696\n", | |
"Epoch 10/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0903 - accuracy: 0.9715\n", | |
"Epoch 11/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0894 - accuracy: 0.9729\n", | |
"Epoch 12/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0832 - accuracy: 0.9734\n", | |
"Acc: 0.9749\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"0.9749" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 16 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "y_xECRLJnYvZ" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew->HOG->ANN\n", | |
"\n", | |
"Acc = 97.7%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1000 | |
}, | |
"id": "ler5W8U2GtsZ", | |
"outputId": "d05339d4-c8db-43f0-c979-2a639ff9b5b3" | |
}, | |
"source": [ | |
"ann(hogdata_train_deskewed, train_labels, hogdata_test_deskewed, test_labels)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Epoch 1/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.6559 - accuracy: 0.8549\n", | |
"Epoch 2/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1328 - accuracy: 0.9597\n", | |
"Epoch 3/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.1082 - accuracy: 0.9665\n", | |
"Epoch 4/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0988 - accuracy: 0.9688\n", | |
"Epoch 5/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0907 - accuracy: 0.9718\n", | |
"Epoch 6/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0848 - accuracy: 0.9737\n", | |
"Epoch 7/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0857 - accuracy: 0.9731\n", | |
"Epoch 8/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0777 - accuracy: 0.9757\n", | |
"Epoch 9/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0705 - accuracy: 0.9776\n", | |
"Epoch 10/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0711 - accuracy: 0.9781\n", | |
"Epoch 11/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0666 - accuracy: 0.9785\n", | |
"Epoch 12/12\n", | |
"469/469 [==============================] - 1s 2ms/step - loss: 0.0640 - accuracy: 0.9801\n", | |
"Acc: 0.9772\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"0.9772" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 17 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "xlf8EM_cSQoD" | |
}, | |
"source": [ | |
"# Zadanie 3" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "J02GDEMep8zQ" | |
}, | |
"source": [ | |
"## Data Preprocessing" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "1XoZf0h2Q6vW" | |
}, | |
"source": [ | |
"train_x = np.array(list(map(lambda x: deskew(x), train_images))).reshape((60000, 28 * 28))\n", | |
"train_x = train_x.astype('float32') / 255\n", | |
"\n", | |
"test_x = np.array(list(map(lambda x: deskew(x), test_images))).reshape((10000, 28 * 28))\n", | |
"test_x = test_x.astype('float32') / 255" | |
], | |
"execution_count": null, | |
"outputs": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "DIextHZ1oUTB" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew-> ReshapeTo1D -> SVM\n", | |
"\n", | |
"Acc = 93%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"id": "uYuiMi18Rtsf", | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 807 | |
}, | |
"outputId": "0ba4ade5-3cda-4fb2-f873-189438c6a96c" | |
}, | |
"source": [ | |
" svm_model(train_x[:600], train_labels[:600], test_x[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Chosing params: {'C': 0.86, 'kernel': 'rbf'}\n", | |
"Acc: 0.94\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'rbf'}\n", | |
"Acc: 0.97\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.89\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.91\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.94\n", | |
"Chosing params: {'C': 0.86, 'kernel': 'linear'}\n", | |
"Acc: 0.9\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.93\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.9257142857142858\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "WJ055yVBofDI" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew-> ReshapeTo1D -> Random Forest\n", | |
"\n", | |
"Acc = 92%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 685 | |
}, | |
"id": "1CJe4Q5_cm0A", | |
"outputId": "20441588-bf95-4280-a388-2db5c269c601" | |
}, | |
"source": [ | |
" random_forest(train_x[:600], train_labels[:600], test_x[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Acc: 0.95\n", | |
"Acc: 0.96\n", | |
"Acc: 0.9\n", | |
"Acc: 0.91\n", | |
"Acc: 0.94\n", | |
"Acc: 0.92\n", | |
"Acc: 0.9\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.9257142857142858\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "fdLSAXMFoqTJ" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew-> ReshapeTo1D -> ANN\n", | |
"\n", | |
"Acc = 94%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1000 | |
}, | |
"id": "wCls7rDbcwZk", | |
"outputId": "9e57c394-4da1-44cb-b238-3d6634cce5ad" | |
}, | |
"source": [ | |
"ann(train_x, train_labels, test_x, test_labels, input_shape=28*28, from_hog=False)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Epoch 1/12\n", | |
"469/469 [==============================] - 2s 3ms/step - loss: 1.8593 - accuracy: 0.5626\n", | |
"Epoch 2/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.5540 - accuracy: 0.8694\n", | |
"Epoch 3/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.3301 - accuracy: 0.9131\n", | |
"Epoch 4/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.2681 - accuracy: 0.9274\n", | |
"Epoch 5/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.2418 - accuracy: 0.9306\n", | |
"Epoch 6/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.2252 - accuracy: 0.9358\n", | |
"Epoch 7/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.2084 - accuracy: 0.9404\n", | |
"Epoch 8/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.2048 - accuracy: 0.9412\n", | |
"Epoch 9/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.1953 - accuracy: 0.9436\n", | |
"Epoch 10/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.1882 - accuracy: 0.9444\n", | |
"Epoch 11/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.1803 - accuracy: 0.9475\n", | |
"Epoch 12/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 0.1801 - accuracy: 0.9481\n", | |
"Acc: 0.9491\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"0.9491" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 21 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAgIAAAIICAYAAAAc3oaqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3xUdb7/8dc3k0woSQhSYkAFXBXpYEDQFcEACUhRqSqWRYR171p+u3stu9694jZ1uVhYXHdRUbGgVCmhBBJAViUUAcVFpUhHWkgBkkmZ8/sjQyCkYcjknOx5P3nMg5lzZs55z5yS73zO95wxlmUhIiIi7hRidwARERGxjxoCIiIiLqaGgIiIiIupISAiIuJiagiIiIi4mBoCIiIiLhYa7BnkLJvi6PMTIwc/Z3cEcTljd4BKOHoDFlcoyDsQ9M0k/9iuoK/qYY2vdOTmroqAiIiIiwW9IiAiIuJ4/kK7E9hGFQEREREXU0VARETE8tudwDaqCIiIiLiYKgIiIiJ+VQRERETEhVQREBER17PUR0BERETcSBUBERER9REQERERN1JFQERExMV9BNQQEBER0SWGRURExI1UERAREXHxoQFVBERERFxMFQERERGdPigiIiJupIqAiIi4ni4xXIMKCv08+fZSHpw8l5fmf1pinC+/gAkfpDDub/N4fvbqKk0/af233PfiLB7550JO5uRxKjeP8VPm8cArc3jknws5lZtXHW+jTJMmTmBV6lxenPRs0OZxMa7v1oU1q+ezeuU8Jk2cYHecUpyeD5y9jBMSerNi+SxWLJ/F3j1fMGRIot2RyvTYo+NYvXKe3THK5PR10On5wNnbiJStxhsCqV/u5JpmjXnj0aH48gv49sDR4nEfrN7CgLhreP2RO3hqeK9KpzU/bRvrt+8vfpxfWMjsT79i2mPDGNStNbM/20qoJ4Q/35vAtMeG0btDKxakbQvK++rSuT31I+rRO34oXq+XrnGdgjKfi7Fn7376Joyk1y130KRpI9q3v9buSCU4PZ/Tl3Fy8ir69htB334j2LfvACkpa+yOVIrX66VTp3Z2xyiX09dBp+dz+jZSIb8/+DeHqrQhYIy51hjzpDFmcuD2pDGmTVVneOBYFlc3bwRA6+aN2bLrh+JxG3YcYNXW7xk7eS6rvtoFwN6jGTz06seMfWUOry9bX+G09x7J5KpmjQn1hNC99eV8+f0hwsNCadKgPgChHg8hIaaq0SvUvXscKwI73pTUNfToEReU+VyMw4eP4vP5AMjPL6Cw0FkX0HB6vtqwjAFatbqCw0eOcerUabujlPLAmLt4991Zdscol9PXQafnqy3biJRUYUPAGPMk8CFggHWBmwFmGGOeqsoMW8REs3HHQQDWbz9Ado6veNz+Y5n0bNuSKT8fzNRl6yko9DNl0edMuLsPbz42jJ2HjnP4xMlyp52d4yOiThgAEXXCyc45exjgtC+POZ9uZUBc66rErlR0dBTZWdkAZGVmEx0dFZT5VIcOHdrQpHEjtm3bbneUMjk1X21ZxrffPoD5Hy+xO0YpoaGh9Op1AytXfVr5k23m1HXwDKfmqy3bSJksf/BvDlVZZ8GxQDvLsvLPHWiMeRH4Gni+rBcZY8YD4wH+9uidjL31p8XjerVvxbrv9jN+yjyaXRJFo8h6xeMi6njpelVzvGEermjcgOPZp9l9JIOn310OFP2hP5J5ktVbv2fZpu0czzqFNyyUyLrhjO7ViSuaRnMytyjqqdw8Iut6AbAsi2feT+HhQT2Iqhf+Yz6fC5aZmUVkVCQAkVERZGRkBWU+F6thw2gmv/wn7rz7IbujlMnJ+WrLMh40sB8jRo6zO0Yp94wexowPndk34FxOXgfB2flqyzYiJVV2aMAPNCtjeGxgXJksy5pqWVZXy7K6ntsIAPCEhPDU8F5MffgOQkIMN7S5onhcp1axfHfwGIV+PwfTs7kkoi4tm0bz/P2JvPnoUGY8Pop2V8QwsmcH3nx0KGP6deXxoT1589GhxHf6CS2aRrPz0HEK/X7WfruPDi0vBeDvi9PofGUs119z+QV+LD/e2rUbib/lJgD6xPckLe2LoM2rqjweD9PfnswTT/6Rw4ePVv6CGub0fLVhGcfENCEvL5/09BN2Rymldeuf8ND4+0ha+B5t217DL/9rjN2RSnH6Ouj0fLVhGymXvzD4N4eqrCLw/4AUY8x2YF9g2BXAVcDDVZnh4YyT/G56MiHGMOj6a4mJjuD52at5angvxvSN4/fvLedUbh5Db2xHWKiHhwfdwIQPVpBX4CfUE8KksQOoF+4tc9phHg9Db2jHmJfnEFUvnOfuT+RI5kneWrGRTq1iSf1yF4ldrmZkzw5ViV6hTZu3kpuby6rUuWze8jXrN2yu9nlcrOHDB9G1a2eef+5pAJ7+n+dZm7bR5lRnOT1fbVjGQwYnsnDhMrtjlOm3v/tL8f3VK+fx6t/fsjFN2Zy+Djo9X23YRqQ0Y1lWxU8wJgS4HmgeGHQAWG9Z1gU1b3KWTal4BjaLHPyc3RHE5YLTfbX6OHoDFlcoyDsQ9M3Et21l0Ff18Da3OHJzr/SCQlbRVRbW1kAWERERqWG6sqCIiIiDz/MPNv3WgIiIiIupIiAiIuLg8/yDTRUBERERF1NFQERExMV9BNQQEBER17vAM+L/I+nQgIiIiIupIiAiIqLOgiIiIuJGqgiIiIi4uLOgKgIiIiIupoqAiIiI+giIiIiIG6kiICIi4td1BERERMSF1BAQERGx/MG/VcIYM80Yc8QYs/WcYZcYY5YbY7YH/m8YGG6MMZONMTuMMV8aY6475zX3B56/3Rhzf2XzVUNARETEGd4G+p837CkgxbKsq4GUwGOAAcDVgdt44DUoajgAzwDdgeuBZ840HsqjhoCIiIjfH/xbJSzL+gRIP2/wbcA7gfvvALefM3y6VWQtEG2MiQUSgeWWZaVblnUCWE7pxkUJagiIiIg4V4xlWYcC938AYgL3mwP7znne/sCw8oaXK+hnDUQOfi7Ys7goOQfX2B2hQnWb9bQ7ggSZZXcACSpPiLO/bxW6+Ip6JdTAdQSMMeMpKuOfMdWyrKkX+nrLsixjTLXvMnT6oIiISA0I/NG/4D/8AYeNMbGWZR0KlP6PBIYfAC4/53mXBYYdAHqfN3xVRTNwdlNVRESkJjigj0A5FgBnev7fD8w/Z/h9gbMHegCZgUMIy4AEY0zDQCfBhMCwcqkiICIi4gDGmBkUfZtvbIzZT1Hv/+eBmcaYscAeYGTg6YuBW4EdwGlgDIBlWenGmD8C6wPP+4NlWed3QCxBDQEREREH9JWwLOuuckb1KeO5FvDLcqYzDZh2ofPVoQEREREXU0VARERcz7Lc+1sDagiIiIg44NCAXXRoQERExMVUERAREamBCwo5lSoCIiIiLqaKgIiIiPoIiIiIiBupIiAiIqI+AiIiIuJGqgiIiIioj4CIiIi4kSoCIiIi6iMgIiIibqSKgIiIiPoIiIiIiBvVqobApIkTWJU6lxcnPRu0eRw5epwRYx7muluGUFBQ8mcp//nODG4ZMprJU9+p8vSnvT+be3/xG56c8AL5BQWcyMhk9M9/zc9++TgPPzGBXJ/vYt9Cudq1a82a1fNZlTqXN15/MWjzqSqn54OaWQcvRmxsDOvSlnIyaycej8fuOCXUhuXrxM8vNjaGtZ8vJjNjOx6PhxYtLmPvni9ITp5J0qL37Y5XitO3kXL5/cG/OVStaQh06dye+hH16B0/FK/XS9e4TkGZT4OoSN545Tk6tru21Lhhg/vzwjNPXPC0Xn3zPQ4cOlz8+PiJDNZ/sYV3X5vENVe1IvWTz4mKjODd1/6Pt1+dSNtrr2b1p+uq5X2U5dtvd9Kz1230jh8KELTPsKqcnq+m1sGLkZ6eQULiKNLSvrA7SilOX77gzM8vPT2D/gPuIm3dpuJhKalrSEgYycBBo21MVlpt2EaktFrTEOjePY4VKWuAoo2gR4+4oMwnPNxLg6jIMsc1vqQhGFNi2Jdff8PPHn6Cex76DfOSkiuc9tfbvqPbdR0B6NG1C1u2bsPj8RASUrQY/IWFtLisWTW8i7IVFBQU3/f58ti3/2DQ5lUVTs9XU+vgxfD5fGRkZNodo0xOX77gzM+vrEy9br6RlJQ5PPrIgzalKltt2EbKZfmDf3OoKjcEjDFjqjNIZaKjo8jOygYgKzOb6Oiompx9uaa88S5TXniGd1/7P5KSV5Kfn1/uc7NPnqJ+vXoAREbUJ+vkSQC++ve3jHzgUdK+2ELzZpcGNe+gQf3YvCmFmJjGHD9+Iqjzqgon53PqOlibOHn51haHDh2hfYebSUgYSXz8TbRvX7p6aRdtI7XTxVQEyj0AZIwZb4zZYIzZ4PefuohZnJWZmUVk4Jt6ZFQEGRlZ1TLdi/Xtju95+MlnGfPIkxw7foL0jEymvPEuP3v4CeYvXs7j//scP3v4CTZv3UZERH1OnT4NwMlTp4mKiACgQ9vWzJw2mT4338i8RRVXFS7WokXL6dylD/v3H2LgwL5BnVdVODmfU9fB2sTJy7e2yMvL4/TpHAoLC1m8OIV2ZRzGtEut3kbUR6Bsxpgvy7l9BcSU9zrLsqZaltXVsqyuISH1qyXo2rUbib/lJgD6xPd0zDG8Ntf8hL9P/ANvT/krs96eQkyTxjz84L28PeWv3HZrPyb+4be8PeWvdG7fhvZtrmH9pq8AWLthEx3bXVuighBRvx7h4d6gZfV6z047O/skuTm5QZtXVTg9n1PXwdrC6cu3toiIOLtPveHGruzatdu+MOfRNlI7VXYdgRggETi/hmeAz4KSqBybNm8lNzeXValz2bzla9Zv2ByU+eQXFPCL3/ye73Z8z89//TQPjbmbL778mp/ffxdzFi7jo3mLyMzKJiv7JP/zm1/yy7H38PATE7AsiwZRkbz8l/8pd9qNGkbTtXN77v3Fb4iNacq9I2/nm+27mPTqGxgTQoOoSJ773/8OyvsCSEzsza8eGw/A9h3fk7x8ddDmVRVOz1dT6+DFCA0NJWnhe3Ts2JYlSR/wP79/nnXrN1X+whrg9OULzvz8QkNDWbhgOh07tCFp0Xus+Vcagwb2w+fL49NP17F+vXPWw9qwjZTLwcfwg81YllX+SGPeBN6yLOtfZYz7wLKsuyubQai3efkzcICcg2vsjlChus162h1BRC6CJ8TZfbILHVyyPqMg74Cp/FkXJ2f+X4P+t6rubU8E/X1URYUVAcuyxlYwrtJGgIiISK1QCxpEwaJLDIuIiLj40ICza1YiIiISVKoIiIiIuPjQgCoCIiIiLqaKgIiIiCoCIiIi4kaqCIiIiFRwTZ3/dKoIiIiIuJgqAiIiIuojICIiIm6kioCIiIgqAiIiIuJGqgiIiIjotwZERETEjVQREBERUR8BERERcSNVBERERHRlQREREXEjVQRERERc3Ecg6A2BEGOCPYuLUrdZT7sjVCh74W/tjlChBkOetztCred3eEnS2VswGIfvY4zjP0FxO1UEREREVBEQERFxMV1QSERERNxIFQEREXE9y+/svjrBpIqAiIiIi6kiICIi4uLOgqoIiIiIuJgqAiIiIjprQERERNxIFQERERGdNSAiIiJupIqAiIiIzhoQERERN1JFQERERBUBERERcSNVBERERCydNSAiIiIupIqAiIiI+giIiIiIG6kiICIioisLOldsbAxpa5eQlbkDj8cDwMSJz5CaModJk561OV1J13frwprV81m9ch6TJk4IyjwKCv08+fZSHpw8l5fmf1pinC+/gAkfpDDub/N4fvbqKk0/af233PfiLB7550JO5uRxKjeP8VPm8cArc3jknws5lZtXHW+jhPOXcVnL3E5Oz3eu2NgY1qUt5WTWTsdlA7jnnuEsW/oRK5bPolmzS+2OAzh/H9OtW2dWrpxLauoc/vrX/wXgV7/6Oampc3j77VcIDXXW97lJEyewKnUu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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "DPm5LjuOdnvo" | |
}, | |
"source": [ | |
"# Zadanie 4" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "Jn92L_z5qBgd" | |
}, | |
"source": [ | |
"## Data Preprocessing" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/" | |
}, | |
"id": "4LkmJV1Hdprl", | |
"outputId": "46d60691-6efe-480f-818c-a5f5cd97d217" | |
}, | |
"source": [ | |
"print(train_x.shape)\n", | |
"\n", | |
"train_x_sh = copy(train_x)\n", | |
"test_x_sh = copy(test_x)\n", | |
"\n", | |
"for x in train_x_sh:\n", | |
" np.random.shuffle(x)\n", | |
"\n", | |
"for x in test_x_sh:\n", | |
" np.random.shuffle(x)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"(60000, 784)\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "OMJuhDdNo3R5" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew-> ReshapeTo1D -> Shuffle -> SVM\n", | |
"\n", | |
"Acc = 23%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 811 | |
}, | |
"id": "AgO4yptzeK5i", | |
"outputId": "13568f7b-2c41-4636-9fe8-fc3302b53223" | |
}, | |
"source": [ | |
"svm_model(train_x_sh[:600], train_labels[:600], test_x_sh[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Chosing params: {'C': 0.86, 'kernel': 'rbf'}\n", | |
"Acc: 0.25\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.23\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.26\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.26\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.18\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.24\n", | |
"Chosing params: {'C': 1, 'kernel': 'rbf'}\n", | |
"Acc: 0.21\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.23285714285714285\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "-EGIavJUpDVH" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew-> ReshapeTo1D -> Shuffle -> Random Forest\n", | |
"\n", | |
"Acc = 17%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 685 | |
}, | |
"id": "mpPUeVbHedTL", | |
"outputId": "14877494-f164-438d-9b2b-ea12c593d2d3" | |
}, | |
"source": [ | |
"random_forest(train_x_sh[:600], train_labels[:600], test_x_sh[:100], test_labels[:100])" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Acc: 0.24\n", | |
"Acc: 0.18\n", | |
"Acc: 0.17\n", | |
"Acc: 0.17\n", | |
"Acc: 0.13\n", | |
"Acc: 0.17\n", | |
"Acc: 0.17\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
}, | |
{ | |
"output_type": "stream", | |
"text": [ | |
"MEAN ACC: 0.1757142857142857\n" | |
], | |
"name": "stdout" | |
} | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": { | |
"id": "zJj2pEwGpOy4" | |
}, | |
"source": [ | |
"## Obrazy oryginalne->Deskew-> ReshapeTo1D -> Shuffle -> ANN\n", | |
"\n", | |
"Acc = 22%" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"metadata": { | |
"colab": { | |
"base_uri": "https://localhost:8080/", | |
"height": 1000 | |
}, | |
"id": "UuHlslXxeo3C", | |
"outputId": "d6568caf-5f20-4f48-e7ea-2aa8b96ac3d9" | |
}, | |
"source": [ | |
" ann(train_x_sh, train_labels, test_x_sh, test_labels, input_shape=28*28, from_hog=False)" | |
], | |
"execution_count": null, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": [ | |
"Epoch 1/12\n", | |
"469/469 [==============================] - 2s 3ms/step - loss: 2.2394 - accuracy: 0.1860\n", | |
"Epoch 2/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0703 - accuracy: 0.2264\n", | |
"Epoch 3/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0595 - accuracy: 0.2301\n", | |
"Epoch 4/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0540 - accuracy: 0.2340\n", | |
"Epoch 5/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0562 - accuracy: 0.2328\n", | |
"Epoch 6/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0519 - accuracy: 0.2373\n", | |
"Epoch 7/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0510 - accuracy: 0.2391\n", | |
"Epoch 8/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0488 - accuracy: 0.2389\n", | |
"Epoch 9/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0457 - accuracy: 0.2442\n", | |
"Epoch 10/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0485 - accuracy: 0.2413\n", | |
"Epoch 11/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0434 - accuracy: 0.2481\n", | |
"Epoch 12/12\n", | |
"469/469 [==============================] - 1s 3ms/step - loss: 2.0413 - accuracy: 0.2512\n", | |
"Acc: 0.2237\n" | |
], | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"data": { | |
"text/plain": [ | |
"0.2237" | |
] | |
}, | |
"metadata": { | |
"tags": [] | |
}, | |
"execution_count": 25 | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAfwAAAIICAYAAACLuVyBAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3xT1fvA8c9p0jJaWmhpSxmyZLRAGWUPy4YyZG9kKigbZCOy90bUr/xEZCggGxkKMhQQUIYge8koo2V1l47k/v5ILKtNGQmp9Hm/Xnk1d53z3Nvce/Kcc5MoTdMQQgghxJvNwd4BCCGEEML2pMEXQggh0gFp8IUQQoh0QBp8IYQQIh2QBl8IIYRIB6TBF0IIIdIBva0rOJGvcZr+3F+523/ZOwSLAj2L2TsEi36/d87eIVgUb0iwdwipMqbxj8Zmy+Ri7xAs8sjgau8QLPJxymrvECw6GnbZ3iGkKjzqkrJ1HQl3L9v8RHTMXsDm+2GJZPhCCCFEOmDzDF8IIYRI84wGe0dgc5LhCyGEEOmAZPhCCCGEZrR3BDYnGb4QQgiRDkiGL4QQQhglwxdCCCHEG0AyfCGEEOmeJmP4QgghhHgTSIYvhBBCyBi+EEIIId4EkuELIYQQ6WAMXxp8IYQQQr5aVwghhBBvAsnwhRBCiHTQpS8ZvhBCCJEOSIYvhBBCyMfyhBBCCPEmkAxfCCFEupcevlrXLg1+9u5NcKtfmUuthiXNyz1zABnfzo3xYTz3v/+ZsE2/vnC5WZsE4tGpIYawKK71nwEa5F04CqXXYYyK5Vq/GRijY625K/j4eLN+3WJ8fQvh7lGUMmVKMGP6GIyakSOHTzBk6Dir1ufu7c6ExePJW+gt3i3aFKPh0Ys0S1YX+k3uh5u7K8f2/8WKz1a+cPmterakUt1KhN4IYcagWXj6ZGfI3CGgady5dZfp/WdgtGLXV9lypZg67ROMRiNHj5xg+LCJ3Lh1nBPHTwPQvt2HPHgQbrX6XoVOp2PJt/Px8vLkyJHjjBg5yd4hPaF8udLMmjkWo9HI4cPH+XjIWHuH9ISevTrT+N16zJ7xJf0GfgDA24XyM2TQWLZt2Wm3uHQ6HdO/GE92T3f+/us0cyd/wfJNCynk+zbNanbg2j/BVq3Pw9uDyd9OIF+hvAQVafzEOTxs9hDyFspD3MN4Nn+3hZ0bdr9w+bWb1aRJ53eJDItkYp8paJrGxEXj0Ol1xETFMKH3ZGKteB309SvMvPmTMBgNXL50lc8XLGLuvEfTvT8alnoh4rV47V36yklPRr/8yS671n8Wl9uOfK7GPlvLWjhXLP5ohl6HR4cgLrUezoP1u/BoXx8tMZHrA2Zxuc0IInYcJFvLWtbajST374dRP6gdh/44ZtqHazeoV78tNWu2wNPLg2LFilq1vsiwSIa1G86ZY2efWdZxQEeWzlrK0LbDn6uxf29gR7xzeydNZ/Vwo2Rlfwa1+JjLZ/6hcr3KREVEM7rLp3zccgi3r9+mfM1yVt2fa9eCaRjUnrq1W+Pp6UGxYkU4deocQfXbEVS/XZpp7AGaNqnPiROnqVuvNRkzZcS/hK+9Q3rC1WvB1K7bmsAazfD08qB4ceu+9l6Fk5MjJczHa9fOvTRt1ImmjToRHHyL3/YcsGtstRtU59ypC3Ru/hEZM2agYJEC9O48hO0/7rJJfRFhEXzcdiinj51JdvnEvlMZ2GrwczX29VrVpWQl/6RpnV5H446N6N9iEDvW/kLjjg1JTExkUr+pDGj5Mfu3/0791nWtti8AF85fpm7tVgTVbQtAxgwZnpguU6aEVeuzGaPR9g87S7XBV0oVVUoNU0rNNz+GKaVe+krn3rouD9YkcyJpGnlmDyTf16NxzOUJgFNeH/IvHU+BVVPw6tPaYrkZ8uUk9txVMBiJ2neczGWKosUlkHjngan4RAMYrH/A4+LiCAt71CiFhNwhLi4OgISERAwG636ZQ0JcAlHhUckuy1ckL237tGX6qmn4ljH9i4qWKsKMH6YzZ90s6rauY7HsQv6FOX7gBADH9h3DL8CXqPAoYiJjADAkGDBY+RiGhtwlLi4eeHS8ihR5m+07fmDc+KFWretV5c+fl79Pmi7Sx4+fomKlsnaO6Em2fu29ig6dWrFyxYYn5uXNl5s7ofeIjo6xU1QmefLl4tzpCwCcOXme0uX8uXfnvs3qs3QOa5rGiLlDmbR4PN65vADImS8n07+bytw1s+jYr73FsnPnz8U/Z//BaDByZO9R/AL8SIhL4H6oaX8SEwxP9ChYQ2JiYtLz+Ph4goNvpTgt7Mtig6+UGgasBBTwh/mhgBVKqeEvXJteh3PFEkSbG5XH3Zq4iEsthhL6v7X4jOoOQI4h7xE8bD6X24wgY+G3cMzhkWLROldnjFHmhikyGp2rc9Iyh8wZcW9fnwcvMUzwsooXL4pndnfOnr3w2ur0K+vHys9XMbn3FD4Y9T4AnQZ3Yky3sQxs/jE1m9ZE75jyKI6LmzMx5mMYHRmN82PH0N3bnTLVSnPktyM2ib1Y8aJk93Tn7NmLlPKvQd06rcmWzY0GDWvbpL6Xcf7CJd6pVgmA6oGVyermaueIkleihC+e2T04c+b1vfYs0ev1VKlann2/HXxifsPGddm6eYedonrkn4tXKVe5DAAVqpbF1TWL3WL5csJX9G06gBVfrOKjT3sC8P7QrswYPIsBLT8mX+F8ZPfJnuL2Lq4uRJvP4ajIaFweO4czZs5I444N+WWD9XsughrU4sAf2/D0ys79+2HPTP8naEbbP+wstTH87kAxTdMSHp+plJoNnAKmJreRUqoH0ANgtHsJWmbJC0C2ZjVS7K43mN/xxhw+jeOwzgBkKJCLPHMGAaYGXZ/Dgyy1y5O1UTX0ntnQ4uIxRERzd/Em4i7fxMEls2ldl8wYIqKTys49vT+3ZyzD+Ng8W8qWLStz506kQ4ePXkt9/wq+fIPrF68Dj25AKeCbn3HfjAXAzd0VNw83GrQPwr+iP965vSlbPYD4uAS+mbqY6IgYsucwXUwyuzgTbT5ejk6ODJ09mDnD5lk9OwDIls2N2bPH8d57vQGSuvF//HE7JUsWY+uWX6xe58vYvHkHNWpU5aefVnL1SjAhoXftHdIzsmXLyvy5E2nb/kN7h5KkddsmrF394zPz69WvQZeOfe0Q0ZN2/7yXStXKsXjNF9y4fpO7d+7ZLZbIsEgATv55ih4jTG/a8xTMw8j5pnFwF1cXPHNkp3LtitR4tzruntmIj0sgKiKKtYvWE3w5GGfzddA5izNRj13zhs0azKJpi5POa2vatnUn27buZPrMMdQPqsnmH7c/My3sL7UG3wjkBK4+Nd/HvCxZmqYtBBYCnMjXWPt3foaCucjkVwCPDvXJUPgtPDo34t6SzQA4uGTCGBVLhgK5khrruMs3uDnu/0zd8g4OoGnE/nWe+8u3ka1lLeKDQ4g+eNK8JzoyFn4LHBxwqVqKmGPnAPAe1IHoI6eT7VWwBZ1Ox7eL5zF8+ERCQu68ljr/dePyDdy93ImJjMZBpwPg0qlLTOg5kYexcej0OgyJBpbNXg6YxvC3r95BSHAIYBrDb9ypEav/t4bSVUtx5qip+3rA1H5sWvoj1y5cs3rMOp2Or7+Zw8iRkwkNuUvmzJl4+DAOo9FIpUplOXXy2XsV7MVoNDJw4GgAvvhiGjt2vL4eo+eh0+lY+u18hg6b8Npfe5YULJSfEiWK0qVbO4r4vs37PTqyacNPxCck8OCB/bM/o9HIxJEzARg/cyT7dh9MZQvbyeySmZioGPIUyE1UhCkJun7pOgvGfsn90Ps4ODigaRpnjp1l07LN1GtVl9vBt5OG4nR6HfmK5MPBwYGAqqWTzuGugztz8vApjv3+l9VjdnJyIj7eNCwXGRn1xE29kZFRxMY+tHqdNpEOvks/tQZ/ALBTKXUBuG6e9xbwNtDnRSu7PXVJ0vOCq6cRvnUfXr1bE/r5D7w1dzA6NxfQNII/+cK0/oxl5J7RHwcnPVqigasfTsEYk8KLJ9HA/ZXbKbh6KobwKK71n4neyx3PD1sQc/QsbvUqEbZ5L/eXb3vRsC3S6/X8uGkp/iV82bJ5OXv3HSIgoCSTJ48EYPToqRw6dNRq9en0OiYtnUgB3/xMWT6J5fO+p3i5Yqz4bCVLZy9jxILhZMjoxLI53wGwdPYyxi8eB0oRGRbJhJ4TUyw77F44fx/6m9lrZxF6M5T1izbgW8aXKkFV8MrtTbPuzdjwzQb2//S71fanefMGBJTxZ+JE0wjRmE+nM3vueKKjYrhy5ToTJ8yxWl2vKmfOHCz59jOMRiPLv1vDzZu37R3SE1q2bETZsqWYOmUUAKM+mcrBQ7YZgnkRE8bMTHq++afv+Xrhcjp1bcNPdrwz/3FeOTyZ+eUEjEYjG3/YSujtO8z5v8kEVChF3gJ5+HrBUnb99JvV6tPpdUxbNpmCvgWY8d1Uls5dTvFyxfnus+8Z9dlwsrhlQdM05oycD8DX0xczdNbHODo5Ykgw8GmPcTxM4TpoSDSwZcU25q2bTVR4FBP7TMbD24N2vdpw6shpqtavwu5Ne9i0bLPV9qd2nXfo3bcbAJcvXgFgy0/fJ03v2rnXanWJV6M0TbO8glIOQHkgl3nWDeBPTdOe6+3Q4xl+WlTutvXf8VpToGcxe4dg0e/3ztk7BIviDQmpr2RnxlTOQXvLlsnF3iFY5JEhbd5L8S8fp6z2DsGio2GX7R1CqsKjLilb1xF3ZrfNT8QMvjVsvh+WpPo5fM00GGy/Pi4hhBBCvDL5pj0hhBAiDXxO3tbku/SFEEKIdEAyfCGEECINfE7e1iTDF0IIIdIByfCFEEKIdDCGLw2+EEKIdO85P2n+nyZd+kIIIUQ6IA2+EEIIkQZ+PEcpNVApdUopdVIptUIplVEplV8pdUgpdVEptUop5WReN4N5+qJ5eb7UypcGXwghhLAzpVQuoB9QVtO04oAOaAtMA+ZomvY28ADTj9ph/vvAPH+OeT2LpMEXQgghjEbbP1KnBzIppfRAZuAWUBNYY16+BGhqft7EPI15eS2llMWv7pUGXwghhHgNlFI9lFKHH3v0+HeZpmk3gJnANUwNfThwBAjTNC3RvFowj37XJhfmH7UzLw8HPCzVL3fpCyGEEK/hi3ce/+n4pymlsmHK2vMDYcBqoL4165cMXwghhLC/2sA/mqbd0TQtAVgHVAGymrv4AXJj+sVazH/zAJiXuwH3LFUgDb4QQghhNNj+Ydk1oKJSKrN5LL4WcBrYDbQ0r9MZ2Gh+vsk8jXn5Li2V37uXBl8IIYSwM03TDmG6+e4o8Dem9nkhMAwYpJS6iGmMfpF5k0WAh3n+IGB4anXIGL4QQgiRBn48R9O0McCYp2ZfBsons+5DoNWLlC8ZvhBCCJEOSIYvhBBCpIMfz5EMXwghhEgHbJ7hl7l51NZVvJLYm3vtHYJFLrkD7R2CRYZ08K44vYuIi7F3CBbVyepn7xAsWnP7T3uHYJGDkrwPSBNj+LYm/2khhBAiHZAxfCGEECId9FZKhi+EEEKkA5LhCyGEEJLhCyGEEOJNIBm+EEKIdE/TUv2u+/88afCFEEII6dIXQgghxJtAMnwhhBBCvnhHCCGEEG8CyfCFEEIIGcMXQgghxJtAMnwhhBBCxvCFEEII8SaQDF8IIYSQMXwhhBBCvAkkwxdCCCFkDF8IIYQQbwLJ8IUQQggZwxdCCCHEm+A/0+CXL1eavb9u5Nfd65k1Y6zN6ol9+JCPBn9Klz5D6TtsHPHx8UnLBn86hS59htKhx0BadO79UuVv/nkXHXoOoteQMURFRxMdHUP3fsPp3GsIvYaMITo6xlq7AoCPjzcHD2wlPOwCOp2OcuVKsWf3enbtWsuM6WOsWterel3/41fVv98H/Lp7vb3DeEZaPX72fg0WLFWIseumMGbNZDqO7vrC22d0zsjgRSMZs3Yy1ZpXB6BmuzqMWz+VceunUrlJNStH/CwfH28OHdxGRPhFdDrdM9P25uPjzYEDWwgLO58UT4cOLdi2bQXbt68iZ05vO0f4HIxG2z/s7D/T4F+9Fkztuq0JrNEMTy8PihcvapN69h08gr9fEb5dMJ3ifoXZd+hI0rKZ40fw7YLpdO3QksAq5VMta8OWHfxx9ETSdEJiIj9s2MqSz2fQuF5NftiwDb1ez9RPh7LkixnUrFaRDVt3WHV/7t8Po35QOw79cQyAa9duUK9+W2rWbIGnlwfFitnmOL6M1/U/fhVOTk6ULFnM3mEkK60eP3u/Bu/euMOkdp8yruVI3LK7kafIWxbX7zmz7xPTNdvV5cCP+xjf6hOqt62NzlHPib1/MabZcMa3GkXDD5rYMnzAdAzr1W/LoUPHkp22t/v3wwgKas8f5v9xzpzeVKtWgaCgdtSt24abN0PsHKGA/1CDHxJyh7i4OAASEhIxGAw2qSdPLh9iHz4EIDIymqyuWZ5ZZ+dvB6gdWAWAa8E3+WDASLr0HsJX366wWPa16zcoVDAfer2OSuVKc/zkGTJkcMIzuzsAep3e6u/W4+LiCAsLT5p+XcfxZaTl2P7VrWs7li1bbe8wkpVWj5+9X4Phd8JIiEsAIDHBgNFopFm/1nyycgKjVowne25Pi9u/Xbowf+89jmY0cu3MFXIWzMXd4DsAGBINGBJtf5yfPoZPT9vb0/HUqROITqdj27YVzJ49DgeH/0BToxlt/7Czl/4vKKVevG/MCkqU8MUzuwdnzlywSfl58+Tk+MmzNOnQk1NnL1CqhN8TyxMSE7lw6R/8irwNwLyvljB+xEC+/XwGF/+5yu3QOymWHREVjYtzZgBcnJ2JjIpOWhYTE8vqjVtpUKe69XcqGcWLF8Uzuztnz9rmOL4KW/+PX5ZerycwsBK79+y3dygWpdXj97TX/RrMUzQvrh6uOOh0uOdwZ2Lb0SwevZAmvVpY3C6zqzOxUaahtpjIGJxdnZOW1e5YjyM7/rBp3P9FXl6eODk5EhTUjpiYhzRuXNfeIQle7S79ccDi5BYopXoAPQCUzg0HB+fkVnth2bJlZf7cibRt/6FVykvOxm2/EFilAt06tGTx92v48eddNAmqnbT8z6MnKFfaP2n6yrVgRkyYAZh6BELv3GPP/kP8tPM37t17gJOTE1myONOxVRPy5clNlHmMPjomhiwupuOiaRqjp8yhX8/OuGZxsdm+/StbtqzMnTuRDh0+snldL+p1/I9fVscOLVixMu2N3T8uLR+/x73u16Czmwtdxn/A/N4zKVreD9+Kxflk5QQAwkIf4JjBiWFLRgOQs2AuPlk5gZjIGGZ/MIXYyBgyuWQmIS6cTC6ZiI4wvVEvWKoQpWoEMOuDqa9lH/5LwsMj2Lv3EAB79uwnIMCfjRvtHFRq0sAYu61ZbPCVUidSWgSkeBeGpmkLgYUAeqdc2ktH9xidTsfSb+czdNgEQkJSzqJfmQZu5m78bG5uRD2WhQPs/O13gmoHJk3neys3w/v3xDO7OwaDAaUU/sWK0rZZIzZs2UFOH2/KlzG9QUhITOTi5asYDAYO/HmMkuYx1gX/t4xSJfyoEFDKdvtlptPp+HbxPIYPn2jb4/gSXtv/+CUVKVKQkv7F6PnBe/j5FaZ3r658/kWy73ntIq0fv3+97tegg86B3vMG8P2kJYTfCeP2Pzf5e+9fLBnztSkevQ5DooGJbU0Nfs+Zfflq8GdJ2184eo5iVUpwcPPv5PXLz81LN8jm7U7HT7oys/tktHTQULyogweP0K1bOwBKlizGlSvX7RyRgNS79L2BTkDjZB73bBvak1q2bETZsqWYOmUUO3espmKFAJvU06BOdX7e9Rtd+gxl8/bd1Klela+WmMbmNU3j+MkzlPF/dNNW/56dGT1lDt36DuejwZ/y8GFcimU76vW0eLc+nXoNYeO2X2jVpAGhd+6x6LvV7Pztd7r0GcrK9Zutuj96vZ5tW7/Hv4QvWzYvZ/jwvgQElGTy5JFs3/4DFSqUsWp9r+J1/Y9f1oiRk2nQqAMNG3fk9Onzaaqxh7R7/Oz9GqzQsDIF/N+m3YhOfLJyAk4ZMxB2J8w0hr9yPIGtalrcfvfKHVRpGsiYNZP49YedGBISad6/NW7Z3Rj41TA+WTkBxwxONt0HvV7Ptm0r8Pf3ZcuW7yhXrvQz0/ak1+vZuvV7SpTwY/Pm5WTI4ERs7EO2b19FQEBJ1q3batf4nks6GMNXmpZyAq6UWgQs1jRtXzLLvtc0rX1qFVgrw7eV2Jt77R2CRS65A1NfyY4Mkt288XRp/IarFt5l7R2CRWtu/2nvECxyUGn7/wvw8OE1Zes6YjdOt3lblanJUJvvhyUWu/Q1TetuYVmqjb0QQgjxn5AOkhf5al0hhBAiDXS521ra78sRQgghxCuTDF8IIYRIB136kuELIYQQ6YBk+EIIIYRk+EIIIYR4E0iGL4QQQlj4Tpo3hWT4QgghRDogGb4QQgghY/hCCCGEeBNIhi+EEEJIhi+EEEKIN4Fk+EIIIYR8l74QQggh3gTS4AshhBBGo+0fFiiliiil/nrsEaGUGqCUcldK7VBKXTD/zWZeXyml5iulLiqlTiilyqS2i9LgCyGEEHamado5TdNKaZpWCggAYoD1wHBgp6ZphYCd5mmAIKCQ+dED+DK1OqTBF0IIITTN9o/nVwu4pGnaVaAJsMQ8fwnQ1Py8CbBUMzkIZFVK+VgqVBp8IYQQIm1pC6wwP/fWNO2W+fltwNv8PBdw/bFtgs3zUiR36QshhBCv4XP4SqkemLrf/7VQ07SFT63jBLwLjHh6e03TNKXUS3/pv80b/Ak+NWxdxSvJV6ixvUOwqJqnn71DsGj/3bP2DsEi43/gozaGNP6FHzmcs9k7BIsSSNvHr7pXcXuHYNHp6GB7h5BumBv3hamsFgQc1TQtxDwdopTy0TTtlrnLPtQ8/waQ57HtcpvnpUi69IUQQgg736X/mHY86s4H2AR0Nj/vDGx8bH4n8936FYHwx7r+kyVd+kIIIUQa6A1USjkDdYCej82eCvyglOoOXAVam+dvBRoAFzHd0d81tfKlwRdCCCHSAE3TogGPp+bdw3TX/tPrakDvFylfGnwhhBDpnmZ86Xvh/jNkDF8IIYRIByTDF0IIIdL4p2WsQTJ8IYQQIh2QDF8IIYRIA3fp25pk+EIIIUQ6IBm+EEIIIXfpCyGEEOJNIBm+EEIIIXfpCyGEEOJNIBm+EEIIIRm+EEIIId4EkuELIYQQmtylL4QQQog3gGT4QgghhIzhCyGEEOJNIBm+EEIIkQ6+ac+uDX72wrkJmtoNzaDx4EoIW4YsfKHtXbyy0njeR+gzOLJ31lqu7D9F1f7NKFDdH4BfZ67h6v5Ttgg9Se48Odn8ywounL9MQnwC7Vv0YMK0kRT1K8S1K8EM6T8GoxW7ijy83Zm4eDx5C+WlUdEmGA2Pys6SNQsDJvfD1d2VY/v/4vvPVrxw+a17tqRy3UqE3Ahl+qCZePpkZ9jcoWiaxt1bd5naf7pV9wfAx8eLtWsX4+v7Ntmz+wGwePFcvLw8OXLkOKNGTbFqfS8enzfr1y3G17cQ7h5FMRgMAPTr+z5NmwVRs2YLu8b3tP79PqB5swYE1mhm71AACKxZhY/6dwOg4Nv5GDVkIvkL5KVOUHVuXL/Fx31Gk5iYaLX6snm5M3zxJ+R+Ow/v+bV54hzxr1qSNh93ID4unv8b9SU3L9144fKrNg2kfqcGRIVFMq/fLDQNhv7fCHR6PbFRMcztO4uH0bEpbu/u7c6ExePJW+gt3i3a9Klz2IV+k/vhZj6HV3y28oXja9WzJZXqViL0RggzBs3C0yc7Q+YOAU3jzq27TO8/w+rncIs279Kq7bvodDpmTf2c4Z8OwGAwcOWfa3zcZ7RV6xIvz65d+vcv32JZ8/EsbzUBAB//AhbXbzizxxPTlXo15rdZa1jZcRqV+zYF4O91+1jabByrOs+gav/Xc8H7bc8BWjXuSvsWPShZujhOTo60atyV82cvUrteoFXrigiLZEi74Zw5duaZZe8N6MC3s5YypO2w52rsOw3siHdu76TprB5ulKxckgEtPubymX+oUq8yURHRfNJlNINaDubW9duUr1nOqvsDcP9+OA0atOOPP44B0KRJPU6cOEP9+m3JlCkjJUr4Wr3OF4svjPpB7Thkjg/AyckJ/5J+dowqeU5OTpQsWczeYTzh1137adukO22bdOfGjducPH6GSlXL0bJhF86cPk/dBjWsWl9UeCTj243mwrFzzyxr2b8N49uPZl6/WbQZ2D7Vsqq3rIlfxeJJ0zq9jrod6vFpqxH8tm4PdTrUx5CYyPwBcxjTeiR/bj9E9VY1LZYZGRbJsHbDOXPs7DPLOg7oyNJZSxnadvhzNfbvJXsO+zPIfA5XNp/Do7t8yscth3DbBudwDh8vKlUpS9tm79Pq3a4c/uMvmtbvSIuGnQEoWbp4KiWkEZrR9g87S7XBV0oVVUrVUkq5PDW//qtWbkw0JD1PjE8g4vZ96k3sQrsVI2i1eDAZXTNb3N6zaB5uHL5AQkwc8dGxOLlkIvz6HQAMcQmv7WMWlauWZ93WpXzwUSfy5svN6VPnATj191nKViht1boS4hKICo9Kdlm+Ivlo36ctM1dNx7eMqZEsWqoIs36Yztx1s6nXuq7Fsgv7F+b4gRMAHN13FL8AX6LCo4iOjAHAkJD4RDZiLXFxcYSFRSRN58//FidPmi6Gx4+fpmLFAKvX+SJM8YU/Ma9rl7YsX77GThGlrFvXdixbttreYSQrT95c3A29RxHftzmw/zAA+349SEC5klatJyEugeiI6BSXx8XGERb6AO+8OQDIkTcHnywby7hVk2jet5XFsn3y5+TauasYDUZO7DtO4TJFSIhLICz0AQCGREOq54jlczgvbfu0ZfqqaU+cwzN+mM6cdbOo27qOxbILPXYOH9t3LOkcjkk6hw0YrHwOB9asgoODAyvXf82EqSOe6D2Ij0vg5o1bVq3PZoya7R92ZrHBV0r1AzYCfYGTSqkmjy2ebI0A3q5dhve3T8E5uxs+JfITcfMeK9pN4ciS7ZTuWMvitsrhUfhxkbFPvEGoOrA5x/qPtHkAACAASURBVL7fZY0QLQoNuUO1cg1p1bgr1apXJCTkDpUqlwWgyjsVcHPLYvMY/lWsrB8rPl/JxN6T6TnqfQC6DO7E6G5jGdB8ELWa1kTvmPIojoubCzFRpgtDdGQMLq6P3uN5eLtTploZDv92xLY7AZw/f5lq1SoAEBhYCTc3V5vX+SL0ej3vvFORPXt+t3coT9Dr9QQGVmL3nv32DiVZQY1q8/PWnbi6uRIVaWrwIiOicH2N5wiAW3Y3chbMRa63cwPQbsh7fDl0AWPajCJPobdwz+GR4raZXZ2JjTR118dERuPs6py0LGPmjNTpUI99G3976dj8yvqx8vNVTO49hQ/M53CnwZ0Y020sA5t/TM1Uz2Hnx87hJ+Nz93anTLXSHLHyOZzd0wMnJ0faNnuf2NiH1GtQkzr1q/PL/vV4enrw4H546oWI1yK1MfwPgABN06KUUvmANUqpfJqmzQNUShsppXoAPQCaupenvEuhFCu4+MtRLv5ylDrjOpG9UC58G1ck/zv+OOgduHH0Im55PGk4w9SV71HQh/YrR3H/8i1+GvkN2mPvmDK4ZOJhhOmFXrheWTJly8LpjQee4xC8mvj4BIhPAOCXn3/FJ2cOzp65yOpNizl75gJ3Qu/ZPIZ/BV++wbWL1wEwmns3CvgWYMI3YwFwdXfDzcONhu0bULJiCbxze1Ouelni4+L5eupioiOiyZ4jOwCZXTITFWG6KDs6OTJ09hBmD5trkwz/aVu2/EKNGlXYuvV7rl4NJjT0rs3rfBEdOrRg1aqN9g7jGR07tGDFyvX2DiNFteoF0rPzQMqU9SdHTlM3dJYsLkSER762GJZPWcKABUO4GxzKucOmYbGcBXLSd84AAJxdnXHP4UHZ2uWo3KgqWT2zkRAXT3RENFsXb+bm5RtkypIJMJ0jj/ckfDSjLytmLCfGQu9CaoIv3+C6+RzWzF3ABXzzM858Dru5u+Lm4UaD9kH4V/THO7c3ZasHEB+XwDdTFxMdEfPYOeycFJ/pHB7MnGHzrH4OR0ZEJvXY7N97CP9Sxfls9kJ2/LSHCVNHULteID9t2WnVOm1BSwcfy0utwXfQNC0KQNO0K0qp6pga/bxYaPA1TVsILASYkrdjiv0YOic9hnjTzTpxUbHcu3STk+v28cf/bTNVrtdhTDTwfdtJgGkMf8vgRzf23Tl7jVxl3ib0zHWcXDIRHxWLZ9E8lOlUm9VdZ6a689bg7JKZaPM76rIVSrN44XdsWLOFuTO+ZNCwXuz+Ze9riQMg+HIw7l7uxERGo9PpALh46hLje07gYWwcOr0OQ6KBpbOXAaYx/J9X7yAkOAQwjf+926kRP/xvNWWqlubMUVO3+sCp/dm4dBPXLlx7LfthNBoZNGgMAAsWTOGXX359LfU+r8KFClCyZDE++KAjfr6F6fVRF7748lt7h0WRIgUp6V+Mnh+8h59fYXr36srnXyy2d1gAeHp5kJCQQNiDcI4fO8V73drw1WeLqRJYkaOHT7y2OM4fPce4tp+QI58PQZ0bAnDz8k0Wj/+asNAHODg4oGkaF/86z/blP1G9ZU1Cg0M5ffAkYBrDz1M4Lw4ODpSoWpLzR033CbT5uD3nDp/h5O9/v1J8Ny7fSDqHHczn8KVTl5jQc+IT5/Cy2csB0xj+9qfO4cadGrH6f2soXbUUZ46a3tQMmNqPTUt/tMk5fPiPv2jfqSUAxYoX5dbN20nLIiOjefjwodXrFC8ntQY/RClVStO0vwDMmX4j4BugxKtWXiDQn/LvBwFw/0oIF3ceo/aY92i3YgQAfy76mYu/HE1x+4P/20KjOT1xzOjE3tlrAag5sh3O2d1os3QYcZExrP1gzquGaVGFSgEMGdmX+Ph4Dh04yl9HT7L6x8UYDUb2/XaQY0de7QLwNJ1ex5SlkyjgW4CpyyezfN53FC9XnO8/W8GS2csYtWA4ThkzsGyO6YKwZPYyJiwej1KKyLBIxvWckGLZYffCOXHoJHPXziL05h3WLVqPbxlfqgZVwTu3Fy26N2PdNxvY/5N1u7L1ej0bNy6hRAk/fvxxGZMnz2P06IEYjRrffbeWmzdDrFrfy8T346al+JfwZcvm5Yz+dBqjPjF9cmDXrrVporEHGDHy0Sjbr7vXp5nGHqBOUA12bNsNwL279zl04AhrtnzLzeDbfPO/ZVatS6fXMXLJGPL65eeTZWNZM28VRcv5sW7Bapr3aUWJqiWJehDJVyO+AGDFjGX0mtEXRydHEhMMzPpwKg9jkm+kDIkGdq7Yzvg1U4gOj2Jev1lk83Kn6YfNOXfkLOXrVeT3zfvYvvwni/FNWjqRAr75mbJ8EsvnfU/xcsVY8dlKls5exogFw8mQ0Yllc74DYOnsZYxfPA7M5/CEnhNTLDvsXjh/H/qb2WtnEXozlPWLNuBbxpcqQVXwyu1Ns+7N2GDlc/j0yXM8fBjH6k2LuX//AWtX/ciaH02vvX8uX+PXXWlr6CtFaWCM3daUZuHGNqVUbiBR07TbySyromlaqoOFljL8tGBBxLHUV7IjX5fc9g7Bov13n73TOC0xpoE7Y1NjSONdibmypDymnRaUd8lv7xAsCjfG2TsEi05HB9s7hFQF3z+ZYo+ytURP6mTztsp51FKb74clFjN8TdNSfCU8T2MvhBBC/Cf8B5KDVyVfrSuEEEKkA/LVukIIIUQ6GMOXDF8IIYRIByTDF0IIIdL4zbPWIBm+EEIIkQ5Ihi+EEELIGL4QQggh3gSS4QshhBDyOXwhhBBCvAkkwxdCCCFkDF8IIYQQbwLJ8IUQQqR7mnwOXwghhBBvAsnwhRBCiHQwhi8NvhBCCJEOGnzp0hdCCCHSAcnwhRBCCPniHSGEEEK8CSTDF0IIIdLBGL7NG/zrKt7WVbySjLoM9g7Bojhjor1DsMhBKXuHYJGmpe34ANJ6hHGGBHuHYJGnStvn8B0t2t4hWKRT0tGbXkiGL4QQIt3T0kGGL2/thBBCiHRAGnwhhBDCqNn+kQqlVFal1Bql1Fml1BmlVCWllLtSaodS6oL5bzbzukopNV8pdVEpdUIpVSa18qXBF0IIIdKGecBPmqYVBUoCZ4DhwE5N0woBO83TAEFAIfOjB/BlaoXLGL4QQghh5x/PUUq5Ae8AXQA0TYsH4pVSTYDq5tWWAHuAYUATYKmmaRpw0Nw74KNp2q2U6pAMXwghhHgNlFI9lFKHH3v0eGxxfuAOsFgpdUwp9bVSyhnwfqwRvw14m5/nAq4/tn2weV6KJMMXQgghXsNd+pqmLQQWprBYD5QB+mqadkgpNY9H3ff/bq8ppV46UMnwhRBCCPsLBoI1TTtknl6D6Q1AiFLKB8D8N9S8/AaQ57Htc5vnpUgafCGEEMLOd+lrmnYbuK6UKmKeVQs4DWwCOpvndQY2mp9vAjqZ79avCIRbGr8H6dIXQggh0oq+wHdKKSfgMtAVU2L+g1KqO3AVaG1edyvQALgIxJjXtUgafCGEEOme6WZ3u8fwF1A2mUW1kllXA3q/SPnSpS+EEEKkA5LhCyGEEPJd+kIIIYR4E0iGL4QQQkiGL4QQQog3gWT4Qggh0j0tHWT40uALIYQQ6aDBly59IYQQIh2QDF8IIYSw76/jvhavvcHPV+ptWo7ujNGocfXEJdZOWPLMOiO2TufXJT/x+6pdL1x+uSZVCexUj+iwKBb3n4+mafRcOASdXsfDqFi+6TePuOiH1tgVADJmysiCb6aRKXMmIiOi6Nd9GEM+7UeJkn6cOnGGCaNmWq0uAA9vD6YvmUTeQnmpV7ghBsOTr1KnjE78cOA7JvSbwpG9R1+4/HYftqZqvcrcDg5h8sDpePl4MmrecDRN486tO0zsNxWjFX83umy5UkybNhqj0cjRIyeYPn0BP6z+moSERCIiIuj0Xh8ePoyzWn0vw8fHm3XrvsHXtxAeHr4YDAY6dGhBx44t0ekc6NKlHzdvhtg1RoC8eXOzf99mzp69QHx8Ag0atrd3SADkeSsnW39ZxYXzl4mPT6Bt8/c5f/UPTv59BoBuHfsRFhZutfrS+jXGw9uDKd9OJF+hvAQVafTEOTx89hDeKvQW8Q/j+fG7Lezc8OLx1W5Wk6admxAZFsmEPpPRNI2Ji8ah1+uJiYphfO9JxEbHvnC5KQmsWYWP+ncDoODb+fjfZ4up36g2mqZx+2YIAz4aadVrhnh5r71L//6NO8xtP57ZrT4li4crOYvkeWJ5idoBRN2LeK6yKrYMpFBFv6RpB72Oah3qMLv1GP5Y/xtV29fGkGjg2wGfMafNWE7sOEylltWtuTu8U7Myfx05SYcmPThx9BQ9+3fF2TkTbRt3x9HJkRKl/VIv5AVEhkXQv81gTh89nezyxu0acPnsP89VVtdBnciR2ztpOqtHVkpXLkXvZgO4dOYfqtWvQmREFMM6j6Jvi4Hcun6birUqWGU//nX92g0aBLWnTu1WeHp6kDNnDmrXakn9em04duwkQUHPfKPka3f/fhhBQe35449jAOTM6U21ahUICmpH3bpt0kRj/6+dO3+jdp1Waaax/9evu3+neaPOtG3+PgBnTp+neaPONG/U2aqNPaT9a0xkWASD2g7h9LEzyS6f1HcKA1p9/FyNff1WdSlVqWTStE6v492OjenfYiDb1/5C446NMCQmMqnfVPq3HMS+7b9Tv3W959r35/Xrrv20bdKdtk26c+PGbbZu2kG3dn1o3bgr16/doEadalatz1Y0o2bzh72l2uArpcorpcqZn/sppQYppRq8bIURd8JJjEsAwJBowPhUhlquSVWO/Lg/adozrzd9l45i4Kqx1O/T3GLZXvlycPPcNYwGI2f3/U2BMoVJjEsg4k6Yub7EZ+p7VdeuXCdz5kwAuLplQdM09u0x/brh/l8PUaasv1Xri49LICo8Ktllekc9fmV8+fvPk0nz/EoXZf7qWXyxYR4NUjnRi5YszF8HjgNweO8RigcUIyo8iujIaAASExIxGgxW2hOTkJA7xMWZMviEhEQSEhKSvtNap3Pg0qUrVq3vZcTFxT3RKNWpE4hOp2PbthXMnj0OB4e0cytMYGBldu9aR/9+H9g7lCdUqVaBDVuX0aOX6Ue/ChUpyIatyxg1ZpDV60rr1xhL57CmaYyYO4zJiyfgncsLgFz5cjLju6nMXTOL9/p1sFh27vy5uHz2HwwGI0f2HqVYgC/xcQncD71vii/B+tfAf+XJm4u7ofe4dTOEyEjT/iXY4JohXp7FK5VSagwwH/hSKTUFWAA4A8OVUqNepeJcRd8ii7srty8++vle32r+XDh0+onun3eHtGP5sP8xp81YfArnIWsO9xTLzOzqTGyUqasqNjKGTK7OScsyZM5A1fZ1+HPTvlcJ+xlXLl+ndDl/tu1bTYlSvhgSDUSZG8jIiCiyuGWxan2WBLWux/Z1O5+Y131wF4Z3HU2vpv2p07wWeseUR3FcXF2IjjLFHh0Zjctjx8/D24Ny7wTw56+HbRJ78eJFye7pztmzFwkoW5K9+zYRGFiZK1eu26S+V+Hl5YmTkyNBQe2IiXlI48Z17R0SALduheJXrBq167SiZs1qlCjha++QAAi5fYcqZYNo0bgL7wRWwrdYYSqXqU/TBu/hltWVukE1bFLvf/Ea88WEr+jTtD8rvlhFr08/BKD70G5MHzyLAS0/Jl/hvHj6ZE9xexdXF2KiYgCIjozCxdUlaVmmzBlp3LEROzfsTGnzVxLUqDY/b31UtlcOT6pVr8hvuw/YpD6rs/PP474OqY3htwRKARmA20BuTdMilFIzgUPApOQ2Ukr1AHoABLoH4JelwBPLM7s503pcNxb1mfPE/MptarHk4wWUbVw5aZ5XgZx0ntMHgEyuzmTN4U6J2gEENKqMq2dWEuISiI2IZvfirYRevkUmF1O2ndElE7ER0UnldJzei00zVhAbEZPaMXkhzds2YtfPv/F/C5byfu/3yJQ5Ey5ZTBcBlywuRIZHWrW+lOh0DpQPLMvoHuPwK100aX5Bv4JMXTwBADd3N7J6ZOXdDg0pVdGfHHlyUKFGOeIfxvPV1EVER0bj5eMJgLOLM1Hm4+fo5MioucOYPmT2M/cMWEO2bG7Mmj2OTu+Z/s9HDh+nWtV36dfvfTp1as2CBYusXuerCA+PYO9eUy/Onj37CQjwZ+PGVDZ6DeLj44mPNz3fuvUXihUrwt9/J99t/DrFxycQH2/KuHf8vIeivoU4c+o8AD9t2Ulxf1+2b9tt1Tr/q9eYyDDT9eLvP0/SY4Rp+OOtgrkZNX84AC6uzmTPkZ1KtStR893quHtmIz4unqiIaNYsWkfw5WAyu2Q2HYMszkRFPOpJGDprCF9P+ybpvLa2WvUC6dl5IABOTo7M/nwiwweOwyAZfpqRWoOfqGmaAYhRSl3SNC0CQNO0WKVUild+TdMWAgsBeuVr/cTbGgedA13m9mXd5GVE3Hly7M6rgA89Fw4hq7c7SsGlw2cJvXyT1eO+JeJOGMpBgQZX/rrI3uU7qNgykHvBd7hw0DSe7aDX4VM4D8pBUbSqP/8cuwBAo0FtuHzkLOcPnHqxo/McFIqwB6b9eHAvjEyZM1H5nfJs3biDKoHlWbviR6vXmZxsnu545/Ji5vIp5MqXi0q1KjDoxHkunLzI6B7jeBj7EJ1ehyHRwDezTDcxdR3UiW0//MztYNMYdFaPrDTr/C7ff7mKstXKcMp8n8CQ6YNY/+1Grly4avW4dTodi76Zy8iRkwkJuYOjoyMJCabGISIyCp1OZ/U6X9XBg0fo1q0dACVLFkszvRAuLs5EmXtoKlcuy+efL7ZzRCbOLpmJNmed5SqU5rula3BwcMBoNFKuQhnOnj5v1fr+y9eYzC6ZiYmKIU+B3EmN9bVLwSwY+wX3Q+/j4OCApmmcOXaWTct+pH6rutwODkkaitPpdeQvkg8HBwcCqpbh9FHzjZGDu3Dy8EmO/f7XK8WXEk8vDxISEpKuhVPmjGHpopVcOHfZJvXZRDq4rzC1Bj9eKZVZ07QYIODfmUopN17y8JRpWIm8/m/TbERHADZO/55y71blh7GLmdJgKGC6UcZBpyPk0k02zVjBezM+Qu/kiCExkf/7cBZxMcnftW1MNLB/5U4+Xj2emPBovuk/DzevbNT9sAmXj56jZL3yHNn8O3uX73iZ0JO1ae025n89jaatG5KYkEi/94fTb0gPVv64iDMnz3HimHXfZOj0OmYun8LbfgWZ9f00vp2zjBLli7Ns/vf0aGj6aeSugzpx4s+TRIVH8c2sb5m6ZCJKKSIeRDC6x7gUyw67F8ZfB//m8/VzCbkRyg9fr6VYgB+BQVXJkcuLVu83Z/Widez9aX+KZbyo5s0bUqaMPxMnjgBg0sQ5fDJ6EEajkQcPwni/+0Cr1fWy9Ho9mzYtpUQJPzZvXs6nn04jNvYh27ev4u7dB8yf/7W9QwSgatUKjBs7hLi4ePbtP8Qffx6zd0gAVKxUlqGj+hEfF8+hA0eIiIjkp92riY6O4frVYGZM+cyq9aX1a4xOr2P6sikU9C3A9O+msnTuckqUK87yz77nk89GkMV8L9CckfMAWDT9G4bNGoyjkyOJCQbG9BhLbEzynwIwJBrYvGIr89fNITI8iol9JuPh7UG7Xm04deQ01epXZdemPWxaZt1EpE5QDXaYe2nKlPWnfqNa5MrtQ7eeHVm88Dt+3vLinzYQ1qf+vUEq2YVKZdA07ZlXvlIqO+CjadrfqVXwdIaf1vwcddHeIViUM0M2e4dg0dEHl+wdgkWG/8DHgQzGtN3l6ZHZ1d4hWNQ8awl7h2DR6cT79g7Bon9iQ+0dQqqu3juhbF3Hg1bVbd5WZVu9x+b7YYnFDD+5xt48/y5w1yYRCSGEEMLq5Jv2hBBCiLTfGfjK0s4HiIUQQghhM5LhCyGESPfSwjfh2Zpk+EIIIUQ6IBm+EEIIIWP4QgghhHgTSIYvhBAi3dMkwxdCCCHEm0AyfCGEECIdZPjS4AshhEj3pEtfCCGEEG8EyfCFEEIIyfCFEEII8SaQDF8IIUS6J2P4QgghhHgjSIYvhBAi3ZMMXwghhBBvBMnwhRBCpHuS4QshhBDijWDzDP/X2Ku2ruKV5MqQzd4hWBSaEGHvECwyGNP222INzd4hpCqtR6hTaTsvCHqos3cIFu0yhts7BIucHBztHULaoCl7R2BzaftMFkIIIYRVyBi+EEKIdE/G8IUQQgjxRpAMXwghRLqnGWUMXwghhBBvAMnwhRBCpHsyhi+EEEKIN4Jk+EIIIdI9TT6HL4QQQog3gWT4Qggh0r20MIavlLoCRAIGIFHTtLJKKXdgFZAPuAK01jTtgVJKAfOABkAM0EXTtKOWypcMXwghRLqnGZXNH8+phqZppTRNK2ueHg7s1DStELDTPA0QBBQyP3oAX6ZWsDT4QgghRNrVBFhifr4EaPrY/KWayUEgq1LKx1JB0uALIYRI9zTN9g+lVA+l1OHHHj2eDgPYrpQ68tgyb03Tbpmf3wa8zc9zAdcf2zbYPC9FMoYvhBBCvAaapi0EFlpYpaqmaTeUUl7ADqXU2ae215RSL/0Dm9LgCyGESPfSwlfrapp2w/w3VCm1HigPhCilfDRNu2Xusg81r34DyPPY5rnN81IkXfpCCCGEnSmlnJVSWf59DtQFTgKbgM7m1ToDG83PNwGdlElFIPyxrv9kSYYvhBAi3UsDGb43sN70aTv0wPeapv2klPoT+EEp1R24CrQ2r78V00fyLmL6WF7X1CqQBl8IIYSwM03TLgMlk5l/D6iVzHwN6P0idUiDL4QQIt3TXvpWuP8OGcMXQggh0oE0n+HrdDqmfjGO7J7unDx2mi3rfmbYhIEA5Mzjw/L/W8WyhSutVp+HtwfTlkwib6G81C/cEIPhye9bdMroxKoD3zGx3xSO7LX4LYbJavtha6rWq0xIcAiTB07Hy8eTkfOGg6YReusOk/pNxWi03nc86nQ6pn8xnuye7vz912lWfLuWaQvGomkaITdDGdp7jFXrexk+Pt6sW/cNvr6F8PDwxWAw0KFDCzp2bIlO50CXLv24eTPErvGtX7cYX99CuHsUpUiRt/ni86kYjEYuXbpCjx4f2y225PTv9wHNmzUgsEYze4eSpGWbd2nVrgkOOgf69hjGh3264l+6GH8fP82YEVOtWleWornxn/EBmsFI9JXbHB/wVdIyn8YVKNirEWhwYd4GQn4+8sLlF+zViBz1AogJvstf/f9HxpzulJ7fCzSN2Fv3OdbnczBaL118+hyeOf4zuvXuSK36gdwMvs2IvmNJTDRYrb4XlTFTRj5bNI1MmTMSGRHFvGn/Y9z0ERiMRq79c53h/cbZLbYXkQbG8G0uzWf4tRoEcu7UBbo270WGTBnQNOjavBddm/fi/OmL/Lp9n1XriwyLYECbwZw+ejrZ5Y3aNeDy2X+eq6yugzqRI7d30nRWj6yUqVyKPs0GcOnMP1SrX4XIiCiGdx5F3xYDuXX9NhVrVbDKfvyrdoPqnDt1gc7NPyJjxgzkzJWDDzsM5L0mPQm+dpPA2lWsWt/LuH8/jKCg9vzxxzEAcub0plq1CgQFtaNu3TZ2bez/ja9+UDsOmeM7f/4S1Ws0o1atFgAEBDwz7GY3Tk5OlCxZzN5hPCGHjxcVq5SlTdPutGrcleyeHmR2zkzzBp1wcnKkZOniVq0v6uIt9jcew+9NTQ2NW6kCScsK9GjAgeYT+L35eAp+2DDVsgoPbkGmPNmTpp2yu+JRxY/9TcYRceYaOYLKkhgewx/vTef3ZuOJvRaKd63SVt2fp8/hcpXKUKFKWTo0/oBzpy9QK6i6Vet7Ue/UrMTxIyfp2LQnJ46dIleenLRp2I32jd8HoEQpP7vGJx554QZfKbXUFoGkJE/eXJw/fRGAsyfPU6pcCQAyZc5Idi93rl0Jtmp98XEJRIVHJbtM76inWBlfTv55Mmmeb+mizFs9i883zCOodT2LZRctWZhjB44DcHjvEYoFFCMqPIroyGgADAmJGA3WfaeeJ18uzp2+AMCZk+cpWCQ/Ueb6EhMTMVi5vpcRFxdHWFh40nSdOoHodDq2bVvB7NnjcHCw7/vSp+NLTExMeh4fF0dw8E17hJWsbl3bsWzZanuH8YTAmlXQ6XSs2rCICdNGElC+FHv3/A7A3j0HCShn3TdM2mPZrjEukYc37iVNx1wJQZc5A3rnjCRExgCQtXRBKq0bTZVNY8nTNtBi2VlLFuDe72cAuPvbSbIFFCIhPJrEyFhTfYkGNCv3mD19DhfyLcgfv5t6Jg78+gelzddEe7l2JZhMmTMC4OqahbAHj86V+Lh4btn5Dfvz0jRl84e9WbySKqU2PfX4EWj+7/TrCPCfS1cpV8n0jrl8lQCyuGUBoFrNyuzbdfB1hJAkqHU9tq/b+cS87oO7MKLraHo37U+d5rXQO6Y8SuLi6kJ0lKmxjY6MxsXVOWmZh7cHZd8J4M9fD1s15n8uXqVc5TIAVKhaFldX0/Hz8s5O5cAK7N9zyKr1WYOXlydOTo4EBbUjJuYhjRvXtXdIz2jUsA5Hj/yCl5cn9+49sHc4AOj1egIDK7F7z357h/IETy8PHJ0cadO0O7GxD3F1dSHS/KYzMiISVzdXq9fpXTeAwD3TyeDpRvyDR2/gb237k3d2TOGdX6ZyZdHPABQZ2oo/O81k/7tjydW8CspRl2K5jq6Zkxr3hIgYHN0encMZvLPh+U4J7uw5YdV9efoczuLqkvSmPTIyiizmc9perly+Tuly/mzd+wPFS/lx9I/j1Kz3Dlt+W4WHpwdh98NTL0S8FqmlTrmBCGA2MMv8iHzsebIe/77gB7GhKa32XPb8vI8MmTKwaM0C4uMT/p+9+46L4mgDOP4bDlARwYCAWKKxg13sPRp7r6ixxq6JGkvsvfcSo3lt2Htv0WjUqLH32FuMYkWR3rl9/7gLsYLlb1sGYwAAIABJREFU8Aj3fPPhk9vdu5lnkdm5Z2Zuj2d+/oBhqH/vjgMfVfb70OmsKF6hKMf3n3hpf3bP7Iz3Gc3MdVNxcnEirXNa2vVpw8x1U6netBrD5w5h5rqp5PXyJCQ4lNT2hgtEavvUhAQZGq2NrQ2DZvRnUr9pr60Z+Fj7dx8iZcoU+KyfQ1RkFE/9nmFja8P42SMY2ntsksjwXxUYGMShQ4Y3IgcO/EGePDnMHNHrtu/YQxGvr7h//yE1a35l7nAAaPl1I1at3mTuMF4THBTCsT9OAvDHweMopUiTxtAO7NPYExQYZPI6H/96mt8r/kDEQ3/cqvw7xJ6rd0MOlO/HgXJ9ydW7IQAOebNQbGlfSm0cSgrXtKRwdiBXv8aU2jiUzN4V8Pq5B6U2DjVk88HhWKdJBYBNmlREBxrasJWtNYVndeV83/loidyGg4NCsP/n92efmuCgYJPW974aetdm3+6D1CzXlAN7DlOvSU327T5IrfLePHr4mC+rljNrfO9K0yf+j7kltGivKNATGAz00zTtnFIqXNO03+N70Yv3C87rVuKjVq/o9XrGDTK8txgxZSB/7D+GtbWObDmzxg1zfQqfuTjhmtGVycvHkzFrRkpWLkGfC9e5cfEmwzqNJCI8Ap21jtiYWHymGr7YqF3v1vyydjePfA1DWmmd09KgTV1WzV2DV7kicesE+k3qzabFW/j7xt8mj1uv1zNm0BQARk0ZxOH9xxg9dRArF63j1vV3W4vwqR07dppvvmkOQMGCeblz514Cr/i0bG1tiYqKAiAoOISI8AgzR2SQO3d2ChbIS+eOrfD0zEX3bu34aY6PucPi1PFztGjTGIC8+fOgaRplK5Rk2+bdlKtYirUrN5u0Pitba/RRhmmXmOAwYiOi447po2KIDY9E0zSUreHyF3TxDqc6zCA2LBJlrUOLieX65PWAYQ7/3prfCb/3FDDM4WdtW4VbP20jXfn8PD9jmG4sMKUjd3x+JeR6vHc2/SCvtuEDvx5i2MT+LJy9jFIVinPu1MUESkhkShEQYHjT9tw/AMe0/47YhASHEhGRNNqHSKDD1zRND0xXSq0z/v9xQq8xNdf0LkycMxJN09i6didPHvlRpmIJjh9+/9W170JnrWPy8vHk8MzOlJUTWTx9GQWK52PZrJV0rmW4x0G73q25cPIiIYEh+ExdzIQlY0Apgp8HMbTT21ekBjwL4PyxP5m9aQaP7z9h3YIN5PXypHyNsrhldKVJh4asX7iRQ7tMNyTrmt6FKXNHo9fr2bJ2JxkypadKrS/JkMmdNp2as3T+avbuPGCy+j6EtbU1W7cuJX9+T7ZvX86wYRMJD4/g11/X8PTpc2bNWmD2+LZtXUqB/B7s2L6cQ4ePU7GiYbHjzZt/sWdvvO9/P5mBg8bFPf59/6Yk0dkDXLp4lYjwCNZt8+H5swC6d/yBIaP6sHHnUi79eZVzZ/40aX0uXxaMW5AXcvshQZfvkrNnfW7M3MydJXsos83QRu8u2wfAtcnrKb60HyiIfh7CqQ4z3lp21NMgnh27Qpktwwm7/4zb83bymVdO3GsWI1WmdHzRqQZ/zf+FR7+Ybmru1Tb8wPcRp46dZcW2+Tz0fcTS/60yWV0fYtuGX5i5YAL1m9QkJjqGLet/YcUWw/fD3Ll9j8P7P+3U64fSJ4E59sSmtPe424BSqhZQRtO0Qe/6mo/N8BObs7W9uUOI15No0w93mtKdoKS9IEcjSf/5ARBr5o9FJsQtdVpzhxCvn1MUMHcI8eqnv2nuEOIVmxTGmhNww+90ovfG1z2qJ/rFIteVXWZ9V/Fe2bqmaTuAHYkUixBCCGEWSWEVfWJL8p/DF0IIIcTHS/J32hNCCCESmyXcaU86fCGEEBZPvjxHCCGEEMmCZPhCCCEsniUM6UuGL4QQQlgAyfCFEEJYPEu48Y5k+EIIIYQFkAxfCCGExZMb7wghhBAiWZAMXwghhMWTz+ELIYQQIlmQDF8IIYTFk1X6QgghhEgWJMMXQghh8WSVvhBCCCGSBcnwhRBCWDxZpS+EEEKIZEEyfCGEEBbPElbpJ3qHn97GMbGr+CiPogPNHUK8bK2S9nsypZJ2I9Hr9eYO4T9Pn8THOk+nSNoDlbqIpB1feGykuUMQn0jS7k2EEEKIT0BW6QshhBAiWZAMXwghhMWzhDl8yfCFEEIICyAZvhBCCIuXtJemmoZ0+EIIISyeDOkLIYQQIlmQDF8IIYTFk4/lCSGEECJZkAxfCCGExbOEe3JKhi+EEEJYAMnwhRBCWDwNmcMXQgghRDIgGb4QQgiLp7eAO+9Ihi+EEEJYAMnwhRBCWDy9zOELIYQQ4lNRSumUUmeVUtuN218opY4rpW4qpdYopWyN+1MYt28aj2dNqGzp8IUQQlg8DZXoP++oJ3Dlhe2JwHRN03IAz4H2xv3tgefG/dONz4uXdPhCCCFEEqCUygTUAhYYtxVQCVhvfMoSoL7xcT3jNsbjlY3Pfyvp8IUQQlg8/Sf4UUp1UkqdeuGn0ythzAB+4N8b/zkDAZqmxRi3fYGMxscZgXsAxuOBxue/1SdftOfs5sTYxaPJkjMLtXLXRR/77w0Nf5jWl89zfk5kRCQ7Vuxk3+b9711+5QaVqNemDsEBwYz9dgKapjFq4Qisra0JCwllTPfxhIeGm+x8dDodE+aMJJ2LExfPXmbq6NkMGteHnHmy43v3AcN7j0OvN91NG13c0jF72RSy5cpKyeyViY2NjTuWI082hkz8AaUUY/pP4saVW+9dfttuX1OxWjke+j5iaM/RuGVwZeysYWiaxuOHfgz6dqRJzwfA3d2VDRt88PDIQbp0ngD4+MzA1dWF06fPM3jweJPW9/7xubF502I8PHLymVNuXF3TvbT94r+Bubm7u7Fl8xI8PXLi+FmuJBFbps8zsHPvam5cv010VDSjh09l1PgBhmOZM7Dg52XMn7vMZPVlLJSd6sNaouk17p+/ze7Ry+OOZSmRhyoDm4MG59Yf5NSK3967/Pz1S1O8dRXCA0LZ0OMnNE2j2fzv0VlbExkSzvrvZhMVGmGy83n1GjNtzE+Mnz0c94zpiY6Opm/nIQT4B5qsvg/R0LsOjZvVxcrKij7dhzBgeC9cXJw5f/YS40dON2tsSYmmafOAeW86ppSqDTzRNO20UqpiYtT/yTP8oIBg+jbrz+WzV954fNx3E+jTpN87dfbVmlShYKkCcds6ax11WtaiV6M+7NnwG7Vb1iImJobxPSbyfeM+/PHrUao1rWqycwGoXLMC1y7doF3DbqRIlYKipQpjY2NDu4bduHn1NhWqljVpfYEBQXRo8h0Xzlx67Vj3HzrRv+sw+nUawrf9X33j+LqufduTIXP6uG2ndJ9RrEwR2tbrwvUrN/myRgWCAkP4tlVf2jXoxv27DyhXubRJzwfA3z+QmjWbc+LEWQDq1avGhQtXqF69GalSpSR/fg+T1/l+8QVQrXozjh8/+8btpMTfP4Cq1bw5fvyMuUN5ycH9R2lUuy3NGnbk0p9XaVS7LY1qt+Xypevs2fW7SesKvP+UJc3HsajxKFKnc8A1d+a4Y6U71mRdt1ksbDiCQk3KJ1hWocblyVry378/K2sdRb+ujE+T0ZzfeBivryuhj4llY6+5+DQdzdVfT79Tue/j1WuMV8lCREfH0KZ+Fzat3k7tRtVNWt/7cnN3pWRpL1o06Eizeu0pWCQfVy5dp1n9DqRMlQKPvLnMGt+7SgJz+GWAukqpO8BqDEP5M4G0Sql/kvNMwH3j4/tAZgDjcUfgWXwVvFeHr5Qqq5TqrZT64F4zOjKakMCQNx7TNI0BM/oxxmcUrhldAciQNQMTV4xn2vopfN2jRbxlZ/oiI7ev3kEfq+fMoTN4enkQHRmN/xN/AGKjY14aUTCFzFkycv3yTQCuXrxOsdJF/t2+dJ3CRfObtL6oyCiCA4PfeMwhbRoeP3jCk0d+pHFMA0D+wp4s3PgTS7b+j3rNasVbtmfBPJw6Yugojh08SUGvfAQHBhMSHApATEwMsXrTZ4yRkZEEBATFbX/xxedcvHgVgPPnL1OypJfJ63wfhvgC37qdlCTV2EqXK87mncvo1K113L5UdqlwdU3Hnb/umrSuEL9AYiKjAdBHx6K9MCL19PZDUqSxQ2drTXR4JABOWdxotWwAbdcMofx39d9Y5j+cv0jPk2v30MfquX34IpmL5CQmMpqQJwGG+mJi0T7BNUZnZbh0OzikMXt2X+HL0ljpdKzcNJ+REwbwedZMXL10HYDLf17Dq3ghs8b3X6Fp2kBN0zJpmpYVaAbs0zTta2A/0Nj4tDbAFuPjrcZtjMf3aZoW7+2D4u3wlVInXnjcEZgNpAGGK6UGvN/pJOzn0fPoUf97Vs9ZQ9dhnQH45oe2TOk7jd6N+5I1VxbSuad76+tTO9gTFmLonEKCQ7F3sI87ltIuJbVb1uK3zftMGvNft/6mWKnCABQv40V0dAxFjdslyhaN63g/BasX1mv886jbDx3p0bofbep2plbDaljbvH0Wx8EhDSHBYQCEBIW+FLuLWzpKli/O0QMn3vZyk7l+/TblypUAoEKFUjg6OiR6nSLxPHnkR5miNWlUpy3lKpSKy/gqfVWO/b8dTrR63fJkxs45DX437sftu7r7FC2X/MC3+6ZwYdMfhjj6NWXLD/NY7D0Gl5wZcUjv9NYyUzrYERlsmBKMDA4jpYNd3DFbuxR4fV2JP7ccMel5vHqNiY2NJUXKFGw9tBrvtg3Zu/P9pz5NKZ2rM7Y2NrRo0JHw8Aju3L5LidJFAShVrhgOn/Aa+DE+xRz+B+oP9FZK3cQwR7/QuH8h4Gzc3xtIsE9OaA7f5oXHnYAqmqb5KaWmAMeACW96kXEhQieA3Gk9yJg6U0JxABAcYMhcL568RIeBhk8eZM6emQGzfgDA3sGedOnTUeqrklSsWwEnFyeiIqMICQph48LN+N72xc4+NQCp06QmJOjfkYR+U/uwcOJiQoNC3ymWd3Vg92FKlivGwvWzuX/vIc/8/Ll59TY+G+dw4+otnvn5m7S++Lz41k5vfKOXO29OZi2dDMBnTo44OX9G41b18CpVmAyZ3SnzZUkiI6OYOXYuwcEhuGVwAcA+jV3cSIKNrQ1jZg1lZN/xn2ROeMeOvXz5ZRl27lzJ33/78uTJ00SvUySeqKhoiDJk3Ht2HyCPR06uXLpOzdpf8dOshQm8+sOkckxNzVFtWdd91kv7v+rfjAUNhhP6NJBWywdycetR0mVzp+H0rgCkdEhNmvSfkeurwuSrXRJ7l7TEREYTERTKMZ/dPLv9kBRpUgGQwj4VEUFhcWXXm9yJfZPXvrTPFF69xgQHhvD8WQB1yzWjau1KtOvakrnTEuf3+C6Cg0I4duQUAEcOnqBA4bykTJWClZvm43v3Pk+fxDvKLN5A07QDwAHj49tA8Tc8JwJo8j7lJtThWymlPsMwEqA0TfMzVhSqlIp524teXJhQOVPVd75DsZ29HWEhYWTKlolQY2d979Y95oz4Gf8n/lhZWaFpGlfPXmXbsu1Ua1KFR76POX/0AmCYw/8id1asrKwoUrYwV84Y1gm07duGS6cuce7IuXcN5Z3p9XrGDZoKwIgpA/lj/zGePPJj7rSFdOvbgUP7jpq8zrcJfB6Em7sLer1GqHEY/urF6/TpMIjwsAisrXXExMQyZ/ICwDCHv2XNDh7cewQY5vC92zbE56cVlCxfLG6dwPApA1jts4Hb1+98kvPQ6/X07j0cgNmzx7N3r2nneMWnldrejtAQQydYvEQRFs5bgbW1NTlzZ+PyxWsmr89KZ0XDmd34dewKQvxeHu7W6/VEBIURGx2LpmlY2eh4evshu0YtI+RJAMpKgQb3z93i1PLfKNS4PAG+ftw5ZriWWFnrcM2VGWWlyFY2H75nDEPtX/ZpzN1T1/nryGWTn8+r15igoGACjVNgz/0DsHdIbfI638fpE+do3roRAJ75c3Pv7/vMnjYfgPHThvH7ftOOeCQW007EJE0JdfiOwGkMI8SaUspd07SHSil7ePe7CLxIZ61j/LKxZPfIxsQV41k2Yzn5iuVj5Y+rGPTjAOwd7UHTmDHoRwAWTVpMv6l9sLG1ISY6hhGdRhER9uYVsLExsexYtZMZG6cSHBjCuG/H4+zmRLNuTbl0+jJlqpfhwNbf2bZs+4eE/kau6V2YOGckmqaxde1O/B4/xWfjHPR6PccOneTPNyyu+xjW1jrmrJxObs8c/Lx6Bj9PW0SR4gWYP3MJcybPZ9L/xgAwbuAUAOZMXsCPSyeDUgQ9D6J3h0FvLdv/6XNOHzvH4i0/8+j+Y5bNW0MBr3xUrlkB90zpadnJmxXz17LvF9N2wNbW1mzZsoT8+T3Ztm0Z48bNZOjQ79HrNVas2MCDB49NWt+HxLdt2zIKFPBgx44VDB06kVGjfnhp++TJpLGAz9ramh3bllOggCe/7FjJkKETOGHm2EqUKkr/wd8RGRnF8aOnOXv6AhUrleHwweOJUp9nrRJkKJDNsBof2DtpDfnrleaX4Uv5Y+42Wq8YiKZp3Nx/nsjgcPZNXku9yZ2wtrUmNjqWtV1mEBUW+cay9TGxnF61n2/WDyM80LBKP41rWsp2qcO909fxqFaUi9uPcWr5+6/+f5tXrzG7Nu9lyv/G4LNxDlZWVgzpOdpkdX2IyxevEREeyeotC3nuH8C2jbtYvWUhmqaxYc1WHj98Ytb43pUlfD2uSmCO/80vUsoOcNM07a+Envs+Gb45PIpOegucXqRTSftWCTcCH5g7hHglxiJDU9N/QBv8lFzsHM0dQrw6OxY2dwjxWhdx09whxCskxnQfU04sfz+7kOi98Q635oneEGs9XmXWdxUf9Dl8TdPCgAQ7eyGEEOK/QJ/8E3y5054QQghhCeTrcYUQQlg8+XpcIYQQQiQLkuELIYSweEl76axpSIYvhBBCWADJ8IUQQlg8S7jxjmT4QgghhAWQDF8IIYTF0ytZpS+EEEKIZEAyfCGEEBZPVukLIYQQIlmQDF8IIYTFk1X6QgghhEgWJMMXQghh8eTb8oQQQgiRLEiGL4QQwuLJt+UJIYQQIlmQDF8IIYTFs4TP4UuHL4QQwuJZwqK9RO/wc1g7JnYVH+Vq6H1zhxCvrHZu5g7hP039B+6PrTRLyC0Sz2MVbe4Q4uVkbW/uEOIVGB1q7hDEJyIZvhBCCIsnN94RQgghRLIgGb4QQgiLZwkTa5LhCyGEEBZAMnwhhBAWzxJW6UuGL4QQQlgAyfCFEEJYPFmlL4QQQohkQTJ8IYQQFk8yfCGEEEIkC5LhCyGEsHiarNIXQgghRHIgGb4QQgiLJ3P4QgghhEgWJMMXQghh8STDF0IIIUSyIBm+EEIIiyfflieEEEKIZEEyfCGEEBbPEr4tTzp8IYQQFs8SFu198g4/a6EcNB3aFk2vcefCTdaNXhJ3rFrX+uSrWBjblLb8MmcT53afeO/yi9crS8XW1QkNCGFhz5lomka3eT+gs9YRHhLOgh4ziAyNMNn5ZMqcge17V3Hj+m2io6Jp0agToycOIo9nTu7e8aVfz+Ho9ab7U0rn5sykJePImjMLVXLVJDb237J7juxOzrw5sE1hy48j5/DnqUvvXX6LLt6UrVaax76PGfP9RFzdXRg6cwCaBk8e+jG6x3iTnk+xYoWYNGkYer2e06fPM2jQePbuXUfevLkpUaIGt2//bbK6PpS7uxubNvrg4ZETJ+c8xMbGAtDjuw7Ub1CDSpUamTnCf7Vs2ZhWLZug01nRus13PHjwyNwhkenzDOzcuzqujTRv1Ikff55AxszuREVF0/WbPvj7B5isvqyFctB4aBs0vcbfF26x/oVrTNWu9chrvMbsmrOJ87tPvnf5xeqVpULraoQFhLCo5yw0TaPLvH7orHVEhISzsMfMeK8xzm7OTFoyliw5s1AtV62X2jCAbUpb1h5dwege4zl96Mx7x9e8S1PKVivNI9/HjPt+Eq7uLgyeOQBN0/B76MeYHhNM2oYBGnnXpUmzuuh0OiaOncX8JTO4ef02UdHRfN2ok0nrEh/uk8/h+99/yrQWI5ncZChpnB3JkPvzuGN75m9jqvdwpjUfSbUu9RIsq1TjiuQq6Rm3bWWto/zXVZnSdBjHNx2kfIsqxMbEsrDXLKZ4D+f8npOUblzR5Od08MBRmtRpR4tGnShYOB+2tjY0qdOO61dv8lW1CiatKyggiJ7efbh05vJrx2aP/plvG3/P0C6jaN3j6wTL+qZ3G9JncovbTuucliKlC9GtQU9uXrlN+eplCQkKoV+bwXRv1IuH9x5SqnIJk57P3bv3qV69OZUrN8bFJR25c2enadOObNq006T1fAx//wCq12jO8RNn4/bZ2tpSoKBnPK/69DJkSE/5ciWpVt2br6o0SRKd/T8O7j9Ko9ptadawI/kK5CEqOpoGNVuzZsUmGjatbdK6/O/7MaPFKKY2GUYaZwcy5M4cd2zv/O1M9x7BjHe8xpRsXIGcr11jqjCt6XCObzpIuRZfERsTi0+vH5nmPYLze05RKoFrTHBAED29+3L5DW0YoE7zmty++tc7nWu73q1fa8OFSxeie4Ne3LryF+WqlyE4KIT+bQbzXaPveXjvESVN3IbTu7tSqkxRmjXoQJO67Xj04DGHDhylSd12/6nOXv8Jfswt3g5fKVVCKeVgfJxKKTVSKbVNKTVRKeX4IRUG+QUQExkNQGxMLNoL7271MYbMySalLQ+u3QPAJUt6ei4dQp81I6n5bcN4y3bL6s79a3fRx+q5cvgC2YrkIiYymiC/gLj69LGm/7WXLlucjTuX0rFra7JkzcTlS9cBuPTnVYqWKGzSuqIiowkODHnjsVjj788udSpuXr4FgGfhPPy4bhpzN8+iZtPq8ZbtUTA3Z46eA+DUodPk8/IkODCE0OBQAGKiTf/7e/zYj8jISACio6OJjdXz5MlTk9bxsSIjIwkICHxpX7u2zVi+fL2ZInqzqlUqoNPp2L1rDTOmj8bKKumsyS1drjibdy6jU7fWPHzwBJ3OEJuDYxqe+wcm8Or3E+QX+NI1Rp/gNcaN75YO5vs1I6iRwDXGNWv6uGvM1cN/8sVr15iYBNtIVGQ0IW9pw9Y21ngW8eDPkxfj9nkWzsOsdVOZs3kmNZtWi7fsPAVzce7oeeCfNpyXkJfacAx64wiVqVSoVAYrKytWb1rA6AkD0el0lC5bjA07ltChayuT1iU+TkJXhEVAmPHxTMARmGjc5/MxFWfM8zlpnBx4eNP3pf3NR3dg2K4pXD1i+IOv3685S/vPZar3cNxzZSZteqe3lpnKwY6IkHAAwoPDSOWQOu5YCruUlG9RhRNbD39M2K958tiPcsVq0aROO8pVLMnjx36UKl0UgDLlS+DomMak9SVk3IJRTF85iZPGocAOfdvRv90QutbvQdWGlbG2efssjr1DasJCDP/cIcGh2DvYxx1L5+ZMsfJenPj9/YdA30W+fHlIl86Zq1dvJEr5pmRtbU358iU5cOCIuUN5iaubCza2NlSr7k1YeDh168bfOXwqTx75UaZoTRrVaUu5CqVwdUtHypQpOXh8G22+acbObXsSpd6MeT7H3smBRzfvv7S/2ej2DNk1hWvGa0zdfs1Z3v9npnuPSPAaY+eQ+qVrjN1L15gUlGtRhZMfcY2p0bQav2787aV97fu2ZUC7oXSr35MqCbZhe0JDDJ17aHAo9i/E52xswyd/P/XB8b1JOhdnbG1taNagA+HhERQonJdyxWvTtO43lKtQCg/PXCatL7Fon+AnPkqplEqpE0qp80qpS0qpkcb9Xyiljiulbiql1iilbI37Uxi3bxqPZ03oHBOaw7fSNC3G+LiopmlFjI8PK6XOxRN4J6ATQDmnInikyfbScTtHe5qPbM+8b6e/9tpVQxewadJK+m8Yw8mth3HLloF2078zvM4hNWnTO1Hgq6IUrV0aR5e0REdGExYUyj6fnTy+/YCU9qkASGlvR3hQaFy5rSd1ZfPkVYQHhb1W58eIioqGKEM2sXf377hnSM/VKzdZt9WHq1du4PfkmUnrS8igDsNwcU/H2Hkj6FTnW3J4ZmeizxgA0jo5ktY5LfW+rkWhkgVxz5yekl8WIzIiip8nLCAkOBQXdxcAUtunJiTIkIXY2NowZEZ/Jvab+tp8oyl89pkj06ePomXL7iYvOzF8/XUj1qzZYu4wXhMUGMyhg8cA2L//D7y8CgK/mDcoXm4je3YfII9HTp499ad8iTrUqluVLt+1Y/qkuSat084xNd4jv2HBG64xq4cuZPOklfTbMIaTW//ALVsG2k7/FoBUcdcYL7xql8bBeI0JN15jntx++MI1JhVhL1xjWk3qxtaPuMbodFYUr1CUoZ1G4lk4T9z+7J7ZmeAzGgBHYxuu+3UtCpUsQPrM6SnxZTGiIqL434SFhAaH4vpSGzbEZ2Nrw+AZ/ZnUb5rJ23BwUDBH/zC8ifjj0HEKFMpHeJjhTdHe3b+T2yMHVy5fN2mdyVQkUEnTtBCllA2GfvYXoDcwXdO01Uqpn4H2wFzj/59rmpZDKdUMQzLuHV8FCXX4F5VS7TRN8wHOK6WKapp2SimVC4h+24s0TZsHzAPonLXJS29srHRWfDPjO9aPWxY3DBYXjK01MVExREdExb2Lfnz7AWtG+hDkF4CysgJN4865mxxc/iulGlfkme8Trh8zzIVZWevImCszysoKj7L5uX3W8EdWt7c3t05f49rRi5haans7Qo1ZcdEShfGZt4LN63cwY/Jcevfvxv69h0xe59vY2NoQHRVNeGg44WGGRUPXL95gSKeRRIRHoLPWGdY0TDUsYvqmdxt2rt3FI9/HgGH+r2Gbeqycu4ai5YrErRPoP6k3GxZv4c4N0y+g0+l0LFo0k4EDx/L4sZ/Jy08MuXJmo2DBvHTs2BIxN5E8AAAgAElEQVRPj1x069qWOXMXmzssjh47RftvWgBQsGBe7ty5a+aIDF5sI8VLFOH27b/jpkj8/Z/j4GDaUTArnRXtZnzHhnHLCPJ7ebrgbdeYdSMXG68xCjSM15g9lGxcgWe+ftx44RqTIVdmlJUiT9kC/HXWMCJVp7c3t05f5drR918o+4/PXJxwy+jKlOXjyZg1I6Uql6D3hevcuHiToa+04UXGNtyud2t+Wbv7pTbcoE3d19pwv0m92ZRIbfjUiXO0aN0YgLz58vDwhbUjxUoUxmf+CpPXmRjM/bE8TdM04J+5HhvjjwZUAloY9y8BRmDo8OsZHwOsB2YrpZSxnDdKqMPvAMxUSg0BngJHlVL3gHvGY+/Nq1YpshbIQcOBLQHYPGklxeuWZfWIRTQd3o702TNibWPNr/8zZFCbJ6+izeRuWNvaEBsTw/+6TCUy7M0rYPUxsRxa/Rv91o0iLDCUBT1n4uj6GdW61OfWmWsUqlacU9uPcHD5rx8S+huVKOVFv0HfERUVxfGjZzh35iLrtvmgj9Vz+OAxzp7+02R1AeisdUxdPoEcntmZtnISPtOXUqB4fpbOWsGouUOxd7BHp7Pi5/ELAFg4dQmTloxFKQh6HszgTiPeWnbAswDOHbvAnE0zeXz/CWsXbCCvlycVapTDLaMbTTs0Yt3CjRzcZbppkUaNauHlVYCxYwcCMGzYJL77rj2lSxcjR44vmDbtZ7ZvT5wh33dlbW3Ntq1LKZDfgx3blzN02EQGDxkPwL59G5JEZw9w/vwlwsMj2LtnHU+fPWfmzPnmDgmAEqWK0n/wd0RGRnH86GlmTvkfPy+awobti7GysqJXt8Emra9IrVJkeeUaU6xuWdaO8KHJ8Hakz54BnY01e/63FYCtk1fRenLXuGvMvC5TiQyLfGPZ+phYDq/+jT7Ga8wi4zWmapd63DZeY05vP8LB5W//m9VZ65iyfDw5PLMzdeVEFk9fRv7i+Vg2ayWdahlGudr1bs2FkxcJCQxh0dTFTFgyBqUUQc+DGNpp5FvLNrThP/lp04xX2nBZ0md0pUmHhqxbuJFDu/740F/vay5fvEZERCTrtvrg7/+c9au3snPfGqKiojlx9LTJr4HJmVJKB5wGcgA/AbeAgBdG2n2BjMbHGTH0xWiaFqOUCgScMfTVby4/njcDLwbhAHyB4Q2Cr6Zpj9/1BF7N8JOa7YFvXimbVGS1c0v4SWZ0xv+WuUOIl15LCmtj42fqj0iZWjq7D1qf+8nUT5vP3CHE62L0p53We19/hb/z5dxsfP0vJnr+PSFLy0TvqwbeXdEZ43S30TzjiPhLlFJpgU3AUGCxpmk5jPszA79ompZPKXURqK5pmq/x2C2ghKZpb+3w3+lz+JqmBQHn3/GchBBCCPGKF6e7E3hegFJqP1AKSKuUsjZm+ZmAf1ah3gcyA75KKWsMi+rjfXeZdD63I4QQQphJElil72LM7FFKpQKqAFeA/UBj49PaAP+sGN5q3MZ4fF988/cgt9YVQgghkgJ3YIlxHt8KWKtp2nal1GVgtVJqDHAWWGh8/kJgmVLqJuAPNEuoAunwhRBCWDy9mb8gV9O0C8Brd2rTNO02UPwN+yOAJu9ThwzpCyGEEBZAMnwhhBAWL2l/VsY0JMMXQgghLIBk+EIIISxekr5hjIlIhi+EEEJYAMnwhRBCWDyZwxdCCCFEsiAZvhBCCItn7m/L+xSkwxdCCGHxzH3jnU9BhvSFEEIICyAZvhBCCIuX/PN7yfCFEEIIiyAZvhBCCIsnH8sTQgghRLIgGb4QQgiLJ6v0hRBCCJEsJHqGvyXgYmJX8VHqpM1n7hDi9XvoX+YOIV6x+lhzhxAvpZL+3TSSel5hY6UzdwjxahietP+Nf9MHmjuEeNla2Zg7hCQhqbdDU5AMXwghhLAAMocvhBDC4skqfSGEEEIkC5LhCyGEsHiySl8IIYQQyYJk+EIIISxe8s/vJcMXQgghLIJk+EIIISyerNIXQgghRLIgGb4QQgiLp1nALL5k+EIIIYQFkAxfCCGExZM5fCGEEEIkC5LhCyGEsHiWcKc96fCFEEJYvOTf3cuQvhBCCGERJMMXQghh8SxhSF8yfCGEEMICSIYvhBDC4snH8oQQQgiRLCT5DD/z5xnYuXcNN67fJioqmmYNOwBQs04VRo8fiFe+Siat74tCOWg6tC2aXuPOhZusHb0k7lj1rvXJV7EwKVLasnPOJs7uPvHe5ZeoV5aKrasTFhDC/J4z0TSN7vN+QGetIyIknHk9ZhAZGmGy80mZKgWzFk4klV0qgoNC2LByK227tDCca44sjOg3nr2//G6y+j6Eu7sbmzctxsMjJ5855SY2NpbJk4fjVaQAZ89dpE+f4WaPb9NGHzw8cuLknIfcuXMw56cJxOr13Lp1h06d+pg1vlf17NGRhg1qUuHLBuYOJU4j7zo0blYXK52OHp0HMGH6cOyMf5PdvulDVFR0osfweeeauNYqwam67/f3lMLtM/LN+RarFDbcmrQO/4N/kq1PY5wrFQTg1oQ1+B+6mBghA0m/DZevVJouPdsBkC1HFv43azFVan4JQMZM7iyetxKf/600W3zvSm6tm0T8vv8IDWu3ievsAWrXrcqD+49MXtez+0+Z2mIkk5oMxcHZkYy5P487tmf+NqZ4D2dK85FU71IvwbJKN65IrpKecds6ax0Vvq7K5KbDOLrpIOVbVCE2JpaFvWYx2Xs45/acpEzjiiY9n/KVSnP+9EVa1e/MhbOXAGhVvzOt6nfmoe8jjhx8/zctpubvH0C16s04fvwsAIUK5cM+dWoqVW6Era0NXl4FzR5f9RrNOX7CEN/167eo+GUDKlduBGD2+F5ka2tLwYJ5zR3GS9zcXSlRpijNG3TEu+43FPbKz7nTf+Jd9xvOnfmTCpXLJnoMytaaNHmzvtNz887s+tJ21h71uDlhLWeajuWLXoY3UQ/W/c7JWkM523w82fo0NnW4L0nqbfjgviO0qNeRFvU68sD3EWuWb4rbvnr5Bvt+PWTW+MS/4u3wlVI9lFKZP1Uwb1OmXAk271xGp25tAKhcpTyHfj+KXm/6WZcgvwBiIg3ZRmxMLPrYf+uIjYkFwCalLfev3QPAJUt6ei0dQt81I6n1bcN4y3bN6o7vtbvoY/VcOXyB7EVyERMZTaBfwBvrM4W7d3xJZZcKAAcHewKeG+rKnCUjT/38CQsNN2l9HyIyMpKAgMC47RIlivDbbwcB2PfbYUqW9DJXaMDr8cXExMQ9joqMxNf3gTnCeqNv2jVn2bJ15g7jJRUqlUZnpWPVpvmMnDCQv/+6h90/f5OOaQjwD0j0GDK2qMSDtf9mwXkmtsdrw1AKLe+PtWPqeF9r7/E5gSevERsWSWxoBDr7VETc9QNAHxUNWuJmhv+FNgyvx5PKLiUurs78/dc9M0f2bvSf4MfcEsrwRwPHlVKHlFLdlFIu71KoUqqTUuqUUupUWNTHNebHj/woU7QGjeq0pXyFUnjkzUXT5vVZv2bbR5WbkIx5PsfeyYGHN31f2t9idAeG75rC1SOGIbwG/ZqzpP9cpngPJ0OuzHyW3umtZdo52BERYmgM4cFh2Dn8e6FJYZeS8i2qcHzrYZOex53bdylcLD87Dq0hXyFPzpy4AECVWl+yZ+d+k9ZlKmkdHQgKDgEgMCiItI4OZo7odbVrVeHM6b24urrw7Nlzc4cDgLW1NRUqlGL/gT/MHcpLXFycsbG1oXmDjkSER5ArTw6KFCvI3iObKFAoL6dOnEvU+pW1js9Ke/L8sCE7Tle1CBH3n3G60WjuLdpNpjZV4n+91b+XyZigMGwc7eK2s/Vtgu+yvYkTuNF/pQ1Xq12JX3fsi9uuWLksB/cdMWNE4lUJdfi3gUwYOn4v4LJSapdSqo1SKs3bXqRp2jxN04pqmlbUzjbtRwUYFRVNWFg4sbGx7Nl9gDweOTl18hzR0Yk352fnaE+Lke1Z0n/ua8dWDl3AsMq94rL59Nky0H76d/RdPQL3HJlIm96JCi2r0nf1CKp3rU+zYe3ou3oEhasVJzw4jJT2hnfqKe3tCAsKjSu37aSubJ68ivCgMJOeSwPv2uzbfYha5bw5sOcw9ZrUBKBStXLs23XQpHWZSmBQMA5p7AFwSJOGgMAgM0f0uu079lDE6yvu339IzZpfmTscAFp+3YhVqzeZO4zXBAWFcPyPUwD8ceg4mbNkZO/uA3xVugH79hykYdPaiVq/e5NyPNr07xvp1Dkzkb5+abw2DuOLXg2wSZualJ+74LVxGF4bh+FcqRBeG4fhMbkjANoLI4nWaVIRHWhooy41imHrlIZHGxP3DdZ/pQ1XrlaBvbv+HUWpWutLdm3fF88rkhbtE/xnbgkt2tM0TdMDvwK/KqVsgBpAc2AK8E4Z/8dIbW9HaIihgRUrUZi/bv9NqTLF+LJyWXJ75KD/4J5MHDvTZPVZ6azoMOM71o1bRpDfy6MT1rbWxETFEBURRbgxU390+wFrRvoQ6BdgyAQ0jb/O3eT35b9SunFFnvo+4fqxy4BhDj9jrswoKys8y+bn9tnrANTr7c3N09e4etT0C3+UUgQGGDrM5/4BpHGwJ52rM9FRMQQ8D0zg1eZx7NhpOnZsyfoN26lUuSxLlyatIWpbW1uioqIACAoOISLcdIssP0bu3NkpWCAvnTu2wtMzF927teOnOT7mDovTJ87RvLVhnjtvvjxomhb3t+f/LIA0Dm/NHUzCLnsG0uTLSqbWVbDPnYnH247xcO1B/v55O2AYAdBiYjndcJQhxpldudTz3zf7IVfu4lg0J8GX76KzT0VsSDj2np+T+ZtqnP16QqLGDv+NNmyIJzouHmtra7Ln+oKrl66bOTLxooQ6fPXihqZp0cBWYKtSyu7NLzGtkqWK8sPgHkRFRnH86GmmTpwTd2zLL8tN2tkDFK1ViqwFctB4YEsANk5aSYm6ZVk1YhHNhrcjffaM6Gys2f2/LQBsmryKNpO7YWNrQ2xMDHO7TCUy7M0dQGxMLIdW/8YP60YRFhjKgp4zcXT9jOpd6nPrzDUKVyvOye1H+H35ryY7n20bdjFjwXjqNalJTHQMvToOpHrdr/htl3lX5r/I2tqabduWUaCABzt2rGDo0IlERESy77cNnL9wmVOnEnfI953i27qUAvk92LF9OYcOH6dixTIA3Lz5F3v2Jo3f5cBB4+Ie/75/U5Lo7AEuX7xGREQEa7Yu4rn/cwb3HcuMn8fRsGkdYmJi6PZN30St/+aYf1eIF906knvzfyH3uHZ4bRgKwN15O/Hbffqtr78zeyv5ZnfHKqUttyYZ3nzmHNYSWxdHiqweRExwGOfbTEm0+P8LbbhKjYrs+eVA3HapcsU4euik+QL6AElhjj2xKS2eBSdKqVyapn3UW7T0aT3MP44Rjzpp85k7hHj9HvqXuUOI150g039SwpSUUgk/ycxiE2HxqSllsH/7upSkYKGNZ8JPMqPu+lvmDiFeMVqsuUNI0O2nZxO9IbfJ2ijR+6oldzaY9YIUb4b/sZ29EEII8V+gT+RPWyQF/4nP4QshhBDi4yT5O+0JIYQQiS355/eS4QshhBBmp5TKrJTar5S6rJS6pJTqadzvpJTao5S6Yfz/Z8b9Sik1Syl1Uyl1QSlVJKE6pMMXQghh8fRoif6TgBigj6ZpnkBJoLtSyhMYAPymaVpO4DfjNhg+Ip/T+NMJeP3GMa+QDl8IIYQwM03THmqadsb4OBi4AmQE6gH/fIvbEqC+8XE9YKlmcAxIq5Ryj68O6fCFEEJYvE9xp70Xbztv/On0pliUUlmBwsBxwE3TtIfGQ48AN+PjjMCLX1Tga9z3VrJoTwghhMX7FHfD0DRtHjAvvucopeyBDUAvTdOCXryXiKZpmlLqg9cXSoYvhBBCJAHG29dvAFZomrbRuPvxP0P1xv8/Me6/D7z4bbaZjPveSjp8IYQQFs/ci/aUIZVfCFzRNG3aC4e2Am2Mj9sAW17Y39q4Wr8kEPjC0P8byZC+EEIIYX5lgFbAn0qpf75AZBAwAVirlGoP/A00NR7bCdQEbgJhQLuEKpAOXwghhMUz99fXapp2mFe+sO4Fld/wfA3o/j51yJC+EEIIYQEkwxdCCGHxkvZ3VpqGZPhCCCGEBZAMXwghhMXT5OtxhRBCCJEcSIYvhBDC4r3Dl9v850mGL4QQQliARM/w26ctnNhVfJSZT46aO4R4lXbObe4Q4nU/9Km5Q4hXrN4S1t4mLmurpD0QODtFqLlDiNfnmrO5Q4jXlRBfc4eQJFjClUIyfCGEEMICJO237kIIIcQnYO477X0KkuELIYQQFkAyfCGEEBZPVukLIYQQIlmQDF8IIYTFkzvtCSGEECJZkAxfCCGExbOEz+FLhy+EEMLiycfyhBBCCJEsSIYvhBDC4snH8oQQQgiRLEiGL4QQwuLJx/KEEEIIkSxIhi+EEMLiyRy+EEIIIZIFyfCFEEJYPPkcvhBCCCGSBcnwhRBCWDy9rNIXQgghRHIgGb4QQgiLl/zzezN0+JkKZafm0FZoeo37F26xc/TyuGM1h7XC3TMLAO4eWRhTsON7l5+tlCdV+nkTExnFuu/nEvTIn1YL+pLSwY7Y6BjW9/mZoEf+JjufosUKMWHiEPR6PWdOX2DggLHMXzCNzJkzEBUVRds2PXj27LnJ6nNyc2K0zyiy5Pycunnqo4/99zue0qS1p8e4Hjg6OXD2j3Os+nH1e5ffpHNjSlUtxZP7j5nceyou7unoN6MfaBp+D58yqedk9HrTfa9U0WKFmDhxaNzvb84cH+YvmIamaTy4/4j27b83aX0fwt3djY0bF+HhkRNnZw8yZXLn4MEtXLt2k6ioaGrXbmnW+P5RvFhhpk4ZgV6v59Sp8/TpN8LcIQFQvlJpuvRsB0C2HFkY2ncc4WHhdOn1DVZWVowbNo2L56+YrD4nNyeGLBpG5pyf4+3R+KU2UrpWGRp0bgSaxrrZazmx5/h7l9+gc0OKVy2Bn68fM/tMx9k9Hb2m9wZN4+nDp8zoNS3ev1lnNyfG+IwiS84s1M5T75U2nIZe43rgYGzDK39c9d7xNe3cmNJVS/H4/hMm9Z6Ci3s6+s/4Ac0Y34Sek0zephp716VJ83pY6az4rlN/Fq/6iZy5s5MrUzFiY2NNWpf4cPEO6SulbJVSrZVSXxm3WyilZiuluiulbD6kwoD7T1nUYizzm4wktbMjbrkzxx3bOWoZC5uNYefoZVzbdzbBsr4o6UHhxuVf2vdljwb4tBrP7omrqdCtLgDbRyxhftNR/D53K2Xa1/iQsN/q7l1fatVoQdWvmuLi4kyZMsWJio6iWlVvli1bj7d3PZPWFxwQTP/mA7hy9uprx1r2asnSqUv5odmAd+rsW33fErdMbnHbaZ0dKVi6AL0b9eH2lb8oXa00IUGhDG07jD6N+/Ho3iOKVypm0vO5d/c+NWu0oMpXTXBxcSZjRncaN2pPtare3Pn7HtWqf2nS+j6Ev38ANWq04MSJf/8m9+07RNWq3kmmswf4+64vX1VtSoUvG+Di6ky+fHnMHRIAB/cdoUW9jrSo15EHvo84cugEzds0pnWjrrSo19GknT0Y2sjQFoO5dvbaa8fqta/P4KYDGdx0IPU61k+wrGbft8A1k2vctqOzI/lKFWBgo/7cufoXJaqVJDQohDHtRjKoyQCe3HuMV6Wi8ZYZFBBMv+YDuHL29fNu1etrFk9dSr9m/d+ps2/9xjZckF7GNlzG2IaHtB1K78Z9eZgIbTi9uyslyxTFu357mtRpx3P/ALzrtefMqfMmrSex6dES/cfcEprD9wFqAT2VUsuAJsBxoBiw4EMqDPELJCYyGgB9TMxL727/4Vm1GJd2nQTAzikNLef3of2qwdQd3S7esm1S2hIdEU1UaAS+527hmisTAM99/Yz1xb6xvo/x5PFTIiOjAIiOjgFAZ6UDIG1aB575B5i0vujIaEICQ954LGvuLDT7thmT1kzEo4gHAHkK5Wby2klM3ziVqk2rxFt2zgK5OH/0AgBnD5/F08uDkMAQwoLDAIiNjiXWxL+/x4/9iIyMBAy/P3//5wQFBcdt65NAdhAZGUlAQOBL+8qXL81vv63nu+/amymq1736u0xqmVXmLBl56udPgcJ50ev1+KyZzdQ5o0lll9Kk9URHRhMaGPrGYw/vPiSlXQpSpk5JWEg4ALkK5WLMmvFM2DiJyk2+irfsHAVycvHYnwCcP3yOPEU8CA0MjWsjMe9wjYm/DWelxbfNmLJm0ktteOraSczYOI1qTavGW3auF9rwmcNn4tpwaFwbfvM192NUqFQGnU7Hms0LGT1xENHRMQQGBpm0DmEaCXX4+TVN8wYaAFWBxpqmLQPaAYXf9iKlVCel1Cml1KmzwTff+By3PJlJ7eSA3837rx3LVaEgN343vDus0LUuv8/dysLmY4kMDSdzkZxvDTalgx2RxkYMYGX17+kpK0XFbxtwcuVv8Z7wh8qbLw/pXJw4cuQkqVKl5PSZPXTo8DVbt+xKlPrexLOoJ6t/WsO47uPpOLgDAK37tmb4NyP4vmEfKtWvhLXN22dx7B1TExZiuDCEBoeS2iF13DEnNyeKlCvM6YOnEyX2fMbf39Wrhr+X9O6uVKpUlr17DyVKfR/j4cMn5M9fgapVvalUqWySyaT/kT+/By7pnLly5Ya5Q3lJtdqV+HXHPtK5OOPqlo523t9y5uQFWrRp/MliOLbrKNN/mcWMXT+yw2cbAC36tGRs+1EMaPgDFRpUjLeNpHZITfg/bSQo7LU2UqhcIc4ePPPB8eUt6smqn1Yzpvs4OhvbcNu+rRn6zQh6NexN5QTbsP0LbTgMewf7uGPObk4UKVeEUyZuwy6uztjY2uBdvz3h4RFUq1nJpOV/KpaQ4Sc0h2+llLIFUgN2gCPgD6QA3jqkr2naPGAewOCsLV47y1SOqakzsi2rv5312muds6Yn6LE/0RGGrNklR0aq9W+GpmmksEuJ77lbeFYrSql21UnlYId1CluKNC7Pn9uPcXbDIVLYp4or68V5qhpDWnJ24yH87z5J4JTf32efOTJt2khatepO5a/K8fSpP15FqlC/fg169urIhPE/mrzON/G9fZ97N+8BoGmGc8/m8QUjF40AwNHJAUdnR2q2qEGBkgVwy+RG0YpeREVGs2iCD6FBYaRLnw4AO/vUhAYZsiQbWxt+mNaX6f1nmjw7AMPvb+q0kbRu9S0Atra2zJ83lW+7D0hyWSpAVFQUUYY/T3bu/I28eXNz8eLrUyzm8NlnaZk1YwzNWnQxdyivqVytAl3b9KGQV35OHT+HXq/nyKETdOze+pPF4N2zOd9W7grAsCUjOHfoLFk9vmDwwmEAODg54ODkSLWvq5G3RH5cM7lSpEIRoiKjWTZxCaHBoTi7G9tIGru4NmJta03Pad/zU/8fP6qN+N6+z11jG/7nY2LZPLIx2tiGHZwccXR2pFaLmhQsmR+3TG4Uq1iUqMgoFkzwITQo9IU2bEdIkGEkwdCG+zGt/wyTt+HgoBCO/WEYkf3j4HEKFs7LL9tNWoUwkYQ6/IXAVUAHDAbWKaVuAyWB918RBljprGgyozu7xq0kxC/wteOe1YpyafepuO2ntx9wbtMfPLj4V9zr9bF6Lu8+xRclPUibyYWz6w/GPd8mpQ22dilwzZkJvxuG0QOvphVB0zi30fTZok6nY8Gi6QwaNI4nj5+ilOL5c8Mw/rNn/jg4OJi8zre5f/s+Tq5OhAWHYqUzTCvcunSL0Z3HEBEeic5aR2xMLMumGRZKtvq+Jb+u28Nj38eAYf6vTuvarPt5PYXLFuLKGcMcY68JPdi6dBt3b9w1ecw6nY6Fi2YwaNA4Hj82TL3Mnj2e/81bFpftJzX29qkJCTFc6EuXLsqcOYvNG5CRTqdj6eJZ/NB/dNzvMqlI5+pMdFQ0Ac8DuXD2Es1aNwTAM19ufP9+fZQvscRERRMZHgkaWNsYcpbbl24xsct4Il9oI6umrQQMc/j71u3lia8hUXB0dqRmq1ps+nkDBcsW4ppxLU33Cd+xc8kO7t2491Hx+d72jWvDOmMbvnnpFqM6j36pDS+dtgwwzOHvfqUN121dm7U/r6NI2cJcOWOI7/sJPdmydGuitOFTx8/FjdLkzZ+Hu5/w39OULOHb8uLt8DVNm66UWmN8/EAptRT4CpivadqJD6kwX60SZCqQjWoDmwPw66Q1FKxbmu0jlgCQu1JhlnecFvf8Az9tocH4DqRIY4em19g0YB4Bvk/fWv6B2Vtot3wQMZFRrO/zMwB1R7fD9/wt2q8ewp3jV/ht+oYPCf2NGjasiVeRAowZMwCA0aOmkTt3Dn7ZtQorKyu6dO5nsroAdNY6xi4dQzaPLxi/fCzLZ64kX7G8rPpxNUunLWPg7AGkSGnLsukrAFg6bRmjfEaCUgQHBDO685i3lh3wLJA/j//JtA1TefLgCZsWbsajiAdlapTBNZMbDdo3YPOizfyx64jJzqdhw1oUKVKAMWMGAjB82CTq1qtG5s8z0r37N8yZ48O2rbtNVt+HsLa2ZuvWpeTP78n27cs5fPg4tWpVITIykj/+OMnJk+fMGt8/GjeuTdGihZgwfjAAg4dM4NjxxJmCeV9ValRkzy8HAPB/9pwTR06zettCwsPC6dV5kEnr0lnrGL50JF94fsGI5aNZM2MVnsU8WTd7Lb8s28nEjZMB+HWlYbpt1bSVDFk0DGVsIxO7jH9r2YHPArl04iLjN0zE774f2xZuIXeRPJSqXgqXjK7UaV+P7Yu2cmz30XjjG790LNk8sjFh+TiWz1xBvmL5WPnjKpZMW8bg2QOwTZmCZdMNb8yXTFvGaJ9RcfGN7Dz6rWUHPAvkwvGLzNgwlScP/Ni4cBMeRTwoW6MMbplcadS+ARtN3IYvXbxKRHgE64GhlqYAABZaSURBVLb58PxZAAvmLmX1pgV45sv9//buOz6Kav3j+OchoSQhoSUgVemCgBSRJr0XKfGCwo8iCIggwlUE8VIuxRJBpIgUA1IERAkKXEFBUQGVGhRBEBGQhI6BVCDZ5Pz+2GUJmEJI4mzY5+1rX+zM7s58M2b3zHPOmQ0rQxby5pSZ7N/3S5btT909ye6zmpS69F3JrAupvzFdQcMila2OkKbv/3KNruzUJFp8Sd+dsCW53rBFcmX8iqb/JAtV9y5pdYQ0xZoEqyOk6XBMuNUR0nX68iHJ7n08WqJptrdVu898l+0/R1r0i3eUUkq5Pf3jOUoppZS6J2iFr5RSyu25w6Q9rfCVUkopN6AVvlJKKbfnCl+Mk920wldKKaXcgFb4Siml3J6O4SullFLqnqAVvlJKKbenY/hKKaWUuidog6+UUsrtmX/gv/SIyGIRuSAiB5OtKywiW0Tkd8e/hRzrRURmi8gxETkgIrXT2742+EoppZRrWAK0u23dK8DXxpiKwNeOZYD2QEXHbTAwL72Na4OvlFLK7SUZk+239BhjtgERt63uAix13F8KdE22fpmx2wkUFJHiaW1fG3yllFLqHyAig0Vkb7Lb4Dt4WTFjzFnH/XNAMcf9kkBYsueFO9alSmfpK6WUcnv/xF/LM8YsBBZm4vVGRO46qFb4SimllOs6f6Or3vHvBcf600DpZM8r5ViXKm3wlVJKuT1XGMNPxXqgn+N+P2BdsvV9HbP16wORybr+U6Rd+koppZQLEJFVQDPAX0TCgYnAm8DHIvIM8CfQw/H0jUAH4BgQB/RPb/va4CullHJ7/8QYfroZjOmZykMtU3iuAYZlZPvZ3uB/HPtbdu8iU8r7pXkVg+VOXrtkdYQcTUSsjpAu10/o2gbE+1kdIU1Tc4VbHSFNRfK69vFTWUcrfKWUUm4vE2PsOYZO2lNKKaXcgFb4Siml3J4rjOFnN23wlVJKuT3t0ldKKaXUPUErfKWUUm7PHbr0tcJXSiml3IBW+EoppdyeMUlWR8h2WuErpZRSbkArfKWUUm4vScfwlVJKKXUv0ApfKaWU2zN6Hb5SSiml7gVa4SullHJ7OoavlFJKqXuCVvhKKaXcno7hK6WUUuqeoBW+Ukopt6d/LU8ppZRS9wSt8JVSSrk9d/hreS7f4OfzysecRUF4eecjOiqGWUHzmfTWWBKTkjh1IoxXXpiUpfsLKObPnOXTKFfpARqUb0ViYqLzsYEj+vFk/0A+W/U5c4MW3tX2+w3tRfO2jTkTfo4JI6ZSrERRps4ejzFw/uwF/vP8ZJKSsu6POOTzysvsRUF4eXsRHRXDiIGv0LFrG7o92ZFcHh6MGjKO8+cuZtn+MuqRujUJChpPUlISofsOMGbMFAA6d2nLtGkTqVypoWXZbihevCghIR9QpUoF/P2rkidPblasmIePjxeRkdH07j2M+Ph4q2PSpk0zRr88DIBKlcrz/PCxrF//pcWpoEmLhgwZ0R+AchXuZ8HsJbTu0ByAkqWKs2ThSj5YsDLL9uf7YClqThuISUwi9uR59o9c4HysxOP1qDC0ExjD0VnrOPflvgxvv8LQTtzXtg5x4ZfYP2I+XiUKU3v2cxhjuHY2gn3PvwdJqTce/sWK8M6yIMpWvJ+mFdvd8hkzNmgU5R8sizGGoLEzOHb4eIbztevWmu79uxF5OYrxwyZjjGH64tfxyO1JbHQs44ZOIi726h1vL6CYP+8un065Sg9Qv3zLW/Le6evfmDuRPHnzMvet99m1fQ9DXhpAo+b1AXj3zYXs2rE3Q9tUd8flu/SbtGjAz/sO0rvrsxzYf4iSpUvwZMcB9Hp8IADVa1bN0v1FXoliUPcXOBB66G+PrV2xnleH3fkJxpBRz1Ci9H3O5cL+hajbqDZPd3mO3w//QfP2TYiKjGF4n5cZ0G0op0+dpXHLBlnyc9zQpEVDft53kD6O49epWxvqNqxNvyeG0qfrs5Y29gBhp07ToX0vWrfqTkBAER56qDIA3bp2IDz8rKXZboiIiKRDh57s3r0fsDese/bsp23bp9i792fatGlqcUK7zZu/pVXr7rRq3Z2wsNN8/fV2qyMBsG3rD/TqMoheXQZxJvwcqz/81Ll85Nff2bo5a3PGHDvL9sf/y46ukwEoWLOc87Hyg9vzfeAUdgROofyQDuluq/KoJ/Aq7e9czuPvh3+jquzoMomow6co3v4REiLj2NlnGt93m0LcqYsUa1krzW1GXYlmaI+RHAz99W+PLX13BQO7DGPyv99k0Iv9083XqUc7ajeo6Vz28PQgsG9nBncbzqaQzXTr0xmbLZHxw6fybOBwtn25g05Ptk93u8lFXoliYPfhKX4mpmTKrHG3LA8Y3od3g97n2SdHMPjfTwOw4ZNN9Ok0mKG9XmTISwMylCe7GGOy/Wa1dBt8ESknIqNEZJaIzBCRISLi90+EAzh1Mhwv73wA+Pn5cuVypPOx+OvxnD1zPkv3F389nujI6BQfi7h0+W//06rXqkrw2ndZsn4+XZ7qmOa2qz78IHt/sDcaO7ft4eE61YmOjCYmOhYAm81GYhZW93Dj+HkB4OeXnxKliuPhkYulIe8x/o2XyZXL2nO+8+cvcv36dQASEmwkJibStm0zvvlmR5b2dGTG9evXuXIlyrl8/Pif+Ph4A1CwoB8REZetipaismXLcP7CJWJj46yOcovS95fk0sUIZ3Xp5Z2PgKJF+PNEWJbux9huVqCJ1xO4evov53LsyfN4eOfF0ycftmh7jkK1ytNo7TgeWz+RMk+lffJW8OFyXPrB3lBf3HaQQnUqkhAZ69xWki0Rk87vrf0zJibFx86E2U9ybY73AkCpB0oyZ9XbLAiZzYARfdPcdpmypfjj8HESExPZvX0vNepUI/56PH9dsB8Dm81GUmLG3lcpfSaOC3qZ4DVzePfD6fgW8E3z9RWrlOenPQe4GneVuJg4fPJ7c/qU/eeMj09wg45015Hmp72IvADMB/IBdYG8QGlgp4g0y/Z0wMnjYdSqW4ON2z+mWs2qhO7+mRZtm/D5ttUUCSjClYjI9DeSjYaOHsSIvqN5uvMQOgS2wTN36qMkvn75iXU07jFRMfgWyO98LKCYP/Wb1OXHb3dnab6Tx09Rq251Pt++mmo1q5KYlETu3Lnp98RQrsZdo1V716hOq1V7EP+Awhw5coxe//cvVq36zOpIqTp27AT16tVm374t1K5dgx9/zHi3cHbq2rU96z7bZHWMv2nbqQWbP9/qXG7W8jG2bf0hW/Z1X5vaNP82iHwBBYi/fLNxPbtpL822vE6zr97g+CL7cMeDo7uzq+/b7Og8iVKBjZDcHqluN7eft7Nxt0XFkbuAt/OxfMUKEtCkGhe/PZDp/MNeHczqxSEADH1lEFNfCuLZJ16gXOUHKFo8INXX+RbwJTbGfqIXExVLfr+bnzFe3l50692ZLz79KlPZmrZ+jLPh5xn4r+F8tHgNPfp2S/P5HsmKiuiomFtOEJ4b9QxrlrnGez0Jk+03q6U3hj8IqGmMSRSRGcBGY0wzEVkArANS7LsSkcHAYICA/GUokM8/pafdkcAnO7H1y20Ez13OM0P70KV7Bz77+HO2frmN8W+8TPM2jdmy8Zu73n5mVXqoArOWvQVAocIFKVykIE/06UKdBrUoUbo4jZrX4/r1eGa/Np+Y6FiKlSgKgI+vj/MsP3ee3EyZPY7Jo97M8PhYero92YmtX25n0dzlDBjaGy+vfOz+IRSAnTv2UK1mVfjcuuMHUKhQAd6eMYm+fZ6nadMG7N4VSkJCgqWZ0tK797/YuPFr3nlnASNHDqZnz26sXLnW6lhOnTq2pnuPQVbH+JuWbZvyXL+XnMttOjZnwZyl2bKvc5tDObc5lOqv9eO+1rU4u8k+Rlz5xW5sbTIagPorRnPxu1/we6gM9ZbZc+Up7EveIn7c36cF/g2q4F06gKLNa5B0PYFfX1uNLToOrxKFAfD09SIh0t645srjSa3Zz/HzqGBMBivo2/Uc2J0TR0/y8+5fALi/fGkmzf4PAL4F8hNwnz+NWzekdecWFCla2Nlj8FHwGk4dD8Mnv/0kxMfXm5iomyc742eMYV5Q8C3r7ka5SvfTrmsrGjavh4eHBwf2HaRkmeJMnmnvyi9b4X4WrZ3LyWOnmDI66JbL3fL7+jh7C1q0b0rBQgXY+OnmTOXJKq7Q5Z7d7mTSnieQiL26zw9gjDklIrlTe4ExZiGwEKBiQJ3MHUURZ3fq5YgrFCh4czQhJjqWa9euZWrzmXXk4FFGDfwPV+Ou4enpgc2WyLxpiwD7GP761Z9zJuwcYB/D7/F0IEvmrqB+k7ocCD0IwITpY1j9wVqOHz2Z5flEhMhkxy9fiWI8+FAFAKpUq0z4n6ezfJ8Z4eHhwaLFM3n11dc5f/4igYEd6dixFa3bNKVKlUpMmPgSkye9bWnG24kIERFXALh0KYICBf6xEa50FSsWQHx8gssNM/gXLUJCfIJzSM7T05Pylcpy5NDRLN9XrjyeJMXbALBFXyXx2s0JlUnxNhKvXscYQ6489o+/yIMn2TNwFolx1xFPD4wtkd+mhfAb9jH8U6u/42rYJcA+hv/A0605Nvd/BDSpxuXQ3wF4ePpATnywheijmXs/1Wtal+qPPMSrQ/7rXPfnH2G8PWEOf134i1y5cmGM4dD+w4QsW0enHu04E3aO0B9/Auxj+OUeLEeuXLl4tPEj/OIYdx/y8jMc2HOQvd+HZiofwIljp9jwySaWzV8F4PzceybQPmF0yqxxjB8x1fn8o78eo0adavx++Bg+vj7ExsRRsUp5nur/BMN6v5TiPlT2SK/BDwb2iMguoDEQBCAiAUBENmcDYEPIJmYFv0nX7h2wJdhYt2YTK9bZZ8ifPB7Gjm92Zun+PD09mLtyBpWrVmDeR++wYMZiaj36MMGzltKtZyd6PB1IgUJ++BX05Y2xbzNvWjCzl01DBCIvR/HSwP+kuu2IS5cJ3fkTS9bN4+zp83y4cDU16lSjZYemFC91H/83uAcr3/+YrZu2ZdnPsyHkC2YGv0EXx/EbOWgsQ0b2Z/lnC7gccYUl81dk2b7uRmBgR2rXrsHUqWMBmDjhLebNWwLAlq8+cYnG3tPTk3XrllK9elU2bFjOxIlvMX78i/Tq1Y2EBBt9+gyzOqJT58fbsmGD9TPzb9e6fTO2bPrWudygcV1+3L4nW/ZVtPnDzgl5scfPEfXrKSqN6MLRWes4sfQrGm/4LwAnl38NwJFpIdRbNgoEEi7HsmfgzFS3HX8pir92HuGxdRO5evoSfyzcRKE6FSnRoS7epfwpP7gdx9//wtmjkBIPTw9mr5hGxaoVmLNyOsHvLOHhR2vwwezlvDx1BLHRscxfM4s//wjjjTHTee/N95kwYwy58+TBZrMxZuB4rsalPMs+0ZbIZys28P5n7xJ1JZpxwybjX6wIfYf14sDegzRr35gt67cSsmzdHR9PT08P3lv5DpWrVmD+RzOZ/fo86jepS/CaOQB8uHA1327ekerrl8z9kNfmTCBvvry8Ny0YgBcnPE+RgMLM/2gmMVExjHh6zB3nyS7u8MU7kl43hog8BFQBDhpjjmR0B5mu8LOZt0deqyOk6Wqi9Zd7peV07CWrI6QpJ7yJbYk2qyOkqbRfUasjpOkdzypWR0jT1FzhVkdI0/Uk1x0+u+HAuR8lu/dR2Lditn9YRET/nu0/R1rS7dI3xhwC7ux6DKWUUioHcocxfJe/Dl8ppZRSmefy37SnlFJKZTdXuGwuu2mFr5RSSrkBrfCVUkq5PR3DV0oppdQ9QSt8pZRSbi8nXMKbWVrhK6WUUm5AK3yllFJuz+gsfaWUUkrdC7TCV0op5fZ0DF8ppZRS9wSt8JVSSrk9vQ5fKaWUUvcErfCVUkq5PZ2lr5RSSql7glb4Siml3J47jOFrg6+UUsrtuUODr136SimllBvQCl8ppZTbu/fre63wlVJKKbcgOW3cQkQGG2MWWp0jNa6eD1w/o+bLHM2Xea6eUfOpu5ETK/zBVgdIh6vnA9fPqPkyR/Nlnqtn1Hwqw3Jig6+UUkqpDNIGXymllHIDObHBd/VxIVfPB66fUfNljubLPFfPqPlUhuW4SXtKKaWUyricWOErpZRSKoNyVIMvIu1E5DcROSYir1idJzkRWSwiF0TkoNVZUiIipUXkGxH5VUQOicgIqzMlJyL5RGS3iPzsyDfJ6kwpEREPEdkvIv+zOktKROSkiPwiIj+JyF6r89xORAqKyBoROSIih0WkgdWZbhCRyo7jduMWJSIjrc6VnIj82/H+OCgiq0Qkn9WZkhOREY5sh1zt2Kkc1KUvIh7AUaA1EA7sAXoaY361NJiDiDQBYoBlxphqVue5nYgUB4obY0JFxBfYB3R1oeMngI8xJkZEcgM7gBHGmJ0WR7uFiLwIPAL4GWM6WZ3ndiJyEnjEGHPJ6iwpEZGlwHZjTLCI5AG8jTFXrM51O8fnzWmgnjHmT6vzAIhISezvi6rGmKsi8jGw0RizxNpkdiJSDfgIeBSIB74AhhhjjlkaTDnlpAr/UeCYMea4MSYe+y9WF4szORljtgERVudIjTHmrDEm1HE/GjgMlLQ21U3GLsaxmNtxc6mzUREpBXQEgq3OkhOJSAGgCbAIwBgT74qNvUNL4A9XaeyT8QS8RMQT8AbOWJwnuSrALmNMnDHGBnwHBFqcSSWTkxr8kkBYsuVwXKjByklE5AGgFrDL2iS3cnSX/wRcALYYY1wqHzATGA0kWR0kDQbYLCL7RMTVvvykLHAR+MAxLBIsIj5Wh0rFU8Aqq0MkZ4w5DUwHTgFngUhjzGZrU93iINBYRIqIiDfQAShtcSaVTE5q8FUWEJH8QAgw0hgTZXWe5IwxicaYmkAp4FFHF6FLEJFOwAVjzD6rs6TjMWNMbaA9MMwx1OQqPIHawDxjTC0gFnCpuTgAjqGGzsAnVmdJTkQKYe/VLAuUAHxEpLe1qW4yxhwGgoDN2LvzfwISLQ2lbpGTGvzT3Hq2WMqxTt0hx9h4CLDCGLPW6jypcXTzfgO0szpLMo2Azo4x8o+AFiLyobWR/s5RBWKMuQB8in0ozFWEA+HJem7WYD8BcDXtgVBjzHmrg9ymFXDCGHPRGJMArAUaWpzpFsaYRcaYOsaYJsBl7POulIvISQ3+HqCiiJR1nIE/Bay3OFOO4ZgUtwg4bIyZYXWe24lIgIgUdNz3wj4584i1qW4yxow1xpQyxjyA/XdvqzHGZaorABHxcUzIxNFV3gZ7N6tLMMacA8JEpLJjVUvAJSaN3qYnLtad73AKqC8i3o73c0vsc3FchogUdfxbBvv4/UprE6nkPK0OcKeMMTYReR74EvAAFhtjDlkcy0lEVgHNAH8RCQcmGmMWWZvqFo2APsAvjnFygFeNMRstzJRccWCpY3Z0LuBjY4xLXvrmwooBn9rbAjyBlcaYL6yN9DfDgRWOk/bjQH+L89zCcaLUGnjW6iy3M8bsEpE1QChgA/bjet9oFyIiRYAEYJgLT8p0SznmsjyllFJK3b2c1KWvlFJKqbukDb5SSinlBrTBV0oppdyANvhKKaWUG9AGXymllHID2uArpZRSbkAbfKWUUsoNaIOvlFJKuYH/B5CArkvKfGynAAAAAElFTkSuQmCC\n", | |
"text/plain": [ | |
"<Figure size 648x648 with 2 Axes>" | |
] | |
}, | |
"metadata": { | |
"tags": [], | |
"needs_background": "light" | |
} | |
} | |
] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment