{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.3" }, "colab": { "name": "ML - Concepts - Part 1.ipynb", "provenance": [], "collapsed_sections": [ "pB2IzJHL526B" ] } }, "cells": [ { "cell_type": "markdown", "metadata": { "id": "tj8Q-p2B525N", "colab_type": "text" }, "source": [ "[ML Terminologies](#mlt)\n", "\n", "[Knowing the data](#kda)\n", "\n", "[Train and Test Sets](#tts)\n", "\n", "[KNN - From scratch and Sklearn](#kn)\n", "\n", "[Neural networks - From scratch](#nn)\n", "\n", "[Backpropagation](#bpp)\n", "\n", "[MNIST - From scratch](#mn)\n", "\n", "[Dropout](#drt)\n" ] }, { "cell_type": "markdown", "metadata": { "id": "hLnEEb3s525P", "colab_type": "text" }, "source": [ "\n", "\n", "### Terminologies" ] }, { "cell_type": "markdown", "metadata": { "id": "WiOquggH525Q", "colab_type": "text" }, "source": [ "#### Classifier\n", "\n", "A program or a function which maps from unlabeled instances to classes is called a classifier.\n", "\n", "#### Confusion Matrix\n", "\n", "A confusion matrix, also called a contingeny table or error matrix, is used to visualize the performance of a classifier.\n", "The columns of the matrix represent the instances of the predicted classes and the rows represent the instances of the actual class. (Note: It can be the other way around as well.)\n", "In the case of binary classification the table has 2 rows and 2 columns.\n", "\n", "\n", "#### Accuracy (error rate)\n", "\n", "Accuracy is a statistical measure which is defined as the quotient of correct predictions made by a classifier divided by the sum of predictions made by the classifier.\n", "\n", "The classifier in our previous example predicted correctly predicted 42 male instances and 32 female instance.\n", "\n", "Therefore, the accuracy can be calculated by:\n", "\n", "accuracy = (42+32)/(42+8+18+32)\n", "\n", "\n", "#### Precision and Recall\n", "\n", "\n", "Accuracy: (TN+TP)/(TN+TP+FN+FP)\n", "Precision: TP/(TP+FP)\n", "Recall: TP/(TP+FN)" ] }, { "cell_type": "markdown", "metadata": { "id": "oMy0WDAl525Q", "colab_type": "text" }, "source": [ "\n", "\n", "### Knowing the data" ] }, { "cell_type": "code", "metadata": { "id": "nrHLwb2D525R", "colab_type": "code", "colab": {} }, "source": [ "from sklearn.datasets import load_iris\n", "\n", "iris = load_iris()" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "265tGTVY525T", "colab_type": "code", "colab": {}, "outputId": "c3a76a44-d759-46f5-ba6f-ca64f0832e27" }, "source": [ "# The features of each sample flower are stored in the data attribute of the dataset:\n", "\n", "n_samples, n_features = iris.data.shape\n", "print('Number of samples:', n_samples)\n", "print('Number of features:', n_features)\n", "# the sepal length, sepal width, petal length and petal width of the first sample (first flower)\n", "print(iris.data[0])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Number of samples: 150\n", "Number of features: 4\n", "[5.1 3.5 1.4 0.2]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "ObEkk_8O525W", "colab_type": "code", "colab": {}, "outputId": "31729ff7-d422-492f-9d7b-1c5c9d5c3b48" }, "source": [ "print(iris.target)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", " 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1\n", " 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2\n", " 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2\n", " 2 2]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "z6YzTNXj525Y", "colab_type": "code", "colab": {}, "outputId": "e23f32c3-eec8-4877-f18b-ed8613b3a159" }, "source": [ "### Visualising the Features of the Iris Data Set\n", "\n", "## The feature data is four dimensional, but we can visualize one or two of the dimensions at a time using a simple histogram or scatter-plot.\n", "\n", "from sklearn.datasets import load_iris\n", "iris = load_iris()\n", "\n", "print(iris.data[iris.target==1][:5])\n", "\n", "print(iris.data[iris.target==1, 0][:5])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[[7. 3.2 4.7 1.4]\n", " [6.4 3.2 4.5 1.5]\n", " [6.9 3.1 4.9 1.5]\n", " [5.5 2.3 4. 1.3]\n", " [6.5 2.8 4.6 1.5]]\n", "[7. 6.4 6.9 5.5 6.5]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "PTnQX-ET525a", "colab_type": "code", "colab": {}, "outputId": "5fcb0d48-9260-482e-f832-089fb3dd3e4e" }, "source": [ "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "fig, ax = plt.subplots()\n", "x_index = 3\n", "\n", "colors = ['blue', 'red', 'green']\n", "\n", "for label, color in zip(range(len(iris.target_names)), colors):\n", " ax.hist(iris.data[iris.target==label, x_index], \n", " label=iris.target_names[label],\n", " color=color)\n", "\n", "ax.set_xlabel(iris.feature_names[x_index])\n", "ax.legend(loc='upper right')\n", "fig.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "zH4otNh-525d", "colab_type": "code", "colab": {}, "outputId": "5a059983-24da-4af9-9723-be16799473f1" }, "source": [ "iris.feature_names" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "['sepal length (cm)',\n", " 'sepal width (cm)',\n", " 'petal length (cm)',\n", " 'petal width (cm)']" ] }, "metadata": { "tags": [] }, "execution_count": 13 } ] }, { "cell_type": "code", "metadata": { "id": "NZr5YbuJ525g", "colab_type": "code", "colab": {}, "outputId": "7cc09bab-9975-4ff5-9574-55e5eae2b083" }, "source": [ "fig, ax = plt.subplots()\n", "\n", "x_index = 3\n", "y_index = 0\n", "\n", "colors = ['blue', 'red', 'green']\n", "\n", "for label, color in zip(range(len(iris.target_names)), colors):\n", " ax.scatter(iris.data[iris.target==label, x_index], \n", " iris.data[iris.target==label, y_index],\n", " label=iris.target_names[label],\n", " c=color)\n", "\n", "ax.set_xlabel(iris.feature_names[x_index])\n", "ax.set_ylabel(iris.feature_names[y_index])\n", "ax.legend(loc='upper left')\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "DqiUdpO8525i", "colab_type": "code", "colab": {}, "outputId": "cb40a50d-7c90-47bb-9ab6-0b36ba759668" }, "source": [ "# Change x_index and y_index in the above script and find a combination of two parameters which maximally separate the three classes.\n", "\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "n = len(iris.feature_names)\n", "fig, ax = plt.subplots(n, n, figsize=(16, 16))\n", "\n", "colors = ['blue', 'red', 'green']\n", "\n", "for x in range(n):\n", " for y in range(n):\n", " xname = iris.feature_names[x]\n", " yname = iris.feature_names[y]\n", " for color_ind in range(len(iris.target_names)):\n", " ax[x, y].scatter(iris.data[iris.target==color_ind, x], \n", " iris.data[iris.target==color_ind, y],\n", " label=iris.target_names[color_ind],\n", " c=colors[color_ind])\n", "\n", " ax[x, y].set_xlabel(xname)\n", " ax[x, y].set_ylabel(yname)\n", " ax[x, y].legend(loc='upper left')\n", "\n", "\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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13PllVfy/vtWWtBvfvObnHDCCYwbN44bbrgBgEcffZSPf/zjTJgwgSlTpvDmm46eZoYCoWZkbDTveOWlQKno6OjR1sNGJGVlVrnBkAyqultVq1W1NxvXKxUdNeSWQhkfRaQCy6DtUNWYiSVVfVdVd4VePwFUiMjhDvUylu/d6Kh/ZPK+9PseLxQdyhiqWlDHxIkT1c6GDRtiytyorVW1VDz6qK313IUjy5Yt06uuumrofMeOHXraaafpW2+9paqq999/v86YMUNVVc844wx97rnnVFV1z549OmbMGH3ppZdUVfWyyy7T2267TXt6evSYY47RwcFBVVV95513VFX17bffHiq78847ddasWekJ7kIy36khdZauW6pVbVVKK0NHVVuVLl23NG47rJQ7OddHp8PoqHcd3b5dde1a1eees/5u3+798xgdzW+MjiZPPupoOhgdTY+l65ZqYG4ganwMzA0kHB+9kgkdxcricS8wP06dDwESen0qVswZidev0dH81dFUn9v87isX/ftNsjrqZ6CovGSTy4q7W7lX6uvrueGGG7jxxhuZNm0ahx56KC+88AJnn302AAMDA4waNSqm3UsvvcRRRx3FMcccA8AVV1zBT37yE6699lqGDRvGVVddxdSpU5k2bRpg5Sn7whe+wOuvv05fX5/Jr1XghDfqz14xm029m6gZWUNbY1tRbuD3SinpaHW1CQplKDxKSUcNuWPlppUM6EBU2YAOsHLTynwaIycDlwHrReT5UNm3gBoAVb0DKxBqs4j0YwVOvST0wO4bRkf9I5PPbX4/A5baM2bJGbU1NZYbhlN5OhxzzDGsXr2aJ554gptuuomzzz6bsWPHsmrVqrjt3H7XysvL+ctf/sKKFSu4//77uf3223nyySe57rrrmDVrFueffz5PP/00ra2t6QluyDnB+mDR/sCkgtFRgyG/MTpqyAbtq9tdyxdMXZBlaZxR1WewVmvj1bkduD07ElmUuo727O5hy84t9A30URmoZPTBo6muKs0Z5FJ6xiy5PbVtbVBVFV1WVWWVp8PWrVupqqri0ksv5YYbbuDZZ59l27ZtQ4q+b98+XnzxRQAOPvhgdu7cCcBxxx1HV1cXr7zyCgD33XcfZ5xxBrt27aK3t5dzzz2X+fPn8/zz1gRgb28vo0Ob7pYsWZKe0AZDHmJ01GDIb4yOGvwiMqem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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "4ezuVAet525k", "colab_type": "code", "colab": {}, "outputId": "81027030-0e33-4e6b-daba-6764d8c66af6" }, "source": [ "# Scatterplot 'Matrices\n", "\n", "# Instead of doing it manually we can also use the scatterplot matrix provided by the pandas module.\n", "\n", "# Scatterplot matrices show scatter plots between all features in the data set, as well as histograms to show the distribution of each feature.\n", "\n", "import pandas as pd\n", " \n", "iris_df = pd.DataFrame(iris.data, columns=iris.feature_names)\n", "\n", "pd.plotting.scatter_matrix(iris_df, \n", " c=iris.target, \n", " figsize=(8, 8)\n", " );" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "eC39jZ8r525m", "colab_type": "code", "colab": {}, "outputId": "3d872942-9e4a-49a6-933b-e3eb2b2b3ba3" }, "source": [ "from sklearn.datasets import load_digits\n", "digits = load_digits()\n", "\n", "digits.keys()" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "dict_keys(['data', 'target', 'target_names', 'images', 'DESCR'])" ] }, "metadata": { "tags": [] }, "execution_count": 1 } ] }, { "cell_type": "code", "metadata": { "id": "xlt74W6A525o", "colab_type": "code", "colab": {}, "outputId": "0e07ce51-7c26-4e9c-fd54-e8b1ac3ed438" }, "source": [ "n_samples, n_features = digits.data.shape\n", "print((n_samples, n_features))\n", "\n", "print(digits.data[0])\n", "print(digits.target)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "(1797, 64)\n", "[ 0. 0. 5. 13. 9. 1. 0. 0. 0. 0. 13. 15. 10. 15. 5. 0. 0. 3.\n", " 15. 2. 0. 11. 8. 0. 0. 4. 12. 0. 0. 8. 8. 0. 0. 5. 8. 0.\n", " 0. 9. 8. 0. 0. 4. 11. 0. 1. 12. 7. 0. 0. 2. 14. 5. 10. 12.\n", " 0. 0. 0. 0. 6. 13. 10. 0. 0. 0.]\n", "[0 1 2 ... 8 9 8]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "wQksHeum525q", "colab_type": "code", "colab": {}, "outputId": "49e2e4df-e14b-4f30-a9e6-38715fd3b20a" }, "source": [ "print(digits.target.shape)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "(1797,)\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "twyAWmnT525s", "colab_type": "code", "colab": {}, "outputId": "77c1ab36-ff2b-4aa5-f52b-d1edba9c8aa7" }, "source": [ "# The is just the digit represented by the data. The data is an array of length 64... but what does this data mean?\n", "#There's a clue in the fact that we have two versions of the data array: data and images. Let's take a look at them:\n", "\n", "print(digits.data.shape)\n", "print(digits.images.shape)\n", "\n", "#We can see that they're related by a simple reshaping:\n", "\n", "import numpy as np\n", "print(np.all(digits.images.reshape((1797, 64)) == digits.data))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "(1797, 64)\n", "(1797, 8, 8)\n", "True\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "VJeAO1RH525u", "colab_type": "code", "colab": {}, "outputId": "2fa388cc-cfb2-44d2-95ac-8e64f93a862e" }, "source": [ "# Let's visualize the data. It's little bit more involved than the simple scatter-plot we used above, but we can do it rather quickly.\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "\n", "# set up the figure\n", "fig = plt.figure(figsize=(6, 6)) # figure size in inches\n", "fig.subplots_adjust(left=0, right=1, bottom=0, top=1, hspace=0.05, wspace=0.05)\n", "\n", "# plot the digits: each image is 8x8 pixels\n", "for i in range(64):\n", " ax = fig.add_subplot(8, 8, i + 1, xticks=[], yticks=[])\n", " ax.imshow(digits.images[i], cmap=plt.cm.binary, interpolation='nearest')\n", " \n", " # label the image with the target value\n", " ax.text(0, 7, str(digits.target[i]))" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] } } ] }, { "cell_type": "markdown", "metadata": { "id": "Djq06aXB525w", "colab_type": "text" }, "source": [ "We see now what the features mean. Each feature is a real-valued quantity representing the darkness of a pixel in an 8x8 image of a hand-written digit.\n", "\n", "Even though each sample has data that is inherently two-dimensional, the data matrix flattens this 2D data into a single vector, which can be contained in one row of the data matrix." ] }, { "cell_type": "code", "metadata": { "id": "XVd0Y4b_525x", "colab_type": "code", "colab": {}, "outputId": "4bba024e-2d9d-442f-c412-97c5d05babcc" }, "source": [ "## Another dataset\n", "\n", "from sklearn.datasets import fetch_olivetti_faces\n", "# fetch the faces data\n", "faces = fetch_olivetti_faces()\n", "# Use a script like above to plot the faces image data.\n", "# hint: plt.cm.bone is a good colormap for this data\n", "faces.keys()" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "downloading Olivetti faces from https://ndownloader.figshare.com/files/5976027 to /home/akash/scikit_learn_data\n" ], "name": "stdout" }, { "output_type": "execute_result", "data": { "text/plain": [ "dict_keys(['data', 'images', 'target', 'DESCR'])" ] }, "metadata": { "tags": [] }, "execution_count": 7 } ] }, { "cell_type": "code", "metadata": { "id": "Tp0Kdl8f525z", "colab_type": "code", "colab": {}, "outputId": "63ecc5bd-6ea3-488c-aed8-a6ea3d93ab7f" }, "source": [ "n_samples, n_features = faces.data.shape\n", "print((n_samples, n_features))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "(400, 4096)\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "AfueNOOa5250", "colab_type": "code", "colab": {}, "outputId": "d378ed9a-dad5-4303-e292-7c9d53fda6b0" }, "source": [ "np.sqrt(4096)" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "64.0" ] }, "metadata": { "tags": [] }, "execution_count": 9 } ] }, { "cell_type": "code", "metadata": { "id": "EkmC0Nsr5256", "colab_type": "code", "colab": {}, "outputId": "fdcba099-50e9-439c-ae71-594dd4412827" }, "source": [ "faces.images.shape" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(400, 64, 64)" ] }, "metadata": { "tags": [] }, "execution_count": 10 } ] }, { "cell_type": "code", "metadata": { "id": "PBb3tprP5258", "colab_type": "code", "colab": {}, "outputId": "70f0b290-b709-40b9-93c3-da587a27e6f8" }, "source": [ "faces.data.shape\n", "\n", "print(np.all(faces.images.reshape((400, 4096)) == faces.data))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "True\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "3l4JVesR525_", "colab_type": "code", "colab": {}, "outputId": "57f54ad9-3fb4-4ec8-c0d6-f573ca1cbff9" }, "source": [ "fig = plt.figure(figsize=(6, 6)) # figure size in inches\n", "fig.subplots_adjust(left=0, right=1, bottom=0, top=1, hspace=0.05, wspace=0.05)\n", "\n", "# plot the digits: each image is 8x8 pixels\n", "for i in range(64):\n", " ax = fig.add_subplot(8, 8, i + 1, xticks=[], yticks=[])\n", " ax.imshow(faces.images[i], cmap=plt.cm.bone, interpolation='nearest')\n", " \n", " # label the image with the target value\n", " ax.text(0, 7, str(faces.target[i]))" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcUAAAHFCAYAAACDweKEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsvXmQZdd93/e599z9vqVf7zPds89gB0EsJACCpEiJIimJFrUwimXJoiKXZMlKRamSnVhJaUvK+cNO/rCiqFKlKuaPKGU7siWVRMmySYKkIBAkQBI7MANg1p7pvfvt767n3vxxzr39egAqQiopx6r+oVDd09Pz3j3n/M5v+f6+v98zyrLkSI7kSI7kSI7kSMD8D/0AR3IkR3IkR3Ik/3+RI6d4JEdyJEdyJEei5cgpHsmRHMmRHMmRaDlyikdyJEdyJEdyJFqOnOKRHMmRHMmRHImWI6d4JEdyJEdyJEei5cgpHsmRHMmRHMmRaDlyikdyJEdyJEdyJFr+HzlFwzA+aRjGJcMw3jIM4x//v/1Q/6HkaF3/8cnf1LUdres/Pvmbura/qev6TmK8m4k2tu2WQdBmNNpnbnEJ1/fZunWT5dUVbMfBNAy+06sZQKm/YhiYhoEwDAzDqH+nLEtM06QoCgzDQBYFGAaUJRgGRVG87TUNw6Aoy/r1S/VC6vUAKQvKoiDPcgpZkKU5aRQziYZkWWIA+EFYtmZm2dvZZGllFddzuXXtGqsnTuB4HgZQVM+u37N63ur9q7WY+v8SMPXfyaKon6+Y3u+p55zeg1LvVKnXVZTqJ2VZUhRqlckkIRpFSJmTpjFlWVCdZZYlu2VZLjiOV4aNGYaDPeaXjuH6LhtrayyuHMdx3XoP3/G8ptYIYAkTA7VGwzCwzIN4qtTPl0tJtaKi1M87td7qvG7Xuekzk7kEoJAFMpfkmSSNE6TMGY26u2VZLgBYll1alkOaRti2h2EYZFnM7MISjuthmgaGaWIYYApTfa/f3zJNpYPV8+g1CP07GEb9u9X+CNOsz6koSyjLWp+LsqzP/Pb1lVNnXOlvXqizynJJGqfs724TjUcGQBA2ys78Atsbt1heXcV1XdauXuX46iqu79fPY+rzMatnnjozY+r5D+3z1HlMP9c7nUs59W/KKf1T6y8op853sD8kTzOSZKKPsb7pxPFotyzLhbDZKmfm5tm6tcb84jLCstjeWGdheRnHc6EEwzQoS9TZTa1lWn+q/Tdv+3tj6hdMwzw4D267c1PreCddvH2vSkAWyobIvCBLUgpZsLN1q9ZFx/FK1w2YTPq0O/M4rsf+7iaLx9U9q7bEMN5+RtVapn8+/Wf9MAd2EHXm73RWlZhTe1KtXRZF/X1lkyhBSkmRS2QmSaKE4bBb20XDMEohbIpC0mh0cD2XXneHuaVlXM/FMA/sgTDNg/fVtsHUayyhthfCNOt9r567tt1Tuln9ubKx1dfbz7Cc+n3KkrwoKIqCLMnIs5wsycjSDIDBYLc+s79KrP+7X5iWIGjx6Ac+yaWL3+Dn/utfZX5lgSf/9A+xheCHPvtZLCFq41JtviNEvWmyKJBFgWvbuJZF6Lp4to0wTQq9IN+2kUVBKiXjJKk3RhYFSZ6/fQGmSV4U9VfTMEiyjEIrdW84Io1SouGE9csb7K3vceONKzz99B/Wr9FszfLxT/843/zaF/iV3/rnzLdbfP73fg9hmvxn/+AfkEtZv0dJSS4LXEttnWPbpFmG59i4lk3ousiiwNZ/bxrQn0T1mnIpGcUxgeOo5xeCNM8pKTFQF2KcJIAynpUyp3lOmudkUpKlGddfuc6LX36BOJ7wyitPYQm7Xs/lKy9cB3DdgIce/hjXb77IL/13/4RwpsGf/ct/geVY/NBnfwphmMiyQBgmlhDkUmIJAVAHJdXPQtel5fs0PI80y7AtC2Ea2MKqz2d/PCaTOQYGSZ4zjKL6mar3MSvd0Ouq3rcoS7I0Y9QdARCPY/o7fXrbPdYurrG7e5Onnvr969XrOY7PiRN3sbFxmbNnHwBgMNjj9F3n+cRnfgzTNAlaAcISNGebOLaFbVlYpqn0znGwTRPHthGGQV4U2HrtjmWRS8l8s6nP0MCzbXIdrGV5jmma5FLWgU9eFIjbDHWmz1sWBZn+muQ5ozhmo9cjihPWXr/Bb/3mr9T71JqZ5ROf/nGe/doX+NXf/p8JXZd//bnP4VgWn/2FX8AWAsey6iCl4Xn1MwPYQmAaRr3WSipdirOMQn8vi4KG5xGlqTprvQemYZBKSan1rigLZFEiTINcFgzjmFxKkjwnzjKe/P2vsnltk1dfehpTWOR5SlGo4OaNN567DjA7v8Cnf/Jn+MIf/T4/+w//WwCe/Pwf4voun/qJnwRAWALDADdwcS27NuKVPXGEIJWSLM/xHQfHsrQ9qdZuURQFoetiW9aUEy/rgESWBcWUFzENMDDItA4CRGla26RxktDrDYlGEfE4ZuPyBnvru3zuf/31Whd9v8nddz/G1asv8yN/5+c5du44Lz3/FKYw+dRP/ARFrt7b8RxcR91T17JwbZtRHGMJE2GY2JaFIwQNTwV5jiXqZ82mbJ9n25Q68IzTFFmWhK5LlCb1PlhCYE751XGSMElSkjxnnCSMJxFCCEbdEbu3dhjuD3ntmVf50pO/V/8bwzBpteYA+NjH/y7Lp5d5+aW/JGgGfP9/+uN4oYfjOziOTScMcS2LVEpCHXAD9X0LXRdLCFq+j9APFqUZwjRr35DJHNMwibOMTOakuTzkFKfvVmVzKt1OsoxMSvZGI0ZRTG+nx603brF2aY29zW263S2eeeaP6jP7q+RdOcWikMTRmNnFRRozTfyGx9ziIldef/3wi05FA9VXWRQI08SzbUzDwBICYZo42jlm2vGU2lBWF2GcJCRZVju86Ui3ik6qy199rS5E5Vws28LxXLzQwws8hLAoigMls10bWSQsnVjl9NIiwjRZXF7m1RdfJJfqclcHaWDg66w4zXOKosBzbEzDxHccirKk6fukeYZlinoNldECON7pMIgibVgyXMuuHWMqCywh6gNvBz5xqgyZqQMIwwC/4eE1fNI0xXF8kmSiLn55kE1nWcLO1k0Wji0TzjSQuaQzP8/1t95A5gWGZSAME9dWF7WYCmgs08S07dph2dp5jZOEpucSpxnSNEl1ZgfqotcOXcr6HIqyxMQ8FAGbU4GSiuoVSmAYBrmO7LzQQ1iCyWSAaRxG+g3DIM8zXDfAcXwAGo0ZBr19ClngN3wc38GyLUxhvs3AFkVBUemmXm9ZlsiyJE9T5huN+tws0ySVEmdKLwHiLKsdoWUeBBaVVGuXU4hC4DgkWUYnDPFsmzVuy4YMg0wmLB4/Vkfes4uLXL148VDGk8vibQ6x0svpuzB9Z4Rpqp+bpnZ2Jb3JRN0BHdBmUmJptKYSyxSkeYplWhiGQei69TpNwyCcCWnONllYPMnW1jUMw8C2DwwjqOwhikbMLS3iNXwoS+aXl1m79ham0PfWtSnLEluo97FNE1sIkjyvbYojBC3fQxgmE+28kiwncJzadiR5jm1Z2EKQVc9pmiR5jmspxyn1PTEwlHMtS6QOOi1hqoxV2xYvdBG2IEsyTGFg6uDp4MxMpJTMzM7RmmuxeHKRuVuLvPHKKySTBGEJLEvUht21LKI0JZNSJQyGWWdvluNgGAaB42BbFqYBkyQl1xmkJcx6TYU+r6Is6Y5GyLJgnCR4toMw1ev6jlMHupYQKngzTYT+md/w8JsB3a0eRSnroLWSLItpNDqErZCgHTDTmWV76yaGeYDcVdlfpd9V8pDmSpcyKRGmSeA4TNKUtu9jGgYt39JBf0GaF/Udz6XEMgVJmdeZc6KD7VrftS2pkLVqbwBsS+B4jrr/lkCY78rNvbuaommamMLE8V2ac02EbVEWCuKTRVFHM9UlNLTze1vUVpb1pa2yn1JDkGVZMorjQz8DpaBy6qJWm3U7NDL9Z1tnqWVZagMpsBwL23axLPvQazU7DQLXwbWtg2gEFYXkRUEuiwPHrJ+jyqA821HKoI2iukyCSZpS6CjOnrpIPZ1R5UWBgaFhx5IkU/uXayVS36sLXCnrgVEvKYuCJJnUkLNpmoipdUFJFA0xhYnMZQ0VgjLYeX5wuaZfuz4nndWbhoqkkzwnl/JwxJkkxFlWn5HQhqzaKzH13FVAVO15pQsKflYXS2iosyxLCilxfIeyKBiNe7dpo1HvSYUmOI6vYCZUVG4YBo6nHEWuo87pjKB6jipTBO3czLc7YEAZzuIApvZ0MCG0Q8zyXDl4/TymDvqmywRpntd7GmeZgprehmGrOxUnKRXIVOrzUEY/q9dQBRquZdX3ocr2qnO0hKifdXr/K4d/OzxVZcRArbeuZWnER2UwlhC1sRWWIE/zGt4DFUBX2WK1plLvXTl1j8tCQebCFgjLRFii3sPqa5VVOZals4K8dmpVsF2twdT6J0x1ppZQmUhRFNhVwCcEwlDZGaDvLLi2cqRKFw+gTdeyKXJZQ/K2N33HlMpZjo0pTDrLs7iBCyaURYllW2RxRppk9XtVupbmOUmW0RtPSHSAbQmztnWVnfG0bbGEiWWqszRNk0yqwCaXElkWdYCaZBlpru5rP4rIZI4tLFx93lWAL6WkKEqEEFi2IM+zt61LIbcmju9ofeJQGaXW/+lyCge6Welgdd+nA8sqS/Rsh6bn4VgWRVnoc5a13itUQzm/aRSyOn9Z6IB66iLZjoXru0olDYPJpM9fV96VUyyKEmG6DHr7WJZAZjn7Ozu05+dJ00w7j4OMr9qY6uJNL6ZakNCwp9QGq8ocqwsxbcQmaapeX0MolUGdPoDq+2kHCuriBa2QsigYj3uY5oGTErbgzB3n2Nverjd2c2OD+cVFcimJ0hRQEEbloExtCNUalIExjQM4tDJElTJXEXi1B7Io8WxbwWqlco6izlYOjJKhHaxv2/gachWGieVYlCU661UZYiFz5CHFNrAsh/2dHfI0pywK9re2aM3M1oa7PlttfCp4rgoGkuzg9YRp1A5SagPt2zaOECqQ0XthGMqIVsFPZaQrQ2fqiL9yIq6+5ACGUIGXEII8k7i+y3jSp9/fPXSepd6jJFF11aKQJOmE9kwHx7WxHAvHtWuYFqiz3ur7ylhWTsXQ2X/1PJVDqOoUZVmS6tcotTGq9DjLVZCTVtH/lJGo3mfa8TY9D8+2CZrBoXUZpsni6nF2t7cBiNOM7c1NZhcXFXSoDVy1n9WzSL2O6nxSHZxV96LKBCup7qScClCremupf2ZMnXUVpBr6v8qguZaF7doK8vTCWm9d18d1/UNra8/O0d3ZVbW5NGdve5v27GztzMpSZbuebddOuwqslfOnznzKUt21QGdWtmUdCkziNCPL8/qrNRWU1ga1VOtSZ23VgZnSrwO0w7PV+sqyxPEcbhcpJb4bEidjOksdDMNg59YGM3NzyFzS3+2Tp6q+FY1jBoMR+9s9ejt9xsMJw/0h3b0+3dGY/iSiOx7Tm0wYxrHKEqVEGKpUkRdS/a9Rm/5kwiiJ6Y4ndMdjJknKMI6J0pQkz+iNx8RpRqKTD1Xn04F9UWJaJqYwEJaFYZgYU4hMWVbBc4qwBUVeMOju056bU/bPthDaBlYBhC0EslAlpmIqi1N3r6gz4sqZiynfoFAjU3MwqgBN1g6ycvRJnqlEQp+jpXWxOtuiLBG2hWEaBO2A5kyTkyfuedu5fSd5l+zTklZjgb3tTXa2NknihGe++EUeeOzx2ojcXtyP0rRO2aehszqNr7KC25xY9fuVYUoytRFxlhFnGZM0Jcmyun6YTx1MBWVNO+BSZ1Jew0cIGykP4FPXsfnQEx/g5vXrXLlyhSxN+cLnP88T3/3d5IWsDYOqs6nDrJ635fs1/FlFalGakuY5jmXVWRQo41pH2XXUaiKLAzJLZWinHTEoSFjquiZAKQuEJciyWCmHYR78X625LOl0ltjZWGfr1i3iScyzX/0KDzz2uDLclqiVtAoiKlja0tB0BalWBrH63bxQtdFBHNGdTA5lUCq6NOpzrv6NMuqy/r6CS2uoT5iHs41qP6MRcTQ8rIllgRA2cTxiNOoSxxPWblzkngcfwfYc9VqmgaXrTZZ1gBpU0GGS57XBr9ZekRjiNGWSpnUmWdUQq/OpEI4qeIiz7CBbqbJVjRxIrXuOzqClvrizjQZ5mtXEBADLFly47142btxgf2ebOEl46t//ex7/yEdUwMEBUjHUiEquHTEcGPzpOrzK7hOlo/oM4kw7C33OcgqVmd6T+rmEWUN+SZ5Tliqo8xybsBUwGUxgymnmeU4+VQcrSzh57gK7Wxv09ncwjJIXvvE09z30vvqMDOMAbagC21r3DBUMurru5ujMuApocg172joYg6p+qMooSZ4RZZk2qnn9O5V9EeZBvVuWhc42TZIsUxwBYTGz1KEsCizrMBxXliWduWP09nfo9/ZIk4Rnv/oVHnz8cbqbXQBF+kgzultdtm9s093q0t3qsntzlyzNyJKMyXDC7mDIRrfHZr/P3mhUlyOEqfY/yXKGccIwiojTjHGSsH5zh2uXbnD5+cvcfOsWm1c32d3eZ29/QDSJ2R+P2RsO2R+PVPBblUuKkiIv8Bp+jTTdDp9CyXg8oL+/S55lvPrCs9z70CP136ZxSqoRLlPDppVUNqyqP6e50rsKXUqlJM5SMq2XyVRgKafsQC6VbYm0zc9lQaTvZ7U30+WC6kxs1yaNUsaDMbJ4Ox/lO8m7AlulzEjTiB//+V/kn/7yL1MUBU9878c5ee4cUko2ru/R6DQJGv4hws0ojmvlnS6OVgaqWowlBLsjRbSoIK1MG65q8ZXxNQxFBqheq3JCTc9jnCR1TaF+dl3sDpoBtu0ccorCNIlzyT/89V/jH/3szyKl5JM//MOsnDmt/o3O0OIsY/3WJscX5/Bsm4bnkeQZwzgh1YdckQEcIfTlUls8DblWMJgymCoqHyUxrmUr55cp4kOqo95qjaHr1nsatEOSKOHmzTdI06iuEdwu7fYiP/xTf4/f+e9/jaIo+MD3foITZ8+Spzmj7gjLsWjMhAhDZbNRmirIzzxgkyV5jiMEkXYSQE3MqM7CNAwdneZ1Hahac1GWZFmObR+oWzSOCfVljLSzNw0Dy7HJM0meZoQzDcb9sYrQb8s60jRmbe11LMvh8uVvA/CeB7+L9swC8TjGFCZhO6TIFfO4LArSWAUoM4szhL6HGcd4ts1sGCqoWxuGKgv0NBGiklxKsqIg1TVuy1REnZbWudB1a+ixKArmGo0aWq2Mm2KdHsCsZ+85fSgQAMiTnJ/4z/8L/odf+iXKouTD3/d9rJw+jYHBKImRRUmcpdjCIpMqGwpdl+3BgEiTFMpSMXgtHYS1fL8mPKiMX9WSK8QgzXMFfevMKC+KmgQy0TDuIIpJsozAdQ7p7T0PXOCFJ19gfeMytuMipXybPpqmgeu7/NjP/QK/809+g7IoeOy7P8b80nHyNEPYAgOrRoYcnYEkeV4TN2SpGJOuLhEYGvJUOkYdlOaooMXQ9TjXthkO1Dm6tk2ma45Cs11lUais3XHwa4eh7l+lzwAyk8wsddhd37vtlinn8uM//4v8T7/yX1Hkkkc/+j202oroKCxBGqe6Xp4jNes4TzP8ZoDM1HO359tMhhMc38EwFWFwrPXHNAwiTZKqnEGUZSorHsekUUqWpPQuqzKD7dqURUFztonX8FlYmWcyjBC2wAs9BesmGTLLEbZF2Ar1fT3M8JQy5+GHP87n/+BzYMB9732UYydOEY0i9jb2sGyLmYU2aZzW/ybPctIoreFyy7E5trpI6Lp1Zh84Tn2uFZ8CFEmoQucqiDjNZZ0QldqpW1M1YqVfJn5V6slyilxiO5Yi7PV3uX79Ff668q6comGYTCZD7nvkffzmex9WL+BYyCxn2B2RTBK8hk8SJSRmSpEX9SZ5ocegLHFdDQFO1RSry5lOReKlzqbyKacAmtGX5ZSyIM8lliUUhawoSR1bZab6577jIIQgzuIDOnyWk2XpIadYRY0PfeAJfveP/5g0zxX0qSHWTEqGccxoEiFzBVvs9Ae0w4BLGxuqfSDLydIcU5h4oUeWZsy2mqpOadk1SSDXGVImc3KpItKSkpbn1xF4w/XYHQ5VgXkqKEhzRSgYJwnhTIhlWyTJpF7H7fRyy7Lx/Qb3PvQ+7nrgISzLIpxRyl9dpMD0yTOJNIoaeoizDMeyaghUFgXJVM3J0Vm4aRhkRaGMuobBDR3MVA4m15B4pfSZjirLsiRJMwUrpRmWbWE5Gi6zDwyq6zvMz6+QxONDazNNgeeF5HlWkzoefvS7mQwmWPoy7KztYNkWeZYrun9RUugWnUno4XoOtobDXA0ZNzV5RZgm4ySpnUOa52xs7jLujckSZcQdDRsq9EGwOjdb1+6q4KKCo13LItVZ2zSC4VpWnSmpfQHTEtz/vvfzG//L76raqKn0oAoCK6ctXJOdwZBREjPXaPL6S2/p+yaxbEF7oU2W5gqCdib4gUc7CLCEScvza2M/fQcr9rcsyzq4ubKzzWQYkUySOlixLIHQzx14LnMr86Rfj7CErRmot9enDGzH4sHHH+fBxx+nkGoPultd/IZPMklIJom6J76D7RzUQJueRy6L+g6BLr0YJoWGOSsDW2XEgygiSVJKWTAeTChyiRu4WI6NzFWt2vcUSzXOUuVodRDjWIJxcmAfDuqWKCaze3tN0aAoJPe//1Ee/OATJJOEsiiIxwlu4OI3lE5Zjk3YDnEDF8eyGE8iknEMhoGr9XB5aY7QdUl0kOLp++5aFml2UEu2NHSdSYkXeuR5jmVbuKFHnua059uYwmDUG9d7EI9jhCVIJgmNmYZKLOIMS5YY5kFJ4kAUdLq0dIY773svtufghR6TwVihZnmB49pkaU6eS3rbPVWmKUuKXNUrq4wNlKMO26FKXGyFroV1a5hCCKqssmI2749G9LvD2ukahoHt2nihh2madBohslCZ43yzqRAE00Tq363q11ka89eVd+kUNdU8zRXBxjQwhUmaZJrM4pIlGZSqd0lmkjRSi2nONrE9m8S1MWcVgzNK07ruYRiK9n57wd8SArQy7O50GewNiAaK6i+lxPEcbMfCdpXx8Js6oyhLEt/FEAr7jnSU5Hg2/d724XpacUDXrjLXoiyZpCnDKMJ3HLJcMaHCdsA4ionHMVJKbrx6Q2XFtqjbAKKRytz2i5Io8PAdVUiuWhgymSOLsjZKdcQ0FRT0I0UBj8cxMstr9ujQEqRRSmu+VTt4x3EP7VslVf9edXaGaVDkUkWrFaknl0RD5VgrggtlSdAKFcwoCzxXsWorosI0VF0URU3/r+DSCnqrCESTOGEynNRRcqWo5lSdKzVS/KZPrgkJinRjIHwXzw1rAk0lQljMzh5XZI6yxHY8ZbSbOVmcEY0iBnsDHN9RjGMNnxZFwWBvQLHdJ2gH+I2KCefXGZLQWWKa52TaOA0mUU2tj8cx/d0+7fk2wjKReUF7oY1hGrR9X9U6p2BvV9e7KsShgiorpyPst2f50VDruA4o93Z1BuBUUKPa68HuACkl+3TpbvfIs5xJXwUGo/6Y9nybwe6A1nyLJEoO2pc0y7nheXiOQ5ymRGla62Kp4eX+ZMLe+j7RcEISJdiuw7g/wQs9Zdw9h/5un1P3niL8t22SZKJqUOKwaakCMcMwVI+oMOsAKB7HNGebbN/YxnFtbM/Bb/rYjq0gMA1Vt30fpyIM6TptlCb4jnuo/CKLgmFvxGBvQH+nTxqnJJOEoBVQFiWNTgM3cFk4sUCqe9lSK6uhfF8zKCu0pPq55SgHcPKeU4fWZpqCPE/rHlthCUbdCMdzaHQa+A2lW1WABAqODl2XrjMmi1OKoiTPc453OocIe4WG8gPHoR0ERFlGfzLBMk06YVjfM9uzkVmOzAuELZiZbWFbFsOxundCmFi2QOYFk+GEaBRhu7Yqoei9i+Mxh7sejZp7UZaQxSlB06e33ddOyUBKp0ZzhvtDJoMJWZphOzaOpxjBaZTSdfaxHJvh/pBRp0Fnrk3gOGRS1vcgcBzVaqKfZxBF9LtD+ts9xoMJMsvxm4FC2myLoOljrBj1naxaihQzVvV0m5ZgMunfRkD8q+XdcVUxcGyXQlZwpiAaRool6LmYlkk8ilTmuD8kjVLyNK/tWTgTkqe5igIb6mdVG4PJAZOucpZVTa6qyw33hwx2B4z7Y6KRMhpBM8AwjPoSCU19LqSCyxzPxnZVjamQBY2ZJlE8OsSMM3QRvyx1K4Kuj+4MB4z7EwZQX2JhufS2e/VBpHFCGqfIvMBveAStQNWvdE0rSdVlG8Yxi60WTc/QkGpeGyjXshlqmC4vJNc2trj8wmUSHR0JIWjNtxTsoJ1+d6vLibtO8OzXBVITbIrycF02bAV1xF45n2gU4wYututgOaVqbo0z4klMnmbkmcpkg6aPG3qYwsRc6mCZJlKfT10bq+oQ2kA3PQ8jz4lSBbeNemNG3RHjvuoVTeIUoR2hoktbNGebxJOYQhbEkxjLUhljJSorysiy5NDahLBoNivCkMRxfCaDCc1OgzROCVoBeZrXztiytOMxDbIkw294JFFC1skIWwGJbnepCDBVuxCorG8mDOpWkSqjBXB9l6Ad1vXvup+1LOnqdgdXQ5J2u13XKNH67urI9kAXFWsRoJCSLAUpJySTg/UHTR83cGn7PtaiSZykyEyyfHqJoB0y2B2oWk+U1v8uGkwYFyXxOMYLPZI0U8GaryDsyolHWaZaUPKc3eGQ7nhMWRT4zQBhW1i2yhBlluN4Tp155GnOwuJJ1tZUe1aWJYfIbDIvGPcnNQpQ7Z/lKDJUGqfKOcUpob6/XugRjSICz62zilBDvLf3LVdZfVUrrjILoG5MNzTrsigKzK4Klqs2ENM0KfICN3DpjyeEvkfT8zSErFo7PNdhMpzQnm9zu0wmquat2jZMTMukOdek02kpMpKuhVb8h4pHUJ11WZZM+pMDtq2lgucky2vWZVMHblv9Po4l6rpnlh/UlIVlYjt2jQiErqu4F3lOsxkyHE8QtiAeRYpxmuUISyAsSw8BmWZmg+ONZVjNAAAgAElEQVQo5wdqEMpQ9xG7gcvMwgylZoU6vkNztknQDBgPxgz3h7VzlLnEFAa26+CFbs0VqOD8ithXEWwsXYIKXZftTCJsC8dzSPSzKQJdSaob82UmFYLXH2M7Fo6vfJTlqPPd2LhCozHztjP7TvIunSLYjotlK8ZjNTGgUnQv9KAsSeOM9ny7zkaSSF1MmeV1zSbNchzbqpWkguqmG58r6C5KU9I0U7RooQy25Vgk45hwJsR2LPJMYpjUUJSUkixWGWymmZeGAaYtdF/bO0+yOCAMQZpkzM61a0Ztldl1ljp6EkRRR7bdra4qlg8mmKaBaQkaMw0KWZCkGcJSNbuKYWtgkOUZpX7NUawK4oPRmN31PTXJRWfZbuAy7o1wPLe+xP21HRrtEN9vMhr1sB3vNgo8OIGL6yvHJnWhv9QBjd/wVO/YSMFi/d0+aZSSxim2YzEeeDQ7DSxHQb8zizOkWa6yRu0w0jxHgCYiHMBaJSUyL9i9uUt3c59hT0HrpSxodFRDvDVWDjFPs9rJpFFKaRckUaIvkokQJu3OLJ4XHlrbNHvWMDQZK5nQ6DTxmz6dpQ6zx2brjCJPcwZ7A/IsZ9wb093q4YUehSyYPTbLgBG0GjR9n5VGo66JmzpjsHVbQDcck0lZBz9BqAxVxZquhjdUTeZVv2xeFPSjCGEYdV2rKEvaQXCIOY1hqJpTlCBsiyJKMXWg5/pqiojl2urvypKZMKQMAtWzZ4va0GdJRjSMKItCT0E6mBakgsWc3mTMidlZ0IFNVhb1wIXueKx6aG2b1TPHcXRrVcv3kEVZ1xtzWZBGCb2dPs2mMjymYVJwWBcpS5IoIRpKTawrKYuSk3efxBSqdebUPScBmOgsWcF9JsOxajuSRUGkB2XEmRoO0fR9XMtiovuZq5qq7drE45jWbJPWbJPxYKKa5wNX1fiihNljs/X3piWQ2YFhjXTPW9U+E6UplhA0Ow1GvfFtS1OtUQqaLymNgka7wfLCLE3dk1e1xoziuB6K0R2O6G11MYWog4sbe3tcWF7SvaFSo0dF3RM932xibW2pxna3xLYskihRNUXthFSQkwF2jej4tvq+Kl9Fw4hoFGO76n77DZ84GiGsw1C+bXuYltATwSQyy2nONml2GsoWtwIsxyJoBvWdNU2DwZ5KKNI4RWY50SgmS9I6ucgSRWAaJwlN369JhNM96kmW4beUrW8vtJEaAvc9fcfSjKXODKluD4vGsYLgp/pe/YavCUTvzLl4J3lXTtE0Bc32jILAStVv1Og0OLW6zGwYYlsWkzRlkiQMY0U9TpOMwd6A3pZiYXkNlekEnstsGNZEBWGabA8GB0VlXecQGibIPUl2PMMNXKKRqoeFrZA8yzGFYG5hBtd36MzP0AlDTMOgN5mwdmWd4f5QXQYh8DybEyfu4uWX/6Jel6EVoOG52EJF9XGW8cj7z5JLyXpPPXt/EvHKpats39gmS1LGgwmbVzZozbXY3+xiGAYn7z5ZBwGD3QFLp5d4+M7zxPpSgWrIryaD3Nzb59r2Tt1LaJomrbmWgsBsQWuuhRt6nD23WhvdQRxx6c0bvP7M65iGSZa9M14uTJNHv//9WI6F3/AY9ye4zYBTp47R8DwGUURztkkySWjNtTS0WbK/uc/e+h7JWGWVVUN9ONMgiRL8hl9DTImetJPkWT2NJx4njHojTYkOEbZFNJxgaujX0PAZZYkberi+g9dQsOPW1U3SKMEwFQxlWoITd50gjVNefvmr9doKmTMY7NbK3m4v0GzP4Dc8RbDRRX6Z5Wxd32Y8GDPpT8iznLAdImzBqDtk69oWYTvgxN0nCRzVb2pPGa/AcZjtdOhOJlzZVrD7uD9W+zNJmAzGdTZmOTadpRkWTy3R7jS5d3W1hkwzKdkdjWp6elYUNTFgmhBGqdYtbKtGPWSWE7RDRYowLQpZEA0nrF1c4/qr15UR2h/S39tncXVZDWYwDGaWZgjbIX7DI88U+WXhxAJ+w6Mz06wnMHmOQ8vzyIuCb129qjPjEFtY3Lxxi4vfuFiXS8qi5PxD52nNtThzfInFTku1EOz02dy8Vg9UcC37UNZhWoL2fPtQMGOaJu+7/04Wmk1SKRlGEeMk4dr2Dts3thn3xrpE4tKab6mpLGmqa37Jod5oUNnncruNLQTrtoOpg77JQBnnaBQdgu7zTDKzOEOjo4KgpfmO7pUrVS+xtkGJ/lqUJZ7tYM8dNpuWbVMUeR10txfaBL7HncdVMLE3GrHe7bK12+Uv/81TDPaHFBrmbM8r2F0IU9c8LbrdAc1WqAKssmAUa/0SgkEUkUnJ/mDI5s4+xxfnuPLiFcb9cZ2geA2f57a6tOZamJbAb/jc/9g9NDyV/ZqmycVxrO+R4nyEMyELiye5cvXFqf2ETmcJR5N2ZF5g2QLHd3EDdW/TKCGfQgb3N/fZvr6FzAvCmRBH1/8sx2bUU4hHa76thhpo9rkwDNpBwO5woOyWYeI5tuJjuA7j3phxb0SeSaJRhKuz0tZci4bn0faVT+lNJry5ts5wb4hlW/gtn7ljsyRJxPz86jvayHeSd+UUy7KkszSjJjQ4alKIF3jMNRr4jsNWv8/N3T2G+0MuPXuJtYtrtOZa7G5s4Tg+tmvTWeqwfHYZ7jmFLQRzuo5TMRmrmlpRlgo714SboizZX99jb2OfUXdENIqYXZ7lpacV83Aw2CMImjz0XY+xcGKBpVOLzLSbGIbOYFGzFaWUuu44lSnqemboujRcVWPJNFyzMxyyPRjw1pWb7N7a5Qv/8s8YDHa5cOeDbNy6Sp5n/MjH/g6j/pgrL15h48oGjmfXCtnb7vLDH3gU37bZHgzYG40IXZdxktDwXDqNkPXNXV30Ttm6vkVvq8vrz72sJkwYgm5viw9878cAOHXvaRZPLiIzlfns7Kzh3pZFVRJPYtWeoOsh1VimVKp2io3NXQY7qqn1zW+/VZMetm9tEAQNvIavMqz9IXc/ehe2a2PZFm3fp+n77A6Hus9P1Zndpj7LXGVSg90+g70B3Y199ez3nebVp19l9Y5VnvqzP8f3GjzwxKPIXNKYCVm5sKJqwBo+tRzVBxW0A07dewr+4GBtRVkwHvfr7Ni2XfJcRaRJnLJ7U5Fi4knM5sZlbMfDdX2azTmyRAVXAI1Og/3NLsfPr9SX9Pa66N5oRNP36Y3H7G7us3llg/Fggt/w6SzPcvLuk/R3+nzz332Twd6AP/nf/hUnTt9F/6c/znsunGGp3aahjdE4UUzl6rXhNszCUHpq2aoG6rg2maGckWEYjHtjtnpbbF3b4uLzL/DCi0/yu//uT/iD3/ojer0dvuszHyXPJOtvrSMzqVolgKAVqNdKVEY5ihNSS61tvtlUz6eNU280ZjPpsnllk5nFNjdev4Hf8Onu7jK3tEgaJbz2tdd4tv8s937gXo6fXFLnvL9JIfND5K/bpVoXhoHtKMZnP5rw6s1brF/ZYNQd8dJXXiSKxnhegN8MuPbyNU7efYKT95zixPHFmgU7jSxVIosCX0+3GewNGOwN2L6xTTyKCFphXeO7+tJVbrx+g82bN3Acn6XV43ziZz7OYqtFxw/wbJv+ZKKnxkyxwHXv4rQUsiTPM0yhMvVGoJi+jhDEWcb2YMC3v/YKk+GErbUNXn31af7xb/0z/vxzf86xs8uUJWxe3cSIUgopGfdGyCwn7zQpNMGoyvjGeiBInubs3dojbPhqBJ0uPfjNgKVTS7z2zKvsru9x9fLLBEELgNP3n2a21VQj2UIPqVneZVrWU4WmCYiGYdBqzWFaAiEEtqugZ2EJDVdO2FnbYffWHpcvvcJk0kdKSbM5y8nTd9KabbK/2SVLc2YWZ3A8VX8UtoWvOxQqRKYKCyeJQseSPGe92+Xaa9cZ7A6YDMYsnFzk+S99i5KC4bCL7zd57Puf4NQ9p7hw4jjtwEfYAjdwkZlC8uZW5pmZWUTKw8Svv0reNXzaWmjX5AWAVuAzThIu3lrnreffYrg/ZPbYLG+9eIk4HnPq3lMM94dceOQCjmtz4/U11i6usXx6GeYUW6zanGqKStVzkklJFCc1vXvz2hbJRGUqKxdWOHPfadYvr7Ny/jh//H/87/WcvpefeplLzznc/6H7CdoBySSpD72qz93O1LSr6TQ6WxCeyzcuX+bli1e4+I3X2bm5y/mHzrOwtEKrNce3nvsijUabM2ce4Ow9p+n3R7i+y1vPv1Ub3Lnjc8hM0h2PiJ2DdopBFNPyPeYaTULX5daGiowt22J2eZZT95xSeHmc8eV/+69ZWb2DD376Cb715PP89q/+Jh/86Kd5+OMPs31ro37+t/cXUcO5QStA2KKOiHu9ITcv3eTGxRusXFhh4cQCb73yGrbtcen151haPE17cYaHP/4wz3/xebobXYb7Q+XoHZuZMKStnWIVQeeZYuhmeY6wVP322qvXEcJk9vgcx84sc+7eMzzzp0/R2wq5cuVFPvzhH+PM/WfYvbXLy0+9xGB/yPkHz2Nqx2jpiUmOa9NeOFzHURCcrDNFwzAYDfqsv3WLrfWb7O1tcOzYWR767vdR/IXkzTe/ySc/87cVESBJufP9d3HpuUuE7ZDJUJED0jwn1aPbBlGkmIma/r47GpEXBd3NfdIkY+HEAne85xyGYfDekydZn+/xwpMvEI9jdvfWWT1xBy995SVuvnGTc+89x/2nTjLXaOAEAUPNZjV01jht1qtJIZZjY9mCLM0RRUk0nLC3sc/2jW0GewPFvpYZjzzySf75L/9TgqDF8vIp7nvwTqI0pTETcuP1NQxDOcT2fJszZ1e48taaIsdFCU5TNYN3x2NC16UoS84tLvLSq2+Rxin3vvcC7zt7lq//yde5+7G7+Uc//WP8xE/9N3zogw+Sy4J/83t/zh/+zr/ip3/959i4skGaJQjLrhmo5VSNO5kkXHvlKq7v1rXJ9nybG3t7vPbKZV59+lU6Sx3OPnCWJEmYmZ/DdmyWTi/y0l++wPLZZfY39mnNNGp9z2Sua1KibinZH48VXC1VVrF7cxfHc5hfmWdhdR7bdbj7wilkltPd6rG/vUNZlqxducyX/8VXuPDQeU7ddZLjnQ6BhhorRGS613paikLWRtdvKRTFMAyu7e5ydXOLl77yEnmacd+H7uebX3qGxcWT/MFv/59Ylk1ztsX5+87wXC5VkLu2Q6PTxHJsZbesw83tc40G692uZn9KLr98VbFJ2w3mV+eZX53n7jMn+caffgO/6XP1iy/xyCPfxxvPXWLcG3H6/jNwchlLD0YoyxKhSzXVnw900aTR6KiJNzoJKmSBKUy6W13W31pnb+8WAONxj+WlM7huwPFzq+zd2uV7P/MRnnvqRbaub2E5FqsXVti4sslwf0h/t88wjvE1u3a2EerhBDHjJMEyTa6+dp3dm7sErYC7H7ubR+67kze/+SbnHzrH5/7Z/8hddz3GcH/I03/4NOv3n+buh+/Esi2kfQDdL51cxPeblOVtcP5fIe+qed8wDBrthoLjXIdOI6QoS95aW+fFL7/I2sU1lk4t8cjj97NwfBnPC/nWV58GVA/OmfecZfnsMkVeMNwfEqUpW70+u8MhE81+mx5LVciCSV9NfBjuD7FdNUppfnWezlKHlq/aP268vobvN/muH/0e3vfxh7n/Q/fT3+3z4pdfgFJFQbZrYzsWpjBozbWwrIPJFAbo4cJlTZmP0oxnnnmRnbUdTtx9klP3nMLxHP7+r36WOBrx0CPfw8rKHbz/+9+v+i9zSTyJ6Sx1GPfGzCx1WL2wwvHzx3n91jqbvV7dy7be1VCybbPcnqHIC179y1dwfZfzd5zk7Moyw70hN964zOzccY6tnOGOY8e445E7+OgnP8PVNxSZYTBQU16+U49iUaiIUuhIL/Q9PNdh7eIae+vq3x4/f5xH7r+T+x9/GNf1WV4+i+c3OHPfGZZWFrjzfXfw2N96jCRKabUalKgm2unRbtUEkuF4wngUEY8VJX3p1BIPf+IRFk4s0F6cIXRdjp9SUOixY+d45JOPcP6uU8wem2Xl3ArDvSFlWRK0Ak2gop416fru29ZX9VFV/wNsb6xz8+YbLC6e5N7H3sOpe0/heC7nzz3ES1/7Jldeu8TCiQUee/w9rF5YUdBRK1Q1He2oKunq5ulMSm7u7RGNIryGT7PTUHBzUbDQbBJnGfetrmKaigh1zz0f4Ikf+SAPfuxBtq9t8drXXuNLX32uHigRum5NzLk96zAMQ9P4fWxXMatN02BnbYfuZhdhCeaOzXHvB+/jPY89SmduieOr52i1Znnsbz1GJwwUea0o6Sx36kEKzU6D451O/T6mHqfWn0S6uV3tX9P3uXDhJG9+8w2SPKfheRSyZO3STY4dO8cDH30vcw2VWZ6+7zSt1jyT/lj3pakgxdSzS6frONF4zAtPP8sLT32Ll556nhe+8gLbN7a5cvUWL375RU7efZKP/dCH+PDD99NoN5GZZHPtFpefv8zC8WXueOQONq5s8PQff40oThhq2Fr1kia6Jj8iSlP2hyN6ewoB8Rs+ru/gN3zCmQZeqPTo0Y8+RDyJEULw8Pe8n4c/8hhhO+Slv3iZb3/5BZ5/6RKWKXAtm6bv1w3iFYnq9jOzLFWrdF2nHjBw8coNvv4nX+f6a9c5+8A5HrzzHM3mLLOzx4njEZ4X4ngO2xt72LpfeLg/pJCFqk+WJei2hr4ekNHwPNVLGno0Og2G+0OCpq/qr5rb4QhVA+xudllaOs19j7+Xx37wca6/doMXnnyBK2+uKWdYOTsdUCvnMQV5m0LBp76aI1ohTZPhhLWL19naukZZltzz0EOcO/cgRSnZ3LrKK998jrmVeeaaDVbvWGX59DJCCAzTZOWOFYSt5+xmqu0iLyS2sOiEqr4+GI3Z6/ZrstX9H7iXM6dXmA1Vb/a1V64zGOyxev4UH/+R7+Lux+/m63/6db71lReUPbQFQTOo96PVmqPRmH1HG/lO8q4yxdZsm6AdEPiKoTfXaNDwPN56/RrLZ5dZPLnArTdv4QYuf/e//E/40uefrqEq27G4eekm7fm2LlaPuPb6DUUfXpzB17XGqpm6mlLR2+7R3+0TDRVcunhykXFvTH+3z2v9ER/+zIfYvrHD4qlF8jTn6mvXybOce5+4t25pmFnq4Dg2iWbpnX/wPI7rHRy+oYbJVv1NN/b22B4MWDqzTOh7ig323ju5tbvHpTev84nPforWnIIk9tb3eOmbF5kMxqRxihu4nLrnpGI9Xd1EZjm2Z9cTTIRpMIpjbu53Obu4yLWdHe6+cIrtR+/m2itX6e30CFsB5x48x/zKHJZjc+8T9/LFv3iO4f6Q+dV5guZjeIGLENZfOanBC1xsT408CzyXduDT8nx2VvZozbUI2gE3XrsBwGM/8CgPfOQB9jf3CZoB4UzI9TfWVIFcM4b7/VFNzBm0GvWYpqomNtgd1PXUPM05du4YG5c3iEZRbex/8Oc+xf5+n/f/wKN4gcsbr10lT3NW7lihvzPAslRRvchl3e5girhmPE9LRfs3DIOZ9gJLq8d549UXefCRjzJ3fI6iKNi8ssnjP6gmi2RJyuyxObzQ4+vPvKSzMUvVbX33EPPUs216Gj7L05TeXp9hd4Tj2hqGzFi/tslkKWY7DLi4scGP/r1P8frFqzz4sQcpZIkQJk/8yAfpbnWhLPnC8y9y7+mT+I5D2/eZaKr9tCOuiGRVg3pRlmyv77J0ZpmVO1bJ4pTmbJMszVk+s6zO0VNZ3tatHZ799muKMJVkCEuwfHZZDcOOEp554TVVi2k16pGBY13/L8qSk3NzND2Ph06fxviZH+BrX/4W195Y46HvfZA8k/zir/0G4UzI5598BpnlFEXJqXtP0Z5v43i2HullImV2aA4lKDbq1tY1TFPobNjknsfuwQs97nz/nQhL8OxTL3L99CK/9Bs/w9e+8TI337iJ7Vi0F2a4eemm6sdLc2QmsRxLsdulpBOG3NjYxq7G+uUFm1e3KMuScCasSw1pnNKaazEeTLBdmw98+gNs39hWdS3dd3rirhOMe2N21na4OttkYXZGTe3RBKp3EilzTp++R9UEdd9x0w/YuLzBhYcucNf776K71eWP/+jLPPLJR5CZJJwJCZqBYkCnGXMr8zUzWFhCwd2eo+yHY7PQajLXbNIJg3pq0tzxOVzfobfdp9FRfYdZnPHqjTUe/dSj7K/vM786T1mU7N7a5cLDF0ijhBe+9Dwf+dsfwfVdbMut7+v8yvwhXbQsh/ljS3WQWpU1rr1yjaDZ4IHzjzJ7bA7LFjz4PQ/S3eoy6o1ozbWYWWjz7VfeZNIfs3BigWSSsLe+R5ZkBM2AoKVhX03cAlhuz5BkOduDAVvXtnADl+Zsk72tLl2rz8bePp/6+U9x6dmL/OTf/2XueN+dbOzsYRgGH/7RD9Pb6WOZJjPtVv2JMJmUtFrz/9/Bp6al591NjdQZxTGObup0AxfHdxnuD/jWs6+qjZyzaHQaRMNIkV1sFfXv3tol1uxRQ9dM4GC48v5opD5iSkORaaRg1qCpqPZ5phhmo94Yv+mrulaSMrPYppBl3SeTpVMTczRkkGc5XnCQeaiJLOojS0ZxrKIXKWmFAaGrjOVso8Fco8HN1j47ez2lsFIihEleSExLELYVtFMNNhbCRAhHzRjUypZoBm53PK4HALu2peGhvbpn0As8nJOLmKZJf6dPkUsa7ZBxb0zQ8vFCD9t2Eab1tnaFSqqB7RU0PYoTDAyCZkDmpLQ6Tc4/eI6t6weQXFGUTIbqEzfSKMXxHWaXO8TjWE2w0LMuJ3Gi5t/qmqKwzLonCWDUG3H8/HGyOENKBc/0trpsJ9t19DvqDmlpenshCzrLKpMpyxJDmKo53JBvi8xB1TYmk0GdkVi2+hSUU2fuUjWPLEfmFvub+8STmPZ8u2ZMx+O4nioCit1r6ZF3LV+x1Vzbrh1XJiUrxxfZtC2Ge4q0VbXGVPNSHcsiyTJWTx/DEQJX9zkmeY61Mq/6zcYxIw0ZybJUQw1uzzpQUz0anld/gkg819IsOjXY3DT1UP5WqEclqvGDtq7BlnoAQPVRTI7nqkHWrkkQ+vUUEEXnz3UDe1ZP3Qkch8VWi7AVsLe+x/LpJcJWQGMmxPVdhrrXLxpOmF+Zox0EzK/Mk2UpQtgIcTCsobYdpollOVSf+1kWuSJr6IDZDT1V6+yNefLJ52jONlm9Y5V4fNAmYDsWbuDWWZQbuLSDQDMtFUFJRrlqh5htqn7UXNb19CRSbR/Vp6ckk4TO0kxtJyxbDX2wXZs8zYnHCUkrrxmRFdv29g8hKMuSlTtWVNZlqLO4sbdHe76tgljPZX5lnjROMS3V+pElad2vKSxBWRQErUD1ZnrKdtUDwW0bW1gEjkNRHrSxAYTtRv15lraGe9MoxfVdVUM8fjhDSjWbedgdYTk2QeCR6c9TbC+0DwdopkDYAtux655USycxZaH23xQmk2HE+uV1mp0GfsNj9Y5VFQgLNVEnaIckk0QFUjr7c3VPey4lSZbhWKIeC+c7DsIy1XCRVsDC3Ew9h3nn5g7txZn6fFXQoEhpjufoUZoHw/GFaWJZNvd/8D382Z+9o5l8m7zrmqIpDjKDCr9vzTZxffV5e+eOLdOfTNja7dbjtbI0rydzlIWiZquFWPoimwcTR8ryUCO449qEepD3/uY+eZYrI4ZS6uqwZpdnsRyL+YUOuztd3PRwQy9Qvw9waN5kNeZq+mN/rKlG27wo6o96Mg2DRjOo5/15DdUfWfXLZIlSumpCS/URJqY2QBUJIC8Kbna7tDyPQRSzsKh67mSunFFztonjOaycUszeq+uqnqqyNgvbc1hePcmLLx6w+d7WkmEfGN1cN8luDwYKSnZtXNvmxIk5luZnuXr1FoO9QU3nH+4PEULVIS3HJt0fksUZdksZjGikgpyiLJkhoNSsSVAtONVIq9Z8i8lwwmQwobddQVoetuvg+C5nz61y/fpG/RFPrq8yp6qXqbqk8eR2hm15KPoLwzaO59T1Yq/h05xt4vpOXcfKkgzTMcmzvI7Q/aZfD3muJvirj65RI9yqKUOm43BmZZmNwFNsZt9lvtk8xBzNpKwzMFc3aweOIjb9X7S9a8xlWXoe9Oy11r6e63e+S1V9XV3dPd1zs8egsTGxIBMj2YHEVhSQEvEjCH4QIf7wAykghEBCgAKRUMgvCBYIcAQRl0QaJ8SyLXvG40vG4/F4untmerpnqut+/a7num9rrc2P933X2eeransKiS2Nyu6q+urss9de632f97kYpZAeHATTdcn/FIs8uSKmz2sVIYtTmpvlGSpDKQB5RObXYhXXWgvH78toNgqsv3K5QVO1oViNYxMKvEVVQmEbswaQULpIaFMREf+Nt49x+viMoTmDvYMpro0nsIf7WJQlkpRmYiqKcP1TN5Cm0sW8bCrzYpzU5JBYiIMpbaZH+3uYDQc4WSyJvX5KbMT15TrYhY1moyBfmM7G7EfrMZ0SjK15zU+PpkjyBOePz+mQ3Btiygk4W42kCe9mMcjRtMQgFUegJE+RsuWhUZQ92reqDCux85heo9lbFEWo2ganJxcYH4wxHhA602QZ2oGlRIyW5DbOOsRJDKUjIpUZMgCJ05gKThehU9vYM5n55XEcLBfTJMb+jX1ie3PH27G43bUOg/GA2ec5rX8V4dqb17A823oJp0kM27QY74+he7mslLqjqYhITCBJTY+mNFtUEVnETQYwsUYxGSAfFWiqJhQtnfNcYFQwSYx0kAVGKsB2n5wNOS83ZJCSppgcTXH7j2/Tn2m3Y410kAVZV9u0eO3GIU7OL+F9h3yUBzMYIWg677F/vI9bn7/1kjX58uuVHW2CDpA1JnXTkgMFOy4cjcc4nk7JVaIi+NK7DlbRwbhZbthdYhB0QyYharpXCO7vAHV3cZagGOdwjpw5kTQAACAASURBVNhO3rJgPFHsUMMRQXmCwaig8OLJAK2Id1WEhLV28qq61oXDkW8szDLRtjTPZNIPtEbV0rxTCECTgpINrHMo8gybdQlVif4mCSSRJEtQZGnYCF3nwwZYNg1WHNZatQSjvf7Z1/Hs3nMMJvTzdejEIja3rTG7vodIK7RVg5/+Cz+N/+fL/yMGgwmU0i8ciiFSx21jdjp00IYMA0ZZhmGWYZxnuNys+cVpUJcNEVzyJFg0AUCcxVS4eM96JIWW01GEJWdijbokXP/04QnG+2Mi6PCQPknpxcgGGSZ7I+QJzXtMrNH5LmxqXbclDwnzcnctKqRpEWaJ4ylVxDJPyLlY0bFBpEmrqGMdfCYBIE5i3mxJgzgdDAJD1PHmI16T67pGkSR4bbaHzXAQtImjPEfOM9VVVUEphVVVhW4MQAhYlT8rV+gSe/cWtJfgkFnv+bBOQxi0/GyR+MTcmdZtS1FB1mIRUwTSIE2R82EnFnSpiUP2XIStLV9tW1xPp8Fo/82jQ9zdGyLJU5aibPAMwGxAdmij0Zb1fHDzAFk2QF1vdkYT/ftyrt1xWCpGBdq6If/d0SD4YS7iCvP1Jrg06VgjMUlwiFFGwXR0yF9sNkiYg2CdQxSTQYVJSAcbJwZ12WA4JS5EmsSBHCam433Tfh0b6izTBAfD4U6wgOM13k9A4QeIwXiAmIvCyyXpGGXjl5lt05OPKKVgCgOI8wq7sOiYshdVFAFaoa6bkLrTX0v0OSJ0XYTBMA+CfEnzcO02oJdmnjrsRUZrPEtj/v9pTTRZgmtvXNshRymlAyKnjYZznqQjeQKlddAkShMQRZSL2pQ1MkZSlNGYP79EkidB3iUGEAC929bRWSKhwlkco8gzjGcj1FWDel2RY1kEJDk1QcM8Cyz4/iXPVattTuxbP/Emjm7sv7AmP+l6tZBh56ENVbiJJqPhVpO2zXmPy/Ua8w1lg7VsEaZjjTQi2NQ2FsWowJjhIGN0MJ/uL87ni0UQh8daoxjTyxdzXJIIm8nijW5c7NDKlAWpbO8mbbSSbqrruPLYvTf5c2IwDCBYEMmvXdeFNHZJHzdaYzYd7wh0xfBb5m1pbMLmI/6VeZKgapvgaNN1LQ7fOKKutWpICzjMyeboYok4MRixlhAAkT4GGZIkI/cQqc57Vfr8krIURcwqL3fbbAM7V1VFwa1ZHkzTO09kF89JHKuLJfJhHswYkizhrLIOnWOjcqPCS5jmKapNhaZqcProFN51oSonUosKdmWny2WYVcjf7x9cBIPaF9i1SZLh1q3PU+ZjWtDspOsoDHWUIxvmQTLUdR1MrOGZyUr36LGuyDhgPBuFAqHruvCsJQ1BKcUZdRZZkiCJY8QM8w/SFHmvK2zZiaO1FtPBIGQpSoJMP25K1nh/KXoWqA/SFBEiZkTHaKwLiRF7gwHFcSkVaP8qrLU4zCll5rusyPtXNmejVTCqByj/LuttLjEbiKdxjC/+zBfw6PFz6rx5nlXblg6iJEbVtFhWFYo8w/7+MZ49u4vl4hzRFbF005S4e+d9ggx5rpgWKc/R6EC72Gxwvl4THB2bYMc2OZyEtdh1NBoZDwdkfMAIjJgn1NYiGkZoGjLuGO6NMGIEcZzloRMR/WjJI5P+QSfEMc8uKxL7FnNM29VDMS8K6lIUJVmY2EANyeDCOo/KbT1LIxWhYGvBprWITLRToEugwXpVBlb+0d40BDtrpVDbNqBpkaa1lScJ2iIPRMF0GId1NsoyQid4b/Jdh5sH+wHi9p1BnnRoh1nYT+mKUK8reHbMkfdU9l6x2JS9Vp6RFB+bdYkOwHBvhJbdoMQqMWIHMee2UYBiLaiiCPvDITZv0PhIPFvjlIoVgIT9Fx35ZQs6o6IomG1InJ/vOrz5hbd2Cp8/7Xo1+PQKlh5y2PihbtgEWRxglFYEAxh2S48NFNsQGXYJoYfShfmJwJaDNA2VlTGaukm2bZOXA0Dw/FNm+9+dczDGcOehobFN2KAHEqHvBi//l5h0A+DMNjLHFggF2M1tBIDZYADrKXhXKNw6ioN/oRyIYkrguw4taFHoiBZ2nlCnfbJcIBtkwfEhH+YoxuQUYXk2qo0OzhX3fngPWpsAS111bRDvQYHoPAtwI/6eJYWjbttQVSlDELN0iGToy0xdnlEK1GlbG9xWdKR2KsByRXCXUhG7DW2TsnVsCD7q6PPIs3TsbC/LjGZP9Pnrchc+jeMEh4e30LYNRkwbB6hT9H7LOCZhtIThqmBQIAWArN1JntMskOExKYQATlFg2Fu+T/F7ba0N0VLizFG1LaooQpZs50JCqtFqm5wOkA/q1YmpmMaLDAAACf3ZnUc+m3SoI2NwybIK+d5c1wWYNTEazisYdtGRzaJ1lpJZtBSmXTByl884SFMcHM1Q2zZAutv3htZR2pFrjzEx6nrzgvsQQNC+BEXLOq03dYDkOnTBGUnGFk3EIwo22Aewg3pY5+Bsi1gbRBFB1jJTkgBtxT+7SCjBRDbQ2lrscydI4wxKe5d9QkURoCRvU+6Bitqrc2AdG6QcwiueuYq7fI9t9wL+v5ues5RJ4pBmMsoyLKsKlyfbMUOkFQ5HIzI6MRp124ZEm1jTHG5/NIR1PnxvUUSMcIFYtSL9qdyndfzdddSlyWdratJa7j43kluFZ85dp+buUGbXwvTUsUaWJvQs2Y9aRVHYw5xzYW+JsGXOW+8CklFpBevonUqTGGkSo6obIiAlSei6xQijH3BM8hyHrtvu0845LE92o+f+pOvV4FNFzujiUdpymoRkxnVdh7ptOZZFcQVAiyjJkuA/GTbgK/OUfhCoVNKSu2izhPxOGSolcg63+lx1upaIL2D3DbENkn8LAJqWTKmvasP6yc1BF9T5wEa0ziFL4pBPJ76fciBIerz1HohoY8uThNLNNUFy0i1Sl9juzPus9ximGda90NnVxZJnLjQXEEhYxwZ5luLpx0/gnA0/56oTvFRXAGH3ihd0hy5EscjVOrJo8t7zjI1d6dXWJFxHmgN8Ge625Esovq2Ithq7YJigFWLuVIkGrgLUCiD4icrnpfvT6JyHcwQtCZOzf3lP1lpKGWSDIpBmBhgEaFegfpl/IKIMybqktAdhC+cFdYmDNKVNzTnIU5BYoWDaLvmdvZexdQ62qkKXKd1Ezey3/poOazGKQnDv1U22bW2QJyWGulHpHqUjlCzKKIpCVJqkqsh3rXgeJeQQMSaA3fru9ufoErg8SNPgf0pEFpJmaBWFjtUoys6T56iiCHGcQev4BeZp/+f3fy1X5KgkXYMUAFXbwrbEMtWx5uenEMdkcp4WVCSIthKgzXBVkeRpWVUYFTk2TR2yIgGEQluCmCUWLIoi5EmKsiH5TRQhHJJKKUTdNsGBUut374+6pO27HO6XD0PZgxpr0VYNnHhHM8chVgSt7w0KPHpyEuZxkVaB6T8pCsw3G1xsNmENiBXmJC9CAHvrHAoOapbOkMhiFkZp+I6bkI78VwWa7bqOZpo771kXWN/e+TDnl2IXQDgQjTEo8mxHcx5zbJkEAnvvoTWFFUcREGdJgJzJoJ4aJSm24ngbMp0zCuMZXhU2cMJwsDQcshacJz9t6xxWFysM94YvXZMvu/4/pWRIZwdQZVRHdABVPI8TKqxUd1FE1bqECksQcMyMPQA7N2Wdg2O4KeQTcntOac/84FREdkFGvugIkI7Ed4h0FNxwVBTBX8VM5b7oRwEg8+aEc/R0tE10ls1HMHg5LCVWZn843PEALZIEWRIjNTGLiX0IEW6tDQeJzIi0oo4xLYgglBbp1ru1bgN8YRsLtBZREqNcVZQ4X28CJNUnOchWK9CjQNVSuAAIm2jdthzdg+1Ly99119GwO8kpiktp/k65GpbQXnlBmqoJdPMoosgg7zit3jpatM4R+6y1ofvahs1GULGB99sD0yS7LvfWNjg7ewxjYgwGYyLZzNhXVeaSvegamWmamLwi67JGNsiQD3NMCnIwyeI46BKDuTfDk1XT4OZsFnwWJVQYwA402j/gWmbWiXeqzIfl78Bfjeqhw6He1FjnHBdkgdT4AH+O860TSP9/kjQQazKK3jQNGVB7H4ziW2dxuV4HmF/mS6kxMFGEJYvejVIAF66JMVzcacTahHBiKQIb3xKpQWt4nu9GSm0LVnnHogjGbHNM83yIal1hdn0PSZ7udFJ0SG6TZ7I0IZZi3aBcbjCcbKFTeB8gYTlcu65DzpaINbNqJeg64Q7f+m0As0Cwi7IK6RhpbIJ+Tjb5KIpg7UukQUZDaUJipNjod+RC0Ot8RxyHOAnfSRbHgY8BELw4mA6QpTRfFWbwqqpwuVmHdBNxxQI4iYXnwiEOjGFJOcjXdQ0dqaDF1WpbzAjbXorW/uW9h3MOjr1XJeIqUip00EopWGsRm9781TrEqd4WYtgmm/RHIeJmBoD8XnkkJZFhG+ZyiEF/Y7f7haxPadISTY0NdfkeKy6U733vHuYc4vCjXK/YKaow00qMCXlx/cOu5u7ReY8izwJLM4nNdtAfx0j4xZUvpOs6lHWDhG3EFB+IwScxijCejcKGDYASFcaGug2GyZRW4cDt/135VTPs1786gOzd4iRUjxkzAEXQLxWkQGcJb0JZHNPMQW/h2f5ccr7Z4Ol8jqptw8MepGkoHK5PJkjiGFXT0L/JXoVyMMoiGuRZ6Ow8v9zryxWU0ohj6squzt2kshOtaMqSFNnEu65Dy11v07The+m8Z8KBQcdzYWALnYjhd79L6P/70kErtT3oZB7hWouGP1ufYCC/r8xV+MaHg61/tW2NJ09uQ+sYk8khiuEoFETyuaTiVkoFKrwynIKSEmljvD8mpxkuGEIHy4e9VKSnyyW0Ujgaj5ExcQWg7kbM4vusRMcVumyQUiXLPL5/GO50il0H7xxlHPILH6wPmZauU1qnhskEksJBazQKbjmyQaWGLMvWdY3F5YqKlCxB6yyGaYbE0MF4NB5jlOdU3XNBQGk1Ovz74zzDpm7Cu550Hpu6oX3AxHCuhfdbYwy5jEkwm90Ih/hwOOVcShM2NrkiREjTJMzlZ4MBns3nWF+ukQ6yMG4AaCZYNg3/txTLssSmqlHbFq/P9mH4mUrxJ13S1avlg0s+h2MZVetsmL8KyaZur2ZFInSKfXQqNYSiyM9Mk5iQEi7Sxfd2kNJ7frHZIC1S7I2G2BsMYLRCntDM+mg8xtlqidq2IZJN0jta7vYSRu0ACmlvmFgnCJXtyKM41gZGGYB/hox0nHUvvH+2sbCNRVO1gcQDgJNArvzZHhKS9vIwZY3XZc2FKY1ZupJIVhKrpZVCAmooNr0YM99t7eBGWRZ4GRkT4aCIS+08kPQIZIIImNhgef7/E3zadVtYcloUcPyy97s8yUScDYch/FO+yDxJkDHD7Nsf38HqYsW+nCZsXgmnEURRhA1XrnIVA6rqS3a/sdYhTeLwmQSW9V33AnXa89wDYLjj6lxAKRRpgmGW4XK9Rs7eh5EiiYgc6AKHWOdeSPYwWqO1FhfrDVQUYXPRYLUp4a2DY30OWUABwyxDkSS4Pp3icrNGkSY4X61p1mg0BnEWutD+i+i9B3yH84sFbt9+b+cerkpQ0jTB0a0jlKsS0ym5kLS9BbVpGorg4YXT5V3QKiqZxWliw+VDmhPVbUtdaS8FYTYcokgTnIBo0lEUwTsHk+Q781+lyPS45czEJE/C3DNOTJgveu+pi6zbYD91VZIRRYro412HslxR7BBHlUmXYWK9E/OU5AmKYY6TByc0D1UK44Mx/zyK9+ofLF3X4WJNTMI3Dw/x8PwcVdvitb09THlGI8VO21sP8jJq2fgYEXGesiflpX6ZGJy0lC4wJGvbhhBgKcSESSqJK5IDCSDM4XN+vo21WNUVThZLPHr4nNib3FU56zGaZHCdDx2EsL83dc2wYoL7Z2eBYGadR5EmcJ5IEcKInW82WCxO2fLsRUOJOE7x+uufh/fUkdTVmmj6Moti1CXjQ1669SHHN509uyCJTbLt6HMJRuZ5b9NSHNbRdIInZ+f44cPHuHG4j5QPXtGN9olIIbVH+As8a5f5HAnLCXqUjvHq1YE13DKT5kO34YMWoG5OPrdmgpTiA79Dh7PlCpfrDX7m85/BMMtQW4unl5dQEbFX371/nz+nQ+ssHZYJ7UcPzs9xbTIJZJyyaUgHy4ekiiJ0toXzpIGVgkZMS3xHnwXcpYf74sOoWlfIh3nIJJUCVdLtbWNxMJvsnAP9X7M4xr1HZ1jP1xjNRgASKKMxPZxgNhxiWhTIkgRlQ4iadK6Nc3j72jWUTYNNwzIPY5B1fieg3fkOWkUBtu/nUZZNgziNcfNzr7/w3D7peiWbN8/CYYBnCIqqbplXSaqFkBD6Wj+Zr8XcQouYE6BDSimFJDaYFpSPqHtfsGwiUs0Jpmx4w83iOES8ANgZvEpck2c4LQzs/XZxC0Ta2L5OUdHBlSahK+5DPK6jToCG+FS1rqoK87LEsixDVzcbDZEXGZKMXEwkRTzMVZoGm7pBYwk2GGc52qrBpMgx5BT4pNfheUu6z7NHp7i8fEauNq6F9zb8T67z5xf48Bsf0vfAm14U0eeXhSeHpHTByugtzdrQ0HxSkHVYzSxHef7ya7/rId2VQqRIG1awDlA2n447v0gRHNzvkpSmPyMMNe+ZNMU6q/5FXWsMEyfB7o4s7bazNh2b4IAi0K7vyCh6/vwSi7MFsZa9x2xAkoCavxeS0FAnXXPI7WwwwAVrc+X+c07V6NPtXa+LlC5RZuMAwuYqgv/+JfBf1dLaaqzb6aLEbUfegw1b7m2aBmVvFNGy1Ke2Fpu6wXPWDQMEhWuG2ZdVhUVZhU5SOhiZd8p3TaSc3ZxLkXVY52Ctw2a9gNYG1jYcuru9N+89ynKJqlqjrjdYri5w8uAkjCMEQRG4OmMWbWI0zhZL5MMM0+GAZ5sKt/b3OXbO9cgyFH3VWovRoEC5ovvqOlrfAjv20QBhPAII0GPJxaLjrl6WqBwyfe4DfRkEewocLZuzVlQQ5UlC1mvOhfdeKRUIfFVDkVdaK8yGA3zw+DH+5n/2P+Af/u+/hscXl6EgB+iAfHhyhvlmw+kSOTcJNVS0nSULdJowpGmdh1bRzvtqGG4MjGjrX0jUc85y5B9/Z9bB89qImNmujNp2w/xZY5bJiBytXJXIhxmjR2TgIkzpIk3YQm/7vXbowsxb9nth0OpIBUJWhF0oWA7Eht9bgEzoL55e4Ee9XqlT1Jyj6LsuhEA2db3z0GRh9dv6uAdNtYzloyOBdZollNmn6Iac94hBw/b+xiuMsLJpKMyWf69128E/gOBi4PhzykC6Zcx7s9zsiEHl7wDbTm+c5wE6q9oWRu26WIgZcceLrW7LsAE671FWRHyQw3KU50AO7LFDjmJCztPLS9za38fJklp7rWhjeNJYhg5qNFaFDdAzJAmjKVFgeYE4SaGUAbg67QcNL+YX+PL/+vfw7/3X/zHl+W02/O8jdEJyP875wPxs+cVKDIWdjrIM98/OdkI8AdpcQxK8bATcoTVlg+GIIpwqQ9i+bSgZXNI2ZOAOADbamhETS5aCQ13rcP9793Dvwzs7azGKFIp8BN95nJ4+BECyHDFl6Bz9jB2mMrOebWOhY4MnHz/BcG+Im9cP8cHjx0j4mTXOwXQddBShYPcZCZuVgmLIa1CejRx0AvP0HWta54KWrs8+/STbMG8d+3om4X0jXSRtCJRUYAITkrx66c/3iT3SVazqCpv5GpEiu7ckI0eUIktxsVwFFyIAuDGd4GA0DoQUAGEmtz8cEamIq3TptBJjcPn8EmW12pLVXpJfF0XbOVSeD/Hhe+/iL6m/iIw3u8A10OIgQ3PMNIlhckJZRlmGVU3OQMuqwijbaiKNUnCyh2iNfJihqhs0mQ1FrcxeOz4p+7MpmUnSjFSFA1s6v7bHBr566ZgkKnSflJeplIKOfJgnKyA0DHJ/sk8RUz3G44tLfO3X/gDf++M/wuHBTewf7+P4F74U2KIPHj3DL//NX0JRjPGv/42/hp/8zNvwzmO+KTHJiy0Po22JiyHQd0cwasR7af+AFv6zs26HQyQHbFNT+LizjCh1xBollyKD2OjQGNW8b8vstubuPGGXHilWpSHa8lQ8zxMlTkqF2C4hwPU/k+k9OynwBFlxzCWwzhFpbVVtdes/wvXqjjaB0UYkAtHLyAEkLh0CQ/W/4PBBHVkvmcRgMhyE6rRmHVjOMzY5+X3XYc1VcMUQiWw+0j0CCKJWqcD7Qs4+07K7AhMACIdxnwwhm5ZUH2LzBBCMJAssjQ3mmxIrZiBqrUOVM8wyzIYDKK5ucmaGjbIMidZ4cH5OJgAJkQmezC+ZxWuZBUiVc8IDd2U0YB3uvHcHzlvEYIp8RF37Dnes67DZkCuIzII7dCFEuWraAPl57+E6H2DFJDaB5dhYi/nJPHR6zhFDta1bgk+4E5cqVGQZy8UaB7NJgJgrVOi8D0Gowkr23m81kDklc4fMzq7D17/6m+Hg61/WtUQuiDM8e3YXt978LL00RlGwbtfBcYyV1ip8vtXFCvvH+3h69yk++Kcf4O0vvBXgd5nHffz8OebzFQ5mE7y+vx+6QSHOyPeLKAoHoPNEwQfIHQcgyYVUtTLnlsJR1upVso38Xs3QrCSvW+cBjaBhlA2oP5d3gRxEjEPH4mhxQwIofLVIE8TaYD5fUahza9E2Fh8+eYqqaVGkKd6+dg0Pzs7IiKMsUbVNGC8IK1Azy/rk4QntD9rAO4vOuxes3vrC8DhOcffud8IBKF1obAxyz+xEJgod7+1BKYXHFxf4mXfexrfu3sPjy0sohrzlPZ0WBZI4ho4iPJ3PybTBuvD7UjBrFcEog5rJI1rRJiyH3zDLCGZUCloKc0a4+nuAXEqxXVukQqEizNiWOx1hmEuX32cuyx7mvMcPnj7F5GCMv/Y3/joOXzuAcz6gSI/PzrA4W+AzX/gJrOcb3P/gPq4fzujdyVJY7+ggjyKM8hy1taiaNoyThKexFltC7uSFNyHruX95J8HUDQqfwzsuaoUj4BxiNhlZ1Q1io3ds6AAauURceHe+C7rD1lo47zHJCwyzDPNNCQ8ubpRCzfyOIkmomOBZasO6SdEiSnHWtG3oGmXPca1FMcrx2T/zOeCXXnjNXnq90qGYp+TWsqlqTPI8MK0Elij5kCybBp6Hp1LJ1tYGjL2xFm8eX8O1ySRAjtY5fP74GOc8w0mMwcV6jfPFEmlKFeL55QIt/96IYRSBZ+VgFMjRdx1M1+1s2J43dW/9rqMNb2rWORQp+QsmRkNFKsBitW1hvMZ5veKZylZ/drZaMRsROBqPkZoYP3jwGOdPz3HjU0QuePf9HxAsejTFZrHBZz73Jn7yzTdwulwhi2M8nc/xu7/+DbIPu3mA54sF3jw4CNTqqm2QdGS11BmNr3/9V/ijd2ia8gW2H0Ab62J+GiyWbOHRdexs01EH27qtkF9E2I21cJ0PaeNV20IbhZoH40FvyBtB6zhouGm3xKDpAOv5GvkgC8/ITAcch6OhwVZ4vDlY3gi7DuFAayqaBzx88H1k+S6lOgLp3RTT5h88+D60NnjzC28Q/JqQ7koqWh2bkHh/8zM38e5Xvo2yXOPxw9v4P//2Bj/1L/8Ujm4dYTgqUFY1PnfzNRyNqWP6nT98D9kgQ7Uqce31ozD3FhacICIAwUeaD8r+vcklhaN0r32oX9Zi6Jg70hICCI46wLYgE0KCsE6JhOHRlCVV5yzn+PT1a5gUOb7x+++jXG4wOZzgO9/8EOv5Gq99+jVU6wrzkzkWp3McHO/jIc+8/uj2x/jWr/8RvvhzX0TbWDwfLfDGwSGmg0GYw2WcE/ruV95F21RI0wIqLfCnXVobFAXNKWn8QVCY467Y6C0k973b9+Ctx93v3sV3/+AD/OzP/TTPVC1u332E9Zzu6cMLikS7/qkbuPn2MdaXa7IfS5Nw6FnnoCMVvj+lFFRE32mm4yBfkfGQPLOKGdvy/uw8MjDa0nmebanQbcq7paIILc8T5ZlTI9AyoSbBnR8+QNtYTI6mODjcQ9W2GBWUc7mua5RNg1ufvomb77yGcl3h/Ok5vvvtH2A0G+H1a4d8EG/JaYnWO+YOmhsPISnJ2o1Uh7Ij/fFV+NS6FjV7BZerKniWin2lrO/WkkJAyFFi7rJpGmxWJRanc4xmI8xu7GN5vsST209oBPS517EsS7w2m+HaZIJn8zmeLxYBSr9ck8XfwWiEjD93rF0gG+VJEs4UKXqrtkHdbuHT43dew09/9h38R3/qqqTr1eBTpUi0zTMWguK20UGJQBfGME2aIRYgkEY8/xwarDb4w3e/H17Ozx8fh47JOofnpxc4f0zV0Z/98/88LHcQarqrb5T5TIBCtAaYjt0PLfaOxOLKqBdEqpSS4VC3lgfzW32fwAyWiQ2NJVF+zd2NVrSox3mGgxH5MR7tT7E4W+DB9x/gcnaJ6eGE7ZA0PvPmTVxuNphvSjTW4uOT5/jwDz+CbVoUY6Kay2EYqNKRwqpi+6g4RlWtYXQM/RIphlykPYrZImkLT8qGLtWjUPSFTdw6C9s6tJ1FliZI4xjOElHIxIZmc6xRJPYjOZsENqpR0B1Tw5stDB4hYgYbfT45LAFAdSTXkM/Y+Y4G+WkCbXaZp/TDouDT6D1Vjk+e3EZTfQnWWuhWQxkVrOoSOYCNwfGnj1GXNRZnC7TVm/jgj9/DN3/V44s//0XcePsYh/tTFjZTEffaG9fx9NEJiskAbx0eUkeiiT7eHx2I40zFMFvCh5a42gg8L39X5mD9uWoHmu20jUWcJYgQhU0uaGG5MhbimMigSLMFWEeM0UlOcD2tzxQnX3gTd75zF/c/uA8TGxy8doB8mLPRs8H0aAodG4p0O13g6d2nuPH2MQbDAtY5jLMcmkcg8j4DzLB+pvCPXwAAIABJREFUcps/fwdrm5d0v9vDPkBmPErZbuZUwI56ha33Hteu7ePh/afYu7aHclXi40dPcesGFSfT/QlpHRFhPCE28fx0gYe3H8M2Fu984a0gyjfQAeKWdwveh1GQ63yYk6YmDhtsrA1i/ixR9HLYWxkV0h6MikIHbL0jJiR3w/15JB1UPSedQYZsyE4/3GA4TwTB+YaCAmJjsFissDxfBNj71q3rFBxs2DhAb/1ShXMh77+gcn0GrkCf2xXI61kbtG0VoFNBb6KIWOSeWaTOEhSbxCa8M0JsrC3NI8tVhenRHqZHU3zrN76Fx3ce4K0ffweD6RDD6RCjsoTzHvfPzvD4wTMAwI9/9i1smibsVyqiQAVBWPoOYrKuaBZM90lIE5APshdQiz/peqVD8fGDZ/j6P/o6vvRXvkS4tPc7DEwhxEiV0vIB2drt4SEU6d/+6jdx9MYRnHXYu76HKIrw6OIizM7WdY315Qq2dTh9fIaP7zzCerHG5GBCZssMkfZp1IZnOaGTYdKPPPTWkWF353yABfjbDCQbmg0iDNTJoaKF8xrg/a9qKRonjbcsOdEbyaLIkhj5KN85DMVFxWiNNw8Pcb5e4WSxxPtf+w7OHp/h1o/dwng2wvhgjKPxmEgtV2Boo3Rw8sjzITynDriXhmh2iOMUbd2gYD/V1jkUXMAA9GLGEWmVcmYxRohCNJBLDMPdZNOWpgna1sIkMbRROByPMcpSLMoyWL1pQ5Z+3rkAsfbhKZEpBMlB76WsOXlbpDeb5SZ0e/1rK95XzERVWC7Pg/MPPdaI7d22G0CidXDf1+y3Oj78UoB9yWdz+1rIwfP6resAgILnG0opmjtyVeyYGi4bbr9AE0hTxPGBQGZ3TejDM463ji/ZIIXhfELrHMDmAka6GZ7Xb9nRGnlCI4Nxz7qtSBLMhkN0X3gDbcPzLqOQxYR6zPYniLWmed3lGqePTrA4W+DGW9fx+myGIiXJQ8LMUBkztM5ifjrHYnFG3zmilxyIW2KUPDtZezLeEI2dzP0sz+Bqnrnlwxxaa+wf78O2pPM9nk4xZC1b6yyqukG1rsnsPk+R5AkmRR66UHojCH7rF8typSam4Nt4a5FG32kUZruSDL9zb/SDdggf/dljB5pPJ3EculJhTgrrd13XwTlGWJ6IDcCaZlmHm6omfbIjb+LRbIS94TAQvuTQt9GWARs8cnldVwCahvSLNe/VdU93K5e8z5SYUyMfkUZWac1OVnx/POcTQ3w5FB2fD+PxEMuzBYpxgTvv38HlswskSY6nPNMfzUahiPjovdt48P0HWJwtcHR8gMvzBfaHwzA+CM5iSsFEtB+6iIqOiglSUkBa5yhAIo5DwfKjXK90KK5Wc3z5//glfOmvfCnEzhTyJTCUSsxChh1AeLLvvbTyYJI8Canwg8kgJDgcjSkLa16WUJpyxW5+5iZOHpC59HQ2Dno7mTnKCypwLrBd0IFZ5Sh9ouuA9772Ps6fne7cWx86lRmA/HejNGrYnYcSvkA+eIUIMd+UxCqLFIbTITaLDVJx8kniwJSjiKoG54slnLUoxgUdiKybI0YWwQfDLEPJOsayaTC/WAJ88Hvvgk7xZZdSCh+/Rxl/265zd9bb8vdmewWGyDJIJmExmm5fvI1uiEBTNzgYDsP3rSMFxOStKk4Ytm6BUR4G/YoXcKrJp1OKiLbraKbH7OC2pvnpo+/ee6lDSsQ/h+7BI4po7dmGTAiSlKrLpuJInRRhM6/WFWxjYQyFTu9d24PSCvkoh2EY/WK1CogHsGV9iluI9T7AmTAGNesGI97oZfYuM3HFHVYo2OT5dbs1bKjXeR7af04qilByzI6KogCDiTRD1qzM5UVaAlA3MM4zLMoScW7CbI10mDQDE0H4D8sGoxlJVcYHY4xzkkIJK1zINY4LqJOHJ2jaGnFCFfmO7jJ8/hclQwDNAcUtSsg2sp5qa9G0LRarNWzTQhl63teu7VO3zgWBiiK0zDJWRqFr6TNkA5oNDlN6f8QXE2iwqmoMsxSx3qJaURQFzSBBi1T8NkyacYwAtFcKGRnFON8FhEeId8KojKIImg8KOUCsc1vIm9c9yYpaDPcoaLk1tL80rQ2s/aaqYS2t3+F0CBUhzGRVRG5Jwp4W9EKeXcmhAX0It/9rfzGSWQFZ0nXMsJV5vxiKANQlZymTt3hNGqWQ5XlA8Y7evIbHP3yMYpTj2lvXkQ9z3H3/Dk4fnuLgeD/I8vaP9zE9nGJ1scTdD+5hem0PMz70ZdRzteszWsNZS2kbvUKmqikqTAzuf9TrFYk2HcpyCRObHXElgEAmkBeiatttOjsvRjENjyJKAtcxZfOJDlBYpYuyBEAvZLUqQ6TQdH+Cw9EIY/aYFN1Wx/Obvr+psAjlAXU8o1Ja4fe/+o9Q12Xvtjq2PvNBK5Wwy0zBD0Pu4Xy9IjZgkvBipI19VVVI2fKs5kMwTxKYqcKaQ3ZNorHalNsCQWvkWYo3fvxN0iwdTamzdeJP6MOBGEXbaKK/9999GVk2CBtsVa0+4XlFcLbF13/jN/Fj/8KPbf05e12G6r00HYjgo6Io2LQJa+/2d+9gvD/G8nKF0XRIYdGDAn90904QN69XJdbzNapNhazIcProDOPZCPvXZjsi9JS7d/FclYJG1o6z5IbUVi2++k++jEiRA87VtQiwXlFpOO+QJhm8JwegumxIIJx3aOsGc3bOQUd5kVEUIR9TJzU9mhLkyxX1sqqwNxiQfZrWAc47HI+hGbYUar/RGhETqmq27nNcOasoCpT0mrWGAAJlXIT/6B0inokIcZpQqof1sJELBCDpTh0cfF1vfULZik1o/gKvVk3DJtLkc7o3IMRA7kFHCsM8CRCV8x6j0QCRVrjxxjXsj4bBMHuQpugECo+2gvj3v/YdeG8RRckndopkGWZ7jE+FPB/i137ld/AX/vKfo32i97PLpsGiLEkSs64CfB+ncTiUQo6iUiG2zXAiznA6wP5wFNAPo0nzSKzrGMgQEKGYSXF5krBhh2gmueiwljxqu61842WX2F6KBjHjeZ7MFqUok0SSqmmxqmpydXLkZDPeHzPxjLoctMBa6y1y0zpESuH47WNM2GghT1Ks6gp5kgbTeq0UzpdL7A2KnYNE7Ox8R2MScsxp0LSWXHl6a3ExP8fp6UPs7V1Hy3wBAEzGi+ATAxNpZqBKlqQPqJnROsh8XnvnGMdvH9Pz4vzIt/6Zt6C1RjagHN5BmgIjYL5aIx/n+OzNYxyNx5gWg4C2EFFza6ggBaj8t01H0P2mIc2yZKP+1lf+8BOf29XrFQ/FCJPJEWxr0TIrUWYW0rmhB6OGysx7bNyWBSYLyzGLyCe00DdNgwJbz8C2bnvGzWrnZeu6bse1BkCAdOXlEgi0btvAbnStw6bcdTfoQFi1LKqGX7a+8UDFbNY+Ccd3PryYVY+VCBBNeI+tmy7MNgVikPO8xHuUbus+v7c/IbPepgnfrQjC+1fZNPjoo2/sBAt/ktckfW8a680CF08vkL2dhS5FcacA0K99QblSCooLhaY3mL88mbO+1GGzLPHjP/FOuK/atkTWOFvg/Ol5yIkbf+a18CwAoKqboDWTRS7zaNHZSRX65OMnWCzOqOi5MlekOY3QzT2cs2ha2mDEfNg7z8xKh2JShBxIMTOW9STBtXVJwckWQDqZhO4wY2q4dEeLnmemrJGOO91+RSrdbMOzbTl4AKDiQNWrXVXXdYEl2tYtpXrEZufPShEjPqaDNA1JDlIkNtzVbJ13IjgPXBtPmBGZBC9T6ZToz9F8vLYtXpvNIBFwsTGh+5DPEDMB7Omju7C2RZrSs/hE+DTedbrx3uMH3/oBfuFf/dlAfhmkKVZVFQhE65JIYvkohol12AzPVitMCkq9MIpi5NqaTLQBKlaFoJLzftJ/NsM0CxFhAm1LUe08zciENFYzS1Lgf3Xl/roOgXEt9yq/iiQs/FnQu0Iyly5YD5p0G5BQty3qroOBgW0tNguS02ijkRYpjm8eYloMkBoTNIr0vdRhBg0gFEBS7MrPN0pj0VbbdeTIys27bmcnadsaz5/fxzvv/CS89Tw7pFl/lxg0ZYM4iYljYnXYj/v7L8DyOq3hnQuRU3FB8LYxBtemk/CsZBRnYhOetaBrMvKhGD/a/733Ac1rsGU815be/6d3n+JX/6d/gnv3vvPCmvyk65U7Ra01nn78FLc+93qofMSgNvzQjmyDdBQBxmC9XlP0Tk8+EacJlIpCrJEcsDuO8syySzkpu+tIHykvvHxhUrH3GXolO4gonpc1dYvOd1gv1rBt88IBS5+N2Ku+80hMjNb5gEWLMFYeTBqbgPMD9PeMUqHbFcNkHW0JEfOyRBQBy+U6vERFluLgcI98Lh25UTRsCC0Vj+DptW1x/vQC9+9/gOFgSvIIbwPcA2DnvqKIFvZms8D6krpJSV5IjIZRGqnZMmzlEiq86+ilrdsWs+P9QEtvygb1psaiLCnwtG2xulxjdbnE6mJJh4GOcONTxxhzEKx0psvFmrsW6sTr1ofN23uCZ0qOzbnz/m20bU1z0fZKyHC0Jdq0bQWtDZSi8NliVMDxPW3mm3AgCqRL80MdqvG+R29dNUg5wbtIU4yzjCpvmX11ZMMmqRfiDCLuTcI8FYhajN/lxfbcRQII3ccLb1nXoalozRDhhuf33M0Lo1pSWfoRZzVDfrTeNnC+I0MMREgTvWMkraIIm5oOn2VZBuNlgVINcwBaZ7Gqqu3M74qMZL4gOUaECHWzeek9AduUFPnVOYvL8xNidvb2Dwn0HqQpyqbBcFSEgsN7j8XlCraxOIs1hSizPnC6P8F0MAhjAiEglU0TzPxTdrbJYpKlCJeArO0cqqYNm63vumBQIoYCXVe+IFsAttBw300ljHd4PTguqsO/qRSKLA3fa54kmPNzUFmKlhGTmgk1aZFiMB7geLoXrCRlH1yWJUlJjEHJyT6pEVckIg+KtEPkDI0llKJqKSDd+yusfETsUkRSLe98rzCTgAgXwpKlbG2cg7KWGwwqKPpG41qr8NxkBilzSClcZN35Djv+2CTT3jZIQviS4kbmwtZRYfzuV97Fe+99FU3TQwb/lOuVdYrOOdz+9m3c+tzrwTYpwF7c4oreSwx35UWQK9Eak8kwvNziNkOG2yboieQaTIaUasCHhREop9uy2foHlkAUQuIQfR0APP34aZh5yiWHWGMdhlkMGeUkPPD3XbdNB+B/wyg6VFZVHWAXADudndEmwFvbdIwGi/MlJVpnCZRWmDAhIuvBa2JyLFfDllp33ruDqlpjOJgCeDEu6uplTIKzs8e4PJkTxCQuD8xa9dwRUuVvUKSkXyx7G1vLLwQFjKYoRjlR9B+fIi1SNGWD9eUKTUWzEKoANUb7o+0mwXDiZDoKM+H+8Fs2applKqwuVnjw8AMAQOcdoujqfXbovOPORPFckdAF27SwbcJIA0fWMDlIKQXb0H+v1hXKpcDzaQh3ljUUWKO9ok/zs5TDRZhwALF6N3Ud/p7MjfqMQ9k8tSIW99WChO6XrN6iKEJTNUjyBFVE66O1PtD9ne9gVBT8MAVtkbEGuX0gIA4ye5Q1xt8iGU5vqIPe5/nN3qBA1bTMhE7Q8mcdpCn59CYJffeI0NQVYpMQRT4fkWvRCxrFDta2iFhPS4Wcwnx+gsvNJows5F2WjuPNw0OGb7ezr01MSSdt3VBhmCXIigyTgkLGh1kWiDti3C5McRGWywFpo6320HIahwjvwSxbFSEEHgC75By5N4mCAhCKC/kZsi/VTRMQAvkss8EArvPBfo3+HMPwrYW3W11vzCYnmveqxAjznNikjXMh3aNlOF3xLFErFXZ7kaUkht51FUUBtdu9Nd7XXRvM+yXVxrPm0HF8nBxsQhpa13UwXgdIGyv7dRxMDqKQhCQESwAYFjknmjiUTb3VWBoDxcHZAn33z4k+aa11VFzfv/89NE350nn2J12vfChqrXHnex/hS/ZLQLqFdKRa3e1UCJaLoigMoEXsL/q3um3JImq5wUV5gSQjCUGcxkjyBD72yNMEFVsUNdaGxSm+oFeTyJ33QbfSdR2quqHZTGNx74O7Lz1IaCa6ZSrmbGpueaGJ3yAJf6mqFKcRo7YO7hS10waW2qauMS9LVOsqhHBKEGecxYjYfiqYHzjHSeuUTiGzH4Belvd+71s0B2SjX+CTD0ZZ4EmS4d3f/wZ+6l/5qTBDlJeHNn3SMzW8JCrQMxHbtf7Ps02LJM4R5xkunl5gfjJHuSphG4u9a9MwC1OaPG0lcFleGlnEAlf1OwAVRQR/OodHP3iIs7MnYT11L2PXRhHQAVppIkHpGPOLcwymA6SDDE3VwLYW2SBjGL5FXdZYXqwwP6Uiod7UWF0sYa3DtTeuIc0pEHtxtkBapHjt+AhvHBwQc5OLO5kZ0efqgi+jyJECbM+bq0gLoLbRSNuYG7NzfHRdh3pTIx8RscU25OkqM8LEaKiOBeQxwnvk4LijacLno+qb7AcrvaX/X242eHB2hqZpMeRgWmI8IugDG+sCHCZ6NynSWueQeB9E7IvFKYrBhH6PYf1PWpPeu/CrUhpPn97BelPCj8fBEMR6jyyJsT8cUUHCZLY8SXG5XnNw9JaM5H2HtqUCPGKkSPYEsRqT71to+57nwMLW3H4++rcF3fGOuAZ9rekLnXDH9mddh6ppaI7p2GINW5s8YCvxGqYZjNaB+6AZBdhUlOAibk6r+Sq8s23dQl0q3DZk3m40FQGkUyX3KcvoXf/g70tDhPFqtEbTONJu2hcbF37BAC5mBCGyQwfbkhyrrdtgDN4yF8F3XSi8F1WNIqdRSTbYxkr1351FWXKxR5+164isUyRJ8LctTdOTHVH8lVG7iRs0bqK5+5I5KaePTnF+/uRPHC+97Hr1TtG2+OD7X8e7X/nn8Gd/8WfCASQ3KWQCx+y8rusQMawkbMPGkemwLFDrPYpRgWpVoloTtq0U5fIlOX3ESZ6Hl7Rv+QMQMUJmm/0Q0NpanC6W4eX56I8+wnvvffUFKK7r2OOytcgKklXEhujQWRyjg4E0NaMs53+z5CwyhafzOR7ef4pysUE+LnD5/BLryzXW8xWamqCJKIo4Oy5CU9VQWkI6ieBhYo391w5w6+3XMMrI0ko8GBes4fnu730Xv/3Vv4/BYIqmIcjQ6Jdo+HpXFEVI4hTf++7v4Xf+ry/g5/+Nn6NCpY1gUh2CZiOu8qTaGhU5Li4XyAraOAaTwRbW7jqUmxKvf+qYupTWoakaNGVDiRodsT7rTY04iZFpHVIf+p9LZlqtcyFwuK1bnD06w9d+/R+jbWsYI9mZux2V96SHI31UGoqZ+/e/h8neDGmRhqpAXdtDpCJsliUWpwv8/q/+Fm1+WQFjUowmU2itcfboDG3bICuIep5mCYrJAFmR4ejWEQ5uHuDm69fIoKHnxyjF4AUH/YpDSR9pEAjuKvO37OVqAqTPtHxYa6Mx3BuiLmvSrtUNrNPw3a61oiAjLaMJ67rGoirx7Nl5IKCsLtdYnC1QLjfh7ymjMd4fw7WWY8I0zo9n0JoOSB0bTGdjfO7GDQBMulIqxJ5Z5/B8sQisvzjWqOvtz9+9GK2JotDVK6WQpgX+zr//X+Jv/fLfRsquTVkc43hvChUp3D87w/2TUzy5/RjlqsLFswvYxqIY56h5pjWYDhCnMR4wUmASg6NbRxhNKW1CNJypIYJgzIVK2dThoJDOm+7LB82fYyRLyFIAsNrsQnEZ25eJ7Ets5qTzdJZgQMPFxTDLguxD8h8/fPIEpw9PcPbkHOViQ+4vXYdysUFdNciHOZtpA5fPLvGhUciHOQ5uHuDHb72OER/w0hj4rkPTNFDRlnPgui4QX+Tw3NQNpVdYj+X5YgcZjiIS75flEsbEGE4GqNYVzd5Fo9hamMSgXJXwhceiWlHSzyCDUgqbsoLEf7XOYcXQt9YKmFDIQFnVpJMtChyMRmGfOBiNoJXChrtr5z3GzGgFtqk8LTdKRmnMNyuaRc/X+N1//JtYrS7ZH/qTCVJXr1c+FH3nsVnOcfvbt/HFn/9iMOPut6d9yEhmZfOyRMoLfl3XeHh2hnJDX/DVqy7rkC4fZzHGkyHNFnuHYr9yowVOBI6u67YyDMbIHYtP733wMZbLs5fcU4cNZ9XJLAPYBo2Ks34f6oo1dYZnyxU++PYP8OT2Y6wu10jyhGZVPAswHMGUFikun1/CO4fTx6dI8wxt3aJtK0xmezBJjMe3n+D86TmObh3hs59+A1G0Dbmt2hYffuNDdOiQJBlDUX9yBRRFYv3lkKY57n74Ecr1vwjsbynvUkV3PD+xusecnU3550RYVVWAvWqWPUgIbBRFSLIkeCMCJEA3MREFKuxSwGXW2/Vo+jpSqOoatrG4/717mM+f0zOwkh6+23kQ2hCj8TXqpoIxMWxbYzE/wWa1xrAcUrRYYtjCrEU2yLBZbnBwcBPKKAwnQ+TjHMPJEDombaVtyZfXe9JbtnWLalPh9rdv48GHD3D3+h5m12fYuzbFeDbG20dH2BsOYZigIpAqmcZLBh/LOhjOF2uvxtqQTSiXVNNN1SDNUyxOFxjITNR76FEehMvAdt7ScueTaI1lVeHJoxN8/P4duNZhcbbA8nyJlkOVTRJDxxpplgR5im1aZMMcd75zB2mWIBvmyAYZilGBvX+pwP5whITvQcgNSik8eXKCJMnhvYVzFim72YhcqH9f1nE6SrLVT+b5EOv1JT6+8whf/LF3KNWA1+DlZoOP7j7Es7tPsbygzbQua9psFyVs02JxOsfpwxPUZU3ryZFl4ORoitn1GY5uHWI0GyMf55iNRyS7MjFHfRH8LKS5ruuQJWREEfYG73t2edzl2l3UorW0bhpmsDqGjyVto98J5swMrW2Lk8USKorw+Okpnt9/jstnlzhlu7yIg7KbqsHqYoXLZ5d49INHMInB7PoMw70h0jxFta5wbW+KUZ6HSDLZe1tnqdDnA7i1FiraBixQViIRaJSO0NQEb/evOM5QVWsqxKsG2Sgnb96yRgrS1EoyTZjzWUdRdA2FKlvrUKYxFidz3tupo5td38Nwj0KmFZMtA/9A69DlarUN1u67PAVCj3dhPxMU8fThKR48+ACaNb5a/+hH3at7n0YKSZLhzsfv4eTBz2LymXyHWi+ieYA2wrptsSxLfIcNndMixfJ8gbMn52jKJvjgDfeGlK9mNGJ+aaMogrMWp2mCYlzgzU+9FrRUAsEKyUcYYvIZQohoaym0db7G2ekjOOeQJNkuZNJtv1AVReFQHKRZ+NIBBJZa1duINk2D8T6F3DZVg7bavlDOUbSK6C1XlytsFhsMJkNkgwzL8wXqTY3NsoTSHouzBfwHDsvzJT71qZtB0Oq7DovTBd579ythQ5EZjsxu+htQ/+o6hywbYLW8ICh5XdH32nXMSNwWF1J42IR+9nA4DPTxKMpxuSFHHcep6IuzBYmk0xhpkSIbZNs10M9gVFu7M4HZAWKRbRc2fY6LZxf48Ht/jJbJUIoje16YUQFw3tFhyAWC7zzKcoWT5/cwnk2IYaoi2NYhth4qi1CMipDCPZqNUIxzDPhQFOLNYDJAMS4Cg3Y932B5vmQD9BhN2eDy+RzOejxmss0Rw3/CMO37kQrE6fn+raeElYbJYLudoqcDkbM0vaX5YlPWMGmMrqPNTpxtBNIU2CrRGpebDc6enHNoNBUs+6wFmx5NMTmYYHwwhtYKDz96iGpdo+HitFpXKFdUrK4uqTP842GG40+/husT8oHNkhiu8/Cuww+/9cPgpmRtiyROw3PvkyuUUsgyMojXmiQ23nvySe06fPiHH+ILn32LNsOY7NZWVQXPrMjRbIQ4iVGuSjiW1zjrA8ksTmN03qNa1+i6DudPznD68ATz0zm0Vji4eYCDm4c4unWISV5gf/jyJHbnt/BeWddcpFDxISQ4f0UIfvLoOX7vH/4efvGv/8Vep0bZfr7HdZDLeof7p2d4fOcpNssNVhcr2KZFWzc4euMISZYgHxWB/FKypGuzWIdueX25QjrIsLpY4fuTAQ5fP2RXG4NxnpMiAFHovOUjb7tGH4phSpFR5FZldg9FpRTOzh5hMjkg/TGvRx17slEUwk9sUK1KZENCWTbzDTbLDRXP1uL00RnKJRENI60QJzEWZwvMbsyQpDExjIc5zvIE0+kIx3vTrUm83qoYRK7mOxu+V98hGECIdOnBhw9wefk8FGmvcr06fOodkjjF7Y+/jTvv38Gb79yEuB5AqRA5I6nXZ6sV7j0/we1v36a08yKFcz5sMtWqhI4NLp5doN7QIizGBVd87PAQE9R49vgMe9f2kGQ0txrvjcismTtIoYtb/vJaS/qfzZI2tbouX3BGAcAsU9qoJBiUIk3SoFeSGUPjtlVJzDOB668dBjeJxXoTsv1anmXG7BCvtMJgTBuuax3yYYbNssS1xCBODJq6hYkNsoIOY7JJapHFCd772nt4+uwO4jjbgQKShP6sVEJXZ4BRpNE2FbSJMRhM0dZN6M6cJ8smHUXByV+Ex8Q2NMjZvSUC2V21jgbrJiG4zbUOVisY58O/aRITHFM0D8YblgzIQah0z1nftmhKklPc+85dPH16J0AeZOGmXqJTJNG+1gmUcjyjMkjTAnfvfRc3jt9BmovWb2t2LJ/NthaRihApsoIziSFCAxseHxzvwzkPay0itc1dzIoMWqtgiSezxnVdY8oSnFCYMQyvwB0WsHNYSuyTv/LMQrGoKdG9L9NwIWmAYFKZRwMIM8xYa9z6/C2M98fovA/pGJ3zlCk5HmAgjM6bh2iqJswyi8mAvWKpS27rFpcnZK597Yt08AvkuK5rfPCND6A4Lkp5oGnrAMXvPiuEGZC17Q6k5b3DH37ld/BX/81fCB1vFFEs0mc/dQtKa6znayRZQnmc/HmbuoVujVRAAAAgAElEQVS3FII9mAwCqarrOkwOJlA6QpwSgpENMqQ5WQwuypJjqcyOPhmgg8z5rX+ocAcsSzKks+5fdb3B7/7Wl/GX/p1fROtsSKIJLFZs9XS1tbjcrHH69BxP7z6lAz0xKMY5mUwARGYb57ReYwpRl9/z3mN1sUK1rvDs3jNcPDnHR9/8CKcPT7B3fYbJ4QTXD2e4Pp2SVyhnK/aRPImSap2D4/3aWY/L55do6n5wAv367NldHB9/GnVZoSnpkHOWfJi9dXBRhCjavp/eOjy79wyXzy9pn28snj18DDEDcK5FUUywf/0Am+UGxajAYFxgw9rok/gEzw8m+Jl/9vPBy1pmosFasCwDQZH2Mh8KksVqje9989tbmRDvIT/q9co6RVnsRTHG3/1v/hOg+y/w2r/9l5kRZUN3QzdCZIrRoMCf/9f+HFprcTpfYHG6YJbglg7vWofVxRLed8iHJMJenC5gm201cvnsAtW6CtRkAJjnOQoWinYMo9Yt6YBa6/D8/nOsFxvCwmsSbTu3626gowjP5nNYT2yn2YDt00CMTLGnE2ybYFUiu1yfTinwmDftm7MZRlkWDjTnOzxfLLAuKyRpDOc8iklBuh/nYIxmN396ufNhjj0O9CVfWWKs/vLf/a+QJDmapoRWBoZjheTgeOnTisDzoRibcom9oxm8o+DccZ5TZxHH6NCFgf3jiws8O73Ae7/9HsrlBoMpdbVnj04RMUtzOB2S/RgniddljdXFimBittfKhzkm+RZKM0xtl+9GnEjKhuQdDRcSX/n1f4CmKYPZt7MtlH45cYMOS7vzwjvbQpsY77//NbxT/iSO37xJ6+RkDtu0MEmM43eOcfH8AovTBTrfYbQ3xOXzS8yuzwAgMD6LUYEiz3A4nWCcb/MtoyhCHseh6xVYuXUOUT/yjJESgYXEvtB7Hxh6T0/OYXtwnGNdmtIKTdnQHFpVoZhbX66RDVLUZY1ilONivQ7zMg8aXRyOR5gNhzgb5KiaFnXTYjNfo9rUcJb0mJGK0I1y7B0SRC4scBGShw7AKLy2NwsIikDf67rBr/z938B3v/s7UGq7jcRXtIjbZxUFc4TuyiatlMajRx/hP/13/3P8h//tf4BrkwnN4LMcWZzgxnSKZUVxUbExKJs6SElaZ0M4tRTVJqZxhTjeCBFORiPSqSdxjNip8N2KREV0hS0Tf5ZVRSzddY1yVaJcvkjvf/rsTiAokZF+HmQd8v3mxoQZ/tufuom3P3WTSDgMoXcgGzmxOBR5hOVEChObAA/nwwyzGzNqQMYD2KbF/HROTHD2HE2NCbId8PvXMMrW8L/pWoLBN8sN/ue/87dwdvZo575oj2lx9857MCZBHMeYHE4AQQKiCNo6AKQGsBcrCveOddgHVhdL3HjzJvJhjnyYwyQGJqY5pLDA15crrC7XBOVynus3fvUbGO+PMZgMMLsxw9GtI/yZT78Dw4x9kbpIsLK8U1/5376Cb37zV5HnI3LkYYb6j3q9sk6RHjA9tNFohv/7f/nv8Vf/rV8MuLVUifI/aenF7ud4bw/PZws8fHoS7IJca+Fdh2JSsIMN098NVfmUv0fBlPmooAWfJ8izNCw40auIFKRhCna1roOXpMwNjNl9cWM26qUoJZp5EqtUhxDOlA+Pi/WGB/Id8oQgrpS7LIAgQZlBtNYiSzgsVWssqpJmlE0buqimJUG5SQz2D6bBN/V8tQ6b7uPbT2AtJ95HKli8KaXC4fHyK4JzDlpTWOhoNkKcxbhYrpAz6y3iLhHYDqw3yw2uvXkNm8UG6/kay/MlLp/PQ0eRDzPkI7bnS6kLto3F4mwBZx0XLQVufvZmkL8U4wKT6Si434tcxnMX1DF6sFpd9LpeT4QkE7+0U4yiiDtE1v05hzihl/P583s4PHwdw/NJ2MQWZwvEKXUbk4MJ0jyFbSwyDjAuVyWyQRbmi1RFb7NAZUwAIJAp5FfxZxV6OfnT2oBaBLu4KMKyroPjk8DZcjnnsFnQ553d2Ee5LKl7TTiz0dH8p/MdGkMbj8CozneI+cDVkWKyCDFLif1Hm1xapEhzip+qmCUdJ0R7z1KK6Um4AzVaY5znoQjsQIfnw7NzfPcPvo22bWAMa9fQoW2b8Gx2do7O70DiAKEbtd2wxlTh0aMf4Jv/9H3c/MWfRWIMs21NiF8CEFjggBiwxzy6AdxeF95BSe8ReFo6icZRTBux4DlNhz9rbdtA9XedD+MYAGSQ37RoPiGX7+CAii+Jl9IM+0lX7ZktO0yzID8S4o3cW2IMztercOB774mI5dm+kJm9GfvAShyaWPDNpmNY7zHJ88CClXfDs7xEijPLUKOgKOdPzl9yVx26zsPaFnVdYrOZY70eom0sTEJduYk1XNvBp9vxGQDsHx8gyRIsOU2jrSnsIB/mGIwL6NiE/UJpBe88JodbAqR3VDhJKo+3jgrG/5e9Nw+2LLnLA7+Ty9nv+vZX1VXV1d0lqbvVWsYYGWQwIANmxiNAhhgcLOPAEzEYjAcTbCIwRtjYGpthTLAjs03gcBgYA2ax2YyE9q3Vrd6rutZXr95297Ov88cvM+99VY1QO6yx6eBEdHRX9VtunpMn85ff71uKAj3PQwsyCKf+fGXevfHRBE9+7P0QwoaOKuNcfGYlGYxR0rs2KR5PDjBLErKzMvTfBr5lmckXOA6O55Tr50qJs8OhYTrO0xRJlCrtGL38eZIbKj0XFBYqHTK/9V3nlATDEQK2ovRquUaaF9T3UhUX4ySDaJoaZZmfavQDMJ8xznMsMlqkbFWVaniK3C4UCUL9nrKu0HE9qsDq5emxVubAadMgLytTlRGZRBFHLCJmOFIaY+aO6yo2b40kpoUxKSr8p1/6bePowiyGpqnNxlFVnzo807zUFTHYpCMRT2MsAt8QcYg5B5Rqg/dCD731HvI0x3h/hMWYHIAok4/6vkVa4PD6oXEKiuPF8mcxBtv2sJgSndzv+Fg7s4YqLxGc2zmVR1ikudETTo8maFvdY1vCjKvjWF6tgUWWk5+jaZTtn5C4fv2TCIIuspjYk1xy5KnqATvSnNyrooLjOZAOWcJxzqiQalqlUa2M844mkenFVEM2lWJ/6vmkSVmrbia52ggThWYs4kS99MtR1XWFeE73W9hkomxZQFmQTszxHQAZuBQkmylrtIKg8ChJzf1yBCW+G8avssetVJHZDTz0/QCjKEKcZnAU+QSAyVoEYBi29PkrcyJ+9oPP4tat5yClDcYEiiKFEBJto/WP98zEZb+Za52iMmBQ5ImmKfGB//Be/I9f+mbD5AQAzyZDZ1sIRMocW3JhEiR0sgbnMM9I3wcyvlgS/4xZtZozmkdQt/Te6f+uG3ruaVGgKJS4vWrQ1o3JElx9x7IsxsnRGBtba/TsOD8lBdCaeN+xyetU/WxmAa1ahpu2Va5atYJ1LXQ4N4Yg2vwBoE1OO02RbpUb4xLJubkvjRq7ZtLqYrSsCKXTzPybz940J/nVZwYolqdlYT4fwXNDY/JfCkpNsl1pUnMA6i96XY/IRxmxW/X7ywWDG3oQUsDveMiSnPqMlkU2dmqTJscpwHYdI1/bHg4Q5zm6nouqpuJDe8fqIOyn3/8Mbt58hg5lK/d/Ncvzz7pe1qaoT3+cS9oY1Ynr8GRivEsFY7CtZWpFpRYOWzFU9Ymu53lgloWu5yEJ6ei7iBP4tafcZxr9S40lV+C5RrSvXSC0Bky/BFGSGhZhuqATmHadp54GQXJ3j2u738feaIRFmpJmUVHt9WTWBBvth7nIUkziBJILk6YBKAimKGDBMqL+MqrN72mqGrZnG4Zi07bo+wFswY17f6P6JUIKfPI9T+LDH/5tMIvRotO24NAWYqcn8UvBqLpSrEqC4oQUyBO61+RYwo3LDQAMwtDY87GBBS/0cHTjiLRIShjvhh7apkWeElu0Vmy0xWhxysrJCz1DbBls9iFde8XhgjSZeZJTEVSUmI8XtMk1DSzOTZIJWW7dPTbLQCKMUcFDz1egbWluVmWB27cv4/ylh8AFhy+pV50n2al5VaREbLFdkhBByYEs1eDXfXJt4l2pAkhfmkmq53xaFBjHMZldNw0y5U6UFgUmSYKyqjBPUuQJSS1W+9xt2yBJ53BcF/GMiE1WL0C6SOF4jjKMJvhMQ2m6x1WXFRKL4NncXkbraIKY1w3Jn1U5LQFLwwhbCc59x4YjdJ4hW3HAWbIwb45GePw/f9TIL1pVpNGJbNlvu3t+6ndUox55nhrmp2VZcBwfH/vY7yEp/iEk55glCYZhgHQlfqzjecYCkSvtstbkaZaibqVwBV8DhILoE6Weg5onkCoyYOi6ypOXCqu8olxRHdFUZATPUmGyOi4ivt25eoD1zSGyokTl1IY9WTeNymAlbbFOWaF5UwOgTT4v6XPp+5xXpTENsTlXJ3gdeLDUKjOzttH/0wkptuBYDUTWrGEN1+YxpW0UWYHb168Zh6hTb5maJ5wLVFWJ6ewIZVYgl5ysN9XvdH33VNHTKvs627UhHRvJfAYuqCWQLhIIWyIchAh6wZJZDZgA46AboB/48FTvl5DGpc2fQYdUYaSRl4//yfuRpgv4XlfT71HX1WeOfdq2gBBSnVS40noFqMoK1/cPsb0xRLeq0Pd9ZGqiJgWJibX7vHYw0Nh+rhhzzHUp8FLBAIbFp9h62gZJBxfbUiIrCuX9V6BqGiySVGkdM8SzBGmUorvehbTJCKBtGwghX9LRZrvXRVrkWOuEiPMcR/M5WS5NyERb91SatkWUJIgyknDsTybGPNpMPrVpL7KMtGpqcY+jFIxZcIQ0P6tSLLy25aY3mSYZknmC337Xr+ODH/oP+kOiKDJa7KsCjHFwfq9N2N0nKtv2cPv2C2jRwu94YIzM2LMoxVFeIu/T8+IWOV+UdY3dwcAIYC9tb+PscIjrh0dI5wmSRYpkHhOEIoWpnL3QQ3fYgXRsuIEDLgTWdocm605Xu3rxivMci2mEydEUaZRisDnAzeeukXdjS1AJjVG8JDlKj7UsC0jVX2WMoSxz8xLUqDAa7eP5J5/A9u4Fgz4AutdKfRFNZmnbliKylLyEy+Ximqg5pmPCsrI0PQ1tQlBUFXJ1WvaVPCNSmr6kKLA/mSAvSmN2YFkW1nvdUxZnZGmXYzQ6gJzZyOOhSnehU7UbemCcEe09LeCGHjG694gJvDQ7IBhR27lpKHEQBAZq1dC/Pk12XBf9gPrZ+j0DYKKL9Pz80X/4TuzvX4bj+HTfmhpSOmZeAiobcaWQsSwoJjH1dwhNcFEUmfmesszR623gh77t/8LffvvX4exwiER55QLKqEA59ujWQq4gtVJtYNxip4pUbWtWVhXmaYquR2x5oXSEVV0jt+hZ6IW1aVtkZYE0ylCkKhEmpucYDjrGX3V5Eaz8s+/8Z3jHz/8ELNUC0f0819Yn78r8HRlow8CrVU2F4nyxwDzNzMaVxhmhO4AJ8dUaXwuW+XlN24KBTqS6ANPayUrpwnXPsqxrJFGKPC2QLlLVbrh5D9dCn/eZMvnQLPbDvTsYbm5QBFvhow5qOJ4NWxXzZV5Sa8UW8Dq+ipki5nvQkwa+P9k7QdgPTDHaXeuiqzZCX9kNagiar2z4mkmblxWO5nNj+HDr6m089dSfwPM66nMzYxP5GYNPLYvgOzClp2qoIudq0JMoNtWa7r2QoJjc/WsFvbSqv8ibBpWUiFVvyVILTNU04PXSp8+V0twU3bvLVGM1XbFNytMcWZwhi0mCocXywhbKR5VYjOweyzAal068EIyj51OiuKO8BLUlky0lXJssicZxDGZZ5us0GxAAoob0fClnKDX8UjdgummurKU6yq9Qi2mrpkEaZbj+1HU8/vgfoGlIQkIkIaYo7A0Ajrqu/tRqnJ6XhaJIUZY51tfPwtHJF54DLgWmR1NIRyovVGHYdlZmGZmLTnOQtoDVo/QEpsaUKXNtTVOzPR+O55hK2uv4xhiAKRgrK+kUnajipUgVnCw5JpNDNO3ydMgYnRYbdm+eYtuS04aUtulj6eeoT9T633t7z0NKehGlLVFkJRyfxiFtSZINx1Y9SYLzmCI/6TnnqVYAACPOB4C5YirnVaX8GusV16DGFETTOEaa5UbfWVc1/K6PfhCcGhsXHK4boqoK5HmC+dxCXVMfsC5rtC1UUDORJGqVDVpXJOXgkliBVVnBMnNtqWtcqMQLck2ykBUlXJuColedRrTBuPYOBajXNktT7N16FlxINHWFpm3ALKY2xJXQ6JcgNtDPZ/eQbPTmSYs4wyc/+R78x3+9ga/65i9H1/OoxcCWeYhJXhiSVt2QN2+WZGhbmEImsizYtjQFgS4OThYL0lWrP5vwAou0uAYOV/Kcuq5NP4tLATdwEXaCe8bWNA2SZIr3/tqf4C1f/9cxTzP0PB/SXbZ6yrpCkhcQ6pBAPU36XgvVqfewUGG6mpSk5RlChWVzFbXFrWWg8KptqS649bqpLTdNwkiSI4uWaEUSz+4ZE2CZXrCUDjwvRF2XmEwOYdseWc4pJnqeFiYPUuteHc+hoGzLovxSzpTbFeUx+l3frFde6BkkULsQ6XVfnxIBGKcwvjI39ab47IeeU6S3pYUhAINefbrXy2afNu1pXRVjdFPaml7KEYuM4NJVYcAGT1YLo1787770zy2Vn6qj4EVzY1b0iK2a1BqC1PqlqiQ2E1Oms23TQjoSjDPkeUIPuSqw2vWwQC+FDizV/Qa9MWioNlGZbBqSkpwCLidRjEWdwHMdJFlOCdTqMybzxFT2xHxtVNRUbsS9oesgynIkcYoiL42DSZpFtOCUBTjTfQeyM9Nw1SlYsb23k5PE1Ms9c+YSbEeCCYLJMqtA2A8NY49eUsUGLStDiOGWBf0bLMuC7UgiQJUVbEcaur9mFxqZgyMhFTxpq54GBakS3KfF5ABIYiM4bt54+lSPkMZb33Pq0J9Foxa631pVJSzG0agFRX9dlsXY23ueUAKLCBFaQ8c46bOapgEDbfaOa6MuKzjdwEhUtDAagGFZx3mORZqaU2bf9w1DU5MaYmXzt0hSlUvXmsWtr4hHq2d7xhiCoIc4nkFwiaoqyEZt6sMNXEokUEYEja3p9KSHBWDY2Uy5qQix3BC0g1SpNvCsKE2vG9AtggJMZVNato2qWbpPxXmOT/zh46ibGqwVqGqSVmjiXamSF/S73K48s7ZtyYifUSg0oSON+r21Ke6quoTrBvj93/llbF/Ywud+2ZuU5zBDx/VQNy0ZgSh3mrKuUVU1yqIy4dYAyYJy1b8nSI9DCE6icsX27QW+OSVnamEl2QX1zlczA7kUJqXi7uQaPb5OOMAH3/2f8Njnvw6dV7nGHtJVqJdgpCHtqMgnZqlDAzsde6fbVEYuoTZos+7KZWySXheLsgRAfUyNWmmTiEr9s+rFmye58Y/1ez6yPH5pO7R2Kcr3vQ6KIsV0egjf71DvXXBkkhsZXaXWhboiOziR5kbLrPWIujXG1UbHBJEotf+t5ByuLc1zb1qKvIrz/BQzeBLHtK5EKbjk2Hv+JrXHtKVeVUIKG4zzzxz71FIPX+fXCekAFoNtS+R5ASkFyqLE0XxudnmNnevehH456dRw2h0fgLLroSpAP8CqIVNdTXIBlqa8VbW0GKurGsk8RpFR/4wLbqqZuqpR1+TYQA3l0xOAMWYccbT90yAIMIlj8mgtSiM+F4xhq9czp0TGGZFFNLtV4f8pCkhboK4bQ+rgnE7CVZ4b5mHR8ZHlBZqmVQ4WC5x56IwRQzMuTqXMN00NtC24kJ8SKyf3mRRNU+PMmYcMjEFelh4sWFhMIxRpgXEUYb3TMYxQvRDqgiB0XOSc3GmYIkmIkpimjk8nsLKgQFImuFmkdcbgaq+3SAvSO9VLdhnnDIdHN9Dtrhlmrb7uhoj132k2Y9vWQNsAFjOFgn45tKPF0dENOI4P23Zhe7YRtgNQ3qjLGC+a7AStulJis9s1jXxAhRW3rcnPK6vKkMzSskShyDS6B51kuTrF0ala2AKOayN03VOZpPRrKcuyKgu0aMBriboqMTk+QZB14XgOmh6lG4hBB0W2THzRfV9gSecXam65jg1HQaj6MoQSxbYEYJLgXcW2zorSFDQ3n7uFP/qN3zLuQrXqDer7rC0HrZVg3bsvy2zAtRbSLv8MIhoJIeH7XfzWv/lluKGHN7/ls+g+a5RJvV+OcjLRJtUAjOmHkAJFmqNQMDXzGfK8WDEjX9W8JcZaD4BhmOrNiYgfHLZiu98dHUXzkSKnZvNjfOR3P4z1s+uIuzmhT00DVmsDEGZOdHlZUVxcUxvWK0AxXxazgFqdngUDa9Qpvm7AbIp7klyxSBXkm+SFynm1TIqLJvSspqtof1V9sjOklJfYOCzVwpDChrQdeF4X0WKC0eg2pHTB1MYWezHcgFy6GGOqXdWq35GTZadiogIw3Iq2bgiFYpbpfQMEK0vOzWmvVO5POgWmUj3hNMsNa/z08zjtZ+vYLy0VeqnrZbNPLcui0NcyV1R5ghYdhW0HnouT4wnmvo9a9Q45Y5irSBR96U1PN82pL0Bi0gowjEDdx1llXmlmWlaWxvS5zOn4nkYZvJCEukJSsjpZfdUEAwj7np5iq24cs8jerFN7ZKJclvAd2xiLJ0Vuqm4Apnex2+/jiM1pEZBLiNeVEsk8Wd43dVKUIEKGF7ro+wGiLEOeEEFivD+G3/PR3+ybFIhVUodegJjaDDkXp1lWKydgolMXEMLGcGsILpRRNGPGYb9pW0TTCC1WzHnr2iwGmqigQ2abpiGvQltAVrQIagiFCaYE4pRPqI2GteVT25KpcRalKDIyNnB8RxUsBNNwTqc/7VJDJ47mnmem7+npyb/04G2a2pxO6qZCVRUoywy3bj2H7mBgiFeO56DqVOCCKR2jMBmejRI4j6KIFlqtd1MogJYu1E0DR0oTijtL6JmP5gvTO+TqZKot1tZ7XQyD4NSzVYOC4zlIFhxNY8F1aYOcL0aoygKe31Giet+QhQDAypT3sGuvMDs5SreiOK62BVwyus/VO9e0LTwFTVJ/LUdV1xSzpPpuek7NTmb441/5Q+zvX6Z7V1dm8zMSGpW2gvql+jeWmbPqIan5XBoIVZPHyPVGIE5m+I1f+H/w6F95GIHjGL/QtU6IJC/gCIJ9Z3FiUkW0GJ4QEJKaaAcaxohVrPfipCiQZjnqsiKEJsmXBD9QsdTULSzGDC+h47qmNbR6McbBGUdZFfjIB38fj7z5UewOBwicEqJggE1wad+naKtMierTQhmPq01xkabEPm2WPW49h6qygmVRcV2gMhFvAEzQgu6tc5OeQrwNcjyiTbDIyByiLivYrqPui3PqpK+mIj1fxmExDildhCEwm3mI4/kpTaOt+tmML+FxxqhfD1CQQKvaEozyn+hr1L9b9YyE2ghNLqJCfUqFEHKLmP6zJDGSpjIv4Xc8VPUyNm1JxKnAmVDo4Kd3vTyiDVSzXEFWt2+/gK2t+4kZatOEKeoa9vY6Do7HlDjAGXb6fepLKeap7hXGeW7yAouqMhscgGXydNsa1xHHsY0It2lblFlhnHCov1JTIvywY1xw9ItSlRXyPCEKeXtXpac23MBxYAvSM/V9H9eOj9WGDFNhjhe0QI7Gyj5q0EPouji3voYoox5nlGcQasEYrvUQp3Qi5IKhKmsMguAUW2wymmFyMEGj0relI7EYL+A4PuaLEYbDHeMAIgVF9ugU89Ww4buvpqmNmN3teOCSm/6vIyQ8myCL1PNwe/8IEWMI+8Gyt8o5HCnQKhcQXZSYU2FL0TE6QkYoLZ0+AWudkSaKVEWF+ckcWUJuLX7Ho9Oz4Lj8scugvE6BoljqlRjjSpP00j6vfAUaqesKtYL09PhbAOPxHZw9+2oIYaMoMjz71Iewu/sQgk4XnWFHOQ35xDaVAq1ozEmyyAoIW6AXBgbB6AcB5ErjP8oypEWB2+MJ4lkES/UUhRTwQyJpOcrztxP42Ox20VGmE9ofdTleC17XQ54GKDMScgtpo9/fBADkeYo0WeDkqMLgZBPClsYNpbfehd8LSMOm3EbKvABTBVDmZEiVFZ9QixGkVKbsFbouRfb0fJIsxXmOeZrho+9+Ar/6M+/CZHqo7rk0GlldfFiWdQ+re/Uios1p2NRiDG3dmsVX/xy9MLtugCyL8Vs/+zv4vK/6PORVha7nwbNtg+oAwLmNdeyLCUrNGlUbooYcpS0R+h6x220HsyiGkAJH+ydUYGSE0mjmo6esyrjgaOqGiGNSwHMdeLaNu6di27aQ0kFdE1x3eHgdH/ndj+Dca84hrypsdDoAYgzDgIo8UBTdIk3JslLNKw25r94Lut9MMaKJdObYErZQ74WyQSSjFAtFsfR9Xqh3llkWipJ8Y8uMRP7kWkRtg/GdETjjyO7RAlNhVTVkFSm4hOsG6HUnmC/GmEwOMZ0eYW3tDKT9MIo0h9clzWTB6L2xuQSXZOrRNOSzakmOqqrhqP43V3aMbUsxZnZLgcmaOSs4RWVp5CXKMoM8tXUDxiyyy4xnhv2sC0NCndrPHHyqnhYsxjE5IUF5oCJj9GbnqcgPYQskiwRccNyqalzc3oIOKOWqz7Te6WB/OjX9QSaYSZtmgogORIGW8NwlW7NqGqLWZwUW44V5OcguySezY99RNmRqk61qtKf6oSsnKkClqreQnCHJGxNkKTjHQDHy0qIgRipjZDjQtDg8mWAWuIaVaAuBEETtjlPqbTq2RFFWaFsy0D2aTAEAZUbGBYc3jkg7tt5VTf0aWZQiSRfqli9pxXVTEYTaNhDc/jOpxmQg7mF+PFPw65KRp5NLAOrrpVGGaBqDD4i9VTWNokGv5AG2rekL6ua/JiHUVQMvdI2ZMbA0/Ibqu6WLhIwXOtRkr3OCYI9uHMKyGISgHLq6rsAs29DOXwpC1RfZhnHT2wNWTpFtC9b0gdcAACAASURBVICYc9RTZEjTCPv7l9Hvb6PMNw28HvQC2txN9dqgKshpSG9sddNAMoZSwVZV0+BgMkVd10jn1F/kUmVreo4hT+iiq+O6xrj77lR29cFhqdMihSJXqCrSY0qHnlVT18jyGHG8QD2vUNdr5FspOZqmhRu4sFsb0hZIo8wwajXUKiSHLUlXzBhFr9mC3kdXGU3cmU6R5ERme/ev/x5ORrfNXNOaRABwnQBVXapNZHmC+lTPy/Qdm8ZArmVFVoSrGy0ACC7RW++hbVuMRzPEfmYkDZIx1G1jno0tBDlHeY4prnUKjeYhJAW1LTTRRKM3jFmwPdvwD1YLFT+gIsFXG+LdQ2OMCHCWOg3btof9/csosgITTrKaYRCYOK6qqE0oOkCGBK06tadQkpG6hhACVUXvlmVZkIKbd1dbLmZlaeBkXdyY90KtkwBMiymex0gWidmkhC2QzGN1yj99wjcSmrokO0nVXuj2NlCUuWJ6lxiP97E+2YWb+iZthdYsEubrInEJRxN8Su+rQukaYnhrtx3NHpZcUL5rSTB+lGVI88JIk5hgkI6NPM2RZhSkTi5YS86FBftTFmx3X9anmrz3fLFlHQO48Wl/w3/f1/m2bTeAV9y4ADW2V+q4gFfcM3uljgv4i7n45+16pY4LWBnbp7pe1qZovsmyvhTAvwIFkb+rbdt//vI/339/1yt4XD8H4H8CcNS27aP/rT/Pf63rlTou4JU7tr8Y15+v65U6rk91ffpAq7osy+IAfhzA3wDwMICvsSzr4f/aH+z/7+uVOi51/QKAL/1v/SE+A9cv4JU5LuCVO7ZfwF+M68/T9Qt4ZY7rT71e1kmRMdE6joeqLjAYbkJIjmgxh8Us9AZDWBY1zzknZ3oosX8LUE9J9Yc0tqw1MJpEsdpkN52/uz6f/ln6v1e/FyB8Xpvv6hDNKi9RKOPxoshRFBnqukRdVxYAOK7f+n6ANI2xeeYMGGOYTcYk2N/YgKV+Ptef+65r1W1Bj231q6i5DuOar40K2raFhaW8ZHW8d9+LVlHmdJ+sbJRou6yRLFKgbZEk1IPMsvikbdsNPwjb4caWygoscbS/j90LF9RnBMkONJ1/5TObz6fuNWPUB9B/1kny1t2fF9qkuTU9nKbRievLh0rfstSz6UG2aA0LTY+/LmtYirl559b1Ew1/dHq9dn17myRA+7dx5v77zZzS49I/+26Szuoz1L0OnS2n77X+HupI0s/QT8mCioAyvbHW/A8znLY1DEILy+gkAEbcXyqZxnw6RhwtLAAIu712bXOTyGFVRWO7cOHUs9Lz66XeXD1X9XjuHrMe+er36v4PYKlnZZgvK19z17uo+kGrP6muatMTRduiqRsc3rl10rbtRtjrtetb28r4ocDh3h7uu3jR3H8t1WpBlfrq59Nj1c/mbncS8336mbXLuXXqc2vaqX7Ojb5HrXJSWpl/zEKR5KSlU+uaJv21TYM7ezfMXAw73Xa4uYWqLHFyeAe75y+sfLblKCxmmd462RTe/fCW81f3Ajln9zxnMiIhRnPdLCP29FzTN0wzONsGy/66YXSrcVva8JwIc9FiijSNLYDesY2dHZRlaZ7X6ruzHJql5t3K/9H3Wl9tiwbLSK4WK++h+vOqJ3LTtHTfcfqdWiVloQX5W68819WsSzK1qFWuKsP+zWvmmX2q62URbWzbxu7ugxA2w1f/3b8Hx3Pw+Ifeizt71/G3v+mbDW2+s9bBoBsaemyc58jzAsafh1nY6Pew0emgqCk/TZvZ6gVVi1m1pVZWlpgr6zHjalMSbV974tmCwxESiyzDKIooTmQWY3Y0xa3nb+H41jFuXruMJJnjmWfeZ8YVBD385c99C2bRAb7xO78LXHB86I//ENeffx7f8va3k1ercqLXtlhawM8smN/NLLL70tZf2klDx5q0bYt0RX+pX+5UyR6YBZXAQZc2mAaWadmtIhvtT6cUnLw/wgsfeR7XX7iMg4NrAIBnnnnfDQDor23gH/3YT6CuG4yPjvAT//T78Y9/8qeJOKKelTYa6LhLnY/OtNNyDGCZAxg4Dg4nUww7FNLqKAlHWhTIqxJrYQeOENifThBNY5PJxwU3JgbA8oWgxHRFz1dOL6v/v64q46X63d/4v5j+xsbuLr7/x38SJ4cH+JG3fw9+4Kd/BgAghGKyNeTBWNcNpNApKa2KyTrt6K9t5+qqhpQCRVHCdWzULWVpulJivKAgWIszuI6NJE6RxYpOr+6NJrO0akNoarIHE7YwvrHknkMkgtnRFIPtIX70Hd9j7vP61ha+81/835C2wHQ8wr/6vrfjB37qZyBsJX/hNMeYRakdqzZuAEymoy60bh+d4Mzmukl8qFaIPVoytcgyTGcU25YnuUkk0YSjsqjQqsVMB/tq+zPLsoyMoSwqlHmpfFlbxPMY73z7N90AgI3tHfzAT/00mOAYHx/hX37Hd+D//KVfMp+F6XeGLR1aWpDg3RbCkGl0lBNA64rWebrKZs+RErMkQauITUlRII4Sw0bVgnGtl9VuQHW91CmibeF4Dl588irOvfocFuMFaVnV1/gdH//oW77ezMXh1ha+/Z/8S8ymI/zUD70D3/PDP0oHBL7UFurfX2TFUktqWSSNUPdb2gJhn2zkLGYZ1maRFXA8pZHkFg6uHSLo+cjTApODiSG+xbMIXAplwk95jDpdRROPLEb+y6ubh3QkxndILfCLP7nsGG3u7uKf/vzP4c7NPfzI93w33vmLv4haWXXqS7vNVDWt1YJz5GUJzphZ0+u2gWDcGEHEeU4JRHoNKEp4jm0kQokKc2acCEVxotb9kqwXhRCKSVugLGjsRVaAMYsOCICRsowPxljbIe3z6jP7VNfL9D5VlbfgamM+XcOkC9JnuYGLCSKk89TYJJF5rIVkFsNWxsYAME0SrIUher6HYRAaxqeWXehqRydq5FWFJCV7MKby/RxbYhiQ3m+osgi1/suyLDg+Zf/lSQ7bdk8tiAC9/J1BiHm8/HtttKsXnLal5AvtZkGnCZjPZgtObjMWpdqjaUiessJ8I/cQC83K4lTVNRlNq3iZ1YWrVItWVdew1Z/1mPRnKNIC0TRGHE9f8hSrneeZsE5VzVoS0qjqS3sjFjkxOSPlIwvAaMAAIByEJMJX4tkeSPCdlSVmxzNk8ZLdl6c5GQBHqfIYZXA8G0KF+ZZ5acT70pVgjPSnTPvbOhKN0kwaCcFyMlKVqNhs0FW/oBOA3qgqJfVpFBOvbRosQNE0ZVGaUGF9McZMgHKZF7D8pdVWGtECVngOFuOFSWJp6gZ1VSHohUsEwLKMNqvMKf6nqemE3VQNGLeMHd4powL9H+qkuHyOSzccYgpScdzULRwlKm/bFlFOG0aUUehxWVBKS9XUpuIuqgppRhuAcTHKCsUoJiYk49w4v2hj9qpUjMG6UeLy1myMel7qkxaX/FTqAmOnv6YFTm3QgnPUVQWtJtP3sbBI3K7tzNKiQJRmsHW2oCqgjZ2Zyq8sCyqYkzhFovw9G2VSzQUzGYz6nWjv0lZWVY1OnwKkKa1n+Yx0aszqRXFeDYBWxbVxWABpclV2bDKLkUYZyrxYMjvVKU8og+22IaaoloeUWankLJQiURUU7Vbm9O/JwdhsuNEkMnOqyArj2oSWfEWrsiaRvC1QqlOwPi2Tgb976nBHetTWaGFJv3wvsqWNzOmLSsWebRBLkjWlykidc07vT1pASA7p2GCc3pNaUvxe0rZmfbcdiaRKTQHW1A38rr/yu2GkHHVVAyvBD8SGZnB8B27g/KmRXy91vWxDcCkdpOkMbUs3fnx8hP7aGvKsQJEV8Do+CbPLCtPjKZJ5QsnXvovB9gDClkij1PiBcslRFiXyqoRnLwW6WUnOCAt1Q5OCMsbiKMH0eGYCKm1HojPsIg4TitNpalWVkF9l3MbksKIWvjSN0OkMT20gXHL01zfw1BMfQlM1aFiD0fERQafqdEjwqRJgr5gla7NaC5YxIXCkRK1OvAVgaNJ6ERCcIS+XC56t8hgLncagTslS2eIBtHBK0Ma4Cu81TYPR8R1kWWzsjfRlAeoFXP5dqXR3GsLLkgxlUVEslLKY0wt6PEvMOHWKRJ7k8EIXJ82Uno9loShI+JwsEiSLBIvxQiVfVIgmC2M9BlAWHP38CtKV6K51KYZGic+rsgZXcI/t2SiLCm4gzEnpz5qflKhBcVCUIlErgS9p/pYSnQZplKKpyfdUByRLW0Aqg2IKwa4gbYFkkSorwRrpPMHozphsxVSVnkYpgi5lfXK1YEtbGoecpiELLIsRTMi4UBE6/LS5ki5aVEwR/ZXa5BuKJWuqGmCWsVasihJNQ7FXeVoou7MS7e46dKBxWdN9cDxHFacJioyKFh0S3bbqpFjVsF2y8NMJM6sneL3Y6hMW51xtNKQV1i0EsyhDG2RQwouG8mq9uYJOC7qQ0adqKm5oXBajzD2yBGRIOQXZZpyRTrZpTERbMk9IoL5IsZhGqNT8rsvKuC1JxzZmEzpiTnvdMk7wpdelfNdw0DG2ZUE3wOjO6N6Jh2XB2TYtyrpEPiNdoM4q5JLWIduzTcJJXaUoczIh0Zu23/HMPNLuR/oUniwSzEdzcM6RpzniWYJaaRCLtDBSsTzJwTkz89d2bTq51oQ2aMiVC9KzUujv6WxPCyS6F2qtaBvaPE17BPS+6rkZFTGymAwAiqww0oxkHqv7Svmf2kTB6/gQkpsNq15BV/KU9JtmfqsiFqBDl6v0tlCf0XwuNf/0+LzQgxt6pvj4dK6XrVP0/Q4Orl3BZHSETneApz/+YXzDt367gR40JOD45HBQ5iWausYiI41MZxAiWaQYbA8wPhhD2gL9rQHmPEUzpFBNm2un/aUhc92Qo/+8JgEoRQCRaL9QHoWdQQj7vk1UTU5VhaqgdSICQCkfS1wf5jPv3HcBx3f2cXxwBxs72/jgH/wBvuud70TVLGHLum1MYjwscgExaReqYm7aBmmRG//ISn2dnkTaucIIc5XDjIZQdeUrOEehdIJ5WZmNWDKGVsO3UmB8Z4zFYoy6pqzIUyJVVenpUFqAIJ26rJEVmYEr00WCyeGU4D3lplFkhdkEtO7T7/iIgxhe6ML1XXTXuwDIbzNZJJgdz2AxC9EkQjyNUOQloglphwysMYlMb0Z707qBq4KkSVtkMQANbZxFStZcQe+0CXMLJWrWfQblrpwnZPukX8q6rjEfzUkTWtdqPtJmmac0Z3USuOs7cAMXjk86N1uZGecJGcynykDZsixToa9uJMkshnRtA6MOtvpwQw+2KsjoJMEMva1tGkjHvqc5qBNodBuoaVrURbH0wGxIo6vhP2GTc1K6SME4ec+G/cBAtQsZU0htSgtv0zS0EU4jkyajv3d6NDNOP/reaBG7F3qk5VvZ6NumRWM1aMsW6YJM3r3QI42mPH26r6vawFp6yNoasCrJdLtS97FSz4cxhsV4YZxRHM+hQsqlQqZQtmK6MCjSHFmSk8VbVmB6NAMTDMksIU9hNS5aVAHp2ipLU9KppawBMDA0BNOVpLnWJ2Jhi3ssxXRV09St2gQSWBYt8tKV6G10EfY76G30yEyBc+MCdf/WJiZxjOeevII71w4wH80xO5mZ8G6tmdRFWhZTgk7bNGiaFskiRpLMkWUxOJfwPEIrXJeMArzQRbIocXzrGG6HotxWe5Bt0wLMoiSOWXyvc5Q6icFS6BK3yNNVvZvaHzaex6b4qMoKeZLBYrTWxPOYzAIEaRa90DPzUyNFbdOaE3UWZ0ijFG3TIFmkCnGBec+0rzXFUi1TN/Q8lbY0SBjpcl/eNvcyN8UW3e46vuBL34Z/89M/grpp8Lr/4XPQFALTwyn8ng8fwNqZNZzdoLDNqm7Q8TwczmaYzyNVScBMeIDgCNshLNmyLAjPM/2AsqqQliVclfWWFgXKrIDt2gj7tFC6oYe2bhDPE0zHc3NjueBwfRKpUqK6gJQOZvNj3O1wIITAV3z9N+JHv/970bYtPu/LvgznHrgIwZaC2apuCMphzIhLdZhn27ZmA9UZi6vRMGru0V1Up0Ht44qqgqPc8TWUWjdkI6ahfx2rRRszRRNFzILX8fC5X/LF+L3/91fgusGpcQkpUBUl/u27fgwvfPJJRIs5vuNrvwZf8GVfjkde9yb61WWFZJZg54EddIYdnLt/Fxc3N7A3npDva5xhfDBGOk8x3B3i3PkdDMMQaVHgEx97Fse3yRUknsaIphEWkzmEkBiPD+A4JHq2pYuyKtDUFYS0EXZ7GGwNEE0jSFtgdkIO/fS8XOMqAtCpIZ5FxjNxORVb/OQ/+UE898QnsJjN8A/e9ja89eu+AW/5yi/H6y9dRFHXOJ7Pcf3KHiYHEzOOtqbFpG1b5HmCqiqMpRxjDJ7bARcS62fWjdtGU9XIM4rZKYsSaFoTqlxV+eksOy7hOKqvp05CdVnBDT1017oE3zGOIqeF6oHX+wZa1FfTNHjXv/hnuPL0U4gWc3zbV/8tvOWtX4VHHvvLOLp5hLKokEUpyqIy1TQAtYhSFqSwBTbOrpvq3O/4kI4kU4hFqjZ6KlwStTHWZYUkUQJohToIIdHp9SEdSQuR2hS9jk+LDqNTFZcc0SyiTM2mwdlLZ83mqZ8XFxw/9o+/H8994hOIZjN881v/Z7z16/5XvPlLvhRFVuDo5hHmJ3NTgFDifKVMB6AsARv4HQ/hoEOmBJ6NsBfCDRxUJfkg50mO+WiONEqRzBOURYk0jsy717YtBJdwfA/ru2sQNgn2u2tdMEYG+MJWrlI+bZgavmuaxlg36qvICvz4O34AezeuIE1i/NC3fxO++Cu/Gm/8K5+PPM6U/SS1kg6vHaBWBX2e5nivPoW1Laq8xP6NW9jY2aHCwnfguDYc31EB34R+6OzRLImxvrOFoTVEluSmPVGVVPzpDUM7CdWlNhivVOp9Ay4YwkEH/Y0ebNcm5ELPw7bFT/3TH8SzH38ci+kUf/8rvgJv+8ZvxN/4W2/DfD7Hye0T5GmBPMkwPpggmkQY7gxxcPWOmkMN6rpClkWwLAYpbRPwHvQCenb9EH7Xh5CC4tCUIUuRkgd0liWo6xq1SgeqqhJCmTwIIdEdDBAOQioiHIn+1oBadnWDqilxsj/C5rlNs558OtfLPikKIXHf+Vfha/+37zaTrC4rCpPtBfBCD53Ap9gUQRVWVVPg5rDfRew5qBTMAtDCwThDnhXIygKeTZUcOckzjKPY9O9Cx8VaJyRj7qyAxRkGndDk3QX9EIwzxLMYdVmZDDRd6TUV3dzp9Oh0dpiqxF792jfgkR/+LPgdD9JdEn80oeFksUDo7hqokyuWnybR0I9ScFBVgVmAYHzJTuUcVV2ZqCj995p9xzgniLSq0LQ1CgUhAwSb2ioqplxpdu/cv0OYfF3dA582Co79qr/z9xBPI9MT8zvk+kMVOt0fx3cQ9ALM4wQfff5FYxOWJwTLXHn8CuznbFxduwpbvahC9Y2ykqDsyfEJDg6uQQiJtbUzCLs98yK6gY+gG2CwPYDtklv+2UtnYXs2ZsczzE5m5NEZpcbgd+v8FgAgi/N7FiIA+N+/9/tQ5gVmxzPTY5uP5rgiqRE/V0kcvfUuLAvob/QN1EmVf4CqlCh5genkANPZMXZ3HyR7vdHcPP8kWmCxGCOOZ+oEp4of6UIIG1LakNKhGDUuTG6gUA4zlYJcVxMcvNAjeDYvT8On6vo73/adBkoqcyIUxNMYx7eO0d8aoCprLGbkBhXHUzRNjcDvwXED+CFZBZZFBcfjsNWGZllUZNRlpU6JMdJFQptskqJta+R5Ytw/pO2AMQd+x0PQDxEOQvgdnwqpOUHrugerN3Z9f8kD83ThyQTDN33v99Hirsgeb3zkIdwcjXCsIEmLKUtGBXdWVYWiyJDnCcRcIi9SFEWG9fWzaqOVCHoB8jhDnufG47ZtW2RZDMYUAc7xwVQ2p+ASjHPkSYqmaTE9mqLMS0TTCGE/JF9f5cilN0PdH62KJVln+Z41+Npv+jaM9k/wmje9RkXYUTuhv9E3rQAv9Ewv2vRMswJt08JiFqRrY317mwKxuz4GWwM6wTIGYUtUJYXxhoMQnWEHZUGJFEVewu14CHshgj65MuVJbuz9pC0oY3aeIJ4S0tNd62J6NIMbekjmiYnaW0UtWgB//wfeAck5kjTD/GSON7z2EuZpirFKwxFSAL6L4c4QgYqC6q51kSxSWHUNXjM4zhqSJMJ8PkIcz7BYjOH7HZw79wjmozmkLZEsYhwe3iCbRmXtWOQZmraGlK5C+/gyaF3zPAQH5wxZlGK8P8bJ7RHCfoCgH9LmfzI3nsaf7vVfZAjeNI2pTpu6wfqZNYoH8RyCohS+q9mTmhmnQ09XJ1NdVuCC3NLnKW1inpSIsgxcHd21FVboAEWlkjZU5I9mhvaDAJmKkvFsGwvfAZ9ESGYxkYKaFhanaiUMB/dEEQmVw6Yx+aZukBUl2SelqQkdHUcR3BWmrCOEyWHT0GdZM3CLKeulwrBiW7SGRAQsoVN9aRKPzTmsogC3LJPJp+O09AadFgV6vQ4mh1OqmoVNVkwrV13ViGaxgdn8no9OPySZSlFC2BLroWssr/ZVPzCeJctsQdC9O7pN1d+D/qsQdH0MtwcIBx1UZYX58QzJIsVivADnl9AdKus/wQmCVAvm7oO7OPeac2ZB0H1NL6QTiCYwCMlR1w0ObxxCSHqhUwW/rl6MWTi6eQTXdxEo1CBPchxcP1Q9Qhvd9S76WwOM9keIJgsUWUEvSlWjzEoDi4XdHrzjLuqqxKs+52Fs3LcBR7n6L8YL7L94B9PDiSm0GsVutTgjIpllwQ09+F3f9O02zm6AcQvz0Rzzkzmka6PMKDklmkQY74+w++DuqTG1IDh6ejgxzDqANhQKYwW+9bu/Ab5t43A2w/FiAUcITJMEi9Gcer+eg9H+CB/8zQ/QfFLfB8Cw9qKIILeyzCC4PJW4YjEOWzqQqkDNkhzRjDZk27MVrJ2b9PT+Zt9kU9Z1jVSdRFdP97ponJ3MDYGES45b4zEmJ2R7uHluE2s7Q9ziHEE3MMVAmZdk09g0qKsGTz35PnS7azj7wAUEvQBhP4TFLJWlmuHOi3cQxzPU9RyO48PzQnheACaWsKXO/ewMO9h9cBfJLDYQP6W40ImlqWqUWQEncCnxpqxPn4BBvUKv68GZuQbmy5McvfUeti5sEnu3bbE56Jvi1A1c+F0qvspc+wjXOPPgrrGu1GS0ZLEsqOqyJs/g0lmm3gcuwj49B7/jw7KIKNQouQL9LIrXG98ZI09z09ukr7dwsndCJ/GXMHNP0gwneyeoyxp7Y/r+sqjQGYRmDgDA8a1jRJMIQS+ktKK8NH3O7kYPm9UObM/G9eeuYO/Wc3jkcx6FtAUhKLZEmZd49gPP4ODWvpqbBbrBAJ7XMSxnz6cg804/hNuhYPOgF6LMC8xHFMpQFkQ60ifP6dEMg+3BPeP6066XnafILPITLdICXuhCqIUv6AfgqoldVDUWWWbCQQuVaJEmGfKsoKOyag5rthuX5FuoGWG2ELCFQKFywCyLNtWypr4DU/RtW5Fg2rY14aFaXsA5N/2Jpm5QKMbddHJ4D1OTiBeZiRWq1OfrDDuklbOoIDiaz8EsStaeLmL4notEbeY6AFQKQSnmPlVOTcsVCYAbmrKOG7qb3uwIQYG1nJukjkQlnpsQ4oJ6Q21L5tu2Z+PMmYdw48bTp8ZUlTVO9qh6rSsiWkjXRnoyB+MWdh7YwXqvi+PpDP1OiMBxcPXGbcyOZ5gez1AVJYqMXtgLr76I8cEE44Mxzj96HsKWppeomV5CcjzwugdNH1HaAmcunUGRUR/vr37RZ+F4MSe4XDX+27pBZ9glBp0mRNQEkXEpcHjtAFxtjKdmokUbIjFXCfZpaqq83cBFb6MHITm6rofejo+rno3RbVvB6mJJTFBaT7/jYW1nDZPDCaqiwu4DtFlpb8UsztBU9ZJ0UVQGNg36AVWnvRBeSDA9bfYevNBDb6OP/Sv7Sl7CMNweGunGYrw4RY8v8xJ3XrwD26N+pnQk6qpS0B7Dxn0beHpvD2eHQ3z4I08hnsamr6kJCtEkwo3Lz2Nj8yz8XgC/F8ANXAjJkczplCxuS5wc5ciyGp4XgjEB23bguj46ww4GO0PTBwp6oZHxCMlxcvuEetBlpT7vPnYe2IXjEVSnE1+alQXWsizkcYYyK+B3fUhboCprHN4+huM56A866LguPJvy79JFYtIcTvZHxHhV7+zr7c/H4e1bOP/weayfXYcXemCCocxKJHOKMMriDNOjKeX4qT6k7dmkobalYlpaFESuCuyn3/e0OZkxzhTTM8V8NMd2L6BT1SI1pLHVsQlBvcayKIl5OY/x6Ge/BoHj4GA8AUByJmFLNE0CpjgB3WGH5sEkQoECXteHsCX2r+xDKEnGwdUDxaMgUpgXulQkWRJZkqM77KC73jXroBu44DoWihFJqqkI4s6SDEWWoypKgkttgXAQIl0kxAtZ5VqA0JeDqwcAgOHOkObXLEZTN+gMOwhCHxudDnq+j1uhj4M7J8SGn3pE5FKSLN2LZ5zhL33Rm7D57C5e89mvVqdoxZhNcyzGZyFdG1VZYbS/hrDfMT35oB+iu9Y1RBsd+qCh2NnxDC9+4kV0hh24gQsv9HB44xDT4ymYuKtX+imul7UpaoKJZoTZHpEKGkWBtxRtWOevCc6RFhWO5nOMbp8gz4gsYCt2X11WSKNl5S0dqjQFZ1hkKUKHNreyrlAqw915TPCa7UgI10HoOkYDU1SU21g1NVylaWKCG+ZfU1N8lB/07ukpcsHMIlmkhbnhmrEnVYM9iVJwzlCUFY6uHyJZpMYEm6v+jXQk0n6IpMjh2w78poFv20YPBwDSaB3JAT6vKpPjOIoivLh3B8mcyAFCUjWlP1NVEpRmSjLu3QAAIABJREFUWRYW4wWSeYzP+8ovxLv++UdOjakqKzi+gzPnt5EWBfYv3yaCUppj89wGzm9ugDOGaZLgzZcuoR8EGEcRDq/T6Qs+veSakfqXvuQi/vDf/r6poucncwNhZHGG4c4awn4ILjjiaYTh7hq4EMiiOTbPbeKLHnkEv/aRj2C0P4YXUmqH49lwAhdeSP/kCTH2KtfG+pkNnOydELV+cRo+bZoWd64d4PzD58lAnnNUJaEXvfUuNvs9koz4Ps4Oh7gznRp2rZby2CpMOEuocg56AfpbfYxujzA9mtLvbEmbxwRHGmUI+kRg6G/1iexQt7jv1fehM+wgnkaqP0UaMw0zc8mRzBMc3jhU8BtDb72LuqrpVLCyKdZlhXMPn8P8ZIZw0EE0jRBNIjzw2EUkii0bz2KUva7ZmNuGiqPFeEGaUM7Q7W2gt9nHmYfOoDMI0Rl2wbhFEHpVm3et398wMFtHLa4XH7uIiw+cxfXr+zi6eYSgH5hAaYtZ6BUViqxUGZTAYhLh9gu3sfvQ7jIaCLin8Nx/8Q7CXmAIVfrd2tocomlbDMMQa2GIvf6xyt6s4YYeBpsDpXelNIsH3/gg3MDF7GSGc6+5j/qixwmZVFQksWnqBv3NPlHyfReb5zaNXrTMaeOiNB0B6Up0Ah9B1yfdYEuoyvrZDZzsHSOakYm21vy1dxGjtKRICEHkkBm9m8MgIFKKOjHd/9oNPPfiDcxP5kZLa3s0B3XPSypovcgKvO6vvhauLfHke55EGkdwHB9b5zdR5CWCbkDs03lCfbSyQpaVZszjqweQjoS0JUk6uAXHs9EZdogpPk9MiLEXeugMO7j9wu1TBERlMYDbl2/j4mMXEfQouSVPcoT9AL0ehWSfXVtD4Dg4ms9NYo5mDHuKaKYZydKRGGz1MdjqI5rFBnUo8lL1vWn9tCwLm+e2UFc1uODYuUh9VmkLWJxQEy3RsD0b/U6g1nHKFHUDgojzJMfJ7ZOXRJr+tOvlbYqcw/NCFClV467vGhYQY8xo0qqiwsHVO5iPF5gdTXF8vIeLryLHNDcght9ge4j7H7sft569ieNbx9g8v4X5aI5OHeIwLdDzfIQOiZFnSYIrL9yAsCUOrh0gmkYQKgX7Y01LpzmVLvHaNz2Ms4MBaQQFxziYqHijBnEyQ57TzWErmyJVxAJAgWSWUKgnYwh6vtGaVQXdqu5615gSDHfXUN08wvGtYyymEaA+i7AlhORwFKzhd31sbQ3RdT1IIYzg2BGUhXgwnWJvMkGUUFWazhOq6NJC9fpCs8Ft93qUI5kWmB5OwDjDcx9+Hm/7P74SZ85cQts2uHbtSQCA7Ug8+IYHcd9wiF/7d7+PPM3xwOsfwLnX0CJ+4+gYs+MZts5u4P2XL8OREh/7o8eRzOj3U6K7NP0N23Pwlq/5YnTXu3jxiato6hrv+d3fBWMMb/rCt2B2MkNPNexzW2J2PMPBtQPYno3dB8/gl9/7PnzyPU8imacQtkBnECJQWjCj4+MWBtsDHN04RG+9h8f+2mN45v3PYHY0PTUXsyiF67uIJgvAstBd62IxXmD7whb6vQ7iPMfh/gkyxeq9eXkPB9cPjPSkKkpihro2XN/B5rlNuKGHeBZj89wm4lmEX/mpn4PrBrBtDw89+lpceO0Fo6/KkxzXn76Ob/3ub8CZwQCeLfGDP/zzlONpS3AFd04PJ/C6vtGdCVtQRp9lIewHSKPTLysXHH/ts1+Hf/8bf4xoQlD29v3bSOMMo9snCAcd+B0fwyDE5GCMO6qKBwC/4xnI8uHzD+P6UzeQzCmpZjFeIJ4nsCyKw5ocTrC2M6QCNysw2Bki7AUoiwr3XzyD+zc2cHA8NppTrSm1XRudQYjeRg/RhGLUsugYF193EVefuIrN85vYv3wbk4MxNlVPGADiWYzeeo/QoYo29mga4fWPvQrTJMaH/uBjePs/+Dq40sav/eYf0dy5TlFVtkswuOMTZHjmoTOwHQnp2Hj0/vP4d7/8u3jivR+HEBJeEGLjvg1cfO39aFuSJDmeg7/7FV+C5/bv4IOPP4PZyQxt25rNSSNd3Y2e6gFTr46HHm3ESl8qHUlZl7P4rnWRYbg9oDVvNEdV1jj7qrO4tn+A8cFEpb6QcP3w+hGefv9T6Ay6lBJiS3SGHdiebWQGmqV7dPsEx3vHmI6PwLlEf81VxVcM25E4vH4ILjgZeHz0Bbz1W96KL3z0EbhS4h2/9SEj6RBSQDrq9zgSfsdXDHFihXaHHWye38KdqwcGpjXvWZKhv9EzuadFXsILPQw3BqjqGgfjCRxBUrhnnnoRk8MJ4hkR9LQ0z1b8jEfe/Che+/ADuHVCRSdTkp/f/Ne/gsPD6+h217G9fQG7F+9TPcoAs5MZvuvbvh4938fBdIqf+NlfNezfuqwQDjpwPAe3o9uGhfpZX/RGDIMA1w+PUF2tMFlpe3w618uGT4Wg4F7btQ0bTTPgFuMF0oh6Sx/5kz/E4eENfPZn/03keYL7H7sfQnI89+Hn6RfbAtPDiamm2UrckGVR1mI/COBLSU4JtsTkYGzib5jg6K338O5ffTfKMkdRpETNLiuMXnMOly6chWCcIA3FVk3TCI7jYTK5c8qCiJrcEnVlKzu4Gpa0CNJQWYBMVSfJPMH0aIrRwRHKIselNzwCy7JwfOMIeZ5juLVm5Ci2a8Pv+Th76SzmcQrBOHwAs7pGz/fh1BWYZWEcx4iSFEc3j5AuEoz2x5idzHDjhcvY37+Cixdfhzd/+edj/8o+rgoGr+Ojt96DdG2cvXQWt1/Yw+xkhrLMTgUO66qpbho88Z6P43P+5pvxlV/wufj1d38A85M5beQAFvMYj3/8CSTzGLee20PbtvC7PkkIQro/fsfDYjzHaH+Myx+/AmELzI5nOHvmEhzXNRj+YjxHb72H4fYA0SzG9IhMBY73jnHtk1dx67k97O+/CMfxcP+lV2P3wV34XQ+LSUR0ecvCY5//GJ5671M43jvGzgM7qIoKe7deODUTWwB+18PozhgbZzdIOsIZxXkdjpDMEiOt+KPf/xD2XtjD8a1jcM4Q9KkHUVcNrAFtqBv3bWB6PDP6rv0X76Df38LJyR7aZgz/ahe99R6660SvH98ZYTFe4OboBH3fx5O3bmK0P4aQnLScXR+7D+zAYkQiA6hI2bqwDa/jYXY8Q1PrzL6V/rZlYbSIwLiFumoUQcPFwbUDSFsYCOt9H3sKaZTh6vPPAAB6vXUkswDrZ9cV+1Siv9lHZ9jBhddeQFs3+PgfPI4bz1xHZ0AQlNfx6eQqudIVkxTg1q1DHJ5MMDmcoG1bHF47wI0rVzAcbqG70cOG+h1cchRpYXpx9736PozujOD4DmbHhA4sh2UhUEWAztWzHYmD6RQ3L+9h/ew69idTuFLiyXd/ElwwPPvURzEYbGFz+6yR7eiTR1XW6G8FuHJ4iGc//Cxu3XoOjHGsre3i7ENnTG8sWRBLN3BczFMypOCcCurf+fe/Ds8LsbG7jeH2AGceOgMA2Dq/heH2AHeuHZCsoCiQKtKNkNyQ8PTFOEOySCk2SQj4XQ9t05p3qb/ZQzRN8Nt/9AF84Lffi/FoH2W5C8fx0bak4+6ud+F4Dtq2xcneCbjguH35NsJBiIc/6/VwPAfxPMYLH7uMzXObBi63XanIOzW4oB794zeuY3I4xXw0hxu4WNtdw9qZNcyOZwZpYpwpJmultMB0uNHONwDFO1198hr2X7yD+15zjvgWVQ3GLExGM8yOpuZeXP7oC5gcTqmvOJ9hbXvTwOhe6GG4PUBnEOLSzg7GcYwDJZvK0wJra2dQFhnSLMJ0egz3IMBwZ4gyJ+37i0eH2Ox28SfPPIfR/sgEJKdRhgff8KBB0TQnYaffw6XtHXQ9D8+872nSxWeffnTUy9oULYvB9khUqgXPAFBkORbjOQ5vHGF0cATL4uBcYmvrPM5eOovJ5ABBP8Ab3vhqFHmJ/Sv7NIC2VdKKDjhnJOIuSGCrHRI4I4lCf7OPp9/3NGzXxmBrgAff+CAe2trClcevYDGJ8KH3/UdcvP8x7D1/C60iAr3x0YdUknpt8vt2zlzA3q3n7hoX6Z8qxebKKsozvPHMTWQZVYXrO1vYuG8Dlz/xHI6Pb6GqcmxuXsAb//obIWyBm8/cwNUnr8Hv+Kp3QZBikRZGgFo1NYq6RtdzEec5srIgG6M8xxP/+QmMD8b/H21vEixZdt73/e88Zt4c35Bvrrmrq6tHdBMEARIUDBIgpRCp0aYp2+Gw5HCEbVkLh73ywg45FGEuFNoovHB4oQgtbFmibFKUSApkNxqNBho9Vddc9YZ688t5uPPkxXfOyfeqQBG9UEZ0oKNRr15m3nvPOd/3/f+/Py7d3sKVN67gg9/9AHEcYnFxCyuX1/HNb76FL57s4fM//Rzd/S5++bd+mSwMjoHr79zA9p0djEZnF9rCkizj6MkhdtYX0O8f4o2vvoJ2pUIVyCSA6ZjIkhR3Hh7g4U/u4fR0l9Rj1SaAZRQFeeAUhRaC7kEXp7sn8FoeVq+t4uobV+GPZ4jDBEdPjmhuINOmrZkauoc9xmclE/90OMNgcIJ+/xCOU8XhrikWDd618Voebm6uodXw8Dt/73/D9beu4b1/+y/g++ML10yWJeimgeHxAIsbizRjsXRMBxNM+hMkUYpK3cW4N8ajjx7h9PAAvd4hWq0VaKaOYOrDrtAcs1J3YVgGiWAMDXfe+wJOzcHPf+ebOHpyhDROkKU5nt3bw9btS1BVnh1p4bMP7uHkpI9wGuLg6R4qXg2723fhunUx7+DtPMs1sbKxhGtLS/jRg8cY98bCczv/XDJ2j0+x8fImIj/C6e4JzTOZt3BwPIAkgUn0UwwGxyK13nYr0C1DdCeqTaquxmcjzEY+7v34U3S7+6gNF7Bx9TokWRLt4CIrEEwDqLqKk90TGBaJUFaudLD3xR4ePfwRrlx9C92zA1juW3DrLiOeEJhjcNzH5itbuPfhHazf2MLpzilmo4sVlaZrF8gipmvh8WdPEc1CNDst/Mknd1DmBYKZj5XLKxgMjlCtNjEdj+Cy6tSuWChLQpPd/+A+li8vY+vWJSiKCtM2URQFugc91JcI0JGyw/p7Dx/i6bMjNFdauH15E0VR4J/+w/8deZ5C75kYnvbhLdQgScDKpWV87do1/B/39wGAKaIJcuHWXfLHnl8/AJxsH2NxYxGmY+Ls2RnGvTFG3REURRbPW5Zk2N9/ANuuIE1j2G4FkxGNEkgs46DIS4zPRvDaHrSqTQrssoRm6CifUYchmARY3FhAs9OAbho4enIIWZWxd+8ZPtINfPL+HWRphsePfwJJkvBS9g7zGVuk9mSZkWs31oQ+xHRM8iaH82s26U/wwe+/i9biMmWO5gUS5vMdd8fU2WtUEPkRDh8fYu/xE0wmfViWi3q7RZteHKDMC2y+vIEszXE4GIjuzdmzM3jtGl775ddQ5LfRP+ojjVMMjvoY98ZodZrIsxy///++B4uBLgZHfaQp3ffD4Qkcz8GoO0KlQR2UsiwxCSPEGVF2NEOHP51A0y7Ogf9dry/XPpVlMZzlisE8zTFjUvHtR3ehaQZe+9rb6PUOoKpVvP9v/gCrazdguRb60xlK1mKcDWeo1F0iLpiaSD3Pz51UGo4D1zTRn84w9Kn1EwURGssNLFSr0DUNvYMeACDLEniNFm5+7WV8+sefQpJlPGSKRGHs12m+Y5gXjeBgBk/Hc2BYBsa9Mc2PPAcbL2/AsA20V1pYurSM0dkIyxsr9L4NDdfWVzAJQ4xbHq6+cRWT/gSt1RacqoPZeIbx2YjUiMznqJsKaraDUeAjSlIMEh93fngPk/4Ebs3F6z93CzdXVvD4J48RzTagaCr++t/+S+jU6njinKKx3BAUCkUlyf/6S+t49599D7PZ8EKlWBQF7n94H+31Bei6JfitcRhjeDKA47mY9CcYng5JhahqaLfXUPFqTGWYMgM7KVD7RwOkSQZVJ4m/U3Og6jQfGndHwm8IkErOci1CmslkijZsA5tXr6Fep7aa4znIsxyjM2pnJWGMxlID7WoF660WgmCM7kEX0+kA9foSzs7m6MIsoXbydDCFXbXx+vXLOBgO8en7d9A76EHVFPGQTQZjTCd9uG4NrluHburwJzMSijBKxqg7hqKpmAym6B2f4qWv/hJaKy1Um1UUeY77P3yAaRhRu5Z/xizH6d4p4jCGVbHgOBUMeifw/TEUhdrHs9GM1JmyDLfuomqZaLgk+6f5S35hpiizKvU/+au/ioPBAH+83xWKYM6Jba20Ickyjp8eo15fhGk6sK0q8pSCkjtXOsizHPc/uI/+cZ8QX0mGRmsJrtvAZNLDdDCFU3PgtTw4VZvm/TlZYjSmzuS4utAPsNy5Ak3TkcTU4ucwB6/l4S/91rfxD/7u72D1+ircqocsyaDqqiC5AKQ+TWMarximjsTUkWckBOOey+tfuY7ZaAavWUN3v4tO5yparQ6SOBbrgqKpkFUZ494YwcTHpD/B5dcuY+36KsqSFvJHHz2CP5oJkVESp/jRh3egMFrM9tkZphMfXm0BFbfOzOkSJr0Jags1mLqGpVqNFkhm/A5nIYnWvvoS5OeRgwC2P9/Br3/3G0jSFO+eDLD/YF/MQTllKE8zVCoNNBsdaDq1+pzUg8sOZZAkBFMf494E3kINDlPVKszDV21WCeChq4gDAhFYVRtFUcKu2Ojud5FnOc6enaF7fIzxuItqtYlgNsXO5ztor7XF82q5FrZe2YQ/DnD89IggHjMfWTY/tEynQ0iSjPpSHcdPj3D77ZuQ2w3sbB8KhezwdAiUJYJJCMtyoesWqrU6gTnKEuW4hOGYkFUFw5MBPmaABgBM8GRh+dISkihBe62NoydHGBz14Y981No1mI6JwfEAsiLDrtrw2h6mwxkUWUG9ToB53uKvNCqoNCrY3jnE0RkJfmRZwmw2hGW6f8au9uLrS22KmkatHK/l0dDT0BAjZibOGDduvwavXYOqqfjV/+g3aKGvuySsKUp0j/tYu7EG3dDEkBWgSk03qdVlsJYsB1BXTJMEIL6Pl776EvE1ZyGe7hzgmalj49Ym9h/s49atX8Cb334Tlmuhc3kZX7z3BcJpiFvfuEWVm6rglXe+gqd3HqEsiwtWCFmWxEVUFBmVRgVLm0uYjWeiDQcAJ7sn+Ppf+Tpe2lzF8WiM0WiKJwdHmA5nmAymKIsC1WZVtI1kVYbK1KVJnCK2CGb8kmNjFkVI8gizKIJdsfCV73wFkiTh6KSH3d0jvPUrb+GdX3sbcRBjFAT4o08+RzgLhRe02qoSH9DS8YN/8QEePvgQtu1duF55mqHXO8D9D+7Ddev417/3fWy/eYpwRobi071TmI6JzVubWL2+ymZttFGEkxCVRhVu3aXZm6XjdO8YzeU2FtYX4Hg2M9bTjde5soJPv/8hWqsthNMAVsUmsQ6AgPlGFU1FfamO9tocVC9JZBNIGCQ5z3L80Y8/xcnOKRYXt3Dw8AC/8t2/hcZyE4//wUfi54q8wGw4heGYUDUVb126hFa3i52Hz4TVwq05cGsVbNxchz9+RZBugrGPSr0K3dDgVIms0T/uY/X6Kv7J7/xj/Py3vo31l9aRJimqrSoiP8Li5iL8sY/h6QiRH2NxaxEL6wvIEjJCT/oTrN/cwIa8idvFW2JWRd5L8hq6dReff/YY7/7RjzE4GtDc6NmZQKgBVAHeefcOKr/9G9BVVYCex90xKo0qkihF77CLJEywdn0NS5uLCKbEh3TrLpng905huhZmoxmWm8tYvbqC9lob0+EM0SzEo588xu6DJxgc6VjeWkaakO8wCROEk5BRgSJmqdGwfmMD6zc2aMFgm92kNxEm/h++9yl2976A9yctdC4v4x/+/b+Ht9/+NYSzzQv349HTYximjtuXNnF5cRHff/gQp7uncGsOFjeXkMa0eWy9somiKLEyWCVSzyyEWbHE9zM4GgggQ3O5icZyA7PhTMzdT3ZO0DvsoRolqC81YDomdu/uCTHR8c4JZFnG137tmwzaQALBMVNcP7q7g5+89zk9j08Ocbp/jK2Xr+D9P/n/MO6NcfWNqxc+V5pk2L7/AO1KBUEy55oatoFmp4lKoyLukza7Z+KQbBv1xRp1E3QVuqHh/g/vw2t5aK00UWt7otvElc4bN9dxvH0CL0pQbdEBpLHcEN/N6e4pdFPHzbdv4/LL14RS3x/76B/2EEUBGottrFxdwavXL0OWJPyjP/6E7Cn1qjDXA8BCZwU33ryFteurMF0LX7t2DZ5t43uahkrdxdmzM6i6hmqriqtvkTq7fzzAdDDFuDsWs1Y+UyyKEv3jAZrLDXz2J5/j+leuY/PWBgxVwwRkVak2q6i2qmIWW1vwBKt23BujtlhHfamBS7e3yNfNujBpQgIqWZZx9PQI996/C9+fYnG1g+n0OSzfn/P6UpuiohLhQ2Nmb1VVyDviWmguN2ghdEzBJb306iWoqgLpHKpIURUynXJzPOPpyaoMXSUZOse4RAwuqzLgb32xDkVREM5C+JMAepJh65UteC0PwTRAd7+LOIhhuha2bm9h1KV5lqLQnGfl6go+++BDaJpxYY7DW3e8HcwTHapqlZBBnJlZlJj0J/gi2yOBBJPCx4x873oOW6QVOtkz3B0XAWVpDtkk8rtjGIizDHE6V3dyj2TJwL9pDDQbVTTdCiVr6MTUdDyHQOFpDk1Rsf3FYyLiP9ciyLMc/f4hvPY3iTWqa8jTDPWFmphRANQ6LosSQRQIVmqjQ8ILzdAhycDobARIEh2K2lVoho4kIjtAlhKAIctTDI5oxiexgwZHfhV5Lkgb/KWbNPwHCJHFv/spW+AW15cYexPw2hc3fEmWqMVXd6FbOnpTquD4aTqahag0KrAqNrUeg1hUPpIswfEc8hTahIcyDRMHDw/gunVCpUkgyDijqngtjy2ejGEqzaHsHJul6iRoOA/CLpALn2Y4DRD5EQ4eHmAyGKPWrmM8HFz4XLJCM86PtreRFQVqCx5kRUIcMmatQgsEr+y4yV2SpTlQQVMFd9SpOrCqNiCTHF4z6WCraaR6zJJ5YoOikhFfkgltx5FsHOoPcBIVfZ7ZyIdVsXH45AiNRkeIX1ZXbxDV59zcnvtS3bYLTVHgGAZWGg2019rI81x45rh/NpgGooKutqpkqTDpcBvOQgyO+lh7aR1u3YVlGpgUE1JqqyqaK02cbJ8IG0BZluLZzpKUcGO6RrFMZXnhvvQnAfxJgJPtY5QlMBtN0O8d4pX6a9A1AytXV16Q9xObM6OOURBANzS0VlvI0wxOzYXjOUiiBEkUC89hxlTCzU4LpmOIObDvj3Dp1UuoNqvkgWUaCm7BcusVTMcPkKULBC9QSADE/Yi0phY0wtA1pPG88kuiBKpqCKXyk5NTzIZTjHsjTPq0JmjafF6qKIRXTOIUtcU6etOpSMmwHSI0XfgemPWNixTdGq2HiqKwf+b319GzXfzi3/hFVM35YSeN6JBfW6zj7OCEMJ9MtaqoEM4Ajr5TVBIRZSVthopCHNVg4iOKAgT+GP7Ew2TSh+s28LO+vpzQRpKgagqcmisWuzwvCKNTsWCYOmRVQX2xJlpsSZggi1PUF+ssP45+ZTCldqikSCI5gP0KRFmOSoVmHVGaQlUU4edb7LSQZhl8xqFM4wSLGwtQNBXBxIeiUWtBURVwXqDtmYhZEkaeZ1BV/bmsL/ZlMJBzKRN3Ujc0GKYuOJNcRk0Dd0KogS1GXosW7VaniYTBjTWDWo9g7yWNUxTuRcK8IhMPcDqYCtGSYRuwHQuWrmOz3YJn2RjMZihRwmt7FGtUlNA0Fb2TAY4On0BlcUjnX3lWYDYbQlUVRunRIKuKaDNwczhftLnCUFZk2gQUSSwqTz99CtMm6bZm6MwQnDOzLBmx1zauYX/vETZfIVM1FybYFRsZw9Rx28v5+BxFU4VIRmbABv6eAOK1/jQiharTIizLMp71+9RaMjXRyVA1BXlKCzoXS6m6Cq9dE4Bz/nucmoOP/uDH6Kxt0eBekoV/sCxL2BULXtvD4GQo+JmaPo+pOm+2zmUSI0iyJGYwtMCSVJ9SM0hsEgaTC0SbPKONcPfoFIutOryFGsoSTB1NL5FwkuVQmQ9PZSZohamyIz+Cy3xdnOEKEGvUa3nQNBNhSB5e3g5063RAkRUm0MrJj8ll8eQnVqCbLlPXGkL6vri4AZPZbK5ceQNLnXX4k3mrmVdpmqFhHIbkwU2ID1sU9PdmSYo0yRiFhczltFla0E1DqHfDWYgkSVBfrMNreTBUem7Bns3mchO7d3ZhV0g9yiEUuqGx1JgCZZmKJA3aGKlrVWT0fZgurWez0URca/qO3BcSNRRNhWm5uH90hFlAgptmp0lpF4ztqSgKdNNg106CU6PDnO2xSDrbIEW04aDWrkE3DRY5RfdWnpGQzLAMxDFBNuqLNRL0MR8f9/1m7BDO/d+qrkJm0AIe+2XYNIs8eHSAweAYlaOqQMKdf3HvsCRJOBoOESQJpmGIKE4EOJ//uaKgAzutjab4/bJMRY+qa7CrFu794B6WVtZQb3ooGJwlTagg0DRae9yqJ5Sz/P7h31+ezdnRHEBO962E2Yh8027Vg6LQATUMqd36s76+nNAGEFxF0zZgViwE0wDNThO6pYt4H83UxQU0HZNOFrqOWNcRpymlQjDjr6IokNX5pqhbBhzXQtOlE6WuKpiEhaDA5EWBZsVFxbIQpSmmfoBwQsowb6GGimNjFoRY3FikiJUogd4kwEBi6LDtCqbTgaB3AHPahiTNM+TyNBOmXs3UkTm0gaRMKCDLElEuDFJs8YfG0DRkzMoAnYV3prkwDnNwOP8sjmEIKXZZlNAssnO4pomG68CzbBgaVZYlSkSSDEvXUYKSMj74lx8gTkLIP+WiSxIEh1NEqS0PAAAgAElEQVRjvh6Of9J0FVaVWqBZnCKtWMJwzZMcygJQdPp7n9y9i40r11BtVVkFkYrqLk1SyIqEztUO+t0THDzYR6vTvFAxKYpCXE6NToZlAUgyLcAS874CEH5Pfl00g6rbIn+RtEGcT5W8cmFIKSMMwqyZGmvP03V062TojcOEIOLs93CVcDgNMRmMsXxpBY3lJtIsFyZ9gFo/7bU2uoddlt0mo1QoS44vJDydg0O7eSCtZpBFw7AMSMwUrmqEX4tiH+d3xTROWMxPRq04hkFsdhqQZBlpnDL1XY7Yc+iEzIz1XPXsVG0cPTlCe60Np+aApwZkDL5tVWzU2jXsPHogvGq8iuYbI0//II9dzA4gmjhM8FQChanGxfNUlqi4dWimhnQwr1LKEkzxSNaE/X4f/dmMNnSZnouEzUwrjQriMGYe6EKkWgBEO9p/sI+lzWUycCsywoT9Hpkg8rIsIZj5qJc1sek5VYcoTeya8xkn2IZl2Abd2yr5FnVTx/hshMmkhyynjcEw7Bc2RLoPZdh2FWfHPaQMA8e/Kw7d51FhTtWBzOaE8rl73fEc7N3dQ6vTpsOxIgnrjqJScDskCbIioVZbwLg3RhIvETCBkXq4AIgzYDmtqcgK1No1UfFnaU7pFHGKyI8RxzQiCibBBZAEJAnhLES1WUU4DXAyHkOSJPSGY6rKWbWds/QS3SQdgixLSCIZBYsWU5jFjX5HiO5Bj1BwYYTSNBCEEQUBMwyhZmhY2lokcRLzcPLPosm0Pqq6JvQRaZJSqgy7d7iStrvfxXQ4eeF6/XmvL7cpsrYTGa8JeeTWXRimDkWjE1HFNpHlFNsEALauw9BUDP2A2qCGjozdWHbFRjANMDgZwHRM1BZq0E0dnm3Ds220q/SAtiouxmGI3nQKW6eft3UdhqrCsyxUVlcEZi3OMnTqNeRFiaxJUU62rsPWDZxKEi7dvIHR6OwC5q0s6YGUn69O2IXSFCLVFLqGwjHngZ2stNc1FTXHQcaio7iBmcvCLddEteoiTskeMYsirDQaBDzPM7Q6TSFeUDUFnlfBjc6yCOIM4gSKLMNQNRGQm+U5RoM+Pv3xu0jTGJo2F0bwl1WxoWkGBidDNJbq1MJMMkHtAWjWWRYFCWg0BWBkGC5i1UwN1UYFr/48zTcby2Q5iWYhCaRkmslIigzXc/Da17+C/nEf935wD1ffukabgwKkSY48L8XhQWyI7Dvn4aH83zmzkdtveKIFf1EOog7dJEXjOAzR7Q6pRaSr1DqKUmQpyc3DPEChKLBcS5D9JRmsPSzhvf/rXTSX24LH6k/8+WlbIcuRW6vg6hvXsPcFqXR1Q0PODnO8wpYrsvi7+T3ChVwc/2ZYBgHBD86Il3quHRdFPgYnQ1QaFZywa1Sy1IqcVaJ8fMHbV8Lbpimwqw6Onh7jbO8Mr3zjFi0oOS2SWZojmIZQNQVbt7dgOqRMrVxfBUCnfR6xZlcs8dn4YYlnEZLyipJOeOVr2JRZNzgZ0udVFRTnWLx5ltM8b/sYkzBEmCQ4OeqKVJGctdcB2mRUVYHiEjYtSzNh6G4sN1EUBVauraC2WEMURNAtg65FmiPNE0CWcOW1qzh+egzbc0gsVRSCl8kB3+3VNj0zbGPnUGlJpvd/5/ufYv/gAV555RdxsnuKZquDKIjh1i6KNjhcg9u5zhvg+XOWZVRJVZtVApSoKiSZFOKNpQYe/ugBhqcjLF1aguM5NFZSZdimA6tiI5j4orOzdmMV3f0ujp8eY+PmuhhF8cOsrhJERNUUcfjkmyuYp5w2KwXVZhUrK9fI73h6IqpOWhdLnO6dYu3GGhGCumOkzAqR53OBGG3KMuIwofWk5M92CbmUBXv38PEhdu7skDXjK9epM6UR8q8sS3rOA4KVLGws4t4P7onuh5TPo8j4IU5RZVgVC1W9Kvyo1VYVsqLAsAz0Dnr45JM/guPUsLy6hZ/19bOzbwA6Vanzk1bB0EsSD5DVNaiyAkvXoSmENCNcWYxpODcpF2UJjanPpkygQpgu2u1V1jNOshzjIBQbqqooIqFCkiTYhg5T15EWBeIsFcZ4U9OJHypJ4j1IEmAZOhbWFzAe9y5sHmVBfEdewssq+a/yjMJNZUmCpqqwDR2uacC2TOi6hprroOpYqDmOSA5Pc6omORuTz2H5++cXFSD2aZxmqFQcFEUpWolhksCPYyiMDZrmRLwRF02SYGoaiQ0i/2JI7bkHMs9ytNvruPPRD3H0lNilvAXFW2ZxGDPKCbWt+PBakiRKrFBV7H6xR4zb1RbsigXT0Gl2tL6ES1fXKElA10RLqL3WZvzYnA5L8rwqKwuaH9I/OTPtF+x3S8LEzDFgJbPtPG8qBuZhr+Eswnjmi3YuWDuMU5YiPyIWZHHxlM9Pm48+eiQ4mNxqQLc7vR9ZVSCzjoZpm/AWasIvq6iEQuP3Lv1OanfyOZHGqiy+caqaCpQler0D1GoLwAXFcI4f/uH3xGGFwpmJphNMAoHM4i0kHo8D0EIEAP2jvhD6KIosZj18MeHvs7HcxPEO3Rf8AMJHDpzXyTcRw9LFhsgB1XxGyb/X7tEJC2hWoRoa3MqcN8lRdHmaYzrxMZrOwAOwM3bS50kOOWt3kxYB5zBfDh79+CGcqoPmckMcStOIwgBszxYG7tpCDbUFT3BMOWcXIFB+kRVC3KWqFI+lGzRekGRSwhOgOkNrpY3ZcAZF0S5kRIrnUZbQXGnSjE9T2NyXzXvznCw9rA0N0Ocpy1IAvSf9CQYnQ+iWzliejoh50k0dK8ttaAbZvJqdJuyqg9oifbe9oz7ldrI24/mOCj/cKqpKBxlxn5xL0tHnoemKevHzzZNfyGZlVa0La43ERgQyy23M05zh+Jj+RCWfuKrTZzx4eAAAqC3WabyhKizoOxcdCM5L5oKbk50TZClRoPhHkPi6mGSMOEWUNINViFxdOxvNMByeUIjFjbUXrtuf9fpymyLwwsLCH0z53EJC/0v//zgIMI0iaKwKkEChvbpKM8A8y0V6ehIlmA1nOBmO0Z+S5DfOUsY8zUV2oaaqLIi3hKVp8CxLpGvYuk5MVE1jGDUCcEuQYOk0nyiLHOcXIj5T4A/NeVtIxsJLy7IUFa6laXAMA7qqQpUVUQEmGaHoJNZaKgoa8Ovn8rwyxoFV2eYepSkMdZ4yQCc9Fc96fex0uzgaDdGdzmczPG5KkWUcbx+LtJGyfLGtMx2N8N2/9Zs4OdnB4/ufQtU1lEVBtA4meOIPq6zQ5s1PmIZjwnBMTPoT5tVLSUCjUAJ6o15F3XFYziNEzpxpm7RorTSxd++Z8J/KCqv82B0nKzQoF6c+RWHUfQVuzYHEhFWWa0E3tQsKTf49TfoTmK6FlDEy5XPtWn4fFjmF9VLLUhWZcMQ0pc1q3B1D1TXUl+os15H+HlVXUWvXRBCy5Vpwag7aqy2Kt4nTC/J8/ju5cIMrGxWNgag1lS0WMpIoxenpDtqdpYvmfQAnJzskTNDmwcdpkgoWaBwlc1C4Mr+PdUsXFiXd1KGz6pLPpC5UAXlBLFZZwf6DAwIJsBksbxvzzTNLCKPHRQ+aqQkjvclJJ2FMliDWjubf3/nX6d4pKcvTDCWLmxLikLJkqS2sC8OqN0mRhSI9mAR48skTBtN2RCC0oqlYqHm4vNGBqtMG3lptobnSQjANMBvNRIuZRCtUhfGFlQca65ZBc0wGyw78MSoVUo/GcSCenTy7eEBLk4wYqjJVRTxSK40TIbDL0+zcpqlQ4DBT7z799CmBQcY+vHZNEMJMg57FKE1ZXiQ9445H7W+n5mBwNIDMDmYK67zwZypjHsQsyViWJ1W1sjw/TPFDp6qSGOa81kJWJGzcpFmx6Zho1zwYDGMoMy0E7xbwzVJWFegsn9KuWKJKfHZ/H7PxjFjALSLk8GfHsAwstupodihYwq5SpJfX8lDkBfpHfYZNZELCklByNFYphYgviRLCemYkbptMelhdvY5O5wrWX/r3uSlmPJPr4sm7OH9zlyWCOEHAev2KLIlKSVUU2IaOOCFUmc5aFpy+QtSUHga+z0DYBdI8R286hXYu8d7WdXFSBECtWUlCmKbI2cOssQuVFQQVlyWJRBbP+xSf+2xUtcgivT3LciRZRu3ROBFVW5yliNKU5R8SrJt7cPgNJ7EqE6AKT1dV+lwFBQg7hkHfC1OGygopbSVJwiQMMYtozuIYBjSFqvCiLBFnGQ4fH4oIrCxLkaYx0nTeZtR1k6TfcYhe75CCdjMeXjsXyijqnNmqsgrHtE30DnvYu7dHpvOrKxRYOg4wZMi17cNj7B+e0oI4nGHSm4h08fpCHYOjPu689wVraWqixc7/kRWaueVpLlRyBNOmyuWX/uLPC19gWbwobhh3x4xmMVcNA3MlKyd2ZFkORSUxj+mY9OCxU3gcxtB0FYpGQixNJ5QXD9RdrHlY7ZCQq7ncYGxJE/7Yx+h0yH5WFTM2fh9ROzCjTSmnVpWsyqIaT6IEvj9mKQpzRW5ZlojjeUiyZpKQhr6njKmSUyFikmSZEaY0JGGC0z1Coxm2AatiCVWeyhZg3gWQ2Izq2ltX8fTufRw+PhSbJqed8O8v51U2e7Z5xh95lQ2aO8Yx6vUlJgChKub5NIlg7NMhkb0HVVPFjC7PcvqumIjItE2BVeOdg0cfPYJVsbG4tUhBs7YJxzBQdx0oskRJNCUphrl6tr5Yx7hL/lkKTJbn1+HcxpDGlNlIAc9ULRuGjRs33xZ2LcOw2Xu8CD8NpwEs1xL3KD/g8txOtiCI68JDch3Pxc6dHYqmUhXYngOrYlHM08hHyAIMTg67QuF+/PQYZUEbY7VZpRDpwZQBVdhayg+HZUndEJm6YVxmLzN1PT+sOR4BR0zbufCclSXw63/tl5ElNNdzTRMKq6Ln3QmZCbFkxi+2xExVM3RU2x6yNGOB8ho6l5fRXmtDM6jTttJqYquzBE1VRWGVJhl8RhBaWG9jeDzA7p1dxGHMfKoKG1EQsIN/tyW7XxM2dweAWm0Rf+O/+4+xd+8ZftbXl9sUWfVDw9oMRVaIqkqWKBOQb4QUskstRVunqooqRAWeZZOCLE6haCq1Pqo2JVmw9tB04pO8WVUpoDgMUTFN5EWBII5ZdcqqPFalpTllEIZJjCzPEaapEOgkWYYky1BfrEOWFVwAgrOWEUDziyROhaCGn9CyLEdeFjA0DaoiI2ZVofpcn5tfHFmWSIJ87jTM28I88cJQNdRsGwrPpGP2A/79ie/1fOunLJHlOWZRhKODp1CU+en/+ZflWvjkjz/GX/j234Sum+izzLqE8SfDWcTIMDqryHRWwcnYubODnc93xGK/dGmJZfrNMDob4XD/FKOzMfOLxRidEVYqmoWsfWHipa/exPC0j3f/+ffw6KNHBKzmEv+cbCc5G5BLioxK3UWRFzjbO6P5QpaJPMLnX7qpE8mDzYLOWyRkVRYVDmcv6pYu5le258CwDYTTEM/uP0NZUmwR/++aqaNRceG5jugAFAWlgAfMX1ttUGzXyc4pVSz6ucWIiTdkmRaMjIl2eKuHiwY8r00B2eeqfLrWxAbN2aFF2AnS+YFLtDAZt9d0Lew/JALLpDeBXaX8SoqS0uHWXdy6siEW+MZSQ8w5L7/8Ej7/0YfoHvTE7+JtNK48pfimQtBViIpC7S9ZlmFXXHQurWB0NmCIwFK0JwHAsHRMRzOYNv1+LtzhM2X+/MhM9KKbPFFdR1kUePyTJ0KcV+PVlCRh4gcIkgTjIMTT4xOyFk1DnO6dIo1S2BUL9aU6us/ORDufK2kBmpnnTB0cTEMBMEjCGKtrN/CNv/p1WuhlFQ7TODxv3k/iBPsP9qmSZvP18pxyWdUUUtOaOh0o2KGs0qhg0p/A8cg2tPnyBvI0w7g3xnQwQTD2Ec4o7SOahfDHPsa9MaIgAiQJrudiaWsJpzsnGHfHovXIE1ZkVRHz+TzPxbNWMLYqvQ8LCxuLqC810Fh60bYgyzLufXAPw9MhLE1DXhTwahVhpeL3o6JRp8itu2h1mrh6dR2d1TYGRwN88kcfQ5ZlLG4sYOPWJlyPEpWG0xmOB0NMwxBplqHPMJ6j0yF27+wgjVPYVQeX37iCyI+w/dlTccjj15Efsjhxxx/NkMYpod3SGLpu4LWXruDxx49e+Gx/1utLCW2KgjK5eFZawSTuRVFAVw1EaUrpFFmGhuOIUxgAuKYhUi8URuMA6DS5udlBdzDC7/z3/yParVV87du/Cm+hhv5shjTP8WTvEJ997zP8p//lb2K5VsNurwfXNLBQreJsMoFrmChAlZuhakjTAkEcico0LwqoioJpGMI2DVQqDZxP0xSy4owg4qqmQmbybR5rYunUq9bZwmfr9GAleYG8KFAUlHPIw0qjWQhJoTRviSn6DFWFJFOVx2enJUp4lgW35qBdqcKzLPhxjDjLYGrs5C4BSZ5TuDKrUt/93fdxdvaMzepkoTw7v8CWZUmZZYYm4Myne6dorbTg1hwsXVpCNKUk9mf39jAbUfUzHU1RqVXg1klCv3V7C8E4wPH2Ee5/eB/T6QA3XnsFuqVjdDaGLEuotqr46E+/D1lWUKstYuOlTbz+rddx6dVL+OBffoBwGmLv7h78sY+iyKFpmgA8y4oMp2pj74s92FULskICgO17u1i5uoLeYe+F9qmiyvjOf/FdnOwcY/XaKjtgkR2I82rh2ef+vELij6LE/Q/uobvfFfDnN/6DN7C0uYQsyxD7EYUes80kmASYDWeMoEJqOFVTsXy5g81XtnD05BA/+lc/glur4JVvvILIJyUdP4VLBYlgJr0JFJXSMnhs1G//t/8NHv74IXRj7i9dXl/Df/0//a/46F99hPZaG0mYCMJMnhG+kKhSGqED0wKT3hi9wz5VxUmKGz93A8tbS0LAdml9GWeTCR7sHVAkU5hgOpggCRPYno3OlQ5Wrv4mHnx4H3t397BydUXkU+ZpLhiWZVmy3FRSGYbTAME0xOvfeh1plOC9f/Z9XLp9mZ6B4QzD/qn4XJZr4Tu/9S08ursDt+Zg0p+gvlCD1qgizws4Ll2rlClE86LAdDTDweND7N9/BlmhtvrLv3ALXr2CYX+Mo1OiKNWX6jBtE8fbx2Sdkti8WZZQqdHGcbJzgh//wUewKxYqjSqcmoOF9QU6yKiliCeTJAnBmJFyXr2C4ekIo7MR2qsLSKIUTtWmKvvcy6442Li5IQDfxFrWoKhVkQPJW8/hNEDvqI/+YV8o9iVZxs/9xZ9DpergzvtfYPvzHfhjHxs317FydVVUk3bVJvZyd4RKzcXajTViB1csfPannwEAOpc6WNxaosMPCy+mDXqeqAIFwtAPAK3VFsZnI1juxTxWSQJOx2P87b/7N/GTu4/w+7//fWiGhmASCI9va7UF2zIxOBti2p8imAYY98bYvbMrrEN2xcKb334TN169jCwvEMYJjp8e4cknT9BYbmLz1gaKnGxf3E+chIwXbOlodZp459ffwdGTI3z2vU+hGTrsqoUqYywbDDAyHUwxOh0iDilb8eqtV4CyxD/6X/5PNBb/ffkUcbFtoOrzMjqIYlEFmbomNqO8oOrKUDWRfRinKaIgEicbAHj3/34PS0tbePXtn8eDjz/H5dcuI0gSdKdTvP//vI9/83v/BK9+81XcvrYFRZYxDkIseTVYusHyFiUokoycPbwAqyLzXNgXCiEyeFG0QTL6kmUnStAcE4aqiJ+jyk5FXhbI2SlQfa6CS9MM/tiHP/aRMT8Y77VnLBKLv680zyBLMs0gJQmeZUOVZVQsC6auoT+diWqxKAGdHTaKsoSuqnj08X22uRhI05j5FGUA81NsWdJmQJErmsBs7d3do9y3NEcURMjilMKIIzI/V+pVdC53UFvwIMmy4Dk++ugxfvSj30OShMiyBLfeehO941Moiga3XkEU+Xj86CNUvTYGg5tEuvcclhyiYmF9AdEsRDAJ4U98FBnZJ/h8RDf1uTpVIrk1N5efn/PSS4JdtZGlOXa+2EWR5bCrDIjNNiWXHWhmoxnCaYhxd4TeYR+7X+wKoH1toYZWpwlNVeBPSPk5OOqjudKCW3fFIhROQ6RRgozN2yKf6Bur11bhjwPsPHgI5QcKQ/zZAOi+5jOmQqUNzZ/4mA1ncGsU/WNX7Qufyp/4sCs2Lr9+GQFLtVBUwrHplkGHijxHWQKHT46IptMlTJ5br2D5cgdbt7eQhAmGe2dibpeEifjuR90RxaOxSqK12oJh6rj+9g386T//Q/ifjGCYjoDbc88qQC1pfjAOJj78cYBxd4w8y7CwsUCzHtadKYqLBzQAKLIC259tQ9U1jHtjQv2luYhF8yc+xmcjTAdTzEaUtlBfrKO12iJ/bd3FbBrg+Okx7r5/F2cnB1i/fAW3fuEW/NGMVNyWgfuffA5dM7C4tgpV1ygr82SILM0wG83QP+yhd9CD1/LgtT1YrokszUUUWxzE0AydKClMSFLkOYqiRDy7GGPGuymT/gTH2yfCQsITS7KURCj+xMfBwwOqarIcsiKjc6UDzaBxxXTiY/vzHfzwvd+DJCsYj2+g2WnR95vncDwb9z/9GCfH2/BqC5DkrwEAFjYW0VppY3A8wOHTQ3QPe0SdqjpwamTbKZi1pygK+BOCiQeTgA6kDLfIRysXnjJW2CyvtIkZPJkTvqJZiAc/fIAin3edAGoRr7+0DtMxBGzcY+lCg/4Yg+MBHnx4H+9/7/fQbq9D1b6D9hpVlVmawapYePboKYajU2xsvERrLcvAXLq0TDFZfoz+UR8Hjw6gKIqoXJsrTTFDrdRdSLIs5uw/6+vLbYolzUuyLIfJ/WVskeCGZlPXYDPRS5iQlQCA2BA1RSEYth+Jmc7+/glMx8R3/sO/Am+hRpzUoz7Cq6s42j1GtVlFvbaIwfEA/gaFvw59H0VZwNI0BElCXidJQlbMU+1VhUQwALUuVYWG1ttPP7ug0qTPVpJ9QJq3crIsh2OZiFhOX1YUUGQJYZIwkY0MVZERxAlK0M/4YxIPeS0PVsWmBwYlZFmBIskwWAsiiBPYzHuVFTmqzHfJN0LHMMQGrCsKkjwXqltVlnF09FgY9jXNYLPF/LmPRO9Jt3Q4ng2ZzWRdFtckyxKGpyPsP9xHpVmFaRs013AtURXwlPSz3VPcvft9ZFmCen0J7fYaTNdCkkQwDTJeb23dwunpHpIkxLNn9/Hs3m147SoNwUOakS1f6rCZNEsSZzMlhbWYuD8uz0gBmTE26POXCwDSKMHixiL80QwZC1HmLV+ATrp5VgiyPk9oaK22hELRa1UhqwqmEx/9wz62P9/G9r0HuP76K9i4uYFgGmDSHVNrZuzj7OgQRZFDN18VOXQL6wsIJj6Gp30c7GzDcWpoLrWwuLVIvjSF0sBHZyNKh5+F0E1dpBicVwyqGs3OeBqLbupQNVV8jzxdPmVg/SxL4XoVeK0qWqtt1BZrpGjsjtHd74pFUZKpApoOpvBHPolqwgz9I0q1MDpNLG1SIoXlmghnEQYnPRRljsGRI9SBtueITZYHTPPk9DwrkOYEF680K5iOX+RNLl9eRjj14I8DEsEMZ6KiICV0KLJCF9YXoGq04Dk1l9qtiozDhwe494N7+OKz7yPLUzSbSwhnISaDKSaDKRY3bDx5/BHSLMHa8CWoqoL1lzdgVyzIqoLaQg1plODZ/X1sf/EYsqzCdh3c+LkbJAzhowQm2iAhEcHi6f3NLnwmOniS1zhhaQyEHUsQzij4OY3o3zW2uDc6TVSbVdhVG3nKE+JHeHj3YxyfbGNpaQuaqhNMfDpBtV6DPw5gGDYOj55gMDyBohA/t77UYKHaKpyag0lvgief3UeSxtB1E6bpiM6PVbFoVpxmkGVZgDz80ezFNRES64bl4hl1aw6zQaXEbvVcMaqwKhSqbdgGuvtdhLMQFquQVUPDJAjR3e/i8U8e4eMf/ikASneZDKZw6xX4Ex+KQgeGZ/v3cXDwEL4/Rlm+A1VTxcxyaXNRzA1Pdk7QP+zhePcAXqOO61+5hsiPGZmLQA15NqdK/SyvL1kpMunuOYFEnufQ+RBZ11jlA8QsMb5immIzVJgyKs1IFVXkBaaDKaaYYuXqCmoLNcRBjNpCjaqAPGcPeh1e20N9oYY4JTRanhcXZnphkkDXNJRpCcgFshwiaYNDsnVVwWQ8w3LnMk66T89de+mC6or33XmCuqFq4r9neQlT0xhYQKXPJcmYRsT+C6YB8UkrlC6e5zQ71FgrFwBck4AG3H9YlBCz2ChJYOo6KpaFNM+QZLn43YosC+RdGJJEnDY35aea98tzmDIA0HQIUQp5+QiJxQ3epmMiT8mo3D3oMjKMid5BD/3jAcqyxJtv/grWrmyhvdYmWpBNHrBxbwxvoYZ33vkuppMhJpMezg6PBZNwYX2BedoSaIbOFh5NvB9eUQ9OBvNk+3Mt0xfVpxCfw61TJcp5kmRWJ5HLbEjga6fmwGVVq2bQYUxhysY4IED6s3t7+OKjH+Po6DFcty4Mz9PhDIqqYHDWxdOnnyCKfNgWeQQp+LaAbhp4+WuvYDqYonfQQ/foBMfP9qGqGrxGHc1OC5Zrsg2OMic5z5FXVgDJzVevrwovGb92hMgqRLZhOAuxuEFz0FqbIqLKksDQ0+EMg5MhPvzev0Wj0cEb3/wKNFPD8JQqMB62u/fkESqVuhCmtBiEY+XaKhRNwWxIAcdnz84wG89gphZUQ0NZlLQAVixIzDAf+ZGwUvC4oNby4oVrluWFID15bUL8pXEqKin6nAouMXQjAIpEO4eFTMIEe3f3cHSwDcOwsVBbwNqNNRRFgWgWisP5cucKnjz5GMfHT+A+qqO+3EAwDVmWK6maFzYXEYyp3acoMlaudJBnVAmLPMCMBEdREDIG54vzbX7daFMw54txnkMzdERBxJLqMyxdWoZbcwQ1iL/8sSVRuSsAACAASURBVI/B8QDjMYHQl5a2cPn2DXpuNRNpkiGJEtRqC2i31zAYHGFv7y5su4qlS8ti8252muhc6aBzeRmj7hiT3kQY7TU2e1NUhTISGTc4S+nwycVUF58zCWmWQZXJspLEKbPjKASgsEgvIkvkKjA0DUESo8t+1vGoDR/5EWbDGboHXfSOemg2V2DbHl77pdegGWTPKzIKEciSDJ7Xwvb2pxgOT7C7exe250CS6lR5uhYslgKzdmMNWZJhwPQSqq5BjlMg4TSuHNPRCLVW86det5/2+lKbIr/YXPmTpZlQLVoGDXdL1mJNWUQS9wxqbEPgi/+VN67gycdPsP9gn1BRLY891Bacm+vEbGQAgNIscfWtq0BRYvvpAcqiwFffvCU2maplIi9KBEkCTVUh5TlMW0d/NkVZzucUUULIrf/hH/99/M9/5++c/2BMTUsViSxxTquMLM8vwsMl2oi5QrQoS0yjSJjLc2aQlqQh0eHZps2l/lXTwmqjDtcwMfB9gFkyUlXFwPex3T3DpfaCsHtohsparzQTNTQN+/0+8jyHomjIc5L+n6fbzz8WxQF5bQ/RLARci2YeCZmtPcuGUVWBFsgPOpwgnIaIwxidKytoNjzEaYr2xgJe/wuv451ffwd2xYbt2UjCBNufbSNNY4ThDJZjo7XawtYrm/QgJRnCaUDB1KyikhWZCUgKqBkdOJSUhv55STD4St2FLMtss6CWD/d5vfCSJUGX4eZsr+1BVRVYtila+3lRCNXueDzF8HSE+lJd5PIdPz3GwaMDHG0fYmXlMq7feg3rN9dhWFTNcZNxo93CtfJtPNu7iwcPP8Rk2sfa1hXolo6zw2O8/q3X0bm8jKtvXGX+LBWz4UyEoo57Y6RxQh7AnBbN2XCG/JzJXZKIO8pVsrqhiQVN1VQsbiyCewc1TaW2fZIimoaQZAn+mBBgTz55gtPTXUSRj+wPY7z29bcRBRFG3RHcmotxb4jDw8c4Pn6CZnMF6+s3sXHpGsaDITZvbaJSc9FYaqDIC9z+pdsoC5qXl2VJHM+Q4tCSkCXZs4NMlhAhyVlpCdUnf2mMgZlGqcDRNZoeXNOkZyDPUZQlFFlCdzLFZEi2l/ZKC4osIwgjDI+H0AwNv/SXfwWr11ahMYTd3r09gXgcd8f46re+hbe+8Ys4fHyA0egUY5YVqZs6wgllKtbaNYp7MnRCjUWUDcm7X2VZCg7s6ekezLGDpUvLwiN4/pVEiSAW8cR70zHEeqmwNSMrqNXoj6katqs2slGK450TnOyc4C//9n+G5cvLokOQRDF2vthF5FPL1q27+Ov/+X+FcBZi3B3j6Nku9u7uIpiGtAGVJVRVRXt9Ae31BagsYYMEP7QBgrV6i6xAkiUClI+ivDAgy5lifxpRFFOnRokiZIkjHzlXjHJO9SQMMZnM4FRtNJcbsB0LeVFgyLokbs3FO999h6hKCzUomgIUNE/kgeOaruKNX/g6Xrr9Fs4Oj4VlCyBBHMfnkeZDZ2rmFgCI0G6yEVFbe2fnDjaKl19cP/6M15fcFGm2k8SpUDjxUzlMQ1QxyfkT/vm5AsiInpcFTNtAo9MQWCUOU9Z0DZZjolWpIC8K+HGMICLJ/3QwpRu504Jn22JTJIUpeRbDlEz8RVHA1HTR+kyyjHnqaCYXxucRVCXdAM+V2GUJFCjFoqVIMizW1lRkWahAAaBScaAqpLDa/nyHFIaKLHBDsixBtwwkbY9isCBhHASIs4xM/Cz/a+pHmFUjtPSqeN/8VuXf9/HOiQD3yrKCOA6h6yae9yryhYzaB8TKlCQJtUZV2Dr4zDdg8m/up7NdwrGprE3eXGlC0zXI55BNbs3B0sYKJEnC0taSIH3wuBvKnlPEe1cYXq5gs9tczRkpRUESpcjYPJe30xRVYTaAn3Yvlhdk9bqhodQBx7VgsGBqgGa93Ns59QO2eNhM6VoiTQLxIK3f2MDypSV47RoL/y1EJmAS0Wl7eX0F1VodTx9/xtpXJKdfXF1GGiWChAQAXr1CVaShic9QFkw6nnI7jIwLoi92WucCmyyla2dXLJi2KRjAeVEgYlVqzvilmk7RV/54hjRK8fVv/gZl720tIs9yuDUXvYMeRTtpOq5f/wpM00FR5EiSEOPBEI3FNgxLR5blKFmFAYB5TWUBDSiY97PI5wQX7s0FIOaO5+/FEsSfdT1HdFm4JYl8x3T/RknK5smUemEbOuI0g6pSC23r9hazzBgiG1AzNLisai7LUghBDMtAHK6i2qRgZddzhI+Y1KyyaOVnLKiXWw7Iy5mTN7W9hoODhwgngahazy8UeZpDciRhITENHVXLQpplQh2fMwUziYEkZpmRhAWqudzAwuaiyGTlbfVK3RXZmBrzzjpVm/GndSEAIquDjiyjOD6ugFW1eTA8X9f8SYCyTAUg4/xnOf+KMxJPZgwgIksSLOFLz8U1I0sa02MY1HrmzwFAgplqswrHcy5QrHglqmgqVq+tglvFFJXEZTx8gKPbeCJIntEhZtKbCMoTv9848i1nCSGqqiEML7a8/12vL90+5WbgJE4FWqngPrHnYLISiCjDZ2ERE00oEok3KjWX6P2yLGTtXGqdZBmiNEUQxZj0J8hTmlt2VttYqFbZ30OVqc6qw6IsoOb0HhImezc1HUCCmCUblGWJ/ungQuuCt0v5vwMQtA0wsQ2fiUqSBKkkQVHCKjiTLcKyJGFlcxn94wF8tpjy4T7Pp2ssNVCvVdCqVKErCmqOg91uFyeDoUjTnjUbaFUgquu8KJAwMZGuKNi5swNZVlAUuQiY5X7FC98/P7CAht8F8xPJsgwUBcIkgcce3PMtPFWnNkiYzIUlKmsll3mBUiKWpuGYWNokpZvX9lAWJaIgEgbuPM1QSIWALKsg60CRF3OGLJ//yRLzxuVi0ZAVWdh/njeCz1vc1NYxbAOGqsE1TdFqZheSNpCUuJ8qM+EbqoYE1OlorbbEzJUvNKZrESfUtWCz2CJFU2lDbVYJcGAZ8BZqzLNnEZWozFHIMvI8x2gwoTlTnAJlKeaHSTTfLCqNygu2mizNoZRkLBfPBWsL8nEBAMFZ1Rktp8go8FfVNbTX2mivtWHYBkswT9E/6sP3xygKOrx4jTreXP4mMYJjEoZt3FyH4ZiEyGMh09zaIjHBhqqrbNHOKa0jmxNzqCoBRqcjTMejC9crTjM2RiFwhaGpYsbO0xfiLEWYEhSBs005NKMoCpoJtmsiDUTXVCTs2a62PdTaNaG4NGwDLmvfSYosNlWACFZxGNPmz5J6AIjPISvMBF8UtInrOtI0fgE3CMyPNJZrwXYJ5K9yM7ssQyoL0UUjuo4EvWIJpJ6iymxuSvN8VSeDvSQpyJJMEGDmdpY5BINnYUqSBLfmQNFoDirLMiBDdFAUjUY53L5EauYcRTaPuoIsXdggJRDogJTyCmZRBENV4ZoGQkaM4nAU8nEzn6YiwdDpvUZxItjFnOp03guZximliVRtNJbJJnRe7Xzei845uIpGoxI+GuIdTA4jSeMERU5AEn69zhPM/rzXl94UFUW+cJrgOXHAxarQMQwosgyN9ZlTtolEaYIko4etei4OSNWI56gzL6MiywjjRDywRV6QcVrVoEgyzSdRinmhpihIshKWriHL5wrUIEnEn6GFtMDu3d0LJBCUtBDFQcwwVucuRF4AjOKinBPyhClVeDXbhqnrSNIUWVFAVWRsvryB3kEPoy7ZFXhfX2cRLycnfRgqUXGKosD9BzsIJtQe0U3W5gsCVEx6gPlmLkuAH8d48JMv2H+XIcsvUobEtVLPVWkKO7mxAwf3lYZpKjZffjLVdBV5USBlohfyISnCGKtj/rA5ns3waBVSZyZs3svbKjNKDeAoQK6CI/wbtT95VcYX3yLPKcFApjYs3R8XZ6ZlSQc0nszCiUWKLCFj5v2cHYyyPIckkb+M82XjjBiNkiRRS5ildnNzvaIoFApt6WiutMSGxk/gtYUa4dtMTRwCAAgvXVEUVFVYOoqcFmi++J63KvEZ2PxzlezAppGfzKU5FV9k84Lai3lBXlhOdQGANC+gmxqaTMTBs0HLkoQfwSSA61J4rl2ldjf3esnMCM2VylxElzNuap4Riotm2DJQEPtUwNDz+SImqwQut93Kuc8FJGmGim0iSlJkigwTmhCDsRsVZUmz/1gmc7llktVLZgc8Dr7mP5NmRIvRLR1ey0O1RakgpNylTSNjyDX+zPPviy+s4ntnOZyClMJm8nGUYDg8g2FYAnV5/iUBMB2CGVisCOBeZP7ZeXwZ3wj5d85tElzRSdhA+vvThJJKXM8hkYxrIs8KREEkEIIAYDP1qMKoNNwfy+EcRV6I0AWFPXsqU/vGmPte+VxXXDMwL7FdiBFOXhaI2doXsdESF+Lw+1pTVOEP58WGgHWUJaDIyM4VJXlWELXI0GBW6FAQzUKCDMiySE8pMhpxaQx+wP+/PJMEAD1lfzbPyAYT+RE6nauUjPQzvr40EJzK25L6z4x8L7GFtihLGKoqqDWqrJDpOUmQZhniLMMsimjGY+ioLJkwVE1UknQDlcgKOm1WbQuaqmBtZXFOf5EVRj+QESYpbMZZDRI6LflRTKAATUPO2zqY2yYURtnXjfmXxB8En21MRV7AsM4TOVSEGQk4dE2FpesCJABAtEgAQJUVuBUH5jUTmy9tIM0ziiEqybLBhQXbO4eIgxj+eIY8K2C5JtprbSy3m2g4lJcIUPtUkWXRBv6D330XOzufQ1FUyLIyX6R+yqtgvil+uuR8yySMBRWiRCk2OFkhXJRm6PCDUPAoAUDKaC5quxZURaHrzU5/VsUSlHzV0DDtTyHJEqwqEUAUjeZIiZoIco1A4Jk6wlko0g3iMKZWKou0ErOd5096bBHTPI21v6ka5J+7YIKPrCiQl4UwvqsqEXMIPpEzybghNg6wORLPvQOAxY0FFvBLQh4eh5MlKSRFFjaeSrOCNEqF2pBzX4s0hT8i1qc/9gVXNI1TSi5/zupUliUz3dMmBFlCypIW8jSBqelCVZyl87lOEtOCYNhkDgdoA8jSDHIuo73WxtqNNZHLORvOoJkaUND3xxm0dP8TvLzIcsTFvDoihSWJ5GI/QpHnQnBXZAQs59mIjaXzs7cScRjDMujQJ0FCmueMF5xDV1WxhmR5Ae3cxlMWhHukZBNcINEYbGOoNqssIUWHW7GhqIrAt6mqghhzOLekkBqXYsckwcflghhSg5IdKInI89ZZ30QHm6gt1ASKjr9kVWFpOTlkY95F0kHjh6IsESdU/RZxKgg9SZwi9iM6MKKAamgCjs0xlEVeoL7UgF2xxMY5PC3FvUe+ykAcEvKccH6qpiKXWUYrgy7keS7GASmLhILEY6vm2ZriWoO6HFwQmOXk4/bjmOL8mJqf/246rNEIoMQcukHjkgyqZtBBXlVg2iYsQ4cvR1CZ8T4OYpbF+P+z9+axtmVpfdhvr7XHM97pTTWP3VXQnQYMNINDEgSOgQbHDRFRIod0zBCcyBjiYFqKINAosRERSqIocRIwRiaxrURKcBoDDW2bgKFpuqu7uoau4c3Dne8Z97im/PGtb51z7qtq+tmybEpsqVTv3XfvuXtYe33Tb+gHTm8kSYQAXpeaEzRO5kiEpCT+7Zq5AQDokmbX7/uGr6BE8x/gizoekJLhPKiDS1bjlQTo4tneSEQRZbTRKgurug6dJjsc6SuxQZYj92AaEVFbtfPWMgyOuDAaYph7ioCnX6RSQhlDPMEQ8AiNmiWJrxZWmWssJFrosHm89xveixc+/Svrl4WuVeg5ygpjTw1gugCggzSS8L+TW3LLpsHecBhmltqaNRoKBY9BkYev9bMMN46OMT2aUjBQNLMYbg2wsz0KogecmbEykDYWk7LEi//fC+G6nLMwRocAed/DTWJfZVMLVMYSkZ/7CP9cVKehgMBl6hpSGZKRDBZIMokxGPZRJAkWTYPZdBEqCRaeVq0KdBRjDCRkQLSqpkOcyJWnYktBTyYyzI5olujCA3E00A2qLjI5t1SjaGNz4nYXZ6har563jAS0p6swcMJai9jPPZyDr7oIch/5rJlh60mWIskTdE1L56g0Yl81tSXB7HlGlfczum+eF8rt67bpAu3HWhu88oiqsnltLJNltEFWZFCNgugJWEv/xvZrqvUWQH4zcz65iSKEKpuBFQzDz71iD/MdYamtRkIABv1RL7QNhaSgDhEBZqVPajxaUSsTNiBn7EbHwr3FLNho4upqswLkGU+D0j5AWucoMPr2GSeb9PkuICiHeY5Wa6QsbJ/EMBHhAqwjhLyOyK+V59nkxbeSriM+6+reG0UVRvg+D77LiixUauto7o1nlki6L9b699UEjjOD9VTruyLaoA2ydg6RpArZeeBI4gXDeR7NN5IT2bRY+RgS3QYwyoZ3jjESjqt50PUIIWCsCa4pJG1HSRCrTG0kn/6PbUtynLGQMNYhArVNO2NCZ4afVxbHaFQXqmNg1YGKpECvyENAPZmQ5nBVlj7RpIRr/T2IvPQeKdkIj5TVgbphtCHUuX+/WPye1yDfy/t5zm9/PLDJMD+IrlUYFKTj57yNT9m2fnAu/CKnl0lZi1lVhRsHP2vMPBii7lokMsYwT6D8jZRCYHcwwLhXIJFxWGCd1ug8Ss35Fpd1DiISsM4GfVTuRTN2hjMdqw2uPH1lIzd3zgUKgEukX7wiOKyzWozwIBBjBTqP9izSFMu2QaeNn5+mYXOOpQRy0mllxFYsJN790BXcKXIceWk3GUsMhj3kSQrjLCJHXMg8TZBImrNEUYTXX7mO1177ZDjnVXVtfcvyXMUYkUSY8n12nsvxi8nDcA4ubHzL2TJVmJ72EUW4u3+MO5+/jfnZgpT50xhbF7dglMZyWuLzn/h8EIrub/Vx5ckrRMpOkxAQnVh1F1RDxGijtNdGlWgrF86RBAZWs+Dzxzo83rlVuzQWpKjPGyqLNkQ+kBKgSoSNRwgRNGvZ2NQoE4KTkGQlRG1VEWTBRCwhFLVmdef1Ftc2rUhkJFZeERgr8C5Z79Or42wG/FWbSfjZZKQA59L1V5DapzLyYtMrsEQU0ebDCSy36MLfYxnGA4RE1sGfjrm5qReLjzy/MfhbehlGFrg22re7OXDZ1UZ9vt0NR+ur8bJwwKagBUB83dB98YGe70UkBWApuGz1etCW3DaW02VAWCZpjM45lHNC4LJAAwnVZ8EgfIWU1WHTpG0pCrNq9plMsgSDrUGw91pMlm85V+Q12KgOMvL2YRHtGbyHaCkgHH0fFxU8Nxa+bcoekhwEjPSi22tt9xWARvqAH1O711fqIWB6kBzEai/TXmZRNcpjEeh+h0B/riNjtV9fviLX/r6kcYxYiiBk4nwy0/ngyslsFAsk/lzTjMZo5bLC2cEEVz9zlUS/rSWBjyTGcrLA/HSOOE3w2POPoRjk5HfpsjBn1J1Gq9tgGl0vKhht/f5mwsPQiigxVtvgx/nFHA9cKQIICDS+f9bSDeEb3CqNOJOwjiq4RV3DwaFqqH2SxaQfmvoeNVtE1V2HQZ5jy7cPnSNh8SxxwQKqlxJ8mrVMVxxIAQkRhLl5YXSaXjTOPpM8xfRwCrUGLGGx5da3vCzrNkaMaiQQg0gTGGcBrVFXDVVUQkBpjaqskW3HAUknhUDVtaHdSwvKwjqqFh/b3UU/y5DFMcq2RZ4kQVSdF791CJVP3XV46bc/B6075HkfzllImUIIg65rwrWIc5quieeVUQZFKhrsvB2LFZpQ+c2OoeDcwjP+a3/48RcwOTjD2cEEi9k0oETH2zuw1mJ6eoy6WUJEAkLG2N4mjtp2sImJQ2bKwZlnQRyIpTwX1H2rntt45//NWapcWHaL5fy4CpEiQquYoxkHexsKCjST7OouKI9IL1vImzbbGrE6SVrTxsDzXxb6TrI0mC63VRsQvBr6vkH/OkLTOWDnoZ0NP0UGHOlOIxmQSPy6yo9i0JMl5xcKTmY11gAl+JEQKAYptZi8KwWbELMbStd0dF9FBKsUVYXgd5oUeNaDGwkp+ErKI2h5g1/PWdh15TynT3UaddOi3yuwqBps9Xv+uTlk8UoBSxu2IFqJTqdJDBUbZGmCu/vHOLp1hJM7J6gXFTm6D4m7phqFydEE1awiYfpL29h9eBe7D+2SzRFESCLaqkXPcy2Xk0UwxTXGhupa+FYrP68kTXDn87dx3+FvgOo0rJRIYl9VCYfEg1GcseT754FMLKoAEEgnTmRQ8uHgzMhLtgwrZ6U3DpCAR6MmOTl3OLuaSUdRhCSKgoyiURpKrUyzeeQQLM+4mjsXFHlkFtaAB/aVbYuBxzzw/kpgKprL9oo87F1IYrQteW0e3z7G4owC3/71O8hzWgOxd99YzpZoGmrxzo5nePS5R0kcwq9DBt6RuXaM2f5p8P0MTh3+eq1fq2zE/cUeD0zJYO4Ov8jWi19b398n1Rfh0aZdCGARyIC4n2UUNKVArcgW6mgyRbOocbchDld/1MNge0j98TRBL0uxNxzh8d1dah/4+QNAIgGd1lSlpWmoUFvfz1ZGB6ANz0x+8+98DO0aAtBoi6Zs0N8a+NYQVRPskCGYQM0IzHilFsMZkkxiLNsGDi5Ui2XbQkbeHUSQQzjPuvIkwe5g4NvCxEnsjEGRZhARsGg04OklAHDjzgFe/eynINfapMZo/9Df+oGzrUuar7JhftF1R1qhUkrPN2sDoIYqNjJdrpc17rx2B5/+R5+EMQpnZ/uYzU4wHu8hy3o4O7uHyeRwY9OPogjT6RHatsL2hT089PQVjPYIWt1WTQAbrEAlHoV6DuC07nZR1ffzMI0hdaVYkL5o5CXNIgivMIRNsAO7PYAqyYCIiwlJyll9pzSEJ2pHguasYXgP77FrXdAfZVSktRa2XemTdk2Htu68h+KmlyZXCsWw2NiIoijyEH8dXn7+fkLPrmy08iwN80n4dRUnEs5Y5CMSj4hAyUugGfjN1mobvFEBwCUWWiFUU7AOSq0qda52AfoeDsRCCth69ecoilDOypBobDwvH5w77efFa+1W3liNtWj93FnEMlBQuE06OZ3h5d95idRrPA+SKlyNJElQVUt0XQ2lKHk82z/DyZ1jPP+1XxKQl1prwINbmNhutHeItyJ0TnhWzK19Z6kCunXr8xvXRdcuN37GOhGCPK1VSt7WjZsB0NrzyUo5q3DtxesBsc6I2MtPXArVLydxZME0wmB76JWnkvBcZEzvL6vMRIiCnRlXmqrtwvriyphsrdbWIuC9ULnz4k2gfSHSKhUKAD6kEDCestHP6J06Wyxx/cXrOLp1hKNbR5hPz9A0SyyXU/T7Y6iO9k2lOjT1EnGSotcb49YbIEnE7QH2HtkjEFiWePyBQDSI0JTtyufzHIiNgUPOOdSLlZ/vH3U8sPYpw16FIPPShHoEAXHFzhjr7dJGKTy8vR1OuIsMrt8+wP7VfVSLKgzunbXUG7YO44tbJNjrN6z96BjVky0ujEYY5lnIUpj/U7YU5GIpoYwO2qtFmvngrMOQdrHYpGRYa3Dr6lXk/dy32AyMN8fkGcKqmiIbFRFLzE/n+NxLL5KbuXdDX71IqxnA7sO7yHKC+Q+2+nBwIVjuDga+YlzB8mMp0HQKHc8ijMYv/NT/iMOjm17FZpXVOeeQpjmiSMC5VYUMUOVTzStsX9qG6lrvws4ZeArpqxEGHki/qE7vnsIojXvX9vHy738W9+69ievXX0RdL7C1dRHD4S6+7pv+DMYXxji8eYjDmwd4/PknMDuZ4fDOXbzxxh/i+Ogmjo5uYDy6gE//QYThcBsPP/wu9Ea9oKaf9TIMtweQ3k+yqztCBPqZCECZajkt8dqrn7pvNfJcIU7jMB/lQJgnSXiJlVqp48SxRJKnZEw77iOKyB3h+PU7mJ/OMTmcopwRp8lZh92H9xCnMW6+fBPL6RzFoI/BVh9PvvcpJHkSwAkyjqm6816D9aKmlnWwtYpJ5Jg7GDVVac5sWhExgAZrL3e9bKCVIUEArLjCoZrwaEoGjjjn0CxrvPbKLUwOJwSoyZLAfzu4to/5ZI7h1hDPvf/5AOBgziPpfUbeq1IFAXNgNXt2vlW9bpekfSv5tVc+hb3Dh3F4dGP1sKKVLRhdf0s6ql2H7X4/zOn5uQof/MuqBqzDyy/fxOt/+DqO793D9RvUMXHO4au/5lvIxSKReOH3fhvPveercHp4gPn8FPfuvYks66G4PcCtq1extXUhVB4A0WFoT1jSOxFFBM7hlqKmuTfP1hFF+L3f+DjeeGNzLTpjvWxlAkQrnm2RpkRVsJSMtWWD3riHyINbnLGolw2uv3QDd1+/i5O7J7h37w3MZsfo9cbI8z607jD5h4fo90dIktyfV4vx+CKGw23kvT6e+fJnsHtlB3GRhNkwz1DrRY1ikG/M6ozWfq7uYCMbxDHuS2R8fFQdYSqcc0jSBGXdYGvQDyInVKjI0JWx1uJzv/8KFQbTEgc3DnB45y6cs4jjFF3X4Nq1F7G1RSpXvd4Ix8e30e+PESfUPu66GlU1x70X34RzNBoqigG+/Gv/tHfzEUFmEIiQ5SkJL/h1yaOSs3tnuHX1Tdy88dJ9+8fbHQ+sfbo+y6KZCG38XLnxv9VdF5BXsadmKA+0mZQl7r5xF9OjKaljNF0YcgOEDKyXjVcSkeh5C5zbPpsf5isYe8IarM6tSO6IADg/9Eb4GksJDQbjc20CBylikvNam+9wBsdZcMd+XlKQ48Jae2h+MkO9bLCYTkMWKIRA0R+Qa3ciCfo/KgKQgyXPnnrfU7i4NQ5gg8tbW+FeKqNxulji8PBGqAi7rgmBEAA5gr8FArVrSK0iiiIvOWcISu/nNLpVsEVGC31ahgrk4MYBTu+e4u61W7hz5zVkWQ9tS/5my8UEqmvxwu/+Hp5735ehXlSYTY9w42Ub5hEPPfQspbx25wAAIABJREFUvQCef3d8fBvHx7cxnR7hiSfeiwtXrpC+auA1rdzjrbG+XWoDXL1alphMDjYvjp+fr6A4riRpTJuQW3lY+j8Q4rFRa8GmxvxkjhsvXcfpvbOgINLVRMIvF3Mszhao6xKnJ3fp82c5kiNaf+wY0Rv1vTzV6rPdmpeejKmFxee8nrjYcyoiAGXnfF0GjCKOfVvSgzLMpgQc/D3jiuLo1hEOru0TIrVViH0SN5ucoq4X0FphsegF94nhzojI5ExsN0Dipb8YlMLXsjIGXwFArKbWfFsb1PUCR8c3cf3aixvXxfeEuxJd00H08zAL5qqDP3c5WaKcLtE2Hd741Bs4uHML0+kRppNDFL0h0rTAl379l5IzSqtweu8E7/qqd+H6i4mvcGJU1RxHRzeDcL5zwKUnL3khChk2UIAqC7a74hlzWzYhkakWNW7fegVGb6I0nZ+XUnJD6FmdkkKP9m1uXss8542iCBoaVz9zFTdfuYnT430cHd3CbHaMtq1w+dKT2Nl9CFp1mM9P8PDD76Jkpylx6+bLvkvSIZ4nwAvA5GCXVJh6GeBVoqiNSufIRHY6DwTEa2iDW68as7EYPS9bRAEYBiCADYGVyQIfVd2gWdQ4uHFA9y6ijtsTzz0TBEyassHDjz+J43v3UDdLxHGK3d2HsLf3CPJeEQqMrJfh6MYhjo/vYLmcom0rvPrCC9jbewS7D+1CiIhUw4QIjjcsMCFiakW/+Jl/gv39a2/J436748Hap4Af5lLWobwElVEGtTIo+nngUHWK4NWxlMhTqiLLtsXxdIbp4RRHt45IpHlB8xmZxCHjYy3Fg+sHMMqgNyowvrAVHm4vS3FpNIYDcWJY+LtV3nkiWiERebOsuy5Axx999nF8+sVVEHHOIU5SzM9mSD3vjFp7RLQ1xuv+GYvCA1PyjPhr1jpyQ69aTI+n2C63vdddDDhytZ6dzNFNWpzcOfHu8z5xWDaI0xhn+6dI8xTji1t49LlHsdPvw/iqzyLCC7//0lolSNkWZUSGqiWjoPX9QJTlfIGbb7yGd33lsyQG7oNQLAkpF3vkMLdpdKeDIPPk4AxdV+Py5Sfx6FNP4z1f/jXYv0UvbVnOcHx8C0cfu4mua1BVc/R6I3zTt313IE7TvDCD6hQunj2Gtm7gnMPelb2gVeocAniFfz+1CVeACGst5vPT+xCaADZQgvx7nYNHP3vQjZRoHHUfmBLBfLHDm4e4/eotzM9mUJqpIgbz2TG2d66gaUpMJodo6iWU7hDHMYw1aNsKb77yMqRMUBQDbF/Yw97DuyiGPY+mXbmKM4iFr28dyGA8InRjIOePSFDLNs0S4uOGpIGE3PnzIxGh9VJ39bLGjZdu4ODaPsp5ha6rfWuxg5QJmqbE8fGtAJnPsz7cdYskSVEUI+xc2sUT730iKO6UtlxxS/NNErXVNtzvUIV7WTtjNCaTQ7TdZsvKOReoKtxOFlEUKBnhe7y26+HNQxzfPsbBtX2cHN+FjBOkaYH+YAvOWSwWp3jln76CvUf2IITAdHKI6y9eRzUrSd5OtxiPLyDLerBGY1EtUFUL1PUS4+0d9HyLmSk2XDGtJ5jT4xmEFJifTnF4dAPLcgZxfi1Gm7NiBrS4gmkSnv+bexBeRwjvtmzw2idfxdHxTSwWExwf38bODont/6l/6+uxc3kby2mJ+eIU7/qK51HOShKKnx6hbUqU5RRd18JYg9nkBEJEuPTkZUoMO67aCFFvlAESCmjGUTfLAeEdIw7o/TN9ACugIbt7eNWyIhEbFb62LI8H7F7ZxYVHLyDvZdi/fhBUo9IswXhvBOeAC4/soWuV18EmlxsZk09o5Kv2S09exvjiFuoFeVyenh7AWhN8aqXXYNWK/Epp5kic2uPDu7hx/XOIk3QjcP9Rx4PxFLGC8QspPWxbkJamJ52zqgErTfQzIuSfLpeYL0uK/LePUU5LiFhgfHELu1d20Rv1SGvRWuT9HF3d4fTeCc4OJsQhnJVUWXr5q8GzObIkAc9P0zhGrRQKPsc1IA2DbJhA+yVf9yX46K+sWyzZkIXNjrllqpDmxD0qBkVA1DGMnuSDJPJeFiSvet7ZXAgRWoTs/G2UDkiz47snZNtUNgEdd+HRC9i+vI2nLl/CsChwslhACIE37+3jY3/3o0iSFFqrMMfkDNcYCymT86AxAEDTlLhx8yVo9S2IAVgrw8CZoOfOt/Gsp2N0nkwv8O6vfg6qfdprrFLwHO4MicBft+iaDovpAmmaYrA9xNalLfSGvcA55M0tSRNcevwSesMCvXEfi7OFz5RX58mbBrtYMNqR29aLxSnSND9/ef46/CwE1AI22kAkcVBIsaCqip3LT++e4Nart6E6heV0QWChve0ANjDaYDTaBkSELOshSTL0+yMYY5DnfcRxCq07VOUMVTXDdHqEk5M7ON6/hEeefoKcCrxZcZolcB4NTSRjHVqlkaD2znKyvF9k2hFAqmsVzUzXgTZtF/iLnOGTDZfBvWv7eP1Tr2IyOUQsE1hnoVRHwdFatG2F2fwYUSSRpvQZDvQ9aZLj4ICAOXk/D3D4OE2QFZlXNrErLIFddXWMV7mJogiz2TGcc6iqxX2JDINWjM/oCR1OVnJFmgaTcnYCqWZlmPXvPfJlKIYF4Bz2r70bk5MjLJYT3LtzDbdvvo66WgBRhDdeeREXLz6G933dV29A8w+u7WM+P0PX1qjKGYpiEFq/SepFLRqs0MX+Oe3fuYmqmuHk5I53bLh/hs9LmWeRLH4QRWRnB2kRGRIFqec1uoZsqc72T3F0fBNlOcdicYaqmuHZZ/8U9vYewVf92a/EUxcu4mA2w+xoind/1buxnCywOFvgeH8f0+khtFY4Pb2Gra2LmE6PcOPz1P7ceWgXsmpXbXFOhn1Cv7L2cqENHnjLa8GD/6iVCWAvozSsf47KaIzyAmkco6kVqoUXUq87jHZHuPTYRRhjcUEb3H39LlSroCKv0pSR3ZzR1K4nSgtRRUhogTpzxhB9Ke9luPjYBYzPxsHQmM/V+jn4+rkbpXF0dPM+NO0XczywyTBnFSgydD6jS7KEKshOw3nNTD5BZQyKNMXta3dx7+o+ymmJOI3x5L/2ZHBN7nn3gr3xCFlC4AAHh+effZweiqUq8+hoghsv3cCLv/05HNw4xMPPPowvffQR7A2HwZiU27h8Ds451F0X3AXyfo5vev+X42/2Vz52aZqjLKfY3X0YWmucHZ4h75FsVzEs0NUd+uMeSSVpCoBspUMb1EqurD1qgdhD9Jc15lIGQWjm1Tz9ZU8jy9PQqu3lGbZ6PewMBqR/WtfQxuD//qVfxUf//i+H+cl6y1cICa09PcajT88jx5yzOD6+HRIZ+lqCOI6DAsRwewDlDWPL6RL1skF/PMB7/vX3YDlZeAsYEjAe7Y5CBsdSS5nXn2zrFoc3DwP/sDfsIc1TFIMcSZ5iuEOAgDRw5Czaug0cSv6zjKnNq1oVXt75/BRJsqn8ArcSLeAsOHJRyPSlBzZJQZZE5awiUn2n8TXf/jUQMgquEU3ZhE3d+eqe52hRFBFU3HsyEmVDBs1I5s8JEaFa1CQq0BJpuD/qEzketLEEDpyi4Dg7muJTn/oYppOTtcty5E3HNAiPsFWtQpzG6FobgB+8gbCvIQA89NSjuGweJjujYRFI2SKWXvTehqQkkgLLCemkMhl8/8YdIlAPRxjuDL3tWN+3TQn81HnwED87fg5N2eDWrVcRx0lot4fr8q1Do0nMgVHP8+kSg3EfjeqgDXWY5qdzbxQNvP8D70cURTi6dYSuoUru+a99HlH0JeFauqYLqGHjRy/W2g2VpIeeeRjP7T2PwdYgJH+sdczn1FZtWHPOWsxP5vjsZz8ekNbn36/1Z6aVgRAufB/zZqMoglE0c7Ta4uYrNzE9nmJxusDR3bt49NF3Y+vSNo7vHOHll38Xn/jEP4AxGr/+6z+PLC3Q649RlTP8P39vG2laQAqJpi1RFCPkeR+PPfYl2Nq6iP39a/j8538f16+/iKeeeh+eed+7MdgaeNEOrwNsyEmEaTx88DnzTH79uqznOyYegZ96ebjgLaoMBr0Cy6qGashcWogIjz73SFDEGWwPcOXpKwF1enYwoaJIkowcywZODye0h3ovyyQn9HVvRHN80k4doK1bSiQ5xniRfZYhlLHAG595DffuvbniPD/A8cAuGdZzlXJ/swh9Si8ZBwaewTnrAnWiN+rj0uOXIJ4SYQNhNBhXBo1SaLVG5lspXWRWOqidQm/Uw7Nf8QyassHibIE7r9/Bo3u7QXs0S2JoDyRhJCGbDNNLSNdRdV1QuwGIEydETBJIkvrTTEZnM14A6I0KzGvPYdSk+ziOZeClDbaHlCjMKz97lEEdJSsIPs1C2omMoQzx1i5vbRE/2losmwZl2+IT/+QF/Nr/9fewWJxhONyBNRrW2cDHJM1T9g1c8UfPPTE0TYnp4QTjvbEfwK8eeVd3aFKSjLK+vShigbGX30t9MIs9qb1rKIsXQqxQakWG2fEU1aJeozvQf2lBcHJEVB1obzkWMteYgsu6mgaBR1YzWVYhOT8TcGtcL+F5eUbbVfbv24vaGrQewNPVlAiML1D7hmTKiCLSlE0AmjAogSsI7bUbAd8qTGS4B0JKpHmCYtgjVY2G5Ol4w6V3xITfzZ9jjMFiMcVicYr1QU7nUb+RiADrW8QmCty6YlCs2q6gGR8//yff8wRO989wtn8WMnAWH3DOIUqjgEzsPGzfKAIH5f0cxajAMxeewdk+mb1yNs5BnsELkX/GjAHg4/TeKdq2QtdFYE3e9YMDu/RG2DKW6GrSE2VEuWo7j5xUuPjYBQy2BkSG7zRmJzPUyzpQDngDBCgx0k57STDanLNe5qW/NIoRdXGSPFnhIBpumVu4bsWto6857N++CaMVhIw9uI3mlG+1ya6SjdVzX/83Z0jz1jmHNEvIISKW2L60hThN0B/3MN7bQhwnmEwO0LY1mqZENz2CMQrGaozHF3Dx4mN415WvRpb10B/3g0HweGcH925fR9c11OHw/Es4RzqpdpUAEKKYdazpHCMRbYAP+V1k2y7uWDC6lcUvnCOqHY+bjDaQWeKTGkrcZEKBebg9CK1lay1O7pxgNjnFzt5FYAKcHhNuIIoEemZE+8egIHH3fh72ZV47urPBd5W1eQESYjk93UfbVkjSHMbot01o3up4wKBoPSjGoGuovegsPWwWeta+UgutEkMb/e7eVsia26oNFi0QEQ2NO41aUgZX9PMgNNvLUkSIkPtsp4tjDId9PP3kIzhbEkqQeX50QyM/S1xVqp1ekZvTPEXVdRsLW0iBi5cfwWxyiuFwi7LoKEKzrKm6W8uq4kRCSBK71p2C9JWgTCRykWHvoV00Xok/K2hYPDuaksN954O9t5nJehnGgx5ERBzGqq2wbBtUbYd/+Mv/JyaTAxTFEEq1kEKGgCgEu0dYADJcy7qoNz0vIEkS3Lu6j8H2cBMcISIYTXxMVpNQnQoq/8prmBbDHpG82w6z43nQlQQ8l63ucHLvNPhP5v0cWS/zpP04nAi/YEGCqaMXk33gSE0DMFZ7tB9VgsvJElp3UGtcTPpIF5I05wOijAU5X7QdmkQiTZMAnDCe3zQYeyePiJT7xxe9FuiwF0A2bdOhmlWIYwkZCyyny4ByJbf6GM7pEBCTLKVMupcjWgOK0JyJksjOizbTudB9m89PodQm1aSqFoEcD7+BkPC+DsAzcjyxqGYl5mcLVPMKw50h8kGBbW9rVE5LLGfLsCGzrF5Xk+i8c/T33I8GeiMyxM77OUa7I2rJWkvvuE8+eO2ytibff06Gb9x4EdZqtG19X1Dk77W+6k1zQsryzCtOE99Spp/rjfrYurQdvPqGO8OQwEwOJhQ8vXB8JEi/tikbVIsqVMSBr+dF4KWUQZ4SoHYnC1lstg2p8j84uB4CopSxp0AB591oOAnke6o7jTRPAshGd3qlvyoExhe2sHN5B8vpAtOjmf+5BDuXt/H13/htUC0F9fn8BGU5J8BeMcBgsINd73lJCY0J4xD2UeS1nhXZRqUuZBRajF1LnS7jEcCMKG6rdmO+TcL95EChfKueZ8EEbrSAsdDGBsoS82C7VsFqSjAjoXwgdZCxJLusTuHs5ACnp3fRNLROUy8iPhrtIvZCBv1xLxDvVdtBxALQJO7gHNaEJCzihFD/y8kSd+++jq6rURQr/d0v9njA9qkNC4hIvA5t3aHnpZNIqd+G1gjPooqMRHJNrwiEexa3lbFAMSgwGg+QxTHOOuU91UQgfxZe35QRrACBRR7e2UE/yzxK8/6XkGysVpwjIUk9JhEUXPiIhMDeI3u4df1VJEmKJMm9u3SHejLBaHsb5bxEJCJsX94O8HiaPxiU8zIIU2f9HP2tQciq++M+ya01NAuK0xhJEiONY+RJgl6aYlbVaD2irWo7HN46wv7+NaRp4Vs3BmbtPWR3DLKN0sjz/ts+MykTvPn6Z/Dwsw+jP+6jKRsUgyIoZABUMXZNFygOAKHu1sWS814ONdYBHNWULU4PTtA0y8AJG463kPq2MFdsWtFQXHUaUrqNSomtkaxZVfFcAfJ6Ozm6B9U1qOrFfdfGSjisTEKEcYWu8S30Ac0TmUKQFVT5RohIGo2dFLbJoLecIlTSx7ePAzWjnFXh5eQNhHRiSeWGaRBxEgclDWMoCFtrg9C0syuZt3pRYTLZv6+9ozX5VL7333jvCqXogURNSYkBb3idtwXbujjGaHfkyd60uaZe87StW2hDOqfDnWHwOOSRB1fN9Nzo+bPA/3K2pFmk38yN1ui8ChHPe7kqnh5Ocf3655AmObp2czZMz5K0T5mjykFEJpTgMbdTSEJIcgJtrUXjQWE8hqjnNWrrYE2Dak6Urt6wwMm9UyLHFzSnj5M4ODPwOmYxBQLRrXWGvE5qJAmwhSjCcjnZCIhRJGCNfkugDYl7UCeE2nmJb6kS73Ed3X3hkT3sXNlF1suwmCyD1VGSpdi5vAPVKbJIco+i89W+8FzBJEtRTpdw3gjAtivnF253VzMi/zvFiaODkFSp646AXXqNd2s9ungyn5xreVMRlPWyIN8YJ6Qr6zweAYD3PFVhL5eJXOnjVm2wNaPuRYe2atA2Hdq2RpLk4Xf2+1vQukMUkTg9J4AE7CRwIc82tVdiWlGi6DlaY3Gyf4iDA9o//1mOBwyKGlW1RLHohR40gS/UygJoDeIMEOco9zZEbBmjhcB4b0xu3R7cIAXx9opejk5pKK2x3e+Ty30co/AWM4V3veffBSC0XtI4DijXWErUXiC601R9qFahWlT4nU+8iOUamVNIgd0rO3j2S78Mt66+Aa079Htj7F2+jAI5nAOO7xxhcUYbczEsCK3FL10SA0XkwThxsPMZbw9hncOlPeJo5kmCNCZB8TQmxR/nHA5nM3TaYLkgJYfrn7sOazXiOEXTlMgyut/aB851rVMpJJRaF2xeU0eJKIB+9rMfx/7+Vfz7P/BXCHG6M6R5Zk4uFnmPEpT+uEeL0C9oozSY07KclRQ8685rXipkWYai3wsbXesDplEa+bAI4gFiTSmmKZuwWWlfOa5g6uRbyC0e58gg9PRs/z4TZes5XsMd0qlNsiTMlkgkuAmCxHqttSKkxPxsHuZ7UUT8SGNM2LhVp9GWTbBHo5lp5+eC1K7teY1QcvTAmvjxSquTZ2Cq7cK8gzeTOzeu4u7dN+4Do1hr8Zu/8Xfwrq/8SYhYBnuo/rgPayzKWYlyRuuEZ6FJlqJrFRaTZVBJcc6hP+6jazrMjme4deM1tG2FXm+Ifm+MLO9jtD3C5HCKvJ/7jogOKHDnHP3f0yi4AmPgFbceoyhCvWzwW7/xv6Oq5lBJG2Zp68G+q8kTNSsy32Wha+I5YFe35HDQUrcijn1L22uE5v2cOHjaoBjkoRJcThZUMZ/OEacxhtsjEkUYFBCxCLgFo40HJJFgAyv25L088I+dteCQMD+ZYTo5hIyTEBCdI9SuNZs6mlyxiFgijui9XJwt6L4qrqDoa48+9yiGO0MkscTlhy9AdwrToxkqj8InFSHaQzjRYtu5elljenRM1a9PGoTfS9n8W3qK2vRoumH5FRni+3LywfQFFuno6hbXrn0GTb3aF7XSOLp1BOdcEIivl2siDo6Q93Be/UoLxCkli03Z0LX795S7JvWiQr1sUM9rbG9fhhACg62hb4eTexI7eWhlUM5Kb8tGSdbZwQSpN5ZuyiYAhLiCPbi2j1//9Z9HErN3pIU1GjLetGf7QscDBkUDpZrQiup5NQ4ObBwLpRRAkUJKAjm0Xv1eAKGtmeQpIp9xAuQ0wfY4AOlWBuNKE6EG7c9sert+SBGhCNp8CNJryhNnyY17it/6+78WiKGT4+PVBzhSpNm9sgOrn8L1N1/F2eQARW+IwXhAwJFBH3VZhUybWxdWG6Cf0/BXmRAko4gUO/iaGHLOWo+tonNrOoWq61Auq4ACmxxMUNdLDIdkqKlVu/FQjfGKDpGAhQ0jqftnHRGEkEjiFAcH1/CJ3/zH+NPf9s202YsIsKTEweID1hgi8HuZJGNsEIJm0AJv9PAtH24par+hcvCxvnsQRVGgpwAIGS8DZbQiE2XezDkgdq1CMSgwmx1D6w7WbraGtW9fr168miTqvBkuB0heX2m2RrXxAhRcCVtL58qcuHJaBom/NPeqMdairei+rxvAUqvNk86TlaoJAFgW5AZCQOTN7e69N6FUGyhE4YlFEZRqcXTrCBcfu7hxzTzzZIAC04cI2WpWLhDeXaSclSinJRazKayl88jzPrK8D6VaLGdLJAm1ZjNfhSWOxhv9rX4Qu7DGbqD71r3urLGoFhWqag4hVgjGoLnKa1abNbDWymoqTmjdaWUgQbO4vJ8HQYYgVp5IPzMmIBKNYCqyXernGPWysMa0WmnHAsQ5TLxGM83SDKpZhbyfo6kILcmJHUAV0v7Nu14VySM0paCWMKL7K0W3dk8EuUAw91omMbqmDj60MqZzY8paf2tAAVVGHivRhnXlnENv2MNysiBQS6sIfex52nEaI8tTZL3MO6gYT6fR91V8qmV5tCjMGlWnaPYtIkp62+bcexahnJcYlsOQaPCMNoq89KKjqprEx6MgPE9KTy6AlGi+TTN4Elgf0JjKu5VEXtyBfTKtIeEBnsNbbUKiriJS3lo3NuB37IVP/xakjBEnKaJIhILhX+hMsWmqMMRvubRWGsa3k1jDkhek6nQYxMYe/JDGVDUIj+wDKAiSySi1SjJfVUWIgoxQFicr884o8kLgmxcbBIV9UF36333v6j5efvl3wvetV1cczYthDztXdiHi9+Dmm69hOjkEAAzGA/SGpE04PSaE1PjCGClSKKEhYrIcMimZ3TKAiEyKNx9IqzTmdYNRkUMbi3lTY1nVsNYh72fo6g77N2/BGA2tO7RthSzrwemVd6SME8QygbGGtE7Xe4+bT8xXajEGg218+tMfwxPPPB+Ue7i6N8agV/RCO4SH5LzBrc9UhRBhZhi80iQBVhJ//Yzk5E0B8Jm0YZFrC+E2aRmrS3DB7DTJEiwWZ6FVbNYy9KaqAmWBq700TylYJytKRwCCJeTmwUATui4drJ8YwUYtJrUxK3O+VSklBX+WgCNSuwT8NZrabEhN6Y49G7HaNLTFycEB7t59PSBqN5MZuhGf++Qn8f7xv4liQDQEViKitqzz1XeK1CN/m7IJ1Rtx7hQmBxOcHZ5iMjmEUh3iOIGUjAzV1AocbPk5L2Xzcos2dLEgMFwxKCix9RD/KIoQpTwb9YpBrYLWKoBQ+PrPz+mctSjnJfIerT8G8IADu6A9hIJLBBGt5rOtX5vcfuZDJjEyKbx4gvZdA9K63PB6ZG1PnzDk/TwkQzwzlTEB48pZjdu3Px/Mn4WMYdfkIs/PFDkAB+1NISAkVUuDbZppBS1O48JzUl6Tsz/uhXm4kCJQUnhueHBjP3QUhIh8JU3BJfXaxtbQeoP/GQarsbxf13TB8UZKAd05MIlbNQqzyenGSAmglqQzFvPTOc2svWYrQCC0rulWwg2xhHQI7wjhElbqZ/ySMyk/62Xoj3vev1YE8NP6+8Di5QB8i7sL0o8sJsBYBoDEVg6PboIt9QCLOE5Ch+2LPR54ptg0JEhrFEG826pFN1Be3siFuQAjuYSvFgkpRjw5sVZFiSgKs0IpBLI4RhaT0LbxGRoLO/dSLold2EUZccoEYG1JUFgbQ15fXg/w1qs3UFcLyDhBkmSbGxFvpD7Aaz3A48+8G2+88iJOTu6gabaxtbNHszHVYno8gdEG25e2qX9eU1aY+dlImDF53zrnXPBFtM5hkOcw1mFe14iFRL2kzcdoi/nZAnfuvg5rjd9oEijVUnIQ+8qg1TCxQZKkMB7Q8FaIOLpNqxc5iiK88epn8NjzjxHp1VeHUcRVI3Ev4SXXwuL0c9likKMYUFXMFi38PQxoWCfRL2fLALjaQCl7cYN12gOAYF3T1R0yb0fFAfH8oRRt1KpRiAS8JJ/1Gwu9aKrpQrLB8xOejThDah62W21WwAo1yChannHyi5usQf9FLP3vcyuOpE8Q2pqCLM+D+KgXFa5d+yysNUjiNCiDrB9CSNy8+Qr2PvMInnv/83BWwmhqgzHimzd3fh8C/cAHKmvo3WzbCs4ZxHHiN25JwVDEyNIiGPYyh5aT2nrZEMjCe/wB8M4KVBGvrzkiyndeZeltHE0MJUiVp45EoggVIKG0RWiDMUJx3czXKBJn5+4EgECLos+jpIevvxgQ6pmdPfh7SLlFwDnW1/VodREFoYLp0RT37r2xcS0MuOE26uZ75oIgR+iO+Mp2fjIP9zdOYj8yMmFenOTkVCKTGIPtAeanc5rbL2s0ZQVjNebzU/T7hAjv9UZIPH4hTmIShvCtSdOaDV3adcDXysSB1jQlEIpDAAAgAElEQVTzlAFqw0+nh/cZ8Qop0d8aoF7Wfv4qkfcz/+4qrxokVw5DHqDEtCb+3XEag3V5AXjwFoFluCjiPUD71rruCFS2jq6m86d5OMUgDSnT8G9t1UJ1DWSc+MBoobVaC5Jf3PFAQdEY7SHXhPrqcmo7kCecDN6KznlSeGLDIuXBLwDUhvrS1mcxws8TWTfVWBsCCEAq+o1S2IrYDoq+zxoTzEq1tXBKQWmNWqngfN3WLc72z3D12meQpBlERAowG+V0FAXkFCFJCUJ86fRxTCeHmM1O4KxF0Rti5+IFTI5PcLy/73vgl+lBF/Sgs4J69IyYElKE1jFAsnT9LMPpYoFWa7SKhA/4fF77g9ewv391JeQsY2jdoWlLJDZDUQzQtQ3NN5wJeoh0X97abJgPISSWiwnqZb0hBh0WQyyDWj0LhZM4gIQBUUDSPEUxXM3T+HeHZ2yBpmqCbBRvYEIK7xGovWOGCq25OI1DC54RgzKJUU5JHSX2c531g9s8bd1SG8YH00gIZEW6oe5Pot6eT+adMuh+RNCdCa7e1Ppm4W6agwEEbOlvkXB4qHw7FYAmzjnAYq3yJqUd6zsFfP1aaZzcO8Hdu6/TXDhA/TdfWCljzOcnuHnzJTz67sdobq8MomjVpuX2ZDWvwMLtwiNfGemaFil6PdL5hCMZxH6f5jeRFBh4lDS3jtM8XQlaMyDII42ptb+5vvi5K9WEpGt981lfX8boMIMyxpA6UJFRcuVtjBi4FNw8YuY/skcmVSSF50Kvt2gZZcsanXwvWGGFka3OueA5yWuW1wgnOzeuvYyynIVARAGG2+WbAZHvLQM+CFW7crdnjdrYi++3dRsAIxy4eO5oDK1BFgAhkEmLXm+EohjCWhME+62lNmWcxiTk7pO7dSQs3xfVuY3EjKsvEdOzr+YVZrNj9Ptbm89PRBjtjqA7Ms5eThfU1vYtVHpO9B4tZyUh6kc9v0ZjRN1q3EB0nGSDDxx5fWg+rA/cPHIohr2wxwQHGG9AzOpQIfGPItx45WpQf+IRE6/D8/vHFzoeuH06mRzi4sXHoFQeNDSpp00vfW+0asPNTmj+NhgPwhxG+MgfPNqcC9SLYZ5jmK+yzVldQxsLI8lwmB9YniSYNw1GeY5GKShjoLRGEsdYNE3gO8ZCYHG2wG/88v+Le/fepJcd9j5wQ4QV34tf5NHuCE++9ykY9TiaqsH8ZI7T4310XYN+f4hiROCX26/eQj4oUAwL9Ec9cl7IE2xf3IaIBbI8xTIio1vjX6g3bt4NC7g/7iMtUrRVi9/65Y/jD3731zGbHWNn5woAIEkyxJLayJ1qUNdLZFkPWis/A1iDXYvzmxb/P4IUMcpqBmMpKEyPpuhv9QNUfTkrIYTAcCeGTBIkmUBlyYeMBK4r9P1z5OdLLTBqoTB/qPLEfCEFti5ugSXJpCR/xLRIgyq/KeklZz1SyqAjJP0cSZbg7PDsbXlhSrWelF8izVMMtgeEBI1V8IUM80x4axohkKRJaAkabZD4rDnpxSGDHe2OSKXFw8ipzabQNSqgS5dTqoLXNxsRCV99mNUMZe2ZTA4m+NjHfpEy6SSDtcZvsps6vFwdl+U8ADb4WriaMYYqVeldMajTYEKHJs1TXHn6Ci49fglZL4NqSWVk3aWBg9T8dB6kvIynTDRlExRRAicy8YmvBxwBpJJSVYvwLr9dpag1AX6uPHUFy+kShzcPodqOzHsZm+DRicWwt1ZBIAQzrT1AZ6sf3lXyPTWhqmTKh+oUrLYQuQhqKfnAq6bUbeDlhRY66/5eP8Qf/MGvYjzeg1adr85tmJU7e39QNNqgmtdICxPEHYSUwReQqCTU5syKLCQtxpgwn+uaDtWsxMndk0D/GcQDDLeGPqmTQTSD0da606htFda2ZMWtpgujKqKV2TDXZ8nBIIxxMsfVqy+gbWsUxWAzeDiH0e6IAE+GxCcOru9j+/IOesNeEOrgZxH7WSAVFTGSfBhQ7Ayy46M37MFai3JarqpKFqlIVgL/kQcvMreWLeD4/HiPa5Y17t55I7S8eR/n/ePtnITe6nhw8r7VqOulh9MSIb1e1qG0Nkqj81nqea+6KIpQ5BllD/zQOuXRmKsymsxGVwHQOdJQZTpGo1bCyywgrKxFZAyUrxCdc2i1xsH1A2pXeSj1W1Ud69cnYwFjBHTbhvZG5PlRWS/D4Z27mM/O4JxDMexh+8pOUCiplySAm5kM89M5qf14lBirSgCEXs37OdI0gYhI1eMTH/0Err32Mubz01AFpWmGpimxtXURiNiYVRGKsBhC6Q5SSERv+8BXqhrUu5fouiY43jPUPknjjZfFWQeZigB/jtMsOK53WFVE65keAz5ELCEZwGIs4jTd1CbktqXfnDfcSjQlTdxyZV81APfNFAFgdjTF1qVtaE/WTlJ6GZUjAAeb9HJlGBesFyogOvaSpACRpZlH0HkjU9V64+aVGIGQwsPXZeDvxQn5KXKVC8BztgzEWlbsrMPtG29AqfY+ybpzBTt9rleF4YpUtSQKwG061WnvlxetGTS3YMWcOIkx2h2FDT3JEqpyo1W7vfNu5VmxEr7nORZV6xQEA13Ct28ZgELtuxid1zhdb3MB2EjYnHNhA+Rgu5gs0Rv3ibyfJaH17SytA1iaLweg1oDUpZx1sM6GhCfNJXWNhAjgEb4eyS24IkOzrGGNRVpkQe6MO1XWWGRFhnKxBM3iBSD8urMrUYhI3N+NUZ6HGnvd5nVJyNA1ajvYyCd+sQiVrV5fY5I6McYYqq58sphmSSDPryO5raXZvPF0kNW7QmC5dcF9YDVfVC1xza2xOD68i+Vigiwr0DTVRiXs/EilN+x5qym6X8vJMtChyH+VOij1skZapKsZoaUWrDbat0JXrXH+fEZQO+f8WIbAfEkao5yVvl0fBxAZ4QFWFb5bUxNzsBtJ6Ppo50Hap9EDfXMUHQO4+UX/wL/ax+POuQvAO+66AH9t79TrAt5xz+ydel3An6zFP27HO/W6gLVr+0LHAwVFAIii6BcAfADAkXPuPf+MJ/ev5PFOvbY/ua4/XkcURY8C+CUAlwFYAP+Lc+6/+5d7Vv/8xzv1uoB37rW9U6/rCx3/LEHxGwAsAfzSO2kjAt651/Yn1/XH64ii6AqAK865T0dRNATwKQD/jnPulX/Jp/bPdbxTrwt4517bO/W6vtDxQEFxMBq77b0LkAK4d/s2Hn3qKQA014siQokyOjQWAg4I7szhF64hFcO8xVMsztMrGazu6AeCHZTDWk85fPMKfhwJEWyujCYVCuGRSrojKPHk9BjlYh4BQH8wdNt7F2h4rTUO79zBI08+GfrTfK6Rvx4+V4cVd3B1znTW69d8/vrPAxKYW8nXCWwKCgMkehCBIMkOCPMwRqkSUIDmXvduXT9xzl0Yjsdu78oVRACUUji8cyc8s/WDr21juOWYYOcJuP45WWror1BfWOvti2jtx1dfP3+48Bku0Df8ryIAEgjwQTSOKIAo7t2+ccLtj/5g6HYvXYaDxeGdO3js6adphhORl6I1ZHospfB819Va4bNcPzW+9+efaRRFq+fiT5I85Nx9a3f97/DXxuLZDoSuW/8ai2ufHR2hXC4igN6xvcuXkfj5ixQCd27exM7uLoaj0epZ+YPXo3iL94fXjVs7N3vugZz/vHDN536O/06CGjaY6jq/FpjbyQCJulrCOYu2rfxa3HKXHn4I0tOwoijCnZs3sXfhAobDYVh/wv/3dgefR1hH/mAcgb+A8Lz5k4R/BuLcWibDAI/S9N6C1gvLG23Q1i3qerlGaqd3sOuasBaH4y138aEriKWE9DPKWzduYHdvD6PRCBHf57V3P9zr9Ws7d118Xuefyx/1/Kwjj0P+eetcuDaWGuxaFUBJbVsGLh/pu5oIAISQjgQZ6EzTNIexChcvX8J4NArPa+NaGOBy7hmGtbT2vRvv1fk/Y+19eov7ws+PP8P4PUWz1i9jF4wBHP3M4b1b4Zl9oeOBgDZ7ly/hR376Z1H0BD7yQz+E//pv/S1IIbA7GMD6kxwVBCIYZHkg3RtrgyuFjIijyN83q+oVksxvArG3gWqUQp4kZP+jFK4dH0FGIqjd8MG/Z1HVAe4tZISuVahmJDaQ9Qj1dXbvDJeevISf+k9/MPz8zsVL+OGP/AwuP3EZ+7dv4+c+/GP46Z//BQx7xCcUURSEidn3LYoiNKpDLOSKUxlFGBUFlk2DRbNCWvHC6WcEMGg1kbpjQdeyfzYJoBAmwtLAnjlF9HJKKUm5QtsgWZX3M9TLBpPDCZI0xvjiFv7qX/ium/S8ruAj/+v/BqsNzk6O8d/+2I/ir//iLxKYwlpkXkSdvAclsnj1d+cc+lmGznM++X6XLaE+seaGweeaFVkQcm9bMvZlcq/29AsOcATz7ggd57lxWhk0VRNkxJaTBZKMkKXWWvzkD30ozDd2LlzEf/U//02Uyxl+5q/+5+G6+lmGZdMgjWMM8xx5mm7wXp1zG+sy0ArWQDzGug0lok5rGOeQeRnBVmucLpfBCxDwjh6dCu4hao36wUIH9bKBarsgDzg9nCLvZ/iZv/bD4Xdv713Aj/7Mz+HClV30swzT4yP8yPf8R/g/PvpR7G5vI5YSsRDhPRERkCekDSzPJXHOOVJ08upJxroghq8ZpRpLxEIiliwbSOffeelFlk3sPMK7bFsczedo2s5r4DZoyhbToynK2RJGW5ztn+LTn/xHaNsK16+/eBMALly5jL/+i7+I3cEA/SzD7PgY3/Nd34Vf+/jHsbU19gkfKVMl59DhfB5RRGL/vJewNjLtIxVazwWOfFJ+nuIVRRESKb1JgMasrrGoazRKeWu6MzTLGovJ0q+/Ja599hpeeeWf4vj4FoQgCs1gsI0bNz4X1uKFK5fxN/7238ZD29vIkwSToyP8hQ9+EL/ysY9hd5sE2qOIZB55nRnrIEUUrnt9fWr/rvFaA4jKxQkf09X4ObNtHkABsVEKS4/C77RGoxQOjsn5pC0blPMKx7ePMTue4fDmPl5/45OYTA6hNYnUh31LSPR7I6I5ZT2MxxdweHQVf/ejH8WFnR0kUoY9hPcIXkeDPA/OIRyYG/+u8LMAvJKZP39tTPh55xzKtqWAbow3r1+t28bT7rIkRqs0lDGouhZnk3lQPCpnSyynBNZTrcLP/sR/9kXNRx8oKMZxTP6CDQklcxVYdx3yNEEckSNzGksi0XuCvrYWjerIcJNveCTQKIU0jqGMISeNwQBpLIP0VV9sSmDFHmXZab2iZ6QJmo55ThRYtNYQdiVa7Jwjj640Rt4nJOU6MZiroSSWcGYlTdQqHR4SCZkzH3CVbRrrkEoJ4yxiIcNDGxVF2ER6Obl+pFKiMwaZJ+GnUqLqSJg4TWJUmuTNEkd8J5JK8tw0L65uDALhmFCSBFcfbPUxvkAO1eEeC891TGLifDkQLcRRhVk1LYSMkCcpmk6h9dB7bU1IPkQUoe46GEcEd2OMF3YmlwPnzXLTIiWaQ5oEi6k4Ja4SW8U454KoM0Bw/rTIoDq1oaIDkIRVnCZkLAviCq4fkQ/Ci9lK5o41cce9HrJ4ReXgl5BtxPgaORhkcQxjCeV8slhgbzgkIYkkRt1RYmadQxqTefGsqoK9WdW1sMZBSockluE+AQjrhd0CrKe4aKWDtJiQMngn8pHmKbS1WCyX+Mm/8sP40Z/4CVzc3YX0Ki9p7Pm9PiBycJc+WK47oXeeakBc3w6xIDH8LF7dT06S6M8cHEXoEHBArLoO2hLCu/Zanc6RuPZ6RQMAbVudQw/T/UzjGLpt8cM/8AP48Y98BIPh0CPNKREp2xbGNiHgtVqHYMEKVrGUaFQHEZHgP4vpF2kWgmHrHG3Y/twpabfhZyZlibrrUCuFtlOectMFnU7iXYsgCwkAXVcjigTkeZNhn4zFQqBrGvzl7/1efPgnfxJFv+/Pj4L1pCw3Ah6vRzZmj6UIXrJV25HKl5Qo0hS9LCW/Sa2RexETlrHUhgJKrWi/0NaSh6wXPbfBoSPaQM8ykrlta3RdE7idfDjn0LQl8qyPk5M7ODm5g3/3Q38Jg+HQry8L1TREifPJE18bJW0iJJh11yGJY8RCIEto/2u6TT3jRdOg9l+ruw6LeYnzB9tV8dEf9NDPMuKke0ENltJzzgV9V6YVfTHHgwVFKXHh4g5u36KgaJ2D1ibYOgHMO7QoLd0gzjy5yDfOIkKEw9kMyhjakBw9xEVdI02SECz44BedN2v+3QC97EqTdmCEKBBwtXfrUN3KOij2IrP2XGsSEfG6lF61Z63/fbHPLJlCUrZtCIJ8XSZITyk0SoUKFwA6n+1pa+BcAm0MDmYz9LMMaRxTNdZ0gTfEwZrbUtxuC3JHhvQvQ+tVaVLoiGPESUxKHmuH1ZYg3cpQm8u7Vhhjg4bmoqMNjmXRWF5Jetf4alHBGRuI/eTE3Xp+qgwQawDBJqmeV1QlWhsCHvOrkjQOVA4pZZBsYq9FrkCJX6cCD/bcQwui4ZwgsKqR8+0jgDaOxreZDWfXsKxwtVE1SSFQKwXjiBMXSxkUkvjzuYI0PvtdNer8/TZuJQruVi0gMui1Kw9Sz3EMikKrpUifbzR+9kf/Gv7t7/gOfNO3fmv4d+GDe6A9uC5k2K1SIWhwIOn8uTeq8wHSBP1g45MeDjjWWX9dNlCiqq5D3bVoOgXtr7mt2mD1xRst6/3yf3W9vI83mycpYgA//IM/iO/44AfxZz/wgY2Oj3MuBBE+t86YsHmWbRu6LnmaYNm0iIVA1XW+Q2FDYNHWIvPJgzI6BBl+VyfLMujmaqVhWWwBviXpT91oH2g0+31atG9jY+aMwY98//fj2/78n8c3f8u3oNMaSx+QAe8Xq1Toqq0LjQAIiZhzlIQbazHMc19UqNA962deIFypcG3GWLKna1UYWbAQPf2ZFGLWCfRxLJFm2X1KNmtXFlTMrDUoiiHe9/6vDXsPOxBxQJxVpN+89IEyFgJJHEOKCNpYr+RlQ9Xb+uKG1+50WQZRD9arrhb1SoIvigJdi5OWfFCgP+pDxCRtWC8pgWHTe+tFQdalKv+o44GCovTtIo663EY0liqmLJYUAMzapu2DR+JJlMwjrJoWqlUYDHsbC2GQ58E1/XgxRyxIASaWEpP5EvBmuAApMhjjPRw1vBiu8XY2pFChO71GeCbSNetJhpvA8l1snOu4V+975kKgVRqtr9zWyctCkpwYm7YmaUxyd0W6UnNXHfIkRZ6Q9NxyVmJu5sgHBfKMiPtkj4JAtE2LNPCMnEOQUeIAYBQJ/CZpQsoUJWWC541fhaDAR7Ou1dep4iM+HVcyJJOkYQ21+qTnXZWz0vP+Ih8YySXCeh4TnAu2YsqLhvPibJY1Os+3UkHdI/Y6pAK9UT9UkNZEsIaI1eRsQNy79aDBB98HDkDGWcAizPTWK0LXraqMzhhyajEGtZ8NtkphmOcQQlDbqetCxtqoDlXbYVbX6KUpijRF3XWYLJb+mVACFccytIrpvBy9J8558rWAaikYO+vgopVR8MbgNaJg//P/zc/h0aeewn/4fd8XDKilkNBrgs3WAfO63giEAEJ3Q0SktcuBURuDwlcZvBGnsUSnTZgV8r8po4MUoTKkCsMzuK5uAyGezLS95qc3jU7zFEmSoSyn4Vz59//Uj/0Ynn72GXzP939/2OytD4bcfSnbFsqYEDgWTUMjlE6FZ94rVslfpzSGvXyjGxVkJH37btE0Xk3Goatbb4q9coEBeCP173GWequ5BGzobY1GnKSo6/l961Fbg498+MN44umn8e996EM4XS7RaY1pVQWuNQAcnkygmi5U2GwzFvvOw3B3uJFM8GghlhKtT/C5/du0XejKGKVRL0ncnGUZAXjOKT0bZyzyoAZEohrG7zEs03f+oA4Lfd6gvxXeiVapkHhMqwp3Do/RlO0qiXYOcRyjN+6FBJfHRn6Zh45KEksobTA9nKCt2iDSfnDjENW8QlvT57LDCZuX570co70RTu6c0PPz0oaR517LJA4dDRnfzy99u+OBgqIyBn/jR/4LXHvtFSxnM/wn3/7t+OB//Bfxrd/1ndDG4Hg2Dxs3O2SzWrqMJRZnC9TLGllBnntxGmM5WSAfFCEItOMhbV5aY3Y8J4uiXgarLZaTRZAD46qD23GsNRgIvf7zKEv3Bql1h3K6RH/cPyesRSTo//6//HG88sKnsZzN8EPf+Z34ru/9i/iGb/22IItmtEGzrL0tEWWXQpLOZTkrIaXwguBEUC4GOdKcpJCaIvMO1jrMYpZTUpGZn86DHic7VvSGJBLMrulMcI19JRSsbqxFZIDF2RwXHr2wSZgGABHhf/iJH8erL7yA5WyGv/ydH8QHP/QhfO03/hmyefLXcHYwQVd3QQ2kLRtE3ieNxaCdD/ZSSqh2JTCcZAkS51At6o0XVHdkZ8Smr13drVWa1B7tjXvIezm6ukNvVBBgSxkYKVHNq5BodO2mqK+QEf6nn/4IPv/Zz2A5m+Evfcefw3d/3/fhz333dwOgYMDzGOU3ED5vEUvU8yqo1dAmmGCw1YdWBmdliePpDEkcY1ZV0Nbg+PA0ZNnltNxIZOplg7RIAwk+8i1ltvyRsYSUgtw2/K4Qg17Y82TwCMDVz7+Cf/yrv4qn3vUu/Acf+ACiKMKPfPjD+MZv/mYkUgbxilldbSgl8cwl/v9pe9NYy67sPOw7Z5/5nHvu/OahBrKqWMWpRTZ7Ug9WU92ybEttSLajKEoMOXCAOBEQZHCQIFHyK3AMBAmsBIEBJ3ASJVYkSJBiOe2We7C61Wp2N8kiWcWpplfTm+58zzznx9p7v/fIltX8kQM8VBXrsd499+6z91rf+oYPwLG0iVHBCUB2T1TI8mK1rpHkmfw34jyng4onZIguquIEBmFoQVCjKqFigMybm/pscC8A3Hz9dfyz3/s9XLpyBT//8stomga/+mu/hp/4yZ+UXYaqKEiyHNEyQhZR7l4qqn8u7tcMHU7Llht8U52YhAuijKqp0jVLRMZlccbjygokQSJt/IRJgyCKidzTuq5hORYcx0eaRsjzFGWRQ9M/3Fm9+epr+MPf/V1cuHQJv/jlL6NuGvz8v/Fv4annX5AGJgDw+P3HSMJEJpDkac4tBg04vo007sFyLDCNp20kGXTu+JKECTRupiBGQlmcSaMQ0SlRJ18BfN7PmArbd2BYBqJlDNM2kcYZkjBBWWbI8wRFkfFA3tPwKbl/FQUVpovlGP/9r/8nmMx+Dc+8+HG025RDOhnPcf/mfbqvJEcaU2Yr0xhaXQ+WZ8Pv+9L7WnR8RVpIh7OmaRDOKRZN+L9OD6fI4gRxskRRZCiKHLpuwDQd2HYLtusgDmIwjaEQUWZMlaYS4nkX4ec/7vWRDsXlPMBf/aW/g4/9dx+TVl9N02CxCHEUpTLmI17GmB5OkQQJCo7TF1kOKIpM3TZscvh3Ox7ctgvTNuAPyGswjcj1f/x4jJxXd9E8xGK8QBZnSJIIum4Svs/TwquyhtN2MNwewvVdmaMGkD+mcGwpiwrTg+kZdmeWZAhmIf6d/+w/BwBZPVVFifnRTM7tlpMlRg9HCGchVS78gBahqyKP0DB12D5t9pqhobfWo3tYREjjFONHY3rQFQVZkslKJw4DqMrJjIkS3ck1ortKAb7i3xVwQFWUKNIGk4MpVs+vSRca/uGAMYZ/97/8dWn31FlpYzFa4mjvEBkPFxYZZ3ki5l46pgdTFEUqk+F13aBU+DJHHAcwTRv9/iZanZY0DV6M59yAukFVFXIh0++5e4ppw7JbMHQTTNNhTVy0ei25lihShiyjwjlBcDtXd2Q4rLiqosLf+o//U3T7bRkPZjkWjiczxEECpqnI0wLLyRLhLJQOPgA3to9ohsI0Brtlw/ZsuPyAPlKP4PdauHNwSOstiDE5mMrOkP7NAFmSIwmSExuvppHRYZqhYbg9PDn8WzZ/X8Tsjrxax/sTGUPF/wJPXnsa//f3vofVdhtth7wkl0mCB5OxhAwVRcHReIY8yWTqQhqlEh7XDP1MarmqKpjyrk5RIBEFYZMWLyKUZUXEGV74iVmM8J8EyKHE9myoTIXlmmCahngZEUKQ5LIij5NApoCI6+LTT+P3X32VZnqTBbIoxeRgiu/80fdll13XDSaPx/LzCuYB/8xO4pC6gz7slkPeri0HtmdhuD2EYZmoqkruTcIVJk9zzI5m8vDIkxzxMsZyOSbEhOdMqqoGv0MWZpqh0feFEWzLQ1UV0DQdDWMYDLYwnR6cubedS5fxP/7eHyKLKTcyCROEsxBvf/dt6pJ4ERXysGFCQIA4DlGVBTTdAFM19NYG0E1dplJ0VjoU0adSHFpS17DLCkmYIFkmiIMYh3cPEC4IeszzhB9yOXdPIhtHTTPgd3rI0wxOy0USJqjrCtPpIZbLCaqq5LPTk86ZMQ2D/iaKMkeaRtjZuYpPfuFLSMcK/vh3vg3Xd6GoCoLJEsE8lOu6zEsKjqhK2LYH3TQw3BxguD1Ee6WDVteDZuqwekTGsUwDcZRgOVli/HiMaB4ijTKyyXRs6AatI8My4LQdub8DlNZx2jdZOE3laY44iMmByqzP7ot/zvWRDkVq9etTESpUrQTTALplwG27cNsO8h5VEH6vhThIKBzzaMbz0Cgw1HRM7qNYIotT6IYOr+Nxw+UMZVlidjST3WaeFogD+sDTNMJiMYJh2Oh2VzkhQ4c/8OH3WnLOFeclbY68y1C5QbVIhRZXXVbyTRMee1VRYTkhmKTMC7gdD7qh4conrsAf+GA8GuZP/+BPqfLmhrdi40tCgmcsz5YdRVmWSMMEs8MZJVDzhzdLUlRVgTynQ0hRFHhuB7qhw3JMtPo+eut9AAS5xMvoVFV+kuEXL2J0VtpnPrMPVutPrq7hB8cLaZxtuRZ6az1EywgVD/UUllZZnIxW/wYAACAASURBVMnfN00Dw7D5xrSPu3ffxPbuJQBEgmE6g+s7uP/ePUyn+2QmnYSwbQ+27aHV6kFVGUzThmHY0nzbH7bh+vSQRnMKMtYNDXlZYTlaSNbqB4k2orrPTpGRxKYuPDTjgNbd/p0DWqtJxlMTMtRNBdv1JGzV1OTinyc52isdMF2TKTBpRBudCKONF9TpJ1GMPE8lvNbp9eVG7bRstIdt2SGm8ckcitIFKPIrDZMP0e7rqkGWF3I2E2UZxpM5HcBMlYnkh3cPEc4D6SkpQoZ1Q4Pl2XJDFcnnlmtB5XNiYf+mcLg2jTPEyxjzY4KwRK6kqPybpoau61A1hv56D0wniF/TGMb7EwkBGxYlpGdZLH0oAXCIV8VsGSJPcixHC+RZgcVowREPPhJRT+zOoFCxIQLCy7xEWRaoylr6ccpxgrAI1Lixd1kRKcNokMYpokWEJIgRziP5vKkKGd07TgtFkcM0GPI0Q55mMCwi5JVlzlMXNNQ1hQ23Wv0Pbo0ABBIVkadpdrIum4YQFoEiKapIdChgBJRqL9cwh9TjJe+AshzmGjFYyTe4lqiNQN7SmF4zYxp5JWsGR6iIjNbUtSzAbdehvMy2izRMeBFb40cZnisKw3wxQqvVg+P4/HClPbsuaYZpORbawzY2ntyEkBllMYUwiDg2sTYtz4bb8aCoKmzHwqDVgsmh5cCy8HbFMyNzimfTNE1CwSIrdfvKNlzfheM70g+2Kmm/jRYRwlmAuj6xLqTIro+mxf9o0VHVCYV9ekhpCxlP1GZMlQ9f0wC//Et/ET3PxaPpDHePjzE5msnqSVEhX/R8tKDE7F5LurYXOT0A8+M5sihFURRQFBVJQp1K0zSwLBfd7gq2rmxLj0ema3DbHnRLp0EtNyRXFJ6Cwbu4+WjxIZYV0zUE00C27nVNvoUi/oegxRzLyRJu2+XxJqV848ucAkBHhwcoywK6ZkA3TLgtH8d7R5QcziGoR7fvoyoLJGkI0yQISFSsdVVC59h+FmcwLAPxMkbaSaFbOskxFiHslkOdTtNI0kq4COF23DOfmSC4jB9PUFcV7q31oKqKhGctz0an50NjDIePRwimAVWTvnum2lIUBW6Hft14YgOtVg8vfvkFOG1XZmoGM3pdB3d6aJoG0zHF0Zimg7qm+KLeeg+O73Bo2ZBIAQBM9ieYH82gmwZavRb8vo9wEeHw3iEGW4MfuSaJVEUPUxzQ+iq596fTsnFvvMR/+F/92xgFAZZJgiwnKC2NUmk8rCgKDu4eIA0TaIZOMFSQEEElTBAtI8yOZgQp8zl10zRI4gB1I2ZC+hkILw4SGDxpvmkoWFh6zFYVcpAfbhKmZztFgM/rSoymcz5jyTA7mp3Jp8yTHME0kDBj0zQIZksYpknjCqYiDRMyq+dfVVmj1WtJKLSpKxmIWxYl4mWEyf4UdUXFBUVPkcypKgvUpgOVMcyO5tAtEUWlyFy9im/oIlmjLM+yCwGcYTjWFQXX6pYuIUQRMCxm90mYYPRwdEKK4ZumYRFzNwkT8nXl5vunZ4QAoCY5wnlIsynuDatpGhjT4HgtWoNt94xspml4oryqQi+pGBMwoud6cJzWh56xuqzJY1UlONdyLazsrNCBaJGpvt2yES8i3gGHSJYxgmkg5/gAyHQeVPyKsY/TIrTAMg0pMxHrVhhue206bESep0CWhDl3w8cboshhPEe0LGkMUlXlh8zOKS7q5IhIEjrY8jTH6rk2TMeC1/HQXetSIWiZiFOSQrz9p+8g47mQALAYL7GcLNHf6MEwdXRcF6vttmSMi1/LksZI4OTCqqgkGthZ7WDnqR1aM4yY40EUc1lXJUc9ClOlCTl0DWrTfKSD8SMfiqZj4vq33kCr62ExWkAzdPQ3qHJqD9vor/XQoMHxcgmd67riKEGRF9LoljEV4SLC9GCK4/vHUJnCCRpUyYg5z+H+fYThDLpmwOExLqqqwrJc+XDNj+YEy7kWqjCVwaVVWVHCgGPC4J2MrlClKzF3cSmUszZ6OILTdmFYJtpDXx5Aw60h+qs9ZHmBZ3e3YWo6Xrl1G/PjOXprXQTzUB5MraiHhw/fheP4GK6vw+/71D34LuZHMz7cLjGbHyEIpui0h/BaXeicAea6PlqdDnrrPdieTWQdMb+pasxHc8yPZjAsE4ZNh4fX9cB0xkktH96IHr77EIqiYP3iOuKEwmgVVaGEAtfChRVKeBeau2hJEJhmaFIakiUZDFCB4Q/a6K31AFXhwaO5zNJsD9tI4xQmJ9IYlgnbt+G0HLR6tAkJ9qlgy9otB6ahg2kM8+O5XEsiUipaRD9yJqAbGsb7E0RzqhCbhg4UTSfpDc2cTVxeX4dnWbh+/z6iRYg8JeFyCSIFTR5PMDueIQ0SGLaJcB5CN3V5mGVRinvvvY/5/BiGYYIxHe32kAzmVQNVVcJxfGxcXEer15JQvSBM5CnNnMVhbdom/L5/JvXi5CLykumYiBa0aWYJzY2KtODvKaV5aIaGVteDaRknhAmeYA8QnCqCk6uyhG7p6GgdmVkoGc4NRb2lEc2Z0FBorYBeKVSaOk2NkzOo26TYI7vl0M8AFXIU/KyeDfIGaR8pkb6iSKUaWNlZgdtx4XVcmJoOS9dJN5ikiHkCSryIkHIol+KtSklwYioDmgaGZVLorqZJMlGS5wh4vmDO16jTcqDpFNCrGTrawzZpbF0LdUmkPXovUt6J6VD2FRRFKrtGy/LO3FdTNxJRKPlYw+/7WN1dgWmbcExDStWOOBnQtE0UaSE7KSYM7LkhPe1JJO9pOXQI+Db9GmUZliYVq1mSUYHJ56CCWKSoxNLUDQ0KIxaoqjEUdiHDGhzfhsYzPRnTODnt5PBQVQbXbSMM52BMg2k6cn8xbRP+wEdvrUfwdcun9CJNQ5ZkMEVclKlzRiwZwhd5Cdux0LZt+LZN8po8lzKTpuYjhori4eqqgmFROk972Ea3SwYWQrIRzUNkaY48yUkSVtUo0xwa5zoINv8ZCd6fc32kQxFoMNwaYrI/xoXnLuD6N66DaTSXcXwHWztr2On3uR6nwv5shnfvPsD9m6SZFIsz40PeR7fvoTtYwbXPkEPXztVduLaF44MJiizH1/43Ci/t9TYk1dv1XVieje5qF9uXt6FbusSRi6yQG8d4f4KqrDAfLUgU3LKhb2pwfRfRPDyzESmKgngZo7feR2+jhwdv34fKGOIggeO7WFkfYLvXw954jKc2NpEVBdZ7Xdy5fgetng/LtaiyTjJoPCz08MFDrF/cwNqFNXSGHbS7LUyPZzBsE/EigmnYGA634fltOShur3Tw+b/xeQw7bdx6bw+OTx1UXVEVXeQnEC1AKREUCJvIhS5y3cTFGMP40Rjnnz1P0oycSDD9zT5s10LXdTFstTCLieWVhAniRYzlZElaStuAZujIswJex5MdnumYGD+eQFVVTPYnKNIcumXI5I04SOB2PGiGht2ruxhsDjB6OJIwolJUJ8w4LhHQdAa37WJlZwUG/7c0nWF2OP2Q1ERRQLBd3cBpU+fZ3xxg/GgMr+the2cNLcuieCzDwIWVFXzr9bcQLWL5OkRS+/jRGHt3b+LTP/0yTNeCaZvorfWgGRrSmMJ2Z0c0Lx0Ot+F1WsgSus/FbILP/JXP44tf+iSu37yFVq8ltYl1TbIFISCOg5ijJdSNr55bo3l0eZYuTgUf/z1ndLq+A2PFJOmRehJZ1dQED6ZhIgsYORPncxZxyDY1zTwt0zgjYo8WJ2YJAEFVipDANDaHroj15/oOTMeUc/aEswPrimbulAHK2agfyPcUHVgWZ/TZq4A/8GF7FkWjlSXm8wBlQQHD4sCo6wZFmlNShKDmayrUijvEqCps38aK78PUdakhDdNUstwBEHeBJ3SIrjacBYQO8J9FemdGyA7/b5pmQFFEMsxZ7TQAKZmKlgQ3U3IKPTNVVSOYEwchi1JCRjouHD7Hnh5MEAeJJPqIAF2xAEzHxGrbh2uasA1O3FJVTDgBT2UMzGSSKS7kC65P82SFEQw5PZyiKit4HU/eu8oYBV03wn3qbDdlGDZWVnawWIxQ15VEtYqsQLSMJZcAAI4bSjQK4wTRPJQFU5kVvBixkfNOTmMMlmFI2ZrGIX2SLVW8a69RFBlBwbaBzrANv+/DsyxiR5dkGDI7mkvkR5CXmqpGo511w/n/baYodGur59Yw2Z/i/s0HePnffBlJEMPreNh/dIxbN+6is9oF0xj2bu7h6N4hglkouzeAFqff9/FzL/8CXvujVzF6NMb6hXWMHo5wyCEipjFc/eRVMO1ZjB+PMX40xs7VHYSzEFuXt7C6uwrd1DHZP3FgEBWv6ZjYuLAOTdOQpxke33qM+THNZLYubVG3mJx0VKpKcSorO0Pc+OO3kCUZVnZX4TYuuqtdBFGMb964i3NP7eI3v/0dJMsE927cI6g1IAhZdES2Z+HSxy9h9e4q4iBGVVS4c/2OxLY1Q8NivMTHf+YTWE6WmB5MMNgcII0zrJ5bxXPnz2ER06EUcyF+VVZo6hpr59exsrOCqqqwGC2QJzlavRaYrmH/9j6CaXCG6dY01KWoTJGLokgLuB0XmsaQRCmCeQiNqbiz9xiPb+8jmlP11TSN7DJUVYXbcbF9eQtf+sRP4NW9PTy49QiO78ByLTx45wFe+c5XoWkGNE3HuXPP4NqnnwbTGLyuh7/7q38Dh4sFfnv5L7F/ex+2Z8lDd/PSJi+SiKi18cQGPvn8VZwfDvGbX/0mkWWmgcxcE1eRkeD/xU89g2/80z+BpmtwOx5Wd1cw7HVQ1hUejMZYXxvg1Xv38OadPdx+/TaSIEE4D9HqetIYoLfWw8u/8kX87j/4Hfzsr/5lAJDUdkWh+LDdqzt49gvPIpyF2L+9j6c+cYWiwrCDF3/yWXiWRYzWiubmghXYXulgsNHHYHOAxXiBMi+xHC0w3FnB41uP0R60z+g8FUWB5Zoo8hLBNEAwDVAVpZwpZ0mGgofy7l7bhaaqeHz3AJOiQhyMKULL1GGYOh1eHFGpOaR3ZXNDujLVDZkVhDOaS8ZBAsPUJetY5EkCp9LOyxqPb+/L12zaJpimyhGIxqFf2/JQ1acE0wq5QjHGqPjp0Aji7ht3kYQJXN+B2/HQW++hKirMDmeYHxMqovDRTMVHNW7blcJzt+2i1fUwaPvYGQzQtm0UXIISpCnGYYgyP+n+1JnKJVtUXIgcVLE3xcuYigNFIbSCBzoDlHp//vyz8Lyzc3s6tOngFcHCo4cjPHr/kcz6HG4P0VntIppHmB5OibA3D2WCfLSk2V5vtSeNKQyLZF1r7Y6UpYn4vLwoJVdidjSD0Eq2Oh40nbIcGZc+uTyYNw0T3HrtFhEBeYCvblhgTCMijt8/E8/GNIYrV19CsJxisRxjuZzA5SHCSZjizW+9geHOCnprPaxdWEOkKJgdznB0/wjxIkISpjwovMbF5y9iZWcFlmvC0nVoqkoGJ6d+nm7qWNldhcZjqN57/S1ZSB0/oPfz9X/xOkzHJAVBfRI3JZi3iqLAa9P+xhidOZZrnQkz/vOuj3QoqhpDOAsx3B7i8a1HqKoKn3nmKXz/1m08fv8xmrqG3/cxH82RLBP8s//jtzGfH6PTWcGTV54jSj5/cau7qzBsAztXdzE7nGJ2NIPpmNh7a08yB3ee2oFu6RJPLrIC8TIiGFKl0Mq7b9zFdHQEx23jiY89gc0nNxFMAzx49yGcFlGBo2WM5XgJyzURLkJe6Z2dKWYJdbD3336AC89dwHOXLuD1twkiDechHWazAPfeuof3fvAeRkePqNvb2EBV1tQ5MAWdIbGrbi9CXHz+IlzfxbvfewdHjw6QphE8r4v18xs0dA91SY8ueAf93ddvouTzueVoAd0y0B74MB0Tt167heE2Wfe1hwRhPnzvIZ742BP0voxmiBbxqYe1xv2378t7rKpamhnMRwsK6LUN3C4rvPO9dzB+PEG0iBBFC6xubXK4I4Pfa0M32mgawNR1JCnBYu//8H1cfO4CGGN44aWXMTk6JCjY1HG0d4i18+s42jvC12/exP39IxR5idtvvodOv4+He7cA0AzB7/vwuh51HX0fRUVyCsd3oBsa0jhCtLTPrkU+E3l8NMbx/SNc+vhlyVw9GhPT0PYsoOXha//ie5jsT7B/ex8qo6Dhyf4UTGNoD9vQ+zoc38XTn3oON75zE5/5yqdx5427GD04ljqx4Q5BYfEiht2ypbXZYGuAu3ce4d69xzi6f4zxoxHyNMfWlW1sXNxAvIxx+/U78Ps+AGDr0hbNiMME3dWuzP+Tl3KSJi7IGVXBMHo4IoKVqqLV9aCowBvfvI5oEWN2NEM4J0s8w9SRRSniZYz+Rh91VUFjugztdU1TiqgBYJEIuUMFpp0EwWZxRqQIRcE7r11HlqfQNB2O42PnyQtEpokzLMdLrJ1fhaIqpP8FCGbVDViaJ1maTdMgzjNindsGpodTLCdLHN475D+f5rDTgwnuvbWH48NHCMMZ4niJp5/9DPy+L8kpTGO8Wy3R6nrorHZp/qUoMHUdtqEjznK0LAsDz4NpmyjLktjdqgrHa6FsGrz/7g/5jNGAZbm4ePlpGDz/NJwHhBboGv97D73eGoarm9DNEwKRuLcyL6QRRZmXmE6m9H77DqIFzX3LosL9m3sYHR7i8PAuyrLA7u41HhqeQVU1eN2WHAF0VrtElFLI/k44ermmCds04LU9JEGC6cFUHmY1t1Z8+4fXsZgfg2k6bNvDhctXJXyfhCkxvnUa5RgGfW6dzirC8JS2tCZt9xNPvoBbt36I8fgxVs6tYjlaoMiJRBhMA9RVjf3bjzHen2A2OUIcB1hbOw/bs1BVNdqDNrYubeHi5R1y6dHOHjt1UyMrKEBY77Vg8RBwpj0PpjGJikTzED/49rdQVxVcr4NOZwjGdC4LolFMZ7WLpqq5VWYBnc9zP8r10XSKnEV567VbePz+Y7R6LZwfDvHGgweYH83gtF0sJzRQHT0aE2vJbmF96zw2ntjE+NEYTGewPQtbl7cQzkI5HwEIDnz7jR+gqkpkWYzNS78MHTqGW0OsnV+TMGwcJDDdCEmQ4P69d7G/fwuu2yFD76LEys4K5qM5VFXB6rk11HWDBzfvQzcNjB+NaT53xkkDCOchFuMlDh/v4bO/+Fk8v7uL6+/cxt0376Iz7KCpG9x+/TaWkyXee+cHqOsKOztXYbkWZsGMkrK7LWxd3kKW5LA9Gwd3DmDaJsb7I9y+/Rpct4P5/Bhr59YRBzFUpqK71sN8NEeWEPtv/GiMxXiBvbfu4c6dN2FZLi5dew7nnjmHVtfD3lt7GGwN4HU9nLu8IynMpm2iqgpEixNrpDzN8cr/+11cefEayqLCcrykzlFVEC4ixIsImqFjcTxHMAuxd/tdxPESg/4mBa7OI2RZjGip44mVDpaTJd56+BDHD45pY1ZIo3np45dg2AaW4yV9Jm/fRxqlUFSai3zrq9+Tieq6bmI5myEMp1AUhmASEJzsWvD7PpaTJa6/fQfveY8x5SjAYjGWD664FFXF/bfvo9VrIVrEeOmTz2DF9/HNV65ThzZoI14m+M4br+Cd772Nw8O7AIBebwNr25ucvq3D8R0MNgeI5iH6G32UnLjz/g/ex/vvvib9Hz+39dMo8/LM/DZLMqRhgsn+BFmc4c71O7h9+zVi3oYvosxLDDYHYDrD9HCKVq+Fy89eRDgLsH/nAKvn1khqcgqOU3DCQNQNjTbVZYzDewc0i3JM6Q97uHeIRw9uIYrmSJIQly69CNdfQ54VKHkXoRk6bI9gZNMxyTLMMKRW0TVN2VF0Vrs4vHuAYLaE7blwfQe27+C1Vw4xmx0BTQ2Fz5mYzogdyMXuwhpRBDA7dgteq4uHD98BAKlTzeIMVVkhWZKm1fZslPlJaHhTNwiXCyzmx1gsiWEuINs0Ipa67VkYbA2gMoI5+5t9qd+s6hqOZUl7u5Zto7PSRl3W/ABoocfZnNGrSywWI1RVAcZ0OE4LrtuBYZnUPRmUcm+aDvr9dQyH21x/90FtKQnhhUxAMzR4HQ/xknTAZU5oR1VUGB0eYjR6iDCcwXU78Pw2DFNHnlF3v35xnRc91MWatomsLJGXFSzbgA0gLwv0XBe2Tyxu0j8TTOp1PdiejSyL8eDh2/J9NU0brtshX2hNBdM11GUF03SgaTpct43BYBP7+7fP3BtjDIPVVRwcdFHXNWwe9Mx0DZ2VDoJpgMV4gbtvv4s4DrBcjkEm4hfgdVt45nPPYvXcKs5trMIxDWnJKZyJhPHLIkmg8EDj9qCNpmmwsrOCuqzknFUQaUb7R0jTCKqqwXZpdGL7DmzPhtf1SG7HO0xBNKo+QGb7V10f7VAscjCd4fDeIS1EU8ckDDHeJ2GzgCjctgcoCjw+U7I9G03doLfRk4QLGkynWIzmuPPm+7j84lWE8wg7O1dQliWWywmxAXWNhvG84rJbNjSdCAaGqWP3/BX0++uUaK2qCKYBmMbkzFBRFew+tYNX/ukrmB5MAIXIIadF00VWSDeFOAnQHrZhaBriIMFyvIRhGUgPEpRFhcXxHBcuPAfTtuB1XLq3FZIMdIZtacNWlxXuvHEbz37+eXzyL38Kg9eGUDWG6cEU40djIuBw/aEQFsdBDMd3UOYFFosJyjJHUWiYHB6DaSq2Lm1JGcy5a7t46cIFPHp2H+99/130NvrIs1Ri/AAQLULcvv0arrx4DVmcoT1s49JT53Dn1gMspwGJ2EOi+TdNg+FwW2pIdUuXRtyWQ/O8PM1w481bSIIYKzsr8Ps+FFXB+oV1+cBE8wgP3nmAkssZNEOXNOmqrLH55BaiOS1oxjTasLj7S7SI4LZd7N3cI5kPhwHDYAbfP0uDb+oawTTA3o17aJoGL164AE1V8duPx2jqBvPjGZbjJZoGMAwDmmZgbe287EpVpsDmD6DpmFA1hndfeRdVWeGdP30Hiqpgc+NJqIwhy0hDZbdIB9vf6GPvxh68tivNIQQpqdfbQFMTkzgOYhzcPYDX8dA0RPIY+j6e/clncOf6HaRhgunh7ENRIqqqSu0fQJIgoeVUGXVJpmMiDmL0wjWpQ+uvrdC9qQo0TYPbpvsTpupe16PEesY4oUWFYxBEZ7kWJyppaHV9MF2Tmljf7yPPExiGTfN5j3TBTFPBdJuTphg5J9XE5PbbQwyH2wC+Ke8r4/6vorgYbg/hdlypjRRGFWmcwfPbiMMAtkvfZ9gmPE4qGm4Paf7fovXZdhxy2qkqBNx5yOCzx7ZDsOzOU9uIlrSGBGnrwvlnMZnuoygy6LoJ03Sg6zp0QweMEw6EbXvodFbhecTc/qBX7ekuubZrdFc7sDwb04OpnI8K44/h+jps20OSbMPzOli/sA6Lf55et4XNJzex1u1IeDsvSyyTBL5tnTJx16FrpMM2bRPrF9eRJSSwF05Rvt/H1tZlLBZjOI4PVdXgtFzJTiVDEB2W5cIwLAwGW/D9voSlxX2pTIHb8eA4bZw79wwYY1g9tyoJVkmYYPyICvPlbI5+fx0AsH5xHf2NPgZbA6wNexL+DetMhjwIW79JGGC0WBKsKwo4Q0ewjOR8WmjVzz1znmDoRYQizWG5FtyOR8+EbcLhI5Eip9dHo4NKPks/zvWRiTZVUWG0v48nfuIJJMsY37hxE88//SQuXdrF/UeHeHzrsYQ1IFwKuGDVci3YXLcXTAOoTMW7338XTzx3CVuXtnDlr17AZBmgrmu8/Sc3MdmfQjN0EppywWoWpUhqGuprhoaNJzegKJtSOF3mpaReB9MAh3cPkIQph7xSXHz+Iv7n/+a/PkMX13SGvfdv4Yt//Wdw6eh5jB6OcOPRQwy3h/j0Vz6Nvbfuybna6u4qwkUojQnEbKyuG9J2LSL01nv4/jf/GM9/+lNo6ga7185huD2kSJ0wwb/8rW9K6C1PSdRumCQFGD04BtM1PPuZF/BM8xPEEmvZqKoa08MZRdxkBcb7E/zGd38Lb79yA3meIY128MNXv4p+f1Pe12BziL/0C7+M4fYQtmfj5U98DLsDkjas7axif+8QRV7AFYSeuuZznDlmHKLuDDvwB740O0iCGMOtIa5/4zoc38G5a+fgejaikCp/RQFWz61i/84+ju4fyYF/Je3BNPTWupJMoxkaeRNyQXNVktn0je+/CtOw0ekPkWYRdSqnV2Ld4Lvf+QP80tV/D/31Hl7f24Opa+gMO5gdUuFhtxx0V7tw2g4uRk/ItREHMW0IriWJX3Vd49bbb+Jzf+XL2HlqBy9+6QVpC3b9G69TsSUZghUxFh0TeVZg/HgMw9Sx89Q2tq9sU8fEHTXiIJbSoHqnxre++QMsxguMj46gva3jn/zvfx9FcaJhbJoGpqGjtTbgyQI5VrdX8NkvvIisLJFwp5ksL3DhmfMIF5Fk3pm2KbWDlmtha3WAtu1A1zQU3FM0SDPYBs11TE2DpeuwLVMeSFdeuixNDhrO6vzSv/bzcn00FZmaR8uIRPyqKgsrAPy9UfGTX/oZ1HWNr32N7svQNFw+vw3PslBUJUxNh6FpGAcBih51dcskQZxmeOqTT+Hc0+dIKpIX0E0DtmdJn8vnz+2i4zgwNA11U6OsajyaTsnWjieYrPg+8jKBrevw2x5Ml1jOwk1FVRW89OXPgOlMCvyFRrKpSN5FnawF23XgtS/AabucOHK269A1hnPnNuSfW5YFS9cx314npmgUc91yhfagLWUfKlPQHrThdVtotz30PQ+bvZ6MXRLpHfTepFCgoOd5KKsKjmFwM3kV/Y0ehLyQxiQVXvipT6BpXkISxMizAoZJIwJNZ8jSHFmUAoqClc11xPEzcBwf7X7vbPxbTbyCsihx+enn4bRsOG0Hz57bxSKOyd900MeFnQ0aUy0i6s40FTtXd9FteVjxfViGgZR7WxdVBc8iCL+sK8zjafC/ewAAIABJREFUGHujMeajuWRt52kO17Zw5dy2tJPLigJrwx46q90z6Syi6BBmLWTPp0j3o7pqEM4CqOwsAfFfdX2kQ9EwbIRzapHnRzP4fZ8OC9NEkKboDzrQdA1ZnGE+mvMKtEJllPC6LU6TN1BX5JqynJAtXGe1KyENoaEabA5w9817WNlZIUaXpmG4NZQU9YqLRKnroA+y5GQMpqmwTIuw7CvbmB/NsX/7MTJOwllbv4C7d9+Q98U0hjhagOkaWcrVNSZBiJZjI9EY1i9ukJC9abhur5YyBL/vw2nZkrbu+g4evfsQGxsXpKbPtS3Ey4hioVQVdXPWAst0LSI05AUZE3PGoPgqT/mTAkS1D2chpocz6LoFy3HhtF0oioLlciz/XZ2daMKYzrCIY8zjSC5I27NgViZfiGRaQNpLkDsP94AURguKSizGsqxQFSW6Kx20/JNuiWz1gM5KB9ODKaeHN2A6RV6VnJUplqeQJDR1DfA5kbCuAgDDtKAbGhaLEbrdtTNrUVEVuG4b3bUe8qzA3sERruxsYfuJTbhtB0d7xyjLExcUchShDc3rEMnGaTnQTR3d1Q6+94ev4MKla1BVFb3VLsX0cF3ucHuI4wcjDHd0efj4A59YpXwDI+1ixgXM3Bu3oRQTRVGkdZ9hGVCZina3D6ft4Ny5p3E8enByX4oCUyejeJ1pcAwDUUaMvYwntZD3bSnnfwBIJ8xUmLaJ/qADU9Ow1u7A1HXugcogkkIyDjMKz9Q4SSXRRMgwThubE9nqRMJRVQTjqioRbMTviyyHwj9r4S4jLlVR0HFdSYTJ+QEPkKdqmKaIkpTbleXST9awiPHqtF20PQdt20HXdWHxpIWiFGk5J56up2OxyorJyDah12Ncn5pHMeqoOen2dQ26rkLhZCBFIU2eYRuycDvdScl7U6nj7rguCm7kXdW1JJSIfS0pU1geddYqf5ZavRb6fgsty0LbsWEwJuOSAEDXNKS8EBK+0aLTJxN2SCSn5vmWRUYShbqqYLoWdf1c3iVs8sDZnoZtoNNZgW4aH5YtKGS8HUwDbD6xAcsjlM7UNPQ8F8sklQzSnfPrlLSTFzANHbuDARgn0wBAkCSUqlGV0JnGk2nosysq2k/qquZG82T1x1QqAkSsVFnXcE0TcTuX0VFRSId+ze9FnAViHadxesKk/jGvj5aSYWhYjpcYjR7i/dffxYsvvwTGVBzM51gmCQxNw+qgi2lAlj+mbcJuJTTsP5WkoTKScezf3sdwawXtQRvdjk8xKHzx+X0fi9kEVXmenEWSDLqlo7fWlZt3lpCbTsU3aQDwOh4c3+Y/28Gg7SNPclTcCSKYBvjyL/41/K+/cevsven0YJu2CdMykJUlZvMlNIMslwTMI6AsITA2bRO6oUtXfa/bwtd/8xs4d21X6vaYqiBPyXlBURTyUOTC/yIvyeHHNrkhQIGUHwyCXi3IMUwnRpXl0oFf8/sW3rI/9fIvI0tS/MEf/AMAhMqVRcUDYWs8ms2Q8Xy1IE5JCqFS919XDVA3cmYizH2FcTCZputwWg5BJdMAXpeci6q6lokV9Lkb6K33sBhRh6QbuoxNotfVSMN2cYhIhx4uPxkMNsB0DfPJFIzpH7IMAxSE4RyaTu+HYEmaGrEgTduU87rpwZTLOzQJ5xPMxIkLnoO3f/g6vvjXfpY6A8NAXtJn0dQN2sMOZuMxLhoXqUDjjjGGRXMuYS0WLyOCiQsyobccE62eKT1TLdeCburST5QxhqtXP4Po+uTMnelMQ98jaYfBRcr7sxkASopII+p2hUheYSpaPR/+wMeK78PmGZK+bX8od1QYfxenjNEbHsaqKAraA58SFyJao4JHIGQXAM08BbpQlaWETnWT4sPYBzZrepEK2lxnJ0LI6T8rMDlJRGMqWX5x2YSq0p+7rgudMfQ8Fy3LllmseUnRS4qiwDEoQisrSyg5Tw7h0WBdl4wuxKZOEG6BXNdQ81QG+nk825CbWpAonNY+4x2kZuofCgBXFQWeZcE1TZSahjBNkZUlNEbxSXVD0hzXc85kIgrdYcd14ZomHMOQqR/ivVEVoAEVDY5hSCN3jTHJNDdsg9AY7gnNdFrXaZTJ50+4TtFVgWkampoYxl6nJY0sftTVNA3yrEBvvY+mbmDqGrSa8XkgHdKb3R5CniFr6rT2RPzYkmdWilQNkQZS8MirksObdUVGGNE8RFVWOHaW2Oh04ZqmTBqpmxrt2pGa6gnPTxVm8bqhwTMt+XPmqiK1zz/u9dHYp6qCYEYH3o0b38blF64iy3KU3GkhyXJkZcEtzzSZ9gAuyCy5zo4xFdEywvRgwhmajsxSI7o5uABYwejhCF6Hb75cGKvz6BNhwlwW5C4jUhd0S5f2XXGey7+rigpHe8e4/NLlM1VRXTewbQ/jRyPJ+FvE3EC4INiXMarunLYLzdAlVCsWjbC+C6ZLJAnN0Hau7hIkGUTSvFs3NHheF7PjKdYvEv7ecFMEgpZPGFNJmMgDhFxJLDk4tj0boUkkJYItFQy2Bnj03knXITZEppOP4/EBdZFZUSBahBJiUBSaszSOeSatQ9C8ASK2ECSo4uj+MQDA9iyEQQzLNeUgW+Qmdte6ONo74q+ZAQU1VUzXiObOu4CqqE5STIoK7WGHzIKzHPPjBfb376CuS25WfHLRGiHvUNd3oaoK5nGMeRjBMg30Bj2kRYE4JxNoTWMyyUSmqGi00T28/Rie1yGf2o0+xSNx+yiAch/DcIbDe4c49/QukTZKMqJw2g5Zb9kmnJYjO27GmCzOREFY8zVQpDkX3Fcfsq8T77mYuyiKAl3T4FkW0qJAx3GRGyb5jq73IbL8xJdtGGhZFkxdg6pQ2kxeiUzFE9sx8StTVSg84FlVVWimDr9lo2lInpBGKVQWIObBECJtQWU0WyNdmYayyHiRA1m4CSE7wJPWmwYaU6UbiaFpFPukqhi0fDCF4r0CzohVVRUaR6J0/v0aY6gbyG5MpJyIAzFMU9SGAaaqSLlvb8ehAzxPc2lQXeYlLIeE3yK9hbSCKhWfp3SShmVQaoymnnEVkp8ZwMOa1ZPDnsdcaUxFy7IxbFonebD88zD5/Thcs2doTCaEVLyronttUJQF4jxH1TTQGf0c0zZPdKwdGkXUJbGCGWNktM9RJ/F+Cqcgpqkoc0C3DNiejbqqpJvO6UtlCoqIuCLkwapAZxp0RkbzOtNR8q64aRoyCVCo+695d5fkOeKcDmhNpfxSsV+WdYWqqWXCkfg1CWLMHROeaZ3pjlVFRa3UEhmQBgAGfdaeacHQNKQ8Rs02DLrvqvrQvf1Z10c6FPO0wMouuZ9omo5Xvv4tfOynnofONFRag7woEczIxog8HRsedEstvcqo4vK6Lbz17bewdWkL/Y0BusMOYe9cH5eEKVSm4uM//Sm894P3sH/7MS59/DJ/QHnaQF1DaVSpjSpPba5CW6ZpFLcyP55DNw28/r2v46XPf5H0LKfuq8hyXHr+Gv7xb/x9/MWf+5ukjZuHMGxTmkcLD1bqDGhzU/lBKyAJ3dTxzf/rW9g8v4P1C+twhKaHs9AoPSLBM597Bje+fQP33ryHa5+5hlqpkSW5pIMLKYmqKtLsViQtnFjpUeYf0xkePbiFlZVddFbaMK2T6rwsKzgtB67v8HlmivFoJjeBmoctNw1FN5VZIbsBwaQjtxASAdd1jR989YfI0xzbV7a5QN+lB09VyZhgSckPHhdKJ2EKr1ueoUXXdYOmqJAjl8QNldF9tYdtMipPcrz3xg0cHt5Ft7OKrYu7H1qPnc4Kfucf/UN8/qe/gtXdFRxrC2g6QxTGMlYHoDmXwlTp7lHmJPwVhvFf/82v49onnyFEoOXQ/C2hKK6Y+41++Zd+Hj/4599HkRX42Bc/RikhpwoBXSSb6B3qzEVEVNNwQopGXpxczD3cWcHXf//38BOf+MKHbN7EpiiiqlRFQc915UavMw1MpbBcAYEK8gRTFdQNJYNMo0geDDmPtIpzsknse55M09A5SSgJYkz3Jyh6PgZrPaxur8nItyjLaAOrGwl7ApBesOEsIKhKIc2vbhJRS1wNaN7Xdhx+gNBhMBDw86lNq+95YKqKkueYio6ibmrEWSmDyQWkKJi0pchn5Qema1rQVGJqGrbBTesXlEjRdrCxRXuZyMYU3YZwMiqynDw7XUtC+gAks1feW9MgK0r0PQrRtQ2db+BkySaKALG5F2UJXdOgnwoVLqoacZZjGkZyjijDoqsKuuhAecyZYxpY7bRx0PEwPZiirmsMNwfodX3oAyY7MzHqEHPtNKLEm6qqoKi5lLdQCHvzISY0QBZ38SJGGnNf4aqEpjK0bQdZWaLIMgRpQgkrPPRYfAZpUcj/ZhsGVnxfmiwskgRRlpGBu6qgKivEQUIuWRk1C1GWUWeJ5kwos0iDqeoavm3JkGeBhuRliaPlAkmYSlOJH/f6SGBrXVfornShqAye1+VamxMz24rnWQkHCcahLZ2zpBjPnFM5pdkf+PLBqZsGuqXLjaypG9iehc0nN6WnZV1VsqOoyppIEkkm44oAgmaFttFq2dKibH48R91UZN/FuxlxVWWFnad2wJiG925ch6ZrxK7iPozie2joXBHDjtuU0byINlfLtdBb79FcZ6NH8BuP2aH3p6b/R1WwdXkLAKSLCB3oxMKsSsraE92XmNmIA5HxnwuQjGU+P+bsQbK7E5eiKOhv9iXj1h/48DrumXsXMCZAcKvKyC2EaQSXAjxKR9Nw9427WE6WcFo21s6vSWp6nuRQFEhLO6YxuB0Pm09u8rlvKAkOpy8Raixz1UxDQqwAUBQZyrJAu7NyZoMFaDPe2rqELEtw+GCfDi9VBVMobqvgsoQkOLG+UxjFCdVVTYSKBuhvDHD+6fMAgFbXQ1lWKDhKUfCwZUWh7M6nPnkV0TwkFrN4HRzuz7OCLMJ4tiYg2HuqFGK7nkMFVVkhi8hIXKzHD16CfQjQXMnhkGjLsmFoDEwlTR5trkxafuYluX2I6Ke8rJAVpWT7nY6VEhu2CK0VHWNd14jCmKDaopCdaschv8qNTgdbvR42Oh1s9Hvkg6pRuouw+2Oa+qFkEwG1AwT/iS/GNzOAoEKdqXJTFfcjLo2dSlXnUhCAOhBxCJmnoEAhF3FaDpqKgmcFL0Dj90/35qDX8tD1XPRaHlyf7B4B8NkbufhAUT40ozrdeVMHrEs9qPD0FK+TEunpnuuGusYkL3g3RV8ilLysazRoZLFjGcZJR6uo8CxirZ6WuCR5jrKm4sDQNJiGDo3DpzZPFLFc2k/EASh4HB/0BxWwKdOZNPOoywpBmp0KTv8w5Fryoo6pqpw5KoqClmWh61J+rvi+kkeRnQ4BDmcBQm7fVp7aq1MOmSqnCkEASMV4iaONkzDEJAxJ6z1eoipKmZzy41wf6VA0bQu3X78N1/WRJCF03UQ4C2VlU/OZmbBJEhCm2HQZU9EetjF+NKauYNAmc1dNg6oo8D0XFp8nMI3LBLYG6G/2cef6HXoj8xKKCpkMnyc5Im41JTpJ0zZhORZMk2CPJIhxuH8fgwEdRE1zdgFouibnPA8e3JQaO8c05Gsvc3KeUFRFeicyncH2bTCmwvUd7N/eh6Zr2Ly0KbVfAKSeqql5SHBVo7PSQX+zj6P7xzTr0pkkJginedGZAlRgiKQD26PcwaZuMDp+BEO3YDmm3ADEpShkkpBy02THszFskYhcdIlMZ3KWUlUVRQ9pmiQ5UFAycLh3iP3b+/zg78tMzKaiAbftO+j3fPKW1JiMvnHaDsJFxGOg6OeIDoreG3EgN1xWo5yauWnY3r6CjY0LWDt/lmhTVzWefOYqLMvFbHYkZ3sWh+ersiJTBN4VU3qEfmJdp2vornWxd3MPlmdjZWeFOymp5ADEu0hN06AyCtRtdT2cf/YCHr3/SHZmYi5aFUS5F5l9JZ8rUigqQeNMVeUI4earr+HKlZd4kXLqxvi8TUBsIvhXbARMVWlWpp4cbiWHEcuqkocLbbq13DzEl8EYTF2T3weQGJwyS+lnplGKsqyk1g8geFAczGJ+1rJttDmRoiqExyqHasv6zEbUNI3MgczLEzKM+oE1Wzc483PFZeo6DI2+xEy0bhowRQHj781pUbgcHfADV0B/RVpwT1hiNQr4UsDOAm4zDV3Gi1VVRYkWlgHwz/z01YA27ILPxwDANggO1RiTB1vTNPLvKcg6Q14WvHgpUXJCibxnTYPOCGI9/Xmf/L0Op+3Spp9SQHjJiyBx5UVJ65nLbpw22WSyU049Yg7OdPahwGsxNqJZX4Q8o/SWKMsk1CsOfkGesQxiFovDL80LmJqGtmOjZdnQGRX1Ffe4ZoyPZjQGphE5L4tTzI/mCOMESVGgrGpZ0Jm8EGw4ISmvKiyTBPM4xvFyiVkYyWiyJExQVfWP9IT+s66PdCgaloHFeIFf+Y/+Dj730z8P12lj/GgkYYeKRzBZPCKlLEvpkZgl5JBxcGcf179xHVuXtmB5NhzLpJvUNDy1sYG1DXJsITGszg/GIWWjcdPwLKbZY1kSEUDAT8L3U9MZei0PqkKbW5bkyNII5y5f4vZg2WmUAJZr49U/ehUbG08gSUIc3T+SHyYtmlpW0pZDsVeazmCYlBSgmwbG+xM8fPchqrIid/y6QbdDB1Cn52OD34OqqZLNtvnEBqJlRAUAbxbEIUExRTTnkWxMy5SO+3VNmWGL5QjrGxfpkFeUD2Hn/Z6P918layfHNIjswBcgHVDUyYohtSDaiHTrtQvr6K33cf/mfdR1heH2EJuXNomA5LtwPQdrvS4GbR8pj3GiTLwJwlko9ZjTgynXs2rcuJistkybjLtVVSVmal4iTyiyKgimMHQTf/vX/6bMnBSXmKGqqooomqMqqZAQHUOZl+SUz1RO1dY521WRf07DBK9//XWkUYqVc6uwLZphKFDw1NYmBht9qEyw2XQ0NdBb78HrtrCckgF5VVbSr1FRqTtq6oaToMjh37AMmIaOxSLgRYaCBw/ewXN/4XnYLQen3ZUgO4ETpw9BYABOOg2RUi++xOwRoC5M57M34GTepfMZls6TD+qmoYNTJdTDdEwugyhRpCeCekFa0TXOitXoUK3rGjnXBzfcWJzIEjWqsjzTRTSAhNPCNEWQpkjzsxtVg0YyDcW8E6BOWcgU8rLAIo6R5DkWSYIwSyUTsW5qPoc8OUDE4ej3fZi2KZN94kUsD7Gqpq5RzCWTPEeSEpNYPE8U40TykKo4q3kTB774KsoSRUXvq6Ex6QEr7i/lMgOCAWtojCBXgx+g9JrO+pEqvFg6XUAYmsajuogVLAp3AEiKQq4RTSXDFE1nxJTna1CQ4+q6lmlAH7gxGc6Qp5nUU2dcKpIVRNoTa+jkPaf7zIoSiyRBHCXoeS76HrFsDd4EnUYtBIRv2sTINR0Lk/0xFqMFedhy2F9AtOISn2FaFFgmCSEci1AWqEJyVf2IQuvPuj7Sodg0DV762ZfQXe3iH/1P/wU+97M/i3tv7XG3evWMx1zTEJsxjVJEC4ocufknN/Hd/+c7UFUVm5c2z3zA54dDuKaJrV6PB5haxPiq6aC48NwFPHj7PoJZyIXgpUyFEJBVEqZcK0M4dJKS/qw9bOMLX/lLaHU9LqtIZCo3QDCXYer41/+Dv41Pf/oreO/771GeXlPD5PRlRSFBtGBwEVuKXBYevvcQ9968hziIcenFS9AMnf5NTYPrOVjxfaz6bTg87sltezKW6vLHL2Pv5n0oqsjSOyFD0IFL8FpdVryDOYFQwlmIleEunnjusqyEgtnyzGeWFUQyef/VW2S6XFWSTaubOjeXZuRkX1Pum+XZWNtZxfrmEJrOcPeNuwjnS6zurmH36g4XhOtIsxyLeYDD8RRhmmJ6PKdqMs0wfjxGHFCaemelg+5qF9P9KXWYGiMIWBXZgLQO4iDBfDSnB5QxhOEMmk5r4safvnHmvlSmIpiFeOaZz6IscsTLBE1dI85zCHNlyq/TuVmDwg9JgvmieYiv/eM/Qne1iydfeBIAHTiOaaDtOAQTdruSvm97tmQYr19Yx7237uH4wTGZ0OclJT+kOZq64Z0i/ZnuhTaAittPPb71GH/3f/hvEc4COdMVV103yMoSyyRFkGZy7hJlmdzAxQEA4MwzJODJZZJgEoYI05TPoUrpB1rVtYRfAerMNEYG1oqiII1oBhNMl1guQqRFLgk/qgIJw6YFQX3LJJFFZtOQObeq8iSP07Bw03CdJHUZYZoizFJ5P0QsqVGUJRo0cl5UVKU8APdnM9wbjbA3HmMShmQ1V5TIedcInCRHnT5gq7pGq0WypaokZ6dwHsjD9zSkq/OCo+YzWME0zZNcsj1/FMwo5sBxnsuDMa8qKDjZ/KtTCAn9PGKnqooqn80wpe6rKEuJwAlUwtDOdvhMVeG7jvRuzhJKKBGHhqExODxXsa4aTpDh0GVOrHXy6qXX9MHDXq6pqkJdl5JbIdajYLIvk1TC3QAVUVGW4dFkivFohrpu0LLsE4Z501CXz+fGVEzRSMqwDTLY6FAK0/x4huUixDyKMI1COc8ueXFhatR1MlUhkmdeyq9oGcsM1NPw7J93fWT26fRgCrft4u/9L79FsNPuCu68fgembVB8U8EDXpfkAnL84BjzyQhZnoAxDecuX8LnfvGzyBNKfL/D45TCixsYHUwozy/JsX9nH0VWwGk5UFRg7fw6eus93PzODXz1n/wO1tbOY213E93VLgCSHJDLeo3eeg/TMESyTDB+PEJ3pYtwHsiZWxZnZxhkVVHi2meu4eDOAT73C38BRV5IwoHTdrC2PkA2KInAEVFO4/7txzh+MMJyNuPp1ip2ru3i2vNP4sGDQxRZjndGC7SHbczGc8TLBMGUyAjCdcZyLHRXO2BMxT//P/8AAHDxyjXsPLWNqqgwPZzKWWESpjAdE5ZnI1nGONw7xO7VHbzwpRdw/Ruvo7/RR7yMEcWLM59ZmuX4W//+X8ftoyO8++ZtLMZLdNe66K31oBsaJzUp8tAoswLhIsJrX3sV0TKWbLvP/sLn0d/sY2XQRZRlmI8WePOP30TTNOit9bDxxAaOHxzj+MExzVGZiuVoQdIF28Bgo4+NJzbw3d//DrI8wcrGBi5+7KLU/bXX2sQ6CxPOhMvx+S9/BU3d4O/9+j/Ek89dwVe/enJfTGPw+z6++Csv41PBpynvMieyhW/b8Hc3MFosUeZULAXTALOjGYJpgEfvP0R70AEAbDyxgdXNISZHUyxGC6hMxfnzm/ij195AMKXZRhLQvIakM0BntYNP/dyncOM7N/D9r/8xut01bFzYgNclqU68jCX8qihAnnjI4gyzgykW4wWe/uzTuPvGXdgtm4c6nzoUywqT8RxpkaNtk0Bd0PRd05QSDUGoyThsl5fl/0fbm8Rakp1nYl+cE+Od75vz5VSZNbCKLIosUaIottQtdavbbBi2bLfhheFV72zAMOCtN4YBr7wxvLYX3njhjbphtA1I3QI0FUVSrSJrnrIyX+ab37tTzBFnCC/+c869L7OoZi46gEImKqcbN+Kc8//f/w14cnWF0/NrzE5nGG4N8a1vPHARa/ZQi/wQk17fJS5Yputkb0I2alGIxcUCRx8/xexsjuLVW1APb2PaMwVdRFU5kVuUgURpXt4pjTqnZBnmc6TzzN2X1BpnyyVWZYleGLo5aSOku59GSOiug9Qa87xA2bYQSuJ4vsDV2QwXRxeQrcT3/+E77gCKzPcD0FxRm7leHITUZTc1qlbg1f19nG1dYrwzQjbP8NX7j9Eb9TGYDjCaDp2eTiiFphU35sJkF8aNvRn/2q5DKInrLEMU+KjaFqHvOzhWKOWKEGm6Uupw6DDN6grH8wVmaYYoDNALQ2jTlXue5zb+cZJg2u9jWZZopcQwjnFni5CLfJFhfj4nLSJjCEaUaxv5Ps3/WuESarJZ5qz1bJoFN5Fgz1+WkRv3yMLz+oRSaMbTIYqmcQxanzFIrd1Bfvrsggw0BmSzd7Zc4jrLMDBEQJ9zfH52htnFAqdfnrgxEbFhYxMk3eDxB0/QVi2mB1suOqpqqVCzXb3PGOqmhZbrEYZSZHJCfBP1wnz777pe6lC0FGvr7Tfdm8CPApcu7gc+8kWGk4sFLo8uHONyOJpiEuxi62CK26/TXG92NnfOIzt3dhDGIa5PrlFlJaRQKI2Hp41iGUyGOHhlH/uvHGB7mxxsVpdL92UmgwSM0+zg2SdPqXVuBKIkdNBkGBGRpzfs3WAjdR0Az8P9b95zqd5ZUWN+vnDCa3QdirTExZMLpPMVtEkAmOxsYzAhC63737yHq/kS+YLSDWxVaAN4a5OSTZsPSTrifoxXvv0Abz/7Hj77xYc4fvwVzp4+w8Nvvo4gDqGlcjo3rTrMT8lIeXE+p89pEq2booYSDNu7t248M8YYpFa4t7ODDh3iPnmrfnk2R2dSO6IkRLEi1406ryBayt6zc0E/oBlhEAWo2hZXx1c4+vgp/upP/j8URYrv/eYfuC5jcbZw84Gf/viPcXj4Gu7cf4ggDMj+a2uMqLeHYlXio7/4kOYbplsSjcD+fQpmlUIh7sXgPsPsrLmRXA/AifDbqkWVElMwX+SYn86dFrEySIL9vqz/5Nb+Nsa7IyTD27j9+m2kqxzpLEW+KhAlEb7SFC5cZvbvzRwBpS5qMJ/h/jfv483vfwNHn3wF3/eRzjNCIHxaC1ESoTei7D7RUpVdpiW01licLzDZn5gIpRehuGJVkCwIJfpRhDgIsSpLtIb0wpkHn3EHK0lNlfkXHz+hWKy8crZjoRGKd12HVmn0TUoB8zxkpvu08CqFSQPT/SmWFwvMz+YIQh/DrRGU1gg4JzedDZeRqqxRZqWbf1sI2ZLMNp9X3bQIOEdaV4gDQjzsIRaa2adQEmXTGrarRl7XePblCe0VpzN4nofCwerPAAAgAElEQVSiaRBwH1v9vmMaNlJAaSKkRH6AeZ4bSU4LpTWWBZlntI1Ab9TH4mKJxTmxNrlPsKXPiK1uIWQ7YweICalM9/h8DFHXdSibFtxjUJr8PS1PQncdAs6R1S16Vv9q5mlSazy+usLlcoXF+RyilXjljbtgjDktJvOog+SMmbxDoGwaVEI4SNnz1k48xSo32t3I/BpByDb+jfIupZOiACSTEiao+pdepnBbXCxw+NohqrKGSkIIKREbQp5lhdZNi8unl8gXOe0JFwvSNY8pei6IQ3S6w9NPnuL65No1QkVK628w6SM04dxN2VBxZWbPURIRr4MxqI4IibUJ/VYmOUS0kuLUjK5801v3V7le6lD0mAcppDNpBWj2R7PEAMwE1956SOG6ndYoVkSC4Zzh4OEtBFGAbJHj43c/xvs/+zFOTj7Hd77zD/H9H/02rp5dOc9Lz/Pw9PNHqJsCo9G2gUaJURRFPUz3tjDaHtFiMxZjndbojXpgPsdwa+QyBpVhrdrvxeoB7WWhSikUwjikcFDjUGN/XTQCl0eX8DxijlrtopTSLZLeqI/zJxc4e3SKT372ATp0+O7v/qZLBRC1gMc8Nx8jLZfE/v093H7jNq5PZ7j75l3IVuLR+5+jLDOaFQURDu7eQXmPOhClFOIBzQZt1dp1HXrjPm49F7HEuAepaNYyiGK02yNnV2XxdqvHGu2MjM9k6OBZKzIHCHK5XuR48tER3vvzn6BpKhweUiRMvsgMXEF+hKvrFc7Pv0KeL6AtnBOHUFJj7/4+esMe2fA9OUexzFFVhfO5tOYMnYHJlYGAn7+kIA/N/Qf79kG6wFurRyzTArIVmOxPsX24Az+k8NHBZODSCC6eXODZZ8/w6IPPsHNwgG/9vW8hm2eYmRkoAFw8PkdVFeTJmZUEzYYB4riHg4e3MN2f0qhgmUNJTYnwoe+MCYbGqLnraM5ZrgrnQHIDAtUkB7Aa2AKNI9EUTUNkl4AIDcuiQFpTmnpmIq1st1vlFZF1WqDxiCnoM24YgSWyujIznxKLokRVUh5o13WGROZjcXEN0pxuOZvG1swKa+OaIs2BbyErrRTqsobv3zRhVoq+k14c0cFgaPtWpxgZ9xdp4N+qbZFlBcqswskXJ1hdr1CmJYbTAcqsoq5Qa3f/VtfMOc3DV2XpulnddTi7mlH23qp02Zyzs7mRytAztjBlW7UoljlELZxtnRDKFW/Pu9oopdFYfW+nHUTZKgVpCoBatE6L3Rp2MACczea4eHyBbJ4S2cnM8epWoFUKtUjBvbXRRdm0SDdmzOfLpQuGFq3E8nKFMI7oO/EVKlBhbDslj4bVRmvKkKe5iZd7MSfSEm3cgcI8Ss6pBZrQ/H2cDiefcUhNJhZVXuPyyQWU0uiP+yhWBc4enZGDliEKBlGAZ588RbbMUWQpimKJ09NHGA6muHX4KqY726Rp9zmaokbbp7i5/oQ0p5YY1jYCSihSGZhGyBr1S2NsIqV6Qfb0d10vdSjGdhBvqifRCJIvKGWYp8DW3hRJP0a+KpDOUvrQUuLOG3ewe2cXHTo8/uAJvvjgA+T5Et/73o+wtb9t8g5LLC7nmO5tkXD/+hhXV88AAJeXr4Kx30WVUwJ2YmC5wWQAP/CNCN1zm4xWVmtkLaroHizxZ5NlRSQhia4L3csTxCE8M2Qm+CDGwYMD7N3fWwdmFjXOH19gerAFbRb96Zen+MVf/QSPHr2HMEowHm/j3rfuY3YyQ9d1GIz7+OyznyLL5hiPd3H//jcx2h4ZH84Gw60hBuM+du/sIp2lKNIC6XWKO9+4g8nu2FWE+apwTiRKKHQdMNwaYnE+v/HMuEd6NjuPsLl0yvg79sYkyN+9u4uoF2F7NITSGk8eHbtFMjCzWAtBnnx+Ap8H+MHv/gj7r5AxODwPy79ZuwT1hgl6vRHatsLV1TOMRtvoTwbIVksooTCYDjDdn2Dv3q7LjuQbtnQALWCSqSgEzx32pIcT0AayG0yHjmE5HFEHYbPsbNEmWlpA+SLDeI/g06Zs8OyzZ/jwp3+DR4/ew9bpIfrjPpJBjIujc/SGlP358/f+FLP5GXq9Ie7dfQsAsHO4jeXyCnfDu4j7EaYHFFujNW1snbazSA+iFdDORo/myfb73dxkO1DmpTVHV0JChRrC+K62Ujq23yIvkC9ylFmJ5cUCi4sFlFDoGSnSycU1WvOsASIL7exOsSpLN7PL6xqzNMPsbI5skUMJ5Q4N2QqsrlZYXa8oUcHA9zYRnrIdW1eUAoTsrK5XZLp947Cn51QZk2bb9US+D2WgMKsxm2c56rJGNsuwuKRcRa3Ihi1MIizOKGpOS43Z6TWujq8RhAHGOyMjAQtxPqVcwa4jp535+RznT86xulphtDWk7tZEKQGAlNLpVuuCyHxNtbYGBIgRbyVZm1enO2dFWTYtbKSpb0wIZKQN8SRDYzptC/2df3WO+Tk5Lnmeh6pu0LQCl7MllpdLKgiNT+/laIl+j1xwPI86s4vTa5QpoWpK0necDWKMd0a0h20c9FJQ0UI5oCD/U1iI1HOQsVtjgPEPhZEwkd48X2ZgnFy67OHUAG62vrpeYXGxxGRvjIMHB6iLGn/9//4VhKjBeYAo6pH2sUzRNBWEqJ2aoKxSzOfn6PUG6E8GCKLAkZxKlFhdLjGYUqBEZwhCSkjXHVZ5Da20IdesD8LNzNJ/1/VynaLRu7V1S1W/Iqx27x4xRrnHHA33upgZOMbDaHuE1964j14YYlWVeP07r+L2G/8NQRJKI5tluHx6ibNHZ6iqFO0xkSYePvw2fvgH/8RFhohWojfu4be/8zvUfZ3OoJUGiz1w33cUeEstbw2mLLuONsWmdbrFzZmi53k0SI8jeB6ZXnOfozemPL+A03zAGxN0k+YFqrRCWzd49buvYpDEKNsG1yczrK5WeO3tt/Fb//jvu3ng6prIL52i3MXXX/8eTk+/hBA1jo4+RhCYNPskRmiYpYPpANODqZMPWAaVdRnZNG3uOkNoWhY4+fLU3ZetjqqW4KgoCHB7ewtiMnb3bV1G7CxAKIX5IjUhpRz79/cw2hmhLgjqC0Ifb/7gTQzG38PW4bY7xMpVga7r0J9QckFv3Md/9l/915ifzrFazJH0KTHl9qv3UKQFyrQgw+6DLQy3Ro5VTL62ygUrM+7h6uIE27e2bryLXbf2M1WKvpdkSMN8qRW2+gPyx9zxMMtzpGnuFsadb9wxhtEKZ5czMMbw9vd/A//gD/8Jwphgm3yRwfd9CGPy/sPf+4+gJcFpq8Uczz49wsXjc7zx3bfx8DsPUaxKaEkWdUEcuK4FAPwocDBvUzYk5jcIi7X+27yxKq+gTwlmjfvGJs64APk+J7lERbBwmRYuUzGMAgpZvruL/mSAd//luzh59BTX18fE4t69i8MHdxHEATnqGL/IbJ5hfjrDbHaO0Wgbhw8PESaURjE/X+CLv/mc5FOjnptZ2TBda2phM0VtXA+e6zqoSK1x9ewK1izC+lT6BhlSkmj/RUqHPf2XUQrFsIfbr9/G1sEW2rrBZz/7HM8+e4rLiycAAKUVgiCitIswQZwMDLOaIQgCnJ5+he3tW2R67XNsHWzhg5/9FNniDrJZisn+FP1xn3TQhjVvi+pOaTC2tiN8nmijJIUiAyTvEoIKHjv7ukxT41jjo2galG2DbJHj+vgaTz8+Ag98DCY0h/3wLz7A8nKFi6MLPHr0Hopiibff/vvoj4icRyk2kfvullcrrOZzTHd3DEuUuubBdLhmdWuSJGiz/yihUKSlMVUxygHVvdApKqVRmAM3CCh8usprHH381Nhp9ojNmkRmhtciXxaYnc6we3cXD7/zkGwuOcPJFyd4/MnnqKsc8/kZuGGrhlECIRqMx7vY2TlEGCYmKWPgjFkAoD8eoK1bnD0+R3A6QxgFiAeJu2erKqjyNeJhTRY2LQp/leulDkWltHNT6boOvu+TV6gfEKZvHOsbKUxAJf3+3Xs0J7KspcinSCBL4+Wc2vvT468g2hrbO7eRZwsENQn+B5O+qfqHDt6J+zG00sgXOaq8dp6SE9MBtI2ANnRxC59K01Ex5t1wtEG3YWdmYASt9Y2qzHZbZd2Q8NdICwYG+w84zbF+7fd+DQDcTKmtWhx/9teocnq5iiLDdGcb39z9TSipkC1S9Md9kj88OMBoe0RQsKG3N0WNlhnTbI9S2bXWSGd00NrNRLaU9r3Jsuo6QEgFRHC2RzwMjNWWb1xAiObsgeYfWUlsQmsEHg9JV1SjoWikW9s3uznPg2wFtO4w3h2vuxulnZ5zT+yRzCMOna7K88gcvDI0b+t6ZF9eLRV1tRu+qJuX1VUqZbrAhsJnd3cmCLjv6OgAkVE8UzBxn2OrP4AHEnr3Bgne+m3q/CwtXLQSf/uvz5DnK3Duo6lrjLYn2L1L8V/77T4GJq6mP+ljMCULujKrgKaFlJJ8ZEc9yFYiNPcW9ciP1Vaw1n7w+XEHHTLSQKkBgjhAf9Q3UDZDW7eOJVqsSuSLHLIVmO5PMdwarVm3vRhJ0ke/P4FWEqvVFbqvOvh+CM43iGZSkJG852G8M3EMcmb0psuLBebnC8QZ6V374575c+ucO1G3bu14ngc/8J1ECjB5ijUdmn5IyepxnwzfLTrTNgJ1XmFxsUSxzJEvyR7Rpp1Yc4ggDrB9a4vCAZqSZk9NCc9jaJoSQjRoRQOlBKQUCMMYcdzHYDR2713UizDoT5Bla2SlrVsEoU/vYt2iqVsn+LeOUtal6+b20aGtG+SL3DC6PePKItwoqJECHjw0ZuNOZynmZ3N0HTDeGWP37i6CKMCjnz+iPNqrp2CMYTjcwsXFY8SrAfr98YbmO4AQDbJsjt3duzQ2MrPjpmyQLzIXEm2LftkKx4om+ZNwKRMAXjA18TyYbERy1uJm3aXXqUtmsfFNAOlbs3mG9DrF4Q8O3XvSNgIHDw4QRAGWFwtcnp2iLMllxoOH0Wgbw+EW+pP+hh+yRLkqHOfAyqnsvwHQGCzqRdCGVENFcus6Y21Y+20j3Ez0V7leOjoqGfaoO2PM5bq1kuQJXdehlI0RuTNwzhCNB+QmYb5sGkab5IJWgPvkvdgf98EYB+M++sMRuq7DZGeb0pT3pg6G6nRnvCs9N7dcR7GQN6EUpB3rNC1Gq7exWkpvw83BvtTMp8OPxNqEpVt6NjrAmlh0XefMwMOYmGVCrVvzyd5krY+LQ2dzl2YzbG8fwpMkN9m9twclFG6/cRvJIHHOP1bwX+W1i+qRZp7heWs6uD247abEAx+9UeRo4/azylagjckSqVUKqtEYRLGDhGy3CGBt2GuMBwYms9LSprvO6PW6zkC2nTmUtbt3V5TULc1iWuGKDiU1esMEQRSizEoDIRKJxmPMaBSNHsk4AZVZCd+ka29enmfkCLpzj9I67FgRu96Aye1sJIxDBJwjb2rzRlPSCQAn2hZKgnOOolhhb+8emM8w2ZtgvDdB3KONPBn1zIbeOgN7O5tljEEZIpYf+mah0gyUzAnW2tcXVpj5ntOrFRUWoY/hZOC6Z4AO0yqvsLhYoClqCCEQBAGSQYL+hLx5lSC9bFM18DhDmWcQokFZpmCmGN1kpk6m+/CM5qQpG8CmYJhKva1blHmBMCS3oDBZ6/XcSMLM3wBCKTZzB4kEUhLcL7UpYpXT4loyRJmZ+yobx2TfvbuLngka5gGn8OY7O+55VlmJ02cUQB4EoQsp77QC9wmu6/VG7j7sIewHIZSWqKscF8ctdvUBwoRIIPZzSlPAKanAkxCqbdE9n7pg5nnFKqe0iYBDCYkwjiBaGjFZWUBtBOVLw4Se7E+wd28P01tT+L6P7cMtzE5nSBJycPL9EEEQQogWWTZHkgwdyc9ek/0J+qMeYD5nlVfEKjcOWPa+badoZUTWXMHN254rPj3PIwma7gDQPkYaaYrlIxKLxAS0L+WLjOa2GemTtaL9RytiqEdJaMIUAlyenKGuC3DOkcRDckHi5HbWVi14xyF9YpNG/RjFqjBF+RaWFwuksxSr6xX6Jh2o09Spila6YAW759A6DPCrXi91KGpFhBS7IZJDCVldbX6RzCdDXZiKyTMMKmYExlYMLDvlOoOoF+H+a2+gXFFO22DSx8GDW+7A4AF3TidBQLZSnfHqJEYSfT6La4tWuOR3mOrQVolt3QI3ESsAVBkHcUChraGPRgi3yJUmnZGdK1hBtlDS2R8xzig1vSPNje2gDl87hGyFgzS2b2/T5mz8UgHa0O0DtN0KQN05M44PlCup4TGyHdPt2rTbzq9syCY9C3o21ieQbJWAyFdufmMLFN2RXsselmESEvvTI7qzklag7lFXaYbXlnwQRIEjk1gz8yqrXOFih+DMuB2FCR2MnfGqtVUqHeTG/o1RV7S9f4AweT4lY72pEzuXvrdWksWV1AqNpAM/CgKkVU4+sEnsHGCElPCwdlRxgaaqI5OCu6+6INzJ7oQ6ySSEHxIq0daGEJQQiWs4HZBva03J5CSOpk1HmdmvJddYiJ8q+Y2b6siLVykNaazqAKCnSG5Ul7XbXPNlBs9j8Dwyqp8eTCkOKw6gDAnp9uu3jXlCQJ0sKDFAawUpBYbDKeJe/4Yxue2Ygp4P2ZLeEwDylUKWLeFxZmRN3HW7HlUppks0Wt5NMhsI4ifSnVkbimzT0HVoTaahEhL5InewXxCRbi0xCRecc9RNhSiJsHt3FzzwqWOsW4imRV0XkLJ1BLEkHiIZrPNCiZxGc9/eYIggiFDXBYpihV46dKQTdJ37bLZztigMf+5QtGS/lnP4AY1mgihAFLfww4Dmb816nl1mFVZXK7R1i9d/43VM9yfoGcRp+3AHB6+QNVm+ytG2Neq6QBT10La1C0Tm3EeS0KgijAJyQjIwrGgEyowSVJJB7A71tm43DkLl4GVmHKDMrnFzkenOdcfkxazcYdmUjQsK8AMf+bJAXVbYvbu/cRjTPqyMPloKhenBFFprnB49gWgbcB4gVr21o1dLzmHK7Nlt3cJquCmqj8iUzz6h8AN/Q+srW0nImbDWdTdN8H+V66UOxYvjYxx/foxXv/uq667IH1K7zVhJ7VrgOq/QH/VpjseJUuzBw85wSK4jPe3cCGQc4Xf/898lWFQq9PoJVovMsUr9wIfylHGCV07OoEwXQ84o3CRb0KbKQAcY58zAqQTpPn7/sRsyAwSncmPltcl0LAtKA1+nP2vSP0GQia+kStZ6RlpzXYAqY99YRR2+doidOzvoDXsYbZNOykKk3GcoswqdJu9XK23pDXsusUI3glhfZrPUSqMpagMvUmXE+NqyaX0RbFJFDeIohO7IL7KRpC3zbTcFuF/btOnrug65EeBrqZznqpKK0kICTgekqTSV+TNBTDCl7dxpEflA3boNPYgDF+/UdR3KtKKutiHo3Uo8+iP6zp6XLtiAVXvohElIkUcGPqEOmH4vZ+RPG4WBo+cDBC1zbiy9zHcd+T7SVY7tw2388D/5IQmJhz1kaYFiVbjO2sUNWTlSSEYIYRQ4Y/qmIqjdkm4c8ctAplIQNX6TGdd1nXuH6qKGFIpCcP3WyR6qvEa6pBDo/pAio24Z6F0pBbFqTQYmw8Er+5juT1CsbiObZzj6+AhlWkKIGm3bYLw1RWSgPt/nLhrJxkf5YWAkUxSTRSSKGcLpyBR/VMzZbMwbz2gzxR2em31zn6M/6iFb5AgjWiNtI1CuShRphjCKEA57SIwx/u7dXfhhgDIrEQpKhqnyCqMdcqnZOpiiP+oRJHm+cGxm3w8xnAzdYW2/X2Y23N6wh/7tHdRFjdn5DE1ZuRBly6K277x95kHov5Di3mkKU7dzfj/gLhjZFnP2fVgYUs1wa4hbD+9h//6+m4MDxEh//TfewJ1v3EGV11hdrXD8+bELWu86snykyDravgkpowMQnkc67TPS3Q4mNMsPQt/B04xzl4hBYxqXUIxNd6Wu69x+Yos5DhLc98d9M0qDi2HrtMb24Q4OXz1EsSpddBVARbySmhKRTINTLAvMrk+gtUJT1S4tyPq5ZvPMeT03MfENwiREEPoYbY/wrd95G+/9m/fQN8lI2shmiHwoDZlw7ZH6q14vdSgK0ZjwyvXpq6U2HdIaOrHYb5REzshZKY0wIJPa0PdxvlxicbVEldOMwWNrv0kwD3VDcxNL7/aYctBgY0zIbfCvbKVJrlfGoT+EYkZTaRI07CWFxNMnn6Esbjq/WKca6gLhMvEsU85nHK3Z4HtRiGVWuD9rK8iu6xBFoevCmOcB/RhVXjkoNQx8BDF1UpY84XkewGByDcnLL4wj5/iitYZYCXcgatP92s9rIV3ms69lWclWojWFSsc9J5imr9qD2nBHsXi+ZeV1XbeepZh/xw99JHFE4bRCubmQ3UBsNWqlHHZT4YFPLEytIaUkKrwmiEO2dH82YcLeZxiEL9zP5uV51JGEceB0ZLYq1B1JGeIgQBj4KKsasTEcV51JOjFuM6N+z7ybHDvbY1wYok8YU6xPHQWOnWgNoUkyotxc1W403KdFb3V6nV4H9tq4Kgvrl6vyBtJiLbds4LUvqcsMTIJKoGhcwBhDFFEh2pQNrp5dUaFiqmbmc1j0mMhD1B0Mp0RA4RWDB7buhhgzhukMrYl/owPafAd9D4x7htk6Ihaq0pTqnlBX7DnrwA7a0y8QUrhP1oi2q/QD2vCYz4G6fUGLSpE/G+vcFK22Cxc1FRjMZAt6xklHDRIIITCcDGlUAlACjeehykiHq41GV5r5Yn80cKYe3gZbfXO8wDijd/Tv6Dq0Umg1ORcppdEaqFa0Etk8Q5lW6I172H9wQDaCjEFa2ZFhSAMgyZV5V+1hWuXk2cpNQQjQqANCOlN6zsk/dLQ9wtWzK+SLDL1x36ETUih4cp28c+NevgY+3SxsmroBDxJoQbKbMBkhNgzX/qiHeGDSfTjD5dNLN0JKBgl6Y+oEeeAj0B364z62b2+T2bjSEII8gZnPTRGpzfiF9rPcyH/IXD9wqTqj7ZFbl60ZucAsJ5s/q5R6oaj+u66XnCl6SGcpCZLNYNN+IC0V/ITDA3PRSsOtEVXnnXYpArnUePLlMR5/8Jhgj7KhRIYowMGDA9fK0wtU0o3vjjGcDrB9uONOfdlKiFYgGSQoTTSThW4B3KjoLJPR84gyPpudQG7MAWHgO/LkZIa8QUQBylZbV8DKbNpEANn4IgOyLmOGVp3NszVExkxsEaNfk9ak2qeHFiUkdenMbMJi4VawL2rhLLM2TQek+b0uOUTcdK2nGSQZM3POAObBhw+PexBSIjIRPAHnqNvafbeWYawMUcluIJ7nIQwDdOiQpQWOPj5yWY7c5xjvjBxrz2bXDaZD49cawrdMRUFCWxmQHEQ0wmUduufVde5QYYzBe24moEwKPdvYiD1Onqd+wBGwjUPdwKzMCH65R2kaXkBkm3GSgHke0rrCsiwQcN+xgAFgVZREijDdfMAp39LKEOxzoxSXzs1cAUC0RFtvq9YVWa2BeOB5uD67uFHIaEXPqzdM4PdjaEUkDoLb6Z4G0wGaqnEEBxsNdPHkAtuHW2TbZ8ghlGJP6Ss88Il8wRlpzarG6XOt4YJ1ppGtcIkS1vTCMmr7kwG4YSJafZt9dnYTtYxN9y4aI/14kDjY3TcwIznF0L2FUeSs9axx93BK9Hx6pz1ECf09ACiiTpG93GDSB+P0Y2QKaEsGIlN3mul2WqOtFWIWkYY3WXsKKzsWMF629t+k9SZudJ2bCy2wCJY0mYxmBGOz/NqaHLyiHsG+O4ckUbIjFjqQKUFeCukagCAK0BsmKJYhmoog4s3vWyu1LtKUhgKFJUx2J2QisqT8296474q45y3P3J5h+BPr/79Gnhij/EzoDpz7tNcoK1WhPZegekK7FucLtDX5Xe/c3sFwi8hoWmvE/Qi3Hh4g7sfYPtxGOktRpaXbrzdHC4xR9m5dF9DX1PSEcUSax16E0fYIQeijNuMZ+2dt4eT5niHw/XuyefM8D48ff4Af8h8Cml4e0Up4ZublgVzvhYG/ol6ELC1IQC8VLp9e4vrkGhePz3F5+QyirdG0Nba2DpAkA1w+u0Bd0UOs6hx1TXBVkgyxs3OI1379NUz2po4BW+W1kyzYVAIA6wBU2TjSiwZVemVaIs8X6Dq9cWedI67YB2EJPRRQ66PzaLMTpuLwPBreaq2ds4RsJY4+euLcMqSgaKDDV28hHiQoloVx0aAQ3sneBP1xnw5etfaM1VK7WVtbt5T/6FEiuDAep8ywEO3iyBeZcxZyz4sRfKmVBqvIDaIzpCNhPBL9DbKF7YRtVaXluruJAiJeVEWN+fkci/MFjj4+Mn8/fTejnZETPitFHcbW4RZuPbiFyd74BimnrSlzL4gCpznyTGfJfQ5hfEPt/dkZib1W8wV6oz46pdExKsR8swmLVsKPzRyoIy2ekAph4CMKAjRCOBeOVio8Pb/E7GyOi8fnWF2nSIYJtoytVJVXOH98TuSHQYLh1hC7d3fJzSn0N+KvyHnIpp8TrL/eMNwmptdJMl3XoShSZ24A0KFYFzUGU2IOMm5ZgAxgDIPpwDEbLbrRKaLcP/vkKVbXpMOLBwkmexMH/Sul4fscWwdEWmsrgqMs+QWgjrNcFZBSoSiWaBpy4NndvUuygXEfMLIAJaRj9xnWEzhn65g0+TUdlUcew5vMZMDMvRh1G3Z+JYzcg/sc2SKHZ7oOej/MIeCvSUDJICEzBePuZJ116qImN6pVgbZq0DYNOtgOfkz7lvFaBoB0llI0nCFmbd6DNpyC5y/PrLWoFyEwn99qCznnKNLCFPESe/f3MZwO4IcBMSzTFn5AfAFuul77PDbns5TgwsG5v/EudWCA4VvQgWw3dCUlhtsj5KvCrTlhDDssguMQFcNb0LrbPBPheXCxUZa9qcy+JESNtk4QxBRu0J8M0BsmUO/nlkwAACAASURBVFIjX2aUqpEWjlTVdR38wMdwa+i0sAOjJbWfLZtnEEKgbWvzb0koJVDkSxRlCiEadJ1GEg8x3plCKY3h1pD2neNr97yskxrMLLPrOjRt9cJz+2XXSx6KDI++/Ft0ShuzboIug9B3VYOtYgjukJidzjA/pfy5T376CS4uHmO1ukJRpLhz+3Wg6/DW976DMi0wO5shyxfY2bmDpilR5LQwwyjBcnmB5fIKk8kubr9xB+MdYvs1VXMD8qOK13fsMWt6y838bbm8RF0X2CyJtJn/dUoDnEMKSVmCzznV+z6HEGRYzAMfYUDU/3xFuqrLp5f49CefIs+XyLI5Oq0QJ0NcPj1HK2qUZWo6F47xZA9b+9vYf7CPO4YMYVlTNtW9qRp3YDiYFQa+23Cy6bTG9cUFFtcznJ999dwz80w0VudeksYcgnUrXIit7QKkgWHCyJCZTIeltcbiYoHjz57h6vga6SzFxdmRed4MXadxdgJIKSBEA844kt4IebpCNsuwe3cXox1iANpK1Q+4c57YLFY9D+7wts/i8Udf3rivtq1cV2ifoQTgMen+PPOIFGThYd11zuGkaOi7TWcpPvnxJzTXqltkywxhHOH482MEYYB8mSLNZhCiQZIM0OuNcf74HLdfO8T0YGs9HpAajGtHqhG1cAcijDOP52FNLDLfa9tWNwq0rutQZSUlbJh4H49RwUZwI0mUkgEZZFgheac1zh9f4PjRE4hPG2zv3sJoa4ioH1P4MacQ6M2wZ8/znLWf1iRrOD9/jKahAmQ43MZotI3BdEAHmDHO31xX9nnamS4Hc+zw50kbYRTQ7D2gDsciEH4YYGyCbi1bGZ45GFsy3I+OQiRDYqBSpFngkuc55xCtIOJaGLiRjjAGG6KVOD99gqrKIaVAFMZIeiMk/QEiP3IG5pV7F0nXjOcODfvfC1CcKXIAW9RRfF2URO6AE61A3I8x3Z/CYwzFkgwKpFDOdtL3udPe2YI0iEJHXIxMPJxlMXu2ezPvn5ItkITGwYYChHvDHt2TQQu0VA5ipc9KUL+91xucL0t60xtMcyXBuQ/OA/Jj7seUNdu08LdHCCIq5CkknaHMSlw9u8JHP/23aJoSUdQjU5PpDrYOtlCmJS5PSaJR5EtUdQ6lJNq2QhgmxID2Q/N5NOq6BGM+RDNwc/18WdxoBrTWgImpk62EEM1LzRVfWpJh3fmlVICJ/hGtRJhELnm7bQTyBUUwnT06Q7HM8fHHP8ZicYHl8hJBEILzAGk6w2J5gf6kj3f+4B08+/QZPn43xs6dHTTlPtr3Gudoc3ryJU5PH6Eolpj8eA/j8S5u3XoVB7fvYnqw5cgJ9kVsjI7GxqMAHMefHePDD/8ClelG7dVU5JE32h5Rhau101N5piOLoxCJ72NhhMpVVuJ6VWJ1vcJHf/URzk+fIE2vcXT0MZSiaufg4AH6/QnyfIGnTz/GgwffxnJ5iaapUH7617hz5xsI348wGu9i7/AQ9966h94oobnDKKHZnDuwOMkTwsDdl2XSVXmNxeIcjx69ByHWw+1OE2VdSkUHei1oUYM6WNVRVI7NJ7NdjK3m20a4ruRP/s8/xtnxUywWZ1gur1BVGX7jN36EyfYWeaWGPuZX12jbCkI0aNoaUklUZYo0neHRZx/C9wN87+//8Mbns1o22zl1G9WqlhoXTy7wyYc/wfHx5y+8jX/2R3+C//Cf/6eG7EEdGucMCH005sBPwhCLZQrmU8V+eXSBbJHj8skFzp6eYLW6ghAN5vNTNE2Jtqnx6qvfRQfq4rpOI4p6qKoMX355ShWvH+DgFw8QJwMMB1PcefUVTA/IXMBmXXoeCc65TyL3tqIkFwtlAsS4LssVhFjP0pSSODt+iqgfOwKB73MyNwClpvu+b0wPhq4DDJMQ3/4Hv0bvv9Z49slTfPDnH0IK+l7S6xR+6JMRQ1YhMDPufJnh4uIIy+UFoijB3t59jKc7xOw03ZKd41ltcJXXDjouM2KCrslo1L28kCRhos5g3mXAFDItQYWT3Qm2bm27+RkltpAGbXm1xMXjc7QNQalnj86we3cXngfMzxcIIpKjLK+W6A17tFl2Hc5PnqFta0ynBzg9fYTxeAf37r2F3rBvZl3UHYZJBMaZS6d30K9hPG5+B0qqF+7NmprY527DrP3Ah+YM/VEfyVtrVvj18TXKlLyGOWfYOtx2PsNW7rKWj3k4eOUAk92JQ7NOvjhx0g6ttYuMEq1Evsjo72mpsI37ZAxSpMVNqzNzb4RGsF9qg6Y3goQ3D8YwDFEUGdiMjP9tsZUMewiiAK+989qNAO2rZ1c4f3KB9HrN5UivU7R1i+n2LnYPDhAZpQL3Ocq0JMh9oxhQiorkpqDDOAgJIiVIeJ2EEYS+I/lI0ZIG9yWul54pBkGEL997hFfefgWipupMmw8bmjZZS+Wyt/qjHu68cQf9yQDLqwWOjz/DbHYCxjjiZIB7oy386R/9P/jj/7tF3RQQosXts9cRBCGOjz9Dls2p2/Ep4HM02oFoG1xfHcP3Q7z29jcdXdfavVkLKjubkkIhSiI8e0Z/Hz3kdeWgFPk39sfrdHcLTTFDOZaKqP5KKLSydY4UTz58gtX82m0oUgpcXj5F21TwjaXRZLKLi4sexuM9MOYbwbEmcTHjWC4vkGVzlGmJw9cOibjUEkM0iAIXQGx1h45+bF6CIs1RVVRhvfDEmPdc3p2BSqSCBOlGO3RriA40o6hWBaq0RDsij9LF9Qx5vjAb6CV6vSFE24D5HNu7Y+wcbqP5SYt2VpnvVCDPF7i8PMKbb/4WxqNdLFeXuHp2heGWsWRj64Bh+wyt3RPzOZZXSzx58j6ePfvUQSruvjwPH374l/iR+o8d/d4+M607BMY6LDB/V77IUSxzrK5SzE6vUaQl+v0hej0yhJhMdjG7PkUraoxGO2jaijoLIRHHfWxvH2IwmKKuCygpUDcFyirFcnmBq+tj7Ozcxt3XHsJq58I43OhijRRjg2ADU8Wm6ezGnFiIFlHUQ3pFG3SiE3RxSHB51TomNuOeO4zCJHQ/V0KC+RxvvENxWPmSCGH9EWmF436MuBc7HWkQhbh16yEODh4AIKtAZli09hnpgLsEGsYJwrdz0yJfoqp88GDPkbP0cwiL/bmS2oWHu84GQKhC1GXtuivbLZHrDcO9t+5B/NabSOcZ0usVZmcziKZFfzxwB+LBgwNM9iZOV5gvc/gXIVara/j+HPv797Gzcwdb+1sOirQHGGOem8kDMDrkDozBkU/sjArPkU/M3UFJRWxscyDa8G7GOEIjVSrSAqvLJWQrUawKKKmwTHPUZYNkmKxN3A2b0+5D453xWpaVVlicz1GmNLev64IQh6ZG3RQIgghJM8Be78CNMOwYSElFmtYodM+y0y8SotbPjH7chGyrKofPDekriFBkKaY720YiVLi1aUX3PAihpcZ4b4LR7ticGT6mt7Zwa28bV/Ol041aw/66oKLLmlL4YeAyaNF1EIPExbKFSYe2qp01n5TyBkFIaYm6LjAa7XztPX7d9dKdImMMP//rv8LBwwPEvdjQmztHumkbgTKrUKbkLTjaGeHBr9GC27mzgztv3EWxLBBEAd7/2Y8RxwNorfDk/LERc/q4vj7GaLSDui5w795bUEqi3x/D90O3iXEeYDCYoDfqrUkopqoTrbihkQpCH9enM3z1iDL5ng/TlFJgfr5wbi2MrzczSwNumhZJSA/GWiXJVmLvHgmLuUmq3zu8jZOjx7i6empmRktEYYy6ytHUBfb27mHv3r6rnPNFjo8/fheirZFlc8zndzCd7uPum3edbZ0dpFt6P1GPtduY0nSGqkyhlHxhVgrACaWBNZtUGRmDlS5YUo6UJPFYXa2QzlIE1ys8+/QY+3cOcXX1DGdnj5AkQ0gp8OlnP8HjJx9Q0cIDlFUG3w/RaYW6KdA2takqE0y2d7FKr3B2/BRVvkczMzsn6qg77PR6ttt1Ha6vj90ze/7yPIaqytzzVEoZj1GiYgdRgKpuEPR7bj5lxfDf/O1vIp1nTmIRROSIk85SNGWDIi1wfvqERN/JEOPxLt76/tuOLJNepxCtQDpfoakLtKJB21RrKArrWaIyc3dhihxLBPADn5I58uWNmaJSxCBsmoYOxm6t47WHSVs10EY6YEXtlslpr7KocPetezfWgM+4kzlppVAXDfbu7VFqQtk4izW7PoIohOcBSjHwgIpdDUKJlJCoihJX18fQWmIwGsM3BBkABorfTMmwqEBgnplnsiaZm5vbMQexKymdJu7FYD7DaDTGwb19IrqZtWMZusTYJVSjLmpjn6cwnm6Dc/pM4/EuBWgHviPF0VqgAz9fZGBGb5mYTXe9jKiY9NjXHyLWLo37xKSUhqgjpTIaPup2GPOwvFgiTEiEbuVj2XKJq/MTtG0NKQWCIILnMWgtEQQRhsNtZ+whGoGvvvzASGro908me+j1RlBKgjEyFlFSI4xNYLnRf7Z1iyAgHkRg4qhs+gtJKrob+CkhVGsHM3quHB00WpNbGgQR8lWOwXSI2nAfBpP+mmVsLs6507/ajntVEUxv56tE4lnDuvbXwiR068pKn+yvC5Ola+Vr0B06ti7MhGgQx33EcR+/6vWShyLAmI/T00d4/P5jfOM333BYrmUQ2rDVtmrQG5MAf3tngotRQqzOKMDWwRbSWYrv/97voz8hi7PlxW/DYwyXRxeoiwb79/ewtXWA/bu3qMI0Sfe2expMBw6z9hiJbZVSbs5oF5hsyfj6s/d/jixfwPdpUW5WsVK2uDi6wMPvPLzBbvVNe241enlVb5jvEvv0wbcfYnZ6jbpowHwa2E/2JsgXr6NICyznl9Ba4513/gB7t2/j8NVbBAO0AkFM8Mav938fRVpgNjtFni/WbhZmAdu5kWjaGyHOVss3m52gbornDkTaT+m78+FzIoEww0LlRsPpBR5aKSl5odOAyVSsMgrovHx6iXSW4lt/75uYnV9jMJiCeQxBEEGIBlWVIzAxQDQnq8CY2XD8AG+++QO89c47AIDT45gqTT90z9DJF4xxgEv6rlqUZYpWNAjNJnHz3jp4HluHv+oOmmkyrTeHYG+QICvJREAKcvDgPsf9N+9hfrnA5dMrw8D0nEkEQPOfV771imO6KUVmDfbdSEYJEiTYPtx2fqtWeB7YGJ1WQLRUjIgNTZj9kQccjz/53M3v7KW1QtvU2L11C4vrGfzUzvDWz5aYymuCBTPdzub8V+sOoiJos9dPsDXoY5z0cBGGLqGhbloXCl2sTKqE0d269W4YqbZr3Cw2Z7NTLJcXYB5DupghSuhw1l93cBgj6t5oTeyi/29IIDXtHb1RD74xSUgGiUsW0VKjLOh+fvCj76OsG+d3KVpJ2stWmCR6jbgfY8uke5RpiXyZO2jOdopu/QtJDlKSdHJN2SAZxI4Jbrt634wrXiDbGP6EaFowTvO/tiaDcK20mcMqY1xBrjw2hPn+t+6jqUhSc318jaePP0GjJLgfONG+EA2RTqRAGCUoy5Rmc2GMOB5gZ+cOhmNykrJIATdyLzKRN2HXbOPA8YxLj8+Av0OtwJgHMOZE/Pbi3Kci3LyX+YIKVI8x1/FKIeEpz7By6btsG4lmmWN2OjOaVeNCZeQ21riEbELJBL6tWqddZMwDC333727KmaQkqY0S9I4K0UBrhfF4F1HU++U3+dz10vCpUgJ1XeBf/Yv/Hcurf4bv/9PvY7wzJjNnY9AsTdV2y0AarZTYf+UAjF8hnaXQSmN6MHXVQ6c77NzehcfgHFCYmZPURQM/pJeOmW7MmtF6nokGMrBH1HUE+dWti7TigY+f/elf4G//9k+orfYYpBI3qhgAePcv/wXe+UfvoDfsoSnXdHcpFBYXS4L8THVr43nufOMOhlsUX3X+1RnqvEIYk1/r7t1d3ApvIV8ckLZLWh9W7aKjKHGEYOfX3nkdb4ZvIZ2lrv0nCjjNSIpVsY6y2hC3f/L+3+DZs08hZfu1BwfpNgO0TbumiFtBeSvRJR2SOELdUodfLHPqiHyO6f4Et1+/jTItUOU1vv07v4aH336Iy6dXODs+QlEsKZJqMMVksos0ncPzGDj30e8PsfcKOVvYxJI3v/NdDCZ9F2ZrXYoYZxDy5uyiTEt8/vnPqIjxvBvdlL0CP8S//D/+L/zov/xnGE4GrqsHgNXVCqJu4ZsNqSkb9IYJbr16Cz7nmO5OEPdjZIscRx8dIYiUK3js92ylMlIozE5m4AF3aRu9YQ9xL0J/1HfGFdenMyclUGJ9mGmpXMqA1mQ08fGPP8K77/6RIxHYS2uFq+tj/OCf/g5OH/VwdXyJIs3Ag31EcUhCZqPbayvy5uRB7SpwiwIoQd3f6mp1g4RQpqUTmQNwGi5l9JBadwhDDq06VxTaZ1KXNcpVCa00vvr8Q3zw4Z+D8wBbW7dwfPwZyirD/v49mq8F3o05lRSK1r6mLt6iSlawbSVJAO0Bw8kAQRw6KZGdb5Z5haWJgwvjkOQhPkNvRISSOqcoqfHOGEqRTZid9ykzK7TGEtZgJJ1ndIiFPhFYzBxYKyqysmVOzG2t3Tu7eUlB6xMdEfAiY9jdygZeY2DHvCaoO47QHw/Qn/QRxaEj0L32zmuGbPOHGPZijOIE08EAke/jJ59+jiqnGaJSymjFlfOItXNl6z27Zo8rOpA2kj7ifkxEOk52dkIqNw/UeL6o1mjq2o05AMADI2ZvU1JHa57LckZ5kKJu3diK2LeM3llrOmHYvaJpTUxg6Eh1dB407t3rjXrOZN/KYQA4nakUEtJa1jUkZ6Hu30eaXqOqcnDuYzrdu2F/+e+6XpJ9uqaWd12H997717j7jXuUt6bWIZxKajcXkEKiKmr0hj1sHWyZhIca9bx2TFXGPDS8wWA8IBsxRqSQ6+NrI2Cn6jOY+o5QY6nF0mRp8cC/IdLX5rNURY3PP/8bulk/gJDrxbdxZ8izhdFF0qZnkwnsXKjKK0S9yFkQ9Uc9523YG/awdbiN86/OkK9yVCkNwJNBYiqoLZQpHWplWjofP6sz3Dncdt6nAFAsCzTm/jqjM7RsujAOnVv//GyOp08/gTSzma7TNw/Gjnw0tbFmst0YCbw96I6MdOMoJCs3I68os4rCeA+2MNkdIwh9FKvS+Tnefv02JrtjXD27gtadqX599IzLRdSP4fvElLR61ior0Rv3kdjooI4Od247KzML6pRGEId4+vgztG2FOOqTuNz7Gio8Yzg9fYRPfvwJ3vlH75DgXHfGjJoQAzIEMLpBQ2BI05wIM2GA3qiH8e4I6XXqDhqtayRDCimuTJrAJiEoCAOXt0mJ5tRFWQ9PxpkxUhCOyWtDagkubPDxR3/pYOLN15F0jBU8zjDeHSObZ8hWSxfTxgOy4GOcu1kMr6xMhztnlM5U9vZQtzFbVV45Sz1rskAVPLE+oyRya1wJ6SpxYSztLNHh+OQLSGEyBJVEKxpcXh5hPjvFdOsAW1uH6A36G/dFEKdsBBkEwBBafG7QjM7tBXE/ckUE2JqJqU1OJWPM+HtWJtZKo8zKtUl1s2b+bsKdlq3o6w7gcHMpYG0BZ4uCpmzgh76bvdLvoTmjkjcLNG1SWmh+xyhloxUIk4iKebOWmW9IN4MYgYMFO3coKKFMNqQ0aRotRgkVXDzg6E/6Rs5A8i4bi1as1rM8xhhgoGGbylPlNZqywmh74hKONg/29Xyxey4Wa81udc9x4+dtW9NB1jZoappniiSiuDJB3wHf0GAzY9BS5RUKqy1n0nlaSy1dR0vqAQUWrufUjMGdM4zZDtQS7OhwbsoKTVsRgziIEUUJzXmDX/2oe3n41ONUEfEAq9UV3v/rn+L1X38dPOAmNoYqn/6IFkRd1ISn+4zc7Q+3kS8yXBxdOgabhTqrrHIPuMpKFGmBpN9zLulBFDqoous6KEbMtbZuEZrOELgJjTZVg9XqiobF+BrhLf0J+EGIk89PjGaKNE5+2IcN6AxCnw6rsqEKTNPsklZ3h7gXY7I/xdGHT5CvKJeuyitURQ4/DDA7vwRjPukwPQ8AUZa5mTdYazor5LaG666CV2Q+YMXyohE4PfkCi8U5fD+A9cB8nt4vWoFImRRu42rjcQZPd66SrEzyh5LaxLAQpbo/7iNMyHvy4ujSfba4H9PziEOXjmAPM/rsdlOlFIy2XpODiO1G4nKpFJg5+O09d5w6raOjjxGGa8beTQXV+qrrAh998C5uPTzA1q1t59Rh7dcAgp2tsXFTNq4YCUIfne4w3p2QkbBUqK7IaJgHHNlqASlbcOZjNN0m5mTAEQ0jc392Q+3W7kdmbtiZiCer/zIPBMznuHh6icurp4jj/td0wJ6ZDRGtf7w7RmkSVrquu8Hos5RzGdBBbJnXlEFJBxjNXzqks8oFsW5uEBbKB6jjifovuppI40JkXZ7CJERrdF+2Mu+0AhhD01Y4OfkCZZlhNFzHfWmt0JSV0yb6EbFqLdx745ka5mAy7LmCkGlrDkBM47Yiy0BLQCuWBcqM4rvsxsk39gSAChrHJ+jWkWsuzYIxqLZ1rE9b4DMzw1KCZqrPcxKUko5jQNCphcipmK+M3SUABHHgrN9cfqGmIFySNpAVW9d1OBNE3llertyM02pjrVMO97nrEq18hzNuNJnCdWVhFKFYFYh7hICRdpusMElm8svF7Vb2BRBxRbbCyYqslrBDh6rKEcaRk5PxwAfj0snjYMhTAK2RXBeusLPm8xZatzr3zrjUcOunbT678xF+DqavmwJ5vnTesNwYcXxdSPkvu17qUNysaKVs0euN8Iuf/yn+sP0vwHwy6mUsgm/E9TwgTF2YWaN1HhlMh5ifL1AXNc0CGnL9yJc5qqyizrFp3KyK+4RTa60hS+HweBiowDcJ9Jv2ZMTgpM6naUoM+hPoTruEgJs1Dz2Ed//sX2H/wT93LzC6jnxNjYicSDie8wVtKtpgyevVkBki0jcul5fQWqEsU6xW186IwA7Ghagp1sf8W03ZOKICOdkQRGqd9z3PQ1NKZ0i+uFjgydFH9Bm/posCLLlBuu+QOgTr7uLBN3FbFnaw8T42z5H71ImHSYi4H7loFt9ELAGANLM2G2tkE9ZtV1HlNTrdoTemLD4ljfOL7ZKMrZktVvzAx7NPj1DXRjZDosOvvT8ba3N5+RT/9s/fxQ//g99Hf9RzEVFt1UCANnbL0LQsQ4INfdKMrQr4Prmr+KGPtq2wvLxE29bo9ycIgthp36xQnhYwvxHge3NOrRypRnt6bcvFOZazOaQU5vOzG++itwEVRz2ySRwtyS+XJBFkEmBlAgj8tWGyKei0WM/9rLauN0xQF8zM/aWb4cQG+pWtIGTE913XRHAjeVZS1iUdUHE/xmi0g9nsBHEyQNOU6CVDMMbBGIfWCml6fYMKr5REXiwxmIzcZmbF8J4mUo09qMipKqbZ3pAccJSZgdFnXUO6dmSTLzK0DbHhuWHqMsZc6koYBYDPXcEmWoJarfcuQF1lYA4dO+uycy33c/biltl1QJFmGEwHlIZhDuS6IHMRmDEGDxJjtWYsJMWa9CYbQUVZXjl420Y8XT69IqKW0jTvNWTATWtMh+AZ0xHX7ZtuvK0b9IZ9+k6DxK0BP/B/6foCOigl3Fq1z7Hr7OyfQWtayx48NHWBdEn7o32/dMDpsxr2MoAb0p64H6PTZi8VlFLkh4QIcs4RDhIHwQahjyItjTxDOUjf9w1iU5duRh/HPQRBhDjuO/u4X/V6afhUdwrM4wiCCG1bgXFaPFZEr5R2Po3WUb1KS4edy1aQy4J5eUQjUBUllvNrxz71eYCmKbG9c9tAGAJK5q6iA+DMsAHShrmFbrwofdN2L6+W9FBBEJw1JX/h8Xd0kP2v/+N/j//2f/hf0BsmaEx8DgCUaUGbkQZ4SNlqtXmBPcKV0Wl6udu2xXJ5iarKwDxmXiSqqH0/AOc+tfZGf1OanDorbbGw0vJyCcaZmav6LtiVc44vPv1bXF09dZE41KXcrLhtjEzci8ktw+doqhYjY7nEGCNMXmvSdRY1udqb51QXHnRGWP/ha7cx3hnj7KtzFKucUi+M7kw04sbsUDQCTVOiPxy5ZG678Dat0ZRQaD1h3i06WM+/PMN7P/83KIqVYb7pG8SMm++jZxhwIR4//gU++99+iv/uf/qf0TbCRcpYEbyWlE3pGRjaOscAQJVVyOYpyqzC8moJ3w9x69YDx1C0EV42380K1+0cj2bftesEuXEosZ8xCNem0qPtEc7OvqLquotujCToe9G4c+cbBL/FEXZuk5H8L/7s5zj67BFGoyl27+85AgpACIA9aHhABaSFrDtr5Bz4iPtwHZ9oJUTDnHa1Px5ASjLZZ5xCuy2kJ1siXimpTVoFRxQl8HmAusoxmeyB+4GD77lZv5YwZr+H6+tjBEGE0WQLw8mAChWDhtiOwEK9dk345vu1RC5lfI/DZC1boKIncl6jtbGOJItG7u7fBiRzn4GD4XKR4/z0CfJsgb39+wjCPSeKB2CKH0IT2qo1UhgG9Vx3zzwPy9Ul2DHHYEw5m1ESAXGIKiPfY1u4rAwzlHHPeZvad0PUgoKoqwb5MneoWZnSHDeMQ3BmPGDNwUm+tPHNgswYzTdFDSU1Ls+foShWuHfvLcf29pgHbswGLKJiCThu/1AKRZFuIFGGhCgFlBJQSsLnAaQSFO+GDlorPPvqEbkfwcTQcY7t29s0WzfQKEBh37KVrlsP49DZSTLOnMTKruG2arG8WhmjfEmkL91hMbsidn9TIumN4MFDGCbEhHcFyb/HTpF5NwMpbTVGzK8AwmyqlgjjMWK0WQKONY22RtZEJ+dIRA9KTNxh51eh+0JsJ0ifwVQsYt1duFZeSDdstqLgPKcQUQ/ec13Hi0GhjHE0bYXZyTX8BweuC7QVDt0PNij+xh6rbh07jQc+L5nCSQAAIABJREFUwjDE3t49LBbn6LoO/T4Jb5OErLsGo7GrjIVhoQJwXTUAeMY6DLBzrLWXK+MM7Ybg2x4aXYeNTpgeWJWWGO+MoVsN30E6nTOmBoihaqv0MLYzPgWtaOEpboganoetwy1HOGprQSbOuoPuRUgXqQt5ZYwhSfpO9MyMOYAUxuh5o+q3xr0AsFhcYrW6dKSoXwab2suyVYMgwsnJF6a76NFcw3Q6wDpPjXGKPWLG/1O0AsyYUNB3oYyecB0mawiICExXbE2bwdZMZfrOJOINyM4e2vYZ8cCHlNIZLPyyg/6VN143zi9kBD6YDrB7exfnT0+xWFwiTGgebZ1QtFLQGyblYASzJUbIrqSi6r2VBElpss0jWYbxrg18DOKBy+3kgU+EIePbWWYVpgdT9Mc9lFlFIcWehyhMXPHrXjut0JkOwl6MccRxH1k2dwHHHmfoDQlBIA2tMp6o3MHbdo3ZIpcbw2jGGLRHxBc/ILiccwb8/+y9ebRt2VXe99v93qc/t333vrY6lVSNqlGVmpJQSQKVkIlFEzOMgAAG4jgM2yQjxrHAxo6xjbuAwUQM4jTEGIwhETHYAmJZBosqJJWEmlK1r17f3P70Z/dN/phrr3Puq5KiikdGbA3vMTRKdes2Z++19ppzfvOb3+c5uDUJI801G9VeUgeq93w0nzEa7TOZHGLZDo7j4jea6vOaqqdfLf1McSxo6jVTbYn5XGA7kX9c7J9CkVmyNFdVW6o/V32O1aL4honaj65uwdQto7py1smA+cpeWVHI/q3hxdlkzOHhdfI8ZTjcY2Vlk7JcPMs6aapRvFv3omVZZFkq8Li6HNdTvW9ReSriAsO0QH3PeLTPbDyX9koinrmO5+CpQFn3qeN5TFRFeq63s9YRDW13Mc5RryNAmIZkipyYJRnRLOLoaJc0jSjyDMO0KItcfDKLXFlsyTOq++dfzfWae4rCBKz1Pw0efvi9i6xYscSSMNEjE5YSAZYGuJA5bMeit9HTNFtA2x/VjtfNVH6+nh0C2Sx1M9ww0BsvrzPf+qWvKp2Bb2yd5OTJOxkMdnFs91WrRMOovflKms0uhzcP2L7rpBwoLA44gSFtDLNU+pwZ2dKgcpmXtHpCNmnN2qxubFCpEZJ6Hs7xHf27okkksIiac6o1NMtChKdrr7Oabl830suiXBysGGAsRhRuHeBPokSTBQTmLUijBNtzpFJUjeplYWdPCYI7nrMIXkumwi0lZDy4OWA6HpIkMp80nQ7U5jRpNrvqoKtE1ktVW5VhaAus+jkA+qDb27tMlqXYtiNw91eo7uXnCj1LZZqW2HXNIkoFl1ZKtKCGEUGIKqUa86n/rpjLolWNahGBLMkwDDRpom7uz4YzHciX3TlqQlOd3S6TVlxfkIf5fIRhmLiOT5Yff1kty6HZbR17No7n6L7n4c4eN65cZDM7i99Q+pG2sIolUUkJ2g3tal/vzUpZVdWQXP3u2Y6l5wXrXlG93iAC+rPRnEanQbu/qPzyPBP4rFo45tQCG0Uph+TyQWqaJr7fZDDYIcsSsmydqihpdpoCVSq0RQS75WeyNMdBZh6lL2Srs0JUpUzbxEF6rI12QwUXUW8Kp6IlatkiDu+rytr1HOIwkf072GU43KMoMg4OrpJlMa1WnyBo4ftNgqbcr2tLkCvLUiM1x88PE99rMp4cYBpCqHEDV59PteKKocQV6kSsFhoxLVXBFyVVKcmCtQQj1olLXbkDGkKvA7ROvmoFnrwgnM45OtphOh1g2w67uxeJ4znt9gqd3grkx42mb72qSuaWAQl61GQeG1dVdIYaz6ph1rIsSLOYSy89j+s/gK/mM8u81CMimpRZSnWcJRmmZSiFH0sz06uqwrVkfcPpQoIvqxWi4oTZbIhhGHQ6q/o+LMtRUnT2otdq/X8m88ZCD7AseetbP8D9jz2gZu4EQnJc6ctksfQFqqLUqjeFV2jYqdFp6kCwPPtUE06qmlCjsvYa6rJdhzzNhC6vWGaZUkevlVosNcgsfbiEx97xLXz6kx9ld+cirhe8yk0tFOddN2A03hevPzU6ID0+gZEcbwHb+M1FdWEYwoZqdJoixrxpLKmG1Ko0QgmvDXeXeyO1TFn9/+XgXpia1kFJYFiLIs+wbVcNFBdL0NViSQ1TJPfCSaiHh03LlQZ8hfYgq8oK27fJ1H2Vilyw6COUVFWuJKUypcdaaVPXKJqqlzpXLMzjHmZ1BloTcuoD17CMY4athmlw7doLepbUMIQhW5bFK7z65HMp2Mdy9JBuq9/i6MYRIDNj9UEJor1pmKb0IEqBWEf7I21dZlmm7FkFg9YkkJrtWDvB1/J3tRRYfdAaxhKTc+mq4db6kRRFroL+K8kNhiGEtLoCrq92v6USppLkWsjVS8/rVoIQHqSKqZVXLNtkpd0jKwrSPCcrCuxcnBzCKNVVnGlbeOpeW2qsJY1SSvVO1clRb6On1yRXTNWqLDAND9t2ROWkqhYqRWVxDGY0DJMgaOO6I8JwovrrOd31rgQvpVtc+/blqfg7mo36HSu1puhyNQ+Qpz5+K1AHpSTe0+HsmJhAnWSIXqgkEEdHN0iSEMuyybKEo8MbjMeH+H4TzwvY3DhH0GjrILiYAT3epjAtg6DRZjjaYzDcJcsFKg1aAaliDadJhhe4x9a0yEvNbpfDfNF3Lu1CEcHkvDQtc6kgMPQzsyxzYequ1jNXydFgsMPe3iVmsyGtVp80HTKdHNFs9Thn3I/nNfAC/9izWe4vLqYDFmSo+nmKOHdFphjIBgaeFxCGU4oi58KFz+nWztrJVQl4jqXNHEAQtyLPNdkmaMssYR38LJWwJWHCaH+kyJcijzcZDSiKDNf1cRwfy3KWCgdBJWqf3Pod/mqv19xTBKHivu2t38yjT7yVz37s07zhzfdJhqd6Ylkic0JVJQ4LBmjFlzq4LTPBaviwFkvO6yxCQZQ6ONhCG25t9rX6fFWUxHmhg4ajTF4NQ4LStWsvcurU3bzt7X+cj3/snxKGk1el9y/uUcYzLNtkdDCn1VVfN8WRvVRzVfX3OoX0ByQztbTTtesLA6uuVupDbhn7zxSGXqqstyYjeR1PMwKX4be60W47FkkSYhjmEnPzFm805OVyPYfJ4ZjOWlegMQUp1cy7IiswrcXnqtUmbMXWrKpaozJDbIzE5zKchqRpimXZeF4D23YJw7HG8j2vIWLGlqHXAyT7z9Nc9oVpUBQV9pKKRRhOaARt1ScrFpXgq8CodfAtS8UmdTyVmARMDifyrFRvDMBxHUxDGKRFUShGs6MVR+rHV1PUAY1e2I4tVaOqWgwFBS1gvuOuELeuhUCCUuVsbJxVRKxSJQCLg1L6N4be80WWC/TUkPk2kXo7ze4N2Ll2hTzNWclXFj2ZsiJ1LObjkF6jKZq26rCYRQlVhVJ9UQlZIX6GprWAFi1b0J5a47Sz1lE0fuU4ECXiOmAY2I6Lpaw86gPJsmzyW0SYDcPEcwM81yfPU5JESBG93Q2qUmbaHN+lapSqDSH6u2UuAvV2WWEYLg1/MTJiWYIiFEsjGXEoQ/jtlY6eeavfpbqSNgyDaBpydHSTLEtoNDpKCUaEqPMsYTYzmU2H9PqbNBodet0N8fDz3FccsJYlvcTmuMdgcJPB4CZlKSNNtdxbzbquL1FXMjRUaNoFhSb3SM/U9T3VD7O1YP3ib5oqQTc1olSTDYu8YHR0wM0b5zk6uqn2dI4ftJnNhgyHe9i2S6vVo9tZxw9aet8tXzXKUo/e1FfdHimKQqMBtuNi2y5FUTOZU15++bNSsdmWNgr3Gp5WBpKzJNG906Dl4/qenlnMU7E3mw5nzEdzpoMp48MRUTRlNhtRFBm93qbmUizL0QHavanIcr48t/aV12tnnxoG/9Vf+7usnVrnDz7yB4xG+8yGUzqr4lrh+i7hJGT38i5tpa7f6DYxTDEobbQDzUhcKEPITFvt72YUQowpChm69hqeCrICYcTzWEgtmfguLtOuHaW6nyuI4ujwBoPBLg8++C5+8L/5MT7+kd/i2eeevPXO5BBTUmed7pqMXhSlYOOeHIq1zuRyMK83pd8KtAlm7UNou452Jq8PyXpuzPFdOrXnl2USTSOcNUczTyeHY+llmYbAMAj8UPdbbrv9AdIskT6GaSv90uND7oZpsHXHNrsXdxjtj8TjcEUy31JVrY7qA9eHb91Tqp9hmmRUacV8HOqEo9kTyOv03WfIki0l3uwuBLlNA8cVB/c4jAU6DFzl05djWlJd1bAdZYXtWVz4wssix7R0H7btUpbFK15YWGT/Io3l8l3/+Y+INJ3nEnREhGGezrXwc02+qJVSQOBS0clduMfXRKNKWT8lpXgaglS9IktVaHr8dDAVElNYs5EXiQxIYHU9hzyXAXaAb/n2H+LmlSt85jO/w63s01o3tWZX1nqg9Z5zAxe/FXDhuee4cP6LXLnk0u9vcsf9r6OldDad4Yx4Ln6H4nQuyMvkaEISJYTjENNaHNa2YxHNIkb7I2bDmfoeOaz8hlg7FYn0wG5cucjBwTWhu7sBjusreTqHIs8oywLH9Y+tlQzse3R7G7TafY6OdgB48cVP4V4SNmuvu0Gz02bj7AZBy8eyRajAn8UELV9YhBtdNntdTMNglojjfIQc2lkiRJUsSfGavgpilrAdy1KEKWIYH4y4fOEFptMBnc6a7j+VpcDCAgU7zMOULE+1y4LjeLRafdqt/rF7sxyb3maf6UhUXaJowmCwwxc/HbO+fpp2r02r39b90jIvKQxRebFSCW41DA4S8JIk1azw+t2N57FSuFoW55YzsvZNrTVDP/PZ32E+F/3cTmcNy3bIshjbdkXBa+8yR0dyltVJ7Nmz9xxTralJbPUzqcqCiorRUMTjw2iqzp6Sfn9LeokzCVqNZocomvGJT/w6Gy+e4a3DP0bQbtDf7C/mscdz7atZ5IUksopsVWQ5o/0xWSLttDgUT8XDw+uYpiTitaqWZVlYlrTNLNNWaJW8g7VJRe37+9Vcrxk+nc9HPPz4g/zhb38Ky7KYzYYaqqwlu7yGx1jpNubtQovklkp6KM9zVdbW1YmU/JQVWZZRG2HW5rq1SCywUONYgqkW/T5LzwZVCsoZjffx/SbD4T6G+Xoe/8D7+eIzv39LJi+HQ5KE3HPPYzzw2JtF/V8N6ydhQmZl+A1fAoXqdVqFggmrajGikOe6R1XmxSssTer+gMCo0sMp1PhCTQfXRA5U1aLYhbVvY1XBie1zeF7AF77weyTxXCrF8lZFCmGnBe2GWASpZ+h6jqyZY2moLamhXkUWqoN6nhV6hqgWogZwVtpCKCgWSvuyFot+VKaMpauykhfeRon4uqoKXaqa05zr11/UVbzuIWoS0StJAPK8Uzwv4APf8YN016Ssr9VOslgSoxoutmwTF0/D8/oZ5wXYi9+ZJRmz0QzPd8kU3F0LzAN6FCdLMi0p2PBd4kr1kOrB6LLC8kR8wrQtzLKiNAzRkL2yyV0P3KOC4vKaVYoxiSZCJVFCoyPCB2UxFyJRktFodKiqkjSJGI8POLy+IhV9XqgKX5IJvxXovTgdTNV6CbFC9mdONJWKbP/KHqZlMdob4jUkoQWUC4FU5NdvvERRyEiJ4whqYplyBhRlDfOXmiQDkqCtnVonvyxEo3a7TxhOcV2fPM8Yjw9ErGHawnIs2so3sigEyajHrUzTwFYIQV7ITGKey3hFNIuYjWdQVTLGpHJuYXDH2i9ysDtkZ+cCpmkpCC7QZ4ZpWkodSjFCswTLcqAqiSIR3p/Nhsf3opIJ9AKfVtnV9z4a7VGVBZNJm7V4myxJWT+zoS3ZLNsiM3M9LuApJANkLjcl0/uzXlfDc7BdS8Ot9YhNNMvUmFFBEsWMxwfyO70GVVViWbX8Xj0XaFEUOaWa/8yyRCljLbnsVCWz2Yg0jWTWsMyVrVNMmsUKIXJoNKRgyfJUIzt1a8M0TK5ff5FnPt/j7Nl7GOwMaHabBO1A3s8lzki9/4tMGUpEMUkSEkVT4niug7zrmIr9KgiE63ZVj9vAUPvx3+Uybj1svuI3G8YBcOXf+a/++3GdrapqHb7m7gvUvX2t3hd8za3Z1+p9wX/ci/+hXV+r9wVL9/aVrtcUFAEMwzgN/GPgBFAC/2NVVT/z/+oj/nt0fa3eF3zt3tt/vK//sK6v1fsCMAzDB/4t4CEI3P9eVdVf/f/3U/27X1+r9/WVrtcUFE3TqmQOTuj/hmGSZTFbZ87QbrexTFO7uFdVJQBYPU6hvl4XysIsrF7x7yC0A/251M9U6mvLP1MtfW/93+vfUzM1C9WHrJv2NbQ1OjpgPpsaAJZlV57XwPN9gqZocx7u77B1+jSNRkM5uCs68jHygIG1RGk2lj+v+vyv9nSXv3/Z2XH5e+tnsTyyUH+tKEuKWnZJsXQzRSDI0pzD/RuHVVWtW5ZdObaL4wY4nk2j1cKwDPauX2P79GmCIND3s3xvxtJaLRN9lu+7fub6a0v/7dXudXmN9P2p9Vz+/ZX6X5plC8atWr/d61cO60zPsuyqdgAPGgK5DY/22D5zBt8XAWhTDRxbt97Xreu4/HnVv9f3tsxeXL5u7XAuP4t67+l9qO630PC2CDHXhrWDg33m04kB0Gy3q25vBUzwGw2MquLapUucPnsW3/cX75f6DMvrZLzKPS2/F7eu4Ze7v2ppTeqfX163+r6KstT3XSgWeVkuTLrzPGM2Gx5WVbXebLWrTm8FzAo/CKCquHHlCqfOnMFX+9C45XPUvXvTuPVp3/Ls671YVYtZ5HrNefV3cPl9qvdivvyOFQJBU1XEYSLKS0lGFM0xDIiimd6LpmlVvi9iEUGjidfwONrfZePECZqtlt5vx96vW+7x1vv5cuujWaCvcm+3jlbcuu71nizKkjQXizVDrV0SCpEniqYkSaT2YqfaPLmNZRg4tk1ZVVy5eJGt7W2arZZeM255n0DW7NZzWX9+9f2vFnuW17GOIbd+V/21eh+W6jzM1cgMiFb1fDqRlpDjEUVT0jTWa/aVrtfUUzTV/BlVJXRev8nu7iW+84f+LB/45j9OJwhwbVsHozTLcJV/V+C6+oV2LAvLNMmLAle5vgOEaYqlNkm9cIDqVSiLkjjGMk0cyyJTP58Vi1nCwHEI05S8KJjFMZM4YhoKWzKchKqZCx/+yR/X9+W6Pg+88V28+T3vZmVrBS/w+JVf+Gm+4we/n2983/v033Msi6bn6Y3mWBa+62KrwGipWUBYbN5SvWwArmVJQKuqYwe1uZQQgGyiOMv019IlgeA4S8mLkuF8TlYUjMczhntDhrsDTNti//IeP//Tf+kKCEnlxNbtvPH+d3H69WdZ3Vrh1OtO8b/+93+bb/uu7+Kd734XTc/DNmU9XNvGVC+A7yz6G7Zp6s+alyWWYVBUFUmWYS8x6ur1BfT9FUsBAiBSPmyxsi+aJwl5WTJPpJdR/87Le/vsXdrVgX58OOZvf+jPaCjHsmw2Ns6wvn6a19/zZrbv2uajv/GLfPDP/ADvePxxHMum6Xl4to2rvOM828a2LP1PWw1d6/u0LL3n6jWpqoq0KHTyU+/VWw+B5XXO8pyiLJnEMUmW6f05iUQoPsoyDkZjpoMps+GMf/jXP6R/T7e3yp/78Z9k/fS66M62mvz9H/kRvvv7v593vOtxbNMSm6+ywnccXNvSX6u1fZc/W/3cs6KgKEtc2yIrSmHh3jqErn6+rEoylTyWZUms7sE0DOIsYzCf6bWbxQlhmjAbzdm/uq9nyJ596kscHFzjqad+4wpAd2WNP/uX/yYrJ1bEAaHd4Gd/7Ef5nh/4Ad757ndhqzk433HwHCFFWKYIOATugiRhGqa+v3TJIzTNcz3XurwfbfXOLV9ZkVNWEKep9O7ygrwoGMznZEVOmKRMwkgbpV974SpJmLBzcZcvfv7fAvD883+o96LjeJw9ey/d7hqPvPNx7nrkDn7mxz/En//Lf5nH3vY2LNOkEwTYlolnO/iOQ14Wet3KSutAqDWT80+KDMiKEscy9derqiKv752KslrM+dbBvn4v6+/Li4Ikz4nSlEkUce3wSAt1h5OQnQs7fOZff5Knn/6X+nOsbZ7gw7/2aziWRcPzKLOMH/gTf4K/8ff/Po8++qg+uz3HwTIMKipsU0Tpm55PmueEqZLZU/suU++X77pEaYJpmFimqe+r3n+mYRKpeLC8fvVzq9+3vCiYRhGTOGJvPGHv8h4AOxdu8ju//utE0Yw3vOFtPP/8H3L+/Ge+Kij4NbJPKyVPVeEBs9mAPE94/UMPUlUVUZbpKiZRB3m9IPXBUAdEzxHTU8cWGSDLNImyTAfSNMsYR5H+feFcFPFr4ketQbpsOOkFHidX+npzTGNhpwmpoNREiSIvj5FSZCMJ+7DVbbJ/c4frly/x4MMP64xGhpTl0LRMkzjL8B1HDgsVNBoqQBqGgWvbInhtGDoYpkWBbZq4pnnssApcF8c0ieuAUfuBFfKyllVFkmckWYaBcWxDLKuuJGFC0Gks3VdBnqfkhcx1eg2Pw71dLr74Im965BE828GznWMZuWPb2KZsVGu56lf3VGXS0LYNA8t1ycuSJMvwHOcVVRmAXRNi1KYPXJcsz3EV026WxHrTz5MEyzTYHY2ItMahzGnVRKblvViWJXEcYtkms8mInWtXeONDD2OpF62W9yvKEt9xiLMMU+3Dsqoo1QyT7zjadLVO6BquK0SOqlraA4vA56tkz1R7oQ6EdcKTqZe1fhb1wQAWRaUk4ixLmHi3ZPcijh/iuDY3rl7l/Asv8OCbHsZTtHnHsnEsdEDUPnkqKVs+ICVbXyI0qWBnmQYGhv5vRVnhKFFzg0WiZpqmHpmRw9bEsWwSdbg5yqRXRAFKLc4BaPcWEOENX4lCuIHL7vXreh8uf/Y6AS2rEtu09OHuWIv5tvrdMQ1IaxcPRSqSAxV8ZyGhVh+srm3p77dNE1s5K5Qqr3NtiyhNMQ0Dz3VI1DrUqi+iixuTJNEte7FkMNjh7rvfzEd+9ecY/tw+3/jt3869Dz6IZZoErru0bhZxlmFbpn7PTdMkK8X4N8vzY9VjmEhgKJcCR1VV+twpy5JMJW218W9dxdfIXT2Ss3xZtqnHxsqiZPXkKoPBzrF7c1ybwHFwLYvv/cAHuH7lCt/6nd/J/Q8+SF6WuGrdAC2wkZcFWVEyCkN1dqlEscg1ea6iIk5TirLCMI8H+FyT4CS453lGWUGUJqKvmue4toVjLYQp6su1be2HuX3nSe6882H+xb/4MNtbd9Bsdvhqr9c4p2hqB+MsT5hOByLn1WgwiSP8osCzbfKyYGcwIpyGeL5LoXQma1amF3i0AoG47CWlhDoAtKqScRgxHE7EsibLicOYg2sHhGMRfK1Fi72mT6PdUIvsMV2dagp+ol5Uy5EXt8hyDBOKtDj2MKuqxLZFaiich/yTn/9pvuPP/BDNliha5EWBbZlkKribhqEPhWVFiHoW0TAMbNOUjWNZEvRsG0P9fB086nvWQVAdrMuVU5rncvCUlf599VVU5WKY17HE8uoW4dsFE9cgyzJ+8ad+kh/+0R+l1W4vApf6rKUKNDnSQCiqCgsJaJ692CpZUeiKyViCVsqiwHIWWb1tWXrDW4ZBXkNTx6oX+Zu2adJwXeZJsjj0lMFtoQQgju9FQwX9jLzI+ef/7B/xge/8Pjqd9uLnTZM0L0gpjmWbZVniWBaubVOo+zazDEehHMsHSJ182CqALg9u1+tlGAbzRIaZc/W786XvqyvtUiEAlrFg6lq2dWxg2rQsLWkWhRE/9aM/qterKEsdJKRaECHmoiwpS1M8DJeqhPo5KUzqVeEqU6nSWEo1yVHJ3PI91hWK3ItFVuRkeU5VyRqail1uqvEjyzbJ8/TYsxK2pAyZh7M5P/vjf4U/96EPEah3rP79ubFIoEDOA8uUKmn5WdafpbRUIqGqyvq5S8UswR5U0DVMbKuuFBcM5Ppz5kVJkmcUZcU8FAWVWkatZljneYqW3FnaT7btsHFmk7/6A79As+Xyd//iX+TqhZfp3ne/DiD158iWErMwTfV61UmVV5+F5kLmcLniK1SCVqqkuaIiW1KcskyDvJBE30Cq5Vkc6/euTnwsW9Sx6lGrRqN9bKSrrrQd2+ZXP/pRkvmcP/eDP8iFF1/k7nvuIS8KchWs6wRDs3aLnCjNXlG918kOgOfYxFmG59jkKlmLskyvZ5ikuhJOFYKUq3vOyxjfcUjynDBJSPN8gfJYcl+3vfE2in+ec3h041X3/pe7XuNIxuKhilCsS7e7rmefvMCj22wwCSMuffESWZpp13PXd/S8VbPbJFlpa81LyzYlC0gks0zznHAeMT2aylBunBJNQw5vHDEfzclzZdWSZ3T6HfxWIPTxdoNQZdhVVenxDdt1FsPHZX0QLd+XIaocnsX/9rN/j4cf+zoeettjehFM05SgVC3cMmpsXiBfgzQvSBxHQ3U1xGFbFl2VBZaqgq5UBg5y6KShBPo4TUnynEzRmfOi1MGnDsKFuQhkOvNSm7Ee/l++yrLQ80//9Bd+hsfe+wTvet/79MsWpqne1LXyiWNZOmjXL4a5VN0uV4/cstlquDRwF5XdcoBYroJrSK+uwOpKxDQMbd1T22kt0/vrq6bU/8G//Qj3PPhm3vjoW+TZ1BWA+p2Jqu4T9bfrbNNMBTKu/35d5bZ8XycK8yQhV9V8XRXX9xOnqSjFqEoqzSVjXxxKUh0uQ0C+I8obnq2G028ZDzEMtEbnz/21H+dd738/X//+byQvlOSdOnDKCuwlWNpULQbbsnDVYVhD4vVhUR++sncrLBMsw6SqDD3nqtexhoLrw7gsKCtpAcRptti/SmWnptZb9sIqa5neD4LYmLbBh3/iJ3j7e5/gne99L1meSyBWh7GpEJO64vYckfsrFJrjO65GmyzTJC96hDNRAAAgAElEQVQLJnGyVF0uw6emlmmERUAyDflnXhbkhbRppEpRCZySJSvzUo95VWqGOk1jXnmJhdLWbSdo9pp0mg3e+MgjPP0Hf8CbHnxIEgjH0WjRMjKT5BlZkVOU1SJ5WuILAMcqylK1lQyFRhQqaVtO3ur9NI1jQa8si8OpzFA6lsU0jnFtm3kUa8F0gNXVk8f70gbH2kHNTodH3vpWPvF7v8e9992HZZrsTcakeaGTZs9xSLJMw9JlWdLyfWlBKIi1rvLSpb1VqOReUMUcx7KZxDGZendryD5OJTjGmaihibiLqEVlak66dsbZPLvJ+voZwnAiYzVf5fUae4oWntdgNDrAdcWWo9/f5ODagZprsxkoweCrL1wlTzJxnHbEi8xv+gSdgFa3xfrpdVr9haK8YRh6+DucR9pGZTacMRuJK8N8NBeYdj4jzzNcx2d4eIQ/a+J4DmErVN5vC58tGbZPdPZdliWe776CKZHnGb/1q7/I2uYWX/fEN4nlVJ6xP5Fh68B1mUYRa+02ozBkFka0mw0KVUVVVNJvxKDt+3oD+65DquDCXL2IAlVZenMfzaa0PJ9LBwdkWa4cqcUhIM9yFezQVk/NbpPJ4YTarqlUEnFlWWpha7nkGfiNJv/Xb/4KmydP8se/+7uA+jCUjZjkuYZ0DGRj1j1SQPd/zSU4xvc8XSndWj2ZpinBXlXVaZ7rQJJkma6k4mzRQ84V3JMXCn6t+30K0qshufoy1Off273EbXfdx0OPPi7KH2lGTIbvOvqQyIpcV3JJnuFYNvNE9kI7CBS6UWrYOFfVOkgPu1B9tbotkGQZSZ5zNJuRqQTOtC185XpQKsiyfvlNw2Cz22VnNJI9aVuEcaKVgpbziqqSJOeXP/yznLztHN/83d8tPaMlCL9U35Opw9A0pA9Vw2hJbuFadb+qIkpT1efxFMQlAdtSULxAzBUFhYbs615QXhYkWU5eSjBJsoU+qmHIIRvJhxaUxDSp8px2t0d8ITy2ZkVe8ss//1Nsnz3LB9Q+rN9JVIAzCoNMJZw1xF5DhXlR4NkpDc/Vs4rzJGGeJGx0OliYGmkJ1PttmQZJlpOoSiIvS8ZhKMmn2velgsiHYaj7k6atApBy/xENX0s7zh+/xAOzudrA91zKLOPzn/oU/9mf/tPAolc9iSIc28azbYE71edZJjK5tk2YpjhKotAyDZXAyA1Faab5FJZp6n7aLE6YhuKZmcYiXlB7Tpq2SZkrZxFViNRrWOuSFnnB2qk1zFussQZHR/iuS7/fJ41jnn7ySb7/h36IKE0ZFwV74zGRSg5BKtk4lMQhU/6Sqytdmp4niWUt8G5ZdAKfNJd3dBkKL8uSSREzmM0YTmfKHWNEPIuUY9LCM7WOO7XVFCzsvoJ2wNaJ2zk4vK7l6L6a6zXDp1VVEYZjHMcnjkPCcMInP/ZxVronSWKRd/MaHs1OAwyD7oYMQ08HU6JZRBonDHeGjA5GnLzrJKvbq9iuzUqnzanVFWy1YEfTKZefuUQ4mTM9mlAUJc1eU2S82oFoNjY8tm7bUlJilvL/kyAShzFplCqhZ5GmKpSlyrK7OAhp4/LlZ7h582VOnDrDP/jxv0hZlbz7/d/KbXfeq5V2Wv2Wvpf5eK43nEhviWjB9p0nxaC316S90qbdbNAJfBzL1odzfTjNkpgwSbny/FUZ5o8SxgcTRgcjhntD8S60Rcy4s9Km2Wtpu6nxwZiiKLTLRJ7mbN+5zXQw1fdVJzHjyT5f+twn2Tpzlh/93u/FMAy+/4d/mDd/3dfR8n1d1RYKFvJsR0OpTc/TsGJdtXqOwzSKsEyTkapya/JDHfRt9d/GYairLMs0dF+srkT6zYb2qJtGkQQTWzQ6a03cLElf4YdWC5yH0ZSb1y7wS7/wd7Bsi/d+87dzz4OPYFom7ZU2XsPj4hcuaum2NBIT5fZKG78V0F3rcuL0Bq5t4dmOvse275PkOU3P08F1Vx0Ak8mM6UD8+yZHEwY3BxRFwfhgLISehieHwfYqbuDS7rW4ZJkMdgaEk1AZ0aYEbVHWMc3j2fnLz36JT378Y5y+/Q7+6w9+ENM0+VN//s/z1sffSZxm9FstTAMOJlNdycdZpqtzgUJhrd3GsSzCJCFwXeZeookQIIHUVofzNI4xDYNpHBNnGXtDsVybHIxxPFcrp9QoR1WJSXWz1yKchjqprYXFHd8hu6WqOv+lZ/jUv/nXnLrtdv7S93wPpmnyLd/7p3jkXe/URgBr633iLBOty1kkghZZoXvKjU6DRitgu98/BhPXpL0kl7770XSKrw7hUTiXdsx8TtPzuH5NyBg3zt8Q0fuy1FZoru/iuDahsnyqfUFr0QrLtI8lgfXVbPb4H37ir8gaVhVf98QTvPXxxxnMZ/iOy6U9cX4ZH45Jo5T5eEZZVIwORhRZTtBu0Ow22L7zpFbOWm93pE+2RICrk4AoTZnMQ2bDGXtX9ji4dsBof8RkIAPuRZHh+016G12CdkMn2r2NHmVRsnZylf6JlQUrtCg59bpTuN5xJaLDvT3+1oc+pD1Q3/3+97N93308c+0ak9GM3Us7pFGqlZpqCbc8E9F8gGavydbtJwQlVALwru9ybmsTWCAYz1+8qpP7NEo5uHagYkaqBTRqlSy/4dPsNkmjBDfwmA2nohTmObT7LVZPrtE/0ecbvu1b+bX/+cPH+tv/T9drJNpI/2Rz8xyO45NlMdvbd3Hy1F3YjsWK5+IGLisn+qxur+H4jlanufD5C1pVpSpLslg2fnuljWmaeI7DZreLa1saXzZMUaIwTAPXESHuHCWFFbj0N/ucufcM7WYDyxSj3zAR/cPpcMbkcCwvsimKM5ES7q4p7fUlbhEZf+Pnf0mLSJdlKZlJkklfU2VgfsMTxwDlSZiEidYCBdi7skc4DWl2GhKE2wmdM1uyqS2blmfQbzaZJwnpvBBtv8FUw72iR5rTUYoxXuApL0Vb9UYLLVfWXe+SZznhJGR6NBUh5yXJO1F7CFjpb/Fjf+8f0Vvv0l3vyiGXF+weDmi3m8yjmMPrh1o/sbPa0cHXdWxW2y18x8W1hPhQw5FFWepK0DQMoiwjVj0B2zK5unNAOA2Zj+ZaXm25Z2cpvc2V9T6ubTEcLQL6MrRYe+HdenU6a8xmI77+vd/DmTecEc871+bai9eERBAmmJYkEOFkLtq1pfze3Ut7eA2PjTMbRNOQ9kqHoOXTbDXwbGGullXFPBFoLsklQMeZeP1NlRRaNAkpCgngtfdf7QkXzSKiaUg4DvGbHmmU0lBEKNMUH8pkHh+X1jJNTp27k5/65Y+wdmqNViNgHsWUZcmla7tyYGwIXPXSc5e0K8JybzloBUJCMxYJTlGVup9dr1tdjcRZxjSKSItiEQwPJ4STkNG+VLf1e1iTnoJ2Qyv6jA/GmgoftAJtcnvMAcSAc3e9nr/3i79Gq9+m0W0QjkPCacjlL11WaICtPUoHu0PCiRhzJ7XrvG3jN31O3nWSJEoIGj6+69DyfEwD8nDB+PZsW7cqJlHM4WQqLG3bYnI0IZpF7F3Z096SmizXbdBoy7t7cDDWAuP1+16U+TGfSNR5tHXiNv7Lv/MX6LVbOrH6/BdeIktE1jGJEm3/duLcCQBmar+XZcV8PCeahoKs2aJO1Vnt0N3o0ew0hTyT5cwnIcPdAeE0YufCTcJJhOM7yrXFxPM8TGWvFbQCWv22yAz6rtZsjqYhzz21h98KuP2Nt9Fd71HkBUFrYUsl5z2cu+sufuk3f5OiqojShGu7B7z0xQv0lUC87TqYlkUSS2BMwoR4FmlfzDzPONo95OoLV8jzlCIXr9XJdMDb3/s+Vk70tURmfQaGkzmGaXL+cy/QaLWV+L6C65VhfTyL5BmtdwlagVgVmgaj/RG7l/e49PwFeiurbN+1TRhOX9FW+krXaw6KWZooseacIGhrV4buehev4dNZ69Bd63JqW7LvoqyYxXLoistEmyzJtMZimRf4nstKs0m3oVTSi4KOLxlLLRlWVZVAGaaB2/Rp91v01rucXFt9xecU5qFUh6P9sbZuqg960zKP9RSrqsJRbLUayjAMMQH1Gp4I+1omju9y+vZtAtfFUsSQwXzGeBYyOZoQz2N2LuwI83UwxXJs1hRJxrNtnCUKs+84DOYzDmcSUC1LhINb/RZrp9bornXprHVotAN8xyVW5X+tC3h4/RA3cMVE9Oo+g52BFoWuL8Mw8P0m4WxOWZQMdoeMDyWjMy2T9VNrzMZzxgdjDm8cigODgos6qx3aK21avRbz1YiN1R6+62hmosDCcjiPo4im5zEK58ziRHsZjg/GDHYGTI4mlIU4ApRlhd/wsByboBXQ7DW1o0ESirlqEiXiAamgljp7P34ZtFp9TNMinE2xbYu4LImmknjNqplOnpq9pg7IeZZr2nY4DdUYQUpvM2TlRJ88L+j22jK6ofojdV9uniQ6UEfTkLKscHyXriMG0CtbqzS7DbxADqbaPLV2gpmPZ/gNEb6eDiaMD4RIdmtP0VJOB6O9IcNqSBolZGmuXR/mI9Ek3b+yRzyPKYvaJaOGnGX98kw8F9uNQIK8Qv2W+zZ1lj6NY/KyZLAj/qPz8Zzh7pD5RPZH7WvquDadtY4Y8LoOaQyz8VwdViL23uq3FCx8fC6yZn/vX90/lgSmcUqr18QLPOajGcO9EXmeE45DXZ2WZSn2UYpwFU5DnRjHnSYbRkf3huMsxXdc3ReOs5TpYMpof0hVohLRCaP9EUkUUxQZQbOF54s+7/hgTKvX1HJ+SZhI1ZgXFEVOnh93QTEMg15fAp0Qr+Dyy9d56bMvsba9Ku/zepc0Srny3BWFVmTMxjMGN+W9leRPRPgPD3e4fv1FXve6R3jL+x9jdXtVW0iBJE6D3QFXzr/M5vYpbbaexDGW7TAfH2EYJpR9VrdXafdbbN+xLU45llRyZVEx2B3w5G9+gv76Gve/834tjl9fy0SgSRRx/sUrXP7SZQmka10ZyfBd5uO5eHPOIuajOfE8IYpmuK4EMy/waXYa+O0AW1liHd084u5HX8fDD7we33EYhXMuXt3h4NoBSZQwuHnEbDbm9N3nKLKCwc0jObdUQdBoN7Ask85qR4T+LVMnTM899Rx/+Huf5sTp97J7UazKXgl5f/nrtVtHgRqmls0RhhMFWxYECuOtqopROMc2ZRQhSYSJZimngaoSX7NaJd1zZC6uHl2gngWzTH1AUBSauW7bYqDqNQSnruGEWRRrEetMWTOVpdDFa8+22kvv1qvf39JVYlVVWkzZ8Tya3aY4BbgOG52ODoo19FSUQqM3DYO17VUGu0MObxwyH81pdhoaT/ddl4aiZ5eOQ9PzhBjkOQvHbpXN+Q2PoBWw0mzR8n19OJdVxTgMydKcaBpiWib9zT6jg5ES+F4OisIWns9HEhDSXMMRVSGVcK3Af3TziHAaiq1SnrN/dZ9Gu8HK1grtfovi3nP4TZ9OM8BT1k7TOKbpyedNsow4zUgjyfKTUNTvR/sjbeUTTUOVWYpFk98KZB7Pd4lnEZly4Y6mEWmUkkQJ7ZU2a9urOjla7MGCcD7GdQX+dQMPX/Wh2yttmYXryOdf217FCzyZybQs9g4HDPdG+p7jecxob6j2nFRarm1hGovxANf2cW2L6SQjmoS4vqd7GbVebHulTa/VZKPToel5ulcXZymTKObazr5yujd0Rl4UxS3tbQPbtZmP5sxGMz3IPBvNME2BhPMsJ5nHRLOYTAlFG6ZBEqW6KkiTDNt1aHYaZCfXCJseq1Wbhutq5mpVSYU/UaMjcZYyG071OqRxIomW52Ao1njQaWDbluoXSZCufRanwxnjwzGNdiD+d0uVYlWhxdaLLNfi9p21jlSME6kuWv0W3fUuftPTCWA4jZiPZqqKMmWfupKI1CSy1XZLkYsEordMGSGazWdMw5j5ZM5sNKfMC3luSUpjSaC60W7gNyVZq+3napH4/av7RLNYWxzd6lkKYhxuWRZRkvK5f/05ZsMpj//Jx7X/Yu056wYuB9cPKAs5l8LZXDtL+EaT7lqHrTu2eds3Ps4Ln3qB5556jh/5m/8FLd+nKEt2xyP+6Onn2L24y+nb72D7zm2uPHeFMJzgOj5PfN8TXPzCRaaDqUaYgnZDtGNzm1Q5pfhNj3a/xXs++F4+9su/y5O/8Qne/cGvP1YpghDxJlHE3tV9XvrMS7RX2qxsrRKHMTEyJH/5S5f51g8+wWf+6Hkmh5+nf6KPuS9GBlt3bIneriV9zTSXltbD3/AwT/7GU9xx1xm6q6ustTvstsdqr1RceuklTt9+B+/9jvcQuC7/7Od+g8nRhK2zm1x94Qr/6X/7QQ4Ohrz46RdJi0SsC2eRwM6n19ndvcilF5/n3X/i/fzW//lKD8yvdL3mOcVcLaBZFVqM2TDEjDSahnqxXc/B67ToNhrM7BhXuZZXZaUMWG1AbKbqy7FtyIVpmJeiQGPaJn7TE8WMOMNQG6vRbkiPTdHqTcXG2rm0QzKPSVQ2Bix6BUop3fKsY0SboshZXd3WfmVS1QjJJYkSGIjor9/02bdtbMuk6Xl0/IC9yZjxwYRcZWttVelZtsmNl28yOhjTCXw1vGvpvk+W5+RqVEVgjhaWbTIfh5RlKXCAgQrAQoaZJTGzOCHPJCDORnOtMN/utTDt4z6GpfJZrKpK97nmu3Ns2yYME/K8IOg0cAOX7nqXTHkvDneH4pKgekXRNCJoN+iudynLkn5bnvtKq0WW53QDcXDYm4y1iW0cxmRppns27dW2FgKuq4ZaqLkqK3UAFvQ2erieQ1VBOAk5vH7IxpkNstnx/lRZlaRZQrvVx7YccWC3hUTQ3+zRP7EiZs/9Ns1WA9e2hLpe5LTaTfyGz+a5TZIw4fqL1xnuD5kNZ9IL31qhKCsCXxK1miXn2Q5plJDEKUHLx2t4etZrrshgA2vAaGuFlXbrWGVdVZU4qGQ5ZSFQYaPTvJXdr8d6LEcy4tolJk9zijwnTwUN6G70WD+zoQ+xLMk4unnE5GiifTyjmRAvvKagLpkf4DUa2JaFr0Znmp5HnAmhLJxIZZZn4uXnrnVp9dt4gSeBo9MgaAcLKD8rSKOUcBqKWlSuYNdpRBRNjwWPasmJvtUX5nkapXgNj/6GuE5YjqXh5WgaEYcxVSEwomlva7/EcCKVcpGXROogLMqKlu9phqOBQcNzKauKWZwwOZro8yBo+TQ6Ab3NPrZjq2Af6D5VLT4etALtc7pzaYcwnEjrJzvOqjUMJQjuOnzmY5/l8rOXeeL7nlCVcLKYLUwyOsql5ru+64/R9Dx+7C/8A+ZjcYCI4zmnVk9x88JNttji0fc/yq9/+H/Rf8e1bbqB9AeHwz3O3nuW0cFIQ4/T2VCvU80tqN8z13fZu7KnSIaSeOVZgVXBO775nXzsn/22GDUv97eBJM0Y7Bzx7JPPErR8tm7fYjacEisXoaIQp6J2EIhTTl5AXtDb7LNyos+f/O4/xlOfeYZP//bT4pxTVYwPxqydXCOJEg5GY9502zmZUbZMjSJevPh5PC/gd//Jx9g8u8FsOGU6HTA6aBKGE5797Iu88/E38fRvP02r3yIdzTBti6DdwHZsTmzehh+0GO0Nec97vpvf+e1/xFd7vcZK0cCy7IWPXVEQxzPaKzIYeXRzQDSL2Lp9iyLLuaKarYPdAWVe4AbiD5aECXc8eAcbZzfFOsS0dEO5KEusUpQPLMfm1F0naXZbjA5GnP/seSzbYrQ/Yj6a8fmPf45P+B7NXpNGu4HjORRFodzCZ2RxJgP5/ZaeXcwz8Qq8VQ7p3F13E6hNEU1Cijwn8AKiWcTV566QRDIQ6r75brqthoaeZqM5jW6Dg2sHzEdzRvtDeht9ept9irzUzeZ2EAhFXlXDUZpy5doOZSE9vN3Lu0wOxvgt2Vxr26u0PJ/tfp/D6UQUbaKYoxtHHN44FEudprzERZ7jKtaptczSVLNMju3SWe0wHUxpdpqcOLdJEqccXN1n//IeeV4InD0Z0+2v0FnrsHFmHcMSU9dmt8nlZy8zPhxz9p6z9NstAtdls9s91iM8v7PLcE8IEs1Ok3P3niMJE4Z7Q6JZJJDRcKbZYa7nsHFmQ8O1gO7xjA+FSBTPY2UgfeuoicyGhWGE7bh017r01nvsXdmTfsQfnWc+mrN5dpMH3v0Abb9Dy/eZJwnj2YjR3pDRvmSm66fX6Z/os3Nxhxsv36Sz2mHjDW/ANk0cxRTUCjyTUPc3xqpnbdpinrp52wlWO21dtYyjiL3hUDszRLOIZrepCUCrrRUa7YZmRgPahBrksG0rhvbJO7fJs4Lh7kD65UdCyLJtG8d38Bs+3fUutmPT3+yxfmqdyWDCwfVDDpTSTND0uXt7G9NAV/ggzN8bh0dcf+k6Wwpmm4/Fv852bEb7I45uHupZ3/UzGxrK7ax2aLQbZEnK5tkNsTdyxbS32ewu7ssSIpnre2RphmFIciswZcpgZ8Bg5wjTsji8ccjoYEij1aQsSx58z4P4tsVof4hpWTz0nocIZ5EmYowPxrTuvYu1lvTzakhYWJ+yt03TZPvObQDCcYhhIv58B2NmQ6lk2v0Wvc0+SZhgOzbrp9dJwkQljCmjwT5RLLDg8mWaFi8//wzPffpOXnz6JdZOrtHsNLny3BUMQ3xdZ8MZo4MRG2c26G/2ePILz1LkJeun1jAtk/GlA07ddjsXvvgSluWwc+Em/RN97rjzAX71lz4qBssNn/l4zhef/CztVp/eRo/R/ohmt8HeTkyns8rH/vHH2Lr9BL2NLkc3B7R6TbJYjMFHezI73lM9xEY70Gfi/W95E5/+6KdIwkWREoUxeZ7zzCe+xMrWCg++6wGieSxFUJxy88Iu3bUub/+2t/PMlatUVcWZN5whnsfidVnBf/fDP8Xh4XXW108TKbNzx3O1r+U//dv/hE/e+0lxxpiE7Fy7wv7+VVZXT5IkEV/41CdpPNPGdQNc12flRJ/Td5/m8pcus3d5l607trj6/FUObxzQWenS6jbxmx5vfOid5GnG+GDMe77z62l2mvzKL/3klw9tS9drCoq27bC6uo1hyCDsbD4ijufKMbvUg8h7V/a4+vxVonnIwf4V4mTO6dP3sHF6k6DdYGVrlRO3b3Hu3LYaBbAWOoSK9h5lKiNe79JZ7dBZ6wh+7DnMx3OpGq2bPP37vwfA6uo2nteg3e/gKcYpKAPjSsxxi1yycNs5PjBtWcJkLYuCbr+rB+AN5XbdXe/y0tMvcemZS1z4/AXieUwcz7Esi9vvv4t73naPVD9FQVHAYGfAG++9k1Nrq5y/eI2irETFRcF39cC3sOqkCrAV/OY1PMaHE/7hh/4WzWaH2++6nzsevENMOtXcT50x1yMtWWKShIlifi2JEgDzcMymdZv2D8wSIYrsXNphtDdiNp5y72P34XgO2csZo8ERftNnfDihf6KvDjKH1a1VIayM5zQ8VyTUHOfYXJj0fVOdrY72R0wHU0U8alKVJU/+q99lY+MsOzsv4zg+73jfE3hNn92LO6ydWsdvitmv57usnVwjjdNj9lv1VWsaLldgQbtBZ7Wj5fziWURw3zmeffLZhd1TnLJxbpPVrRXcwGU6mHJw7YCVbWHiOa7DfBLqQXZ3ib4+nM91b9N2LI52Bgx2BtKLcW2e+q0/oNFosXFuk40zG2yc2VB9Pvn+eBYpQoOvjZ5NyzimaKMFFRxbj2sUecn4cMLRjUOGeyOKoqC/2Wf/8h6bt50gn8kYT2+jR6MdcHD9kGgWc+b1pwHYubgrFTkVgePowFETyizTYKKYs7ZrMx1MmRxO8JsezV6LT//LT4FpaCuf/okVsdYKPA6vH3Lnw3cqg9tCjxK5bnCsj1OPa7i+q6tMgOHeiP2r+wz3huRpzqnXnZLK1HFZ2V6BsmI6mLK6tcr6mQ0GNwcM90f4TZ/+Zo8skXfBVKhKLU9Yz1VmRc7RjSOavSZ5mhNOJalpdVv84b94UrHo5yRJyNu/6d28/NnzrJ1awzAMnXDWQ/yuG4hAwC30/iBo0mx21BmTqXEBZUcXiWv87sVdTty2SZ7lPPfUc0SzWJMST73uFJtnN5kOplx8cZ92exXX90jCGEyDZ576HGdedzt+wycOY15++Y+4557H8AJPmfcWnLvrdayeXMV2JFH/1Md/n2azw97VDoeH13n9/Q/S6rf18yqLUtuG1QzWt/wnb+Ff/e5izYYHA/Yu7dFd63LfO+5jpdViVwWao50BVVHS3+wzOZzw3JPPAnBw45DJ8Ig77rsby7FZ2VylKDKm0wHd7rrMMHdkrtw0DaJwQme1w9ZtW9x8+QZxGPP0pz/KudvupyoL5vMRZZnTaJTE8Zzd371EELS5cOFzrK2d4u67H6G32aez0lXtskoLSFy9fBFn32Xj3CZv/7Z38Cu/9OVj2/L1moKiZdm026vSzDdNur0Nzp//DH5TfAY3zqyzeXaDydGEq89fI45nGKZFo9Fl9cQaaydX2TgrB8aZ9TV8x2GWxPiOq9mMhZojmicJQSugs9phtdOGDpxYXxFNyTAiiRI2b9ukVESTPEsJmg28wMVr+niKbdVQzK0sybBdNIS6fJmmpQ4p+ff2aoeg06DICtZWuniOw9r2Ks8++SzjQ+mheoGH5Vicu+8czV4T27VZ3Vrh7Ak5CF3b4o6NDelrxLGeKfMNQ4uUW8oZevv2LZJoQwyNXZv1eczOxbdw7cpLXDz/DEf7e9zz6P3kWaHp42fvOUtRSCUetHy6a12KQgLm8n2VZUlvZZWyEDba6vaqMGTHIWmU0Ol3uPOhO3n2yWfZuu0En/r9j9PqdGn1ZZZ0cjRhOpyxog7C4f4IyzDxXWGj1rOLaZ5rU1rXcyiLgqObR+TKbfvuN91Fkmb8H//TjHvecj/Tjx0xmRwRtBuMDkY4rsNzTz3Hm554mCIvtJFuWd6c/cgAACAASURBVBSM9sevSoNvt1cYDnZodBuYtkWopOFcXwgYu1HC+c+e52h/D89rcPnyM8xmQ77uPd9CZ7VDf7Mnoy9q727fuc3upV3N4K0HxGERrAzV1xvtDVk7tUaWCETc6rf45Mf+DS+8cJn4qTlbW3fw2Dc8QbPX1HOm9X60XTEKFhJOdcwkG0Rey/FdctfW7NKbL99gMpgy3h9x9t5zvOldDzIdTNm5uMO5e89pqHrz3Cacv8FsPCdJUhodqUyng6nA7ZapCF9yX/M8Ew3T0Ry/6SuT2immJQbV3WaD8fiIB97xCC88/Sz91XXe802P8cUvvMSzTz5Ls9tkNprJmpclrV5TenG2fSwoVsj9+00f0za1iff+lT3mo5k8R9fm0a9/mI//+u9j2iaXnn2Zh971CI12g7c/dA9/dOES08GU/av7bN1+AsM0afXazCdz8kIJF9gLBRpRO0mZDiZC6JpOKfOCU/ecImgFHBxc4+3ve4LnPv1FTpw8w3f8yffx+bdc4SM//RHRQN4f4rcCPW5l2y6GaVHdgnmblsk9jz7I1u1bPPfUc6IKlRUa2p6P58JlKCvOf+Y8jucwHY9oVz0uPnOR2++/nWavRZEX3H3/A1RlRXejx8bZTc5/9mW+6Qc+wGOP3E/L97k+GPDiF77A4eF1ilzmAOMw1iRCgFa/het4TKcDokiQquH+iKPdI3rrfYK2rWH6yZEQjjbPbqpzdAnyrgpe+PQLPPT1D2ErzkS31WT/6j5e4FHmBVeeuyIEG5VIZonISqZJRrvhHWuPlWXB5rkTyujcVBKNDifOneD2u0/TXe/S6Db5wydXqKqKXn+TsipxHLm3JAlJ4jmWZdNodLAsi+l0RBTN6a+v0VK97WgW4TV9tk/dAWVFOA7pbx43hv5K12sOir3eOqYpEGoQtNjfv0J/s0dZVPhNX/dB5MOtC+bvu2ye2xTCymqHZuDj2LYSlc6PMcXmScI4ihiFc3mJPFdUQQyTSRzhWLbM8ahM+44H72Bla4X5eE5VVrrP4wYi29ZeaeO4Dll6nHxTm+Iub2xbHUbdIKD0Zah5pdWip1ixvP1eDq4dCPtQiRJ0Vjs4jo3Xc2gHAZvdLp0gICsKoiyj5fuMlHg3LJRC5okwNA3DIMtygoaPF3jkeYHfCnji+55gtPcohzePmA6mdDd62ii2eVuT068/RTyXvl9NWZ4Np5j2kgyW7WDbDv2tPlVZkiSZTmj8ps/qyVWanYY6rBt01jq8bu9h5pMpp19/mkcfuZeLN3Z4+XMXNNOryEVYuNaOtE1TK28UymC6t9lXfWNJNrbv3ObBs2e5Njhibf0U/+af/yaO63HixG3cdv85vvj7z3B045CNs5tkaa4HccVc1tRjFLdeZZFj2Y6IQrQCyqLk8MYhrW6Tc/eeFVJKmtM/0SdLMrzA52DvOmfecIbuWpdGp8Hp15/GsoSm/953v4VPWSZxmGidyVqEAQSOMy2T5v9N25vGaJad52HP3ffvfmvt1VW9znRPz8bhNEckJVEUaS1kHEhyLMeyYySGpRiJlQhxmPy0YzhBvAhREPhHYMgIoCSSAwGyHIW0KDGWRGpIzow4C2d6ll6rqmv76tvvfu+5Nz/ec05V9VAyR0AuQAy7UV3fd7dz3vd5nyX0sLWxIuFDMfd76Uc/g7339jCbjeD7HbT6LbqnZQXDNLC8vQTbd4hlOyHijNf2zj2LQoKimzoc36aA66JCGmWSYLZ2ZQ0XBwO81g2w++4u/uQPvokbH38OvfUent/awvR4irIgva5lnVLxsziTM05hvUVGBpTc3t+gzlzVNPhtD89tb+FwNkMcz/DuK29jNjuRz+5TT1/B/TfvU3hvnJENX0PhvkAB23bPh1434LPiRnaJdA/p2emv99Hqt9DzfZiOieWtZRx98yFuf/M2PvtXfwRt18PV9TUc3jukIoKzyAXTNuHwtrB3UxRyamnQSEcrXdfhdAM8fXUbx/M5GKvw+te/jZOTPWRZjHcPDrDabePai9dw57UP0FnuyALJtE1Yjg3TsCSvQhyWY0mE5vpL10mqsyAZTs2lFVM2xcneEJefuwzd1LH3/h50XYMXEjci6AaYHE1w6dlLNEKxDNSswf6jD6CoP4KCmyq4XOM8nR5jNpzDCcghTDiHbVzbRnspxP037+P4cA9lmaHfW8falTVkUQpFpYKkt9bjsPgIvbUetm5s4bWvvibZvQDgegFWtlfw/ivv4/KVTSgK4NtEABQB2JquYe3KOtyWh/lojqZuYLsOVi+twm3RWKkoMly4fAXtpRDbN7ehaip2b+9gb+89XLr0HC49cQGXBkvo+QGiaQTXDVGWOfI8hWFY8P0O1q9uIJ5exJuvfR1ZRkXnysqWDMEWzldFmmO4O4TpWFjZXgErK6xfW/+e68efdnykTdEwLaxtbcuZSjSLcPHi09i6vAHPshDn+VkkCMk8QZkXUFQV69fW0Q589ANiwKVliVmSgHEboLbnoeQuIUczIq9ouoosL5CbJtqehy1O7Gg5DrmpcN2k5VpI5olkmToB0eLbS210A18ySpOiQMmIYq2d8fJsmlpWSKqiwDFNLLVIOLvIMkRZhvVOB5eWlnByYR1ZUWKREfEjdIldqioKDZvPzAyFS4yqqojzXEpOsqLAB4eHpCtyLaz3urRQnelM4jxH0PbRXeuRzVxF5AfPd+EYBlhTI3EL9Fe6yHLSUkWTxbkFp2ka+H4HYT9EZ6VLPzOLcenZS7jxyRuYj+bQNA2ObeGn/9LnsEhT3Pqh51AwhpA7vVxaX8XVzXUAxDC9u7OPcRyhqCoSFasqwHWKuqFh9fIqrq2tIsozLK32EKcZLNPA/mQCz7Lw1/6bvymp5aZtod0L8fQP3pSDe9MxzwiKaaHRDQ3KYx2+67Zg2R50zUDYD+G1XPQ7IZ67eVVqCidxgjhKONGBUEoisejkz1kyXNhaxfagD9swUVQVPvHMdby7v4+sLOFxwbKqqjyVpIJhGQgdh5IOGMOF9WXpGvPpf/9TAESHqSDKcvlzddOg43lwTFNqOQFi8J73q1XQXmojmiwQcTmCoii4+sJVNHWNcKmNfthCXpV44tYT2Hxik8wlNBUvXL4ETVVx+dIGlMubOBiNcevyJYyWlvBwNELJKjmuOOtl61m00G1trCDKMgxWe6ibBtMkQcfz8BM/99MYH46hqAoRkQDsPDrCheubWEwi0iZS7pNEYlYureIP//DRuWdxaXMJJ/sjpFzT6wQuPvmTn0BelpgcT+GGLmZJgp/5uR/H3miEF/7CC2iaBh+7dllu3NeeuYwkyxG4Nm6sbyAtctwfUqE6SxKoChDYDiiuEWi7HvobfaxdWMbSeh9pkuFgOkPHdfHF/+ivYP/OPp40n4Flk9D/ndv3EXQDbN3chhu6aFgtWelLF5awtn4VqqLindt/fOaWKfjEFz+Br//mH+HmDz6NIivw1h9+F7e+cAtlcUwboaGRnpML0Z+89YRkVAsSYNAN0FvrQzM03H39Lr71u3+EyfQIP/7pF3n4QAVd0/C3/uHfwX//81/Cd/7wW1he28CTn7gO+wqxdUf7JxgfjHDxmYtYv7oujSLaA06a4gXS/p1H0HQNz/7Is7AcC6ZtcC3m6fjFa/uIZySR+v3f+iME3QCrF1fgd3ysbiyhqCoMH51A0zW0l0KMDyfornSQZ4Uk0W1ev4CVS6u48vwVrG0s4fh4jFe/8iq+8/LXYZoOfvLnfxIvXbkMgExB/vLnfxDDnb+NX/n7/y2uXHke/ZVthIMQg80BgucDrF5eRTyNSarmO5JUJqQkr//b19Fb6WF5exnDvSGgUtF0+5u38f0eH9HRhv4rfChVVcXS6jq97Hy+VDAGU9OwsrmEvCDRu2bo2Oz30HIcKWwdx5Gs5CxOson4RpNXJcqihOVaRLYoS6RFjq7nIbAtpEUp7ZGMTR3TXkxi+LxEw8gk2/FthA69wMItXhjjVgY7z7LiVTMrK85QJJGzwVl6Bd9Um6ZB1/NhtDT5M/qZjczmSREp9xOVi7voOs4yQ5sGjGv30qJAPwjQchzpCNNybCy1WtIuTURG0fdVkHP/QmlUXJw3NwYgNaSGqcO2TKi2Bc93UVQVlsMWNJ26+pJV2BmNYGoabNOAzjQ8Go3hOTb6QYBBEMCzLMzTVLrwCP2SsG0qGIOiqrB4pdl2PXme4r9FxfDCjWtYpClt6jl5vXptH7ZHnXKWZMjiHIyRLaBpm0TOeQxi1E0D3e4qhsc7tChrqlzs66bByWIh3WhmJzNUFUNdkX2d1/bhBS7Weh20XQ8KCP5tmtM4LOEXKoyXRRFkueTws9puIy9LadyeGgYmSYJFnICVPCuRMeTc+q3HyWhZWUJTFWiKhrQsz5lvA7R5qLyw07ho3bAMbG2sYBxFyPOCoqfmC1xbX8U4jLlNFiVExHmF0CVt62o7hKUb2OiRlneSJNKAuW4MOVfUFJVmylWFi4MBUv6+ieLuY5+8iUWWIY0JHRHxXwDQWe6QSUWaw7BMKAo4v0A9R2ZTFCCNM5LXVG35rG73+4jzHJZBn59XFSrGsNJuo+byJ1bXOFksUDcNVtshllshdO5/SmkmNYaLBbfgq+BZ3JnJ0HkyCdnR9YMAqUuxcgVjuH7rSVy4foF//wJ5XhBDsq4RdAMyw6iJia6qBMuHYR9Ffp4J3dS19GjWDW45ZmioK4arN7Zl0oWiqmSSoWtIFilqRuzZPM2lf+e+9Qi2Z5MsqUhx7dottBwbnmXheD6na9Np49an/wLe+pOXcfMTz6PMC3htD/E8wfiQZrOig9R0TW4gpm1C1VTEsxhrV9bhBDTbS+dcLmIZ5/TblmngqU89hdd+90/QXeng8P4R1q+uY7XXhaYq0FVNNkO77+0imSey04ymEZq6kezeZJHg/vu7iGcRijSH64a4eetjePLiJgxN55Z2FCV14wduIAwHaHXa8EKP614rQgkYkxt7zWpJVKv5eryyvYqVbSJwChd5wzKkCcX3c/y5dIpnF3snCBDYNtdzNUBBO/dqu00POzf7DV1X/rusLJGXlYxNsg2D8uq4k39VMoJemgaoya9ylgChkyF03XP5aq5pouf75CPIGH/xC5kNZ+oaHNOSVmaVYSDNzw/KXT8gg3H+P4AWJ9sUXpY1bK7vsg1DUvQpi/D05Rf2Z3Geo2RMep4usgy6puFCvy8/U+ROViUtuKwhS7Wu58t/u8goWURvyFc1K8pz8UVdz5MZaYKQchYmMC0TQdCFaVswdQ1dz0fFGHZPRnh0MkbgUYByUZREb9dUTKKYJBSei7V2G5Zx6t0KAC3bkfEuwskGIImJwgsPcbC6kQ5FIjdR5NWZ3C+WFi0TtUHmBl7HQuoVYE0NSzeQZPk5SF4cqqoi7IewHR/xPIZtmTKNxD7zfHgWbbRIcuieDU1Tsb26LDMjbcOghbU+/Y5nixdhtE3ONjoag/R8iqKQLMdxuHdsIX/n2Y1OXLdZkqBlO9KBJecbgKnr54g2AFBXNfzQg9r2acxQ1+i4Lmz+fOmaBl1ToSkqwY3cXGC0IMMC37bhmibaritTBtqeB9bUPE2AIn3qmj5XmM2nfJMX8VAlo+/o21QcTb0Elq5jbzSGpmuwfbKpq4oKhm2S5OLM7LXXW8fR0QP5Z1VX4VomDFcnqVaWQddUvolTtJew1AOAgl934aCkqYpkzZo6ecBWjDxdZ0kiw2bzkkzGAW6qbxnkfYsGmkKFe15VsAwDwaAL2zTw6GRMwcgl6S+dwCViFke6hGPR5taTWMwm5+4XY7RW5WkBVVelMQZUBVv9AaZxjAdHx8jijGRNHOqr6xqj/ZGUVRVZgZrLk1RNxebWNdz89E3UDcHclPJBQvpbX7iFN179BrI4g+XZ0vfY5ZpEmz/raBqYDpeB5QXqmghc21euSmetA17EaYZ+LmZMVRRc3l7Hl3e+gh/+2R/GcHeIaBLBv0Ls26ZpEHBGd6vXgm7SXLnMS+RZIUOnGWNIFwk0nRx9Lj9/GYZt4tM/9SkYvFHx7dPf+cTqKj73hb+CsB+iyAp0ljuoilKylhWeymJYBkm+GEORkbvSjR+4gVa/hb339pBGGZwWEQyHu0N8v8dHz1M8M4hVVVUOeF3LlNlzlA5AL7NjGOfibsSLJ0xvfdtGINxrWH0mOPQUPmNVjRz072yeRAGAa/4q/hKfRhnllQVT01DWtcxqVBSFJxwweljOHJZjnTs3YfCtq6q8Wawh70+x8CW8WhYbQcUY8rLElFfjoppuOJQnOibt7AyurMgiKSVfv2PLlgQW37bJRLyuZWaauEYWX5BLvmDFeY7cMiVUIg5N19BfWpOdPYnXVZqnNJT4UJYVirQgaYypwzB0BLaHtudJdqnCiTQUbVND19TT1GtAbiiKqkhmY2DbMu0jR0mJAGWJIz77YdxyT9VUCpblBUiDBv0gQJRnyIoSrm2R0cNjjjaKAgTdAI7jwzANFCUVRaHjgDWNZPw6ponWlUs4ms3g2zbKqkLb82R0lIDyc56JKCzqND4zFc9UWhQUZMuLjllCG4Rv2wgdh2dpaggdBylPOzmbYOGYJgLbphzGhtCR0HXoOXrsvFRdRWDbUBQyEhdxWsJ8oOCpCfMsRV5WUqfbC3xYuiHvM2voGgivU2EGnvONUTUIQam4RIbgOZWeMR7EnBY5RlGEuiGNp8sLTFVXEQ5CmKaBNM7kwlvx2X1T19jaegrvvPMNeW4ed9ZRoKBlU/cznC+kKYXwBp4OT2Cahuz8Q66tbPF3QiAzIiQYgGSwZzzb82wcEwC4lilTZVzTJFF6FEunnjIvJSM96AbQDV0yvc8mtGxcXcdw77w7iqoqZPsXZ5Jc01vrS/2gZ1lA3fC5tolaVWXMmuPT5sVYDduzsXRhCfOTOYa7Q1x69hK2n96GqtDa6ZiGTLGxPRuf+eIX8W//9b/GT/+tv0EWh4Yu/aENy5T6bsMyoGmaHE3kSY7QceBwSBYAbM/GYHOAswJuERq8s/MOLvR62LuyLjWiVKQXmJcliqKEYZvwuIEEQHZ/QjCvqAq8kFyOWKWhs9LFv/k/fhs/97d/CossQ4+dRrsJD99P//Sn8bX//WtYu7wq2d1FRu5QwkaRGM0KNFWHXhHvYO3iCtqeh/07j6TL0+xk9j1tIv+046NtinVD3cgZiM7kWLwCBV3P4wa8CdKylFDWIstk0kLJGOZpClPX0A9a2Ox25cYjzG7Fwk6zEgU6q6GqCpqwkZsDvbAFvfx1Ix8WxzT5hsJvCL/JSVEg51l2wmFHnhd/GSoevUQVNZPJz2KDysuSFtyGQmhLxhDzBcrQCA5bZCmSnKBFFUBWVOh4Hnq+L6OJNA7NEqxA8ImiqjhZLBDYNnzblibcIs6JcXNuSzdkukbd1BjOT0W68TzG3dfvyvNSVAVXnr8ir4Ohaeh4Hm5dvowpn+eK2JmsLOBbNkrG4PPv4FmWvDZHs5k0W6aqVZEd8jiKsDsmaYKqKJgmMTRVxYUeUduncYxRFME2DRyMp9LRREZDqUwuwv2APCbTokBRVrBNgwwVHmOfNnUDwzbwxNPPQjd1eI6NjudBU1XY3LtUQN6srtH1PAntO6YpIe6SMUyiCAW/xiUjUwVW13BME6qiyAKuKisJNy7SFKmm8Ygcusdtz5MSFZG6IdIsAMgXWcy3BfR61oe3aajYDBwHXc+DqesIbBsH0yk0TrYQ5B/fsrHcsmSGo4DTPYtE7CIuq24ojs2zLER5JgtIUcAWPBUli3MYKzpCh9jgiyxDkufSNF48i55jyzitvCJilKnrSFKCFR3fQVlU+OzPfg5f/vL/Kk8sSTOshCF6PnXAGt+QBaLkmiZCx8VWf3AuiZ4QGYJ6XY4GpIUIMK9liPQiTWnuq+touy5KxijM3NAxj1Ns9LoIXReqqmJ/MoHW8jGZR9A0DUxlUEyykRNFc1XRhpknOTRNw8HdA1x85iL8TnDuWdRNA8kswU/+whfwx7/1x/jr//nPYJYm2N8b4mA6pY47Jb1jnuQo0gKVSKD3Hfht7u+pKbj/1gO8/JU/wOd+9idw+bnL6PkBQsflqJcB22DY7PUwjWJcfu4yrv/Al/Cbv/Ib+NIv/xLGUYw4Iv/Ug7v7KAtam/y2D93QpVnC2uVVaevXdl18+uZ1/Mov/xouP3f5HNIkPHn/6i/9PP6Xv/8v8Pf+yS/ij99+F8P5HFNNQ1IUiBYxseIZw3y8IPeeRUL65pYLv0PnBpA134O3H+L1338dv/TLX0JSFHB5MUyGEoTGmbqGjZUBDnYf4v13voOf/+9+SRYbB3cPSI5lGRJGZWUFTVexvL2MXuDL69pd6eCFH/s4vv6bX5euS9/P8eeCT89a5ug8hFNAMBSZQ52TWAAsXZdJ9aQfamAbxPI0dW4yzSNczobBNnXD22LS1Sw6IRzTlJ0iIBLDTzPBJIWep4qLNOeCw4zzLCUM/YxO0bQNJPOE7OT47xRBwjpPYwCHW0Tci4gY8ixLLrCuacp0aBEdJFKvhTVcw6tZUcmqmkqMS8c6l6Au0uwtnr8n2LnAabyMmGnN5xFqxpCeEZaLo64Jigv4xs7qGgGH1zJu4G1oGqI8kykRoksyNU3CV0VVIStKKgTyUyiz4UUCANScmWqbBrKSFv3QceS8NC1LdD2CusXzIhIAztLpi6pC6LqSUm+7Fubcs1WeF2eG+p0AfkibEcUrNTJEWNT3Z8XcYhEW1yLlnSslS1AOooA/1TNFTMVnxIKRKiBaEWIrChWxGZq8cxEsa3EPGX8exPxcU89DpwC+J1Ts8g0odF0ZvHsa/Ev3XKSxmLqGktVSCiTmpSJqCQAGjIz4Dd6pi8V/FEUoHRtr7Y4cbRzOphgtYnndpSsTY3A4/Jzz82d8bkuWdKdp500DNPw9LMRmpdFMSiSpi/skrr8obAPbkSkRuqpikaUoqtM8zqrmkWx8Tr3QU2jdLg/HNuAGRMg4nM1IxN/pYLvfx3CxQJTlSKOUSG6aCqinhYvjk3nHWRatMLM4eyggaDJoeVi7vIrf/8rL+M/+k5/G/30yxSxJyMkqcLnhCX+HYXInHBtplEHVaGb52te+hY//yCdx5bkrYIxgcxHbJdY41zTR9j1MjylOaWl9Df/nP/st/Ohf+yy2V5fl/DuNUuIz8ISYGhS4nkYZrEEPg1YLfd/HV179DlYvrZDP7JlzZQ1Fh/3Mj/0QXvl/XsE3b7+Hpy9t4b39A5g8lqxpIDcsy7FQsxp+O0Cr35LPg/Bt3bm9g+nRBJ//G5+Hw8dRhLDQc1hpp0HFoePgR3/2J/Dbv/ob+I1/+mv4xf/xF6ULUjJPpA+24ztoeBdsOSYmMSE4buDiyU9cx/WNdbxsaDQv/T6Pj7YpcoakuDkKZ5sJjP7sxVR4pXo2PwvgKRZ5gc1uF55lcaYYzePEhqbrmgy/FCnK8SzG4dEIFrensk2TFlRwQ2+NMvoE1JEUp1l9oyhCxckSk3mE8rEMO0Ulmn1ZEAZeVhUmcSwrU6Us0fDOTVNVaGdmZyp3PQFoA5qlKRZpCsc04Vm0Mdvc5/TshhXYNmzP5v6vxECkOUnDq0IOEXMIM8oy6bUKUFcd8WqvLCo0XOS8yQXb4v4Md4e48vwVaRqg8U1emEcLWYXYJGS+Ie9KxKYouh0RippXBIkW9Wk4b9PQJke5aDks3ThnhG5oGidG0O8S3bB4nkQO4ywldqJv2xhHEc06zt4w0Abs+DZ2393FxrUN+Z3TooBqEaQvkApx3wrGYOg6sqKQUUMiW9DQdChgUrLi27bceBRFIRhep5QSATmxupEdlJh1iT8L9AOgTZXhNGxZZDvK8OUz59bUIvWi5jNXuna160LXVKRFiZZD5uazlNihIuSY9L4kt1CVRhKHwD+b1TUhJWUlxwFRlsExDIp94izpsiKZVNt1Edg2LGOAnh/Qe5EkMuNPFLuWrsPUdZqrmjo3C9exuj44Pa+mQVVRSnxd19zFSoOpu3IGmBY5bIM2C7o/5HZFxKBTRKfgxVdeUResKpAkNJHWItcSTYVm6Egj0uudcBQhsG1JIBMJIXMehybOT+dmGKK7Y2VFAenp+aKlAc0VJydTfO4nP4V/9etfxa/+yy/jhZduYsYzGsWma3s2pdzwDVjn3X2e5rj9rXfx4ud/AJeevYQkSrEy6MIxTZSshqHhXO5pYNvSbej5H30eo/0RvvU738aTt57Ek1cuYLDaQ7SIyU1nGqOpawkhem0PHdfFJIrw2nt3UKQFNq5tYPfdvfPnVTe0Xpcl/ut/+Av4n/7Br2LpF38Guk5rrQiX1jSyJBQMUD8gJ6LsDHfj9su3cfjgEC/9ey9hZW2ASRzTOfB1oWS09ggimmeRN+unfvxzOLi7j3/0X/wP+Dv/+L/C+rV15HGGZJ4ijVIoChm0mLZJqUp5gbbr4srlTVi6jrfuPYQbuOf02/+u46Ntis0pjCWqqTKnWUymKFIQenahq3knUVYVZkWBKSdyiFmiYIZS9curZlWR/oriASqyApPDCUzLgLbcl5uTYIme/5rNOdp7nOcyILYRkURnKyLObMxTMkBOy1ISXwT8ZmiUWefxBVdsTkVZyjRssVEJ2I9kFhpfWGjTF0njhqbBsElLWZUMWZLzdHXlHHlH/Fe85ElB0K+Yy2blqcdrnua4+MwleV4qH7SfrWyTgkgupsho49fONgxZ2CRFAV09TSdveAdGGwpB0Bof+ue8cz7b4UvomnfbmqqiBp9B82pfnFNeVXLOJjozXT3v1M/KStr0nd6zCtE0JqIHD5GN8gyuZcrzEJsZE4vSmWe3bhrogiTEIWRNVbiRNL2oAl4GOLuWSzqKisnwaa3VkqGvlmFICUfFN2CxIaOukfE5oyB9aaqCJP/wy5rFRLwSXaiuEZxKHbAuCV+2EXI04zSQtqgYFKVGuussAQAAIABJREFUwUX5cZ7LLktkZrYshwcTE1Rlm0RYyOIMWVlAVSxkZYGiMqFr1PW2HBsVq2WxMEsSGLqOEJAdt2/ZEmr0Qk9uyOKdLDP6s+juLOjQVQ26xe+3yUk0fJYoChKxIVbsNGm+rCpJtBHmEaxu4DkGNwQ/1WF6jo3J0QSaocmYLJezWsWctmIMLceW90P8XckYYkNDkQJQFYShj/27++fuF+UHEoP13qMD/NjPfAavfOMNzJIEy2GIkG9ArKlxPJ/TvdKJzBQnKUYHY+y+u4ssyfDxH/v4qQjftiXKIHSlAsIWukzdoDSWrRsXEE1jvPst2nw+/+OfhLe8DEPTsDMaIS0KOcvOyhJv3aO0DsM2eCf3vaD8Gossk0X+3/y7/yG++jvfwF//uS9gFEU4WSxkIT2LYhgW+QAnaQbbMskj2TDw6OgE89EcH/vcx3Dh0joWCVk+rnc6RCTUTtdFQd5zLVNG5z3zmWfRfa+H//nv/hP8l7/8JTKGsEwoKnlpawbNWN3AxUavC9c0sT+d4s7dXZzsncj94/s9PiLRBnJ4DBDVVTOIDVXVDEalw+HsTJ3PJMQxXCwwHc8pDHdjCQAF0pas4hVCAVZTlc24c4upm7K6CboBdt55SIJwbgDsWZR8QCw+7UPdRFnXSPKcSBSMSby9SPNzGXYaDywuUvIoNG0TmuugqmuYoJdYzJUKxiScdlq5VhjHsaRMm4aOlu3IzjBwHAS2LYkXrmkiMgyy/7IMtB0Lk6MJ5vMIaRBIqFm82GJRE1C0yInTVAXJgh4wwR7z2qcbYM1qXHz6kvyOWVnCOEPakQSH6rRzEMQLgOakeUkLjmMQg882DWiKirZHnyPmZBqfc7Gmhm2Y5F2rKnIh0zk0crYbFddHbBSqpqE8C9eWBX2fShjIn3kW0eB45xgXn74ITdewmMdQFQUtjjwoikKzMg7PiGKu5PMzQbw6ns9lwK6iKMSihSKvjaqqSPOczwf5c8UqZHmBNEoxmS6w0u9ivdOBZRi0+SofhkQBWmjFYkbXV0fxWMRS04DHU0HOIx0Y0BQFphw/QBJMBLtbgSKvL+MdYlUzGX8lrpmuahyGPJ256yotKvPRnLNOGe/GSgAGVEXllmmnG5DD015kuDTvvEUYtNtyZWi1ODFihxIkl5cVHL4JCmmIeBZqOnn5nIjvbxkGSUX4HJSeYU0w78lQQtVkkSUO2zDASsbZ3tW5jksgIqKQEptkwz/DyElqUuYzMohoTqO7xEHJH5QfWGQFhrM5rr/wBL76619Dqxsg6AbYvnkRgevgmc0LtI5UFe4Ph3jzO3fR1DV6a10wnt5TFSU6/TZnsVdYDUNUnPTkmAYe7p9gOCaJgRO4mNzZR2e5g9VLK3B8B3vv7+Eff+mfwXZtXPv4VW5h2SCNUomkbd3Ykk5krKplHuy5SL2aoHxiJNO8/y/+1I/gH/2Df46/9At/EZeWBlhk1AikJj3Xrk9Q90avh2kc4/6DR9h5dxfXX7qOweZAbogAdb6qAiwyktudbZCKiiwDbc9GzWqsX11Hf+OLeOX3XsMTLz5BxCB3QMQbXZPWk3sj8t+OJhEFQTgmMIGcr34/x0fWKZ61SVMUBdEkwmgyQ+QSCUTMG0xdQ5TlchG68+Y9TIdkJ/Tem3eRPlmg5Tg8NooW0fcf7GF2PJUpzm7Lgxe6kqE53B1SPM1whqULSwgHITb7PTlzEQsCQC9pUVWYpynyquRu/tRyx/PkXKfY1DWcwMH0aIqDewfI4gzLW0uS4WnoOsyCKPe+bRMcxj8nyjLsjkbE6itLZEkGxmo8uL0D3SQ/00EQSCakqes4ns+xOxphfjLH7GSO9lLILbZyfLDzCOnKABtdqnjEJpwW1EnWvGIWXWLFky3KvJTm2uLIkhymY2JyNJHdsGDvCRavmCEKqYemKLLrm6UpxlEk52QlY7B0A/0gQNfz5Aw4L0uCziwD85iIRkVRomAMq+3w3AIl4EkxXxWwNwDEcUys05JYhUleoOIpBSLnT/4eKNjfeYBnP/MskkWCk70hWEUkIY9ZSPICvm0jyjJJigJoozmez2kznEZI5gmWLgzQ9XxiLFcVur4vYXqxmbpc8iEW6Cury5inGQ6GI7z91h28Z2h46ikiRvi2TXmgkrF72h0CJNgvGEOeUQrEWQ2myJAU82JT1zFPibKugSBS0UEJRIaeEchnxdQ0aIpC80FG2j3qfGoJ5Z9d+DVVhWOTE9T4hHxFa9+XnWrKNamOaci/S4oCgU1OSmmRI+NmHFVBpBJKmTk9L1ZRIkxelsg0Db5VYxrHMlZNzLFFsSI2W/Esijm7bZiYJSnKqpJmHJZunPt5i8PtqkIbbui6JFnKC2AQogh8gv9VC1mRw+WuWUlegDUNNI6KzNOUTDjijGZnmoaTw7FkYIpDMzRMjibYfHITeVpAUROomoL1K2s4uHeIIisxG5KX7Hc9G5ZnQ9cpkPrax68h9AimTssSu3uHiKYxRvtjGf90+OKMDNWTHItJhA9e+4BLEWgz7a338N6338VLX3wJ169u4WNPXcXnv/ApPDw8xoJvDgAFKAOkW66KEieTSKqB8pSkT+ep0ECR5tgbjXE4m6EfBLANA1eev4JvfPUVaJoqrSd1Q4ftWdBNmk+fHI6hcej6hc88B9swcDwiKYvlkgPQ/vEJDscTaJqG5XaIlTDEPMtQlCX2p1Ps3N6h2DpWo6kbXPv4NTx6fw93X7+L8f4Ik6Mp+Qg7FmzPgmlbWL64DF3XkSUkZxOw6eOFzJ91fGSiDSsrCGqYqqoyLRoAKoM2ItcyUTJq89Msl3l9rGI4uHuAZJHI3DvbowgeVla4/9YDTIdTNIy8A6uigu1Z8DsBTNvEYkLzpXSRYnpMFzj0XbimRXRyVeOuOgqf2TC5IeZZId0kWFmdq4iyOMP4YIyaRzkliwSjgzFcj3Rlhqaj5TiyA27QyMH3/eEQUZLCsS10PA+vvnkPeZLjzT94E6wq8eStG5QG0esgsG2EroMPDo9w750HOHp4jHgeY2mxRI4sGwMKwZ1MsdRqyapJvPBJUUjmYl6W3OYtlZqnPMmxf+cU2qkZ/Z1uUmK5IFlQh06bnGcRe1HAwcQeTXA8n2MSx1JOoPMkescwSJeq63L+SgknBlli6YCumaiNBvcfPMJ8OcUTqyvwudxEzMvOdsGCpampKulLQQxPANxHskI8e+yhVhQwRh0yBbbGcEPvHAlIiNrzirIeAYA1NY7mMx46O0OySHD9xiUZEaWqKkLHkd1lfeZ7mZwQpiqn3w/gJutzCknNVkr0Al929eI6CdlH3dRS3lHVFOp8FuAQ9yznG2rJSFN4dkQgOrS8qvg5gl9L8AxHGhUseE5inOdwTYpRItG7IiFsMe/qeC5OTIO0ZVWNiZcg5AxOMd/WVQ2qIqBfVToHCV0ua4glXmYFVi+vnmd48+czLQpYhoFpksCzyAgBRQHL0AGcnx2Lma6A2U3eae9PJpLYQ1IFFTogpTS2YXIXIUhJhIj4iqYxyqWunEUKboCh6QDIWDwpCqi8KBEoBhmekzn440QoNHR+Iv+Vfr6G2yLheV3VsD3KSnUCF73VLnTTwCBsYRAEcpaelqUkpNx78y40TcfKpRWYtgFN15GnOWbDGe688R6SZAHb9rB5dRtXP3YVaZThZH+E0HVh6Dr6QYA2VwOI+zOJYyRximSRUtxXfWqfyKqaAhPOvWKUz6pqxDkoGSNnHY5MVWVFUVQgIpFA3EzbxMbmMjqeh8BxUDGGDw4PKSBY01AWJSV28GLedEzMejNM1/qIEwoqPt45xmw4Rc1qhP0WkiRFkeZ44pnLGE/mGK12EU9jYqvaJEdTFNL4ZkVGsVYlt/R8LCPy33V8xE5RkXokoSHMk5wPPBUYNmUgVhWDrlN3x1iN6dHknFZkejzF5HAsg4LdwEXTNDi8f4h4FoNVJRbRBLPZEL7fxvLyBfQ3+qTxqUl3s5hE0HQdk46PwidYRxNzMC4AzvICVUGbR1lQR5WnJPk4K1KdDIf42u/8X/jsF/4DzEdzIvdUDH7owXIt+AFBhRonvPi2TQtkVWERkwn1ShgidAm6O7x/iCyLcffudzAa7yNPc7SX2nB8B53lDu69cRe77+1hNh4jjmfIk6dw8elteD5BtvEsxjiO0LIduDzvTnSGrG4wihbIk1wG5IrZ7pf/5a9jc/P6mTtGkIlmaKhysqYTnYdn0aI9T1NJPlEURbJLHzzcRzxPyKycsx4BgoIF5f8sHFw35NkpJAGBbWN6PMXunUeoGMNGt4ue76PtedBAYn+Vd6iSsMMZtiqHPi2DNHD1mU7q9NQaKIqK0f5IstKyOENZVYgByZwV4mIAyApa6GbDOTmJcBs1VtdYlCXyqkLHc+X3ELIG0SUXjKEoSjI94Bu5gOEtx8KjDx4hi1IsNgYoKoZBEAD8s+umQZLnKDjhS0B24v6JQ2yKYkYtrqcoWgC++TUaZ1bzDhgEOdG87tRUv2BMQvcqJx/5Fs24xYbvGAYckzIFWckoHHq6QBwEcjMWRaaAX3M+wyv59yyqClXJUOQl0ijDer+LezsH8jsznrOa5QUiyQZWoRcqSvX8oqUqqmSUimtSVhVmSSIZ5ILl3eJZnsJUgwwVhO6Z5rYt25YuM8k8QZSkKDwPNbdnFJunrmmSRCUY0kVRylQa0yYmeP74fEoBT6ipoaqGRGt66z34HbKZdAMXLddBLwgQcmcvQZyq+HgGIJH5u6++jW9+87eRJnPceOrTeCH7YX4dGPK0wMsv/ytkWQxVVXEr/yLWr67D8W1MjydILywTwsWRMoEK9YMArmUhcjOMHSIdTdMpasbQ1Nxz9zFuhpih66qQ0xG5qb/RRzyNUWQ5seZ1DWE/hGEb6LaIab7V70tTif3pFNEsRpmXsD1aF95/7X3kCYU+GKaOaBLJeLnRoxFGByOM9k8w2FiiSMCKYXI0xdpSH5srA3Q7LSySjBi2jExX8iRHMo/lOlRx7aKmaxKy/X6OjzZTBGT8kjiqkkIm67qGmRkwbXr4mpoqjyIrsBgvkMUZvJaLweYAtmfj1d9/GdVeCdcNoGkGz8ZbIE0IOlVUSmCIFhPoOiVfhIMQXos2qqZpkKc55uMFVeWuRdUOo7BaVVXkZshKCr2tioq78zfnqvOyKrGze5tslxa0wadRCsulaJZkkaKzTNZUwkBZURTEaQZWMlxYHaDjeSgZw40XnkBd1Rg9OsHa6mVE8RRvf/s7cJ0W3MCH3/FxtLMPRdFgmg7CbpeisXotqXPbZzVmSSq7EdbUkhWYVxXlNE5jpItEzjGADyeC13WNo4dHNIxPcjgteqiVXOE0aKpqqyKXG8doEWGWppidzBHPY1y4uoHAtmWh0XKcc8xMizuRiJmcbZlSZqGq5H+4+94uopUYm2tLkoavKAr05lTDJ6y35mkqXWSapuFFV/Yhm7cGgGU6eO/VdzHYWILHDYmT1S5Mx4Jmk8sJcGqtVlQMJ5MZ2b6VFGbd1A0ePjxAmZOGS8zoMs5eFqLwoqoQJbSR1hXDvqpisogQTRawPRu2ayGaxdi/e4CyqFBslB9iMgpDgnmWomkImiIafHPuniWLBGVZYY5UzlnELE+gBrVOm2PO/07l3dQkovsnmJSqosC3LQn3Wxw+VRQFaOh72QZnCZs0ExVShOFiAYvD7QSxn85/xbPD+Ky1ZEy+X2lE5yfiygDqpOjvGyzihHd1dC6eZZ0z9LYNVZJogFPi3KPJmPxskxSB58LSdbQcWxKNVL6ICzce+t6m3PQUheKgpkcTDNoh/DOFRsUF8rqqQdFpFp7lBRpG3XwWZ2j1Q5w8OjnHFhbX1HRMFHkJVeNG9tym0nMdybwOXVdmPlZ8virGF+IdON4ZYjYbQtcNFGWOO3dew/LyNmzbg65rYKzGfH4CxipYpoM7d/4Ezw1vQVFVLCYRFosYjmlyf+QGOYe+U44yEZFMhxtSBmaySInYxTW4594xMUOvGHzHpkKkrLC8PoDKeSHClEJYC1q6DsvQJcyecSIi4x32YrzAne/cwVd+69dwdPQA16+/hKc/9inkWYHRoxPUdYPJ0QS7D9/H7s47eLr4DIJuALflIp5F8nvZhgnd1zAIW6gYw3gRYaHQPlOkhRwtqJxkEy3OuxD9WcdH7hRlICq/Yk3T4OHbD+CFvswDNCxDJrDH8wSTwzFavRY2r1+AG7joLHfw3W9QjM/R0UM0TU0hkobFo6YCKIqCtc0t6JwZ5wYuRY7oKu8uHWRxjuHOMeYnM3ihLz3wmgaoygplXsobXpWM552Re8fZB9u2XTg8pZmGz/SyvP8qZau1ei3aJB0LrGLywtuehRdv3UTBGO4eH0FTCAbZurmFrZtb1DVMIrz1B29B1RTS8dQNXvrCJ6GoKgzTINeJiiyaDscTCjcNW9g7HOL4gLogy7VgmGSRlCeUIh5PY8xHczkoP7i7j0uXnoWm6mfuF7B75x4AyEoqWwoxWO4hznP0fF+y0rKyxHg84wHOMY/K0XG8f4JDVqPVb+HSyjKapiE7NA6l5GUp57bC6DvSNTICyAvonBm2f2cfD777AKNP3sBy2ELPD7g1IC0OclOOItr8ixLpIiFj7MkC5YfYYw1YXSHPYuzeuQfb9jE+HEPTNPgdH17LhW4ZOFFnckOdj+bSBN1re2h1AySLFF/9334Xd+++jjBcwuXr13H1hWu4/PRFBNz14ySK8MrvvYZ4GmNyOMbkZARNM7BxZQOb1y+gv96D7Tu4futJ5GmOd7/9Hu6/eR/TF64g7IdEFOJ6VFYyGYRdFSVGB+MPuUSdPDrB9GgCvxOgqhhi28ISZ7nGeY7OGSOCqmZIixKmruPhyQmGizniWYLp0QSXn7oI1zRx5+CI/HFLkoqMoojs7bgv6yRJsEhTRNMIrGRwQxd5mmN/9whpUeCJ1VWYuiYJSALGL7ged56mSLIcZV5gPpqDVRX2R+PzHXBNxChRACqKIiHtitV8NllIxndVMzlDnyYx7h0P5febj+aoLywhaHl464MHWIwX8Dvkn3thQFaKHc/lHScxPqfHU5R5ie5qF2VR4c4HO3BukBG1bRooKoVLj8i8gcgzFeI5jXqI4bmFV//Nqx+y5SsZw9qlNdQVdSU14/mtfF7stTyYBm0WcZ5LMpaYGY+iCElBMPrxzjHW1y/j4pXrWL+6Ab/j4+Xf+Tqm02MEQRde4OM//k//HnY+uAfGSiTJAvt39vnaqMlYJxForigKkjxHKnyr6wZJlvOgZUobEiHEImfx7DumKKTBnFYVueJwfamQHA34nJHyVWkzzEtyUSoqhlmSYH8ywfhwgkcfPML0eIoHd94FYyUuXnwGg8EFvPPGt2FZLsJwAC9oYefBbbzx+tdgOz6Gw12Ed7vorHbghz5OFgsshy2oUORsXdc0rHTasC0az8xHcxqDzWKouob9O/sYjc8zhv+s489h83a+Ylc1BfOTOaJpTGatjsUZQ9TqL8YLzMcLbDyxSVoSLt1Yu7SO0YEN07QxnR5xyy8dum7ANB3y8Wtx2FLXwBjjgbcmqqKEqvlyTpDzitsJXBi2gTIr6fN5lyFYZzUf2NasPvfCapqO7e2nMZ+PES5dQl3VFMcSkWmvbmgyqWI2nCGNUkpnv7AkoZyiYsjylEzFeedq90IYloknbj0hh9FFWsAJyH3fdCjDcTFecG8/0kENWQ0vcJHrOUYHY8xHFMRJ0VfU+UYTCu/VDRoq59wn9fwLq0BRVEwOJ7D4bEBVaXM2HROH0ykK7gYRTWPMjgnmqFmNXqeHOZtj5/YO9u/s48L1CzA/ZXDdFINrmjJBZH86xWg8RzyjjXrOGWN5Qp6IDne2ePTBHvbe20O5tYSsKCUpCzg1f1jECYm88xLxLEGWZCiLCspj1nzyeay5w1LTYHhwgPBBiF7epVmFbco0jDIvMTmaIJ7GUsupGTqlXiy1Ye95ODnZQ/lmjsnRFLOTGdnI+Q7mozne/dZtpGlEUVz9HgabA7SXO5RnF2c0TuC5jhtPbODhdx/gwdsP0VvrcRKCLVnPjJOHAJpnn529qZqKeBoRjK9rCAxiI+dn7AITvnmcbhzkSHQ4mSKNUvm7hsdjVEWFe2/cg6Io6G/QhnFpZRmh68DSDeiaisPpFO8/2MNwdwjLNpFx2zZFURBNI0QdIivpvMMpubREWBkWVcXHFBmiSQTdNDAbzs5FYpHAvUQ0ieQYRlVVkpCAFjbGN/36TMFd1Qx74wnmJ3OZzZlGKQ7uHeBY1/Dg7Qf44I238dKP/xB0U8d0ZYKT7VWsdTpk19g0eHBygoO7BzAdWjuWtpal9MrUtXPz5iQvpOFHnpI+MZmRzq/IaON43CYynicY7Z+gt9aHEzhczK6iZiVUXeXrFa0RSVHA0nWUIO3oeDbDNIllweH4NvYe3oXrhljepkSK6y/exMHdA1RVxYklJi7duIrx4QTskNbFltqC49tYTCJaDzg0LL8jLzqLinErvkIynBUVXA/Ozkky0Jz2DhSCoqCsiCciww/KkrTajEmIvqoZv4/A/eGQ7m1VYXI4Rp4VcBwfT934NG7cegaqrmHn9g6GR3sy/Hn70lNQVR2LxQiGYSGJYnTqtkwyKqpT9zLheQ0AWV7w3FwdRqlT4IJp4HBnF/P56EPrx592fGSizeOyB0FXSqMYo0cKgm4AYd+VzBNMDicoixx+m2x2hJZxeWsJbsvFySOCWKqqgKYZUFUNuk5CUN0guIC6vlNnfo9Xsoapw28HmJ3MMB/N+abioqkpySPmg1yAKLkNo6Ery9i581CgIAwHYKxCukjh8ngcx3c4NEZ5fYwxyod0TB6Wqp2adFdUwQbdQDKdNINcQkTIK0BxW5qhcX0dfQ/N0KBy3DtZJFAiBW7gYNBto9MO8Mr/+x3ZKdYVQ5HliGbk22g5FtJFClZXME0H5wNQG6iqhiyLMdwdIo3I8Nj2HVi5JathABgdjDE7IcePznIHuq7BMHVouobx0RDjoyFmwxniH30OYTuAw6vDg9kUB/cOMdwd4uDuAfYf7iDPE6ysbeHjP/YCTIc+x/YsbN+8iFe/8gp1GXkJL/RQsxo2J2axqkYyS7jmK0dVVIhndA+bcxUsHawqYVoOZ3bSfX70wR4vghj5L/LE+9nJHGVRYrAxIC2doaFmNbyWi+5KF6trV6AePUCeJ3hw/y3E8YziqRx6Kcsyx2BlBZ2VLrqrXQkNlnkBVVWgahrSeQKFO6IsX6QcuiIlIbvf9okIUFOB1rAaiqYij7PzNPiG8v/iWQIoCkV7tRzkZYWmoTy7rKROjWQj1GnPkgTJPEbNKNl8aXsZt1+muJy7r9/FG298DU899YN45oeexcnaCdpLbfgBkTL2d49w/837OHp4BAC4eHMbF25scQ1cLjW/IjwbAOZpJl2o8rxAkdPsnpUV/HaIxXhxDo5TVHJzyRJCE3RDIwKKRc5Kwu5LkMsEXN80DcZDCoL2Qg/tdoDJ4QQP33kIVlY4fHCE+/fehP57Fta2N3Cyd4Lh7hCH2ytwAgdlVuLB2w/w1rdeQ6vVw9WPXUM4CDEbzsi/lj/Hgh08T1IoqiIL6oQTCZumwXB3KP02zx5lXmK4d4L2cgdZlMJ0LKiaynWyhvz3M261KJyNykr49bpSAnTjkzcQzSLYroN0kSBPcixdWEKRFUgXCTHxOdGnrmtYFgWHtwdtKccSnAlhU1nVDLOI3K6yJOOmKyaKrCASIo9tq1lzDkETzyrJrgCmMJmTOk9TtBwHSZ5LH1QRoFBWFeZphocnJxjtjzBY7yPotqCoKqL5DIxVGCyvY/vmRfk8mJZBHsw8o/ZG5wU8uvcQZZlD03Rohg5VoyzIEavRawUSdpYjmKJEkVL+KM1IVTDGcHh0/0Nrx591fGTxPjF6zm6MBizPRlEUWMym1M7yzSyaRFgsxlhaWyc4ztBRlRV0Q0drEMIJaPOpWY35eIY8T1BVOYqigBt6Mr26ZjVdFJXcbYqshGkTDBoOWkQBfkQCUVl185srMGXBaNVxPl4JoDVJ03QkyZy73dCmbliGZGBZLoXFtnotaWu0f2cfbuDIjiOeRrJ7BQDLBYqM/n+Zl2SxtEgR9kM+C8zlBm5aBqCDm3OryGIVeYucUrafvoid2zvweOfc1PT7HN8hR/o0R1WVsCwXiqKdO7GaVYBCUVPzByRraPVaZIJg6KgrhrpusPveLoK2D6/joyxKqDrpQd2Wi/7qMl75499DHM8xPhxj++Y2DMtAZ7mD451j7L23R5BuNIWmG3DdliwoKs4AqwoVjmfDCVw8ePsBkkWC9qBNwmF+zWoOTdfcRSSex8jjjODG7zEo1w1TpqFUVQFdNzEa7cOwTBgmubTopo7R/ghFWmCwOaCQ4LYHN3Dlc9BZ6WDj2gaapsHJyR7iaIr9/TswdBOe34am6Xj6Ex+nRHP+LAjURCxEuqHDdCwU/N77oYftm9s4eniE6dEUk8MJuqtdVEUFRVWgqgoU4XB0Zo0VG0lVEKQ1O5nRvN4ifWhRVXBNU6Z2iBSSeZqiZg3c0EU/bMEydPxJlGJ6RHq2VquHR4/eR/t2B+PDMbyWBzdwAEXB/p19HDzYw2RyhEvXnoKqa2h3if0sU1xMk7sRKZinqdRQJhmhNCmfTRV5iapkONk7QnVGG6aoKhiH8HVdw4zb9pmOSRZzZYmCs2lFUoelk/F+kVFCRb8XomU7WLm0gvlojsP7h+iudnE1exHHxw8Rx1N4Xhudfp9E24aOZB7jcGcfrhsg6LSwvLUM33WQe4QwqYqCjG9yUZajKkpelMT8vCgTNk/o5zX9cTSG1hgxM6Xwc5JpWI6F+Xgh4eKyrDBNEs7o1eTcTUCRWVnimU/cwOrlNeimLpMdGkZBxbZng5UVSu4+ZJg6BpsD+T4bpi6fKQXcEAWgRKJQwOMEAAAgAElEQVS8hKoqcn2hJoNMMOh5q2QnJo66rmVeYdM0QFGhKiqC1/MCJZfBEaGNNKdCLibm+b21HlbCEPVmg+svPYlvf3mOOJ5KiYymqeiudNDUDaZHEyLFcOg5y2KYpo3OSgde24PBEYhWvwW0SA6XlZSeUVc1ijSHqmtQSiaJoIqiIM8/bH/5Zx0fbaaoqjLpWArX0wJVUSHstxFNIlRVJYfs85M5ltbWsXZ5DXmSU4XMCTK6rsMMDaxdpoTm0aMTPLqzh0U0QZbFyGJHMqIoiYPnEnIau2kTI6m31oXX9rG0tYTx/ghv/dF35eLFSiaNdxmn6ALgjKvzHS9jFSzLxfHhDli5Dt3Q4fgO4lmM2XCG9iBE0PbxxMVN3Ht0gMnRFPEsxvuvvi8hZdMxEfZD6cSjqgpUnV4OsdiF/RbiWSw7CMMiirNgQxpc57N+dR2TyRz7C6pcL97cRp7kmA5niOfk5GI5Fm5/+7tYLCYIgg7d0LNpEmfe3bxIEbQ62Ll7B/2NPs97IwnK5GiC9WvrNPuwLfgdH0VW0GzC0HHtxWuIJgscHNzH7bdewRuv/REsy6HuuirRH6yjv9HHze2nYPsOh5orLCaRjMFRVSIvrV9dx+qlFYwOxnj/lfcAVYHP58FlXsourioqScwwTAMffPet7/lMNrwbBoA4nmIw2MTwaA9u4GJ5axkACclNDguKZypPcrT6LYwPJ2h1A1i2ibUra5gcXsViGmF+ModhGuhv9DEfzdFZbiPshx/qci3XQjyNMNwdwg1dGXhq2i680MXmk5vYfHITe+/tEYpS17ICn4/mcFruuY6qrql7He4O4XcCpIuUUJC8JJ9ML4dpGVTgcVutsqiQzBKEgxYuDoj5WlQVfuIvfxZvvPYu0ijF5fFlTI+n2Lv7EIe7JUzThq6bsF0HKxeX8dxnXoAbOKQNbnsoGVm9ba4t4eHeISaKIrMCAQoQFzFB0YTg3iItMNof4e7rH6C91IXlnKZJqKoCw6ZcO+E1OjoYIVmkcHjWn5BnqboK1NQxjw/HsD0bWxsraDk2sqLEoB2i/dnn8f7b99GwGls3tvDgrXXq7KKYTBVOTmCaNnorPTz54lPornQo1Hq5jdksghd6mJ/MkSxSyn7kC380ITJHGqWYHU8xPpxQhyZcmlTlw6gFZ15XRYV0QbM627NRVwymY1EhYOgo8pIKv7yQuaM2d0EyDQMaI+MI3dSRzBK0ugFZl8UZeusq6or01GLDzuIMtmcj7IeSXWtaBhSN7NLyoqSxU5xBNw2ye2saVCVQ5CXKrESRnSJpNZ/tytOqyahA/F6AiJZCBrHQUpiGjuF8jigzOdkOkni11m7LEcn2YICrn1/GzRevI0ozGLqGo91j6CZ9X9MxsfnkJtIoQzSLYFoG+hufhB96MB0Tmk6oVRqlcFsOHh0M4YceEj7zRdMQf4TVcsxUVQy+76AoMjj2/2+G4I2s/sRODHCsOSulFZeiAF7oodVvwXZt6KaOg3sHMG2D5n6mDsV3oKg6ZbJxB/lkcToPqWW0EM0gdVOXejzxIFqOhTRyYTnUxXltnwgNeckXdI2qkTNuKCKh4fHzEgvTfH6CosjhtlxO5skwPhhRKvZ6D45hIAwDGqSXFRa9FlVZVYW6qinR2tChm7q0qmsP2uiudGQA5+x4SjdwziSMJmZMItjUci2Zcq7qGnkZTulliCYRCeVHczza+wBpFqEVUJDsuYdaOJ80DYoiw2B1FVbicvcbDaquQlFpvpPMEvnvHN+GolKHbfOOb/vpi1A0FbPJCFlGC4fnhuiu9NFZbnOGmCcZX01DVl9ivdcMHaZNkI0TOJTxaJt4/WuvY3o0RXu5DdS0uNT8wRYU7sfnbt/rqLmrixs4iGNXSlFavRZ6q10c7xzTbFJRcLxzDE2njbtmDRSVRMamQ11gax5L42fHJ9cP23dQ16f2hYoCHu5MXTVjBJ+LYkskAwikY+nCEvmC5kQgEp0sdRZnCzSFnoeKoeSSImVO3rxFmsNOck5mMz9EIOv5gdwQRQXfXqIF0/EdhP1Qwru6qaNhNTorBAULLWuZl0gXKQzTgOaTSbPt2YgmEbIoRVmUBHXxz8yiVBZ0WUwUed0woWnnHaYa/r6WOc3Eq4aKHtulz3RbrtSkOoHDZRDEEu6t0bM9WkTS/i5OMwzW+6gqBmO0QHetR2kJvJidHE0oXFtkPpYMyXwK27OgtTUZYj4fzSV6pfK1oyorxNMY0+EM6SIBq2jsUtfE3nwcPgVI2K8o5DClmzosx5TrDDHxmZRzaHyuV9cNmGDocvN2XVOh6zp18eTFBwCwHJOT82hdETNBVjG4LUcWIE3TAHWDoqzIo7Sgzl1RKeexSAtaU6uaukRe5NHaoTxm89agzAuwijgVpmMizwoYjcF1gQrS7DSD9P9j701DdcvS87Bnr7X2vL/xzHequlVd1VXVLVkttUwgCcSOQWDUBhkHhOUkYAcpIgpWIjlWHDmWguxgQ0wgZCKYkPzwj7RNAvpjy45jdUdTa2ipu7rmO51z7z3jN397Xmvt/HjXWt93zq1udQkUrEYbijvUued8e+81vc/7DBu/Wb4xU+g69KIQk9UaMIYYbd1AKcrj9AOBKq/gB2Q3F5k2lc1LFIGPKNu4VGmjalBSo8wrk6TE3IYojX+11rSma0Oaulndf6vrE0dH2Xil7Ytxz0CdwlWS6SBBmNx2GrPLkxWaqsH4cIT+7gChWTSsq3rcSwwsGqBcUT9F+JwozlvOBJ6kkxqRAUL09wYOIvU8D+NbO9CGxAIDgzZl7apE1zjeugeiKgvUdYHlcoLJ5BS7u7fQN/3R2fkc6fAKALDa3SET4SxGpzvs39t37FA/DLC4WhCc10poRblmIhDI5zm0JseP3rhP6dvLAh2nCCTWox5EvsxR5RXOn5xj52iH0rM7oDY6y3xJhCZdajx7cIz54gJCBJjNz3FwcO8akxHooJSE4DQYl9MF9m4dQknqtwmzYVu2VrkqsZquUK5LjA6o8vQNQ3Hv7h4Y81CsDlxVkA5TOpkyhiC6njHnm4q1XFMPI+wI8o2MmwXjHqI0wu3XbuP88TlBkYOUnIY8D/kiJ9ICZ1jPVsjXLyZnd11HGYGqhRCBq+KO7t3F6ZNjNNVdBHGA26/eQttIrOdrszA3WE5XKFYl9u7uGUYyLWDcaK606uCHRLUfH+04qJoZZ34rN9JKOxH09HTqvoaia8YQvoAwm7PtA7eNNCnlApUhc23mmHFw4dw5wmilMDubIe7R4qB1B606V6kpqZANU4ICTZan/X02orllNy6lyD4rjAK0jSRvYZ+76qetG1O1N2hCH1Jr7A4o7eLs4RmKFZluWIq93eStsT0Ap0e+tk50hsyhtfOr7Toyse+0dpo4u5FaOD2IQ8rINJ6ySmkM4pj6cZyh55M/pu3ZW1RJBML1QblgKJaUGNE2lB+qpEJ/1ENbNzh/fEHP3OdQrUKxKgimNGYfHmfw4Zu1jt+YYzDvRDvLQ4vA2IgpEfjOutIPfahWoilpowyiABWzpu0KjfTAOUOQ0rvOoghl0ziGZy0lLoKFI+bZeSAC34QIdwA6MK3R1o2TM1l5FAAoRUiFktrwFLQ7vF1b2TsKTg4i32UThnHowpe5T2J85nlY5AWicNMX5oyhNGlAq6p2OaCBoDZD25BoPzT/JkpDDA/IC9X2DpVUYJzWexH4YJwgeNlQiLGFg4M4MBmexs2skWibFtyESRA69O1vdZ9YkrGdkmF/VdIMWKnBOYMfBgiiEOOjDEoqqmwiH+vZGtOzmWPgpaY0tozV3ds7CCIf8wtOTD3VQZssMvvzVUs9MpvqLFuJ3riHICSNZDpIEUQ0gItlaU5ocBXITcNy9321RFXnaOoSZ+ePsb9/D7tHB+SJWjWmuuB4ejWhE9KygJQKh/cPAdCEAsiBPo4okd263+z3+y6fsZESZ4uFMxIA4Fx24l7iGG+2AU2fjxiq6/naMFUlVpMVnjx5h3qeIsB8foHd3TuIkuvG2ZwLQ9gQKIoF9sMDrGcrHN4/RDZMMTwYYbQY4eT9EzRlg7ZpcfXsig4kgmO4P4BsiPV29Ootlx5erksIwTG/XCDpJ4jS0PRchKtCtNJOyjI7n9HhJovAfQOFrAr0RhlBwUlo+sVk/C58IqcUywKr1RzPTz+6dl/2/VmCjVItsSWXCwz3h2BcYPJsgtuv3UYaUobc2WNiOQ/2h4iyGPk8x3u//i6mZ1NkgwyDPSIDhFGAnds7qE1VFhriBECbpmwl5hdzgxYo13PyTL9SS2WYq/Qu/ChAOsyIfGIK+XyRY//ePhZXC+d5SXNpw0z1AwHPnO5t5dtUhHy0TetcYqI0RH/ch+cBAeNAEGC6XmMQx5gsV9TDH/WwBDDYHTiGtH2OFDDcuGrOD4Tb9D3PA5IEL+3voVgUePT1h6Y1IVFXjYG5icAlTSXOBbsO44P69kmPNkPuc/oekaQ80apBIvW1DbFcFZQ1OMqQGjcley2MQfV0voRWGkkUor/bp4phXTpdYZQSStVpYpAHMZkTNKba0V2HvYMdXD2b4OLJOXZu7aKpamhlDi4GuRJGDG7RCnUDPt2EIxCz3L6/tmld9p/13mSMUX6qR5vlerZGEwcuNSOJI5OLCfSj2KWv6K7DOMtQmA3SWliWNWUz0kau4Ed2022Is9BRMUP6a0qt11KTNGhrrN0MSdi+tOqgpXYMehYSsQygw0BdK2gzhrUmA5ckjeF5lKrDPdogLXkqi0JIo2+Og8AQ0XrIRpkzEFhcLQz5R7lCxvbrZUuVZFM1LkWJVAXKwbsWgfskon17fWJJhmxaZ/PmvokQkEbHopSGJ6U7FSU9Goij/RE8z8NqusLxu8dYrSZI4j78IEScRbSI9BJa+CcrFOscSrVo24bsvJRCkvQgZQulWlRVDikb1EWJ0cEOeuMehvtDBFGAbNiDlGaybr10+lU5dtLNq64L1E0FKRtMp6dYz1bwzQZ7eXIJIbjzXLUVMfUBhesrcp9cMVopwQOfPDpn82uBmllEji+rqsJ6toJqpWmSe/ADgbRP0Svzi7mBjskFYno6dRE/z58+xNnZI/R7YwA0MU9PP0KSDK7dk9bk6sE5VcI2i4ws9CIEgY/RnX1cnlwiHaSI0hBN3eKD3/oQtz51C0FEpBUbUJoOEgifO4auHwUGJvWcuwUdMjq0+SbXrS5JX2l7ptkwI+ZpGuJgfwQlFfV4lkRs6O/2DeO2vcGovX4pJV1P0fM8rFZTrCZjZP0BLp6d4vLkCLdePcLuaAAmOGZnU9pckoZMlF89wr/84j9D3ZTY3b2FbNTDYG+A26/dhgiEqwpsNd1UDap1iatnEwSRj6Sfwg99jG/tYOfWDqEEdgE0zyJKQgQ+UcTLdYUqr2izTUIsLhdQajNxq6owZA/hIF0Lu2pJMBg30WqrKUHeURZvsgjNwiYNQkMRYRRVVoUVMEwd+aYuyZFEBALFskDAGTzODFS4gfxs/udwb4D+Tt9tqm5hbWlMtk1rWgbimhxje96lBmLfDom11QE3NmB1WUO2yvWxrC+vvVopEYQh/IjM3gdJjJlxjimWBHdatxTGGOq6hccZuI0q07SOtRWlwQz3h5g8n4AJ0pIyzqEVvaNiIR2TlOaTdqiCvZzBfNUgTCPTlqCWiIWH7fOo8grSujmpDh7z0FQ1ROAjHdI8Gpos0cvVCr/9O+9i52iM/Z0RjicTzK7mKJZkJjIc9BCHAZZGisAYw3q2vmZDZ/vynudR3xF08FJKkXlDIJyMR8nrUjULucqmhQoJ7vdDH1oDrOuonWUrMcEdpN5pDT8MXN6ijSiLAh+t6ZvGQYBxmkJwjvUhrWEv7e26yL6u69CUDfLFmsaica2hecWcqYI9fFlXG2vJp5Sm9I26QRxlaJpNa+73uz5xnqII/Bd6BTYux/NIs5iNMlw9JbhxfDhCb6cHxj3c+fQdsmibrvD2l7+OJx9+hGqWozujinBv7x5cp9bzUBQr1HUBIXzzq0C/T1qgbJg57N9OUtkSHCSlOSmZ/hxANGU/IJNi1cprRBv6tw0mk1MUxWIjY7h4irqusXdnH3EvxtOPnsKPAtx74y52bu8iTiPwPsfV00uC5Rrpeo11WSNKqCqq8grpIHHxLDbQtSoqBFGAxLBwedchiAj+ibPYQC0Ki6sFHn39EdrK6p4k3n//K1gsLtDrjRCEETwwSNlisbi89soY45CmigrDBM9PHmFv7za+9qWvQevPEvS5K/Dq517F7HyG3ihD20jc/+x9tHWD5w9O8cFvvo8gDpH0yUBh7+4eVXi9hBiF5mS+nNCmZg3d4yyG53no7/bRG2XojTIEUejgyq4D9u/toetARuwFkX6GByP4oY/p6RQffeNtSNliPr94YTgq2YJx4SaRUhJxnOHxg29gND5CFKX4jV/6MnrjHnZv7WCwO8Ctl48wOZ+iCX3X8/nCj/4QBa8mIdqKKqaD+4cQviDzgHmOo1eOKLV8OMSqqvD82YUzK7fQXxAFECHBefmc+q4i9JH2ElyeTnD19IpMqT0Po4MR+Vi+93uI4o3zS9vW+ODtr+O7vv/zVHEJku9YvaxvyFlBFCDOIojARxD6WC7WOD0mkX5v3KPxH0cmp5Ns2fbGQ0xX62thskQUyl1VZRnmdVGbA5iHdVpiOllANhLDg5FrcRCDUMM347kzvX8KzPausdTbpsH8Yo6Dlw82/SIjTeI+d4eqKI2QDlP3mdqqxQcPTpAvc6p4d/q0qRo/1ijwsSgoe3CyXLnkHhEIJ0EQgnr7RKQh1xPfIEur2Rp1WZOsYX+I2pCxrD+oCHzHNhc+B7rOVUk3r2pVIowCp6+2UVlBFKDTtAHaiq4qKuTzNZqaDhKWF/HOV76GyeQ5imKJIAghRIjhcA+ex0wh0CJN+5BSYrWaYLWa4t/40z+IKIsp11Aw499cmvlPVXucxUgGiZuTduPc1rVGaXQtTcJW2DDJRNKsm6T3lI6xGoS+059aCLpcV469zwVDf9yHYBx7vR56cYxpnuO3f+89evZHO7h9sIun0ylO3j9BlEbIRj0kvZj6mMYlyf68+eXcHNRJfhHEgZNI2TabJdRdHF84udq3e33inmJjFg17keZlk5yhWklOLr4wk1YgSoi4YaHX4f4Qr3//pzE+2nE6GGYCOK09G+OmUSu1c20ByOldGNIGY4wEtaZEFoZQIxvylNwI9s3p2Zxst0lC25fWVBVwLtA0Jd76/u/F7/3aryNKqD+0f/fAiOZLxKsCngeMR33IgxEWF3OnS9RaG4s56XqqTo8TBa5noXWHtJ+SxRJn4CBdjTCT0GoSlxOCieJ+jGJRoFjk2N9/CcvlxEHBnkefu222zYo9KLWxb/JA+Y5KaSyml3j+0dgRBPb3RyhigkADU134YYCXP/MSRgcjnD0+Q1u1kI3E5fEFJs8nbjNXUiGIA2RDYpH6gXCDGqBqEoCTuVRmIloIaTlZkg7LWOtxzrGarnBxfI48X2C1mkLr66YR7p68TVI65wJaK4RRiuXyCoL78P0QZw/P3L/bO6TNcTVfG9KHdOOHC454tw8/DPB9r77ifFMn67XLHixqMrTu7RCL2FZvHvOIYCVIZxuYjaHrOpQ5VYet0fMlPSI7zc5mGPT3rkGNcZxhNjuDlAqxqbrCOHSnfQCmT8bRG/c3MoiGaPfC6DKjjOB7EYbOE7hRCv00gbhNBxJLjrHvujMMPm4+PxnkN27udF0HLRX1R2drFKvSyaVqY88oBIdWCl4gsC3AbNsGV2dn2L29QxrYyKeAXQbHpBWBgB/5uHu0j4ftM0pgMBWB1cq1TYswCkxiBmUnSkVjvpcm4IZxPD2bkmbQSGjaqnUENi6okrXzsKkJitZKu4MtzT8NHm2M6Tm+Oa3f9u1qA28rKYmstFUxW8mDdTRaXC7w+MMP6f/JBvP5BYpiia7TxpCiR8iBrA1MSYHFeT6HlC2EoHX3N778z8AYx3C473rrdm70emMkGVljbpPwbiJoduNvt6LNOju/zLpN0icJ3jKIwN+I6Y0sjDEGtVYmJYVTH5AxYk2HFaqiwofvP8H543Mcv3uMd7/+m9BKYbxzhLuvvIrZxRSLxRUYYxgO9/HZf/OzjmRFlSC9m3y+qSaXk6VDaCho2AM09eTbusX08gqex9C2N0zcv8X1iaOjRCBeIKls9ye4L5AvC9IIrUqnL/RDH0wwBKGP1ujHdu/suk1zsDfAvb1d1Mb4V2plSB+Uf+hxhuXlwn0/21Dv7/ahpHKniaSfGGNYIrV0mvBmITikVI5hpvXHwaclfD9C01RgTBBN/9YruLp47liMzx+curQNzjnypHYsN9UqglINLEgbpPEAXBRom9ZVS5Yhq6SC53PX4LZaIyUpeHh6NjXaIoKW1rMV/DDAYLDnBrlSykFeHrs+cbc3C6UlfBEgX88RRamzhIrSEDu7QwzHfbTK9HmK2hEb4izCpz73KRJmj3p49Q4lIHz1d9+HaiX6u33EvQRxFBqhtZn8RnDuh747uTHuuXeQDlLk8zWmpxMUixxt1Tpt4+JygfPzJzg6egVnZw/BuX9tYHcGTbiJWnieByF8dJ3GZPocg8EeHn/jIdHuPSL3xEnkqhsmOGANHsypXbYSl8slVlWJRioX1Ku1wLwoSIu1LFAZaMoufEEcUM/FnJhtb25+MUe5KqB15yDBYllgcnaFo5fu4e33txnDGtPpKfL52kDMysGNtj9iWbLDJMHj9XPnOWqJFDS/fExmCwCbJPSdXoYsjJxRcy0lHp2do1x6YIKhNNmcWirUxrMYoMXcwt7KOBVtB1tbZMRj7Bqz+3qLosN8fo58cR+Mc3jrEnEvgWAkWSLSEhHAsihC3I8xO53BYx6qnNyaCtMSidLIQZq0yXHs7gwQ+T4Gpur2mIeLJxfUV6paFyVkq0fGjFbPGHl7jBH02lJ/jnPmxhgAx5lgzANuFIqdea9N1YCXnPr6BpbkBhGxbl7CF1hczlGsCswvF5jNTtE0NdbrGRUMw32EYYIk6WF39w727+2hymucnTzDYnHp1t66LhAEMXw/RNuSTvny8oQOhWGCIIjgCyocqirHzu0dxz4VPr/G5ibIk2DHtm2u3VddNhTEIPU1AicZVjDH8yDXHo71bI18sXYe2baImf7qO1jN1jh59BGWiytC/vwAWTZC13V49vixQ7nCMMHx8bs4++IjjMeHuPvaS4ZoQ8SafFkYmQsnJK6ojPc1matoSb1FLhjm8wtI2b5gdv6trk/saKO1djThzRMy6fDmBzPGXIoDQAkCmcHLLa3dPkybiryerfGUMbpxQ9tuKsLiLVvJSiusnACgwdbWDVgWGzf0TURUsSoIt/eoOe559FDLvLjWp/I8YjCGYYy2peSEfm9M7MSX9lEUazx7eIx0kKI3yrC4XLg+WjbKjJaOTp9RFkMrRfANJ4apJRdEqRG4SsLm7QYhAt9o2wL4IcEU5arAer5GsSBCDueUCOFxhmSQgHOBOO5Rz5DzFzZDusyJEZtKSqrWTfb1egbvA6LnH716C4FPCQoAHFMRgPNIhDl172QZDgcDHAwGzjQaAOZFAb0zcHZLxSIn6YKlahuHHMaV6yctJ0vMLxbUqysqxFmEyekUZ0+P0XUKWX8AIYJrfTd7CUEaLzJbIAKW53lQsiXrvabCbHqKVja0EBuz66P7h1t0+c5BScpQ5eNegsen50TxNobr9oBDeruADjOWIc3YtUVGGrKBYgzFMifiyJqgcpIJtVjP16iqNXZuv36N4NA0FZqmxHI2J9E3S12PUficTuVFjTiLMM5SPA0E6rxyJJPVbI18kYMxD71x322oAJANUzrc3d4lBnVR4qPf/tCkhcBVswDNFz/0yTDCIBE0x4ko0taNIzgQw1HDD69viNstCsY4VsspylVBVcuWDKnTNEbyRYEoW6MZDrE76GN5RfpM6tNKrOcrzM7nmD6fEKxpetsiEBjtjxAmodPsnT85x/mjM3P/AfJljiD0XTZfb9zDzq0xvTuzBtRFDSnJtUW20lXwRDCktUvrDp66kdriwQVhb5xnGERKXAPLrvXDwKEj1unq+47+FFWtS4JV7YGHc4beuI/R4QgHLx84KVbSTzB5PnH97XJd4vlHz9E0JYQIwDnJOfwwcKkTdV043bTaUhBYokpdEPGHxvjm3jbyKkIQhFnj4HluPbWsTyeTWJeYPJ/i9OQJ6po+U9OUmM/OUdW5GVsSnAt01RqybRAnPdrYW2otaK3RNCUmk2eYTk9xfPwusmyE8fgQnsedJCwMYwx3d4gEJJWTiVCPk6wr6ypH4IdQ+kXG8De7PvGmSIPoxsZofq9AC3QQBaiKCk/fP0Z/PCBdnMnaokEGR01fmtMoYwzzy7kj7QghwAW7pjH0PA9xFjnGnGWfAiQLEYEgy7crguNIKG0XTYJRuWCoqvW1RAnGOOq6hJQtoijFYnGJz33+z1A1KBgO791Cua7w7m99Da+89Wk3YPLFGnEWIx2mxgEmdHqhwBfIjYar6zqUywJKETs3iAMwTpUEVbwEvXVd54gc8wtKc7CuLtOzGbIhpWzEWYwk6aPXG4N5DJzbQFzlSCf2M2qt0MqNRZ6UDTyPYbG4gOdxTKenmPzyM2TDFPfeeglFIJD1UnfKJ6gCqAy06TEPv/7O+4asIE0qiXQwi95aMLgvwDl3gnSA2G+WLl8sKLeSFiOJbJjh4vgSxw8+wno9w6uvfzf27u7hrdm/jvV6hsnkuqmvNH6gXadJmiEb1BVNvA4duk7j9OwhXn/9+zGfX+C3f/kMVUGaxzAmoouWVN3Xpj+Rz3Oywksj98ycXMMItAE66I0ORw6yZ8axBSDYWymNarZ2FoRN2SDpJ2jrFvPzGZ4+eIwsG2G0P7p2T13XkXlFlePxew+xf/sI6mB+eIwAACAASURBVGBIxAWTNjA9myKfr5EEIW4f7WG6WkM2EuOjMVQrHX390dceYn6xwOxsSkYKjUSxWqODhgeGKE0w2KWA6964h90ReaMSBO6bgxtDWzUOAo+zGMWqQL4oXC//4vgCIhBIgm09WXeNkMIYx8HhfTx5+AHK9T30xsQ23DkiCF8act7k2QQPBFVbe7d3sZytsH9vH8UyxwH2nTPO5cklnrzzBM8eHAMArp72wRhDOkiwnK4wPhzj8XsfYe/wEMvpAn4Q4u4bdwjRMGYBspGO4CMCgfPHZ+RcY9yUtlM+6B5oPNw0/rB6OLsor6Yrx1DlhrjEOEfbUJGQDTNEb5FRwdGrR9Ryyulnzs9naOrWMcEnzyc4fucJrS9R4FikVvcbRAFuv3bbrYmBObAl/WQDiRqDhfnFAh7z0DZ00AhC3xygqDB5+6tfuSHe17g8ucRgd0BhC2berGdrBHFALjqh79jz07MZrp5eoS5rZNnIWWdK2ZDZd9pDEAfojfs4evWIqn9jZVcZ+0wlTUpM3eLq9ByFgeUBoCzXGAz2IGUAJVtIKVEVFQ5eJshcmopVqw5Stnj03vtY5/NPJMcA/gDsU3tysxdjdGqwkgQiPCi0bQXOfeTLAolxYADgGuD2spqhThONVjPjUK+IIeUZaEj4HNmoByU1ROChrRsjYFbkMmEWaRsJBMBpzWyPwEIlbdtcK6cJAtZESpHk9rF3m5xMuk644MzBaBfPHzxFfzxANsqcVRhtwDQo7+yMoTpNIuqWiAoWTvb4ZjG2G6LPCcqKgwBlYwwBZmvaDIsadV5hcjpB0iOpSRgTXBQEETj30ZmTHW34PoTYmGzfvFarGdBplyVZVSuE5vtcHF+6PmDbSEdKYoxYdeWqdK4wAJw4Nl/mSHrkymIxf2KnpuRWYSpFC61rqdBK5SC3Kq/gMQ9pnyrv9WyF+fwCt2+9huHeAGEcoj8cYTy+9cKmaKt9EutucgVJnybQdQ2UbDGZPMdLL30G+XqO6fMp6k/XphfoQWwd1qwms1gQNMrEpgoMDDGEIGXlbAu3ISUAzl8XABZmwmszP8oVsXAnpxNw4ePw5QN47DrM2HUasm0wGOxiNrvA4mruxr6t+GRDYvPJdAE/9F2eaZxG8H3y0JStxL23XsLdNzskcYSqbnA0HmKyWqOsaFxp1TkHmU5pgks9D+WqJBF9FgGeh2SQuvnLfY75+cyJ3AHg8vIY/f4umQMYfoA17t9cHnw/xNXVUzdG/dBHY5ihndJUmTOCce2lpUbgC7BRD7IlroAf+bj35l3c+fQdJ1OaPJ9ANi36O32ET6+we2fXGYhU6+vMQ2sazQQ5LbXGRCFfkDuK1hp1WbmcV1slsm8i3O86E1ogFRFApEY+X7v3ZSUsnkf6VSWlIwPZd0f3SmO4KUmWtJ6t0DSNOch6YB5HKxsEQQTGuJG4kPzHPvMgCoz43bKUGTnuCIZyXYEJ5pjkVV45pK7T3QtaYK0M4qEUREc6RiUluKB5LBlz/fhs1Ns4P+0PsWMi3AAi89jECq2063/bz2vbYfagEsQBwbyCQ8oDqNZou5mHuJ+gXBbIl4VJKopQFzUZ2Bv/Vq018nmOxeKK3p/H0Mg/pDxFyy56AT6FpX5vYFTONyzVKqcmK+Oec5khPZBGNkypd1gQJMOVdrCFPcF4bFOud4YdZ1MrtNZQtelhGeiD6Ly1gyftRM3nudv0rnmEAq7CIahEkLnAZHNKCWJyY7k8f4rlkpi1d9+8h3RIVVUQBfQzxwyR8FE1a/RTa3aujJzFSC9MLyTyAwScIzTswHJdoqksdNzg7PEZ1suFY+vRRrOpVpRqkSR99xmpQX8dJug6WmxuOsJ48JDnS1RVgdc+9X1YXFJslH2H/Z0+ZFuQMLaRUFIhX+YukosLgoO1oeR7nnfNDssmkHuMoK+uo0lP8UkSVVFjNSUCkSVZFasCJyfvYzjcx+hghxyKfE6MSiM92b6kbMEYdxsi9YLNOOw0QeHo8Pjx1zEaHWB3/5aDt3RCFna8lxgHInpGw70h0n6KxRX14+zC33UwWXmAgNg6BNJn4T7f/J0hbBB8taWl6jo8f0DMwqN7VC3ZMbd5X4DuiBASVxkWiyv4vo/d27vuWdUFUdGp10ba4Sil4GD6Hh0qUJh313XoRiRiX5YVXj86osDeskTdtvCFQCslpqs1slEPq6nxJA1910/rOmIcaqVRrUsy/lbEoPQDH7PZOTyPQctbDvG4viHS4dkSQ+bzMwiTCGE3W6q2yOyiXBV0ADRm/IJTsDECcsp59PWH4EJguD/E+HCMz7z5CsqmwdViCdUq7N7ZowXW9EIZ93D68MwFjnea7NKY6YGKDlSxlHRYsMxNR1hhHuViSm1cl17sT20fbLjPkS9yDA9GWM/WyEYZZEMISWBINswcxgiNos2CCXIPUlKj6hsXp5WHelGgKJZgHoPHOOq6gO8b/aJWSPsJeqPMaLQD52JDa6WHcl05WFI3W/pT87m1okKmqvMXevRW3C+N+QC1PzqSPIDmtOUNDA9IdmcThNq6gWyVMyzoug7SPE8yDyANOxcMzJDrtIGhrQuTQ/qkPfx3RCILfIfCtXXrWnJWDbG4mlN76Oap9du4PjF8+nEbopSt6e21zu8zCAKUZY4kS11eFxfcncaJqsvRdQzpMHMvrdOdsSJiTmekpNqCXsmyp21a+JHvFvuuI3Nba/5tzZmleWBt1aJtaqzWMwyH+w4KoX/boQPJSoqiQBSlLrTYY9r9XD8ks+vVaooH738d8Dxn0g3QCXRe5MjCiKphDfhCYDDsoa1a+JlwhJQ0DK9tVEVJjjLVuqQUjNkap88eIctGiKIEaT+hqCnz/Ou6dDILxjiU06ddX4ysXKbrNG0UsoHvR5CSTqDnxqggShMsrhbuOce9BH7oQzYt/ICo8Ov52jiNaGNMTNooLYlYtGrJ6JiLTQVlSU5KKjCjxazL2rmFiIAYm01JRKkwTNDrjTHcHzq4USuNwL/umLM99rpOOWsoAIYsVaKqKJJnOj3F40dfR5IMMNofO0cYZdJXYlvpmoU8zvrOcaU0tl0WCtQmHs0PyKSgqRqk/cRNSrvxb+D7Dm3VwOMMq+kKZ88f4869T2F8NEZ/t49vJsEMohBJ1sN6NcNqNUexKq9BuoDRyIa+syizzif2EqbfWCwKw4iuMJst3WkdgOtx2haHlQ3ZSbXdviDvSTKSlg3pkleTJbRWaJoSq/kag90BoAHtbQhINH8YwjBBmg6xXFxiuZwgy8bm/SrDsIWBUQNipJreV1nTwXiU0gFUSY0qp5Dt1XSFWX+Gt964j1ePDpHXNVaDDFXdGCN66ay/LG/G9t+54BC+cIdQaaqe8/PHSJIe+orcspwBt13cPyaxhZt2SF02jpTU1uSqsu30Y8khlvVtoVerCWXG69keztazFYQQ7kBhF33fJ31pGCWIerHLnd0uTpq6JVcvE61W5RVluhpCih9sxsr8cvYCymQNHMp16dA3+xkYYxs9Lqf5HcYh/Ii06dvkS0vKWs2I8T2/mDszAAt3xllEmzfIZvKm6D6IAnIpc2ORwY98VKsSymyGrkXUSsxn56532crGPb9v5/rkeYrWS27r2qbFK0VfYyGsxWwK3w9NM9dDGAcI0whxkLhTYhiHTq9nd30rw4izyFmlZcMUjFOklB9uSAtSUm/RMlAtzZgW4MYlcHiehyTpkX7wGktOQ4gQvd4O6roEN9o3W7G2FX2mdJiiLkYQ3EcrGzz68B2s5yvc/+x97N3bR5RGODu9cobAYeCjWlLPtG+MwGUjEfcytEpiXdUufZ3E4UQOOn1wipOHD7C7eweD3QGSXoz+3sAYnLdYTVcGstpB4IcoqzUlbbAIvh9cu6+2rYhoY2BFzgXQaUwmz6CURNdpfOlLX8S/91f+JlSryADYuEUkvRjx0Q65blRkoG17LuRN2rjKIF8WGB+OwEzkVBDRBOGmUu+6zlmCrU1Asp1cWnd4+v5TPH/6EPdffxM7t3dcFWXts5oblOqu09BKQncazGOOJBUEMdq2wnI5ITf+pkIUZbiaPMNicQF0HXZu7RjYnxbduJdgdDCkKs2MnSgNXW+MzNOV+7OFxRhn2Nkdom5NbxMd1nnlDBLqgtyJ6rLG4nKBi2enePNzn8PhywfIRj0nP9rGYD3Psrg5skGKtj7CcnmF8yfnGOwO0Bv34AcCs7OZI/r4YeDcd6RPC3jgSGnC6eEA2swsccteTGysy3rj/oYQZXpkbu4b+HI1XyPtp7h6eoXf/NV/jjQdQGuNp8cf4uy5jzjOsHtwdE2qZRfrKErBGMNicYkP3v8Kwjh07zpKI5KTGMG78Mm708pFLqoGIvAx3B86VvbZY5LbvP+V9yGlpCguc+DmnDm2ul1QOWemfUFEnaas0VSUCC+lwvGjD/H06fvo93eRZWOnnZStFa6/WBR4JqxAKRKxa62RDTI8f3iCOE7RG/cQ9WIUSyLgJL3YEV2sQ1KcxYiziBjpitosoyzFIEkgGAPzPGebVjY18pr+u3o2ca5KXUc2fbVpF0ljaVcVFLQuBEexzDc+qBWZJOzc3sEHX/oKfD+8traHcYCnjx7i5eB1l+RTa6raRHD98KUNwjfcH5K1o4lTc+5MYWA2ZA0/8FHLGpMzYobWdYmmKeGLAB7jiKIUQRAhG2TkQTzMnFNUa/SRWmuj2+amFUOHYu5zHH/4AMcn7yKOMkew2eaQ/H7XJ64UP+6bM8adDm+bvWRF95PJMxwWR0j6hIHHZtPwQ98tQmESEhRprL5a45bgBz5pmgJBPTxFVkO+Sckg9wvp2FgA3CDxQ4ok2rCVMoQhLdbXLJg9BsEFOBcIgogcECrC3bdL8zqvTJJ8gi7XyNIhjp+8475PmEYoFgWSQYJiWbhFgRsGreeReHdiBK7r2QqyVYb112J+Ocf8fIbnj59gNNpHaITMtmcHwOTWVfA8hiCIwYw2MTCsUXWNGee5DdG+OyF8lNWaKixNm2y/v4Or03Ps3z4Cduh7yKZFU9HCONjrI18Qg832QmnCkUbU9t2sy892n85OHtm0blBrRbFf9p2t52ucPnsM3yfyStpPIIRwhAAAKMvVC+OuA52CPU4km7ap6d11HdarKS08TQXfD1AUSzQNbUAXT87BxS2kw9Slp1jWrb3WokIWRpivc2I1K43YQHlSKUQBRTmpTjsD5LysSM5QbBZaYkGXuHx+hvEe9d3iXkK+jPq63aC9tCbGojWWD8ME06szuASOvQEYrOmEAkCsPQqt3kCXFt0I0whad0YA3Tryh035sJU/N9pi+5m0VG6F0CZ6ra1bMpyuGjz+8AOcnT3E/ft/gpCRTjuBeVOXiOLryQRBFMD3A5IT+BGWyyssZlPn7qNV5wIAaG43bgx5hvEoiwrZiL5vlVdYXBKRyfPII9MS2OzGAEi0xms3HWRUYVgXFLvImjk4v5hiOj2FLwJoJXF8/A6SpI/R8ABRmiCMKbT6hXFoZGkW3uacDMeHuzuYXV4BbEOkU1K5dcpyKzrdGaNvjv2dEfK6hlSKcialRJJQ+sqyKt27ScMQO1kPwyTFuqqwWuakm9XambFTwWBaTdjY06lWbezuQt+QG1twJq6NRxH4SJKe0wU2ZWPWYKNFNDpEpRSSXuKkHnYNcv1Yw2S2mbrZKHOmAeW6RFWU5vCaOqYvEYtCh45oqVzQuG1FWRKYfZ42feXy8hhaK2ij9+Rc/OHpFIlmbaCDa2Qb5mA7S51nTBhoi6qSuvgurOe5a6aGexs41EIHAJyHHuOeI8bQw/eMsa50BAgpJeSpdH6H5boimLSmTbUuaiwWlN7MGUEQIvBNc3cbPtUugoh5DEk6IMeL0Hf+kiLwoZWRJ4Q+tDRu7sLH8ZN3cHl5gv39l3B0/xBxn5I7xocjaN1RysCCHDm00jh9cOogLMu0On14ijqvsFhQQnQySEmzNUgRGLcLz/OMG7wiQoakTY0Ln4glWqO9IV2wFeJG4O4jz5fotMI6XyCOMygl0bY1JqeXjhLelI1ZVAP00gT+mPR3y+XaOXbYHo11JLFenYyRE0vTtBCCo0OHKlfO07I1hCjZSpw+PMX0ik77491D9EaZ21A708PIlyt4uNkb8BzrlnofNXSn0KFDUdAG2jQ1hCB9I22QJcIwxPOTJ4iMs4cQAlVRY11XGKcZQiHQKIV1vQnDbY2/JxMcNej59uKYkgAUEPuMwnZN5l5rejoryz6dT9G2NV45fI1irIw0wDMtA9zYGDkXBJNzQlFUm2I6fQ4hyLmjNzaLsDG2AGBSPzZm/bbC5oIjG2Zu48kXuVtUuKBIoC6w7G3fGUvbNoXr05jDal3UAPMweT7BxcUTNxaZJ8C4AEcHdCQ0txR898aYR/o5P0BZakRxhvOzR0gSIngppaA1VVCW2GTfr+3jWc2uRZfCmKLOrp5dOfmFbFr0xz1X6TZls6mA+Qbe7zraIJqS+syPHn8dq9UUUWQsHOsCbVvj6uopBoNd9Ke72L912zGOty+t6D2S1SVB0ePDEWQjMbk8dX3f1kCasqWM0FE0oraPSYSZrtau5QFB8p5FUUB1GouCvE57SQQPJK/oug5Ka/Rc1qp276rKKyNl4yjXZC7gMYZqlbu1d3QwNKRG+YJsoes6vPa5N/Deb33D+Nn6yLvcWfV5noRmDJ7y0GUEtd8kDnnMyNaMFnSw20fUizHu90xuJsd8ujSMXYViQU5JxapwZt/WzKQza6ZFNaydm4XUg9DH8aMPkedLBEEMzgWYMRsO/7AcbWiS+ddK7JtC/qapTP/AQI8tSQCeP3mMl8LXHEYtTIitVp3LvuKcoUHroNZsmEJrMinmnFE0SeBDaSKPdCYqhHo4FDZpHW7qokTdlOg6TWJWwwCjpu6Lp72mNiQNQ9zYeJkSCWPbeUeZjTpBhn5/B3k+R1ms8OTx26iqHGlKcNDRq7dgtYyqlfCjwBhhUyCrbFoUqxL5fI3T00cIw8QIdzMn9fC3ooXausFyskRd0jNWiqQM9h20siG93tZl2VfUSwwghE/esfUmKkoY1ioXPp4/PEEQBWQVVlOSNYY97GYZVlXlnE7SOMLUkJmC0EeaJc7w1wao6q4juKeqXTiqbGngVyb25dnJRxDCx3h8C6MDyryzPR8mOHQj6T3i+sZh4TjrjWtPyFKSL26HDmEQoarpkOX7IUHLjPqwH739Nt7wvwdMEJy2mq7APYadXgbOPPiGxu3BQxQGWLZL+L5A6PsQjLlwX9/4aeZ1bdi0tTMKn5/PcHX1HJwLZOkQw/3hJlLKVIo3r67r0OuN0XWG4BL60CllH85mZwj8iNyDRhmaqjaaXQ7WbU7R3Kdemd04PQ/GLYq+xhoz2BaC51EPWfjEVuw63/iRes58X7ZEHKryCtWqJJmDH2zgVZBWlHPT5/8mzdIgiBHHPTRNDQ85lssrPHjwVQCfw+6dDukgdU40zPb8pEKURJBSOpmEhX+TXozRwdAxFm3Pinq+hDLpnqLqXNg+HhDEoev11WWN5dUS52ePECc9MEYHue1j2Ho9R54v0bYNhsP9G3fluTXF8zbBCUpq3HvzHpqqwfnzJxjv3HI8CWDjKBNEBnmpWsAjZCKIAvicQ3cdFmWJsmlQ12RdSYnyGowTg3g5WWL3cGwclMjZq6kaRw60G4k0m0dZrhCGCYZ7I/hhYKzwghsoE4CO3sd8fkGFBRdOq60VjBJg08PsNHE37EFSCO7yVZModCHSh4MBenGMUAisyhKv7u9jsl7D5xy1lKjaBquiwqOvPyT9o4lIq0vSkIN5kEYFYREM66Bzfv4YWiv4fkgokaDIraap8O1ef6CUDHpeprLT1LdiHofu6MPUdWFK1gplSayp9977CobDPSqzA5/Mc+MQcehjJaUb5AQ9UTkcxIE7TdvelL3aukGxKgkzNwusbCRW8xXatkZdF9BKYrxzy0EJcRaRgPpjNkUufHD4jtDhYlaMhZk1umW+oNORRy7sgvuIQjo5kavEMWYzH23b4Pz8GJxThRrHGdJeH1VRQqkWnPsoiqUzOPc8BiECpGkPodGNJf3EUcCVpMrDD3xcnB0TRNPSQsS4MAJh78bmQRViKxsUxRKj0SGdMJWE5zG3sTRNBc7Jh3I1r/Hw7Q+xc3uHejtxiHVRYq/Xg+AcgjFoj9h4sqbDTKc7MMERRyFi33fyEh6FKEyChO0FyEYiX+aYnc3cM07TIYZ7Q5P3R5/cCnIZ84x7x3V4s+s6BIHNXstcP7EsV/D9AFVpnUiICU2uFj5lCO7uoj2t8OidD/CqeAPZIMN6nsMPAzStRBKFlDqvNYncqwp+ILCcLqnHkSUIfR9SKZfvt1rlLpmgXBaoihpXl8/AhY9+fxc7t3YQpUTQYYIb1w3l5Crb97W7e4dMojWRJxzBaznB5eUxpGrx8huv0MEyCulwCOkclTjnSMMQhQdIRigMRVjRRkl9K+XmW9d1SHqJqxaBDWTZdRS8ayuqqqC5hq5Dv79r1gVmyGodBDNuKR5Dt1V5dEYmQj87QZr2iSntkYn7o4dfQ9u+gaP7t8B4j6waUdEmaJ5PHIWIgwBSa6jQpDZwDmHyJy2nACCo1oaSR+Pehq9gPEjjLMJquoSUEvl8jfPzYyhN7QW7zmzPEc8MzMnkGebzjW0gfR1cq8feq+cRaYgJhpfeuofpl5/j4uKJgRFTx5Oo8spt9NaFSymF3ijD7qCPdVW5+1MtVaB13bgsToB8nc9OLpz0pK2p8q3LxumMrXtTVZSo6xJH9+4Se9wQsOyadPPqug79/g4uL0/Qy0hTG6WRC0ogRM8zLR3bfyZ/a8fu9QVuHx2iVQpF09B84htXnbJtobsOraLwgn4UYxAnkG9KshNc5EZn215bG/iNir1YFfBFgKatjZ2l4Rzo6zmzv9/1iTZFpRTyfLHFLNqcwuHBlOEb+G61mmK9nmO1nuHy4gnqusbF8QWqokKURFhOltdILySIz52mxU7WruvQGAaj53mYn8+QLwvk8xyz8xnKdYnVbImqyrFcXIILH2k6RNQbO1NaO8E/poVDi4YIgE6j1x+jqgpcnlzite97jVxlTIO8tYkAnDk4J0k3qRSlMQWg5nEBpVpIaTc801NQyi3wgR9CKokwjCFEgO20h+3Lfn7hC9JKeewFOLGDdgeSay9YBJCyRa83xnh8iKvLp1CqRRxndHDQ2nxGjrZqkPUpiPbBVx/g9uu33ff5qJUI4hCBEBAeQTceI1eiKI0IjktiovibzSKva8zO565nenlyiafvP8Xl+TPk6znCKMX9T72J8dEOhvsDU60INFVtoDRaSNu2/lj9pRA+mqZ0LkS93hhtSxvtYLiPslxBaRqTvh/i6Og+VdYNw/7RHZTrEl/9lV9FGP8pszjmRHZIQowOxy6ejHIVQ7ewSKVwekm+s7Zn2HWUUj55foUn7xxjOj3FcHRAkVRGt2VhZ+t7Kxvp+sqbsajxvZ//t6FV5w6CfuhjZ+8QnPsoiyWm0+e4/PIJXnvje3Dn9TvODCEIfbfQ1W2Lu+MdKL0hxrVKItzZcZmLrVLYyTLyRZUSgRBQBq7TXQfmeVgbhmeVVzh/fIZ8QYSqi9NnSNMhgiCC4MJUVo5yDHjXXX5s3y3pkwF4kqUQgjauPJ+jrNb4xje+jJOTHdy//ydw5/U76I17tKmlEeqyRjLqo1UKt0cjlE0D3XWITPLMbm8jTZqt12TNZ3rd0ph8OKcaQ/l//PYTrKYrPHr3I3z00e+Yash3fXht5qZtA1ktcF2/mLhgNyzGmGNBN1s90VfeeBNXzy/x3jtfQa83RhDEyNKhc7YJ4gChcbRqGyKkXT2bIIgD0sxy7qKhrCbbEt2Wk6UjLAmf4/LpFaan043rTbmCUi3Kco29vXu49+qniF2vNIKYo1wWhtUqcRP58zwPr7z1Gp4/TPHw4e8hTYeoqhxxnGGw2wd0hwBAY54BEwx6pnH4yuFGUud5+PD0zEmTdvo9goVXK6yrCkVVOzQi6SUGku+wvFpC+AKDvYHJ6yWrTtt3zJcFqqJCma9xeXmC6fTMWTzafahta0Mg+kPaFLHVnwIAz+PuhyktIeUGzlOSXkLb1mjbGowLaC0xvjXG5NkE68OVM8YN4sA9QFt1aKnIs5BVEA2HVh2dUk345Gq6QlVQMkOZF1itpqjKFdJsaNhLsfMbtBlj3+q6OSDIy4+9sEF902vrdPmtoo7ck7yxYFz7f5ZGvXUxzlwf1Do0fNzmef3P9G7KYoW9/XvwPA6pyDG+bSrjidqQeDYk0+m6pEn6/tu/g8T0RkmbZJw5PI8CbOuGGJSco61a8jhkDFXbQOkO66Kk06phqjYlVYznpydo2xppNkQQxBjsDzHYG5D2yEBlnYZ7X8WiMKfYG/l8ncZqOUEcZ+4kH4YJ8vXcVIYNQcJsM0ajLKY+7jqnpO84xHh8iAe/9xH27x6gN+4hTEL0RhmY8Zqld0VEiLZukM9BVPCcxqJ1r1nPVjh7fI6L43PM5xdgjCNKiDW8czRGNuo5PZplubYGPrcMPfsORwdDzC9JJ2mNs5uqMf3f1mz0OU4ef4hyXeLlz77sdGq5IXh1XQefc2RRBM48zPKCiEFmw8zrGm0rEQrhNpDA2PWFPmUNlk1j0jJa5Isck9MJRvtjMmEw4zOKUpADgXLvBaD5dJOUR4xuqjBKVSHwCRamgxu1WfJ8iZOT96CUxK1XboHxPcimxcrAZX7oIwoCl/JupUiq6xBwjmVZIq9r2tTdXOuQJTEaKbEyovpyXZpUF3IPspWEhds80By1i2unNaSiVJZt1ygA1wT9Vhpk1zCA+r1BHKI36gPHwGx6hjQbYr2eQfgEcVrj8jiLIZsWHmPOtYuS6end9MZkYGIlCyRUXzvZhGwkpqdTyl9dz6C1wno9QxDEGI9vJ3Qx8AAAIABJREFUEXs53EjZZCtdzFgUZS+sRbKVAPPQG/UxHO5jOj2l91eu0TQlsv6AEDjjoUxaXvrsLv/QkOvs2r7yBZIggNIa2qx1TUkHTpdNap7parpyese6qJ3jlA0broocJyfvoShWtFl6zGiXtfN8/qTep97Hsd++6Rd73iWAJ9/2P/hX+3qp67o94DvuvgBzb9+p9wV8x72z79T7Av54LP5Ru75T7wvYurdvdX2iTREAPM+LAHwJQAiqNP9R13V/6w/0Ef8Vuv74vv7oXd+p9/bH9/VH7/pOvbfv1Pv6VtcfZFP0AKRd1609z/MB/L8A/mrXdb/+h/EB//+6/vi+/uhd36n39sf39Ufv+k69t+/U+/pW1yfaFIMg6qx1jvnn6KBwcPs2ojhGYKyL+JbVkEXbN33ILTnH1vfuADDvRj7e1v/XxFF3f3+te2ZER57nuR6D7kgS0Erpvo82tlvFMsd8OkHTEEUxzXrdzuEhERuMNvL0+BhHt28jS1NHdNm+F21+HrcBnObvO4A+p/l6pxHcuuftr9mQll7MBbRf5z6/wd+l1qgb6r92mhyEqrxEVZJrT54vrrqu2xuMRt3+0ZET8zIAjx88wJ27d5Fm2YvvZuvZbphkG43jzef+cX/evoftz2/vz9u6Z/uOlNaQSqE1vYLVbImyXCKO+9RDUy3qugLQXVn4I4qSLusNUeQbclPXaeweHiLJMviCgxsnkG3G9LWxabWbtod0bUh5Hzveuu3/v/Uet39/82u337F9Fu4/AM9OTjCbTj36vqzb2Tsi1xNjz3f+9CkOjo6QZpnr6XrmV/vZ7PzZfm/sxrjb/pzbY3L7Prffn9Obbc29m2OhA/X1tNb0Ho1cSksFeMDJwwdXXdftcS46IXxwLtAbUszT+dMTHN66hTTLwLc+u5tr5h7d5996rt6Nz7K9dtxc0fTNuWX/sPWs7M/QW++oVZIIZfbvDYu9XJeYXJ26sTgcj7vD27c3n0lrPH7wAEd37iCMomufnzPmvr9bR7Y+s71fbP3Zfo39+u3303Ud1NY93Zxn9v0wsza6n7tlj2ntCJuyxuTyDFK2HgCMd3a623fuXPt+H334Ie7evYtelrm//1bX9rN/4e/M/Pe23r29h2vv0tyHXSu2Z2Rn/o6CGVqcPT1GHFNvlDGOMIqcXOby/Jl7Z9/q+kREmzQdACCrtPPzJwA6/Jkf+vP4ib/xMwh9H6MkQRwESMMQifE4lYqaqVIpBELA5xzCLNIAEAcBFmVpUrQ3H6dqjd3blkNO2diooM45iwRCQJiblkqjNll6eV2jaltcrlboug5F06BVJMI+e3SGv/ef/aT7vjsHB/i5//F/BhcMP/8f/hjOTk7whR/+Yfzsz/88fM6RBAGiIEAohNsIq6Zxn4HIDFanRIMnEMK9RJ9zQze2n3NzT0pr1NKY5RrbMft5A/PzBGPIa2paL8oS8zzHo+dnJCo3ZJar5xP8X//b/4rR8AC//hu/+AQADm7dwv/0xf8DvTDCX/zBH8TJ8TF+5C//Zfzsz/0ckjCAYETEAGiySqXcoQKAM5i2l/1s259TGVo8Z8zZnVUtudxIZVwlOrpnkjDQe+eeh1pKCjWuGzybzXB1OcP8fI7Z+Qx//7/8SYxGB3j99c/j+bOP8M67vwZs9Tey3hB/9s/9B/jg7a/iq7/7z6G1xMsvfxb/6d/720iHGcbjAe6MRkjC0BFIpHkHPucI/Y3kwPM8JAHpwqQhoiRBcG3RsYu2NM9HbEkp7AaltEZjnEgEYxCcY1EUyOsaPudoDAnNvteuI33jX/zBH3TPuN8b48f/+n+Fu2/cwS/81f8IF8+e4Qf+wl/AT/6N/xyh8BH5PvpxjDQkeUJryCzKaB458yAYzTG70HDzq+AbdjPfoqg731y1MdFQZmGyY6JqW3DGIDgxnzljqKVE0TSo2xbzokDVNpjlxGieXc7RVA3+43/nzz0BiCnc643x/d//Z/H1d/9vXD5/hi/88A/jr/3Nn8UwScEZQ+TT/UmzeFvdq8+5e4dKa/cO7df5xlEIAKRWbry5+zJfBwCNlO7w4CRGhhxU2yR5pVA2NU4mU4S+QCMVxXNJMgR551e+gf/2b/8nbiweHB3hH/zjf4yAc/ylL3wBJ0+e4Id+5Efwl37iJ7CqKpKLlDXaqsX0bGqCmUmSU+UVsmGKuJdgsDegmCbBnd53ECdQWrt1Tmk66NtxeD5foCoqrCYrrKYrLK4Wji0MkKyNG8N97guSwWUxaacNKYiMHygl5b/5L37ajYvbd+7g//ylX4JSCn/+B34Ajx89wl/50R/FL/ydv4N5nqNVCnEQIBAckb9ZH90YMvNBm/EjOHNievteAIrjtZJdrTUaKYnB7t6fQiOVc/mRWqFqSMbRiyJcLJdYztfwA4F//0//W9jdvYPd3Tu4fft1HL585AiX/93f/alvqz/6iXWKgXEGCMMY/+6P/XV86V/+Izx9+BBvvvUWWq0hbGxTZyozWwlojU62aCQNvGuD3DzIsiEmZGseil1Y7SJsH1YgiAKudIfleo3Y90nLo7TbPGhB7pwAljYm6Yxlr7lSuNOoh7//D/8hFvM5/v7P/Aw+ev99vPbGG5jmOaKmQd8ITjvOoboOArR4VG3rJrNdPFvzHOyGaH/dvtTW5LeLL8wCLLVGnpPzRD+OMS8KFE0DqSgJPkoiNNUSIqD4naSXuFxIezEjnWi1xv/+i78IWRT46R//cXz0wQd4+VOfgmAMjVIIOL9mJA3QgBXuNNldO8nZge8LAW9rIXWD3FDhb26InudhXZYIhXAn6KptwTwPoRBOmpONMrzy6vfg4YPfxf37323E/DcYupq8OIejA9y9+6ZhoC3x/PgJPnP4OQjGUJiDS2DkMJwxN9G2Dy9d17lxqbfuxf6eMwap9bVDgTKbSmHGW2OSJwCgblt3qLP6K99oBwMhUDYNGqXAzQa5fflh4JxafuF/+QdYr1b473/+b+HJRw/w1mfegud5WFWVO2HbTYEz2hjlllm13QQVaGO0926fg92oty9XaZrKr5bEULUHQKU1It93Y7duW/feASD2fcxzkgVZHZ0dQ3Hcx0uffhU//Nd+BD738Hd/+qfx4IMP8Ok33sQwTd1GzTygMY4/0q0n2i2czAOUFm6DpHvyzLOXBoGg+LbI9699RuaBIpgUHciYx9z3KJpmq4KD+fmEYgRG48kFx86t3WvPDGbOa3T4H774RZxfXeG//qmfwu/+zlcxHB8gn+dYz1bOKN6mwzdVg/nFAnEvRpiE2L21Q2HfMaWBDPcGEIzGjT34c+bh0YQsDGXTYjlZuo3w9OEZZucTTGenjiHLGMdgsIdbr1CCSVu3KFYFmKBcSsY9J7DfNr63c4EzD5wJfPGf/BNMZzP89I/9GP6fX/1V3L5/H2XTuMNFFkUIzFoLAInRk3LmIRS+OxjaYsEeYhhjaKQC8zzU1hVNd26sVm0LqRRqKSE4Q2UO3kXTYLXMUfVTXJ1NUSxyiMBHFGVGo9gi7WfXkJNv9/pkkgzPQxz3sFhcIghivPWvfRaz9WP81q/8Cj7z2c/Sg1AKVyuix/pCQDBy7+eMucUSIO8+OrGSe8i6ruBz4RZPbYNjtUbRNODepvormgZ5XSMJAszWZFsVGdNgzmiQx0EAZjZSetCGuq3IHcNGHAFw+iorBt0Zj/Fdn/88fvlf/Avs37uHRVFAmIinfhy7BcI3C1oaUurFZoFiCLdgju3qSyoFqTVtrmYjtDqxqm3dz1oUhXF3aJGGIZZliaKs3DPsTIK4kpuNNgpT5MXi2ivrus4ZCvtZhu/9k38Sv/RP/ym+sLsLqRRC30cSBBiZRUkZwXojpRu8Vdsg8gNXhdjFaLuysFWitIcZc7qzf1cbNwuABvSsKLDf7+NiuXRRRvZeGGM4PHwF7777a6iqNYpi+bFSl64D+kOKlGqaEq98+k28+7u/g9e++zOYao35Okc/TbCTWdkGwUZZFP1/tL1nkCT5fZ75pHflq7uqfU/32J2dnfW7WAMIIEBIFElApACCB+lEgaJ4iAuEpIgLKYLUUaFTnE4mZEKOuhDFO56oE4MiAQoSQQ9LcAkszHo3Zsd0T5vq8iZ9Zt2Hf2Z29+ouhP1w+WV3Y3q2y2T+f+79vQ9R9j3o2fcVJUmRtEiSBFn1DiBni/rpfC6CZZqyPxwSxDE7vR6BF9A/GJAkCVbJQtOFTVsOkE4SYWy/UqsX7TA3CAjjmGbptAw+R24FboBm6pRrVS4/8gh/+OUvcfG++4iTkIPRCEvTWKrVMFQVU9eLBDQPWIkiuiz5vZ078eTfRx5wimSM4+o9D0Rz5sW/u6GgTrhhiJZ9j1PfpzuZkMxT/FDcp3GaIskSUoa4OnF4EAQuG5c3cEo2jmHw0BNP8I2vfY0rVx7ACzPeavb8RkmMpqi4YWbkoSqkc4qDN1GPE7XoxOqHSAxEhRkl4vlJ0pQoiQmimDhNUGWlCIBRIgKnqsi4QVjco/P5HCPbuc3vCUWVmacCDPDOaz6fs9sfsntzj+69Lgutdf7od7/E4898EH/q4U194ihm5ewyqqYI02xJEs5RmX3e0c6RYK+qCt7Uo96q0VxdwC5bwr82TpFVmf5+vzATiTPnpJyNmKQx7faZAmZglayCKavNxRL/4KCPN/EyBxxhz1ZdqFJZqJwqFuYcd9/iJMW0bR564gm++qUv8WOf+hSmrhFEMVPf53A0wo+iwkZQy9BOVsmi1axRtW3K2Ygtv8TnLs5Sca+lp85KPxJF1DTwcYOQ0cxlOphmzmXCmMCwjQLiXWlWWF+/hOeOcZwaTtURZv7pf3tF7uT17oLiXLiIBIHL+volys0Sr3zrW3ziJ3+SMI4Zex5T3xeByw+Kfbv84dANTRh/Z2a2fhRi6eK/AVQ5KqotENn62POKCvHam7fxph6Dw4GgAlgiq86xKZIkYVdssQybZammoRc7MYBYNs3oDcUlwWQ4JI5tVFUhSBJe+MY3+PGf+ilGriuykyiiH8Xc3jsk8kNBFtdVvIlLY7lJxREuDBvNZhHUjKwdBCDFcRFIpOzwyY1/e9Mpe4MBI8/l8HancPTJv8yTDiR2ZiY97okqUVHlwi/WssscdXePvy7mzEYj5mFIvVZjPJ3yR1/7Gn/x058WQOM0JUoS9odD0jTFc33h0qOpBG7A5nKreA+tSiUzvkbsAkkShpZX+/Ni3nncNoWR6xZJzWA6FZViVuWEYcTtoyPBREvF380RRwCL7VUcp8o02zs0DLswdhe34pzpaJgt8wo3oHu7b3P+6hUmvUlhjj3pTzhQjsTekyRM3cuNMrZjUbXtoh3pRRGWpqGrwuM1zVp0yYlqaBYExWG60+/T748Y7Pc5uH0oGKGeINRrhobpmKycWzk1L1GbCmH2PZrZLuAsCIqgBCIoBv6M2WRK1agzGYx55fnn+cFPfpL9oYDAhnFMEEbFPl4UCR9TWZKwdJ2abVMyTRzDwNS0LLERhIX8fsxnqydb+THHB1Gcpkx9n+FsRn82YzyeCjKNIgtHm+wKgwjd0IRbShDijV3RqlOVU56ukgS+P6PaKmNoKnEY8t1vfINPffrTAByNJ+iqV1gD5uOJeR7oswq9nHUYdFXN2rlKkYyebJPmwX3sCYvA3f4ALzNpdydu8VzlSQgcG9mbtolt6CIQnGBUSgizipP0j/zPbu3u8NJzrxNMI5y6xd1b1/ihT36S1kaL2XDGsDMk8ALefvlW4e+ZJLFwJJrPhV9zFKAe6GiaRr9/iOeOeeipp7n/mfvF3l8c4o5EYBgdjYiCkN5+n9deeY56vY3j1EiSiDD0qFYXcGolrJKJVbYLSojA6gk4exTGSLLEZCBABGsX1065xMznc+4dHBAkCaZtk8Yx3/j61/nkT/0UXhiiyjIT32fi+/T2erhjV4CRfWFQPzgYAFBdqLJ2cY3WxiKL5UoxWmhXq6eCYZp1bPIEdOL7zIKA4WTKuDsWfrt3O6Rxku33RjSWmyfIHxKt1ga3br1Ms7kqLP4yI/H/N9zX/9f1rg3BFUUlDDw63Tv83E/9JR5/3/uJAovf//zXqDQrpIlw47/45EUalTKWrvPA+hp/8Mpr7Ly1w+CgTxwlrJxbQTd1GksN2jXhCuNlLUpb19FUlZ1ejzu39pgOp0R+xP6t/VNWTbPRjFKtJPxI44TeXo/+4RHVRp1Ks0K5UaG1sUitLeyJcjp2EqenM6J0zqDb5Z/+zX+UQWXnPPL0e7nv8cfpDUa4E6/wfbz7+l2mQ2F7NRkNmU4GyIpKrdai0qxw9f1XWVxfRNNVNhcWaVUqVLIHOc7aop3xGD8MidOU250jOnc77Ly1w+GtA7qHh8xmI2EgbDi019dYu7CWHTQyRkbbkBS5sLSSFdH6WFk7y+3brxTvK51D96jD3/uZnyXNevvf9wM/wPnHHmXkurgzryBYH9zaxx17zEZTZiMX3xVOMbZdYmFtgQc/8BCLy000RWGlVmOpVivaVLIk2ovDrN079X064zE7O4d07nY42jli/9Y+gethlRwCz6dcr7C0tYSiypgli0pTOJKMu2NMx2T1/CpraxcZj3vM04QHH3w/3/zmbxbvza44nH1si1/8R38f35+hqhpnL13hzPZ9AhaboZviMOLwTueUc8xo0KdSEzQOu+pw/zP3i/ZVs8ZKrVbMxUFUCAmw0+vhRxFjz6M3EGSGwaGA+GpZsheXhCOHYQsz+NWVVtb6Uor7O+9c5Ie5l7XE80tWFILI45/8zb9RCA4efuoZLl19hOlkRhhEpHGKO3EZdUeMOkNmY5ckihl3x0ynYzTNoLZY58qzV2gsNyjXSpRNk2a5xFK1hiwdi+HCOC66An4UcafbZTxzGXaG7N/cp7/fY+e6GMUoioYsK2w/uE2pVkKSJebpnLWLa8XzFPoh09EMq2QRhadt3gD+0d/4n4pk+bH3vo/y2hm+/p1XCiOEOBaGHnEYISkykR+RxDGGbdI+02Z5rcVKvcbE96naNl5WSeYdjtvdbvGeBr1Rdg/E3Lt+j9l4RuQLl6J8pmfYhnCKUmWmgyn1dp0kTqi1aqycW8F0zKLqEmgiFfUdnrVBEPKb/+4LfO1LnxOaP+CRp5/l3KUHUFUFq2Ti1FZ59tEHuNfv8/XffZ7pcFosof/gT3yYwXjK5//55wtnp/ueuoyiKXzlc7/Lj/3lj7CcPW9D1+WPw5dIk5SvfP630TSDlZWzDAaHfOKv/gRpMufX/uW/Y+PcWRY3Wrgjl4c+8CCDwyG713axSqYwJg9jYQSQwYh//1f/C1ZZ0H2Oz4+U165d45/97b+dOUylvPfDH+ahp58uHIU6nT5JlOCOXWbDqZhrHol2rm7phY/xbDyju3tEpVnBrjqU6qUiaVNkGUNTCxzW0WSCF4b07nUZdkb09roc3unQ2d/NLClFUuI4FfH/qzhF0bC8vIVllVi7sF6YJwAFYeN7ud5VUFQ1lXb7DJ434Yc/8Rdpn2nR2+sXWJBaqwYI4ve3f/vbHO0cMRkNSZIEzx2jGxbzeUqlssCwM2Tnxi3Wz21x9U9cxSqZIEm8PfGIMkHNC3/wAoOjLu21ZayKLXzwJi6B56OqwjtUVTXWz29SXaxy6YmLVBaewJsIUO/gcMi171xH1VXOP3K+MGOWJEkMF4prTntlnZ/9J/+ioBcoqozni4xYMwSmStNV1i6sMR1NicOYzl0Np1wRHoyZ60jnbgeAcr3EoaZTMU2qlnVKcRgnCf3ZLLNBG7B/c4/h4QBZVWitrgAr2GUbp+bQXGmysNIkSdLCCBgQvw9hPB14wpGk3q5Tq7bY27shbuo0pbK8wt/7pV8qDmYARRJUBz1jtwmbtgi/FtA/UFE0FdMzhTenIuPPAg7vHCJJEqZjUDZNLNdFr5RRZUWIG7KKcOjO8MOI7mDEXtZK6tztMJuMBdNSlrEcuzDH1k2B48kVoooqF23IWq3FdDqgWlnk3KUHTwVFSYK1M1tcvvw0cRyxtLTFUz/0TOagE6Jk7WkkieZKE6tsFcDZ/PsMfcE6vHf9Hs2VJiDmsEvVKiXTLObbWlaV5H8uSZKokPJuhGOKKsMxKddL2I4QwlRtu6gUNVlm7HlESSJm51n1qGXihOJ9yRJnzp/nr//9fyqYj7FoR6ZxSqKKtnmSJAUFYTZ2cUcz0X7r7Bbet1EUcOMFk3a/zcLqArNmmSCOWShXTqjExZjCiyKmvk8Uxxwe9pgOxOE2PBoy7AgW6Xw+F05ETg3DMgqrtHwGJ8viM0GSUBSlSNhOXo3GEn/3//w3zEZTdt/aZXg04vYrtwte4Ww0o7Hc4NkPPEpvOmXQGzE4GHDzxZvIssS4N2bnzR3iMGbz8gZLG23CSHyntnNMQXA9n5sv3OTe9XtouorpmEwy/1ZJEkbzcSaq0S09m8fL2GUbq2ThTT3cscsffe7rNFcWuPD4BQxbVJV5F+fkFYUx8VTiZ/7xP8eb+lSalcJ9Shj6Cz/S6wcHXFlbQ//Bp7l+c4cbL9zg8PYhv/Mfvih0CKFI5Jxqielwypn7z7CwsFJ48CaZCAVZonO3Q6dzl/d96CNMhzMqlQVef+51kiSl3T6DWbII3ICr77/K/q0DYc7tCJCvbup4Uy8jUAg8WaOxTHOlcaoKTtI56+fO8Quf/awQDGXjBjHfFLPBhUUxEmi26wKUPvZwJy6Dg75gkWbBKEkECi2OhOsO6ZwgjgrbSAmJMBZCmqnr4Y5mDA6H7N/aZ3g4JPJDGgtLVJqixasZGtXFKrXFqmilZtW3Zuo0F5eLCjGnlryb6915n8YJj77/KXb//VtM+pOin/vA+x4obrLADYoWpjsR7bBLT17ila+9glUyCb2wsNJaP7fF9VdfwXRMnv7o0zy6vVVk4yPX5av/8StcePgShm3gTUXP3C7bDHqHfPp/+wwr9Tq//POfpbXRKtYbnKrDbDQrMojls8u89fxbfPbn/z0f/8xfKDBH75Q+CzPnEEUTxtjzdF6AWy1dQ9NVnJLN8uaSWHuYCtLDwe3DAv+UA3hHRyM0XWUyc+lNp7QqleLgy5V8cZKImYfr4048DMdkYbVEuVHBsA2qC+Kfud1Ynjl7Y4FeShIRsHI2GhrUWzWqJxz8kyRleDTCrtqQaR4CL0AuOzRKJaJspqUpCmdW28yCgNFUtGf6+73MTiokiUVbypt6yKrM0HUxdZ3FiqCByJJMlAhxyWDmiiz9cFiYfi+uL7JV3WI+n1NpVtAtQeGwy7a4R2KB0RFZK/hTD6tsU6ksEAQvsrS8TXWxeur7SlNh+xfHEa3WJivb67hjr7gHzZKMU7FRNFUgfDIKC2TWUWHM0c4R7nhGd7eb8SNDkkh4gLarVUHDyA4jTVVJPE+oLbMZkKDGC7xVAFgVG0mRWanXKZkmhqoKn9HMVi0fK/gzAWE1LIPkHXNSCSFQ6d7rFpBtSZKIoxg9ENgzzdCoNCssrgt1eR4Ud6/tEkcJSSIsEkMvpH/QF169qoxu6gLXYx0HEFmSUbK58dQPRGsuq0CTKBEHT6sqoNm2gVMtsXl5Q5j6e0GBfcv9XxVVeHSOe2PKtdM8xUplgTuv3+Hg1gH9/T6PfvhR6u1aQSkZ9yd0d7v867/zS4z6XfxAsBk1VadUrmOaNpqhM+gd8R9/8ef5zP/yt2muNgWE27IEqSQW99HLX32Z2mKNxlKD+Xxe+IO6Yxen5qAbGuPeGKtkYbQEVqux3Cj8heM4YXl7md1ru3z1P36VrStbbF3dKriTp8+OgI3Lm6KrkBmTC/Bugp6hrZJEiEmG7gxVljm7LTxry40y+zf36e4eISsK4/6osHwDaG20GHteMe9P54J80tk5FMbv1ZKostMUb+pn7VKL1kaLxlKdzbUlmgs19u4eYro+08GkSAj9mU+pWkK3dGqLdWFn+I7WsBsGxfaAO/OwHaGpyGe9+Uw6ThNIhRF6TiOJwxDFMoijpOAiniQUBVGMY6QZdUbN6DppYcG3e22X2UjgBpsrTSrNCs3VJrqhFeLIKIhQs85hmqbYlRxUn63YpOmppPN7ud5VUEzTlM3LGxnFXmBb3vr2m4IgPvUyx33xc/V2TZjT3uvy+J94iJsv3mTcHyFJEgtrC/y5n/wI3emUf/1zHV7/9os8+uFH0bPdsvl8ztCdsXRmGcM2GHZGeFOP7v4hYegxGnV55bnXWP2h93L2obM0VprMhtOiz3x4+xCrZFFZqDBP5zz7Z59lcDjg8//m1/joT38cWZFOaRnzEh+EqW2OrgLBBJMz7lycJsV8dDqc4U1c3ImLN/FIc7VcGDPujdFNDc3QGZUdkvkcMxPlqJnkfzRz6e52Odo5IkkSaos1AROWKXBAQu2rFdn/PElxJyITy71TNfPYx7CyUKFSaZ7+gnWhOMtbCXGUCBhuJqIxMy9K0bufFdSRMIiI/Oh4XyidCxd6Q4hOJpnSUpZl1KwNN/V9ppMZ08wYW9VVVs6uUF2oYJVtTMfErtjFa8upCYEXkEyFl6iiKQTuHFmWM4RSSilz5z91LyYp7tgTUv9qTbSCkmPkFwhwtemYlMsZHy8WnMP8UGtttHDHM/Zu7tPb6zPujkUi5Jgio8+qODnLkGVJIoziU36uvuvjZS2nPHEYd8fM05RSvYxVMlEKD1ohz0/TFF0T/qRJ/I6gmFUYcSR+LvAC0mSOVTJxw7hAqYGYgeV80Pl8jqTIGVtUVMCzoYDOTvoTMXNUFaZLPmUzn+ErxGlAEAsRyiwIcMczQaGPEsF+tHQqjTJOtVS03iRFzuT8Mooi4019kjg5BeSGY6htfjl2hdHREHfscv2NF/nQf/9BgScLoqK1bZdFQr24vsgD732AO6/f4cYLN4oAO5/Dk48/Q6lU5Zf/yb/i03/nb7C2tMh2q1WshIRlQd3ZuLxRMEtFNSgIMe/9s89y6ewmv/ogBVasAAAgAElEQVSL/4XqQpVSvcR0MOXyfVu88O03sCp2JhIxuf/py1SaFb7xO19DViQWN1pY6mkfzTRJOffIOaFrkGVG3RGarokEsjPEKlmiIIhjDDULOiGUayW8iUvoiXMzSQT2rLsHi2st4jDCsA1+41/+J76+vgiSQCXt3dxjb+8G9Vpb+D/3hbiu29nDskqkacIl5RKaoXPt2h3SJGHYGTEbz7L7TbAHi+6MIlq8d9/YOSXcyz/v8VSMRcIgIklSeocDolDMks2ySLACNyCY+Yz7YqZ4cPuQ/l6PWruOU7ULOLOsSMS6ShQKIZssyYWpu6EKwVMUROzd3Mcdu1glC90SGwOKKhN6oagCsxGSP/NJYxFIvalXKNiPX//8XfmewrsMikZGClhYWKN1pi1MWgOXUXfMsDMU7aZQQDQVTSVJUirNCm+8dAO7YtPZu0e/v89weMg//rkRaxfXWFhZYP87N+nudplcDAijiLHvcXjYp7HcECDVKMYdCfqzbVdZ397GHbt856U3Wb+4ThTFeIrC5YfPc/3127Q2Wuy8tYNdsUjilN69Hh/68x/if/9b/5A3v/kGl56873S/WZJQdVVkc7JMHIpMw5t6WVURMU8Fpby10cKwDGqtGrIiM+qOCWSf6WBGFIohvKIqREGErCjC6T9Txea7bXGa4o5nHN45ZNwbY5dtxr0xh3cOC6f95koTu3Kc0Sex+P15JqqoYr9IUQQPMA4jdNOgWj8OinL2Z4EbEEYhoR+hqAr+zKd3Yt5j2CKbNbPdUiWTa/f3e8SZM79TcfAmXsFYy/cbNUUuVMNBHDE4HHJwa5/ZyKW52izaynGUiCRiPENWMk5e1tYQFI0w4wOqArFkaNTaNdqtM1iOfSrYQYYiCiNsO6tiLANVU5jM/IJoHwYRI2PIbDwTgSRrp87TNGNuBgReSClTEw4OBFnAqTlID0rFjmiu2szZiXmF6E5chodCQOFUnULBl899tSyx8QPB+ZsNp8dCkEzw886qA0lQx6sLVSGdz1ScAl4cFyKRJErQTb0wY56nc4aHgxNwWZFwREFUzIk0Q8tmmCmKcfz+5tk8cdgZ0tvr47t+1p2IRVCO04JnZwfioBZtXCGsmo1nzIYzwV/MzgmBiDt+b7Ks4HoTKgtVXv/j19jcuoxpmww7o+OxQgaf9iYiwX7g0jayLPHtLz6HU3EwbFHpXXz8Ioqq8Id/+FnefultrlzaRpElLF2gysI45swDWyRxwqg7EoSP3T1UVaXfP+CbX3ie2bNuURUd7RwBsNcb0N3rMd89Eu1HQ8OuOKxfXCOOnuar//l3+JGf/uR/fS7a4v2GnjCyLtdLaIao9vLfIWfiklysNfV9ZhMXK5tBx3FUUB5su4qWPYtJnHJwb6cgrYRBhDudcO/eNba2riLLMkHoZUxUFc+bUqk0i2Q5DmNRtabHrXdFUQpltKzKuBMhjrr+1leYjSfHtyIi4HtjMdKaDgQAudKsUKqVKJVtdFUVhJUsyOZFQ71dI/JDOjuHlKcVdFOIBWVVKQzlNVXF0rVCeCNLMPEdJv0Jezf2xHkXxcwzTJU3FdSPNJmfOjsEG1SIaWRZaADm8znzJC0SuHdzvaugKA6qOj/05z/B9e/coHd0UFSNsiwzPBoy7o2pNCu0N9vF7kuaptz/9P0sby9nwUJm/+YekiSxcXmT66+9yh/8yu9Qa9eIw5g7r9/h9isiuJmOycJqk4XVJv2DAdUF0c4BmA6mAkiaUbjv3ton9MRcbz6fc3i7w8LagqBvzOd86mf+KpP+mGvfucbgqF+8L1mRKdUc9OzDd8ciGPb2egA4VQfN0PBnAc//1rcYHg1pb7bRdJU0FVRyRRPZTxREBDOfJIq59cotofq6cj+GqhaKuSCKuP3qHYZHQ9I45e2X3kbRFJwMLRTFYv8oDiMxFzF0zj50ltlwSnevRxzGrJxbwdAN8fAEIVpZVGCblzeL96XIMpZpIMuyyP7DmNHRkDQR6wKKpqDpgkzR3e2KA9z1iXwRMExHHFr+zGeepNhVR+BsTB3LMUWWpwliQdW2iRPxXnzXx7AMdt7cQVFFYqAoCqqusrC2gF0WlU3ohfT2ehzcOkCSJRbXFjEdwQNMk4RLT1zCn3pZ6+X0vShJYoWm2VzCLluYjolTc0QyFsWMumPuvnGX7atbAAV2R9NVAi8jg5h6BoNNRFLgmNx+5Rav/eGrOH/2TxdzHBA7W4ejUUEsyMn1SZIU6Kbnf+t5JImC8n72obPHlPBshUY7ESjKjTKGfhrazTxnG8o4NUf8PkOjc+eQ0dGIMIhEQibLHNw6EJlyknDpyfsYdkZopoaiqciKUqj/VF2le6/L4GDApYfPZ6sbumATZgfGcDhh/+Ye3sRlNha4KEmSUBSZymKV0A9on1liNhKVpOmYJJEww9i/tY+Rgamtsk0UxlQXq0UFDQIuvLFxH0c7Rxi2xUPf9xCDzpBRV4iWurtdKs0KC2sLtM+0cccuv/Erv4ckSSxvbBL6Ib2DDlv3n+P3fun3aCw32N66yq/+23/FzRdvYpWsQknqTTwe/uDDzMairZxECRsXtjAsg41ki83LmyRJQqlW4uDWAc3VJnEYc3jrAN3UGXaGjPsTmstNVF1U9OuX1vmB8o8iqzJ337h7+l6UZXr7PZa3lgm8gOlgQv+gz+BgwHw+p9woF2fhNSBNkkKQ0rl7RJLE+P4MXbe4+OADLJ8VM7GbL97k2suvcfmxh/jAx97HRrNJEMe0N9vcuvUyhwe32OxdYjTqUK0ssrJ5BqtkUW6UObx9yN6NPXFv1xyGnRGGbaAbmujopYKJODgYsPvWLhceO8/VR5/i9p2Xj89FWULXVNENm4qEeDIQKD3N0IpEyCxZfOVzv4vrjrlx47u022dotTZYXt2i3moQZ4rdWrVaMHAhW8mQFTGeUlQsTYOGGNONhwNW6usFHzSNEwZH/QKVlUQxvu/SWl0SK0CyOMOTWLjz5JUkUKjzv9frXaKjRJZda9fpdztU6wtCUVi2iaNEcPCyNsq1b1/j8M4+O7tv4HlTHnvP97O8vUzoh8iyRKVZwXREhRKFPouL66yvttEUhcVlIS558csvsby9TKVZFVXYQEjyu7tdAAI/ZLA/wM12FZtLC9SX6sjZ7DHJQK5pktLd7VJdrGJXhG2bk83DQIgnnJKAH8ehaOXIqkyUKekGhwPxgMsS3/zjL9Dt7lIq1VlcWCMIPS5depJKXbT41i+u0b3XLTLA0AsLGzM1c/NxDAPfFWV/nrGRzpmNxSx0Opry+7/1f3Pp0nv4+tc/S5omfN/3/Xlsu0K9XUPRVAGrlQXXMUmUYn/x5PmqyDINx6GTjPFnPoPOgCRK6O33MHJAaSapf+35l7h58wXm8zn7+29z5cp7WV7axi6XqCxUkFURQHMieuAFpPO02FmUJImabRerCYpyTHYvAkkUs/PGXcb9CcPDIbIqs3Z+FUkWlbqiyoIEPvPRDBG0nVpJ2Nm9Y/dWURWRsdbLhTDKMHXmFRtv6ovKP0q4/eodXv/j1wgjIc6yS2Xue/ISZK1uELurzOcsby0RuAHDzrCw9crXTIauy8wTXMj8u13aapPECbdfvc2gv89kOmB//yalUh1NM2gsfYrJYFogyFRdFSs16nH11z6zxDt1cYoiC/VmlszJiiyqa13smx3eOmA2dnn55S8zHHbw/RkXX30SRVF56oMfQlFFWylPSBVVwanY+LOgoJ8XayLZPTkbzbIqU8w80zRB10Xycvf6DQ4ObnPl6tMcHd5jeX2ThdVmwYdUFIUkTgn9sLifBSLr+EtzKg6XHr+fN55/lTD0MR1TAKRdITaLAnFQ7t3Y440XXuDtmy+yvnEZ03TYPHee5pkm55vnOdo9orXRor3VpvndVXTD4tzD53jvDz3FvZ1DDu8c8vzv/PHx/NrQCoV1rnNwJy7j7jgD8Yo56tuvXseduKiqWnRK/KyaT+MEb+rR3mwVoqeTl6oq7N/cF240WUJimDpOzWHcHfPmN94UHFVTF/T4DB/medOMaq9TqTRZXF7mgfc9gCRLvP7c69x+822Gww7nHz3H1Y0NLE3DiyIu3b9Nvb7Eq698jVFfMGvjOCJJYwzDRpFVKs0aaSKQTGbJEki4Wgk1q+jCIEL1I3bf2kVRZZxaCSm7z/IrTefMph5JxqBUFBkkMSrL10gMx8QqWdy8+aLoFEYBhmFh21WuvfldLlx6hPVL61nyqGHa8+I5mPo+FcsiSlJMTTwFJcNk474N7N8r4c983HGKaRu0zrRx3z7g2pvf5fbtV1AUFQmJpeVtLl58jI37N4WOYzAlTVJUTXlXaxinvs9388OKKotZQ9lm677zlOolhp0htUaFKBAMMDHrcRkeDVlYWWQ87iJJgrHV2mgRBcLFodaqsv3gNoe3OwyGh5y9dJWHNjdJs5WFw90jBkdd4jAWwp16idALmQ6mBG7AxScu0lhq8MofvpL79VEJq3TuHGawWoVyo4Kma/T2esyGUxbXF/nGf/kGT3/0aczfOCa5S5IkbOY0lWGaZpLwGCODm8qKUvTfz559mCSJkGWVztFdnnrPR7n89BWOdo4YHAxYXF+k2qrR3xftX7tsMwsCHMNAU9UiOIZeiKzKLG0tcbRzhCxLRGHMQjZQTr6W8MUv/jKWJYJ3Y7HFm69+i+GwzdLqhgDeZuDRvH2QhmnBqwPR/lAVhdlEwDidioPpGPgzv1B9ToczdEunvbrGzZsvoCga9XqbxcV1DNui3z1kaatNa7NNFERi9lmxkFUFL4wwteiEq4iMXXWwq+Iw0EyNUWeIWbLQjTKqpvIHn/sNbt95Vfy8onLx3hO022dY2l5C0dSsAlTE0m0mjgnjCIV3MOwkwcmstapicVlVxb5qLAQHOTMuiWIODm/humOCwENRFM4/cl4sYM/nWGWb3Wu7hUx9aasNnLCly6yqhrMZaSbhj6OY9UvrQlRWttm8vIGzK4JxqVRjNhuhqhor51aZDacMOkN0U8d0TEr1UsHMC9yANDMROPHGCmuzRBP7fzmPTpKkAmqcpgmNxgqj0RHlcoP9/ZtcufIs7TMt9m7unxBdlNFNDXcsKm536hXVYb7np2bPbZrMqS5WkBVJiJ/CEF3XuXPnda5f/za+PyOOQ4LAYzZaz5KGhNXza+IZKllohl6ols3Scft/YaHO5uUNrn/3GrIkgrJhG6i6SqlWYp6k3H3zDqqq0lra4PDwNp43ptXawKpY2GWbwAtQVZVSvURjqYGq6oSBh6qrLFWrYp92ZYFxd0x/v0drs019qUGSpIWTy7g3ZvvqFvVWnRe/9CL+zGfY6YtKThUVtV0RYHO7YhfJxWw4E2tYJyzUikNUF6/p4O0DLj12QQhommW2L59h5vncXrrNdDjhaOeIo/39gm8oSRLN5jKm7bC8tcz6pXXhCXv7gN1rOxwdCfbouQublE1DtL0lifVmgyc+8D729m7Q6dxlY+Ny8Ux43pQ4DhmOOkShT5zElEp1dN0U1XyzglMVHYj9m3tMxyMuPnY5SyyVU2xIgGq1RKtZw9Q1+tMZnb0utGooikJjqYFTdajUSiwsrCBJCisr52k2l7n42GVWjzaETkKSqC3WUDMlsKzI1EsOUfZcVSwTP5JRZaEpuXpmk/+sCsGjrMg4VfH5jHtjdn//TQaDQxqNJWq1Fkkc8fbbr2BXHVbOrRQ+z2k6R8kCo6L9/zhTlCQJp+YUqsw0SVnaWsKdeciyTKlWornSZDoQSjLD1KkuVhkdjai2akz6Y8IgYjaesbS9RG+vz8tffYnRqMuVZ6+gKwqxBHXH4dnHHuDX/8V/ECDOF1Ue/fCjqJqCVRISXC3LmjVdpbW8gl11cKoicy3XBe18OpgW6ru1i2ssby/hux7tM63/SpEUZ9VcGgvro3q7Rr1dY3AoFts1XWSAV569n/Kv1/GDGRISFx67xPLWMnEYU2lW6O71uPDYBaoLVZEVzuf0ZzOqto0RxwRxLNpySUKpKg7I9pk2mq4RhRHr921gWDr3//EzGIZFpbKAYdisXVgrXmupXqK716O1oVCqOaQJRTA8OcfJZ0VWyeLM5U0sXbTMFE04ruimlinlNDbu2wBg1B0wJ+Xs1fMA1Cd11u/bYGGlKYREcVLMSYaui6ULz9ogW12ot+qouvBY/OSf+wH++T/8ZWqLNRbXF0VADmYkcYRplajVWpRKdXx/xrg7RpZlnMsbhdQ/SUQlHWZA1XfcjAA4tRKjoxGSLKpFUW1qLK4voigKh3cOuVR5lKM90eoHaCzVUXUNqyTaroUSNEmQI5nGsnDJyZXCYZIw9kV2XCrbeH7A+uICe/0Bm5c38KY+y2dXxPzZP5upmNUC6GpVhOS/1qpiqBoNxykW90+aeMMxfPqkJWAURLQ2RbA2HZPZeEa5Ueasd47qcwtMJn103eI9f+p9PPLUAxiWQfdeF8M2mfQnVBdrVJoVAi8k8sPCNOIkoNefCceVxfVFZEXBHXtEUcTy2RV6vYsA9Pt7VKuLXH3PE5TrJfZu7jPodPEy1e8RRwVQGYRZR371eiIxOPfw+WzxPMK0TTRdwypbyLJEa7NV3Mc7d96ktbhJvdXgvieFaKS720XVVC4/cQkA1x2TpAmr51c5v7TE2PM4HI0oN8pc+9Y1kjjlwmPnWVgVtmzu2MWwDS5fPosbilWc8HqAJDk0V5tsXt7ArljEUSLmZ0lKmqQMDvokcUpro8Xdw7tcevLSqVtxPp9z7uFzvPTll7B1nfVmg6kfYGoaoW0jXZVwJy7tM2KloJ+psjVDw66INZBStmg/HUwZdkbFEr5tlVlvNtAUlSSNCOIYSzc4/9gFnP9UxfMm1JoikdZNASweHA5IopgoivC9KaZVornUpFQv0z7TprpQZefNu4R+yPLWGs2VZtERkU8ERU1RWKnXsHQDXVFoOCXqjkM/M+KI0wRD1dAUhac++Cfp3esdr1kpCvV2PZt7WzSW6oWxBQgXMC+KGHke3ckUWZKxdYmx77NSq7F9dasQvdUWa1glk7ULaywtb4tzsbrI2tpFljfWuXXtDbypJ7qQ2Vw7iZPiveTzxe/1epfL+zDYH6Bbwpuxt9dl8/Imd9/Y4X3f9xjmZY23jzpiRlcvM0/nWQRfZdQdcbRzRBwlqJrC6GjEvev3eO4rv81f/us/y8d++APixg1CoiQhiCIqlSYr2yuYJYu7r9/h8tOXmfQnDA6HHO0eMU/nNFcXWNoWJIgojFjeXhaZQpJil21RipeEZPve/hG6rpMm89NuGyB2CZlzfmkJ7aLC0HXpTSdsnVsvvsT+bEb/aMCf+Ss/ShxEBJ7I2qMgpLHcQJIk1i6uEbgBlQWxjN6716M7GVMxzcIKzVBVLj52USwUj8Q+ku8KBd/oaIgky/zYX/tzBN7HAJgMpqJdt71UzOZKNQd3IqzRdF0Rs5MkQTtRKcqyzEqtxsObmwxdl854zNT3eeyBi8dt3MxabuS5lD/1YWbDGe5ErJswn6MZOk5FzOoqjjB8n8/n3Li5wx1HtLFzO7fFcpmV8ytc+9ZbtDbbfOH3nmP76jZREAnHjjDik5/5H3En7rH3aOZKlB+g495YVBy62CXMd8zy3dX8cscuL37xRR58/1X2b+4VlfPa1gqGqtKfTFk6s8S5R87Ru9dlMtgqFrUVTSWOY6HmHc3ETLIk9hiPdo544On7yU3Z4zTFD4XN3WGnAy04s9zmlddusHpmmcZ6iZHnMuyMcEcz9FqJVs3BqTjYpoGha6gLtWKmXLPtYme0Xa0WFoH5lSbzwgvWiyKWG3W2l9qF69DmhXVcTwhhuve6rJxdFjPErJX++kvXhcJ7dYHGShOrZBUjjcgXa0eD2aywlwsyMwElczKqLlQxs0X5fP/wzANn0A0NdyIMLPJ95OqiEJvlKtjcMCFwA2qL1YLoDhSJQhRE3P/M/dx65Raz8YytK2dQdY0kSejvCbNsd+zykU/9uFCTRzHXv3PjeDl7a5mdG/f4+me/Tvdolx/+iU/yp559vPDEbFerfPxjH+Jnv/gdDp/f4fDOIdsPbnPu4XP09nqMjkZ86QvPEXgBVsli/b4N1CxJVHWNC49fFA5LSUL3Xg9/5rN2YY36cgPDMpiNZ6xuLp26F72pz/ZSm5eAW2/fQ7uwScNxGLqucOTKdhsN22Dt0jrNlYVCLZnrGIAiAa8uVFk7t0GSJPyJj30fYSzWt1RZLhLQ7e01PvbTf4kvf/a3WVxfpLZYpb7UyPxUh8xGM6F8VlUxTsqCb14RVhdrnH34HPVmFT8IufHCDWRZKlZBQFgDnm8vCbORzOR/tV6nXa0Uhh1eGHA0nvDIhx5hNpzhu35hvhBHCU7Nod6uU1mosN5oCivArFu2c3dHFByKwsT3ONtq44UBcZLysR//k/zCP/tVDMekc7fD8Ei4Of3p/+7HxXMSp8zGM5yKw+r5VVQtG+lk95yiKkjKCSKO+r1Xi+8yKIpSdDqY0lxtMjgccO/6PWqtKhXLEmavybzIdhVNwS5byIpCFISkSw1mo1khKZ/0J3z/Rz/OhccvZobaSWGj5UcRV555gJ23dti4vEkUHMvp7bJVtMeskmiDqrqGZmqFS0QUhFhlm82VFooko6kq14YzWmfaREH4X2Gp/CiinS1t5zZzvekEQ9MKs+FWpVIcYH4UMRpNRICFYuYWuAG1RqXwK43DCE1RMTIJfl4p2hVLZMiKQq1VZdyTmA5nxHFKmsYkSSpstTIH+3wGo5nCamuxUUNaaAg1myeyzsHB4JQFlwSFo4qt6zQyDFZuypt7RjZLpczbVaOTvXfTMYn8SChPaw7teo2qZRGnKb3phDQWXqFRHBcVhyrLLLeaXJMkMVdUFZARsztJqPLMkiXa4MMpoReK1Z3Mrk7RVKysTTafzyGYF64oefs6v6IwZO/ubR7katZ2FXtK7erxPmMQxziW+NxK9TJpmhYGDoEbiBa2ImFXHFRNwZ96lBtlVhuNUy3NZC78Y+vLdUiFenhje5XDwx6ba0tULRt1SXgsRn4k2r+q2Cuzs+rc1PXCRi73DtVVFVvXeeflBSFGFkBrti1s6MKQ/nSKripoJUcckFvLeL44CHK/1CRKiMOINJ0TBxFRJj5RFBnZNvDdoHB8ya3QFEnCcExMR1TlQjEN7iTzmgxCSvWy8OC0RPtYzSvhLAmTJHBqDpqu4k48ZFU5dbjEkTDDzvcEmytNxr0x922uczAa0euPUDUFSRIOMrl7DIA38ZjHc6EePeiTpinjcZeNzcs88PT9NEslUf1m3Z44SYnikCc+9AyTbNySRHG2AiPEQWJOK1OqlpCzdQHN1FB1FXckyDP53NTQxfc29Xzssv3Or4vQC/DCMFvxcRm5LtVsb9L1g2LVSFEUVFUtLAjncyF4y0U4uqXjjT2moymdu0c8+sEnOHN5kyiJiZO08FW2dZ2yKVyfWksb2eebkERxYRYh1Olq4chTrpeK1bMkTijXSywtNQv/YX/m0zrT5iSkKw8oNcfBCwOCKMbUNNwwO/MksHSDupNCG/qWzrg7FiMPX8ZSshaoLLNcrRX72jntIo0TLDtz+0oEQECVhUJXVRRkWcIduWJGngnuDMsoukdypiMwbAOzZOHP/EIwmF/vhBl8L9e7bJ8KBMnNF27w7Eef4dbLt5iOpqxdXCOMY44mwldQN8WDIysyUZCSnvDtzH0hd97aAeC+p+5jfaFJ1baFe0jm3B8lCRefvEjnbofpYMqZK5sMO8L+TDN0kmyYmsQpmiFuZkmSUDUVNZP8AkVABOjv92hvtjMl4PGhlwsCDFUtiAAAC+UKSjbjyX8un58Z6rF5eZJJgXPPxHalysjz8F0/+8JF5asaRkFcqC/U6NztiJtGVVhcX6RULxeZNgj1lyTLlOqlwvM0xzRVbRtDVYWQZjxmAERhdGrPSM6WYuUsEFq6XsyQQLSMc6GMnbXTHMss/i5AyTIxNY31hqiEe9MpUz9AM/TCozBKElRZoISWazVqizUCL2Dz8iaBGzDTZmJoPjl2OTFtE7sslHK5ObuqqSwu1NjbFZ6oYqE/Fty1d8iq0zQRbdfemHKjTJytAmmZ6Mc84WMqSxK2Y+G5PuWyg5s5FQmcjoJlGkTZ51ZpVqhmy+05aio3qS47NlrmH5pbwaXzeWFNyIp4bXkSkicbtq5jahqaqhaG1mEci3v5HY42IIQ/kiQV7W5ZlimbZuZJmlDK5ktLtk3gRARRjKGp3OsKRXUYKKRZ6xlAt0Q1OhxNRGs7CzZ+FBYon3w5P5ex2yVLmIzHCS5izeLkUnl6wuosD7q6ZVC1LNTFJoPZjCg6XvtRVEW0IaOYo7sd6u2aEK9Uq8yCgLvDe8WuopXNIvPPJV/IliQJ3dRFS7i6wFMfear4jIM4xgsDNEWlN52ytL5K916PB99/ld5+H3ciZo9myUJRVSRZOhHQpcx0IBZJgB8RhxH1hWWRIGWG/V4YUl2sFvfP8fuHe50u65fWuHftnkAbRRH9wZgoFP8vcU6ItRZJkgqTkNzeUDM1FEVhfDTi1su3aG+2uPjERcqmWZjwq0rmRKWqlC0xZ73vyUu89kev854ffo+49zLBWp4AJEmCMlcyU4ew2NlrrDSoWiLAK5KMbmhsP7h9yrEn1ySIm8hAU9RCmJUbkAivWnEu6YaWGeKLroGZ7Qnrls5qo0HFMkXVK0uMPQ/N1DFOFENhtn+YX+v3bTDujkQXIhvzSIosCq8kzTpY4vfmM3t37NLbEwr5vH36bqpEeLdBURY3bD+Tej/8wYd5/re+iSRBbzoVOJlUGM6maZoJIBTCIMLIMvSyWsawDb78a7/Hlfc8zOp6m82FBfHQxjFWxrFTZWHR8+iHH+XLv/JlGisNSnWxwGvYBtpUY9KfCNVltl+oZm41uqUXmVcyTyGOmfg+g0QzUUwAACAASURBVMMhF5+4mGWNx+9rPhcmxEbmw5dfVcs6hRsCiqASZwEuyEylc5RSTgqZBSK4aYZAqARxXOz2qVlQc6qlYqnV1HSqi0KUk6RpwTKsWPnfUYpDNRfuqFkAUBWFaeAL1/wT+4fipj62J7N0DS1RCtNlEHQL5UQgsTSNse9RMa0sqApWmiRJgmbhimXjvEL3M7cWQZ4QSU29Xedo54hyxaHZqOAG1aKClVUFIzuM4jSlZosHc+r7mLpGs1Rmvgp7ux04EntaaTIvZgXvvEbdMdWFCoEndhz17HPTT4iaarZQuiXzlIploSkKM1UpuhteGBJGoqVbyXxCC0KGLEOSUDnhAiNJElXLYrFcLozEvWz2mBtY50bj+XduZNW5pqrHlXVmCHDKcDAz0DcWRIJm6cczmByXZqhqQcBI0hQ0sfhsGjrmok4Ui2qxVi0jSVAxLYI4LqzpTE3PDlhQZakQveRZ+Dxz6am1hNuMYc+QVSVbME/FzIiM6JG5ieTPy0K5nAWpCIzjKljVNQ7vdNBMnb2b+zy4vkitVSPKLA+FqllUO8VsyxROU07FIY7jYv/xP//Cr/Pej36Q7ctnaJbL2LpePHc5Buypj7yHL/zCF5gOZ5x7+Bx7N/ZOuVVJJ1qFOUzAsAzhbaoqeFMwsuQ6J+S8df0O7dVFhv3xqXuw3Cjx7d/9Dh/6sfeL9RUvpCOPi3tFywg+8yyRUHVhrSbEboo4p2JhPHHt29cp1Us8/P2P4FgmQQYSEPeKfAr3JUkS7TNLfOlzv0Xn7jbnHzkHCPMUd+IR+hmKKTrmnyqqItrdqip2JQMJNwxFYl6rErxDRCSsAGXU+TFtJ98rjLIkLU4F0UiWJBRJxnN9KgsVyqZJo1SiYpk0HKdItL0wLFiMsiQVuLMcwSdLMrIMK2dXCoehMIiK1y6SaKEfMWxDCPJURTieVexC+ZyP6t654/zfut6d+lRReOzsNrceOc8b33qLmy/e5O/+g7/CV15/g3v7R5iOcGTP21Ry5lxeNStCAZZBNp/7/HP86Gc+wdntNVZqtWzH7fiFN0slFFnixZeuYTomH/3MRzm8c4hhGzx4bqtYfu2NJww7otfsTz1UTSHM6BxWyaRRKfPA2jo3Oh2++8Vv8fCHHkYzNA7vHJ6qFJNE0DiSrHIyVFUELcMQ2KqsUkjSlJHrFgGk1BCCjIppFi7+/dmM/eGQfn9EFMbidThOpm4VQTeH0JbqwtFiqVGnVakUrdvcNDz/TExNK0DGqqJQc5yiLZCbSjuGwWQwZTo6JknEqWDKqfLxOohqHDPJQKB4/CgSB7Cm0Sg5OIZBdzJlqVolyJxqBrNZMZOUMysv29CzSlMSFXUWuC+cXRe7SYrCar2BreuZBdysYLDl2JiceiBJx7y/mm3Tz2yh3IlLlDl7nLwkScYwbPbf3qe1sUgSp9kqgSAb1GybZD4njKLM51PGyIgRS1mLNZ3PMTSNV+/uMBtO2dhe5f61NcpZuzLvMMiSJIQyjiOM3LPvRVdVSqaJpii0VZUzC0LQkbeH8veTg7VB4JkURTmF0DmZHSeJcKAJlhcxK1qBS6pY1ilElB9F+FEoKkfDZM6czYWFAgUGQqzjRxFDd8ZBVxgTNJYaxe/KeZoAtbJD0K5jOiYVxy4gxkpLojMWB3w+/9SU431bODY3F5Wtlu2vahyNj4OHaRtYJZNP/Q8/yn/6/JfFHqxt8sbePWHPWCuRRDFxBt6NAnHwG7aBbunFXuSrX3+NP/Ppj3Puwibnl5ZoVSoFdLhq2+iKwsB12dNU/uLP/QWuvXyT//D3fpn/9ed/husHB8Jw3A8Zd8di3y3z2TVtU+wcBxFWyWRxqYmmiO9/vdHgt577Ft/9/e/yzI88gzuenboXLdPgpz/zcT7/m1/lYx/9IN3JhFuHHWRVxtRNsRaTfUZ2xS6gt3EcFzio26/cYvetXZ78oSdZO7tCEEZ4QUjJMrEyALali/NDiiKqlsXZpRZv+CHf/4mPcPD2Pl/+la9w5b33s37fBs3lptgvHAvleR4QxexZ7PrN53PqJYcLy8s88PF1/o9f/I2CppE/Hzm82tK1AuUnQM3CzCIOk+IeEH6/FmVTdE5sQy+Qc1HGpRx7gqqRnz2yLBcMxpyyJGfdmfWlxcKRSzf1wk4zTdKCzJKPQwxdIwgjWqrC3dfvMumPha5lXmjyvufr3QXFrMIRszyLhz/0MH/rf/5X/ORf+wTqksw08AkigZAK0gCrYkE6R1YVxr0+B7cO2b+5x+blTcqNMtUsU8/bVPlhnc+64lg4eMznc0r1Eq989WUObx9y/sGzPLC+zkq9zksnfDPTZI5dFRLgSqVEq1Lhld0drt/cZfvBbVRNYTqcFcuj+TVPUlxPYEry9mmSwVXzis3IDsi8qspbrUcT4QChyrLwDnVdxm5ueTcXiitVLSo7VRZopUapxI6hEbgK/emUhiMyn5wzWbUs+rMZhqoWleHJ7yGH2CaZEbcqC/nxyUpxnikcbV0vbjw4bonkbdT8v/OKN0lT6tn8Mc44g7MgEIds5s6iKDKOYWScPgUzm5sFUUTVtqksVBhNZyxVq2gZh7JkmgxnsyJj1LO2Rt6W8cIAPxTBRJZF8Mhnk+/cDZvPU3x/hjebEvpRlhGKGVmiCOSTIklF9W5qWgH7NTSNo8mEKMvC3fEMu+qwmM2MDVVl4nlFUAyTBD8z8TZ1negE5zJ3hEnnc7F8nN0rYvYSFqR3NWub5/PJvBI9iTvK3phYTI6igkGZMx/LmnrMBCy+w+OAm3cVcrSXGEPEjFyPwBefY94Oz38mTdMM1yYXYqe8PZz7t2qKqCrm8zl+GCHpIhnLn4181pVjluQssXunr2ulWeHXf+33+Us/8RHe2j+g0xswnnmY2excUXWUWJgcYBlopoZh6Iz7Y5I44fXnXmfv5h7v+5FnKZlmMT8rCO1Jgq3rooKfuPSB9Yvr/MCnfpA3du/x6PZWwcG0SqJ1LkwYsm6KLJGmc2EUb0dsLiywtbjI250Oh3c6PPMjzxBl7kwnr2Q+53A0RlYU/u0vfI4f/rEPcmVDzEpzmsTMFaMDSZIwdK2Y9d/e2efo5hH7bx+gWwbr51bxgxB34gpnnKxKjZIEG/1YoKaq4rlzhOvLxuVNWhseb37zLWYjl8c/+Ailss2kNGM2nBZG4KoujNybCzXa1Sq2rrM3GHDj2h1q7fopy8v80hSxLpF3pcI4RleFpiNVNTApEogcTzaczSgZJkYGeQ4zJmMYx2JVKvdxTY6Dat7ZMbMksu6ItY1Ob0DVsVmsVtjr9EiyytCwjSLhzO+5vCAa98bH+4rfO19YvJZ388NBEHFtf59aq0Zvr4fpGDz2Jx/j1/6vL9DabPPAY5dYazTYXFigYlkkacqdbpebu/vsv30AIFYjzq5gm0ZBN58jqp4wjpkzLxiKufsCgDtyefj7H2H3zR2e+81v8Efpc2xd3eYjH3iKKElEMPI9+tMZYRTjBSHX9gRqqnBwn0bFztfJDyqdz0VGdeIgStK0CGI5cDSZz9GyGVweJPPstD+bFRWCUKW6mHYmGshbFyduOMcwqNfKgnQwcZnVAmpZYMx/rmJZxeFq63rB9stfGwi2npLN8+ZzCgeV/H3NgkAkMlGEnbV8TxIz8teVV1OSJJGEISXTxM8eaBAP/iwI8KeiLVOqOSTpMdRWlsALRStWVxUWqhWuvXGbUaNOxbKwsgomf93TwEdCKrxu/TBEQip+X65IjAJBtUjfIamWZZn/h7Y3i7UsS8+Evj0PZ5/5zjEPmVmZVZlZlVWugXKVy5LpCWiBaVtqCQHdjZB4QAgJeIKHlpB4QiAeTLtf+gEB/YRoMC0j3G5wu8quyZVVOcWYEXHn6Uz77HGtvdbm4V9rnXMjq+wKS72lVGRkRuY9Z++11/r/7/+GTqcHVlco0oKE0UUNJgQsBcMAq4Nf31PLskyhAN9HVlWUpNHroheGBhpybDLK1puQVH9ZCrqqOAcXwhxy6/dc/7xYzXD1pccCAB2GnhLRty+9tWVWqU6QG6jUzLI9F45QRYXjmNBcDesXjKk4L0cVaSWWy5yMk10HSUjdnm+8eAVcYZvZuCa5Jepe+K6DXjQgI3T1mQxErDpXnQ3pOY6RklAazOqZWbaNYklEpv/qP/8f8Lu/+1/ixeUED09OyFBAJcVLq4WnGJl+4KGuKQHhwfcfQDQC7/3Ge+iGIfpxfOW+cVVYs4bIILAsRRLiCJMIP/q/f4QX15/jvW+8ja1eD1u9niGnaFZt2LFgg5ySApfg78enp/jxh49IrtGJcJ6VeDkpo1Vz9S9+9S18/MET/MP/5n/C5s0t/M2//a/S+6C6qJKxK7PuaU5m9Bf75+iOurjz9m0s0/wKOcRXrGV9+Y6DiYLsATqMvMBHlZUY7ozwhX4Hp89Ocbx/hsHWAHESYWdzZOBKXSCeLRZ4+OIQ+TxDvfZ9rnAt9LODZfYHIaVy5rIAZ9Xl+aqZ0CHaW70eArU3AMRQ1wHrTO2TOuMTgJn9h55nGoBuGBoT9ayucKMzxt4W2Via8Gk1o2+UcQmRljzYDo3VpHNVZvLLXK90KNqOhYef7iOIAtiOjbYlfPx8/xzn++f46I8/hO3STGn3LiVM28oHdO/+HqSQiLoRoiQytlm+4xCjzimwKEtYloX9y0ss8gJhEsFSzKxstsSwl2D3m+/iydMDnDw9xod//CF++s/fBwBE3djY/EQJkQb27l+D49iYTRbGQ7VhzWeIDa1sUWYV0rI0mzyAVfjxWucRq5mnvnz17zT2P8mWSC9TqkB7xEjVDiK6Ggo8D9CdRuBhOVniYrDEOEnMYQusNvStXs+wITWUq6ErDaNVnMGyYNiwAM0W5kWOXhQZ1mkJIFpLvF53NgHoBQ/VfEbPC9u2xel8julkYeYUbUsdkf48ru3Ac6hr7YbUFS6nS0xVSkipvq9+wbtWBK5+Pm8aBJ6HvK7NdyKPQ2lCXV8+OGzbQRh2UBRLTI4uMb62gbqsqUJVULPuYCzVMTqqQo1930Q4nczJsFnPF231eQA6uPTcVrYtuGJtxr6PRVGYIF+sHYqu4xjNFwBEazNpR734tm2bny/b9krIMCySL5RZiUVcoBMEYA3pwYRs4diWmRNTsK5D/0xFeNmWBc+hGScXArM8R7bI0bAGURKpZ+AY8hBT5Db9XKSk4kfPegF6zq5tw4lj1IpQl4Sh8b0EaFOj4sgCU8Sy9Vm89oEd7Qzx7b/1LfwHf/fv41u/9S1851fepZ/bEtSv7wkXDWZ5gdl8jhcfv8Bge4D+Rh8b18ZwHZvgO2cVEEyZkBKssbGsSvKMLWv4rY98nuNLv/ElHD48xB/+kz/G+NoYWze38O79O7AtCyXnKOrafBeuEi2+9+AhBBcYbg9gwUJRkgXiywWalBKTdIlhQvKDe1+8h8d/9gS/8/f/ETavbeD223eoS/PIhalRTlvpxQKCC4z3NrBxfQN717dwekxjKP298rrGNM9wfTRGHARYqo79dLEgl6WiRNyNsJxTAdnfoNHAJ3/6CbzAgx945pDQCUH0/tgrhyV1H+lnXmVusqaB43sGzTMNwtpcvJHSwKv6vQk8zxR8jVoXLaj4LRmjIotxtF5rEKd1NMtTCTP9OMJWr4cXx+e48Ja4OR6vkES1l+rnBfjI2tyI9RsuYNk2LGUK8ster2YI7vuIujEmR+QJqm28hjsjY4kUKN0ZAJPiHndjDLb65pCZzlIcnxJTrm44uJSYLDOcLhY4PZsY14juqGsGp5ZjgzUC270I33zvC2Bvv4En52d49KPHYJWyFnNduL5FcxG1OBaXC7QtzJCbVQyWbV+piACCaucFwZVtRPEoetN2FOTprhFx9KLQOq9aZdKdPT9HsSyUF6MNC5bpPLRMQygYDaDugdcMi/kS1cYGrLI0s5t1pxiAXlahBv8L9eeyqsI0I49HVvMrhJQWUJFFpLPLqgpx4BvB+HqXoS9dCTYvVXNHz0+Irj9MzMGrDzRa1GpTbVcJ6bZr4/J4gkLN2iLPM3Z0ekMTCq7VBJSKc5oZzwiWrqtKeXlehXUsy4LrBvA8RgzUcQ9lRhB45Pso1abciyJzAAh1IAFAow78i5MJbtzcMZCnZoPqrocr8oaW0yRhCM91MZ/OMEySK9CddF1AHYhybX19xihCrSvZtliU5ZUDX1ukVXlFqSNVhUYI0/n66oBaXxf64LdgIfBcCNmarq5Q4dg6g053ZPq/AYiMlYRkXl0scohGII9jjJPEfKZ1hKETBAYSbhWqooXcXDkB6XunL88lYok2tv/mb34T3/vfv4f5GZH2hjsjw5yOezE5AZ0RX+DmmzdR5RWuvX6NRh01w0W6hOe4Cikh6Iw3DY5mM6RliU4vVmx0BwVvMOwlGHzlc9h/dozDR4d48fELvO+/TwV0RJT+tqVYJi2V2LyxiTiJUNfMIFbyZbgbK8mz0cQ5Nm68cZ1kMbzB8w+eoS5rBBHZlQVRgGTQQTLsor81QDLoYLPbQ17XxMiMAticiFGsZDhwHCRBiEYIzItCxXxVODi9wPx8Dtf3yDkrzbF9awtxN1JpQed49vgIZZ5hsDFezd9UCLYxyVCz3JcJKVJKk/0ZeC4qrj1LfbPudXqMDgXQ3AVgVSjpEOtlVRMvoa4oBaYRqDXz36M0IB3p56t1ZVkWdvoDMmu/mOHmeAwLZCnZokWtkDEOoG3Ie5okedw8j2YNPftlrlfUKba4ubmBjX4Pf/KHPwYAeL6Ld7/zDljF4YceOv0E3TjE3mBo8GWh5hYVY3iwf4iDB4f4x7/zu9jcvIm3v/Zl/GyYwPNdXB7TgTg5PcfJ8VPsXbuPd771JYyvjVHnFR7/9Cn8LzvY7Q/gex7euXETb1+/sfoyjoPD6RRn84URAWuT7lYSRdmyLPL3W9uoLEV+4KzBeZqiRQvPcc0h7ijmYW1ZJqBVyxnSsjRQGkBhosPtIdGiZYvL4wn21ZxqURToxzGOZzOcLub4dP8E+TxHZ5CgSAscz2fYGwxNpcXXOjlHLTANNU6yJZ6cnVGM05wy8NCudH36ebm2g1leoBuu3Ev0JdvWQCOrGZcwwnWm5qp5XcOybYx3R0Y+0QqJZ8encH0PG8pHdnfQx6woMFku8ezigvwjiwrPzs5xZ3sLp4sF+nFM36VtzaEOAIuiwLzIcXQ5RZWVyOY5scgg/1yX+yCIkWULHD+28NpXXkc6z8B4g1E3QT+OrzD1hDrcFkWBrKrw4vyCtHh1hX68CyEl8rpGLwzBhcBllmGe5+BCIFCHpRZlN02DxwdHGMaxmadpeEyqA3S969ewpGaornfi6xWyFBKdfgxeccyn5PKj0QmSgEiEHhWdnSAwCIaepywrKgzmRYH9k3OcPjs1kV1RSEnngUvsWNG2ahaj7qXvoXRs5PMc+1yo+XYXgcvMoWxZFoaqi9Sblj6c50WhyD0M52mK+XyVuMCFMLM7nezyua9+DqfPzuBHPnnE2uT5WqQFhtsD3H77NgZdclEpGcPJxQSzszk+/emn8AIf23e2MdoYwHMcHB+eG/mWlmhdf/0adUmug+ksxf3re7j91Xdhf+1dhJ6P7z14iPSCCHFSSkCSPZjt2ugOEmSzpSnOpKBZo+uT5Gv9siyywORCIIxDbOyNkYY+ZENMfEdZ3vmRj+t7W4h9H/04RhLSQTfJMpzM55hNKHLq+ccvcHFwASmkMkJJ8GT3BdlWBh6OHh9hfj7H9GQKzjg2b2xivDuG4zg4fHyEu+/cwde/9SW4v2bjYrlEtiyQL3K0UirDbGkyTEvlYypUVBlwdX/Q6E2h1rbrOLDA1V5BJLtApcc4tq1MBhyzHmzLomQWKfD+p88wP5tjsD0w91qPKNKyRBIGhoEKkD5S2y3e2d7C93/4IbHU1b93LFvtkfR587LC4mKBYlkYc/hGRVS9yvVKh2KelXj0/BB3buwiUDRiHVHTHdHGOIg7GHU66EWRyewToKrDtizMLxY4/vQY+/sf48mTP0Oez/H6m180Bs3np4f4+OPv4vx8H8+ef4Cok8D1SGcTxAQlcSnhSon18z9Q0FdfdQbLqkIaBZieThVjiTbWumQIoquCaX3TdBwOEVs+2w3qP6s7JP17PeM7zjLDkpyezkg03Ah4PrFZHdvGNM/x4vISBwenmJ3PwStOh35ZI81LjJMuQs9Dxdb0QpZFeh4hkCr4hIgvDS3yhtKsOWuupDDoWYc+5DpBAN40KJmWaVBH46q5EOkpG5QtJ+hQVX0/OyBNqR8F4BVT3polkkFCurHOEq5jo+IM0yzHi/MLHDw4QJmViPsUi1UNB/BsSrKv1P+75hy1OhiyusKiKCmnsOJXOi3b/mz8S9uSVpFcVxwwRgHB+q+Kc/RaYuYKBQMBMDONgjHk8xyL8zmC0Eexdw2uIjBJKfH88tIcnrJtjS5xXaIzO5vjZHtutIS+gpKg1rtBGtaKKL1u8prmn2zN/EBfOmPRsizUjMN3HZSMXdHQ6vlMIwTgat0hNxrftqVsxyAO0FEZlmVVQ6j1a1kWAjWPqRjDoijpmXsuvJAsB7OqQj+OUTccrnIHMevdcdCiNb+vOK2ZTB3KeVlRsoJewyA4yxyMroPB9oBQg8BDd5gAloXB1gDXxiP0ogiBR2SStCwxy3OTXPP0/acY7Y6QpzmK2zuwHQv7nxxgdjbD4nJhjPYd16H4OSlx9OQYvR51vt0oQiMEvvnm51DeIweVknNcpCmysjKuLKzmcF2XNLC29edusqzm6IURunGI4NYORrtjRAHpTLshMUg1K1oT2ORa8akJbMWiwPMPnuG7/+z3AQC7O3dx7wtvgJUMFwcX6AwS7H+yj3ye4/zoBEWRAu2bRtuZT3IyT+gRUqYPXzkeoJES88USxZJSgNY7Yx0pdeUdA5HMArkiwwBEvNFQPrFThYFOtUyoVoQapubhx/MZsllGspooRFUz9GLiTGRVBcuyMMsLI60BgCQMUTKK2hJKbjbNcwzVPQwULNoIWndlVlI2KxcG4m7dV2TZ4BUPRVbV+Ph7H6P+Ym0gLcEFhOsYcSUJjGlD0JCGhqS4pLleeplid/ceptMTHB09Qhx1MRztqs2P4/XXfwXz+TkYK3Hw4gE29sbwAh+85phNFhh2SHemGZv6UGrWXngAiAIfnX4HrZTI5jl4xcxB/jIlSQtr/chXzg2+YX8CuFL1605R/70+sC4VAy1Pc3zwRx/g/PgI3S5R4DlrML+zi9Dz8fEHT3Dy9MTA0IPtAVohMTub4ebmBm2Gaka5fmnPyryuyQ6P0YyUKZqybFYBuvoqGUM3DCHUwbcuxyDmlg3btg0VWus+XQUBuraNw/1TtFKCVwz7nxzge7/3L/D8+Qf4xnf+Osa7Y2zf2cYnD55jcm0D88kCBw8O8NF3P8atz98iPdRsiayuMOx0jOg38n2U6nDXf1WcGzN27Upk2xTTpF1H1i/9nOmlVposRRYpa4ZJlmGcJEbwbCsYnHFOHX5eUZjpskRv3MO1rQ3YFhkUPNo/IgOBkpnoseuvX79CqmmaBgcXl7g+Gpn/PwBDytEvd6vmt7pT1Ae+LlrW16KU1BmTmTn9yhrKqqwV0qEJNrU6iFbFGzcQu/bxpfmUzqzkWG6X6IYBSkZmDllVYZJluEyXJr/RdR2UFceyquhn+L4izTRmM6TDkD53pe+nKnAWRUEMzmIlcvccB7t3d5QrFXVUfuhjtDNCEoUYdjrwXQf9KCZ9YIsr/qzzZYZ0usTRo0P8X//kH+LNt76BN9/5itncy7TA+dEpHj/+MdJ0Qh12798DAGPonZcV3OGAYD7bRslqyJY2Xzq8ArMWp1kOx7VRpCVJNVTajq3el/WLCG4CJefKKIN4Ej01W+8EgSHYaLMMx7YhmgYVY8hqejZ1UeP4yTHe/5Pv4eHD74OxCh988P/ht8f/hZlD2raN2ekUJyfP8ODBnyLP5hgOdwiK3ejR51AmGeukLy198hwHU89FmZUGVuQ1oxGTkFifKRL5BRCyNax5AODqwJGiVWvZwXqH6awRW2RLn+NgMkU2yzDY7KNmHKHSbs6LHPmCPGlndYooofVaMIYb4xEWRYl5kWOyzLC4WCDN8isuUPrPFmWFOq+UaYHSuzq+Mmb47N7x512vdCiKRmJ2OsNP/9+fYvP6phnq6pvreK55IXVlLiSJ5xdlgaJmlADBBT7/+V81//3J/gGWywn6/U3c+9xbcAMPWTZHUSwojWL/Als3N0mikRYQkqA3XbHVTQNHdVYaYiQIixxewiQyiQSCN8YWa/1yHOpGi2WJTjfGoiDz6Ea36mvyhUb7RdrkGAO1uKfHU/CaUqefPvgZ/vT7/ycAYLT7XwOAcbh5+IOH+NkP/gQfffRdOI6Lt3/tH1DHvbZZAjSnXJ9H1cqaywyaGd0PVjG1gb4862gNM6tkzMDCWrxPmzKRNGTbomm4cTgBiJp/Mp9T/JUQuDi6xP6DfZyfv8Dp6TP87Id/gp2d2wDI4iubZzjfP8cP/tkf4ejoEXbu/jsqPJihYlxRuV1wKWFraraCFTVTUf95IQRYReHOGt5ZvyyLtIptKyHFKrOQijNlD+bYSMuSunSp9VWWSQ6RCv772Xd/jE4vRnGPOttWSJx8eoLF+Ryz8zmefPgxZrMT/Ma/9Ztof/1djHtdSlFReYx6PiqlBGySOrRtC7n2DLjqDHQHqRGHl7vEVramONF+r3oz0rIIR/0MvnZo0DsnFPmGxhWSThbMTqfkDes62N8aKFSAiqTTxQJH55dIJynqosZQmaHXZY18WYCPaDZYco4IK1mL7gyElEZ/mte16W4b7UakLtm2GG4McHk6RStV7FAcGLcWgJiUlmWhVnZl7dqmXiwKXB5eYnI6QRDEePDg+wCA69dfB0AoRracQYgGaXqJokjx4Y+/+kvBsgAAIABJREFUj+H2UI1MKGGk5o3x6tVkM70uyErNhWsro42NgeEiVEVl1qD4zIyKOuZKxV85rm3eMz071gVN27ZgYuUApQsJXjEsLhe07tJL4iK4tPl/9MH3cO3a6+h2ByiKDFWV4/tqb5FSYjY7xWg+QhgHYBVZKJaMGclMxZnRxYaeh14nwkJFfNVlDV4zFbPXYv1wE1KiYmpPcF1qBDiHba1kP7r4s+3V7/Vh2Uhh4M+LkwlFWVUMTl6hG0c4P59SlNwkRRAHGGwNDReDVwS5sobIYk9/8hSHjw6xe3cHg25CzZd6p0rGTGdPBTXZZDpCkufyVQOiv/B6Zfapq/w9F5cLjFKy/tLEGtdzsWxWL6rnumCqMylqekhbWyN8+7e/jf/1v/1H2Lq5hXtfvIc3vvoGTj49weTo0sCP733j2zj6dB9peonlcopwEuDaa9exnKa4WKRwhn0sisZUDVlVUZpBSVVSVZMpra6214fhdcXWnz2kkGgYN5tpviwQRAFSqzQuGZrNqBd2rajfXJEgKs5VEvsMyTDBv/bv/jbe+tJXcHF4jkcf/AzHzw4w3NwgFpjjYDDYxl/7G38PvXEPp5+eqhDjCkc3pkarCGBlSO37RiaQlhUYI4PnhjXKQq0Arxke/Ox9873algqWaZYZYkQFIs5kVUXDagXh+K6j/AeJyXWxXCJQ+srOoINP/uQTDLeHuPvOXdz74j2wkiFKQpy9OMfx02MAwHB7SJZ89z+Hf/3v/C2cPD3G5fEEnu+hLCrjaehYlik6AJIZzIvCwG3FkvLvpidTCNnAxVXGL323Fk1Dqz2Ku5jPzlCq7LdiUUDEAaQkLV3JmOoMVsYBgjc4/fQU27e38eSjj/G//M7v4M6dt3H3rTfIwzPw0N/sY+vmFoZbAxw/PcFP//hHmBxd4o2vfQ7dURd1xVAsclwul9hUvo7rsgtt5Ya1rlHDm6WSNujDcn0t8pqswQCgWORwlX5QJ7c3UlxxpSEy1Cq9HBx4dnBCaTWTFD/4g+/iJz/5A3Q6Pfzt//A/wcGNVUH78IcP8fzD5zg+fozJ5AR/5z/7TzHYHlJE1SJHXtfY6JJvbKm6fP299D9bVhUKVsOxbFxM52gailha9+GdXs7x/d//Ie6+SwbxACCWpTETLwN2hQHdSAHPIfPrRVFgsNWHaASCKMRv/fv/Md3/gpIu0vkUXWeIz3/1y/hS8HWc75/j+OAFGCvx4IcfYevGLoI4wPGTYyT9Dq6PRigZQ+T7yldUKPtF3QkJZFWFIi/hBh5ixza+tjpg9+pipF/093VdB8KTyFzSxGqGpi6QSsaULR3DwemF8TSWjUA6mWNv7z7eeONr2Lu/h53bO3j/D9/HdHqKyeQUvhfg/hfeQrf7H+Hg4AFZIEqBi4Mz+IEHISSmxxOkb5UIlENY2xLKRIxOhkaxurVXqjZzh2V9prAuGINoybFGoyGubgYAxQQmxnXTtkoOpNe/MAjC5eEl2d3ZFkQjcXl0if/5v/8fkWUz2JaNt9/5Duq6gBANvvCNL1JGo/MUy1mGBz/6CMfHj/H17/wV4hqo92aWkYmC7dgo0gINa9Awjqqo0TQcrnTR8vYzDdBfdL1ySkbbtso5hjZk27bBLW4SzG3bQpGXmCt9jWYk9bXVlpS4dmMb/8bf/S0w5SEYJRHGe2MsJ+kV+G+8tYmk18dwe4j+Rh+9cQ9RNzbQja9gWY3LF6wmVtP6PMqxkC0KVQ2tuo527VRspUSVkyWbhnx0221Zq/T1dUZdIwRa18U0y4yucePaGA9/8BDbKgLnztt3ce9L97E4n+Po8RHF5CQhbrx5E7e+cMtIW06fnSKdpLj3xXsAaAFrz00AhgpdMKaE4wxlWkDK1sw5pJSoS2ZgRPperTkgyPNSVY6MwVPzs4pzbHS76kCk+ZDAalbaSInre1v4g8d/gOV0aZK9d+/uIO53yIhdHegb1zeAtjWxSdmsh/n5HBvXNwzRRNt1a1FvixZZVYOVFG6rTQ8a1qBRJs40N/zsoajnjL5PCSfZbKW58kKScegZHlfrsFFSCNcnv8QyK3Hn9dcRBBF8L8T8fA5W1rjzzl10+gnG18bYubuL++/dR13UePHxPmZnM1Mc6SJOv3hSSrRr8DpXzDu9KeruTn822b7c3RPU2W70lIclwCuO2q3hJjEaKSCkejaCmK7E7iMWYBQEKCwy3q7yClK02LtxC4eHN/D06U/w5CdPiO18sQAA7H/8Ag8f/gBpOkFZprg4uCCWqCAiRl7XpN21bQRqnioAQKzQFqraJXTkpRQSTMGB+pKyxf4n+7j11k34oW8ORicJKVuy4YgEFbiOZZEPJiwUdU2saT/Azbdu4sXHz3F5eImbb96EbRNh5/Chb4KcpWyxe28PrOZYzC5RVTmKRUFWcbwhtGZE7imRgoVpHk6fQb9/jSRnHcdzTeyQrWLJXu4UpWypePE9OB65tNgt6TTJRpGYwXbggzUrI4y0JD/WThSirBmuvXYdf/i//VOIhiOOepRY0glx5507kO9L1HUB3yensOuv38Bwa4TJ6TnyPEULKvyjJEKlMzfj1pBSCsbgqPl1pfZCnWJCBvaK4b1eoKn1SpZudG9CJWfSELBsoaRAtpJerOQ10zw3frQN4yrn1AevOLL5Eu9++VuoshJxv4PduzuYny9w8uwY5y/O0el3MD+fE2GySHHz5ueN4XzbtkauZbuOIdo0jBOxsqIc0FZIuKH/L9fRRt+wVpKPH6+ou7Jd27B9hNBiTXoAkerktCSBzGQZNq5vmDlH1CXz4f5mn+QSbUuaqkFitDReQLRjP/LJ/86yYFkwFHD9xaWUqFWILqsYWEUQJFdtdcMVdLWGnUtJpAQv9ChgVbTKbNw3czyAKvVERUC5jkNOMophWwG4cX3HDPXRthhsD/Hae69huD1EZ5CgYRy269D38V1jfZdOUsTdGHEvRl3UqBJuhO6avj/NsiuEH8u2FDFIdcJColyWVwoCfXDoVPPSI3p1NwzBhMDxfIYkCJHX9crNpqWDVuvULMvC7mCAd3/9XZy/OCOhc1HBj3yMdsdwtungLpYFeqMu5ucL1GWB8/1z5PMccS/GYJOihrgQlLu4TlbJC9PJOw7pWjVcW5c1pKreX65grTV5hX72VU4QF7cbuBWn1BK20ssZF422xeZ4APnuXex//AIHDw6wsb2NHRU7BkD5ZNIGRJ6KHTRcIBkmWE6XaBilSfT7RDBrpISz1vXp2RET4srhp60EXZsgqbppriS2WBaUtV0Dx6N0EdIEK0hKEMlLs1yZIhJBCEMoqhvSdqaTFP3NAe5/+TUkwy6u/fR1zKYnkB8KbOxtwHYcxP0OtrdvY2PjGjqdAbJ5jsUluYHURW0sCTVjFtCdqbOamaqf2wh6EDR/+yzcnQwTeg8bCdshs/uGUyBxXhO0OVSWiLqI4kIYI5Br9/fw2nuvY3Y2w/x8jp3bOxjvjiG4wPR0Cj/0URUVOOMKgnYQBF10Bh30N/sI4sAQ6SzFiqwbDtmStGOu0IuaEdnKVQdgmVX0nRraiF9ei5r1Tc+IttSGN/AUAlJxDt910YIOSi1TYE2DjX5Pedz66MYhrt24j8nFCWzHUc+vj/5GH7c/fwsXBxewbFsV+A7tJ7YLzwvQH49UqDSZp7OS0f1Q0qSqZop1KsFUR+uHK49qMg+3rlAthKRDXR+sXAi4QqAEzD/TciF9IGqR/jQnBCVwXURJgLjfweXxBA1vFETq4ld/81dNYLOjwh14vYEyq7CcpijzAoPNocmSLbMSybCLoqrVO0FB5MKy0PDG7PFt24JzDt8nMujLKNNfdL1yyHArJSzbgmVbqIoKnqDIJtEI9SA8OJ6LqmawbZuYa7ZjLL3oRtKDaBgdiNpdfeP6BvwwQF3U4IzmSa7vIRkmxHAdJpS/567EmGlZmgrPgmWqU30gNqxRC5pmbnqOtN4pom1RlzUaxsFquiW1WlSt76mNqzVav/WbvL44OkGAd779tjFMP3txhmJJ0M9we2BS7nlN2rpiWRKF3Pdw/Y3rFO+iNoh+FK2ifdbmDxUnSzfSfFWGlCKERJ4vIMQ6U3Z1QOoZjt6ca86NRlGTb1o1a2zU3Gh9ZvX2r3wOizdvwnEdmntcLOC5DhpmwQs8dCxFelKHWZmVGO2OsHF9A4OtPhzPRc05SlaD25oo0hAjcq3yrnK6v7ziqIocjuNe+U4vr0f6mRK+H6LIljSnbBo0DW2+TIXqakkFAEQ+6aw2N4ew37Zx8OAAlm0h7kbob1AOoOuuoLx0mqqE9oXxYRxsD9Eb9zDqdOB73hUCjkYTauWTqmdIhYKPdUGlu/GX4Z0qr1YG6jaR2XjYoPY44MMUY9plCaBDuVaHiGVZ6G/0cXl4Cdtx0Ol3sHVzE+O97+Dg4QEWl3Pl4BLitfdew/XXr6NhDeI+aZCz2VLFeTlkqaXWH9YOQSPhUYWOEHrjpcJYivaKHZr+ilVOBZUtbVgWJei4SmxdlJVh97qObeKSPIcYqEkQ4u1fexuu6+Lp+0/heA5CJ8BwZ6jSeVaw5uaNTYx2hkbGkAwTuMo0mgz3if9gYXU4ajlBmZWUQ8kbylaUEnXFFAlKfkb3JqWaDzdERgKowBNCgoGaA65gZw0R624rVvmk2nv4W//2r5JEpBFYXC7o/nv0vged0GjDAeJweJ6Hjb1bJmQ47sZoosZkaNYezX9ZxcArDiFWEVO85qvnqEzDXy5mtMWkaEnOEbgumGKX6ktrC6GKpxatgfQ7AQUU33zzJvI5RWJVRQXZkAXb9p0dJP0OpGzRG/cUG5lg0d64h/7WAEHoI52kKLMStmujVDFS+rm06mAV+mAUFL9nOaFBJF7F1ebV4FP9q+oUWUkDzu6ouyaKFqjVP9cedVESmiG07mq6oy5cjzL8It/HPM6xd33LVPMLpXHyQx+CNwjjEL0owizLUYqVXGG5zFFXjMJjHZuIFp6LhjdqPsNQ5bUhYaxbKOmLwn0XiJJolddVEbuT8Qa2Q4yyWgXyao2X1o/pw6TiHPe/cBfTvQXCOMTu3R3YjoPtjZGpLoMoQF3WGPlj9MYc1r1d9JScRVubFRVBVppZSBVzg6Ii+7i4GytvP2Ja6bipui7hOGuSDPWMiNxEsILre4bK3wkCLIqC4FmlxXSlMKQXDdWxpkE/ilHU5DZy4/41bN7YxLXRCC/kJfzIRzKgQ5GgjQHGu5QGriO99L0XnRYVq4w+ry5q8lL1aDOSDXW/s7MZhBBwnZfmNz/nqusCQRCjrmkmySpO35PRS5+HlXGysSzl5q9mxEk3xnt/5csmHYCCeUM8/vET+JGP/kYf3VEXw40BRrtj+B5V9b2IxN6DTgeRsuLTtlQaLtUJJADMHEmq+bS20NOkG31ZNmVRVmq+qk0LvNCD57vgiimsO4DAc43vpGPbCH0fFWPYHvTxK3/9qzh8dGhkSTu3t/HNf/ObWFwujMGE9sPkNTemGX7kY+vWNjZvbMJxHSyKgjZzVTAJKbEoCzRiRaqTUsJ2HUhVrZMj0UseoZxCtGldENRYl+zKLCtNM7CYNlxfeeZqQwkhJQbdBBcXMwy3B9i4NoZoJNmyhT7ifgdVXpmiIkoiEyDdUbmIOkatbUlHVzKGumZGepHmFTwFq2v4mdecOixlEvJyYouU9O/80DeHS6s8VG3bgu06qBmH49rGeUjP6LQ9n+6Khzsj8nsWEpEyD18ogf7O7R24noN0ugSrGDr9DjbVfNj1Cf7UnI+GNVf2YF5x4+ilC65iWUCqTsowuV/qghlvKAFGkeT0fHGe5yaRRhNezP1oJTa7XbM3WpaFr9y5gzd2d7EsSyyrCou8wIuPnhO5a3tIbmdJCC/YxO6dHUjZ4tGPHuHw4SHCToiNa2PcfOsWNQHKaMCPfBRqNEb3P0CZFqjrAp4XqPHeK2Kn+EvApw0XcBzbGE97gUencQBYjWXwXiaYucHZPIcfeoaQ4wU+fI9y3Ta6PSNm7Udk/VVzjmEnNj6mUj2wSbo0GYp5SZtYmVVmTigaQdKBmqnFzFCXtWF9GscJy8I69RiWWtglHZ6248Bx2hVsJaBcQpjJ/3JtBwVWukVdMbsKbstmS0TdGLaz8kntDBISFgceWMlQSHLPt9RshF42x0BHjk1MvEVZIPR8Ct9VlH3bcVAr6rtl0eeo6+LKBqs7Y9kIhb0r8o4QJvMt9KgTTpXFnvZqLBRcRp6q9B17UWQinkyEFm/g+R7iDlmIsZoTUaQhGYWOFdIRLpfLJZmnZwT1StXZyIY6+Kahl7kqKtXRS9j2Z4N46bFpI+cWtuWgbSWhFZFvYBQAanOyDeMWgCk2JA3KzfMZj/rkbBN4FFllWfBcz7hzBJ6HbhiapJJYJRgAdCjNi8L8flGWRlvI1g4IDadVSqf50itm4qO8wFeBrYpZLSQ8wGhI1x1jtHPS+rVze9tU1PPzOXW5kY+4G0Gobti2afTRsAaO52Dv/p5KZqd5lu6A1+ezJSOyRt1wtK2yQRTShENridC6kQTa1hDZKHTXpaQDdehrXRmvVvCkiAIw5Zik0QzLsowzi2s78AIXdSc045XOoIP0MkXf6avvZiPuxkiUWbqGLvXVNAK84oCvOlzlQqOLfC3HaRrqGp1fEEUkGqHMp5Xbk63Zs5aZ+bu+CyYVQ1VxJ2rOUWM1v4vDQAWqN3DalWuYLorIT9lDvsiMttt2LGPmThF6LmyHnLKEcMw990Of5rdFrRyhXHD13LTZiB5/6cv3aJ36DhmB17xRDl3WFTtDbYkoWwnZrvZabUlY85Urk+e62Or1yIqvqGkfAe1XrucgTCJw5Z7VG/cQJZEJKwZgcjC5ZqnX3JgSVKr4lrKBbTuoa733//KZin8poo1lrx60aKgydBwbvG3h+R4a3qgML6gHIxHGISzbhue78D0yOZ4czvC8OoQX+Lh2Ywu8aXA8J+hxbzDEKOmgqBmmCp6RjcBSdROAPsioStChxqFKchZCmAes3WzoO7RKt3LVWos0ksRC5TVFFUkhTWdbq4ebqo2ukURp151AxZlZMGEcXok6CjwPcRKp6CgLLBJYgDph2yZImohKqwWpf06LlsJ5u/TiWbaNVmjBLSUKsJqbim9dgKt/3zQCTktpJVKSPynJBriCqRTrrmnowLNDFFVlIBLdVQaeC8cm4WwnoflwEkcYxDG6YYhlVSEIfaBtYfc65nNI2aLKK3gBrQ3b94ylF2e02fihR/TpiisBf61g018Mn8r2s5uTnncCVDBFCR3INJ+URqsIkJgdckWWsW3LxHQNtgZoW5L+JMrhhmKTaIbsWJZJFNAwc6l0g+tUde32oTdL/Wf1r6JdMaP1S+b6niouCI4MIvp8oqH5sQ1bbVCrA9WxbSOmJ+mNst8KyUx9sDVAlVeIkwgNb8yYwfEceNKD49iIkhDdEUFYQRyY5AFdPLVoVacjDdFHW3jViiilmZlC6STXFiOFf4vWzNJlHMLx6DuXWYkg8uF41LG1soUX0Iw/qysjpHeUjnI07pu5t34mrmMjq2rEUYgiL+FHPlhJjGPdkTdSGPPyUhk+2I5N3ZwqPrR5uibtCd6gVXvBz/dOpk5RW9hRcd4qophj8v2IHCJguzYilwoJfdgXCmqPfB9hJwAQoOFkytEZJIBtIUoiuCodgt4r2hNbCePEI5WeUTTSHHQAWbtpqYLtkKsX7eGtgojV2nkp2STyfZSMGTu3inMkjgMhldxLmV24zopoo2UY2nIQoELQVo43aVkaRng0oDxMbfAdJpEpekJ1EHohERSJuSrQOgryVTptGh+p/aRikKKBG3auPKf25+wVv+h6xZBhC55PC9uyLDVDTJQgV8JugcaiDYxVtXJ0oRkkV0bStmPhfP8CH3/vY0xOLpCml3A9Hxtbe7AsC5fnx8jzFHdfewtf/5vfQG/UhevThllmFbLZkhh5SryuBevZLKM4GMeGpTpZWphixZY1Ke5XRar6chxbDbIV1OE5xkOPMQ7f98BFY5xkXPWQa05zg6YRcCPHHH5Cthh1OpQNNh4b15isrlDVzMytqrwyeWAacmlcPXsg0oT+rrqKJvYvJXKgbani5bXRNgEw+qwqryg53aXBNFMdrWyJ+ckVWUcbl1dsadiT63FSAEz0ko5N6scRRkmCQRxTvpqUOJ3OjBTGVsQA3RUKLpAqqJLmZQ3NnxilfLCKoUhzNA2DbTtwbBf8FwiN1sX7JCVxkM9zREm0oporUwmAuhHPd81mogXRfkibcdyNjOvI9t4GyppcgHpRRH6aQQBPHXKBui+6m+ZNY+AkAGZ+qN099GxYm1toaJWtzXUAOkwctblxRTH3ujEdMIFHv7r0LjZSoqlrY3zuOjZCzzcelXpN6wOw04sRBz7q0Dcbq9lgVWCwF1KX7KjZ57pDDrkQEcsbgCL68CuaQq4KNABXI5balggwa9Bj0zRwGhuNIhNx1sCyKCDZC3yUSyK+BFEA2KvUCJ2duNXroW1bDFWqB2saZEGFFi3O3JSKDk8i8D0yzlbdYlUz5CodQ68fIpuQkYLtOigzWqM0265M4dyudbxX3jMlUdFkOqkgPkJAVg1Fwzh8yzfxa4uyMJAq7atA7FOHHEQegq6LSzdF2AmRdMkVa7HIwJUUCyApSGSHgOr02pagWzLG5ko+FZHbS0M/hynpGq9J36e/R9OsJWYoUpp+r121xrQhi5TkDiVaiboh2zUNr+oc2lIRtWzbBuMcnuOiG4Ymr9S2yCauYIxmv4MEYYckadqdiwKoHfMO6069LmtqwNSBKBsBxpgplpuGw3V1AfEv6VBcLQL6VcsyhN/AtiO4asOxbRutJOujdJKiWpZwPBeOS3Ojs8MjXF4eQkqJKEpUN5Rhmc0gZYNud4Tjgxf4x//dA2xu3sTe/T0Mt4fwAg9lVsL1XBRpgbqszc3TAbNBHMALfLPZaiaWhvnoxbSvbESAShFv9feqYbs2gihAU5O2xrYt1ILmF0VKSeGpVZqK2PU9GuTbWtTcoqey6zpBYBieThCgH8fwHJd8VtsWlhr+s4rBcSgEtGkEiqw0NnHFkv7eD7yV4wtrVPoHiWcbzhBFyZXvRS8asQFbZawO0IZWVzVyddDaNh0iZc2M5ZPj0NzNc12Evo9hHBsrMd3JJkF4JetRB0TP8gJ5Rs9IihaO40CKVjGO2RoxgQolTeEXjUCZVWgaDt9Xyehe8BkDd33p52hbBEMLFVK7ipuy1WzFoVxG9QIJ7UvpOgTb+C76EZlgd8MQO4MBKsaw0e0iVLNILdJv1M8slO5RG2NreLFSQnbbslBKMk7Q/qh6nisVJPfyReiLQkKalVhcbxBNI2ApKYY2ay4ZU/Mp28CajSA5jRf4CGVr1lHsB1j6FQIV4tzpd+B6LljJzHPRxYbWtrKmQSEFHIuCmhdZgV6HfGUb1lw5JKq8MrO3K9Z8+uAQq3BsVjK1njkcz4VsyDyDZnOlkUU5HiXVO45N/IMix8H+KRrGcf3OHm6OxziYTHA0mULwBr1eonxiqSOsOOmVc1FgOcsQRD7JlxQTXcPTURIas/u2bQ0RxXEIRdLf52VHGwDwI381UlL/jHR5NELQRY5lWbDsxsCymmHvqmJLGzDoRBldbNqWhe1+D7IFLqIIYSdAepmiLmvz+XWRR+tbmHsMAPkiAyuZSswgNr6jCiE9nyNm7dXDQ0dx6Zg/AAYR4WokUTHSQxaMGYkXjQgoI1Uz/bO6Qi+M4DpUTDtKz+gp6d5ga4CNUZ+IcI00HeP6u6CLCUvt4YILI5lhNUdV5XDdAJxTISN++bPQXK88UyT4g16wMivheA5c38X8fI5kmJgZhpQSi/O5Yg1VODt7jrJYIl1OEPgRtrZvw3Ec3Lx3D3lKFeF8cY4w7CAIYrStRJbNcHDwCV48/xDLbIa6LhBFidkkg7CDXneEpDtE1EngBTTo5ozE9w2nl7NVcyNeU0IGK9mVTbbhjeo8aWMmhu0KivVDjzLuFDNS22HZtg3LgnKpp7Y/naYo0hKz8xllpR1cIBl0cPfduwiTCCdPTzA7m+HWW7ewc3sbr929gToMifDi2Kb60xZuVaFZuhTxUqoqiVU1vWg1QUDZPEMYJeD8aqWXpznCTghP2Sq1msLctsYUWHBBPpKLgtwkWAPHoQBT26UZytHjQxw9OiKmp+o0LMtCd9RFpx9jekrehrZjw/M9bN/Zxpd+/YummpNCGHN2DXlLITHcHpgFzaoa2TzD9OIcjqMLLPyFByJAeX227WB+NiOnFKUX04UUQAeOrnxc30N31CXpTs0wOb7Ez87mcH0X27e2sXt3ByefnmI5XaI76uKbX3sHo04HTAgyHyjLK/Fd9dq8zVPmCGWh6eYuAn8VcSPbFllZmc+/HkUkpUA6SdEZdAjSKwmW8wIftdLNub5LmuC15BCmiiXXJ12d63sIVORPnESIfB9j1dEnYYDwBiEKjRA4ms2QlRWNQHhDhBRF/mh4Y2zyGkgsypKkBoslGmV9xitmZnNFmqPKa0NOWd87bMdGtsjUPXHQ1lcZqrprnp1OMb9YGLh4uDU079Nscob5/AJRlBDLtrdJ971aQgihdHwO8pwSNr7w1a9g88YmWkljn7qoV/Z5JaNRimVBcIHR3ghxN75yaDdKxkWzexX7VV+dA+uLs1XXr7kPbdsYVKeVJCtoGIcfkXa4ymsya+8S6WmZ5pgcXeLoyTHOX5zh4vQU127fxM3P3zKkm8ujS4x2x5Q81E+wcW0D6SQ1MKJsBBmsO7Y6CF1Uygc3GXZhWTDuXpZDc9cqr3Dy9OTKqEIqKYdOVJFti7SsTPahjvmSbYtpTozRyPdxOKUEJJ2Lq6HtwPXo/bEtBK6HcZIYSVvs+6jHHNu9PhopkYQBimWBYkGmHtpgQBut6Hl1mZVmZLQ4n6NpGIIgJuTL9a9RyVyJAAAgAElEQVQQD3/Z65UlGa7vwoVrjHHLtDCCbqZYoJZyjfcCHxvXN7F1cxPAe8gXBeYXc6Lj+hQlM94bEY4chzj59DUkgwS7d3dw+vwMyynN3Y4fH2FxmWK5nMKybCTJYG0hKiinkUTuUPZYeiPUAnBWc3XztG/f1Y22zCr0xj2Uy9JUvm3bUiWrXlzLIhkKr7npTLUm0vFcsIphcjTB0fPn4JwhDDumqnz84yfEtlMv5Y//nx9huZxiPN7BX/17fw0AjBWdjozRfoja3SSIAtPpEXxS0+HZkAzC8/zPHIpQ86yGN2A1HVht26q5JFVevOJIL1OklwukkxT5okCZF/B9H3VVgfEKUgqUZQbPCxCGHTSXDMPxFhzXxnK6RJ7mVIiwBulkjmePHqDOKyTDrhGDt7JVtlI0M4qSyNxb2awE30JwA502gsPzVp3o+nfTlTsxShVjVnWK2iAZUFAj4yuJxjwjDVdewfUcfPKnD7CcpXAVIerwwQFuff42ijSn5JT9c3z4Lz7AcGeEN776Bu7e3EMcBJ/J4GNNgzwrDHwv1Owu6IRoAg9IVhmFelbV8KvepwBQVbTBEMtb54ByOC7NhfQaXyepaDcTu6QZTBAFlJsZhuR2Y6vNJ1h1vesRV/OgQMFqaJ+hsqrhuA5pRy3LIAi6G9LFm7umtyVXKA8ypXdP59qtX6xksEeWYYnrzlSK1rwrdVljOUkxPZtiuZyiyBdI0wkawREEMYRo0DQ1yjJDni+QdAZIl1MyZfcjuK6HqsqR5wv80e+fotsdYWvrJjq9joGSNcQZ9ztwXQdRLzbMRq251gQ9DTvqd+fnRRFVeUWkOZ+6QkuJzOm7SbSS4OLF5YI00QrSH+2OkE5SAEA2z/Dwxx/j8vLQuLu0bYvlcopPHz6AbTuoqhxVlSPwQ4RRF/3+Bj7/r3yBRj0qQB0W2beVKiVIz1ZbNa/Wz0VrK/WvR0ePXprDUYemtdJarqWdlSrOTeEShQHKiozg9e8LVsO1HRUeHKFuOEadxMyCL5dLHM5mBu6/Od7ANM+RVRWO5zMEIXXfNH5j6kAkYpFmOOt3qZWSjNDVGtJjJN0xvsr1ytFRgtOHtKyVFocrxiEx5WrYDlk3DXeG5sBMBh2wmmN6MkXDiP7NKo75+QLWRWqgrKWiGxfLwmwWg+0htm5tKeiD3O/1vIwpzF8vsjIrDeNRL15huitialqOfUWA2zRkmQbLIman1DNJqTRXNItyfRfNnDbu6ckU6STF0f5TdfMZ6rqA47hkXWQ76Pc3wViFshyhW4yIGdsw+H6o2F8eDg4e4vf+Acd4bwODrQGRUZg26uXGhDhiDfwwAFSSB6+40lbS5qs1ev76AdK2BoojVi51hf3NPrigOV8QBVhOlyhUtx4mEWBZmE/JXo/zGp1OH0zJHaRoUBQpynKJ2ewMYUiEGt8PjaaQMdpM/vnv/R/o9zcxHO6g0yP3Gz049wLPsB4BqrIFF1hczsFZjTDsoIVURKGrSefAikSkLz1HqOsCdZEQqaQbwfEcBP4a4UKlfFRFCc5rcF6hLDM4jotOZ4CmYWiaHuYXc8NodlyCZs+en+Hxnz3C3t093PviPViOjSD0VbfJzVojq6nKEAVg0UYcxOoQV3FdUrZmE1t7aCjLzMB3upjTMxW9RgEorS+hHBrVsF0HHSuGTMiKMK9rLGZLzM9mSCcprr9+HffuXEfk+5hkS8yXOa5tjNANQ5oXuxT2zG0qYoplYaBbYfTFihwV+WaNNoxDCGm6LD23XXtgZh5UpCU6g86V2VcQ+mg5HSJFWlIwcsNQVTkuLg/NXuDEDobDbQwG2whjKny8wMPDj/4MQUC/n83OIKVA4EdwXA95PsejR2cIggiM1WbEkHQGCLMESdJHVdTYvrVtDj0tqxCCRhNwYQqIdfs6fWmtbdu2JnRaKna567lUDFYc5bLAxeE5ymqJpmkQPUrMGqzrEvP5OVop4Pkr6NC2bdRVDt4wcF5TYSAFptNjnJ09w2JxiX5/A1EnNiQzXnPkaQYpG0SdBH7goW0JVtWuPLZjo1jk1C06DhaLy5e+VWtmuS+HE1Sc9kzO6P9zMZuoA8smVmmwcitrpDDh2+cixf5kgouLGR58/wHSSUp7uWvjc1/9HOWIzpaYnEyxc3sHcTdCMuzCtgny1S5orGJYzjJ0eh04NlCkJfJ5BtcN1OxXm378fJTpz7te+VBsmqsRI4KTKbUf+sqWqoVlUy5a3ItN/phQpzxAA/giLVFmpcobc5AtMsTdGNksI7Fq4CHqUhtsO8TMDKKA6MaujaSfQAiBjWsxqpxkF61ypgFgssMcl4gelmMr9qZKLr8iXWhQFJkJAgVgqMuur/Rh6rPnqp23XRuDzT7ydBvT6QmqMlMQno0w6MBxPXQ6fbiuBykaLObn4A2D5/pI00va9Dg5tjx+9CN8+GGJTqcP348Qhh21yBP0Rl0EUWAIImINW5dCmhlcnhFcJNZmAq2CjBvmI1DeirZPZrttS6wzV8HfQxU6qqnd27e2kc0yFRHVwfR0BtumbLfuqGvE3mfPTgEAybCLi4MLVHmF6eWZGnL7WKZTWLAgxQY8P0Dci6mYKRlGO2Q+3TQrTWmez+H5wZUom583wwFeItpoZmlDG0/UjZCn5L4P21KaJurAtm5u4eDhPhaLCxTFAkEQo2kYHMeD74eYz87QfEKHKFOU7l5/BD+iLuvk2QlOn5/BdR34kU9JFIrFKpT9lB/62Lm7i7ATokhzbN3cMl2xpu7b9spsYv07ZdlMHZqKVNC2qqtr4fqOQTmk6oqrvEKRlsYditcc2SLH7HSGyckEy8nSdOif/vRTPLi1jSiJkC8yLC5S9Dd76G8OcO3+Hu7duU5wmW2BKYkFIRK03lhZo8yqK+xqy7ZUwLVt4nvIdP/q3tG2rRFf6/9eIzm0aev5ncDG9Q0k/duwnXcwO5sjvUzBa0ZpEJt9xL0Y3VEX3WGC/kYfbz16E5s3txAlEfY/2cfFwQUAYHI8IbOCMkOLFr4fIk66CvUpiTlak/zF9RwTpaS/V1Mqn1f1rtm2ZQrwq99t9b61rQoRcBx1qNI6LZYFpqczLLMZZrMTFMUSi8UFXFfJKSySNLRtiwgtHMdDXRewbQdCcHBew7Zd1HUB1/XRqEPy+fMP4HkBXJfWr+6SLMtGEETqYOiZz6t1lY7nqvFIAz/wkCkkbvW9QDEXa5cOXKf/Dz1TrjyAy6wyqFbbtvAC3wQZP5ctltMl5hdzTI4mBkIGCOlwfRcf/NEHyBeUo1qXNZ787AE2trfx5tffMlpaox8vKYWl06PiKl9kWC7nsO2VP7VtuwiC4JVINsBfAj7VG5XW63iBjyLNTeZhMugYqnorJYY7I2SLDAELaKAbkvZqfk6b+OJ8juV8ibJcgtUlLNsBYyWiKEGnM4AfBkaYe/3164iSCKxSOhs/WMFvqkrN5jSzELyBF/iwXRtVXsPxHOOUEiXRS1ZNFo6PH2O4MUbQCRGzGPaoS0QeBVFpaHC0M4Trb6G30UPcjehlZQ0mxxMzp0gnqWHF+pGP8d4Y+TxHwzgG20PMTmcoM3KzqUuyLEoGCaJuhPHuGMkwQZmVRCYqiPTj+p5h8HJG5uN1USNf5Lg8O8EymyEMO/D9FWxICe41qHhVifcBMXkdz0XYCSGERG/cQ3IvoVmTR3lm470NzM5mxpx6+zZZ2PGaG0ap4AIb1zdhWVS5Dbb6qIsQw+0BvMBH3KM5SZhE8HwPtmujzivUJTNkJ1bVinFamoLGtnVnsoJHX77W4VP9e31l2QLtEcGPjmNj7Hvo9GJ0+h3wmmPv7i6q4ss0ozqfo8xKlGkBT+lou6Mu4l6MIqWw0rgXo9Mjz926qJGnyry8bdHpJ3A8su7bubMNCxY4b7CcLtWcp7nCgpVCojSsXK5sB69a89m2jenxFMkwoSKrEyJfZIi6MYKIpEJoWyxnGcol3Tdeczz96BOk6QRpOlH30VGzPBdBEKEsluj1N3F2fAjbdiEEh+eFOD04MnBkpzNArzdEb6NnMlI1fV/LmRzPRTJIDPELgDkINfS/vkG+/N0EbzA7myHuxnBccmuxLMuQ4W5//jZs10Zv3EOn10Ge5qiy0nxfKvToHk9PpgQfRz5On50Ra9z30OkTghF3Y1x77ZqRQriK8Ie2RdzvEAynYPt0uoTjOIbApzvGKq8I1VAJO8mwe+V7aclRqMhLUpAFphcS+U5LPQBg7/4e3hi9YeB9P/SxuFwYY3/Pd+F4Ljq9GKPdMcVeLShLMl/k6PQ7yGZL5GlBxh15hYuTE8hWwHE8RFEXySCBrfgJdVlBCGII+6G/It9YFgUMq31zdjZHEMSfNTYREnlGI6VA6ZMrdf8b3tC4ZZ7j4uDCzPwA4PTFERirjRezHoWQFtoFLAvp4QVkK+F5ATwvhO+HqOsCUgoI0aCqcpycPMWffvefwrZdbIz3MBztwnV9RJ2YTEmEAKtqvHj8BEIIhGEHjNXw/UAVlisXpl/2euVOka8tdMuim8ZKamU9nwgptqs7xciYtgKqoiyIYTneHaM36hqfOyEk0ssUrGLGECBKQkWVjxHE5DSjbdqIJSYUlVoaEkVTEyW64QJS1OZztlKCc0339j6jx+GcIVtkZqDrlz5BEVkJyyZ4wVUQqh/QzCYJQvBeA7sg94w8zeEFHobbQ/JzXORo29bMDFjNcb5/rnIoG0RJaBIZyH0jhhcSG8/zXcQ98kPNZpmZLYqGoCrtL5nNU+T5Ar4XwLYdtGtVkRASrKrhBR6W05SgUVAFa1lkwpCnBcFEiUDFSIytDzktrGc1x+x0ZYLtKKmK57sQjfJOFAJJP0GYRHAc+ve24xiRsmXR3NDxXARQptet8vmsqALMFzls20XbrmC4X7SgdYFmxPjan9b1qDhhJYo0V+QCEi77kW/0d2EcojNIyL5LSIJ51P21bQuO6yCIAvCaqmCdZed6DsJOiK2bW2Z2GXcjQJk+C0H2Vf2NPo0Tam5g7Lqor8CK2qD+6lIkaLUua2JSh55hpApFCNM31HEd2I6F8bUxoiTCYHuAdJLi4sU5yjIHZzV4w9Dp9BAnXQpfrsjxo65yuJ6vIH8HjFVknl0scXj4EAAQ+BH8IMTm5g1YloNON0Hci9DpE/zouA6YWgcAIUC6iJJSGgKdeogAqEuxlEzEUTmsqzFHg/+fvTePtS3Ly8O+vddeezzzvfe9d99Q1VXdTbfNZBwGJwoEJSaWHEJiJ+GvOOC4IeoQYpIwWDSNGyHaBGiCBUidyG4nQBonCrYjWyJYDliYJDgGDHTTdFdX16tXb7rTmfa89xp2/vittc459xXQDwUJSiyp9F69O5y99hp+0/f7voBTLS6OIve7BkXz9zyiFHz8yiMUm5KU7eOQsj9h4FKB2SRzdTNaV0lUkSER8KeT1DgbFKnYWtT6fO14TC0yk3FK+/l61yaj5GHkYeu+xLnqQWqJOIuoF5NTvSsIAoznI/gBw9HpAtls5NLJ6ThFW7fmTJCB3VxuCdhnwVTDQCBGg4BPTL8pCxhOwxfMevgI45BIHwLae21Fgsk8DFwzv+vLNr3kUihcPjmD/zuAUmwmRpq+Wiu9Z8XNZS9w66WbgOeRnFrA6HwYsWYWEOq4b3ukE8NfzQOsz9fEQNOQ455NM+TLHJvlJfSg0HU1hOgQxyPcvv12TKfHxPolpDuHgx6wfLJC37dIYgJfcR4aZPeup/R3yja92fh9tWTwkA4qASh6JObiTse7toy+JWYRn0mgp83ODYNFwAPEJr0amrSeK/hqjSiLUW9rPHrlEW3MwEcYRzsRV9+HaFrHsGMBKTaNExvORjVQtOiZfLTlNKQLd3cTeZ6HKEqR50tESQwW+GjyGnEaQ7TUyG97F7UagIgM59a87H105OUbF5Cm980OiwCrthVEKzC7OUOUxQ4o4ZkLDqC0bTBKMBjvd1AaPOaOJs3WETsj4lo3Ofq+pZqef005W2sU6xLjxcRFjIwzVw+yzf/2d1JzM1Fqaa2paRgwPKLmAEjpQDoOKWsp/KQG4wxt1WI8H9Glvndh2tE1FKl2dXcAKFpdXphNfNgy83sBbQCjhymFMYoKWivn5CxuzR3lG4846qpxxjo0xNkAMJplRPHXCXh5fVCTTYxBDEIO7nmuhiQFrQULKOVviSl4wDCaj1HlFQZFPaw2VWpbEJTp2zxA0RpH/fHjV5COvxBN3iAICMQVhAEYl46pZXG6QJRGWJwuMJqNMDuZoWs6nL50Sq1QRlKMG0WQKI1w+vZTbM7X2FxsHThO9gL5qkC9rVFsNw6slWVTHN0+wvzmHFVeUe+daU0IzPtjAfUA2wvSgofqbYWrq0cHZ8wC7CjiZKZhP0I6SVAXtQFWCNLjS2NoJVD7OzFcG13xOEQySkjaKi/QdTWkovXVSqLMJ5Q1ien8+AFDNkmdU+jOpUHIWsIIGIPkMR+qobvDapUqS982DK4MZIdW2tEEAjBAKGlaBULnSFoxAGYARixgaA2zk82SlOuS2rLMe/V8H23ZwDfsQxYXARAzmBd7YMw32SCilGOcIuEoiVxmTwlFgUJHToYlGQDIUVkuH7s07sE7avpdlk33gO85rtcwiVzbxMm9E7A9NDSBFmvjMFPgVBcm8zIm3ILNNLRViyAkqbZklIBHnIIjHmM0IXUke5/kq8JlHAPO0BQ1tsuNiwiZ0bvVWlGQcM1p/mzGc6dPrUEE4Hq+QgM2qHKiGbPyTha6zMMAfUOeYcADTI4mkFJinKVYZBmSMDSqF4Rw4oxh2zT4nHfcw9PVBnVRQxlYtOgFREkgE9/3XRivlILulIlQqNirTaRkN7N9mbZHyA5K6zAUxQpBwMGjO46lPhklrtjOOCHWwiSEKBoHwAGAdEJKHuW6xPLx0hkMLelyZiyA73tomspdzjwM9g4Kc+rygwHTMMAV6G29pm96o4WmUGwKlOWa0g9BiAGH6h9KknJGtd0RkSvJiN7JwN9H05EzyIyRMyHNhoWpC8QpcQ92TY+maFyx217ycRa7Tc44w3hOxjQZxfBN1KigXIQ5WEaUXjrtxLZsHPmAdVi0Vsbr69/U07teK6Dai9r7ukS5LlHlNaWKyxbpNHWsMUS9RanV5dMVrh5dgUfcURISAMBcKlIiSmPj1FEUqS3riu87BhRwcgC0PxBziGFK4mHgIg0LWKOoQz6DPvU8hrbNcXl2hpt37zgR2KaoHUk+jziiNDIcwiTTlk5TyoocUVP7eDGmNLvdi1qjXFN5YTQfucgCIOdAZzHS6W2EEUc6zTBejB3RdFe1KDbU60Z1fs85SvZc2owBABTF5mBOtp5oz509K1JKlJvKgD+oZzYZxQ5JPphWDmo10Ah4gMXpArKXTlqoKRN0dYMBhED3TCYA2NGpRVmMOIsNnylFnU3ewDbUW5UF24IkTNaE7jmLa1Cu1nuwDw2lnR8IJ51m37etrXVVC23S+RaHQeA9jiqvEQQExlmfr11KfBg00nHmVC0YD9DWDeKUAFxhElKWY5y4/W9eNpGLhMSFmowSNIWlhKSe694YR4/5uHp8idJgEg7uRaUJAGecNzuYqYl7nmecmhRHi6mTCiQ1HOGe2X6vEtLUwC1bld0XZHSrTUm1zoCBhwFOX7xDwZO5HwMTIVOgxCC6HquzNbamlU8qAaa4uxds7+fzjueOFK2XQs3iO9BHOiaUab7M8fDV+wj4OwlIYw7d8Z0j+AFDMkqQLwlt2kUCedugEQKcMSLobTvEUUjK1wAmGRkl2xqxvdy6/LiSEtvL3LUdtFVnaj9wBf8gDFDmW9x+213Mbs4dDZIQ7d6sSKgzTSc4O7uPqtri1q2XcHLvxB1y2UuU2xIn904c9NzSOwFELzZZjPHS57+E2++4DQCoTQtKuS4dGpLHd1yEaKPWyOgdUlpYoTSAECWUy9FblngL819eXGK9fmoMdoBedMbw7oxH11V4/MZnwAKGyfHE9CsSvyhjzDT+UwpG9MLxNyohcfPmET1jGEIezxG/+yUsRiMMw4BGCKzLEsu8MHUQMjDFsjB0V8rVmK3TQvuEak0sIODU6ukSXdPj4slj1HWOMEwMZ2Gw6xXrO0ThoYdP+9A78GxtlKiUcilUKSX6bo0HHwe2l1sc3z02FH9wvWlKKdw2BOd926Nreudw1TmtQ5RERi1eULRoIkYLsokSql/IXqAxKOyu7w4Y+qUwxO0NobOVUfFQ8pBMGaC08Gg0x6NHn4JSArfu3INSGuk4Mbqf5FXXeYXpyQzVtnKcr8NAXrEFBDV546TdgjBwta6+6Y38Fe2LZGTYXiqqYafjlABBpn7pB8wJE5fr0ijQNI6Sz65vb4jFl8vH4DzG/tgniCb6sgzn988xM72qtXGqw5h0TSPTNhOlEWYnM3g+RUW333EbJ9MJYs7pLjCOSxZF8D0fV0WB188vkF/lLotjU9UsYKg2JTmdAUNXtyatvSP6sC1ZfdNBGrRmnVcYBuDmizcc240dWg9YPV3h6M7RTvWd+QiTCPW2xngxNlkmcnb7ToB4KQJUeeXQl8k4MYwuMfiaMhirywsUBfX9WXQ35xGiMEGSjh0wZjwfORUNS5wgCoO4NnJdlm7Olj6CkOPy0WO8/vrHobVyZQs7lNLYnG+Ms+U5DuUj00ZS5TVmJzOEEUfdd+iEcAo09h35vo+6qPHk1SfU322iXStkoJVytXYlFeI0oogz5OhbsYvuTS3U931C+jcdqk2F86dvgHMC5oU8MqleaVp3fh+d+3heo7iH9qNFMmG7oW7yfI8Y8DnD8vEVxouxK677jLlemTDiYIGPURQ7EuOq65yMkN1yVkYGRu3BQqG7utsTFaV6g2iFQ2cqk1Lt+wbbbYkX3/FOTI6naIrGAG/aa8458Y9m2RRlucJ2e4kwTLA4XewYemxNRGoIb5c+CYysy+LWAuNJhl5IhDzAKI4RBgzrqkbb9aZpV+L41gLrqw2qbU0IUr0j1SWh4M7l+mkuRH9G/Y3SMW6s10/Rdy3iZISuq5GmE1wfwzDg6vIRJpMjaKUwXhB4woICyk3pDFg6pZ5K6t0LoCbEZ3g0GhHAxtA8xWGIcZLgZDxGtVig6gyhr9Yob7U4u1oZlg3hejq7ugULAucQaR24WnC+3KAsN65NhTHy9KQUYCyAlD0GPAurJiS0cJceMwZxGDQYi6F1R56iSaeU6xLZNKO9xwMHPAqCAKP5CFpReimMQ0c0AFCdS0mNbJaZFJR0IA1bXwaIOYjSdztpIRtRyF45Udd9phTnxR5kLTQ8j1DMUZRitTpDGCbgUYjW8ONalCOPQtMDR5zDNopjjBGRxnls+gcJrWfn2LdEMdj3PeYlsf8EJr2XTegdReZyUopqg9xQzJE0jzI8lLs+Ny2V4/+0NVPLSGSHBbvsXSXwPKBYFbTnzH7v2x584MBASHZHAB4wjMeZ6w21BnEcJ4aDFeilAA8CvPPObRSLuRFJFo79pSkbRxJgeUEtSt2umz0fUtK7bc3PWH5iG7nZwQKfatjbClEWm35G4uH0GBmFKI1IR5D5CILApWYZo8iUmfTo7GTqDM/2Kodoe6zPNw5BT6l4Cc+jKN/3fQcqon2oXR2UcBXKZXGUpAjY1mLLdYHV8gm6toK3h9rc24yQkqI7e16YocAL4xDwCNUN3wPzfHQGbyI1GWCXgTIOGdXoSYPXgrCkSesqIYktbI967+jOkVt750CaPu6uarG92hpjHhx0RBCjzQ7c5PufPRk48LxAG00tGdYYkbEjYmRt2C2UULj37nv4f37un6JrTzC7sTAFUaIJ6tYEehC9RDYdmaI6pU9tEd7zPNRNu2Oq7wRqg7biEXmH9ZYaq+uiRls0jl2jq1oSXlUCVbnB6d2XwGPupHgGpdGWzUFrmOeRGoPn+ZhOTnB2fh/n5/dxfHyK+enCaUVqpQlMEwbQCek+ZrMRwpgchGmaohU9Yh5iYcRSb013Arv2s65GGZQecLHZos4rRzll08Ta1BF7Q+1mUwVd0wPDgHJbGlh2BCGoaV8pedijCIJkd32Dy8uHxmCQoZ2biBmgFHivNbCltoH1+WbX56k0SWUZOSLu+47dAgCiIIAwaS7Lm8pvnuCqKNAYgwgY+S+pXZRUbyv0Rglgm1+Cc0qZKiXBWHAACyem++ZNNuPgmIcAQEmBMIoJjda3B1GJbYYvljmRxmcxanMoT+6eOABXpAeMxxlGcewcAICU4O3fA9/HuqqwresDr7rqOlc/dOkz04bEAt81HFtEnGfQf2YqB3uRGo4ZxuM5inyFx49fwc27tx36FwA2F4RktPRtngd3BmwmY3I8cY3bTVG7dpFyQ5ynsU7cBToMdHEEIV3YgWlg36+DWtAVlS0E4JESQ7WpHBOSaAXqmsoFfd/tT4xSu0oDezRd0xszYml5dIXJ0cSp3YteOBk3Qu4S9WEnBemmSuFIz1shsK4qx9Fq5bQC5jtxc2Xq433TwzPpZUpTkmPqaap5+oEPNrAdC5JJIfKQY3ZzZti6DlNyRPEYIV9tMQFhLjyjXMN5QGUIAxDpO0F1uZLqeqNR4lKTFnE7mo+wGI8cpWKxKUlb0SgULZ+SFFhTNujbnqJ8jwjXSRNWmJYt5ZwoaxRtz2Xf9thsLrHNr5xBfOaIgUoqMFiGKKE6ZNcQCw8zWSxrkDzPQ79HbGBT3+kkxdEptV9tLrcu4gtCAgDZ+4ZHoaOnYwEJK/iGupHWggyiaAW2l1tsNhfuuYlxR4GznUHkfIfreJ5+xeesKcIcFsorUy1BI0psXww1FndNj6OjOzg7u4+iXOP4+BSzk5lDkyqTSjp/cE7UaOb3U9SyY5Oxnm9Xk4c3uzGjF99S1NjVFEITCwoteFnmkLJzDeSj+Y4LVElFoJW2x5sRgmsl4fkMSTJCWW6xXl+Yon7sogDR0qJYuaeu7rNM36QAACAASURBVMjoD9oxM7SiR91zVyNNwxDS1BeiIMDRaAylNRZZhtWswsVma/rIemr9kHS5WINYFzVFw51AVeSQcocA1nrXz6e0OkifUuQVYLl8ir7vUNc5pvmJMbKk5CEN72FXd5jemCHOYiIRF8Q6I5XCNE2dBIzUCkkYQUiJuu+xrutdfcEwwggTURAhgw8CG1BaqjbtDKITWF6cU3o0SkxaiMPzfGgtXcRox3W0sOf7CCPyIj34kEpAiN6x+nge2zswPuo6x3BGacBsmiEdJ6iLBnXRIJuNEEUkzWWJzycJUaMJRVyUYRA4PcbIKGl0QkAZZB7zfXRj4TxgrQmQodTu/SoDRLJe92BSafvsSvQumWNlieIMTZOb/jcCbJBKOdUYLWeoHzBT4yYwG2MMx3eOXQtNXdTYXlKGwmcMnk/1IB5xk5Yk9QWrr2gVZmwWyHrqspfksLU9qm29IzBXxG6V52tM50coitXBPrW1NtlLo9AyOLDJeDHB8uklNpcbzL2ZQ1kqoVyfW1d3iJIQTUlKHx4s7ViDvGmwzAsoIZGNUqPJSgY5rwgBmyUxZGoI9wOLjvYRxgSasxRtVsKs2laUBu8ajGczlzWyLU37w/cJ9HT/k58CDyPamwn1Bg+aGuD7pkNo2rp85juErq0Nx1mEKCDVnWmSYJqmCM15am/tjH4UBDjPt5BCoSkbrM/W2F5u3d6xbSO+4ePtDL9srwdH6wYAm9UVrq4eQYje3R9SXCPJGHaRtB2EeN6TMzO9soOhVlRSO8eTBUTtBhA3bBJHOH27dKWgalOh2pbuLrWlFgvYswxDWilHL9o3Peq8xnp9gb5vwHm0Q5h6zBlErSW6TsL32DVyjN97PHek2DUdknFqGGz2Lh7fcxB+0QlSmi9nuLp6jL5vMJqPkc0yxFnskEPlujQvQ7gCOwDXckEoN+bo3pSQ6AbiRuzaHm3RYH1B+fayXCOKUmy3lxCiw2g0x3x+k16QYaWxpL3atnDYeRkk4wAiro6jDE1T4uLiDTRNiVu3XqINYXgnCYWncJKewLKkeL6H9cYoljNKDVvpoE4ISKWwqStwRpdrZwABnRDIktjVFqlgT5IvPqNetq5q0ZQNtusl+r5FFO3owg69oevAEx8B42hEia6tcNU3aNsSQUBK5NksQxAESJXhXVwVpncRKNcF1b6SEEIqzLIUi2yEwCC6lKYoUkiJTkrM0hSlkZuyhqEpG0obGrg6EQ1QmmmzucRmc+mQpcylb7QxjAqe54Ox4E35C92aXSukUz1tl+6mhnAGrSTapsT6jFP9JYkc12yxKnaSR8muebsxBMee52FqRJitQnrb9wDnCAwxt9IaISdZtKbtwBiQjhM0ZesajUkthPaPFOT1tqZObAc9u4Lv7w77aDTH2eOHuHn7LrSm1K9tR7HRZ1fvWjhiRqT4VrFhOkoRBRxF26IzPa42RdgbFLO95BjbZQKIzWlwYJTB0AIqtauP2lEXNcoyJyYi9eZeuc/8A5AGid/2iNIIL/yJt+HRKw9x+eTc9feGEXfzKlYFMB+haygysgoeWRRhWRJ4KAg5lNbI68YJCnPDJnN5tqS0W9sDejDtN8rRLgKGSGDvXqjrElGUYn5rTqlACQR8R+SxtxudUPh2ewnRTxBnKdiNGT2TJJ0/omEjkJIUCm3ZYHo8RVd3GE8yLLIMedug6jokJjOhtHZyV8NAPKNHozEpTxx7uDqe4cnrT4nAY1NCGcASoWZ3LQlOBFoqSCmxWhF5AN3hRHrhPYNeHxwuQ0sFmEhRdMIxUtl3Z8tifkBAyTRJEIccUcDRCoEbkwnmWQY9aPR3FYqmwaPlCtWmxDCQ0WyrFvW2Mk6KRIvWqSH5JhvZ1R3WV1eo68Kcg500m892fbn+tXTwH5xKhuc5js8Djjw9IDDUQfYFRVmMW/fuQWuF5fIxfuNf/BIGaNy8+RKSZOyK2ZFRqwbgkFKev1OuthDtYRjw8f/7N13dyNadNpsLBAF3NajxeIFbt15CMiK0mRVPBQgsw5iP9fr8GvyYBHoB4swLowTj8RHeeOMTePToU3j48JOYTI4wnZ7gxZffjWxKHIpaasxuzlyxPOAB4izC5GgCTCZohUDEOfKmQdm2iIxgp1ASveEULLvWMMF0Dp1ZFzXyZU6MMjldNuv1UyTJBIvFLURphCdPPg0ljWMCD2+W/giCECcn93B2fh9SCaieoMpV9SvgQYg4GSHLJhiPj1zqNJtSU2yUxaRfV1AdpZqmaIRAwrljtW+NsY84R9m1WG8KaD2gXBfYXGwNwMPH8skGddFgfb5GXRZ4+vQ10zgeOfCA3dxKScfIYdf5d9vQh/P26Z0EHJbRom1KhFEMZta7aUq89rHX0BpeVimU228n904o1aY1NnVNElvG+AwDaSuupEQchthUFXIrv2PQdrZnUxujsb3aom+Fax2i1hcCc7RViyqv8fTx/Wt8tWSUq2praosDgoCjLNd4+quv4caNF3Hj1l1opbA6486YH98+wvayRRAweJaEYJw5LcxRFBMheJah6jowj5Tfi7alKFcIXBUFNlVtQAwEDiNFBYpEtxcbRFmMzfkOWdpWLS6fnKEoljg5eQEn906wfroyagWHMmYAHKmFTen5AUPfdEjGCd7xRe/ExRsX+PTHPgYeRji5dQf5qsCpPHXK8r1BQF9mlhFHOeSqbUWwqXrGfKpvd4IIGcYpUQleUmbm6tEVsVP5PqSUaKoSou/QG6myd33h57sa6H4dcbs6pEMbSFUXJzfv4OLsES4uHyBYh+iaOxjPSSTX9tWtz1ZQaor5zTnVdU07y3q5Rb4lTt75KHMC1Zu6Rl4RcrStaH0nxxNHK0jyfZERDKC0dJzFhj4NjgS9b3v0feOAKqvVE8M0BQwYHGHG/hC9wPp8jdnJzGmSRqZsZPvPrbTe4nRBoLs4dITyAAH15lmGs+3GCJSHCBjDfERKJvVxj1VVwfc8bDjDeDGmAOBiQ/R2dQcewlC89Xjtld9C19WIotQ5y3b9JIhFizKWe6juP8hIERgONrV9IJe6iUJ0TYl6W2N+aw4tNcbjI9Q1tQ50XY3l8gmGQWOUzeCzAFpJJOnEpceiKMWgNVjA0fdGnV0rRFGKqsqhtYQHD3m+dBedNYiBMYrcgCls7dIqWiipAEY9YIepuQEPH34Sb3vx80xkQnRJYZig62o0TQHGArRtBR6EmEyOkU3GJmpOXCGZ2j+Awi9xntJFVPe90wsDSKV8XdWQinq+LNUW9QLBeWLLx0s0ZYU8v0LbVWCMI00p2t7nlLRs8EqJZ1KOvu8jG82QFlMI0bnamlYStWjRdhWKYoX1+hxCtJjMZ47sfLyYOKi3LY6vLteuObhYFbCtJURbBhSr3BXBy02ByfEUWg3YXGyxuVyjKFaYzW4AABjjrnZI4BgyjrYo3rUVYsNRSf9+2JJxvXnfkjp4/i7KVEpQOgs+AIoqeRCiKFZ48hpw88VbmN+Yod5W8APKXBwdz9AKgUmSQA8D1bpBahJ2DXshULYtNmXlnoebvkMLnuoMS4/lBLUpYyUkinWJYruhS8rzD6J927xvkZtCkIxWkkzQ9x3Ozl6D1hJH3R3wKHRGMZuYHkunWNGjiw0F3UBclVkUoRMCQkoUwrKLeBgGq8fIkETEOGWFakkxhZwCS81mU1oA0OQ1imKJJBlhNBshHSd49GpBSjYHAKLBoB/hQBX7Kh+iE4iSENkkRdtVqOocou8wmxMlHQsYcAuoNpUx1r6LYFlAGRzLmtS3vaEwDEx/5a72tT5fY3O+ds7bMAB1XbizIUQLxgIsFrfhB7bB3dsDBnlo2vJgLw40QUIiRwmqaoO2rbDZnKPrakznRw5Ra4nHWyMkAAPAs1FcF3JMsgQcQNm28DxyPEibUcGLOMoNPavPfNfyReDC3vH1OkNoWLAswfhscUyGWGswn7k2LhtY7A8lFdaG3pHOOUmMBZxR3dlQrzHDFDTYXmtN4slaa5z1GxyN6RzHYegydAHz0UmJsm2Rl5XrYbXDtvcNWjvpufU5vddwL2XqeYSmD3lE/MfGsT5coOdry/Cep4/D87xLAA+e6xP+8I4Xh2E4Ad5y8wLM3N6q8wLecmv2Vp0X8Md78Y/aeKvOC9ib2+82nssoHvyg5zEAvwLg8TAMX/37+iV/CMcfz+uP3nirzu2P5/VHa7xV5wW8ted2fXz2hHDPjr8K4Lf//3qQP0Tjj+f1R2+8Vef2x/P6ozXeqvMC3tpzOxjPFSkmSTZkoymiUYTVxQWOTk6wWa3wwosvmt9GJGOetwN+eKCcuwUr7AMjvL3vt4rkHnCN4eNwWBQW9n4vfT/Jt+yjrQDqtbP9OlaMUusB+WaFpi49AJjMZsON27ehlcL548c4vnEDq6srvO3ll+mZzWe5P70dmZp9Bvvc+/O2qtTM993Pwr4L+gs11mrtnt/OUWvtvkfrnVgwBiqMa0X1XW00H+0PD3rAanV2NQzDyWQ2G05OT6GkxOXTp25eL738snsW+wxu3cw62q/Z+V0fb7amB2tj50gPTO33A3Gr0lzM96gd2lMbUV0SLqW/U28lMeZ3XX1l0x9xnA7j6RxRGrq9uF6tcPeFF9x+2t9f+89t52zXaX89qWf1zee+3/uoh+Hge+w+HMx8d7+L1m+A7SPc34v0c/t7MRuNh9niGHrQWC8vMTs6Qr5a49a9u/BNjyjbm5vdl/vDnj+rgbf/Dg7exbXz+HsN+y7szwxvMn9t+pHtXnj1t3/7ahiGkzCMh9FohiAKkG+WmC6OUGw3uHn37sFa+R5R4+3fG/tnan+v7v8cvMMz+Tu9m/2xf8/sf46dlzJ0hHZO++f29VdecXsxzUZDmo1RVTkWx8fYrFa4fe+eE2j2cI2Qeu/+OrgPzfyvj/21u34W32wN7Nzse9knirBrI4WE1fO0+1BrjXyzQl3RXkzNXhygsbm6xPz4GNv1Grfv3Ts4C3Ydru+N6/e7NO+TM4Zgr995f73s+7m+9vt3/sHeuDZHadZLqt1dD1B99Mkb992a/W7juYA2o8kcX/MXvxG/9us/h/d8219DGHj4Rx/9KH70Ix+hX2b6XThjmCTJwYuznHgWvBAwHzEP3SHnASEzoyAglBLnUNc2LUA9gNJAvnspIbXGqiydUQ2DAL2UaIVAJyWWVxsijb3aki6caYL/6N/+kPvdx6en+L6PfAQ/9t3fje/5gR9A1zT4qb/1t/Df/+RPPnNxREHg5ul7HoRSrgfR6owp07emDLN8zLlTrZam9UMq7Zg57DyF+f+ybdEIga6nvjdhCvOe7zlEVr7MneJ9a1ofhoHYUn76p/7GAwA4OT3FB//O38GPvO99+Ksf+AA8KfEzP/ET+B9/+qcBEHjEPut4T6Hd9lfaOUmtoMzmssrb9tntkKZFQ5r3Yb93/yJlvo9lWVKrg6HXasrWMWXY9ohyXaDcVA7yvzq/xJPHr+Jf/vo/cfWN0XiGf+8/fC9+9dd+Fu/9rvcjYR5+5n/6CXz/hz+MMGCIeYjUwNrHyY4mzq4BAEdEEDAGZv+0LErme+1QwwDm7QRX6753X2+FgNQKVddBKqPrqBR8zzP/Rl9bnq+pdcHoVFrk4Uc/8sPucybzI/zl//J9+Acf/R/wl/6Lb8Hgafzjv/e/4Ts+9CGkceTEgNMwJEot81xqGCCkBDOanonppfQ8j+D7xtiEbAdVl4al6Pqwl5jdy3Z/7s9fGTCF/bMVAo0QJFBsxI2V1vh3//SffgAQgO5Lv/Sr8ZkHv4K/8B9/A+JRiH/6s/87vvUHfpA4LcPQzSmLIoQBg1TEqtT2Yu/eYEjCEDEngBE3XMkAHMGCXT879gVy97/WCuHmZffsMAzopEAvFbZ1jaJtUfcdyrZDbySlAODr/s2vdHtxOj/CeLrAf/7X/zri0Mc/+Mmfwvv/5o/gxmSCmNOzxpy7O8q+dz1o+AZspgeNwGeIOX/mee28rj+rvVebvkcnBRrTa2n3oz3L9ns8sx/zpsHl4ysj49ZBCkU8tELio3/7h9xnzeZHeM+3fBd+5ic/jK//lm8F4x5+7n/9X/C9P/7jDnXOfA9RwN1z273fSYmEc9ffPIpi5G2LdVni5nSKxSgDZ4Gbq10X+6dwZ9SD7/lohXBajp7nQSjp9gcA9FJBKImLPMe6qlGV9U5eq+nQlg2+671/6bOqjz6XUWTMx9Mnn0EcZ1gsbuHs6X1zaDT0AIScIwoCkuYxhsAOe4FIrQ+MZWBQbwBc87c9zCmzL4z64qRShJRiPnqpoIYBreidqnPAmKN1UnpA1bQo1yXKTYG+FcTN2AqnR2fHoDX++c//AsI0w+yFe3jtYx/fGTpNnxkZnsU4DOF7QOAz0hYT/XUdTnRmAZX5HYHxGIXvoxlIET1gPjiLntkUUmuM4hhl26LqOrRCoGraHT+paV9RiijHrCYfQKwjot2H9w/45z//C8gmE9x6+WU8+K3fglIKbd8fODDWu7Rz8jzPtSZQH6KHwB8OHBWpFMq2dZdVGoauTSMCnnGI7N9HceSYSOgZd8TJgQgc6tF5sFrD9wOMJ4vDvRgwPHzjFURxiqOT27h6SvudvHrmDGLMufu7fZb9sW+0nXH0fahhcPtxP+qSivZdYOYktXWE9tDYHhAGDGVLBlEPA+qqwfZq64gobB+ZMlRi7pz0Er/6i/8MIY9xfOMOzp687rzg0HjY0zR1jDvWIA7DgMEYCt/3nbGzBtGuqxoGMDvfPW993wgCu6jfrvcwDFCgS7kxxsQ6fXafNgZxKPYcYLdeLMD5+etIsxFm0xOst2fUPywV/JCbe4DugrHhPU5CowHK6E5R5u6wBibYiziGYTgwePvnyp5DAM45tc64MkbK8zw0fecc7qbvqR2iaSCUIh5Uw+V7fbRNg1u3xzg6OsXV8tFuT8EyQynogAHwkYTc7RV6Tg9K7xzqAbt57BP8W4cEgHMChHHwlI2M9taLm3YFG4yoQaNqO7S9QFXUhp2LjIZlC5O9PNiLSml88mO/jijOMErnWC6fQJgzHjIG5nvgLEDMOSIeIAq42/8AGSr7DNZIjo+PEPgMesDB/Uh3JADQ17IoOnAaIrO3OyHgex7yRiHmHFIrSEW2oRMS66pG3bSO1WfQwwGZ+WcznpsQ/Mnj13H/Mx/D93zzN5AQZF3ju//r/wbf+f3fD9/bGTZgFzGxvY1rL5j9y2k/JWB/hg6B8VB9DwBBeJnvo1fq4Od8z0PAOXrTN2d7AFvT9E4ahNLBky2V0O7zgU/95sfwL/+vX8Jf+fP/DqQQqKsK3/7N34wP/s0fMZEdLYK9ZCIekBExz7ODGtPi+p6PXkoIpRAGtNAcgNjz1O1FDACeUmC+j0H0GAaPFlsriobNQfR9H73sHbODXXQ7JyW1YyIBKMXw6U/8Fn7tl34Jv/HLvwzR92jrGt/6Td+E//bHfozmwpi7OJRxLOy7YYYVw166+5HFYNZV761FGLBnHAHf9MAx33h7prHepXn2SRQMLZqU0smI0ffIA/UPO54+vI8HD34L73vP17m9+L3f/m34ng/9sJtLJ+VuH3oeYEWyzSXTSemiX3vx2/l4hvN233MPGAPehDQAIJFy3wOY51OkbwyFNH2LVjdSGjq0YbDyV4cO2uM3XsP91z6Gv/Gt32TEVhv8+Pd8AO//oR9yht2moPYvyP1n3X/m/dSdTb26r9lUsBnXU3TWcFhHod+LtNUwoJfS/dtg/r8T4iCVbt/ndnuJy6sH+PAPvR9KS/Rdiw9/8Pvw3vd9FyLOEfgM3Bpz5sP3aH9KrZwqPb1nTUwl5hkCk2myZ8p+7r6R3GV3DJXetUwHOVM7I7qfUaD7wrQ/hYHb83aIvsNnPvUxfOCb3oMBGk1d4UPv+y78wI/+qDPkFNWQ87Qz0JSZARRslxXdefv3ngkojDG3Z8ueM9v+INSbX/xy7x30cpfFsYof9m7Rb7anhwGPXn8Vr37iN/CD3/kt0Fqhaxv8d+9/P77t+74PHoh7lgdEq8cZQxyGLsMUhMydQ9+DCWiYWwurqmHXxRrAwPdcpGvX3vfs+aL9GoehW8NeSuPcKHRGf9MaeHu/+HsB2u81nrN5H/jXvuLP4z/4y+9BNsvwxv1X8Is/+w/xgQ99yGwi2lC+uYz2DeT+RbvvdQM7j2E/RaVNGiAKAihN39P2lsJn5/0xz4fEjqFGmg3dGXVoZbQALWPHcO2w2vG13/iN+I++4RsRxiFe/8TH8Y/+54/iAx/6EJQejDen3YbSw+BSEwDAmQ9v76XHPATzTZrDvJeA+ZB7qVjL8O/eSxCQx2oi4cD06+mBqL2U8VK1IsJz2whOFEhmowt5oGmGYcDXfuN/hr/49X8FjPn49Cc+jv/j7/5dfM8P/7Bj2/F9H5Hvu7SOjfI6Idzhs8MecLcdPM9cVD5gLhUAziAC5NnZn7VZgYhzNEI4Az4MRrBUKqeq7uochtlIqsMeKgD44i/7s/gLX/+fYnoyxeXFG/j5v//38P4f+EGzD8iJsQ6NfV5pnA9pLnobOdhntM8TMAZhIgolpduX1kF4NkXnOQ8ZgOMGtiTv2hxQ8siFq+GQCsXezymNd73rz+DLv+prcPPFm7g4fwO/+HP/EN/wHd95cNm/2SUYBsEz/ZzXDZMCGV5L4r5vPG3UD+/QAVEmOra/yzpHwpQvBpP9UKb2Zj/rev3y7W//U/jqr/06AMB6+xS/9su/gPd8218jSjwzH+FqknQ5BiaT4XsefG+X3mbGYXFO2rUzfX19fI/OZScEOPMxDMaw2Ltn7/v3zzkAp6wDUDM8rr36yWyO/+S934HxYoyivsL/+fd/Bt/+wQ8SQ5bvH/yug5S81gDfZRm0MSau9KKMY7q3h6XWLntlI3JbRtqPiIXp1XM/p7Tbf4EhH99fJ63evL78b/y5fx9f8VVfAx6FePrkPv7ff/ZP8F997/diwGAiVW2IIJhxbGhfWSfFZij2SxbDMDhnzn7drretee4MpBFFNoECvSftov1eKvd+pNJOU9eul+/78H0PHv/sTd1zRooeIkMNlciYBFJhrbzn6kmcMbcowC7NYi8Wz6RC1EBghYOaCOeUXjSeva1bAHQhuXTB3gXtVCakdOfZNuzSgpvLTmtH0XR9AwyDibaUglAaGnRpWcO+vzH1oNG4FIIPqWlh7LApkcD3Ac5NTl8c8J/uj/0anP07RS4EnBnMhnYK5UZNQArleAmHa5eAnRNjDJ0kgWIllXtKe/Cs12a98E4I8sLMs7C91JRL8Zj/H8zlRfUQf+eVGW/ON1mB/cNq155IBxg6mGesOyMfs+PY1JpU7IFnRUI9z3NCqSTUay51U9fohEQWDW7f7Ed3z9R+zdftUHuXpM1yiGvZjP3asK25RgE36dXdeuphMCTaO01PiuitwOvhZU5GtHVE3ESWTHu17ntM05SEoK8ZZxd9uCwLnS81DPBMfdP3ffh787eAoWHY6ZBwU/7YnyfzPJcN0ea8Sq3dv+0ba3s29/cWPR/N2QoU2wyHJX7Y3yM2cpdaGaO4iwztWbdrt38P2PWyP78P0rD1K/tMvckWub2td3vCGnfL0WrXBcNwkF7czY2AW8KIqVugk1Qa0lfgQWDWaRf5AEZNwv5+u2c0AKVcZASl4Jur1EbL1snWA1yZxaZJeykRBgGqrgM32Y+Ic3SSnNwORBbPY1Iq8jwPPvPAAt9wQl+bF2A0UXsMajiIknspwU0mye1fcxcQsGY3V+swKj3sOdO2fg1zjwxu7+2DFt1d5TM0g3DON81ZHqSp959dKSLLZzz4gyMEt0AOm19/1xd8Ib7yq/9t6IHSphZQYF9mzDmavqfIyoTQNrWZRqFLN9GEtGMMsYvZCrE7cING3fUOQFNUOyJqgFJvMMTG5KWTrMnkaEJiu3tgFDsXNy+tnTEVncCf/KIvwpd/xZcTqS4GxDx0h7bqOkSco+46bJVCEhrpoL2zYtOFFogj9i7h/UUEbA1hMF4Ved+9Uni4XKIqaojWSqxIg8wkQxGPElef2ieU3k+fYiDuwjiLITqBd37u5+PzvviLnUfHjCGzBnBtyJMBOmy2ZiO1RtP3rtZjU402yrJ/dnspKbYXNik9uKji6WpNHId57Yy8RaCygIHHHNgOzmiQOok8kIaxQxsOSwD4vC/5YnzVn/sqBIyh6TvUZj16pTBPU+exd1K4iIH5PiIekId5zZu1lwsA5E3jUvYAUHcdVmWJrhfOObGi1j4jYVdHstwLUuGQCqnhDLYKDEooMpa4dtEOA+qc1uILvuxL8CVf+a/T5zYtLlmBLCJGj9jMASBjUXUdGiEO0qoA0Bi6OgAuDWqNpk2n2rNkz6/U2kUgoU2xX4sCmUfnzdafexMtBr6PHodISsYCBAFHtakwvzXHOz/v8/Flf/YrHDuWHgasqgpZRKw5Aygb00u1l3WQ4Eoh3EsZ27pTZz7P7sUYh3XtbU3vU2q6Z9q+36USjZNmDa7NZs1HxMTSdqROQ2TXzxJMDwSFBA8DvONz/xT+lX/1z2CZF7hcbRwBdxyFri4WG+wFQE6IPYvAobMulEQnpANxFXXr5K8s1Zrnedhcbo1WI+nO8ih03LaWt9WtmXkekhcjab/tZU7nOQgO5qY1ZXCSSQotFd7+Jz8XX/pvfQUAIAo4qR4ZUFUUBOglUdPFYegieG3wJpGJHDkjkIwe4AQU6J2QI858z92ldm1tJsLiGOx5sfVfm8UIOcfN6QSPjOC15xHDFY/856orPndNcTCer5JEn8Z8H2XbQiqFbVPDg4ckDFE2LdLY8BMqhcUoAzNeQ2gAG/vpD4tgczlmg1Ss2w4+84jzsCSC2K7tURuGfiti3NUkZzI5mjhePoBIvNNpirYiKSMG9qzX4HlG+JNDKe10wcKAeEWtV9oJ4Uii96OmTkpn7BzKVBPqdD9i7iUZ9qK7FAAAIABJREFUjv3ah0sdm9pA3jRQSuPy4SWqvDJaa8Q/yiMSz9VSO3X0pmzRK9pcfsAOIw+b3jX6gaLrHeGzjY7UMKDpOyyLEp2UaDpSIClWBURLygyil+7zRvMR0oQQkFlEoJmAMQgpoQbtDrFURirMIGiloZ6yaunFilQNeBQ6BXjfKG7HowTFunTE0r3onhUM9Uippa1a+IEPzgMIpfDG1RXqPUehzivwKHRRJQ8D3DxegDOi1UvCCIlJZQMwToByDoKtCz+9WEIbujat9IHahyVI5iGRRY9mGdJJRvRXhiC+7wTiLEJXx6h46ebjscN0p+/7iNIEURI5/T66CFujaaixHnJESYTNiOTJwoDADvZiCBlDbyJcu89sRNINlNIrjcqJMAbTRhtWrkibFJd1gDyPVFCOx0R8LfcMiUWPZ1EEoZTjhH327tiJcluRW+tUtGWDLgpRhXSX2OcKfN8ZE+soW7LsXT10dxa5MTbbpjbbhBzTxtDbCaVQ9wQ4sShq3/MQhxyzlLQaPW/XteP7RGHWtwIsIHURdo042/OImzOdZMRpa5DTxSp3P2czHkHISdR5nCCKQ2SjFGkYIjLpvZiHDvE9DHDIV2G4T5uyxdP7T6lVSw3o2w7by9w5zX7ADqj/pJAIY+7OMDORLGM70vyDs3UtWBgGUrCXZm/6zHPI3yigM9cbPme7BgAckhsgp8PWDH33MQM0do6oHnr3PaGJrMmR0xCK7kdrgIXBd9ggqpPS7UWlByRxhK3eldSUUH9wkaLneUaEdcclKJXC5TZHtS0x6AHFpjTyKxS1WBXo6fEUk6MJeMyRpQluTCYu5RqHHFJphxx1ZNnbCk1Ro2tJs83yclrFAasSbkecxTg6XbiLyfN9p7kXhMFOq4sx7HcweeYU8CgEOtL64iww9UQ4OPO2rp1BLNoWfb8j5bVtBSfHswNoNd9LlVrvlH4f/VvZdiaKVegMSbQSElePlyg3xLFoPdh0kiKMuUuZMsac0oHnPZsS9nwPPCKkHpgPbaDvZdtSTchE9tu6xuXTJWQvUaxy0qnc7iI5rRR4RDyao/kI48UYPOKYzMdIQoq6Is6Rm+gdgFsr0QpX/yw3Feq8Qlt12F5uUZcVGCPx0enJlHhVY04it0nkNDC1lpDymqyNUai370IIiXVV4fz1c2itsXq6AmM+eBRCdD3qonGiwOWLFambhwGSNMY4SQx8nPazRVFumwa+56HYlI6g3TpXdPmVJFhrIniASO3H8xGO7hyjKRuMZiPwkJyZMA53Ukxih8g9ABF5HonQxsTj2dUdkVXnjZNRs58TJSHiESmcTE+mmI4y56xMksQYfs+UM+jz8qZx86y6Dg+vlk7HUwqJpmggzL72PM85Q+RQcBzdnLsswSLLXKRj64zM99Gb2vZ+2w6POI5OTp0HD5Aja9U2RCvgB5T6PuMMYRLBZz6iJMTxjYUzhGHAMBtIVHe/Pw4wNbq+h+95ONtusa1r9AaxbR0Ym+XSWiMy3MhaKSRjcqjtv/sBI0dLSFfLtxzK10tvtsyhJRn3wuyT9dma9lnE0ZosG0DOXDbJkM0y9EcCdRohNBmncRy7diwr8lysCgoG6g5t3aLeGoet7VFtK5SbEm1bQcoOnJMG4exo4faJ1dQMYw5m7iPLMyqNQLQVLz+IFI1gtufTHUROAWWXWqWM2o9AbdDsthVIaY00CmE1OgEYMXLm9t5+ecIavDQMUYvWtaDYAMI6a1XX4SLPUfc9QsawbRoSQR8GFA2RndeN4YlVA0RLmpxhEqLaHPLV/m7j+YwiCArfVaRVKHqB7bpAuaZLw6I9SacsRFM25Kmaw9wUNdUkj6fud0qlMM8ytEKgqOn7+7ZH33QotxX6pndQ9sr8v4W0SykgRIcwjBGnJNaZjBJnOH3mI+AMLAig5GEt0Tu8hxDGITzfc16U9VYrE7JXXYeyJvZ2C/dtK5IFst5vMopRv3CDVNkDhiDkGKeUcow5GaOqoXfX1R0830NTNChWBZqyQVM06FuSTdmcr6kHsa2gtUIQhFjcOAEPOUQvkE7SQ+1E3wcLALGv6wogiSPnJXFOMlYPrq4w6MFJCCmh8PjTj1HlFeptTY6GSReFSeiiy9rWPnuBZJxCS42CM4QRx7YrUOc1fN+DH1CNsFgVxoGhdpgqr1EsC1JhKDeomwJSCoxGU8hemAuevFkWkBJ8wJkhLN4nzaa5We9bS431GUmIPf70Y9RFbaTN/J0cl+/Dqz00zIPWAyZHRHjeVi26qQA3DkNe1S7y6+oOdU5i1usz6jG0Rr5YFZQGrnOn5JEmE/AwMilU0rhbNStk0xR9Kww59w6w4kBR+2lGo4KQjhN0VQvZS5cm75oOg9KYnEyhGoViVSBMQvCQ0/PcPUbAA6SjBK0Qrh1lPyIqTBuNjYCVMYTVtsKgNfJV4ZDNfduDcYYoiRBnMcaLMUQvMJqNIIVE3XYIeeDSucCu98/3PJd+BoAwCnHjhRt4/RP3IXuJpmydqkjf9q69iCLlHZl4wBnyuzmy2chF48MNUzu9BtqzGYpeShQt3UXrpys0ZevasrqmIyWTPSfGliNe+BMvuCxTZIyy53lOvkia++UZ5xMkKVVsShQbEkRYn6/RFDWRtsfcGVObGWjLBq25R8OSUp6MM7RhC2V0W/3Ax6A0NpcbyF6grTpnGAc9oM4rh6q0uoJpOiJUuzGyXdM5MJHoPUcc4bc0N2mxCUohCIJnDb7WxpDS/Sk64ZRUmixGaYKg5phI2JMoxPF4TH2qBj8RBpQGt6lxG+HbDJk1jL4HFG2HsmtRtB18D6bfdUDZtthuTX+vCbTyZY6j04WJmHsk44T2LGMHRPBaaZc5/GzGc6dPAWLm6FuBalshX+aoNhXqokad17h44wJBGGA0HcE37OnEuk+GMRkl0FKjLUncFcCBN+f7vjsoxSpHXew2j63F2BFFEUZTkqEaNLH42++xklF90ztJGW0jxSR6pi7gB4yY9UMOIagJ1CrIN2WLfJlD9AKXb1wAICNE8jRUhI6zGMWK9Ouykhjw7fPsVDR61NsKQcjRVi39Zzy/xhySOq8ghcLq6gyi76C0glIS4/HCMNIz19ROyiTcqZQ/MzzPaMpxSju0lHq2GnJ1UZMiu9Q0v65375re6U4UVwoFNgy7SN14mGESoQ8DF2XadF1bUapUa+0uoSqvUJcFRN+hbgoEQQjOI3AeQynaE23ZIDSi1VoqeGFA/VrXT6tHayA6gdIok1tJps35GtvVmkAGUYowDpHNKLqgfk8iQ0gnKdJJatbTQ8kYlJAuqrRREzkuubnIlfFETc9cnFEvHd99hk3pAziI7opVQYCGuqOshYlk3wT0BykU8lVhUMcC6/ONk0Oq8hrJKIHve6R3xwPnjCajBLIX6Loe4yxFZSJgC1/Xw4C8bpwWZZXXKDelkybqqpb2SEVGiwW7ekyURi7CtWsUMIZlXjhxcNtL62Uxkr2JtXWHJ68+BoYBbd0Cl7t3IzqBalNCCAHOOeanC2cUeMjRlC0mRxOXoQBAEUBAbQAW8MRtn3Jj/+uRrwqKptYlREclGHtHWAd4cjxBmESoNhXChOphg9nrAaf9MigNMEIySvlsKn8YBmzO16b9i5zmJw8fgDGGJJkgiiLSu4xMFMToHLGAnACKaKKdrqeQEIUkkfGcjFC9rY0ShjSC1QGUkAjjEG1NSkKe58EzIsaeR2UnK6vFuMmWaQ01SIfstqo7QRo8gxh24CehIEVtFFIIDLc+X6NvqMSyOlsRgGoY8BpnSMd0rkbzEeKICBmSMEQchg5/EjoAEqHFy65FL0lrcZkXyK9yQm6bBvxyU4GHAaq8dlkGq9pknUfR9QgTygAEe07Zm2ESfqfxfJGiUeuut5UDAgya6gQBD5BNMyxuzZ3GGlFzNXSpj+bIRjNk0wzrsxWO7hxjWrWYnkzBTGRpdQTzZY5qW2F9tqbUoiJ1+TLfoqpyVBVpbSmlMJkcoe9byv0bWacoiZBNUzAekNaaIjSjjWLCODzInVvRVh4wXDy+cgir7SUZQtlLFxmuz9e0aaWC6AW0qfXFWUxq0UIhv8qdSGo8SjCejyic3zuUTUGMC03RoFjnaJoSQnQoCtKi6/sGWTpFGMWIopSU2Gs6zGHEqW1hGCjVpS0A4hotGUz7iAeIli4IK19k67NWQX19vkZbN+j7FkK0KIqVizCjKMHtu28naRyTjuhb0lYbLyZOHNquWbHKUW4qXJ2RdI5WEl3fomsrNG2JYdBI0ymiKMVoNEUQhIiSyDkO5bY8EAnt+w55fqhh53kkUpsvc9R57b6XBT4Wp0fOYDZVjYs3HqD+ZAEpe3AeYTa7gfF4gdFsjGya4aXPfwnTkylGowThlCSYHr/6hIgf1iWqvEJ+uYUwUZDWGm1boiw3EKJzepCj1dwJO/sswPyY9qLOIlfr9X3PgaHIow+ecdAAuhSVkFCKLtkwCYl4oW5QPy0xDAPKcu2U06MoxWJxE6P5GJNjMiD33nUPySTBZJRhHMdQWuMqL+h85RVkL12EbcWg82WOfFWgqxvoQcH3A4ymYxJKbjqsz9bOycgmVGMezUcu1c4YI0MQ7oAlACD6HleXj8ECDiVvus+nTIVE3/e4vHwIpQQ+82pP+qaeB85DJMmEpKmyGabHc9x79z1KFx9PSdF9lEAKibZsUG7IAF49Jq1EJag/+ersHE2doxedqdUK9KJDmk7Qdbfw5PVHWD1dIUxCU0dkeOkLXqb9n0RgAXNR81C3B2tF9cddKtcPGLJZhrsvvUyiuV2DfLtC9XSLusrR9Q2SZIQ4znDy+guYHk8xuzHF4vQIb/vcF5GkMaTWKDe0/7aXG8diJXpK50ZJhKqglOB2ewHfDyBl7+SglJLOWbOycySJFyKZpJgeT41TQHV8nzGS59objDFU2xo+8yF7ic0F6Wj2Bmtgs2Rt1aJpSowmU9rvxlkHyEFMRgluv+M2klFCDkBKZ30+HmFd7NKa+VWOtqbsW1s2ePTKIxTrElWRo+8bVFWOtikRxeR8JsloJ1QvJKIkxM233SJNyTRGNk1JTq3pD2Spfq/xnEbRRzpJHOpv0JqQd76HYlWgWJfYLjdoW8pxG75KCNGhrrfg6xjz8iba8gh+wDC7OcP8eIbT2Qy+7+O1YaDewnPKzVudMMZ8KC2hlILv+xiPF04z6+rqEZqG1OSzbAYpe8TxCOslkKYTnL50iyZqXor1aPcvIusxij1uSqVIoVorTdHItkSxLHD59Cl52NUGZbkG5zEYY0jTKbJsguPTm4iziJpip6lJO03Iq297ABtcPrzE9mqLeluhbWvUdYGmKUk/UikoJaCURFGuEYkE6/U5FovORSaMMSyOb1G9KOTUe8QD9Ko/6FP0POofAihtw0OOzhTrm7JxKcCmqLFZXqIo16jrLYTowXmI0WiOgHEEPERTHebkGWNkUN52G7OUvMKmbE0quMX68gplucYwaAjRQfQdur5x0Pyuq8F5iKYp0TQliiJGlk2QjSdOPDQIyXOVskdd5wefPwAGeLIromup3DPURYXN+hws4KjrAkJ0qKoNoihF21YoyzXm7S101Qz33nUP0+MpPuf0lgOdbK/I2LY1sSI1DWnY7adxQx6RtpvPkOdXuDh/HV1XYzI9QRhGUEq4tOpoNsHs5sx58vS7AtNysXfGvN1edahcHmB1toZSElW1QdfV8Dwf6/WZOwecR1ivzzGdnmB2eQOzkxlOXz7FOEtxezY7SHEStZc0KXzzLCEJQsejBJ7vQ4mRq3m+/ulXAAAvv/td6KoWt146hewlRX4A3v5F78BoNkKURi5tapmt3LuKI9x96R14+vCBu3yts1kUS7f/27ZCvr1E17cQxoDNZjcQhgmybIq8mFPKOOJY3JpjsZhikWUQSuEqLBxBR990GDSpsYcxMBpNwDmtSTaeAAB+9V/8Y0ynJ4iiCJ959ddwdPMG+qY3SGKG5eMrLG4fYTTLECURPAMsDK9lZew0qd5Gnz8MA7ZXG3IulYTnM0hJxr4o1+istqnWqOsFtNZYnB7hxVs3MIpjSK3wyEQ6hJ4nYyGlcuLJVgNxMjlCWW4RBCHG4wW22wssl09QVVswFoDzCKenLzsh4ayZIEoiEj8OaQ8yxky9+zBSJDwBp14/zzO90RpNUaMpSeuzrrfYbC5xfnYftrlnPj81wQZHmlKtdjTLkIxTjBdjjOcj5KYOaQ3r5aNLOrvbCn3b4/LRBYpyDa1N6lZ0ePToUzg5uQfP99G2BY5OTsF6CqqqLVEoHmfHBAicpEhGCTb9ThT7sxnPZRR95tGh8Qiuy6MQoq9x9WSJzfkGUgpU1QZKSSyvHiPgIfq+RZ5f4ebNl5CmY3jw0Pc9NudrpOPPxb2jBW5MJvBANEtKKRSrHMsnBPwIDKLSD3zj7RB69PiUxEc/9RuAEA/QNCWkFMiyKZqGBHC7rsb0eIp0nCCMuNu96nr6A3CIWd/0zLUVpSvyZY5yU1IKo6txcf4AvWjdZ5yc3HObTQiKcijtAAKNxCHe9eJdREGAq6LAQ9/H/Y+/jnJdYrO5MP00ApyHEKJDnCQIoxgXF29A9BQxKiWwWNw2BqtzkdZ4PqHaGyMRUCkkeHyodp6GEeqeUmw85iZ1uzaGo4aWBBLZbC+wWp1h0ApKK9y9+y6cnNxz4qujyRTMACHspTY7meLOfI5JkqBXCpPjCeIsdu/CDsY4EFK/03L5BEpJ1PUWdZ3j+PiuibQalOUa98J3U+YgCV3xX0kBK0Jtx6Cp/cEPmDvQnVTYXGzQVDXqeotedOAYkOdXiMIEZbFG3ze4c+dzkMQjaK3QNBWSSYJ7x0c4Ho8RmVTz4nSBpmxw+fDSfWYUpS7S45wuxjSdYHo8w+PXGR6WaxTlGmW1QRgme0LBHeomx/R4giAisI2tBVny64O5GXj84PtEJj4MKMsVhmFA05RI0zHCMMFq9RQACcgOg0aWTiBEi/X6DF1XI4w5bs3I6bTAL9vXd2YML7WLGHYUISnlbrIw0+MpskmGp288JA89iZAvczz4xAPMb85dduT89XPoexoTTDAap47rc7+myAKGk7vHuHjymABHPqWRi2KJtq2d0zKfn6Is1+7nlJLwPB9RlEDKHk1T4PLhOU7uneD4xgIvnZxgksTQA4FUbG+hFSIOYxK2vf+b9+GXDEenC7zziz8HAWd49Man8eDBx3F5+RDT2Q2MZv8fbW/WLMmRnQd+4eGxR2Rk5s3Mu9Veha3RaHS3qCZFkbQZiaLRjKa3MWke9DK/bP7API7NPM6YjUZNiWpSJHu6gQYKBVTV3XPPWN1jmYfj7pm3gBYbNGOYwRoNFKpuZvhyzne+Jcb6do0iyxFEIcanRwaS9+MASURM0byu33lhMJIiL/BQFRW2dxvsdkvkOY0QbNtGnlNhpwOIk2RM5JBii82c2Mon6l2RvIW00kEcIFtlYNyG1Xb0ztTecDoHi7srxHGK2cNTnDw5wetfv8ZyeU0XjighRImi2JlQ7qYRSFZDcMc28iE9Wz0ELbqOmOe9IiFSqLAm92zRdo0paufzt5CyMqiebTvg3AFjHGW5Q9e1SEYDDGdUGCajGJMBMZlF1OBKzrG8XGJ9tzZclK5vVcOR4Pz5IwBAWVJg/Xh0Cps7GE6HWF4tUexKeIFniICj4xGm6YBUEdbmHoL2Dz3fk2hD1cJ2tcbxkxNEw4hYUYoWX+0yFPkGP/y930f9Xwk28LwArhvA9yOk6QxS1rBtjq7rEQ0jJH4A3yEcP/I8RGGAcBAhTKiKYYzB912EgxDXX18hz7d4/OI9PP74MbzAxd/955+jaaSBL07OHuP68hus1zfw/WhPRuh6uD5VPO8+WhricBtBEqAuazPIzdaZuQT6voeQRK4QooRtOxiNTuD7Eaoqh++rilLDKIwhGQ9wNhzS/1dEBz/y1eFKFRDnrjnYZrNHSCdDbP/TAozZEKIC5y7Ozp7j8vIlbm+/hmUxjMeniNMYrh/c+yyHaeaAdgIiOziudICyliSklvQZpawwGByhqnLk2RqO42E6fYjHP3ikKOCXYLalZjoE44VpiOl4iFDNC3jTYDYY4G42RDSMYF9whOFAfVc54miIMEqx2czBuYuy3IIxhpOTJ7i9fY3F/AKO66OqcqSjsYIWbXLs6Vv4CjIx76zrCUGQrSED6TmnlDVWqxucnj7D7PwE87u3AIAgpE0Yhql6PzZcN0CY0GHnu67RwMVhgHgYY3A0gFTWbH7kgbtEwNls7hCFKc5enGP6YIq+7/H11780Xa7r+uj7DtvtAo7jwfNCFLsSA9eB43kknGZqXvfOQVQXNZyhA85pZtQ0JF5frq/BuYtnP/gQ0SDEen2LLFuBMRueGyCMUlpTfY+2kfAiH2kQkHSGc9iWhUkckza1IaG5rAQc3zXEq+XVEpZlYfZohmefPsMgjvD5X32ON199gb//q/+K0fAYL37yPlzfwfWrG7iBi+PHxyizEo7nwAupWEiUf7FZl4whHEQ4ffRIsXCZQgLo4N5uF4iiId7/+FPYqngqii04d3B0dIbAj7HZ3qFtG8hGwPUcHMUxxlGEQFmLMUvZ9ikmOHdsBEkIm9tY36zgBi6Ozic4fnyM42GKj378U0zePoCUNcbTCZ788AnWtyssVdp8NIwwOhkhnaaYDlMyTmhb1O8k1PfYayLdwCX7xb5XCNkOT558jNmDE7z6/De4uX6FKEpRV7k6s5gp+LzAo3WovF19x0EahhjOUuTbnM4plXrveMRLWM8XaKRAej7C8eNjHJ0f0bv4by5cN4Btc9i2gzSdGPSuaSTyXQbHd2CpObRjOWq+ffjOiL2uP5cXeoYgJFXXm+drTKcPIUSJ9fpGQbYeJpMHCIIE19evkOcbJMkY2+UGzGaYPpxieJTi+fExmAUUtUDkeXg9fY2maRANQgRJiPXNCmVGUPWLn7zA6HiI1dUSm80Cvh9j+mCG2aMZgjiArEkh8OzTZ3h0fowkCGBbpLttFQL4uz7f71K0GeI0QlHs0DatEoeOMbxeYXm1RBQPMZrMEA8j/Phf/CE28y0Wtzd4+vRThEkAx3PRCAnHc/HhH3yIx7MpAtcxlmezAcEa+TmxS8NBhLZpDGvs/Pk5TtpTA9c2cYAf/PSf741fmxbj0zHGJyPUas4JAFEakTYoDuAGriL0vGNl1ZPOxfVdhEmoqOO02LNVBsdzcPLsOQbDEYpdZmZcj95/RsLpDUlGdAUdDSNMH0zx6NGJYV01XYcXx8f45r1zVHkFL/JpPhB6xNCsBLzIhxd6+OTTP0ZVlGgaAc8L4XgOHj35AA8evEDbdggHIZJRDD/ywV3HMEnvPYrdNRsMELgudlWFG9fBk0+eoC5qY0ptO1x1x5RYUeeVqawsC5icTeB4LtLZEMePjzGcDREnIQZBAGaR7ITbNiZJgicvHkCUROTJVjsAJ8ZFyPVdxIN/haooaWYEIIwTnPH3MExnqOsCbduAuzSfloqwAADD4exb69F2ODbzDR599BBH5xNirToc6WiMwXCEaBBidDrGDz75Q6DrUVcVvDAwFTN3bMwezfD+i0c4imNiaiom3CgMsZsMcHR2hHSSGsgxX+fURU1T4x9ZbAscPz7Gv/m3/45GC5IIEhrebRUxgYgWDsKEZiu2w9Vs/j4NPl/nSCcpRscjNKMY2+UO6XiCdDzB+GSMZJxg8mCCH6z+mZl1+SEZNKxv18jWGYI4wPnkCMMwNPtL28DFvo9hFCH2/Xt2jNUgQf8zupS1L2YpBH7ypz/Bj+SPECQB0PeYPpiCWRaE3EsuxkmMNAwR+z4C1SneM+jmNtJpimgYoS4IuRifjNDKFsPd1MhKXN/F0x/9W8zf0v4K4gCO50BUApu7DXbLHcYnI5y/9wBpGCJQ7FrHpi54HBHxKfY9WCCiWd00ePHT98g8X0jcfHODzXyDn/7pTwGQlKvrOkSDCM8/eYrAdcEsC0kQYJokcBQxpGlbbKvK6K3NuQhC0dqGHJWiNESxzWEzG8fHjxFEMdLpEB/Fn6L9LxJVlePRo49gwUKcjAAAH/zeh3j/k+fKXJvsCRPfR9O2GExSIgCqQANNuuGOjeQoQd8+UtIjidvXtwjiAH/xH/5ndG1nmKpmbIQ970BzIbRshDr//a/jLsezHz1FK+msf/bpM9RFDT8OsLxaKm34+wgHET75ox9jM98YA+DhdIgqrzB7NEMjlIuO52B9s8Lx42N88vAhZoMBOCNP5Mjz8N5PX+B9+30TkSYqYdimtmKa/9n/8meoSyI29l1HkWGWhSglTebHjx4i8jylZ1TnTuDi6uXVt86P3/Z875SMeJQgCIg1GiYhhtMh6qLG4Giwd03gNiYPJkinO5y9ODMavLYlNmM6STF7NDMeoh7nZBnVU9UgK6LEzx7NYDELdVFjeb1Evs7hKV2izQlGnT2iw1JXatzZ6xEJ6iN2l+t7sB2VFKAOs8On74GB2gSLgGAhR7FEG0lVddd1GIwT2Jxjt9wZynrXtAiSAEESIBknOH58jHSaIhnsxdV6U/mOgzAJDczIGKNu1ncNa5ExhvHJCI0cGP0jiW33P6/rk25Qyyf0Qf/usFy7k8S+j1EU4dHREbpnRHG+2WywUUJrURJkLIVEsS2wvFoQ+86lanJydoTT52c4f3hsHEy0iwlAFHn9F+M2gtiHH3nYLXf79cNtDGdD9F1qjIi5S99rKtUlwyyESUjknYwo4ElyhDBIvvW5GGNmoD8+HSNKI7QaArSZYaZ9+LMP0TZkEN+1RISybIbpgwlOnp4aD1SduGAzMp/vmtZ0HKOTEVoFz2arDKKqzbrTVlnDY3IP0QSaru3QHeRFhoMQrufAVWQEAJCV/M7Mv76j2Ws0jI21ImMMw9kQzGZomxbPfvQUAOB4LhhnWN+sDUN5cESFkD5NzXToAAAgAElEQVRggH1Op2gak7ihI94oDWV/yTWCpBqtbDA4GoA7HHFCzkCR58F3HDicw1XrTkc+aXKN9vB8953pRWxzhsEkxeOPH2O7INayH/kE6XGO6cPpPcir66gQtJiF0ckYYRoalujhr9Pw8DCM7v35u1GO3Yrm4kQ0K438w2IWgjBAEvrmIjVaT86N61YP7Tz1zh4DKN+0I4LJYDwGLMtcMAQ7SiSjGD/5oz+AZVmGYV9sS0weTDB7NMVRHJMVHWNGu9qjh6MuFH15tU2Lzd0amzuSwYHTqMbxHLP/bYcIhVFK7Ou27dDKxnxXgTqDdNcOUEF2OON2PBd6ahEkhKgMxwOISiCdpnQeh3Sucs4RxIG5AxijEUg8jFDlNX3PygwhnabwHG7sQbUfsmYUa1OQ2+3W6NCJZZ6Ti4/NTNHJHQ7GLEghEYWBWWck+yDkQJTvapz/+8/3uhS5bWOaEpkkHpLk4nw8QvgTD7dXc9q4XGvHWnDXIaalYgcCgOs7OH12RpR/kOu+zRhcwIg0ydjaJgan7yKI6eXNL+ak5cnKPUHA0fE+5BahdUVcCabTSQrH5XA8mi3ozfAuxKw3WBqGVME8fIh1nuObxQJ5VsBSUF2+yWExC9v5FsU2x+pmjQ4tPEWnfvrJE0xmY0Ns0BuT23T51w0RHA6p5ZZloSoqOkiV8YFlMzIat/ZD8K7dh/qGAxJt9z0M5f/Q7k0/lmUh8X14joNEVc9N11FenbKPKosKmzkxfon8IADLQjIeIB7FcH0XJ09PcJwOjL+npWjohRAoRY3ED+CqjtG2SeQbRD66logiWojcygZMzTAcX0GEihbe9zBMVsZt0ml1vZm9HD69OuCHsyFgWRjGEY5OT8Bspi4/uoz6rsPqZm0cPyzLwtH5BOEgxMnTE4RJYEzkgftZgVLJehhjVICo2a0XekZWoSnqjWjA0KFrLWP5ZkykLWJtj45Hao7jmP/e8Z178Cl1HeSAo80ZXN81bO94FBPDryMz8bbtIIWE3anLKfYNI/TdC6PryLNXKms+gGLaAKB3XTicoz6RWO0y1EVt/HSZkiIA5GLybhLOIAjgOw4izzsws74fHdXKBsvLBeIRFTd+TPC03sOyFnB9D47vUGcDbhJTXJ+Y3K7nGH1pd5D4oA2lKT5IGmcb7bXMLAvvPTyHOJG42+2Q7QpjGqCp/TZnKKMCzLYRDkJ0fY+jJL5n8m5inN5Zi+j30gaLWRidjjGY0jyW2RaCJCQTBtEYaRp3HYhaYnw2xoMPHiCdDe/5xdpMmfS3nTE14C43aIMXeggHEZmbKF2pPgOYTfumVU4/pAPdw4eO5xhWaBgHpmiv6r2pCEBn9eTBBPO3c9jchutw+K6D02enCJMQS4+Yy47rmHPp8H995hnNstaeeqHOBOXoFGtXZ3xGnoceVGB1XYeTNIXrOMiOKmzLEkVZ4fqrazSVxDJbAADS6RBe6OHk5AizwQAut41fts401Sb8v+vzj7J5C2Ifp89PwTlH7PuIPA9N22JxszKLYzMn8XK5LeAGHo6fniCIA0SDEG7gwoJF4aHd3ly7FILCW9Xiopfc0gEb+xifjs2BpIfpu+XuAKLK4HoOGLeN0BYgmE3bfGn/1sOXr7ducrC5tVvGrqpQlNVeyrArICoKKha1xHA2NANeN3BxfjYzQaj6oBVNg0EQYBAEWBWFYRdSpWMjTEMy5XX2Q+/V9dJcIgAAi9xFNN3Y8VxzsWtDXym+Pevo+55CW9Vm08bmu6rGMsshmxa1Yn8xRXAZHA0wnKWwHY7ZML3HXKQfxYJnEzxWS4ldVZv8NoCkO/r90WViGUFxsStQZSWkYh7anJnPpiESeled+b08LzTz1/06VJ8tjUhv6LkYhSEGabx3SVHvjN63RShHEmBydmTkJV3fG39a3WU06nM1yuBZe0d2LfnOhgkd6PrSlYLkANvF1khldPfIXQdBEpguyGLMzGrIBu6+Nkw/2vnFCzyEKekpa+UQpC9hN3ANA9l2bCTjBH5I6IFlWeRdejBL0R6f+qI87CIBIHRdPJvNIMZjbMsSWVXR+le6vrKqISR587pqjet5pcv3n0MXg/fMo2uJiy8v8fgHj+mdg7qZ4WyIru2wuFxACglR1UY2xV1OiIPax/GICpC6rCFqiuYixx7KV9VJL/o5NJfWBe9REkM0VAxer9eQis1pM2aMDsYKWtbWa01736y8FN82zqbxDTl4jUYDRJ5HnbYqjBwVOSVrYdbH+GSMsxdnCJOQCoN2n4RRq85dk3psRxWbqkj2Ix9d0yl+AjOjBu0rXBfVfg8p5MJW36urLlXNVDd5qs67OkXg+GyCq5eXdNkqp68n0wFuXHdv0NHUEFUN2yGyjpZq6T9Tw/F9T13vtihRCpojemrd6A6cWZZhk9fK6u8ojnGcpoQWBL5x+9HZm4HrYhSFCFwPu7L8VgD6YUrS7/J8r0uxaVvcrNb4yb/+CcazkekMOGN4cXyMozg2F1s6GyKNI0Og0VR3nf2l0wS2ZYlJkmBbVfj86op8KxuynGLMMpeC9vSL04hYcYFPHo9ti0qS5Zs+uByXI4wCeA5Hr/wDq7w2i8K22T1JRt91WGx3mCRkkFurqCDOGM5GI4yiCIUQdAGcTNB2HSLPQxIExrGhEhJCV6o6f1FdjDebjWHiyaYx4nsAStKiOxFbQasezt87N4QYWUlzgeiuC4CBO4kFTN11vttLF7qeDMz1xuKC7OcSVcg8HI8VvEpOIHUjjUl75HkohUSnjNjXylBZH3g6vqjveyx2OyS+Z+ZX3OWGCEAwBxEDgjjAg/cfwGKWMQEwXpgewT/aS1SKQpkbO7i7e43R6PjeWuw7ku+cPT/F9OHUQLofn58jn0wgWkpO1x1LGgRwVWKJXof6ktC2U/pCzKoK2e6+ZZ3NbbQNWX1ZjCEeRnADD5HnIfY92BZBrruqQq2KPUe5vQRqVlkrv9FSCDC+z8m8Jw9SWmDtXOL4DtI4wtm//JQuqIpIYH3bgbsOQp8Knq7vcbdYm26/U93uYWqF9jXVfruOZZloL/0wy8IoinCcpsaXuHnnO+r73lhxucofVShLLp3Mof87/UghcPXmGzz/8XNjfGBZFp6dHOP9s1PUnzYmTV17p8a+D5fbtP6ynAwustIYgKyLAkJlrGZVhXVBiFTb389DPNwPnNmIIg+jKMSTyYT20cF34CopCUHo0qQ3tAdd6bdiuywqAkUliOyiYNB0MiDLN1VUhIMIP/zjEyrIXDJVyEua32uf31pSms7dbof5botVTu+TYHmYJPm+J0Y+A0M0iBB4runYLcvCOs9prqYkS4wxBJ6LNAzgcYei7NrO2KdJAOi6byFoRVXDDQipCBWPYOD7mMQxPjo7QykEuM2wKUpjup4EgSkeSimRqwsdIMSgERJvl0s8nkxUIklnwhIiz4PQxhJ1bQo7XYD9+PFjk6pRCYEevTEnpyxd2lN5XaMHIVm75Q6buw1+1+d7XYqylrj+6hrPPn4C2TZwwSGbBmEYwlc/NEDu9YuM8Huder4pC7XI9oax+hkEAXZVZUTNjNuwmw61mqPYlM5pSCWhTxUGt22kIdmdVYN9goauYhvFsrNgwXZs9G2nqn68Y3xLbje6OrMsCi12FNY9ikLza3dVbZLrPZWBeHiwHH4uvTG1+7vv+FipheN6BJ+YatqyjLBV4/1+5JuOq9jkpvIDQK4ggIJKOgUJ90YeAijvQnUY2owhsCiyRcfk6KwyC+SP6Sv3Ew09OLaNtrOg/TN1oodm39EhCeNa76kuO04jJKMYi3K5h8U8B0HsI4h9mjkmVP3vlKGAEbKrxy7IYYgxpuj693WKlgUUuwIf/OwD2NxG03bGGJsSuTsMfJ+szBQsZTNio+1KZXtn26i7zjD9Et8361PrsgCytRNqjtGpNeQGBAOFnovApYtpaNuYDQbI69rM77QnJECXhN4PtXXg2/nOSdR1+0uja8lTNA0CTAcD40xTSfKcDF3qFvOaiECHvxe3bbgKRpSqAGhVRS7VBT0KQ7PmdeqFDjDWPx+loPcm5BaA8fU1XbFloQPuQZqHD2PMcBG8wFOHY2Mum8M9ptmk2ng6r8m55DDpQJucy7ZFoL4PvQ9ti6EUwvz3AKVRHGa5MosZs/MkoFmYiUJSBV/X70Ow9ed6t/sG9ug34wxhGpp99N7Dc1QnAllVo+065GWF0/FIjR4ofaXv6exhfB/I23SUHZtVtfFXNvmA3CY/0oOu3OG0dx117vmOg9j3UanwAv3on0t/fwDAW2bC0/VYxHwuiz6/F3jUfY5r5D4VlPoySsMAFix43DGXocc5tlVl4sUs1f3RqEs1B2pspufYpRCwYKGoxT7RRXWDh8HEtkWpMnofSVXk6XVEOaiNOftrSUX2uxFt/73ne12Kopa4fHmJRx8+NDqZWjnqo6OML4A2wFEcG5Pgw3aWIoVUUKhamDaj+dkwCqFllvtEgtZoZKKUaPkaDnQdB4Fa+K5tI/RcVEISk1RVtG2vUtdtOji7VkNI+8+lgyll21Cm48EgIVCBv6KljLPE95AGAbHvlC+qzmkTalZDMUkUBNpjn1CgRc3RICJ/zVJgfbdG17TwIjIB0AP1IA7uCfEdz0ErCX5pmw6NCk+m/+32C4/vDwIoiDkPa7OwvN5BLRt1+TWmG/Bd18xgANwz7XXUO6qbxvjAcpshdKkI4sw2hr8OVybb4wFpIbeNcTvRZAptttwpYpSsCIo2QcqKsNC2rSEOtO+EDDNlyeYoiKtu5D2qfN1IcOXuoZmQRGKwTXBtKQRk04IF++9Zh5f6yrNWp65na4LmdcqBFqnrC5HbtjFI1nBzJQXZjzGG8p2OTEN6/QE0d/gYGVBHxuQaptQG8zZjZrYndUfW9wfOOQyuuuD0Aao7RNMBHxSBAEXwOOoSNxedLhIsi1iR/X49/7anf+cCNe/MslEXZK/XKFvHnTIo54zSEToF92voky4qbrgKFN/EaNarirXDQtSktTTUFXPbRuA4cDQRTO1nHXbrqsJWR23pYqRR+x2MUVC5KipKIZC/YzcJVUxwzglWR2/ISH0fYBgSi7cKAhO/ltXVvT+PO9xcZvfC19u9fyfUu+PchsVtQzaJPM/8pb+LQMVTpaAzWhdTBgbu2v050O8zJA9fWd9R/mc8SnD99TVBs4GHbVki6jx0PRAxD50K9NbvDurPbNS+yxmjIgiNIQTq99OrNVc3Ei7nqBupinjKo4y8fRgxV4U5Z7a5fE12pupMezWH1T9DXZOPth7N/C7P97oUdWQOt20UWWmMsyuF7Xs9N4cPZdU5pnpzbA7b2kOM/GAR1lKiqAVVGl0HZluQlQB3bDSg+QpyUCyU2mzctg0scPi4DiCk3GejWSoqqW2VZVaj/Pr2XZf2CKwEZe3x1oaFFj3nKIWE5xCkyBkdGCZEV3dctg2o70AezAEAwFOs1VJIE0MVDSO0bWv8TreLLfqsVPZtnmGb6oPIsqh6LoUAY5bRslmRZSBWUdUkxD+YvfV9D1kJSAUxm0WkDgQNF2ps/12oTc9oZNvidrs1szdXdWa1lIaoIRpCB5q2pXlM4MELfcCy0MoWdVGhVn6Z+iJzOQeLAwiXg9cSspKoioo6M8UY07qnQzMAQNmlqVglpn4e+qsmCAmWCYDWhZdoGjMnKoVALWid6G5AKsi1VhTxtu1g88ow59q2Q6NkK+lUaR0PKuu260zXbTPKxoQN06Xxg7XKLAt926mUjfuXh2ZI9z29Zy8girmlOlq9vwIVBg1gn0Df6XBVB+5Bp8QVEqAvQH2RLrPMzNMCd69T06HE6O6Tt/Sf0/b3STz61+qu9JCZTJ+JwfU8bO42GM5G6FqKEtNFdVZXiOGbi1F/D0z9pdczWd7RHuE2M0hA5HkmSJf2X21mf7JtTMrG4bvSv6dtWfcILrp7oYDcfYixUOtfE9sOH00iAWBgScuyDMSnCW8aVaHiTO1De0/G02vHVhe447tgGckqhGwARcDSrj76Z+O2bchF+r/V8W2cMTTWPqZJIz76e9CXSN/df6d1KbC8XmJ0PKIEkJz2QhkJGgep7/cwek13cnRGcOrYPRfbSqCpSEqhodS8rjEI9jprQisYqqZGLhu4Djc/pw471z+rjunT+lQNneomxHiqCrJK/CfzPoWa2bncpoNLkJRCNg0czo0zv0n5tvaBwfrRKRGe+iL7vseqKFCK2mxcANgxS2UhRmhEg0zF9/iRj8D3DJznN45JRydxvTQXl/miGVN+h63x+zRRKaAN3alZk+86BjrSna6WUugOg1IGJJq2u8e00/NDxpixV+Md/W9WVRANVYyOwyl7j3PTFW4XW6xvN2gk6dmYmi0dushreFl3iPozy1pC1BLNO6LiruvRqkguOjQacCnVz0ZwYtvRz12rTaPh3p2CPyohsKsqzDdbY+wLALDvZ6bVTYNS0PyyEIKEwco+yrZtlFmJxdUSk3Oa42gXfwAqukbBH5w6QO7YqPJeMZE5uu6dQbnSkNZljXiUQByEndaWpZiQFgDn3mFQSzXXK6p7h1ElJRZZhlJQXpuG33NOTNJoGBsqvawlFpcLtDN674HjwHcd2Mwy6ICG8qkQoYq8bgjikw1tVFFL1Hl1D9rpe5jZpSgJFRA1FSgaBmcWFVdMrWsoll3X7kOXbW7fC+PVey50XZrDWRZ6BRXqOb/sSLpj6w5RdQ+6Gu97Chl0OIet/526CHsFn+rnMFyb9iFBf5v5lsTlrkNpKWWFNA4JNmP3uz69N+l76VFmJZmhJ6ESlcOMB0LPQyklLAjUqru0PWYyPm+3WxwlCRGA+L6YkS3tdd73Zi3bloWy0zl/+5/FFIvvFApAbwp0zeTUIdaNKYZ6wzHQchXObNMJco/+7EJxANquQ+h66Hug9EmjCBCqJStKidDrpI33M9QGVLC43DaFSqu+v8O9SnvDNvCjZnMftoqiErj88tKsSxP1paD32PdRihqugiyZRTmtdEHphoHinIqt8lB1GoQpsU8bPV6wLASuh9j3kVUV/J7++Xq9g2xaTAYJjXdcF656D45KPhKqKNKjr079vWwpxeVQhvK7Pt9Pp6jYYm++ucbsbILVfI2l62AQ+OCqJdaaJak2Wt/3KKXExWqJzd0WwSBQFxVVvZUUuFiShVWlKo9C1Ci2lC5tYo9cB1/+zZfgDsfq8QyDowF1jtMj6nzUgachU53JWNfCJHBon89snd17+TYjAst6uUXs+3BsesEN19BcYy58DUU0XYuiFlhkGe6Wa2wXW7RNhx/88DkqKUxieM/pEl0XBUopkanoHliWskzKAF0FNQ1e//o11ndrPHj/gTFcBoiF27UkDK+KPet2t9yhka36rhokyj1HP8WGtERrlSjQdkScKYU0kJF2NS2lpFlGXeHrixvcfH2DYlugazs8+eQJXNdRG4phtSZzYi/0kMYR0iDApiRWGYmLc1x+eQlZyXuzwq/+7isMjgaIR4nyVCTmnM5u260zigdTOZpVXuHB4+doZIuf/3z/ufqOzL83dxvSdyrYiTGGVu4ZfhrJqKTErqqwWm2xW+6QTgZoRQO49P4XWYZVUVCIc99jvtuhKiqsbzcodkQysCwiRolK4Ku/fYlkTH6mg6OBcT3RGaG6A9UklLyuKcC6VGklSg6wXWyN9AFQ0iKFLmzmGyTjBG5AF3QjBNquwzCKYFsWWpUdKDsqfLYLSlD3Ao9isdRFn4YhPAW9pkGAbVURCUIIJL5vOtmirvH3b95gpNmXakarxwMAzO+jc/Fk06BVXXGjDlehDk1NvLi3Hne0Ls7fP0eT0VyxUcSbbVmiktLM+ADqAFZ5jvnbOXbLHeI0Ane4YWtu1DvTYw1NaJKtgl3BYFsMr19f48K6RTSM4HsuYkUW4Qpe9jiH5/B9odsRQ9u2LFM0lEIgW+2M/OHwYYySKfKsQKjkLbJtkahOqGlbk6eqYet1UaBpWnBVQMumwcVqhV1VkWxGzZJv26U5f3WihnYS29ytcf3VFUYnY6STFEnoI3Q9VMK/dwlKPTdWBCKAjsB1UZgg8GyT35d19T2uX13jm199gzAJcfbiDDa3IY5HqCTNs0XbQjQ7sthTf14lqDDZFAWW6y2uv77B6fNTQrVUhFTgOKjUGtGjh8T3IKREVnXwOMcgjXH95hZVUWEe+mjbFlPFhgdg9mrdNCaeapXnFIclGmQr8mF2fRfrm7114D/0fG+bN5szrG9WePH8IRbtSn0JErZF7bpt0eJp1ZBVL+o3n70lEskgQLEpyNmfO+h6giWEOrjulmvMLxe4/eYGFmOUn6aqZ70pGtmSkFPl/fmOa6qdpmtNZljfdsi3lI9HcUfSxCYd1g4e5ybVfFuWSEPSKRVCmI6vaam01FVcVlXIqgq//uVLbG7X6Hvg6OwIsmlQCYmqFgSPNQ24zRD0Hip1EGlnlPnlAsvrldHwiVIYyvXd61tU4wRlViIZJ4bqX5dU/ejMu0qZInRNB8a40T+ad6aE3nrGc1ipZqoLBfYzhnVRYJsX+PrvX2G72JJDzCTF9m5DLDhlIrCZb7C528ALPQxnQ6QTciOq8trYhd18cw3GSMLQtT3CQYB8U6h8wArpZGBs47TbiKwkyl2BRhLr1rIseJH/7YNIIQHFrqTQWFV8cdtG0/eGDcoYOWbcrDdYXM4xfzvHYJoaE2KLMYySmBABBfXLliRFt6/vsLxeou+6e25BoqJsyGQ8QNeQnCBbZeifdwR3KTiuVAJ/W5Ejym0BoXIKdepE885atCwihclMmBSCVhVYnSKfCAXN+Y5DuYFCYL6h6C8tGNezKjOuYAyB6lz02m0O9qi+zFa7jOblqvgJXRdpGMJSh6pQcKeGOUXbQtY1wcUtyVq6g4P/8OnbDpbFsF1s4b0l3WZd1KhCYvACVKCYtaoKz7uLOda3ayKV9cS61K4z2natFHRxEQs1R1bV8J09ilPlFZJxgjgMUEuJm/kSsm0w8ImVrLsNYC9dKUVtaudC1ChqoSKU7n8usy5qSbFN3f47zar9utHzzkpI3MwpAYhz21yKhUJl9B6tVRcn1MydZD6UWNHIBqKWyDd0vjWS4M1iTMkv+v0RigZz2eu9TqOGFmVRoWnafRTTu1rnnoxBWnVmxcMIdU2yOcfmaq0zM8NvOiIoXa/XyHaFMl3JDKqh96PLbWR1pWb+dH5zZhtERKh5oPaTDX0PpRB48/Ya8SjBKIruaYrzuqYiTZ3xZEdXm3eVb75doP2253tdij2oQr97c0dfgsup+lUbRcOmuvIUTYOsrnBzPcd2scU0nKLOK5WTWKB/1Btig2xbrDc7XL68wuWXl0rzJZUbDSVhmwBQ9c9EJXD7+g5RGin/S9sElmpoUVP/u7Y1cUlt297rFC3LwmQ6wuXrG1o06meq6xqV3LPw7Lo2h8oqz7G4XuLiNxewuXI8aVtc31FVZ1LZ2w7d+w+QBgFJUPIC65sV7t7c4ebVDZY3C/InVIPgUEFDAHD99Q2iQYjdcodknBgpQyMaczn2PYxspev2pAm9oC3LQtd0kLLBpizVRc8NY0v/fV4TlFWojMz17QbhIMDkfIJ0NsTqeoW3n79FmZXI1hllJSqrv3Q2xPhkbNw2im2Bm29ucH39FRjjGFYzispRjNpstVMwpECUkr6TxM2SbJ1qSR6mtSSTBrUx7y/Gnpzy1WWl9U268hQNkYjaRuLidm4Krd0qQzxKsF3usL3bQCinkSbtTLfTNhS6fPv6FsvrFaEVXY94lMB2bJXcQvFA6XQAUUts7za4enWNwdGArAIHobIzs1WeZGsuxCqji5zmHffXIu0xysqjcFsiIGVlhcCjubKn2IKl6jzWeUF7shSwlDZTi6W7rsO2qoxU4s1igcv1GkVVw+G2mQlLNT7o284QNlZ5jmWeGwKFzRh6m/TE4oCgo9m2jvrem66D7PaGCIePbTNjR+b6LqSgPEwM1UzroEQoNXR/obrEYYTNnFjInu/CPxqh6Tqlk81QCoHrzQaXN3My0FaMYX0WeKGHUUiZgwue4eLNLXZHAwwjsqfTbNrDwGItHcuqGqL8jktDvTSt/5S1BBKYTq8UwrBN267DIsuwnW+xuJyDuw7SSQrtzgTAEPfoc1XIswKr66WRXIlKoBHSmABox6hoGJmM1nydoz0/guNwM6c0sixGpgDk79yZtJRWISD3oEYV/ACoPMWmIV1iXsF2OBYAfM9F4DgQDRFfevSohMTydg1R1VS8iwbFNoeoKBxd/xmFgoS1DGxVFLhcrkymrKwpJ5arUUAYx3j7OcVJ1SekWQ9cF7nSkXcdhTNrtyApaDwha4ls+08kySDsvEe2zrHe5UhHCbJdgZ1bmWGrZrNVUqCWDZa3K9y9vVNdgYPl9QrLywXWdxtkqwyDo32yws03N7h6eYnVzRqrxR2WyyuEYYLB4AjJcGj0bwCJwvuwx/VXVyi2BQWF+i76rkNdCuMoIiqxN8BuWvp3zf3qHADePznBq89fQwiCnDRL7V1bp/l2B1kLrG83uH19C4uRefL4dIyubfH6168hSoHV9ZI6mK5DldeIR7EJmJ1fLnD91TWu37zFen0DzwsxGBzBDyN0bYfdcoej8yPwgiKDSO/HVGFAnqLm4hDSaB2FqO/ZqukFTUQcgZUqKrQLUK9c+LumRaMus9X1Cvk2h80Z0ukQw+MRvJDMCZbXS8wv5ljdztE0jSLAkPNLoSqxVhERtF7SdT1wTtrKRhLm70c+VjdrckBSG92yqMusisoQULTJr/ZO/a6nyivkmxxLl8OyGVzXMV2VVJmEt6/vcPfmDtkmw2CcwLKA+ds5bl/fYqv0SzqbT8Ngb7+4wMVX32C7XWC3o0LnaHyKIBxQvuSLc7XGOmKqToGL31yg2BZIRjGqvILrOygqgWK3d3TSh4RGL/p3DkZXzTUAACAASURBVFkLUAL/HrUke8RGkN+l63Ayt1BsSV3MzC/mlFKjjAr07/348Sn9npaFrKrAGcOvvn6D9e2a3lNewfHoAnd9B6KSGJ+OkYahYU++WS7xzXyOcRwjDQJDWHFs24xHdAcimsYQcIq6/tYsx7IZQdaAuRiPnxwbYbjNbWy6DhmvCQYVkuwUSwHH5SbybHExRyPbe3PpXVlilee4u5jj6uUVvvybL1GXFZLRANOHU3z0Bx/CU/D/MAxxnKb4+jdvaKwyTTFIY4wi0lXrebq+IGshTcf+ncbSFkWpNYKi5ioh0fe4JwmpG4lKkDft5ZeXKHYFxicjrO/WiGrKfmWWZeRSTdths95hebnAzde3VDyBTAAMf6KWyFYZhtMhkmEMx3dR5RWW15SFGo9ieL4L7joUOmwz6J1UV0IR89qDjNXyvjqoJ0Jb31lmvYjQx+3rW8TDBCIUqAMXO8YQxQEWan83okGxK4wVZbEtML9YECmOMRRnR+gezpAGNEvWo6ZXN7e4/PISi8s5snWOkycnOH4yQ9O0KKWE1/eYPJjg8ssLXOwKjE+PgNlQ6Zr3ubfFjs4iYrL3ewOU3/H53o42ABmsfvaXn+GTP/kh5m/vUA5LclhQFkMABc5uF1usrldwPAcPP3gI2yFiyeZug6tXl7h9fYt0kqoPIE110Pc9fD/Ck2cfG5PuIAngh+S8n6/JoNu2bSTjAURV49XfvUI4CHF0dmRMZDV7T5MPyozYU4zfj0gRTYOb7Yay3ZaU+Nx3nYH2gP3MQHdRZVZC1hI/+4ufwQ99A4G6vovlJUWZaE3br//yV2C2DVlLY0PWtg18P8LZ2XuwLMvo9mxOv67KSkSDCH7ooyoq0zVqOYZUuXEEm1K+2ts3n0HIPTNOZ0ESkagzi98wDLlt3IDqoqYw3QVdZj/8ox/i6GRsWL7xA8roO3t+Ru88o8O6UvmMh5CS67tw3DHCODEic/p5yDuUMiYTVHmFm6+vEaUxmG2hymvD7GvbFo1siZBUfXelp/M8yY90B2ZTCkjfdoZE04gGF7+5QLba4ey9c5w+O6W0FG4jW2XY3m3w+X/5nEwdONmrAUBdlLBtjsnROU5OnhovXC2Z4ZybCwhQdnrjBLvlDsurJRzPwfGTY9PJai2mrPckr67rqHA5WIzEsFQZiZ6D+cVCsVQsrG5Wxo3Ei3zsFjts7tZY39J3M5yl2C53uPzyEr/8z3+Nq1fX5AKl2JqWZeH662tju6V/Xtd38eCDB5g9mmEYhtiWFN0zCAK8f3KCX7z8Cr9+8xW46+DoeISn0ynBwxpuVtR6rRvUkOW7InfLslRyPaWiF9sCF7+5QDgIDHmGO5y6ia5Dvimwvl2pd2MrJx+Jv/x//iP+5uc/x3T6ENMHMwzGiXpnNfItpcOfv3dO7kzjBNNHMwxGiZo/SayLAtxm+PiTF1jlOS5eXuL6qys8//T5PcuzviW3Ij3P73tyrdFJ9ft3BrP+NwrmzSzKaLVUZ9w2LbJVhld/9wpN02A0G8GyLHz2l59B1gKjkzHGp2MMxgmapkW+zrC4WmJ5ucSbb36DotiZc2g4nMH3IwRBBO7SemiaFh6zKEcwCfDql1+bpA8voBGH/jm0NpLQCCqgdEH1bkSbzpblDsduRfFhbz9/SwYESlNtWRaiYbS/rEuB4YyamGJbwPEcXL28wsUXF8iyNRizMT07wY//1Y/NeKyRDf6///hLFNtSjWRSnL13ZryRayFRlBWmR0MM0hh5UeLyi8u9f61CKYUyRqlLpW01Ptj/RCHDOjfM9V1k6wxf/OJLsmxaU4aggRb6HmWm2vimxezRjLz+KgHXJxux6YOZ2ai6g7D7HjYnxpXNbSNe59ymDkeHr/ZUcZs8MAU9ki6uMFCGNoBm3CYpicv31etBRZTlBf7f/+uvYXPS03Rtr7xIhRHZ6+5lu9wh3+bomtZAZbbNINWmOHt+hq7plCE0wbDEKqX0B8cliYX2af2ux1JMQpszcyAsrxYQtaRKsSUHDWKfWWgkiW5rUcK65+BPbETyrXRNCC9R9veWTm1DM7M6r9A1HUG1lgUhJDqnNw4fceDDeXwMx3MoVmuV7UXArmMuFaqapXEZsjmDqCiUulMGBG7ggjs2FldL5ZnLzOfRJgVd02K5WUOI8l7GnvmeGIW6buYbSkTv+3umxPTZyAEkGsYYnYwMbT6IA4xPx6az7dQcWn8fYUIEJ+136ngOwXEqw5ECWeli0w4z8TCmA3GVId/mKDaURalTMgAyjpa1gMXY3nz5O9hx9L3ZZpa+ul4RGznyiZFaSVN4SiHpYrAslVwzotDWN3cotgVlbqrDw1H+oaPjEaJhhIcfPESURkjT2ECpWsOnL73npyd4xRjmb+eYXy8xSRJEngfZNJCKCq+JN7pr1P/88POIikKw9fesGaU6/SGIAzgH8W4aRhsc+aZY8UKKNdNhyzevL3H3lsMPA+MMNZwN8eADIqrplHf9VKpA7npuumH2wsLbl5co8wpMW0MqXbNeD3otEST9zvvqe0OW2i53lAjhUyGo5TW64NZnYDgIEKUxwjTE689usFmuDLGqUwhXlVemGIyiFJ5HJEXH8eG6AYLBftTSSuqKoNZZOkkxfzunVAs1ttC/xjBZK2I3k/Wc+ijdfSjf/H1Hmtq6rMFsG/m2QLErTWqGXl/66VShrdd9Mk4wPCYSoJQCm/kaf/V//BWGsxStIlpx18HTH50oIl4MrizigL0F3bYozZnz8MOHuPjiAuPT8d7EhNuQuxKtbMmIXex13L/r871nitqiidkM84s54mFMf6i9n73JmmZDjZBIxgkGRwPDumPMQjpNDZZuc5q5MMbgjhNTnbkBefS16oJx1PyyVRZwZA/mGl9E7Quo7dBIEGtDqspbd7BtQwfY4QsXpcDt61uMjoeIUvK01HCCDifuGjJerlSHqLP2GpXhp58oDvDwwwdwfDJD17OkVrbGXLoRnoE0+h7mn9cqLdximplK8UYAOdZ3TQuoUFDREfzRKMZt3wNNI+7nDvY0C7CdDlBQZN/3KDYFgiS4N28RaoPYDhUjrRq+9x45WvhKDGwpw/RlnuPV56+JFFJJM0/x40BJd3ownqOVLZiyp2uVK8mha70XeCq1BDR/U+L9vutR1zVub7+BlLWJmjp8OnW5i1LQpu060+FrPSdViRYZhwPK/JmSLwaTgSErATB+qbrr1+YJhzCdhliNtrHaE4C8wEMIqpxtzoj5FrgGMaD3rUX7LRjuy5X0c7iBmTKiL7YFzZJakhX5cYB8Q3MaxyVTAajZVBAHtOcUcUIbIgBQrkLkxRomIUazITzHMfINI0dqW3DQHCz2fTw9noHZDIvLBdZFYS5OzhjaA9nEYXfYtt+ev3XKpUj/u65tUSgiSSMaY/5Pvx99p/kBNA/LwmCcwvM8c0EJQWS0wTiBF/kYjBPqVLhtHLBqKU3hKpsWoZJ1ObaNoyRG8NETfPPq0sypur5Hx23Yyk6QusT2fvF/8PQ95Xvq/NV992KZi6jY5pBCYjhLjWvV+GSM7XyL1d0cm/na+DprBAeg2DTbduA4lHloc0bWib6j/EXJelCfcbXSE6bTFOvbtWHdtzpMWkgwbps9IypxD624txaZBbQwesoyI8KSrITiOGhPU27WumVZpgDgLmWCuoGLdJKSQYd6D7eXF1gt7pCkI0SDCB/+/ocYHY9UUICNJIkgFLrWCImu7bG4WqDKSvhxgME4MQWPZVmGxU/yGCKatbL9FvnwH3q+t05RkwC6tjPBpIcb2w1cqkiUdVE6TdW8qIKt3P/jUYzJ+ZFh/3HHpi/VdwkDVtlzvToctUFw39EMx/EpAUNUxM5zPfr/QRJifbuG4wUkGm9t9Ooi1gu3a7vfsllp9qe7lq7tjWehJnlYSjDO1QJgNl1ezKafPwh9pGGINAwxGMRYrbbI15mq7OkiaIRElJKllZZY6I4S8AxcKytpYMlwEFKsSuCqOCPLMNB0SoPxiGUHNnMNQSLcsdGIA0G06nL0YmE2w2a+MYtbqhmK6zmA5xiGGblKUKzNI99H+YR+Tb4tDpI6Wticg9k9XM9BpWK6GGNoQX9f7goU2xyO51IgsdbTKRKUhnjrKsdmMzf//b3H2utQGyGVIbo69ERjIEMqzAZk/t10KHcF4lECZtsYTodwXAerm5UhDemZESWZEHyu1x59Z64hFHmBq8wJ6M8tmtYcoF7gGQhde7q2Tafel5r1NtJU0t+93WgvtKBLsS5tdG2PNvQooLghWCuIfdRlTUhI14O7HGESkIm06jZtbmN8OqakDpfD812EKc0OtdOS5gR0QkAyBlc5wdiWhdB18XgyQeR5mC/WiH3fWG1pvaJmvAL4DpKNZYoNjWb0PXW8BE92Jg6Osio7hahw5Krj1nBkMorBHW72c9iHePjhQyTD2GSNDtLYcAF0TmalLnIti3h7c2cgei/wzHvXs0CmmJtdp7oeNZM/jFcC6FxwPJe6roo6wrqoTeKHxehwrvIKYRISuUztPRr5jM1atRgz8DlTzFRjkO5w04HqvauLdj3P1P+dYzMkYyKGbedbLK6WiIexurTofLE5Izi47QH0dC68czlqq0X6/olF7XiOGXdxtydOg1pn2pRBX8Bc2LBVlzeYUBNRqnM1jkdwfRfjszFGsxHOnp8iCEnaoW0mw4SIOZIRH+PtZ29w/eoGJ0+PcfbiHMNZagoSgBsrQL13s9UOfhx8Z/H5255/1ExRt+G2Ejb3fY/VzQrDGWUrBnEAUUu4jKHcFRSaOk3hqISMJArxg9/7EHlZIVtlKHTyxMH8r22IHWmrlAJ9uGs4pFeX2Je/+ALFrlTd5wDD45GqEBrzBQk1+9GBut/1BdEgn5iVBnJRm1zPk9qGqg7e2cjXOZZXSzCb0gm61kHX9Shymsd0HTnnM+U+wWztZE9hqUSU6UyXJisBIQS6rkFR7DCfv4WUNYbDYzx98REm5xOECaVpaMhMs8AAYLdb37sQAbp0s9UOfuSha3uTUN/3PcXHeA5JCGyGo9OxmZVef3WNYlMQhOHQpqzy6h7MJ5UzUNd1RpxPjL89oaTve1RVAdt2sNst0bUNmpZCVoMgwen5U5y9ODOdaabmKPq5u3uDviNSFGP3HUmg5jsadqmLmiJ6yhpO34PFAYLYN8bk2XqH5fXSzEE0ND06oY2Zb3Nkq+xe128xZooU/WcVuwJ2YSuYtzXwf10Q4SVbZQgHISbnR3j40SN6D02HYlcgW2UGrmX2/YSK+x/tQEOrWNd67TSCiiQiQFDXuVtlaERD86PQIw3vOIHFKPUkTEID3TeyQRAH8FS490lKM31H6Vi1C0yv5BabssRvrq6xulmBO9wkcSyzDHwwMAbah9mGlZTfckcByEii7/eXImMUAzeYDJBv7hfX9F2XtFcqgWScGDLU6HhkYGwAJqBYz3dd3zWmF5ZlYZXnqIrqXvefVQJf/vWX+OKvv4Tru3j26TN89C8+IvlB18FzHJQ9STBaZapNAeXVt4gbveoELYvmpe2OIG8/8kxnRwVRh9Exzdp2qwyOsq48e3GOcBAZIoq+cA7Xh+k8OVPpGIQ26eQVbYFJGaj8XvRXlFKwc7krzRgA2J+Les23TfctKL89KG60v3LXdYjSGFVRmc4wGkR0CXOG1c0a//v/+r8hScZ4+vELCnAYRubXaNbsydMTjE/HlLGqGLFlVhHRz7axmW9QbHNk61xlmAr83p//Hj78/Y+MzperhBjtVJatdnT+Wy3u3twhHiWq2P6nio5SLar+4ggKsYharQa2lCIv6GIs6aLL1jlBhIpkUu1KCg8uBcpdaaDWQoWaGp2h+nP0jEobhOtKTVYS86sblGWGtnkM13cxe+yan8/xqFKDgkM1seRdWy0AZm5YlzVF8fi2iWWhWQVdLOk0xfqGGKHLqyXaplVtvCKTqO5WL8gyqyjSqe8hKurAtD3Ter5Qi035Wdocb958hpcv/wZtK2EzjvPz9+DHAR1uaajoxtIwqxybQVYCeb5Rv9f+YtTzuUMj8VZ1LubvQcYIw+MR2qZDvs2RrzN89ve/gGXZ8P1IsX8Tc/noy3K33GEwTU1EjOMTCaXKK9TrHTzlAeqHAW5uNvjii18gzzeI4yE+/PAPzFwzHsXI17lJvnA8B1VRoiiJ9GMx+1suInpttEooD8BQuKlbtcFsG3EcgDs25hcLbOYbcIebKh2WZS6dYlcqCURjyC6WRe4hmtWnYVMNr1tsn5uY77a4u3uDotjh9PQZEpV76HoO6Uj17FGTHLhNm1nJat79bPrCtbmt0BSCiRtldAAQ3CwqMocvtyXCQWBYnDqVRO8D7uxn7wCMPdpOSQC0ZZdU7jjEhCR262a+wZvP36ARDY4fH+O9T56ZX+upsOFDY2Z9UH7rM7WNOljpYux7gsgb2SIaRgZtsB0OL7AhqgDZKsPbV1/hrH1iMgV1uLSl7cnaDpl22SpJQwfAdGl912N9tza8gHJXYnm9xGpxQ7O52DcRY/7ANR2mHtPoy5YpV59Dzap+6POSdEivVVFLKuotmxJuDgJz6fdjZIcYeOYiK7YFOt9VEXw0HnEDF467R3X0iIC73PjxahiRS24unWyVoVRFhx/6psukn4HGJbp40ev+3UfvLb1+AaDa0e/pBZ6RiPR9T+YCvovR8RC27eD6+hWRCIMIg8kAQRLS/VCpFBmXRio6co30y6UhpC2uligyIhgNj8Z4/PFjPP3gEQLXxa4sDRmqU5FduZpBOy5Hvs4JPYx9w0b9XZ9/VKf47iMqgTAJFLXehxf58HyavYhKIFtTJbu5XZuMQI2B6zgYZtt7YswBXHnz9gJHs2Nwl2N5cwfXDSBlhaLYYbtd4OrqSziOj9HRMcVN2YzEsApSoAOJZg9WS4NY61vssZ7YhC25RPiRD9ZQbmEjGhMO6gYuxicjdG2HbJ3D8Rz8/P/+Pymt2+Y4Gp/i+ccfm245GSe4/voKZy/O4YcEcW3nW5y/dwZYFCx8SGxhnOEXv7jAdjvHT37yb/DkyQ9xdHaEKA0NgURvnFZFa3VtByEEqiqHbTuQB+xTy6KNKGsJ27EhSkFkCzWA3h++QDQI0YgG+SZDsSnw5j99hvX6Fm3b4Acf/SH+5Yd/juFsiGy1QzobIk4jvP71Gzz90VOk0xS7xQ75hjSAu+UWbz9/C8dzUWYl4mGEb179CsvlFc7OXuDBgw9wcvKEUuVDj+bINbnYtG0DBw6qMoOUNRzHu1etvvvojWzZtNaGs6HSplaIhzGRN1xuNt52scXdmzsIUaJpJJJ0hDiNjRdtEAfg3Eal5nHRMAJjFla3SwRRiPHJCPl2T/lezm+w2dzh7u4NFotLBEGM2eyRkb4EgxCipGKOJDSNYcYC1EW+eytauvBUMxL6s+gd6pFC1/XkdmSRdjVb7cj5RrbgO2J56/mUNpzWXcJhUbgK13sCmiLI6XGDUCzor/7uFRaXC3DFAD1/7xzDKDQp8ToqSneKlkVEsL693/nZNkffd2rmQ/+8bffFtEZ4+q5HmEYmoHazucPm7+9wfPsEtu0gPRrC9R3DCAVIoqW/Nl2klVmJfJ0hHEQkkWoaWBbD9dVLCFnjz//9/4SzF2fmZz70Em3a1hhk6IKaZuLNvcBe/ZBRuYVuH3pDkgfZEDtdXYh0HuaE2nAGxpmBReuiJv2uoDkxXIAJZtjjGi5maq3r0QtXZDLuEpu03BWKnLUk0T+zcHQ6RpCERn4lK4m2ESYPVM/S712M/d6+zvzzrsduuYOjwt+1brfKK0V+5LAYw3uffIyLl6/heSG22xVevfolwnCA4fAYfhigLisMpyPw5Y5m5rsCcRrBYhbevHyFvu8wHE4xnBzh5OkJTp4cY/JgagKIuW0jDHyIpjGa53JLARKiJoQsUMikqMR3WPP99ud7Otrs4Rx2gKsX2wJHZ0cAoCAel+Y1nmsgxy/+9jMUxQaMcVxff4Wf/vP/EeEgguOSFm98Osbxk2PM387hBi4m5xM4noOLr1+BMQsP3n+AbJXhwfsPcPHFBV6+/G9YLq8QR0PMjp9gej7B+GRM6RIOxUPlXa4WcaPYn9T59QraPPxkbduaNGxZSXDO4Q2o69AHTxAHcDwH6TRFXdLFd3rzHPP5W1xefomLi9/gZ3/6J2C2BT8OMH0wBQB89AcfYjAeoMwrfPOrb/D0h09MMC3RoVssr5ZGivKjH/0P+NE/+0MDR+iOVVeAGpMHI2JRWe5QqE6xafYkFssCPNW5kRUaHVyMcziAgrOIpNN1NAebnE8Ay8Kf/cV/wPzqBl+9/FssV1cAiEEWj+iiCQchil2Js2eneDKd4HK0xmq1xWg0wDwJsFvR5VrlFeqyxm67xHTyED/8+I8xPT1FmEbmsMi3hYJuK3gBVe3b3RJSCjBGxKJvX4z79aejljSpxo987JZb09WmkxTFrkSxJZLUr375c2w2t1ivb/HjH/9rfPqIutbb1w3GJyNMzqdYXM4haolHHz0y+YaM23j44UNsF1sIZV5+8eYlbm9fY7udYzp9iIcPP8Lzjz/C7NHMdGj5mrIAu24fE0Rkm333+O3NZt0jdZRZheHxEK1skW9zgqPSyMw3VzcrfP3rLxBGqflzEyVVaGRjukcv8Ax8FsSBscTSzN3N3cYc4Hdv7rCaL5COKQxXw1+NkLBiy/gcH4biCsUkd23nOyUZrUp70IetZVnYbdYYzoYIksDkSIY1MSvT2RCTyQNstwtsNndYLa9hf+3g9PQ5giBGWWZoGoEn778HxyNWfDyMMToeGVg7Gu6tEo9Oxzh78ccYTof40Z98glEUGfcYj3OVGNFToLK6eBgnj9IGDaSgoPHDR1s0cvB7RRpaPa/Ts2gX+SZDVVSoCkIetGTNVsQXWe8F54Z0p4hsh3NzPYenDlx1xi2l/0ghsbxaYrW8QtNK1OU5Hv/gETFEBx7pCLeFIddp+PSwWDt8NFxs2WSn2bYdVjcr2M6E2Pldj3ydGfjeDVw8eP/B/8/emwd7lt31YZ97z7nrb3/v95buft09PdOzSSMJzYyQZC3YwgQCyBgwKNiJHRIQVYmBogzYGCMjFoeYxRCwE2PiKvsP7FSZGDuVIhXs2FCYgKKx0EizT+9vX3773c85N398zzm/+3vdI6spp2KruFVT3fP69967957tu3wWC3QSYgvlCzlms1PUdY0BtpHnCwz9DUTtyLYlvNBH3Ilw2XkUruvi2juvIWpHaA/a6A46iANSMYKeN742h6ZkSs8pxpDOEkip9CGrUe3nMQlf4Ho49KkuG0mh4LhLZFWe5BYck84yu2n7kY/2oI2Nyxs42ztDls0xnRzj1Vd/D//JN34r4i5lQEVWYGNniLd/8Bnsv7kPWQlcffsjyBYZLn72EaxdWEPYCpFlC+sj6MDBxQvX8bZ3fjk2rmzi4mMXCdXVDiny0aUUghxT+dIMvijFit6keTZTGssWGYEVnJhQnzo6r4oSkR+jMyCEarFeYPPKV0MIgXuv3sNrL/4Bzg7OsHV1y07adr+FqBNbh+ijVkiySlmBdJ7h9Rc/hzjuYjw+wmCwhaeeeh/aPUK2Mq5r+LKG44AiMu0iAS22XRUl0nSGoiReXXNI67pG3IkxPhytlLO8gHh6SsOsq7JCq99aobdcuHYBfuQjmfwJvP7CGzi6cwTHcZBMF3AZw2CLYP/X3nkNi5wklo5uHyGdJjjZPcWbL7yBPE+R51TG2Ni4jJ2dJ3Hh6hWr8A8s6SDZguZNrTPf2fREZ/Ae6lqhVvdH5+YwBIi+wX2OsqgsBD2ZJegOu+C+h8Fmn3QX+y2cHT2Bqiqwt/cGkmSCS9cvwgvIIWLrkW1cfftVDHeGmJ5O8fSXPQ6fcxzfPUaRFQhaIbxFjvHRRPdMEzCX4erVZ/D0M8/j0uM7WL+0jrbOgisNrc+T/L6emVK1zgDuX2fQyEpjISV0jzxshZidzpAvMqsBKiuJjZ0hTvb3kSZTzI/GmE5P8NRT70XcjW1FYuvaFoI4QL7IwPShKSqBgxsHcBwHvSHJ3zGPEUK1HWE7voh3f+W7saGj9FII+JyvWAQZbdm8oqwKrhEUfwtwgwZOKaXgOgyVLDE7m5EqlJHD67XQ6rfR7rfxyFPXkUwvoK5rtA76ePml34HnBbh27RnEcRdlmeHK266i1Y1xun+GWioMtglQlEwScM7w9g8+A1eDT+JOjPagbfupoech0Ao08zxHJWjvSKeJDiINEIy+vpgkD3ysZuBWS42CZhTc+JGPUOt3GjUlUQpMT6e2jeC4rvUXfRAAy4huTE4m6A0p+MnmJB3oBx6mozGEEMjSGXZ3X8N4coSqKvDud/9JUsTxGNq693i6e2LRtAZ4eJ9qlFlbiqT1jNCEo6two/0RhjtDcN/DfLJANIrR7rXB2gTq8kMfUlBVEDDgwUxr+w4ouO7EVtO1s9bB9iPb8EIPZVai1ad7dbX2rgPHWr4ZlR4jj2mywTInU+HBNmXGZV6SItb/ZzzFxiWFBLihC3g43TvF+oU1dNY6SKYJkmmCzloHg60Behs9XLp+kV7eaI4P/cHXYv/GPmaTEYIgxnh8iOPdDfQ3B0imCW69eBMn907APEKeHe3t4trTT+CRpx6FHwV49F2P4skvf9JGEQaA0oTO54sMszNS5Hd031OpGiIrNS/nAXY9FSENx4dj1IoO/naPyK9FVmA2mltB3gvXqNEshUS738azH3wngK/D0dEZ0mlqJZH8MMDBjQMcgCK4ydEEZ3tnxBUMPLzjvc/rCPC6RlERXcCgp8zBNx8vMDud0s+uyBro7Jhk6ejgkbpPszzsXcawtk36kie7J2j36Z6DKNCGzRz5ItMWSQytboy4ExNqVJeRh9trePKdj4E5tGEA0BZDQDeMkBQF9s9GON09tVmhKAWuvfNRpPPUQstNiIDrMgAAIABJREFUtGYoDSYbsdnvnErCabrA3t7rSLM5Aj9EVeZwzgGI7PNpIIzjOJYSZAQhhpfWsZgkOLx1iOGlITYvDNEedLAYz3H93dcxH81x56XbOL57jBd/63MAgOl4hP0bBzi+e4xWr4VXf+8V3PiDG+gNe7j52ZuYTI6x9/olu1i7ax185Td+FF5ApaTusIewFcLzOfV7PY4KRPUotEQYcRyNYwv1t1TjwK9rLFGEun9keoqzU5I+7G/1kc0zJLMEm1c20dvoYbA9QKvftv2zs70zZAllNGEcwmUuBpsDXH/2OpJpgtO9U/ihj1avZcUU+mtdXH/2urUsMx59vSiyGrmykZWbg/BwPNEiEY4N1s733eoaEKLS2aG7YnHGGMPo5Bh5kmPr6iaO755AqRqXfA9r2wM886FnyGXBdVDmT+PLPvSc5Qra0qdPnoubVzapL+1zPPquR/GeD70LnSjCPMusJVXk+2R9BNgSsNkDOmGIrCxXlGvMHE4mC9x95e59B5bjOOCcrxyKDnMtdYKQ1sQPNZWHfcYwPhzhd37rn2E0OkCSTPEN3/A9eOL5xzE5nkIphSeeexwuZ7j14i1ceHQbw0tDOMzFv/5H/wrbj25bIY35aI7usIcX/sWn8OqrvwfXddHprOHxJ96Dy48/gp0ndnD5qcs2EE0m1HtTUhLNpxLkTyrlOXKipjRxQsRyHUibZ17MpuDH3KKwj28foZYKm1e3sLWzQVrQGjjZXe/aYKzdb1mKliiJv426tshu3+MIh31rwVWkpOYEwAp+V0VlW1J5kiOdp8hmKU53T7F1dRP9rQFRvNJVTMUXcz10plgWFbhH6vOmBGk4dvMxITfDVoBskSHuEvWg06K+StQmn70wDnDx+kVqjOeVBSvE3RjcY7j+3ONUJpomuPq2K+D+Yxa6z7hL9jW6uWwORFOqdeDoshRxVVzm2oxWVAJKKBTnNf5geiFEY+A+p4halx0d5lpKwXxMrhbc96zajLHyAYD+Wtei+8y7KYVAlRMAgAyGKbIpstKqshi+nEFT1jWVeCtBCDjaBFNLvJ1PiLzc6QxQFNkDkYxEPKdsfT6aa0RcqDdoqRv8ntUcJQUMRohUbWIaeEsSsrF5MaRn83Xf99Df7FsUqenDLKYJ5qP5ygZpMgRHOraPtxgvSDlE1ZjPR0gWEzBtEOy6HLWSDzgY65WyqZmfAKkpxd0Y3fUuTnZPkM5TBL6HdhRauavBVh9e8DguXr9EzgelQFVchtTUjP5WH0+972mCl0uJ4c4QW9e2CAEZ+ggiH64OYBwLmPCXpshCoiwrZLMUVU4leVO2JAoNbUhVVZ7T4dXcRKVsX9FQKkQpMDudIe624Ic+RcRbA7TjCNHGAOPh2PJMO4M2cUXZcl4YEBRApXDuMcTdGJeubuOR4RA+50iLApUiY2Rfa6wac2HHIYslYOmraJzd67qGaRSSGpGwQg3L8RJAzQBntY9KwSBHkkwxPvIRxAGmp1NyfVjroLfRQ9yNUeWVpiERn9bA9Zmeq2ErtPZHVF1x0A5De9AZMQGuM49S20BlGiB0tliQc48W/qZnUbasuZgkyBcZtq5tr87EGvcF2QBJqXHfgx8GyOakstXqxuht9KCkRGetg2fOPoRbN1/Ey6/8LqoqR2+jr9cuHfCdDgGQhjtDbG+vI+B0uHo+iRw4ros9be8EEM1hbW0b19/2dmxc3sDGzgY6ax1CK9e1lbw0mtBSEsLfdV3N3159DlLM0vQn5kKUua5IUZDjBx5avTaS6QJFVmB8NEHYjhB1Iq1bylFqH0Wjrzo9mcKPAqKaxcRThgbXmHJwJSQ8TubTlbsEfZn56wUehFZSEoKQp/PRHN31LoKY2l6icpYyim+B9H7Q9XA9RcfRnMDlizMNTMZc5IsMi0mC/mYfyWSBMA6Jt6iU5kspcM4QdiL0a4IZl9okVlYS/Y0eWZto+bDRwQhVWVkEn6kLu9y1h6JSClVJ/UBTts3mRHReIqqclR5omd+vy2jq8a7jIJkmuPL0FRzePgQAdOuOhlYTWEVpFYgwXhKNASrDLLTOKED9V7cmgnPte3CYi7gXo0iIb2Wk36TIbeZk3qlZiFVRkdqLhvIbTdA8pxKOAxdSVg9clAa8E3dibF/bwt1X7lnB4KhN6iVGCcZSabTiRuB72lYH1qkcALKitCU08zWle3mssekblC9jpHJvFIjMIWYO9yIrUGrfMykFRqMDSCXBNOLUwVuBbBy7UZvxA2hOiVLgbO8UsV6Y09Mp/MBDv9dBFIdkZK2DFj/0MNgeWACLKUVF3Rgbl4YEYpkmyJOcUMkeAWgMAZmUNogvVmuOrWgEOtkiQzqnyoEBS5g5WBYVyjKDamT3Bvz0oMuQ1Y/uHOHS9YsY7Y8w2BygpcvzG5c3oJSynFajMmLAGYwzC9hq9VpgzCVubRQh9DxEvo+6ruEp8gAMNb/PaJxSz9bFJEks4tSYH7MGxcSgdx9ksaRqEi0wf1+Zqy7DdDzCVusiyqzEye4JWv0Wtq5ugbe55XuyU2Z5tK7ulRKPj8Fx+LJnW9c4WyywyHMEuv8JkAejo+/ddV3ShWWMPDSltG2WZrsomS4wPZmgu9Gzdm6NkbE9UtOCISF+aUXvCWAzx+bVTbRB2WfUifGuDz+LwcYQnh/g9HRfH/BEyOeaNqMkScRNdbA9OhwjW+TWGmk+nSCZ9bFxcRvDC1vob/aw9cg2lYq7seWPMsaAgOzkakX7nelbOo7BGNw/52j/dLUQPh0ZUtLemqcFdp7csZWHxXiO6UmEte01cJ+Dc9qjuUeJhuMShanSe7ypipwn2Hu+h7IS1kHEiJQQDYNT4hL4SCaJrTaNDsd44vnHEXdbSKYJWj2+PKse1Ld/i+uhy6eGLmFeWFNHsyoqTI8n5HVWEEQ2aodoxRE5XTAqy0S+j9nJFC5z9IA4iLoRatRWEJdxhqgTgRfcEpDrutb2StCSW8zSHWanM4Ixa3khIzFkCMMART1lXqAsV/s7Jjgi9FptuW2MMbJPYgxRu7borjzJrUoLAGvEWuteSx6UBPDRvU0TuZpIaD5e2K8xj6gMyKkHa0BAxkrJ5fScFo4vloagQRBDKtqcqTTFVsqnZmz8yIdSMfpbfZzcO7EZafNz5rnI4NiY7y4PauYujZNLIZBk1CdzmUtINh19Wn1VLblFihmO1SQVQthM3rznMitJWLwqkOeLZfDTaI6f7ynWSt2nTKRUDVdb3aZzMjXurncxOZpQRYEztOMIgZmzuq8nyor4TsxF1I2pV+eSm4DLKXNONeLUlD5RLcUgmhQXo5UphdKygVI7mpCaz3LtAEWWo6rOB2jOMvtt0J+MKo35Xad7Z4g6EU52TxD3YgSbHtqdmCgVGlywGM8JXBMHdlyNLKHrkFmwyfhmWYZSSvhaGcp1HOt2bjIsYyg8yzJ0I/JrFFKSFKNPkTs0MrbMtFdo47k412R/pSBlZZ/T/MkYQ1EQAIRxIp2f3DtBu99aqtwoAgQpQTxll+nKUIPCYg7vqB1aNw8SnmBWk7XS4BpjsdQcA6k1VomjSDSls/0RxkcTPPZlj6HVbahG6WdrHog0vgRgyxOSWfNDH/PxQos+EJd0MU1w6YlLCFshWr0W7r5+C7/9a/8Kk8kxoqgNUUmsbQ9w+/N3UBUVtq9tkTfg6BSTEYEa424L19/5pDVWML1LA3oxIDXHceDp9QvdvwSgsSFkBycrcV8Gb9aVodQ0x6uulaXR9IZdnB2MqLd5MrWVgprV4JwRPYW7FlRkhCfgwY5XXZPzjaiEzQilxyClAmfEzzT9R9/3EHgUJC3GC4wOzuA4DuJuS1eQoFV83gLI9gWuhwfayOXkM9GyUSBxXertHN46xOWnLpPPoI5I4l4MxshU2GMcaxfW7aIxNkjZLLN1eVEKiyTkHrORd9gKqRxVUNnVaJ2azFFUAvPRDNPTmXaoVrbski8y5HmKNJ2uZNPNkoE5LNJZgnd8+BncfeWeFsAl2aSoE2N8PKYB9j1ErdDqPhqH+3YcoRQCpdYdJf09bYOkI0ov9KxyBaBLnYZ0q8scTCv9eIGP47vHWEyJppCmM7RaPVRVgaoqLP9LiNJuPAAsnzPWYuMXrl1A2Apx75W7xMeceVbuK2wFyObpkju41rPrI68qu8ibAZHZgABYOTFT/jXP7bhU7g5CUvwwPV5SnHFxurtAliVI0zmODm9BSgHOllFjjdq62a9c+kBzXccGPU29U+5zzEdzTI4n6AzauPVigUffRfy6KCQbpMDz4A26ONw7gRQFjJO5IeQbuLoBLJnyMNO9PqvRKiWqklDYJpM0OrDjozHSaWKDOSmoFF6VBfIiwWIxxoperc4Um1w/w8X0Aw9FXsLzPeQpScjtvrZLPZUnL2O4M7TtgqgTaXCOQJnRz+FarcgANpjH0G3TBi/rGqUuhfqawD7NSGcyLZftBle/N84YHGMTZQQ3dEm4zCuc7J5getIUca9JuaZeDW6kFCu9cMY8nB4dwPMCtLs93H3lLoY7Q/v+lZTgHrN9XbOhBpGvpQWp/0WqVzXp99Y1qoY+q9nU57OEqiJxZGXujs9Iai2dZxgfjsjR5s4epBQYbm9jsNW36jf2yRSBxZo8wForx9Q1MDoco7PWQRAFOLp1iM1HttBqxxbtafRqn37f09ZJx3htAiTOD0CT+x181Z/9GvhRYDnihpdJa4+4iyZTNXtMMlkQuE6SC4/QwBtUyzVdNVRxzM8TogJjHEpJ2982ALi14ZYWlhAY7mygvzXA8d1jnB2McLJ7AgDorHfg6XuUStFeDqqwxL3YHm6x7yPyfeTa+7OS5MMrpUIUBjagMdm+xxhGkxluvXgTd1+5h+HOEBevX4QXehobElCQBqoeMf7FS709dPnURB7mQFRiOckMOR4AxocjRJ0Ys9MZ1Zi7tDErWaPSBiaBrjM7mnBc5WQRQ1ZIjlWfMWUp13V0Waa0PURzeBj90DzNqT+ke3iGkpGnObIsQVUWCIJ4dSPCMkCS1VJZXckam1c2yJroYASHuQjbkQUS2AjccRAHPtm9ZJmNvgGqw3OP2Si/KipbwuIxt+WyEiWkoCgIzlIuy/CjirTQmVSi77eG6zIoJRslbL4C2jBjplRN6N1FhnavRWNQah9ClzLRsLUsozKPI2uTTZDpHU7TlOx0tN1UbXq2nCT/mpJi5oU6TmEBCySSXtsNnqSiqMSW5wnOzvaQFwmBMNTSud51XXswrjyX/lOp2gZkVSkgsSyhysZmUeYFRgdnVDYOSczadQnSzbjuj3Nm553pKbuMxqRIC6v3KKXSkTZRKkjZicaBgVm+m9l88sQ4fyiC21cl8iJBUaSIwvYK6q+pL2zeFWNMc+xIgxc+PVMySRDEASbHE7S6MQZbfThOowesI3EjaO5HvgWE1JICSddxMM9zKF3mp/mirA0UAGvganrJ5nAxZuJUVqPstMzJSWZ8NMb4cCniXtfUH6d5yiCl0LzFGoCyByNlIi6ybAHfj6C0IDoB5bTPZNlwetGE/rAdWecHwyvk2o5J1bW9Z0+7YAilsDHsw4FjWwHznPhuBi18fPcEd2+8Cdd1sTbcJsWubOly0lxj3GO2hN9MTMzanI/mYBsMk5Mp8ee2PWtzZnSbJ8cT+J6P9sBH3GtZRL9xCDEWey537VrzAw9illqqjymVCh1Y1XVNc8ZZ6lIbJyJjPac0x9IE5M0xM3uK6zJr5F6WGboD6t391m/+Oh5916NwNGhvsDWArCQObhwg7sTUWwx8RHo/mS0ScK3W047pa60gQMA5ulFkTYpz7aUJAKHvgTnUBzbl+nmeYzaa4+xghP5Wn5SCvOXzG7yB41AAboQsvpjrITPF5SCrxoZjOTlCQqnauh+sOw6CyEc6TaEuKCAAfI+jrMQSNaizTsdx4IWG16hdmo0Tgazh+Z5WaHe19JsLkQubTjNGmoTGddlkiEVWoCorZMkCeZ5AiArtdv+Bz9fkThEvjQ7Bi49dgJK0OI2YdpmXSKako0kINlLVr/ISte/ZjFcJCS/w4UeBbfAbjzYzMRl3kSeFNU428nRKKLjcJXj4fIEkmYAxD74foqryZVnE81FV50rCIC80M05MbxICQNgKCDSQ5DbLD1t0wBdZQb53wx4qKe2hGHgeXKMLWlZQoOcKfA9xFMLnDMxxkemSWlUR+pZQodTrrfVENf1EAKiqHPP5CIvF2CISaSHq6LUq4Xk+5PnyKVYXr9REbqYJ337gWeUM47AwOZ6it9FHu9OyPTHDbVKQYDqDBWCdzgFokfnlweU4jqX00LwjoJlB9Zp7MpJVBODS7uYFlYizbEHAiu7GfYvMSOeZw9JQcKQkcXWrQtKwrRofTQgE53uAS/dnsl6zxswacWsqMld5iZIx+JyT04Xvo5QSrEFXMuPQjSJ4DdHwRZ5b13PzrBYlfTbD8d1jBOE5aT59CVHBcUy5UQGgAEMpibpWYMzDbHaKx972NOajOaYnU0KBN0rABqBmLsYYwoA2WNd1ETWAYJWUKKoKni6hwvPIrJl7K+jT6XSOxYScR+ajOe68+QaqqsDGxmXiyq13bZa9cjmaw/cATWVzSV3ByhPfUtG8wEPge1TWjAKNsSjhhZ5ek6EFZ/mBh8KUZqWC1H+e9xol4ImEKCo6GIW0wCSl/9+0ZowPKxj9XHNYNn+WvX+DFq5rxHEXaxfW8bnffwFpOkPcIxCkHxJwpz1oY++NPepb64Oq3SGd3VjTelzHgdRCDkJKxL4PoSS4AdT5vtZcZvCYbkvpSkaaF0imC5zuncILPAwvrqM77NkSrNR7qjEeGB+NsX0OHPWFroc2GbYbufbicl1A6lKnaWoaIvjsbIbB1oCABpVAjVqjvqivBM11LIulKwYAeIwiN2NFU2r3cVPydJlrjUnbmpjb5EwaDVXT58rzBGk6Q10reF4AzwsfiNake1/2Baqi0pymDi49voO9N3YxO5utHNaDrb51JQ84RzDoQdYK8zTXmxhDFPg2wm4FpNi/KHKUQtqeh1KGFkFlocWE0FzmPpJ0iqqi8qiJspUqbbZoav6e1yjt6EDD9Ek7ax1kiwy9zT6EVqHIkxxwHMTdCF7g2z5BVZQIfHLGEEqhF0XwOEdWlpg5GUrmwuccoYbuBx5HoasHQm+eJsBgHkcA2B6sIZMXWYGyIG9JpRSEKOE4bKV8yhi3z7t6OfcFAY5GagJa11GX9YaXhji+c4Q8yXG2f4bNS0MLEhL68KCKhG76a2NWxlarCVIr7ziOgxSAedV1XVtJNyMrVpX0frNZSu4nNZAlKfJ8QX2zMgNjHlzGV6sWjmMXtzkcDfrZ/L9RL2Eesy2FZJZY7iLzSNHJiGbbSg5zEfk+Yp84mb4+JBzHsVmU16AnSL3+1lot1HUN3/PAHEICmnZBVVa63Jhidjpbeqj6HtYvDVfen5XjqyqraOM4VPZ37e91oZSElBWCmBCKR7cP0e63SClLuz8YGzQzBxhz4XFuMQvmGQGQQ4aU4I6zsg7N99K8JvT89HRKfq83DqCkwHC4g96wR3ZGmkpgxTNgxh8rSFsDWuE+h8y1HytjpBbEGUYHIwtEMeLXgU9goTzJIRMKdpsaqwY9z7SWsscZHB2occ5QNnATZv5TFc7REnOUWZp1YQJFc5V5ZXuGD7zqmkBSDkPcifAv//mvIc3mGPS36DzQFZVSV/vCOMS91+5Zy6d2J0ZRVZavrZTCKElQ1jp7V9SnLx1pDQjaYYi8KlFJASAAcx1kBfWqx0cTHNw4wMbOUCOpSdS9Kkotf0gHIvcY3nz1s9h54msf/FwPuB7yUDSpaQ3XAAAqaaMZQJd+jEyUPqnzRYbx4Zj0O/0AjLkYrPWpLKMk/Mi35bFBq4WAc7TDEKWUmGcZZm6GwiXQiXFxr0F6fdkstcosi9MZju4cWWFnKRWOjm7DdRl8nw5C5nLN6Wsau8JuoGYjN8K/BqJfpAWuvO0qXvo3L+Hg5iG4z9HqthD3YpRFhbVhHz5naAchWkGAC70+Uq0nOUlJ7DjQwIaDhAjtlZAW5BF3IutF6Dgk32YUb47vnkBKgU5nDUpRls05HWAmIzXovRXOm+65JbOMuGq6BzG8uK6BCjkp+ic59k25ox3akk2x0UMpBFpBgPU2BR/DTgeDVgt5VVmYe11TeTOvKipBaaSYqxvrpsTONZfMkMlPd0+QF4lWJangumaT0J53aok4vu+qVy186rq2CGIjPRW2QizGC2xc3sDw0jreeOFN7L6+i0uPX8LGxgAe52gxgn3nRakFAIiGEIXU41hvt8GZi3GS4myxQMUZipKcXgLfs/dXClIJMUCc6f4ZDm4eYDGZw3UZ0nSG6fQUQpS0sfkRWq0e4riz0t92QEGf0IFjbaJfLcIvagqiTK8ozxM8/ujjUELh7iv3sPPkDqJ2CO572NhcQ5LlllBvhLs9fSh0NerUuMxLpSzYhrnu8hDTYBRzMN/Y38fp2YTWmVQ4vH2Ivdf3MD2bwHEcdAZdXHn6MrraQNyMD4GKlrqnSlE/cTmXBVyXtIA3Nq5ACYn1i+sYHYzw5mduYDFJsPXIFrZ1T67X65Acm26PIAa6UUgVAM/TpG2XWhuadtEJQ3DmQqoa0zTFLMso0JsscOMzb2L3tV1MJidwXY4n3vVOeIGHzSubiNqRRbD75zJgB0tMVHPOmszRBLxe4CGZJKiKCm9+5k1cfftV8IvkbKLqeoUyA92OMgGNzCn4MdUDJSQcDT45X70zLjfmoDDrIVksbLXLAP0Mql1WAnm2uK/9IkUFVUt4XojAj9DqtrB3+xY8P8B2bwMHB28i0tQYrjzUNQUAgwsD5PMM+2/u4e4rd6G++jn0NnoYtyP0Oy0IqZAVJeKQgpOT2RyF7gG2ggCVFHDgIC1KlGWFWZKRkfpruzi+e4zju8fob/Ztr9YLfNtDNMmZyxnSaQLHYdi/cfDgfeQB18OVT5WyCv9GGsrR/BdRLQfHxapAc2t7gLP9U20cyeF7lAmaaK2UEvMk1coFtPiEkiumpfS0ZBESeB5Bp1ltdfzyNLfGt3maQcoK8/lIN4V9e2gw7j1QMd2ULMFru7GFrRDpLEGr30bcjZBMU8SdmH7HgnhHcTcizy7tgN0OCPLPXdduOACoDKCzrlLQYet5HKrRB6jyCsLVNkTzFNOTGfE/5yRy4PsByhIodT+QMgxJqFu9sfFGQ9lxluoT89Fc6y0Sn8sLPJR5gagbQY7pHY7TMdK5LgHqMqfDXIiWQC8iOaZClzCo/6RteRhxCqdpSgeeti+qtaRXXddWlNcc9PkiQ5ouUFWl7osKMEYWYEoJeF6Iupb2OatqWXIFYCsWD5KmqoqK6DoN5JnLGLavbeHOy3cxPZ2SmkYYUBYcxwg8D0VVIdf2VZGmI1jFHKXgOg4qXYLyQt/C/JVGaCpNx1mMFxgfjpHNMwhRoixzzOdjlGUGzj0EQbyS0TcpTnVdU4CmloLnBtFJ78IoSenpyn0wRi4uZwdnmBxPAPQRdRwKwloxEaBLaiWYexZKQdU1pM4kHZ2hqrqGxzlYo6+tDC1D0xjORlOk0wSL8RxlUeH2525jPp2Acx+DzTWypOq1bSl5+WwGEGXQxVz3EZUum9L/t1o9jM72MT2d4sJjF+FHPoq0wNHtQysBWUlJ/WDDe3WoNygkoX6TorDC3p0wQDcKcTZfIKsqBDX1FadZinmaI5kuMDocY//GAWazMaKoi956H61ey2rnmvlse3TN5zIOIGbM9MFSu7C8SUOQdxzHHnzz0RzrF9e1lFu5OpcdLTiig3umAUTwYRGcppePCqhZvRxDqeCHvqUQmXlkNE6NqbN1YNHUoLx4sFJPEMSkeMU1JzeIEcc9jMeHeOqp90Hqw4jaQNIiiXnggQceJscT3PzcLVx89CLiXoxqs7IC6MksQdyJ6b7KyoL1wlaIZJoQk0HP3SItcOflO5iP5tatxRyIBkUrhNI2ZFQ+rUqBtbXtFVDjv+t6aKCNEZNueopJIS3R2PREzEBIIdAd9rB/4wCnu1QDRieG8JdNb4AOpd6ghbysEMQeSiH14tWoJU35KHQ/qgZZLqXTxIrsLsYLJPMZARly2nCDIAbT6vZk1BnoCLUJP11SS5RcZiDGB6xWtbVeavWI9zM9pUzr4OYhirSA4wCdtS76cQyhFALOEfs+kqLQJRsqk4wT2kykIOANGXWSFqJB4YpKYrQ/QpEVOD06QFnmaLV6cEBgBM59XWpc+tIZi6XzQ1/XNcI40PJngbWBavVI/suH5ipqh4psllpHCEL41gT31v2apCgQeByh56OoKIMQSqHMBMYnE+pnaKcLQ/Mw/ymhsJgusBgvMJ9OUFU5jGsCAIugNZslYCJv3J8x6l62yQ7NfKMxXCJk7VwUEnG3hY3LGzjdPSVdxHUHke/bvlIB2I1PKAVZK6RlaUuKRUWiyY7ufVecNuZKCJRavKLMSirBnU6xmI8hZGVd4oMgBuc+XJdb2SlCXzarFrUFrsB16HB0iXZgIn6HMShBgC1WMevbF4Q+xocjQiCGPpUM9cEhpbQlM3MIGpsogIIbv9Fn5dpKSiqFqgGqmaRUJh0djpBME7LEmk3RW1tD1CHZriAOLEf0/EUHmLJlUwArZHDPo0B5d+919AdbVnIOICWWe6/cxeaVTaJ16K8XaUHVJsdBaqoXqBH7ARwHKKsKke+jEAKyViirCllV4eR0gnSWkkj83WMsZlN0uwNylWhHBA5pR+A+VTtMVez+EiNtyJUgIW+liCLCwFb2RYCca0RVI5tT9ezyU5fh6TK3LIU9qJjHLbc01D6S1Gd2bSBmUNfpPIXLlwGc4wA88Cw/1RzE2Ty1Nn2EnqZqXp4nKMtMtzHkynPFnbb2YxUIWyFEUaHd7eHg4CY8L0B/bWg9IE2Z1rQY7NzqxDi6dUR9NLrmAAAgAElEQVRmCNcvIpunJMGmK4lpO9WuIIRJkUJaEX/HcazebJEWGB2M0OrG6G/2bVBseJZG4MK2v7Sc5/r2puU7fjHXw2WKgLXB4Ywv5ahcdymLZA5GjdCqtX5jd72LoztHpKzOGWQcgte1zQhd19GK+wqzLINQEqHngzlLnmFVlBALCXRrJDPKLKenM5RZgcU0wfR4grKkHqKUAlHUpv6UviffD+H7PoS434pIabgwqd0vRWSDOAD3mAVStHptW3aQQtqDsa5rdNa6tnTlcYZ2GKKua5zN5raUUmQFRhqVJyuBUIswGy6bEUReTBeYjk9RFCkcUNnXcUkiizGOsswRhi1w7lGErdVfzvdKpVRWocY4hnTXu0hmKdYBLCYJlKwxO5uRVBYjzzgCBeRWl9SPfGRaoSiIyJ08KQrNR6IodHIyRVWU1jyZ6QO4yApafAn5Z05Gp5CygrGjEToLFGIJ/Tf9RTM25y8HaCgXuSufMRuX4zgoshx+4GExTWyvY//mPk73yIXB7VOfqdSIRPN9PiNR+bQoUFQVQn/JRQSIAG2cBUrtTDA9mSKbZ0QJOpkiLxKUZYGyLMA59bIBIAwNnWB5eNvncpYiCCZbtJlJQ9pMKVKAGh2MqOTOHQv4MT29bLMPn3NkBQlOcI/MhE2wUOissBICHluqF0mlliXVusYkTZGVJdlILRKMDkeYHE8wOaYS6mBjiLgbWz5e3KGDxI/OlRkdan/UtUJRpPA8374Hw13cvnQFv/Nbv448T9DqtixS2byjvZt3cHTrUPf7qQ9e5iTLVuv5DVAJkXGGVicmWH9AIiJlJaywx/hwhPl4gZO7x9i/uY/hhS101jo2E+ttUPnX6Cl7eoNuCm3QtSTvS0F9POj2AYqlipOZo4bHfbZ/ClkJeB61FVgjizTzMGxRO8ZjDN0oAmcuimqpN1tJCamdZozU4bK0Kq2YeTJJkOiAN0/ypbhEZgCIpQ5SlvsH4wytXox0RqXLzloHeVqgO+xi8cIY3e6QnkuXcBlcK1DPOLkMVQVp6SqlMB/P8PoLCda2B2j12jaYI+Utzzp4ZIsMUDUK67ErkCUphCjR6fUR91p0rmglHgCW7mYOR6UFJ6RQxGv9AiCo89cfCmhjBs3Uyo1Mj4mGLGRZUd+PewztfgvZIsO913YhdCRsIslMk+HTsqRJK4SVF2IeyQSVWUmABUWC3XmSo1aKNp80p81oMkdVlWDMA2OE4CJwD5WshCjAvBh5nt4X7XGPrUCtg8ggYX2biRQZEXGN60Z32KWDuKhwfPcE8/ECvWEXcY/cP5Igg+s61gTWAH+SSWLRg/40xeRkYm1qqqJEWVSYjk8xn4/R6QwoE4QClEY+1rD9QykFWnEPaTJFreQKStNxHIiiQqRNaaVGxwZxYOkqflQhKAiybA407nMspgu4LrOlTi/w0Bm0NZKWvNyMsafpS0xPpxYRqQRRbTIdmZIljsB8OkGRJ1a2TSkyHl5GuQ6UMiRhAwtnK+4fZv69FSbAPntZwfN8As5oknHYIouik3sn5I/XKItWWt7Lj+jAH81JSECUFaI4RFFWVqw511wygEANySTB9GRiKxbT8RnKstBlYa4DGN9SLFyXo6oMZeXcg+gMUcqljF1dG5NeKt9x7uHg9i5OT3fx/tb7bU+ce1yTzU/R3+pbOglq2kQqKa2Hovm5AFBKAn0JXYos9aZSCYHT+RxJUVBmOEtxuneK0f6I3ks7RH+zr1VlyNsvbEe2L706ZgpL66hlwEOZIolRbFzewL17r+D69edsRYpxRkpaQmL78g52X99Fnhbob1KJU0mFMivg6/3EWCvVWshjyfvUXDwNODndPcXx3WOcHBzAdRnWLjxKqOVS6LKcp0vwulKh31l5PkjTyjDnJqClQpjSnQHoGZHwMq+QJwWpZTGGwPdQtSpUGiTiugQcy5wSXPdCPcaRlxUKQQdiURIOwQuWPpCqrpFmS4GOsqi0JVyCQotlCCExn5+hKMhCTSmBMGytBNVk7ZcjXSQkwzcl9ZidJ3aQ5wn6/U273jknKl3Ujogb63E4rq66VFKDYCpUZYG9W3cRRRR8GMClERCRokJeEEvA9J2prSLBuYdLwyto99twmWtVjChg0UkDcwEldQLREChxV5OFL3Q93KHYGHxZCXuInK+xA8SliawLRqmFYNsQlcDdl++gzEkF3fMpWjAHYaWRplJKK9ANUInAKKaYXlG2yDE9ndrBdRwHUdSB6y4b1JxzQjRyBteNyHHdj+7PqLRf4vDSEG98+nW8+OJv44/96Q9YNGNLZ0lVTiWSwdZAG2wKhFoKqkgL/M4//R3EnRZtSBrFaPQziQKh/9TPBwBpOoOUle0VFkWKXm8TG8MdlFWOIOhQuUMJ6osyDs59KCWxWEyQFwla7T6SxWR1EBzH+tQ5jgPOqfzCPOq3+VGANc3hUUpRU5q5SKepLZMn8wUmozPs395FFLXR6rXQWe/oiH/ZqDcm07ISKMvSHm55TtxQQ6HwvEDzDqGffY6iyDTAqLmJUp8RAOr6waoUhpJihdNL0heVFW1q8D0MOjEp1bRDZIscDnMxvDTE7HSKW5+7heO7x7j42AWE7ciS9c2maTR9lRZM5z4nL0shkS8yCE1WN2TryRnptgpZ2Xui/zhclw5Gzwt09mPUXR6A+NM9RAKeUPDDGEdRpNi5fhXd9S7+9f/2vyNNpnj7Oz9gzYopsCFRi93X9yCFQne9S4pGupRmFEi47jXd1fOe1oBcStjpak9VEu9wdjrF+GiC0f6ZRYC2B20rLM85t5KCTV/C5VWvZPM03i5acQfcI5pCMk1QZgUee+zdqGtl1ZG4RyVF06PMkxz3Xr2HW5+/Cc49tHot4iQyB65GZ1ZFhXSWamoKszQE8laVyLIF0nSGXm+Ia08/biXRCi2KYFGt+n3Ukt6TrJz75OtqwGZMLncBqUEsrrQKVIy7S7EHPc/Wtrs4uHWAqqzQGbTJ93CtZwOQPCnAPAG3Qy2ZvKzg+ERlqGsCdyml4HmEujWVtrQokU4J9VzlJWajOfZvHJAOsTYPSJIJqqqA6/LlgQhnZdyMgIoNnLRm9Bv/9g18zZ/+z7F34y7G40NyD+rEYLX2bG2FWg1IWPRrVVR6HkbI5pQsnB7vW4lKKQXKcmnkLQRVVwwozaxzof0haV9YatzSdufc93eT1b8V2+BB1x/OJUPfjMsoGrIkY260L2sMtgY42zuz1h3c56SyoX0ED27soz3oIGqHVvu0zAobHQsNGzZO1kpILKbJ0v5Ji8uenZHaBOfUL6QNaNnI53y5QFfLcKvoUwBY2x7ACzz8xm/8Cra3H7VKOeZgNKRuc8C5lYu4QwAcw6X0PA/pPMFiMkMQa1FcDeMWpaCGdp6gLHOKkl2GJJ0hCCJUVaEHU2+kjIEpbpVqGDhqKAssCIIYUh7i+PgOdnaeRFnmEGJ1wRpot5FVc52lhFity5eMuWh1Y9s3MZuay5iGW3MsFiPMZjnm8zOMT2LE7Q65QciaBBOqHEkyg1LC8s+a79vzfL0AFRwsXQWEKDXlgqGu5YrTgLkou7pfkcIEPs2xLbMSaxfXwDnHwY19nBzv4sN/5kNWIAKgKkAQBxBadP747gmiTmSrHkYqENB98QY03oAVzIZLByMd/qPRoQ0GPI88MI2gOWMMHveprOYyG0i6zvlsCnrjXmZTALQIOVEU4m6MT3/6N/C+934UyXxGBxkXtgwlKoG4G+Pw1iFpELcj+CG1EaqcUNxB6Fs5MzjOUsjcPKvOdKqywt4be5idzVBkOVyXYefyBoHPtFKS47rUe/OIsxnEge5ZPXgsHcdFGLTAPd/2sGqlUFU5/ChAt7OOW7c/R1mHoEMNDrnYGEEPUrZyMRqRyTNhBaQNGjNtUi1EdZ+knKt78evDS9i6cpGyWo9hPpqj1WvZ0mtzg6312Ahxvzefo59LQWnqmAOX0eFp5qUjl3uQNVLQ+2W+yPQ9cFRc2n93tJxl4HtwHFg0u/m30PNQOg61XqSCx5mteMxHBNJLZxnSWUJZYpGiKFKqUKilYlIYkjRaWWYrz6aU1MpRAoBnD6/5fAR5S+DRZx7H7ZduYnw0sZ6VNIcNWHF5GDXBYXriU7m5MUWa8o5vRQ0x7Yvz6375XlYzXcd14T5ElggAzlvyUh70Ycc5AXDnoX7Df7jX1bquN4AvuecC9LN9qT4X8CU3Zl+qzwX80Vz8j+36Un0uoPFsX+h6qENx5Rup1vVpAHt1XX/9H+qH/Ad4fQk/120AcwASgKjr+vn/f+/o38/1R8/1H9/1pfpsf/RcXxrXQx2KrXanHgw34AUe+fnlVALcuXoFAGxZgkoUy7qv+RpgiK7Okr+nIePmMw6oRm/+bF5NdY7m1x70uZr+gkqjCgn9VWveHHB6dIhkPnMAwPOCur82hB8GWMymKIsccIBLV6/CbTyLea7mn+fvzaEPrtyPe+5zb3WZsiYe8Ezm3dX6c0JKSA12qjQlRkkFOMC9mzdO67re6PR69frWNuq6xt7tW7hw5So4X6qYNMtDbnOMzL81qSoNgJXxjyzEkk7QtMyxz9/4HhJ+aIyPcZ3XnzNfE/pZarWEnFelodgUpybSa3e69drmFvbv3sb2zmUwzi1y03WWVmHNPomZe+xc+Uudm0+Gd+g4S5/M5rugEunSp828KwP+sbY8DSAL6fcK+3dlPqNqzGdjlFq1u93p1msbm9i/dwdbly5bRRBjzWSeAYCdg+Zr5+ejXUf67+ZZVOO+mvPZzCfzfc33Y4AqdQ27hqhPWEPoMqGSy+dWUqIoUuR5clrX9Ubc7tTrm5uoVY3D3XvY2tmB55Myi+u69hnOrzVzj+Y+7BqD7uW9xXpq3v/55zFfs+/p3LtSWM5nWdcWbGNKjlVZ4XD3jp2LjPE6jrtIsxmGmxesAAjXPEHzLMx1rEgJzdHlmJr7cc7dH/R8bO4hppzbRJqtjL3+t+Zzm30DoHlg5oA0+yJoTEfHR5hPpw5A+31/bYij/V1s7VwmdLrer13XXWnFMDNejbVm7/Utxqg+d484N7bm+R80r1fOAP0zjFuR+ZpxTTLI093bN+2YfaHroXqK/bUhvusHPomgy/APf+Hn8G3f+Z3457/6q/i5v/f3AJByeej7cB1SJZBarNneqH5AMqulnxl6PpGM9UZtrGvkuVqxqpU9dM3fhVKohIBQEq7jQtUKUtGGVkmJRZ7j3ugMdQ2MJzOURYVakhbmf//932t/dhi28C3/xfciaDP8+q/+z/jQn/w6fPp3/y988u/+HXSiCIEWDPY4RycM7H172nTX6JkCQOBxTaEgo1jmutanTupBa/4b8cBIvcEECrU+zAFYrmbAm3B5iXle4Gw+xzTLcHY6oU1IC/p+z7d+wx0AWNvYwg///C9CyRo//B1/AT/wN38G/eEaOq0Yoech8DiY41oLocDzwFwH3GV6/NSK47pRBQHIOWOR50gK6r1N0xSyVvAYR+R5OvCRYI5rP2OuLF/ST5QWhDCKLae7pyjzAnlC0mFKSJweHeHll38X9+69Yks5a5tb+Cs/+wv4kY9/O77vJ34KnV4PPPDQ6bYQ+h4CTtxQByTWbsaMuQ56EYGmzIKVSlnx60oIpGVpBdAXea4DEIVA96cDzlEIgbwqIYVCHBKYqRICeUFIaQNKMFwsWQmc7J5Aai/OdJ5BFBWkVPhn/+R/su9msLGJv/Q3fhaf/O7vxHd/4sfRW1+DF3jor3WtyXPk0/MYmbZWEMDn3K6L5vpwHUBIkmWr9POY8TRrtilob/QlzQZTaJswI5tljAAMH6zKK+y/uYc8LSw6UZSkMHPnzkv4zGd+8w4A9Afr+J5P/BSUUvipH/yL+N4f+xsYbAxxYXuIOPDtnDP7A9fiHh5jVnMVwIo4fHO9ZNow2NiduY5reZbmeczPMeNuvscEQIaGIqTEJE1RaSm76WROLhMasFNkBf7Kf/2f2bnocR/PPffV+Mxn/09823d8H+JWG57PsXVt20qQRb6PXkQ92ND34Wv/xkBL5z0ICGL2DKMoJJWy+yQ/13c7f3BIG6QtD5Wiot7qPM9QVAKzLMM817KYmlr1k9/33fbn9NeG+K4f/CR+/pPfj+/+xI9j/cImWt0WOnGI2A/sPKzrGu0wJJnLxv53/r6a90fjp/EhDUcYy6tt7I/NsReSeLNmLJvC9ZUQGCUJ8qpEUQmkSYbFNLEUj+//C9/yRZWCH9o6qsxL/JN/8Cv4pm//DhRas1IqZTUFzaH2oEMRgNaxI+Naj3O7sD3GoGplRWENQXUZLS7hxq4lrZtolxQ3pCJ35koKcJchqyrNpZNWC5Aa3as+fIxxMMbwf/yvv4qPfO03I09JOq4oK3vgmYEwpHyTMbVDQsQxfYhw/RkAK8GA/V2aKM416Z2zpYEv08/AtIKIqhWSoqKDUU8Gel7HHkh5pZ0bCm3rsgJUIUAURXPAz/7lH4DjuvhP/8w346Pf+q0EHKgVeF3D5xxFVWkUG03YZpZl71FHM0JK9OMYvTjCNM3Qj2N7f2bRmmvY6UAohawskZaF3cziHrmpG8SZcR6ptOWW53NUALr9NWxuXsG9e6+cezZaTL/wib8Kx3Hwx7/+o/j6b/sYiorGn7JCQKoazHXs85mFZv7OGQN0sAIAMYjMTr6BIbjLrEIKcx14mmxu5nJSFHDgYJplNKYeJ2nArLBuIFKQk0OieaGOQ+IDIissElRPFuuI8bd//BNwXAd//Os+iq/52LdY8JOQUh+ClEUYF4t2GOq5YwJHojbaA9AlPcmmIW4z0zLz1uhxlo6DWG985iCJ2qENLo1lkRf6yFNtNqw5YkEU4NKl6/jMZ37T/vyqKK3DxS/+6I/AZQ4++rGP4U997GPg2oXB0ArMfgAs3w0zWrr6/pqbppFuM2vOfDbQertSNdegA8ABl0SzMILoTb3lyPcxn81QSVKf8sMA2SKzurPNSyqJOO7CcRz847//C0Bd4z0f+gi++vI3E1dQu2EUQsDnBBwUDh3q8VsciHYdOQ6Y5o8aAEqzAtHMxJoBrMmwCJG6RP5mZYnIDzDL8uXeyl24SquUNakljfv6Oz/51+G4Lj7y0Y/iG/7cn13JysweyV3XHnDNdUbTelnls4c7HD3ewo5RjXrl+5pVHdkIepoBO9NVDqFIWLyoKgp05VJYvxL3q5i91fXQ5P03Xv4s4nYHO1ev4dabr5KKipKQNYevX6LPGVzHhctocca+j7QstRI6s4clLdrlIJgot3kYnk+/Db/KfJ8xDTW2JlIpCJ0u52UJ7jIUVWHLW47j0KbUeC7HcXDvzmuI4ja2LlzGnRuvaXPc0qLQHIcUQAohEHoeGFbv3SxWE2kaU9Pm5Zhsq67B9IRtouI8xuyzeIyhEMShK6WE0u4TpmyRFAUWBZFwjbWW4zpQ5WpZwcDB//JP/y3019eRpQl+7od+EJceeQTPvfe9dtNomq2asqjf4JlJpfSEXS2FOKD79jlv/N7a/r9ZAMwsINcFc1xMAWsVppSCKmgxMY+Rlq5LpRiSMONotXorv7euSbnmB//mz6G3to7FYoqf/2s/hEeevI5nnn3O6igCJotn9EaqCoXeZMz4mMgazRIwlocm05J9RgrO5wylkPbgDT16J35ZotLBju9xi8o2JrhcO6q7jMq7jDNr9tocMwD4b3/kJ7C+sYk8T/BLP/4juPz4o3jHe55fWQtNjzkjjWgupct9VjGqVmCOS2vOfmZZQhVSe91JCTTmWWkCNb0Z1VhqzFY5bTSMueTjeE5yLwiWdj11TbQnxhg+/gN/HVeeuIYsW+AXP/HDuPbYY3j+fe/TmYC0QaGr/wzPbbDnq0hMPztlGQ5trnVt/860MIiZv+dtyMwB3Awg6HuVRZVXNQlNS8nvo6A5+v3/uY//JfTXhkgWM/zjX/l5XHvqSbzr/V+OSmfXZk/jLtNWXZTlnNda4Y0M1xzUjuNYl5n7WlKNw+b8ZTJGUw0RSsIDtyVU8/3MCl6sfr/jOPhv/uqP48LVHeRFgp//az+Ex556Es8895xtLTXLsrKubZZP477ammiOWfNwN+/833VJtXxOw6slKzC5UukAzLxcol+/2OsheYo17t16Ey9/5tP4of/qz0OKClma4se+/wfwIz/909aoU9XLEid36XDwuUn7Gbir+xS1sv2pZolE1QrMJf1FACsHB7CMTBzH0dHkcjILHQU3tQ8dtuQINSfS8rFq7N65gTde/ixuvv4SRFWhKDL88n/3k/iLn/wkKleQoolW/0gbP/tssUApBCLfQ+iRXqZsPIs5LE35EaDIpmiURJqlBjPAAFBUghTliwJptRTJznVZx/Q5rPHvfQeWvQn0h+RY0B0M8J6v+Aq89vnP413veR5+za05ciWlLTkClA3GAWxp15R66X3Xtkdi7t+UtrjLUApBGrWKSnBcy6EV+j/uukDoo9LCxYZ/aiI7K6pc13AZQxR17puOruugv74Oh7no9gd49o99EDdfeRXveI5wAHlVQRYF1totSKVIxkxKTNOU9Frr2m5AdV0j1wc/vTtHb4yrGyWNWW03K/N1IZelLTO1WGP+AToiNw4i1o38XOAEyggG6zRenX4f737/B3Dj5Vfwjvc8T6osYkkR8Tm36ialVt7hLtMHvbJyibQBSnuQKk3W55qUrpTCQhP7ha785BVVKfKi1PQkbvm4i+lCc3Y5HOZanU1jxSWFgrtit0U9nqgdYRAOoYREf20dz3/FV+Dlz30O73j+eZvZSUMXqCqgkc3XjQ3e7AF27WDZQ9ZOdgCw6m2q/83MVfNeKkntl1JUDXH02v7sShsnnyeEr87FZeDWGwzw1Luew72bb+DZD71fe2rmQB/ohCFyY68mBTxO7QbrPE8vSr+zZRvpfHYo6xpcl3xZ457M/ZvvAYBKSmvxxRwXpR5XAPZQk40SZvNi3EU3HgAAuv0Bnv/gh/DSH/wBLj36OERXWpecrCytObApeZ+vGNWorTUU13vf+X4jvXcaKxPYNgMdqUh60bj35BUlPiezOYRSpKetx9ZhrqaUkEDAF3s9NHn/T3ztN+EjX/fN6Kx1cHq2i3/xT38N3/tjP4akKLRUFIcj6SFctgQANO2gzEbk1ssbXe0ZNngoOhI2vYYHlQ2aB6LPTBTGIBwqx8I6tOsywzmZJtd18ex7vhIf+dpvhstd3H7jVXz6d/8lvv37ftD+XCEV0rxAVpaoygrpNNUeZYrIzL02hp0Otns9+LrEGvq+Bl3o3+uQk4TQ5U/mkoqP0JPW9H1yzUdirotuFKHUB4lZpIX+bJkVKIvKRq6Gd9i8lFJQuizihyHSxQKf+9Sn8C3f8R3gLkNaFlaf1Wz4lSBrK+4yLApuAxsA1EfThy/XpScDuhFSIvC4jdpq1BgtSGTY5xxpWWC6SO19eT45yRuN1GSWkn6iNiw2n6uVgu+tiks7DlAUpBjT6nWRpQle+rcv4GMf/057n6ZvZ2y9srK0LhAe58h838qbGW9AswBDbyktZhZnqd3DTdacFqV9frNYjd6o8YqrpVohe3s+t0a59VtsRFVZAk6NMIpR5Dle/swL+Mb/8tutK4wQEq1ujHanpX9no4yre55Gsq2oqkZ7ogaX0h4EdV3D9TzSAtX3LqREnuYQ7RjzWUKei3mJIi8RRAGUVEimCf2nOZDtfgt+5CMofOScFEbU+Q1Pr+GyyMkIWChIUeJzn/oUvu3jH8coWcBjHBudDgVheh5XeryCRsNDSAokTamNndt4z1czzBo2mUiNGkUlbKZkgtVCCEySxJZeXYf4hmYumrV8nn9p50lOcohFnuPGq5/Hn3rPn0ee5JgcT+w8LtuVLTMXQsBjHJXv274+oPu8rguu54bJ9syeZ35fqeed0geM2QfNnGr2XE/nc+RVha1eFwDtqz7nmOdL5Zv7sqm6RlWVKMsC3fUuRFXi85/+ND7y0W/C6HBkTZBnaQalFALfQ+h7tr1gWklmfGgPoQqLWVPmns2Y0cEHCCmW/6arb8tgYlk9SIoChRCYTufIkwKXdjZX3gHq++fCv+t6uEPRgbU6EmVlBVxNxpOWJVi6dL8wPntmQK25pJ7IJjOSSqGolocgc13bD+G2NLIEs5gNLCkKnM7n5KzhuJjnGQLu2UiaMxeb3S4O5RRylpKsWejDD/0V2R+lFNJZip62uml6Q4pS4GzvDPPRHIvpAskksZJWXuBbNQea6C6efPYJDFot9KIIsQYKtMPQgn8CzjHNUuQliRJ3whD/z8uvI5nQ4ZEtMhIl2DuDyxyE7Qie7+G9H3nW3i9zyaw4T8j3sBkoGNK5uVzXxWR0hr/9Yz+q36/CB77qq/DUs8/h5o1dTI7HpD7fb0NJhdnZTJOkaSNo91uIOjE6gzaiTgzj6ddtRWDOanDRzM7nSQrP97AYz+EyhsV4gaoocfOzN3WtnzRt/dAnVwOtwGHMXNv6fsbJCFIoBOHqoQgA6WKGX/6pnyBitxB47oMfRqe1hZd+/xUtQE5airejgHRXJwsSMHBJdKG30QP3yRrImLCuDbrgLsNEz1mmqw4GDJYUBc31LLfzo1Y1snmKhbYFYjojzFNSMEqmCUQpsHllk4yZIwI1CO2fdz7Dn5ye4h/80s8ANQmGP/WO53H700d44Tf+LlyXFJm6/QHiToSmwwb1vjw4rovOWgc7T+6Ac464F1s1GCO4IKW0iiXpPLOAoP0395DMUpzunqIqKuzvvYHtC4/htdd+H6+99il81/f+JKpS4PJTl9F97CKkkNh7Yw9hK0R3ncxnX/o3L2lpvlV5etd1kcyn+Ie/9DOkT6sUnv3Ah8HdPl75v19B0ApxsNbBYpLACz2EcQg/9HD18gULDDPVmFC7mABYqTIVwri4MORaMSrTht5mcx0nibVzM6CeaZIinSXWjzWIA2xe3vD7mVoAACAASURBVLT3TULXVMkoZL7yXKTlmuAf/f2/BQcOVC3x9i/7cgwHO3jxt1/EYrxAqxvj5N4J9t7YQ2fQJmkyn2OwvYb+Rh/DnSHWtwbY6vXQDkO7joyNl91fdSANUCVnnmU4OKL96fjuMUQp0NvoUqbuuuA+hxeSqtbp7imyeYorb7uKR99xjbJEnYG5rvtAKbTJ2Qj/y6/8Dzrjknj3+z8EMfNw9+W76Kx10O63MTubYf/NfR3QcnDOsHZxHVE7xPrFIYbbaxi0WujH8UrP2NXry5RBCx2cmQz55VdvIZkmkILW0Ox0hla/ZaX4FuMF3vHhZ7CxtY6t4RrmrQwHBydWVrPVa2kVouV+9sVcDw20MfJUopK4/rZ34Ms+8H76QYweLikKreThgptogNX2Jai6tgLES6i10mYA1I9pohwr/ZmsXpY28qrEPC8wSRLMssxG7Xma48r2JpXNdImlFMLWyy1c2F1tbjsOTXoStWW48tiTeOzpZ1DXNfZv7CObZ9Z78PD2Adq9NoJWCD/w0NvoIZun4D4hEw/uHAJXt5GVJbpRhH6LxJ8NcCavSowWScNrkTZScxgWaYFsTnqojDGMjyYI4gCTBSH7lJS4cGGDMm6fo8wL6tVoGakHwZ8H65v40f/xl1FkBRbjBUaHI7z6+6/CZS5Odk9Inmr3dMVaJp2T3ikZ57oY7gyxtr32/9L2pkGa3Pd93+fpu/vp55xn7nMXe2FxgyR4iJRIkaIlSqYly5ZsS3Zs2anYKcVx8sJOUkpScVypSmJXYsdH2a5ybCeqSD5iUbZcMiMJkgyCIEEQBAhgsQd2d2Z27mee++mn786LX3fPDCDZwgt3Faq2CjPzPN39//9/1/co/Rajdl3E0vOqqBAYNiwjt08aE4VxaTpbuBH0uoeoqk692SYKIjZvbmDlyiXF92sttFjYWKC91GLn3W3q7YYor7zv6iwt89/+H3+HJEnF5DbXwdU0jdZiS5zLlQoP3npYIiMHxwN5ZklEtVZHN3WuffRaaacF5Pd11oLMMnH7VlSFyUD0UMe9sbi0jD38yUwMdntjUXPJRdgNyxCZMkMnCkK6eyeiqZnL/4FIE54fcWXA3MIif+l/+eulzu9kMOHJTz8BgGtaLDeb3N4/4OWvvEwUREz6krD5/jSH8CcsLK8ClK4VzYUmlmOiNN3cgFug6mEuO3h4/4BHdx6xsLHA4KhPFERUm1WuNp/FG07RNINGYx5FU+nvHPP5n/5+xn1xPBkc9TFyh47Oaic/iOJSxeX81Wx3ShTquDdm0p9w+9XbpElSJpehLwej03DQDZ29pX3cRpX2yhwLnRZ128a1rLK7UZwfmqKU1XycBkT5bNyPIrrjMWNvRhxGHNwXQfFKpcLpfpc0zeQZDqbYrs3c6hyaJkmnU3cwbKNU2JL39cH7siyXn/nzP4dh6ii5W8P8xgJm1SJLU649d5XFRoOdky4319fY7/cZeTN++W/9Mie7J3T3TmgttZne3GRlYY6GY5etxixvc6d5R+Z0PEapVBj7Po/u7fHo9iNM28CuOaxcWeHatU1e+a3XKXPWNKN/2Ofmp27yxJUttjodgiiiN53ynbv3URSFcBZcaHcXa7HeaPOzP/c/MTodsbC5SH2uzu1v3mZpa5GN6+u0XZe94y7dva4UOZHoIU9u7eBPfZyaQ3u5zeOfuEFnoc1Kq0mFs8JIU5SyyzQLQ8a+jx9FeNMZJ49OAJhfmydNEm59/RatpRamY2JYBnt39/jP/sIfo+kImrzAavhRxItvvsWjO49YfmyFOIr/w80UszQrVdDTNC2j79gTJ2pv7GE6Jn4tYqCqzLlu6c5elNKVfJ5WoNrgrITOshzunVeGaZaVGUQYC4TYC0N5eOMpo96Y2XiGZshMajqcCmrUC0Rw3DHLTLrUas0PvvOho1JB/NLOZd1RELJza4fByUACQw4CsatOaSmVJCnToZc7PYsm37g/wXKH1FoumqrKvSuF3YsE/tFsJnOgIGQ29krAApDLI6V0VjtyqKvijxbntjKT/oRjvS/q+qYhMPEwRquoRO+jPhSnbSE5NRt5TIdT/uBP/AAL9TpHoyGvv32P2WRWVgaT4YRgqjDqD6jWHeZWO+imjmZojHtjeoc9DFOXA2pjQQ7+RDQew1koB26ccnrQ4/jhkThk7z3EsqqYpsP1555iOphy6elL9A5O+eIf/hxBHPPWN24x6U+Io5hhd1hK++m6CJEX4tvvv+JYqB2T/oRgFnD56cui96oqzDcbrLRajE5HZSVUqVQYD0UjNg7F3f3gvX0aC01UTRy7m/MNrJp9weU+8CTZmw7ELmncG6PpGsc7x3QfdfG8MW69gVN3mM1C7LrD4uYi09GU9lKbSX/M4cMjvPGMhY0FrKpF/6iPonwQfZgkKfghSSJgr3FvzN3X7vGF3/dJnt3YKGkYX+1/lSgI86pALV1TPG+MqmtUG1VM28R0zFKztdp0ZcaeI0iTJBHAj6rQWGjyp//sj/PNW3d5/dde5/DhIYPeMeNxjyDwuHLleW6//l02r13l9z31NFmW8Y333uPFX/gNTNsimPkcbO/R6szRXp7j0Z1HF99Vnth4Y49qvYo/mfH09z1VarS2ay53bz/k7a+9w+B4wPHeAWmaUGvITKs532T12iqXntzCciwuzc/ns8X8XMk/x48ixrMZ0yAgzTJ6ozGv/9rrGKbOeDBh/94e1Xq1rNzF2UbjSz/zQ9g5oGoaBLz0K68AsLAxT5wj138noXOoXPBoLVxvDt7bx3JFt/O9199D1TUm/Qk/9g/+e5YaDR6cnNBZ6+DUHEI/EFnMWUj6XIq1voJqnM2tgZJSMwtD/CDkeOeYowdHzC3P0V5pM+qOqLVcHltc5H/7lZeoNZosbCzgNqsc3D/gv/uLfxqlAlEi6NrFRgNL1/naG2/jjWfU2jUuZmj52RmnBLOQoweH4hM6mXH/uw+kdf6YhZ4nf1Qq+JNZuc+yJGXz5gaNhSZrq4sEcczuaY/lZvMMKZu3g6MkYZa7foyGE073Tst9Mt9pUu/Ueefld+junWA5NtVmlQf332TOdfM5tIAvZ2HIaw8fsnt7l+7eKd29U1avrZbf6/dyfeigWGgjGpZJEiXMxp6Iv0axBCNd4yQ6RtU1nJqNqkv53qy5NB2n5L8FloWhaRcQYrl1HLMwQqnEhEnCLAyY+AGj2YzDvZOSAzabiKZfmmT0j/qomoqqq8yvz4sZciyQ8YK4KW4OIupr6MaFqChFpKC7ztMD3FaN+lwd0zKwXJs0SWgttnJCaELoRwyO+hRFqFao6qeigWitGiR5G9k2dEYzv8yIZn5A/6DPZDAmSyn9xADclsvccptq0xU0pqLg1hzhY2qtXPk/JU2C8mUXWZ6mX0SBgmjRemOPkzyb+2s/9/eIgojnPv8cCxsLtBZbvPHiG+imXrY50zRl1BuydHmZ5z7/HN1HXQ4fHoqFlmOW+qBF4I7SnJfniwhwo9PgP/kTP8or9+7xD//Hf4xhGPi+x4u/8ku8++4r/NGf/kscH+zzx//Mj7LYaPD6b7/Bw7t30DSN3rGNphl43hBdt9CtNZya877VmHvY5YLccRhTURRuf+tO6WzRWGjyxMcfp7sn5rvFLGjmjXBrLW584nGuv3CdO6/eEdStF6Cv6HT3T1m9soKaJ1BpnBJM81lYFHOyc0xzscW1j15D1VX27+8CoOf2Uv2TLrWWi9ty6R+LTVghzhwGEb39UzRDx5/6v8MBS0k1UVW5D0VVeOkrL/Iv/9Ev8KWf/sNs3tyUgyT3rStm5ONxD4DDw/sA/Md/8afY6/e4/8Z9oXKEMaahE+fw+7RSIc6r5ygXQP//fvtbODWndEFRFI1WaxnbFsrB+uXL7D/Y5TfeeYeVVovvfvs2WZbkAt8VwnBG76TLxs3NsvKWtyWAozgX/C/MqA8fHJGmKUfbR5i2ie/5uC2X5mKT2XiR4clQEoPBgPu3DjEdU/akbZIkKVeWFgFK4EWlUiFKpB03iyKGgzGne6dcfvoS65dXGQ7H/NYv/hZpmuGNZzRMA900mPSP+NIzz3A8GvHGzg63vnOX5kKD6dCjfzRgMphg12wWqgtn1l75lSQRh4cP+Ij1MeE/jmdEue/r2rU1hicD3JZLOAt5+9vf4n/+Wz9PZ22ewfGA7qNuKaqepcJhfeJ7nkBVFEb+jKYjnaa4mK1qGlGccPDeQe48E/Hw7Ye8+41bdI+OuPGRJ6i6Dq1OBzdfg2QZ+zsPS3Di+atTE+eb6fBYuhzvQ4sW2tXFGi66OW98699yunfK9Aeep9qoEvoRhqWLkbJSoT5XZ+3aGl/+oc+QZRkNR7jRx6MRdw4PWW420HNTASB3AFHpRxH9oz7HO8eEd0Kmw6nYZ9UdWktt8XftiEXfwuKmgLI4A1yCjG7GvTGGqZeWfK2l9gf22e92faigWEJ4VYU0TpmOpqXv1bg3lgeZil2K23AZnAzKfm6t6YoSfaNK1bawDYOFuhCSZ6GgH8Pc/aKoJr1AQCCzMGQynHKye1LaSHljj+lgShzlSuyqSq1dKytHTT8T9BXXjbMh9Pt753LARGVgSaIkb0mq2K4lorI55LxSye2C8uouDCL8yYzCbV6IsAnhLMSqWmzMzVE7NyMYejPCKGZ8OmbcGxPMpC1XgDHiMC6tZcS6Ssd0ZDZr5q/LsS1Oj/pEectYUVVsQDP0kmQNchCpmkLoS+BoLbYIZyFr19eYDqY888kn+PLzz9OfTvn6L39dZgQtl0l/QrgdMBqfsvvuLps3N7j3+j0GxwMM2yirWbdZpVIBU9OJ/DBXww/p7pwyOh3x17d/gcHRAMet4k2mpGlKp7PKxsZNbn7qJj/5wo/zV/7Lv8HatTW8sUertch0OsQwbHHzUHWm0wG9gx6LW4sX3lmxt4sOQZZlZeA87/j+4J1tDEtcTXzPF+CNphOF4o85V68RzgL6xwPxeas7nOZBq2qaJLEkSGmaEXuBWOmMZ8yvz7N/d08CiGYyHvUY3D0E4PDoIZ43prHQpH/Q43TvlCRO8EYelQoMT3tUKiq6bmDX7A/cl25o2HWH7bceolsGtZbLc597gcHRgE989nm+/+ZNpkHA67/2emkNVWtHKLsKYTij2VzkytPXUSoV+kcDtt/ZKROtAvRm2iZxKMLm3tgjDmPiMJZ5oKYy6o7w/SmWVZXZm6bx4MF3+cE//mWG3REvfeVrOPUqk8EETTNzWoJKozHPZDJg3BtTn6tfuLFKTv2Q9rzH3HKbvbt7uC0XzdAYHPWZTfxcPD8qW/KbNzf45Jc/wdXrW1xfXmKne8qj0x7HO8c0qw5LzWa5t88DdLyZtIVPdk9QNJU3fvNNVE3FG8/on56gaTq9fRfdMhgPBryzt8e3b93l4VvbDLtDVq6sUG1WGffG5R49j4w+f3W7j1A0ldlEAqKiSoKu6Zq0US0DKhWWLy/z0z/6A2iKwrsHB2V3BMB2bf7Cn/1JNFWlVa3ytTt3iJKYmmWXVC3HMNh+ZxtN12gvtajP1RmcDFAUhU1vC1VTuP3tO7zwpRfQdFVAXUHE9RMZBxmaSlRQ1qKIsR9gVy3cZq0ERZ6/oiCis9ZhcDJEURWsqsX69XVaSy1ufuomz9+4Qt22GZ4MSj/PwJP/PvO9z3NzdZXRTBL3um0z8Dwm3oykXv+AAMHY9xmeDIn8SIA9YURzvlF2+4q5dbXhSIVfc7h/cszVxSVA4tOLb7/D7q2d0m+x4dp4Y68Ur/+9XB8uKCYpQQ6h9yczJoNxWYVkWcZs5DHsjggCD7vqygbM0Xa6qaMbOm7LxXZtFjbm2a1a2DUHTVc/QIgOg4j+QZ9gdubj1jvs0TvoMZ0OSvV7265Ra7TwvanYGM0CnJpNFMYoisL6jXUUTZGNp6loplhVVS50CaT1J75ken5AiEVU6EfMxjOmoymqquI0BHRiOibTwZRnP/cMwUwOy95hj/17e3hD8dRbu75G3baxcoWXJNWE+hCIL5/tWtTaNYKZtHuLVmCWZYRBhF2T+dakP2Hn1g6arjG3MofpmOiWLhD//gR/MpPDWVdJonNIvALBmyTs39tnYWOBJElY2Fhg5Ix49cXXefXF1wm8QHzldqWHHwSCEP2BP/LDHD444uVf+nppyxPOQgZHA0bdIQsbC5iajqXrxE7udhKnpeHs6f4pjU6d070u3e4jBv0jnGqD9fUbvPjPvsq3/s1ruE2XR3cekaZ5q7TWpNauC8dPEyrGoHtaetKVGygHPumGTnOxmbusSEtJjHcVskzuZeXyOtu33yPwxSlANywcp8Z0OOEX/+a/KOeJx9vHdPdO8UYeH/nss2iKimOZpT/f8c4xh/cP6B/16R/18b0Z82sL4hUXh8z8CYuLl7h09UmZ1+6e0JhvMO5PSOKE5mKTcBaWwSKYBWi6xsU5cAVFU+k+6qJbBq2FJid7XaaDKVEQ8rd/7u/zd1WNat1hb+chWs4HDYIZh4cPuHHjE3zxj/wB4jDmH/6Nf8rgZECt6bL91kNG3REf//SzbO8flSpCl57comqavPLrrzE8GYo5bLVK4AWMHnbx/WnZPm23l/hnf+cfcfOZj8lzPumes/gRcI+iiE3Xu99+kx/+mR+Dv312dhQtbCqV0qXErtn5KEDHqVcxLIO1a2tSBedWV/v39jm4/zLb13d4Y32eLM2kS5RmdPe6fPqLL3B9WQ7GWRhh6Tqvvn6LB289ZOOGSFBOhx5xI2Z8OiqNhA1LZ2FzEafmEAUhX/kXv4Gqa7QWm1QbDsPjAU6jSnNBgq5uStL5ftBGtdrgS3/oTzDpT6hUKtQ7jXLkcbrfZTbxObh/gO3azK/P8/f+r68A4DaqKGoF79RjMhBwyNfv3eN7b9xgv9/n9vYjPnrjKvM1oSPtDwa8vbPLMx97nO5wRDD1wQvIkpT+ybAMaIPjIa1F6dzYNYfQD3FbNX72z/1PrFxZ4fFPPM7gqE9FVXAb1Xzm3CDL5CwsV2Lereg+6mI5Js1FGUUMToZYVYt7r93l3mt3UXOxClXLShrSt3/rZabDKQv/9Z/CNgyOhkMmvs+tu9vEYYS1voauqpyMx6WKVMtxiBZbpads4Sm6d3cPVVMxHZOT3ROyNKXeaWCYOj//939Z3lfTlSJhGmC7FtWmiz/1qTaqqLrKbHIRHPXvuj50+5Qsk9nL7Az1qGriZVfs7TiO6HUPZfCPyCCZpoNhWrh18WFTlApmVQxKbdcmVBXazTq6qjKaegRTCTLeyGM2mZXtWUVRqFabuSfamHt3X+MLv/8neeOV20wmQ648cVN88yoQ5UCF1qKYoGq6VgJBzkfFSkVapsIjU1A0MauMAjE2Pj04xcjdv2+98g7DwTHjSZ80jVlbu87WzcdY3Fxk64kt+gdSwdl1W5CVypkijJaT8zVDo9qsQs7BkwA7kcrRC/CnPne+8w7VaoMkiVm9usbi5iKarsmQ+/IS7aU2iqHgNqu5r2OEqpklJw5gMpjy2le/zXOffw7btcXmauSx/c42wdRnMpgKJ265xWjUZTLpo1QUZv6EjfWbnOye0Ds4zbmQoCRZ2arTTZkl+lFE96SPaRnc2Fij/phkZP/0X/w6O7d2aHQadLsHDPpHJGmMYVjoukmlonBwcJ+bi8/T7x8ymfRx3RZpmpCma7gtV+aoqkKaarz15ssX1qLve+zf2+fSk1ulI7039ugd9Dg8eI8gmGGaNkkqLaNu9xFHRw8Iw4Bnnvks1VqdN1/6DqbplHPyKIxRkpT37rzJQv1P0ptOGE+9MiBvPbFJ4AUcPjwiinyGwy6np3vomkG/f8hgcIxpOti2y2w2QdcN0niJw919ut1HrKxcwalVUTVV1n/eArzAmc3nVt5oimmbZeZ9+PCwpHA4NTHxDcMZp6e90mx6rr3M/Oo8496YvTt70uq2Za7utmooqsLLv/lt6fAAWZJy+PAIVVXYv7snCMbjHRy7Rnt+EcepEUUBs9mEpaVL2LZLGEoVp5sGcRzQ7T6iUZ8Xk1zHRDENMd0+3uGdl98p7yvN6UKGqecHqByeo+6Q7n6X8bjHwtIaVtXCz42Bq3U50DVdxZpv0NsXlGV7uY2qiYdkHMZl0OhNpsRpwsQPuHxlncHx8AISeHA8kO+eCk/z7de/g2Z8qmxhZvnZVgDfZpMZFfXMIxIgIfmAn2K93eLH/uSX+Mo//lVJvjONGDEiP92WLoGqii1Z91EXf+qz8+42jz1zhSiIqLVrqLpK/7DPb/7SS4Q/ErN3/4Cj7SMArqyvoGsae70ee3f20J7YPLNZyivfSX+CYRtylvohR9vH0qHLDb7dVo1LT11iOpzw7jfepb3cprXYQtHUskM26U9EEq1Yi5zrupg6/mSGN/I4eniE2xJv1UoF9DRDNzT8qXheeiOP9twKD2/d5asvv0YURFhViyROGJ2OONk9YXF9gWvLy9zefiQgtdMRS5eXaLbzhHHqE+TG6/2jPrV2jXqnznQw5b27b3L9ieepd+rohsa4PxErP03Fz+PG+S6F7drc/uZtfq/Xh0afBrMQt1ljxow4EvDHdDhl2B0yHY+IIjHQ7XYf4U2HGKYtw/LaHIZhMZ2OGA9rZJl4LlYqFap1h2ajxkank3OtIPACvJFXqspYVQurajE8GZKmGZs3N5iOPA4PHxCFEfV6hyDwcFsu+/f2URQp9SuVCkks0lu1ehVT1+j6F13cC0+3NBZEnqIoWI4FlUpuOpuSaCkH93ZIkgRvNmYwOOLGjU8A0Fnr0D/u4099OmsdglnA/GqHquuIfFWWUclJtrqqUrWt8iBs11y2tw84eXTCdOixuLmIU3c4/upDPvKpz7Fz9z1+9f/9eT77A3+Q9cc3MGyD7qMuc8vSI3fq1RLeDVxo7SRxzD//+b/Fp3/8/2FhY17ah2HEvTdvcXy8TaMxj+9PWRxt4ftTHtx/s1QhuXr1+bIlrumSBM38KaZloRkCvDndO2X/3r60eQ2dtytvo2iC2jzZOeZw/yGDXpXJROZqc3OrpEmM49Todvc5Od7GqX+GLEs5PLyPrlt0OmscH2+TJKv5mlPLwHP+qlQU+gc9Lj11SeZ1Ycy4N8abDtENiwJ6V6s1GI96xHHIaHRKpaLQbC8wvz6P74m3ZRw2JLGIRM9zbe06QRyxu33I4KgvbvJVC6XlMht72K7N5FCqpzRNmHljbLvG7u67nHb3sC2X45MdlpYuEwZzaJrBaNRlNpuwtnadWqOZu4YL8OL87M0beSU9RzLflEl/wuuv/Trt9jKOLXtnYWMBw7Dp94/QdYPJuM9HP/EFkjhl59YOwcyn3qpTyWH5zYUmVtVi0h+z9dSl3I8w5Bu/8g3xmtS1nHyf8GjvDpPpgNX1K7hum+3tt9F1Mw/0AtzRDJ04jtnZucX16/XcS1P2jueN0TSDR++dSU2qmspjz1zmvTdk3pml4sN5/OiQMAywbZf+6Qlu0OTd777GyckuzeYillXle37wCyiagJySKKZ30MOpO5BlnDzq8sa9B1xZX+Gtd+8zm8wY98Y8/sINGvP1UiBB01RJRNNMzLMHE77xjX+FomgMB8dsXXqK5lwbq2ph12y0vIVsuzZRGKGbOt5oyuLWEvPzrQtrcTIY8a9/8dclqKoqZBmBJ3PTwAsksBsa0/GEwJ9in9T4znd+ncmkz8ZjV2guNCWRdi26e12+9evfRlVVbn/zNndevc0LP/xxnNyw3ak7eCMPp+6UakiGJcFwOpyUY5e3XnsVTdMxDIvB4Jjv/wNfzlGbJoqmlIm0P/Ul2I1nvPPyO4TnAG0VxD9UxiVyRk6HU/qnJyT5XvGGHqOB7O+Tk102Nx9nPB5w84WnmQ6n3H3tDiBJdK0tLdo0SXj5X71C74UbJOeKhO23tzmwDFaurOTaxzOh9uV0Ftu1mY7GvPrqv0ZVVBrNBeaXl3HqTlmg1efqBF7AMBmgW0bZBbj3xn+goKiq0jMuWnfJVNzj9x/s4jgumqrT6+1Tr3dIkljMc60quq7T6awRhjOSWBzmB0d9Qj+k2qxiORaXF+aZc2u0HAdb18kyOOg0yLKsXKjbb29j1WwWNhZ45lNP0u+PePfVx/nut16h3V7m8o3HWb68XBKM0zjBqdnU2jU6cw2aTlV4Svrkwn2laYLvzVA0pcwUDUsX8qovFIUHt0V388qTT+YHbJf33nudT33fl7j+sWv8xMc/wf/6f/4TTvdOJbA1HNQcbuyHoRD5s4wgjnI0rugEVk2pEouA+NhzjzHpj1FVnfu33qWzsEKrtUSWwatffYXO8iLz6/Oliohh51l4lOQLNzn3vlSefvqzOWJyVmZdURRSr3cIgxm6bhJGPp3OGicnu5L5N+ZZvbZKrS2tz5Pdk1LnEmRO6eScxSzLuPqRq6xtLLH/6Ji7377L4f0DdNPg8vWb3L/9DocH77G4dImNreu8+fpvk2Yp3e4jdN2ktdhk88p1jo4eMhx2MQwLRVHp9w/RdRPfn6JpOjeffoHXv/Nr5XdwqlXSVEANSSytKk1X2bxxpdzAWZJSzXlU6Z2UalXaYJZjUW04WI7N0dE2G9cuoSgV+sczGp0GrcUmv/h3f5n16+uAgLROdk+49+179A57Muc1HXRdpKxM06HVWuTg4D3iJKJ7ukcQeHQWVlA1MU8GSVhms7EQ7AMBsxwf71ykBykKoR8QzkQn1Bt5DLtDFhY2CQKPMDeiTtOMxeV17t39FpNxH003uPTUlggW3JdKpj7fKJ0Y6nNCP2leXeXmta1S9en0+au8/dJbmI5Ja7HFZDRfOp0HMx+34bK4uMVgcMTW1lMkSSzm17rK/OIqnc4allVF103G4x79/iG2XePy5afwvLN9VqlUWFzqsPvuriS8XkCapBiGTa93SKMxj227rFxZQdGU3LT5gMuXn+GxZx/j9OCUKIgYTmaiWG0hygAAIABJREFUK5sDn7I05bd+8bcIv/xJAaQ1XEzL4JVf+QbrN9Zxag6DY6E1HT48oj5X59rHruONpjza/f2Mxz0Wly7Rmu9QbVQZHA/QzQG2KxVSYYoeTH3e/eZtnvpMxv08sBfXdDrk/pvv0VnpkHUaAhia+liOReBIUFQUhYV1oTT4ns9o9DyVSoUbH7/BwuYC+3f3GRwPpdLUNTRD4+pHr/L4x2/w3NXHsHWdWRRxNBxy+/ZDGi0RGldUBd2Stq5Ztdh6YgvDMjjdP+Vg/54898Utkjihd9jj6MERtXaNK89dKSk1Jdo7TTGdi3zgoiIv+M9ZmjIe9+h2HzE/XqfZ7sjobDbh5GQX03S4dO1xVq+sMDgZMhlMyupxNpnhNqvMr0s3Y2F5jqbj5KYHKS8efJ3jnWO2ntjEyEcHu7d3OT2Qyu/q81cJZyFPbX8f3dN9qCjcfOFpVE3laPuI6WCKU7OpNqoyl57M8MYeu7d2uHPnW//+AJdfHyooGrZZchCr9WoJtrFtl9GoR5al3HjqIzzxPU/w9tfe5nD3EWHos7y2wZOfeYrDB4ec7p8CUpYXD3ql1aJTq9PK+Samrokk18cS/CBkvlEnSVNWN5cYj6dMRx7j8ZRWq84P/qkfhiwrCfmqrtFZ62BYUlncXF8rVWGUSqUc+p6nX6RpIoew8QwgswNFNcuMvT7f4COXvgfd1HEbLpefuYym/xD1uTpziy2CMOKff/ObNDoNOqsdkRXKMkajCcejEaamkSHCzWM/yIOiRc0Sd/bLN7eY31xAUQSBtbTc4Wd+7s9j2iaDoz7P+s/i1Bz6h+sMu0MGxwPh8y226NRq2IbBLAzpH/UvvC+nXuXy4zd45+vvsHRpCadms3ZtjRd++AVpT3gBj+7uUalUsF2bZ77vGclsg0iCXpJi1x2ufOQqc8tt0pzoG4eR0FuAT37xYzy1vkaSZjRsm9X1BX7zK19j5+1tPv3jn+GZzz2DN/qyKLikGVtPbQmRvj+RYB6ntJdabG4+SaVSYWld5kmHe7v0+0fMzS2zunVJUHTnrmrT5dLTlzi4fyAE7ye2ypZJFESMTkdEYYSdQ+I/wSfwxj8pbvJByLg/YfnyEsuXl3js2cdQda0UTKBS4dkXbnJtebkUijgejfjLf+5/4Mf/05/i4VsPePp7nzqTjsph05/6sU+VHY7DB4fohoZuGgKIaDXLzH542mN39xaqqnHt5nO8c+ul8r6yLOM7L77BleeuCE1hqc2Tn3mSYPoZAi/gaPu4tMS59tGrbDz+n+dJUSzUHENjfn0ep15l4/ENFE2hf9jnaPuIRqfBjaubuJZFnCZMA9i8ucmwO+S13/g6W9ev8aU//ftLxF7gCdpwYXNRqh8/ZHwqoBOn5giBf+7LZGmKN5phjEyazXlaCx10Q0Mb6hfu66VfeYXmQoPFraUSLb75xCa9g8cZHA+otWus31jn2e9/li+EXyBJEqyqRWeuiV23WdwUsNWkP2F0OkLVFGzXZunyEj/0KZH2K4j8f/mlt/n4x57k/uERnaU2lq7z9KefYubLCEbTlvjZv/qXAPDydnLoR1KFNhw0TQAyo9MRw+6Ie2/cRtdNGvN1FrcWLqxFVT2bC/cOeqzfWGPj5qZgL6Y+08FEFIEso5y/Pfb0ZTRDx3Yt/KlPc6HBR3/wowJy84UOdvNTN1lZELm/MJbKbM51OXxwyNzKHI2Gi6nJSKizMleC/SI/4vt/6vtR1C8wG3k56jcmTVIuPSkJIEqF4fGAk0cnErA35vnklz/JS1/7J+fOxUwq0kolBxlWmFtplziQRqeBXRMe52zsEc4+j9uqUW1WSaKYhY15Vq+u4k99GX/NBC8RhTGPPfsY15aWSmGCJMt47NnH+I2f/w0CP2RudQ5VU+msdbj6kWv4ngCwNp/c5D+6+bNUm245BghnYUmVqTaqMgoJIo62j3jw5gPSNOVH/sgf53//K6/xe7k+VFBMYtHwU5QKtXYNwzbQTb1UGqjP1am1a8RRzOrVVVpLLWbjGatXV2nMN1A1lbmVOUI/ZDqYUG1UaS20aDhO6ZYhOqgatqHjGAZOLsWlqyonvQGT4VSUV3pjvPFMOISqgmlJJWY6JrqqYWjC5Sp+3wvD3CtOWhznwQ3CORQ1fNM2sRoWTs1mbrlNlmUlqdeqWjgNCdxZkqIZOt50Vs7xyuwykuot9ENGs9k5eTapGgsvszCO0XI+p66qQlzNodyNToN2zaXedEXDMohoLjSpVGB0OpLq2TBwLYuqadKbTBip6gUJO8M2ePyTj3P04JDjnWPm14RYrSgKpm2iqCrr19eJQ1mwSs0mrIYlnyrOARC6odFYaBbcFfzJTNoZNYc51yWMc8eCLMUxTNymi+97tBabJIlw0ISSEDEZjHMVG5mxxGGEYZnMLy2RxGk53zNNhyvXnqVar0oQSN8vwgxzy20m+Twh8AKUBYVKBeJQeKeaIQeQU7PJMsrv4Q2nMhPN+ba6aeRzboX7b7wHiLNH4WYy9Dwcw6BSqTDsDrny/FVG3eEHSNxRIMoppm2ysLFQ0nYMS6e9PEccRgK6SRJsu8bSyha1lnuhUrQcE9u1OXog9APhjkmLLE0zWkst0iTBG0lyp5s6aZqWM1gAc66O26phVU2qroOqqfQOexLk4lik+IIkb/dJggvQ3etS79RzgIVaAhcmfUFJF2TsAhVdYAsA7JpDa7mFbuiYtsnodEQcDsv7UlWFarMqNIj5JtVmtQRl6IaG25Skx8sh+HbdxjQNMoR/ZpoGji0obtu1BYzhh1hVeUbndUzTTJ7HwUDQ7/WWTXckYgv+1Jf3fk5fNI6SUo2lvdxG07W8Raxxun/Kye4JtUaTtetrhIGs14trUUHXDdxWTZ6VF9BenpN5eJJC06UKqLqKP5lh2iaGbZToUMM2qVSEn2pVLe68eke6VaZ+JjeYI2v1HFjljTxqC20sQ8fKW5NZJus+TVM0TSOORcHrvFC7qsp9esMplUqFWrsuCOgso1Z1LqzpLBdYWHlsGdMxZZwUSEIczAKSJGUymMBA1qfl2iWFzG7VSvUzzdBQNZXDB4cMj/oouRB+JX9nBVfRcW1qLZf7b9zn2c8+I5Zvlkm97hLGMWEYMTweXJDaSyLBDLhNl2rDoT5XZzoS7vfodIRu6mw+scni5sVE5t91fWj06WzsgVJB01Vq7Q71uTqKqjCbiAJKreWiqApLlxbxp0EOlbdJ4wTbtUqzVKdmkyZiRVMk3KXKQb5ZTF1DV0Vey9Z10oWMftWme9gjy8QOJY5kXhgQYpi6cCbjlCw70+ADUbtIKzCLQNNyx4Ti5WcpaW6DlaYiPdZcbDFXrzENAkbNSX4opUIA7ktbyJ8GNObrzNcEINTTNHq9YfFHRZ5MEy+1Qrw4TtNcgPhM8NYxDDq1GmmWcjQc0ZvI34/TpFTugDOwznShw5zrkqYpjmnmPpIpj84pDoHMBBY3F6m1a9z91l2GJ0Pm1+fLKtqpO4IU1XWCWIBSkR+WaNgojGUOkb/XQmfV7Bj0jwa4zSrTIKDpOLmdlnzuymMrvPQv5SAddUcYtnG2kWLRgFRVJRdBln3otmpEgdBY9DyYza3OEXgB/cM+SfR+vUnZiE7NZhRGQiuIYlzHZhoJOCYKRbDg8H4+J6lUZD6cJOiGhlm1SnK7kfNpASbDafmsC8eGaRDw8S98H1/9ha/wR/+LP4VZtVBVFW/s5aCAoBSdL2gwhVZm6INTswl9VartNGV5a43OytwHRAl0y2D50hJ7d/cYHg9oLbSEb+UJzxGgMd9kcWsJRVXKhEDVVBFXz+efVlXmfv3TIZqulXSVoeex0mphGyYgYhe6qVOvdxiNuvIzJyI+AZJYmaFFmp6BwsKZJE6aLomNoihoupqr9Ajn1ht7FxVSKhWsqiXydmGMYejULAG3JFFCra3mowsJXEwhyOfkgWVgORIQPT9HakcJaZJRa9cxTL1Ur1IqFcI45frHrvG1f/l1nJrD0z+xJRZbRoCaz8ejIBIAjHYm0J7GCbppYFXNch/V5+rMRh71+QZLW0t4Y496+6I4faVSwbAM3KZLFIrqTQHsUzSVLBXFp4LyYLsWqq5huzauLfs7zTL6U5E088Ye1WYVRRMjhUIgPcvEgaI+V+d455hnrl4iSlMW6iqeZZV0lEL5q2KZBKZROtYUybml6xwDdt3BMEQVqHfcF9u/992XP/WpKIp04vLvX21WsaqWBMKqhaqrGIUoSiaIUUWpYNdk1hdHMUvzbQ7e22d0OqK52EJRzyy7igKl7brUO3V2b+3w/OeeLRV9KlRE69Q0sS1TEgUy/DBiMvbOnQkZTlU6Q3E1obXYRFUVFjcXsD/Ac/7drw+nfQpYro2mSSZlu3be21bpHfZJ4gSn5qBqSvkgFbVCkPfUdVPHsAWdNrfcJo4TdMsgiM7EYQvd0yTNhE+Va04GseiEzrku63NtepMp/cmU0elIFkIusGzVFBxbfm6uVhON0NI4lbJaPI+Cr1QUvJmASooN7joiJdWsVqmaJkddub+i5duZb6GrKm3XLR0F4kTmesXBa9qm+BPmlamlS+bXm8hAfM408XPBZitLadgOc64E4u9sb3PaG8kzrTssNYTsWjVN6rZVGuaKz6Lch6opFzO9LBMLI8tg6fISu+/u0j8asLqyQJymjKbS5/d1rWyJJokIMTiNqvDlag71qiwofxqwd/cRbrMmIuidRu5fmZS+koU60crGFu+9cZ/VKyuMTke4zRq2K9SHYqP5kxmWK8AezdBFXSWvdjVDRzd1Bkd9nJr9geCRZcJDMqsWVhARTH3CWUil6qBbOnWtXhL7ZxO/5L8atkFzvoHpmDhVG13TGAzGjAYTqg2HxkKTilLhdDJhs9O54BG5dHkJXTf51//gX/H5P/ZFDNug2qzm8nspe3ceXYB+Z1km3RRDeIGN+Ubu67lQevLNJv77kNCwsLXI6UGPKBR1n+ZCo5SG0/ODyHRM0Xesn+mamraJlR/mqqLQ6w3pH/ZLMYZGp0EYimZwLT9c4lik/TYeX+frv3aHUVeg/oKQzYEcpl4qKyVRQuzGaJomconnfgYEmKEj/74ouJCVKlNJIrxhTVWpOfL+oyAquwFpmpY+m4Zt0GjUqJ3TvvWjkK0nN/nub79FFITCB1QUQs6Ma+ttSdZ/9Rf/GT/1U1/C0FRqVoOpZZE2M/woYjCQPZ/aRknhsaomjmFK0mroLG0tCQm+IVzKYXfI+y9dF4qU6ZhU69VS8UoztFIK0c+FFoozEEDX1NKoN00S4iimt98jiWIaC03Rqc3ObJYURcELAtrLbXZv7fDO7iM6jToL9fpZGzI/3wq/REPTypZy4WZRgP2SNKXhSODyG+EFKzyQREHszSropoGeI1WF9y17tUDsV1SxSLMciyRJWZtro6kqp5Mx41yBybSlwtZ0jTQ5E2gvrqpp0l6e47UXX2E8kkq2Va2KkXB6Zjp82h+W3EU9F0wp/rauaVSqNkmaMrfSwXJtqs2Lo5d/3/XhgDaayvqNdYJZQG2uRt2xaTgOy80mu+0ahw+OBC2a++HZrqC4Gp0GtZoEF1E1Fx1BkGC2P+jTrFZpOE4uEH5mD1M4a+iqxsT3CeKYmmVxbXm5DJ5+FJbah0pF7GcKZwcvDHPvsDOn8SROL6inu40Gnc4aaZxiVU3smijvzNdq1G2bzbk5otXV3KYnFOFrRRxBCgfr0WxWorEEWdtksdNmvlYTtY3cQWK+VuN4NGI8mzHxfRYbDWkd57J2AHOuy/feuJ7bEYmVU2HLdN79IE5TfEKCWJwgAi/AbZ1lsVmWMfPkkF7cXKRSqdA/7NEbTzANHU1XaXcEfFLLM83Cdw8QuyzElWDs+4x7Izqr8zlnU8F2LII44nQyoek4eZtaugMbj2/w8K0HPHp3V9rnnUZexSjl7K9o9xXtkCxNmY48NE3k1aJA2i9Oo1omPxcWr67iNoUzOhvNOHjvAKfusD7fKT324iSlcn3r7HcUpUxEiutRfx+gBH898ekn6U0nTHyflVaL3dNTAWgd9vn4Fz7Dd377W6Jqs9CivdTCdm1UTaX1vU+hKArJOeUQmcEKYEYEz2sSrKc+Ya4ze34tpknG/Po83tBDUQU5fbR9THO+QWtZqsaiA6K7KrNcJLroJhRXnKsyqbpKEqssX5qXA9+2GHoeXhCgVCpomsbSZZk3f7H9o3zrV7+F03DYemKrFMjPMkpLryL4VXIyu2EbRH5UyisWaEF/6l8QUcgy+Z1auyYatCcitVd3bFpuFaWulOvwvKg3FB0SJbclU/i3L94iCkIMW+a1aX5gOoZBbzotK4lnPvcMzfkmf/Ov/d/8oT/zI7Sq1dKztG7bLDcbpTvDecu2LBPyv20YsCQi/c35Bg3Hke/9vra5actopb3cFvFwXWXYHbK0tYSdA+xqeWLZrrnlPtdUlSjvFgV5xTTujVm6vIzbqIrhQBxTMU3iJCk7S9e2ROFpdDri3tGA2jPXc+u3uPSSna8VnqEC6AviPPk29NI9YzL2sHRdnkfVye3ozvnbKgpLW4t5dR+hayqmoWMuNClsvnRVzraMrPx31TQJ8kDWrrpM/IBXv/kW48GExUtL1OfqcjaFUWnnFufdmKWtRX70z/0EL//Sy3z8Rz7OQr1OzbKYhSFxmrLUaECjUd5DmmWlpV0F0T0t3n+SCwBUaw6Dkw8mM7/b9aGColW1pFedaxiqioKhqdiGyaX5eVwz9wpLpYWp5XO9qmliaBqaqqAqCifjCE3Le9+GRhiLnBtIple4XERxXMK8g9ydoLiKPrul65i5C3lx2BUWVEU7odAdLb5zkiQXKsXAC1he28iFotPyd0s/xjzjAtmolm6Un5lmGZZhYAYBk0qlbAE6VZu6bVPNF3Txt+JEsrOJL8HqeDTiyuJiXiGLh1+WyQLTlCz3Hqzkn6uTZFkZZOP04pytUF85e0YyLG80XKazfB4UxZzsnoiMnOuU81pVUS74OxZCvaamMY0DxqMpiqoyHYnjw9LlJUxdL8+HSeBLElNRRCQ9dynvH/bo7p/itmoiHhCnpYB5cRVWOkmcy/FpigQMPyrFGN5vxlvcn5LbqRi2UVJIgHyzK2hKmttunbMNis80die+SBOqOVF89eoqlmnkXm1R7ilpsNePcJsuk8GEj33xU3gjadGqulbydNO8LZzlHQnNkIrBzAFqQh2JSpm+OIw/IMJcrMckSajPCVl6OphIUqFpOIZZetalWYZtGLkPpnREtLxFP52JOog/mckh23IJ/ZC1dov+1Cv3mKJKWzMOY8aDCY35BoEX8PDth6xdXWVupVPuQaBEIav5/tE0jakvzjFZlmG7gvY2TL1MfItLVWWGZjqQxkJZaFadch2pFUmATe3M3FlX1Vz/+Mw6zW25ZeKh6hpKnuiI2bU8B8cQbMHWU1u0Fpu893CPzlN1zDwInL8Kc2I1URj7Z470xWFd3Pc0CJhbnruwx+S+hPZS4CUm/QmGqaOqSukxW8wCkzSF/Hmq50S+u8e9UlBeUSpUmy5V185N05NytKPkwb/u2KRpyuB4wNFwyFbul1rIVJ6/FEXBNkz8MERXNSo5Qj3NRzmn3cEF7uiFe8ttvgJfxBQMQ8fINax1VapQU9PKs8LWJegWtnLiYCTvyTD10khB1eS9kou2F2o9rWYN3TJ46jNPsf32NrZrc21lGcvQ8fPWdNFGBsq2efku83VT7vFIrNLeb6n377o+VFBUVJX1G2slJFkODZmbOYbBnFuTF5hljP0ZYSxWSYJ2SxlMpyJXdM7wV1VVgjAiiOK8oiOfuxUedjFGHgQKN/sCZq5UzuaPSoXSGR3OJOnOfBkl0IVJQuRHFzIiVVNKp4bigJYqI7mQtRZC5oVvZBDJd0sjoVxMJ5700zWV5Jz5cRHICjdqPwzL760qouF53hqnuNfSdBRR+gli+XehkCP3rZRJQJIkTPpngaG4/7Scv8a4rRrTwUR0YDWVuiXtK9GNlMyyyNALn8Qwn3P0DnokScLS1hLzTaHLbHTmCKKYoTcrv1PVFKDJwXsHYjeVw8FFwUfUasjX8XlfTDXnOIZBVKKDV6+usnNrpwRGvP8qKuMojIVflm+WQhareAaaouWbRTwTC2X+MkglCW6rxtLSnLTuofRqK6qJudU5FFUqgUl/zO7tXeqdOvW5enmgVHKH2wt80SQpAQhp3l4PC3/COHlf5SGVZWdF5qmiQRphVU1c28rlEOXheWGIlq+r8/6jQSTJxO7tXVavrKAZGrPJTNZ1nvQZub9kJdeQLaq6KIxQNJFxPHnURTcN6nP1C9VvcU9pcpbcFCIDcSiuHYqmEo/PEcHTs9a8QPTFeUZZVMr1fN5MtrCWswyDcd6FmQYBR/1Bzm2ulsoyhmWUgS5OJIg0bJtZHigB3n3lXWrtGo+vrJbVU5LmBtH5OtFU8S8tqkY/jAhy4JtlGtx94z2WLi2VuqbFVZxH++/to+ZAoEoeDIrgZ57z3SzWhqpUmMQxp90BxzvHzCa+dD7qDm7LpWbbYgqdpiRZWgafWX7G6rpGvVNn5+4jOX9rZ21CTVU4B7BHqYBlGOiKgpedudf3+yMUVck1cd/vsiNJzmwi1mKqpqLpWtnyLQqD84bFuqYxm82w85FSOIsZ9cckSUK14aJbOqqqYjnWBapahiR4C2qdOBnQXmnT3euy8842Dddhsd4ojaWLdS7vW/AZpiZm6VEenLM8EFYqFabD6e8ozfe7Xb/3n4QS3anqWo5ki8qSW1Cj0iOX2V+N+VqNtuti52244gCsVCokUZxXbBlxLOLfxcuTm01zWxjZDIW4tVIp2qR5paqqubEwOahFMpniRam5C0GaB9o4yRUpzr183RBtTBDCdBSEZSk+C0UfcOz7qEqlFK4tKjdVqWBqkiX7U1HiCGchg+Mhx6NR6XhdZHwT32e/1y9njJqiMvS8PCuWzEvXNNRzOoSmdiaBd95s08zvs7TgylVZzr0w4igmSmJadbdEC1uuXVY0xWdUKpQHZmkUnEpgKQTSb3/z3VKRZOJLZVg4nut5K6jI+h3LJPSDspoKZgEHDw7xxl6JOjxvRFtkwqomyNhay8Wp28zGHt7IQ9Uv5m/F99ZNHbvmlAhGEYRO8MKwzBaB8l6SNBMD5CwjCKUaPd45hjRjY2OpXOfLTZmX7vf7JdBhaWmO5nyDJEpoLraoNqq8+8otkTnMT6A0TsulleXB8XwwUTQVzdCoz9VLP8eLm0w+v57/P38ixrVpKsjKMM+sZW2fgYGSNM1BJnII+fmMtdFpkJ7rIJxOJoJ6VpTSpTxJkhJFWiKTlQqGKX6YaX7/5w+WAqYvM9tZDrtPyqoijZMSIVisxaJCXlzqlOu1NBBXpD1q5tWFliMmi70TxDHd0ZjdWyKgYbtCZzIdk3bNFfeI6Kwyrdk2Sr4WxA9R4a2X3mb39FQ8GVUJVJqilpVi8fnFvpQkJqXarDIZi8djFIQX9xhiRacbIn0ZBRGqrpZJRnFgn39XRVcoTlJODkVW0G3WyjmzU3cwcwCMoZ3TcM4T7VnuFDSb+pim0CHu3dkhzQS09zsFALWioJfBWGG5KUpiiqKwstgpxzIXlmJGSbjPisQhr1QdQwA8RRJaBEjtXHU/9n0e7R3RfdQtzw0Ap+Gw3GpKNyY3WS++VzEayBJxCvLGM+589z7Ho1G5JornWKxDkCSvbtt5e1j2uj+Z4dRt/MmsfLa/l+tDA22SOKXWruENpyLDZMb4UXQ2lNdUIG9HKLLo4jRBqVC+4AJ8o2qqKHvkrVTJ6CXIFXzIgidGBDWrgqGJD6OmqGXQVPJNZeSVhlKRwDsLA9LsrFqKk1QMLaP4gnVUwW3cfme7RK9OAp+x75ftTyMPuBUkMCblIlEJopjtbrdsLfYPe6X0UPmgVXG1v3d0xOH9A+qdOkvLHSzdYK8vdipNxymz1kqlglapoBaHf86FCuK4bDX7UVRmTIYqyMb3V1SarhFHCVMC2p0mU29WzvKCKGI48zA1aUFn+V4qgmPVNLF0g0f7xwLYCGPay6K9Ohl7mLrOcDYTf8wcEJVkqbTD/QDDMvGnUu0kswTDMugd9EjjhPp8g0pcKdsaWZrli1fPieMB/lQO3DiKP9CyKtHHoUhIpWnK6GRYgrJADoLiUJX7jZn4PnEqykWT/kQCIqJKVLS0dU3LExSt9OYEaNgOJ6ZeOq9YVYthd8idV2+z+cSWcCnzHaUo0gKu5GjrND6jlbQWW7QXmhw9Oik5reVVodTNbC40qCgVeoc9Ij9kqs8IwghFrZTV/DRNL7TyB70Rg6MB09GU1SsrzK/NMx17JVCpmKdtdOaoUJH3F8alKLjbcqm3azy6uydrIUoY98ZlpVsYE+s5grlQjClMo7NUxPXDILqwFos71E1d5kNxjFV1y4OutBJKxfVAAn2cz84TuqMxBw/EGaKA3auqylynSavqlBZzQg06GzFEidzbypVV7r9xnzdfvUXw3FWuLi0xCwMqSKUo59U56kLekrVzlOXodMTmtXV5Z/H7kdBZSdNI4oTQl0JhcDpkPJpiWAb1qoOhaWWAnPg+3eGIMIhodOoMuzIz1w2t5AQWa1jXNPxZJO9ZkQ5GFMUoeZW+sLHA8c4x9/YP+PxTT9LNgXzFGagrClGaMgsDht6MiTfDtmSsdR7AJIbD55Zi5Wx/VnKgpF4GeDnPiramqetEuVmwpojDR/ekz+B4iD/1qbWEV2iYOrZllqOiIqGT/Sk4iTCOS9xK6IcMTobce3eb+Np6KekHlMXA+SRRzmeVJM2oKApLi3Oc9ocXEtN/3/Whg2KWZdTn6hw9PKR/NBBAjWEw57oMPQ/LMGjYdt7Wq1xANGmKzK+mQ4/ACzBMnWrNoW5LxhLEsSA+NalUjkejksqgVCocj0ZkZKy2ROIzMQJAAAAgAElEQVSs8JUDqVRmYVQGlVkYCC8wP9SmQYAfSWX7fiSjpqsC7T8ZljJB4/6EqVMtB/hl5poDXmSOo3A0HPL2wx2239lh0p9w+PCQb3/jRcbjHo3GPE8//2lef+ZyXqUZHD445KVf/TfEUcj1mx/l6c8+jW5oLNYb1O2zBVrL25pFdV0AjuIkIcuUsmoY+z5pmtL3hJIQnvNmLODQlUqFOIwJlTBXzZeqIE0zJpm8i8IgtKLIAV64fxROBYEX8Cf/qz9Gw3E4nYyJQnmuQ8/D1DUWq1VBhk0mOIbBoCeyX1ZVrH5CX7wjCzj5yV4X3dBRdbWUqCvU9Yvqyfek2knjlGD2vqCYZsRBRJJXvHqOzHz39bvl7CUKIkI/xLCM0u5KNzROD3rs39tnOpqSxin/zV/9WTRV5a3/n7Y3+7EsSe/Dficizn73XCuzlq5eOD3dM80WV3EGmgEleWSbhERJgCTbgqFHAoIlwy/+CwzY/4HfbcAw4BfDsC15IWnA1lCchdMkZ3rv6lpzz7udPZbjhy8i7r3VTXGaAA8wyKnsrMp7tojv+37bk6cEzA8yLKsKozTF6WwGqRSu12u8WJCVn9EaJ6/eQToijPaHv/99fPLeR3jnb/w13P3aXb9pttaP0V2/al2RB6TU3oRBdWpnIepND6MNdceCI8li7J/sWQYt/Yxj/rksRReA2xS1TfGocPbpGX7nX/4O2rZDtarAWEAewkpjJQqUbYuybnD97JosGhcFlNK4enqFq0iAcY6bs1s8eOsBdZ1WDtKbHsKOLZVlIdL3ObTWFJvUkIZwu6Oi2Dky7D///AJJlqBrWnz+nPw9XR6f22DjLMbhaISr1RqLqyUmB2NMDiZY31L6yItPXpCmkDE0ncT+cGRDhhV4EPgsRaOJtQnR4+1vvwUA+Pi9T/Hj3/8Jvvsf/HUcTyZ479HnqJZE7Xdm1G6dm+1PkEYR2GGATir/TG0fQRB4FyKAsDcUNYQQFFDckp3adkJPkiUIoxCj/RGef/QcTVH7eCPXYAjGkEYR8jjGOE1xvV6j6TYdfRgKHIyGKNcV3v7VryPiHH/wM5pcUKIHsxhujNyuLWXd4GAy9qx+ty66c3cdIZ0YsLxcUPpP3ZKz1dEUUikkEXXTLqrLKQWWVYWr2wW0Jg/fMA4xmAzQNh1NWA4nRChqGhyMRkijEK1UHqq4KdaQ9lkIggDT4ymOXz1GUzZ4/8cf4cXBGL/41usQnOPpzQ39LODXrK7p/HoSJREaKX3k2897fEVDcBqjJHkCo8m7UDYUAOxwjqbrIBjDMEl2NkTCCilLsFqVyEa5r5wdZlh1HQZJAhYESMIISRiBBTU6pXxQcbEucclX9mdCv2nEQqDTGoIxD5CTa0frRb1l26Ju6ea8XDfMLxYolgW01D4sWWq6WaQjogotFqHHKepO4mq9puIAtFhdn12Qn6bq0LYVnn1OYvDhdIDhbITJ4QTf+0d/H+WiwOp2jWcfPcPDb7wCzpjNkQwsgSLeGaFujxhaJa0Uw50nbfr9S12HsQsR3OIgGEI75mvKxm+OjvjiksVlS7q/ekUYqWwl7n3tLgqXit20qFc1jDKoYhIPlzbguGhazC/mRPKwGrpyWSFMQhhlcPL6EAHbOGwEAdBZ7V7Xyh07OdUp77FozO5D3VtDg8iK1xkjskO5LD3WREQMCg5e3azo81jsSyuNuixwdP/EF02qo/gwZYhNl4QhxmlKWsw8x7KuvSTn8skVJkcT7J2SzVVRLPD+H76Pxz/9HIPpEJwzEsIzsg40mvSZdN1pEXIOH7uaWVgmLpnv9z2xpZ1BtRNi75iI99SdlavKf76jh0d49iGF/JZLilgjv1OJbJTiOrlG3/c4++wM8/M5jDGoliUWiytwJjAYTpHkFC+1d7oPaUOPHW7oQncB2vyjJIJShNG6jnG7o3KdfVM2JAS333MTgN70CFjg3z+jNG6GGdJhiqMTGrf+9Kef2wVuYx7grkXECc5gAU1yFlUF05MMJGABRuMRFldLPHzlBEf7M3z4s0f4f/73P8TsZIZek4HD9M4UWUAYeMAZZiNyiyL9IBUfLkR7+6CJF52TSwQiMskmGok0iwxpEkPZUbfpe6yuV5ifz8kVpiDsVISEIyZhiJuiwMpOMIqmQSslahu9JUKBKwCqlWilxDglGVkzGhLEw7nHNQEiLo6z1EMezkBkmwj48qGkhgitLMde78XtyovmwyT0es98mHljkuEox+J2hWpVIh8P/H0KLO4oOEcWRX5sG4cCT29uoU1vx90c2SDFelGAc47j4z2IUODpB0/xs0hARKHN7+Xe29Z12UmWIBSWaWuhErMNsP4Fx1faFNu6w/z8Fsf3jxAmIQGwTedHnHkco+o68K5DZIFlgLAwqWiDuZkv0ZQt5WVtkdMiQVVL2bbIosiC7tRK+0pGK2gLpDs8s7MUYJ+jBngqvul7v4G0SqJV0gez7jo3EBU6G+YWU7RicG2gGGF4CeAlHo4Q0MgOymhy8bfzcmM0jo8fQogI4/EBoiiCbMnJZDClvMJ8lKNrWtyez8nl/94BpNZYN7UNYe5p7GGrL933ni4O0HizlhtdlwOYaaHaTU82xiDQgf9z3/feTb5abzaaOIvRa4MexKbTkiovxmlsIjuFxx88Ib/Jvke9rrw2CACycY7e9NYWa4lyUWJ5tUS5LKG1wnAyRJwnPuVcttJaP1F16o3XXeWnDbTSdlPuvsge62nTjGwUmIFBnMbIxzmMJmzV5QDWNnVeS3It0kpTXM7+HobTAR5fU/hyta590GrZtlhUFZ7c3KBsWzy/vcXqegVjtaprG8ZcrWuMRnsI4wht3fhO110zhyn2PY1z2qr1lWxTUr7jTqdo7xndaKsVCzm0Ihs3zrl3CMlGGekHlQbnDOWiwGA6wPRoiuFsiB/+qx+gWtVY3N5AqRb7hye0iEmFbJSDcYbb81s0VQmlFOpqhWfPPkSSDvDqq+8iAXl4kr9mhNgmexDDco22IdJQ23Rg1t3G2M3DvMTwRk+bJLcm/SIinaPD+7j1+wyCACd3N+4jgjFUXYeyqPDRDz/Gd/7RdzyZjFmmrTJEoHO4HUElmopGW2AopX2qy/5wiHd/8RfQvv2qJ5a5MZ5bO5TFIrUxhD23EtIWA459v3VqHhJK7cbhNv58tNFq7o9HOyzUuiOjjHSQQHYK54/OyaPUujAVdwvsn+4jYIHNaVV+fF0sKcrOGXhv66EFZ1aL3ft1TlqJxPa42MnVtGWhunfGn5ehkGFjbNiAFURHSQQeEumGscCGrht0nUQUhd6BZn5O+ZiToynKRQnGaBpV2zXUdamDJKG13X4uR+LqbMB2UzUYZSlePd1g/swGGadx5O+h4xC4ayAYR9USvr1LIPp3H19pU5StxKfvfUbuLpoEtk3ZoGxbDyADQGe7vohz/5AtqgoXiyVurZi4rVoouzhpYyAY3dDbokCf52hkh9uyxPMbErNWNqlcS4VoKhCLEIDEi/kcwyTBOEvt9+iBcx6nboRatx155XkWxOYiuQr4/tcpboYc5BVaJe1cnsDgJAwRcY5Gas9mzaIYo4MxwpjcVfaPjjDdO0CYhDbDUfjqb3I4Bufk1i8qgeGMTJpHOYWINp1EEhJWs6oJz3QsPMfKa5X0pB1HummlRN20NuFju4OgsVRveltV0wPsNjO5NWrNRiklH9gR0eJqiSgOMZgOMTkcoy4afPgDcrwv5gV5Yt7fLF5hTHZO1arC6noF1UlcXT3HYnGB8fgASZYizonBHMWBJ9vwsLGjxdozT2PbScpW+q5E8F0igLt9XSsRbj3vs+MpLVKCxMTu/6+uaYPuanI+yoYZDu7uYzAZ4tmnL5ANM5+D6SzTFusSt2WB+arA1dMrH7dVrUrcvLjF8npJdn9C4PT1E1w/v/H6StfJiUjAWMa177A0ubH0mrrdl3ZFyEZ6vN1oA8YZxvtjssFLQk96ycYkvG4rSgkZ7Y8w3h9jdDDGaJBjPS9w9vwRbm6eoyyXePw4w8md15BmI6ytcF3KFkUxh5ItmrakESYXyAa5j3HapuqT36h1orlZQWqaNrj75e23Xuqm3HvWG7JZDFjgO1dmOQSckw5ObG1uTri9vl0jjEOsb9fQUhGWaZmZzbBDHsfe/arpOsyriljtdYt6XaEpG4hQfFHPqTe63G3GsrLSCdP3tjskMtI2OcwdjJGjjTOJ4ILw/dHeCJETrNsNPGEBGgvzaGMQRiHyyQDFfI3l1RI355fIhyNkwxS353MsLheY3ZmhdUHXVlLlAquPHpJ3L8neuGXVbvESOAMPGIot0lnZtr6R6BQ1Glrr3dEpNn1DnMbeq9YogiCoS4yIIDUgzaLrQJUxKNcVivkanbUHLFelD/6VrYQc57i2EFHVdZiXJVZ1jbJu/Ii6azq/dklNFnev3b2z4YhYPN2RzAD4Dd79f5JjmF3S119wfGVM8eJzYhMF1v+UcYZ8lKFKaiwHCWJBrKmlEJb4Qjfh4vwabd3ZEVaHz/7kM6xu1zDKYP/uPh68/QDfeOOhp+lerVb4/v/xA1w8OsfyegXZtfjuP/5NHD04opekaZBZ+7RPP3tG/nfTAU72aFGclyVVedajzwmLXS7j9mPNGIWe/vLf+iX86P/+MZZXSyipkI9zpMMU/dQmP2+9ULrv0diOeDoaIEsTcMbwW7/72+T+b6nLy7JCniYYpykaSWLVYZIQFmjp8yR85dT9FQWyOILpgVVdY28wQBZFaGSHupPehKBsW2Ia1jWU1jTO/MKmSGNTHhL7loN5ED8dpDsm22FEYxA3Pn3t3dcwm5J9Xd/30NZP8kf/+oc4f/EEy+UVnj+PIGWHopjj4cN30PcGQcDQNIWt5jgmkyOc3qeoojiJsLicY//0ACIiwX6CjfVfuSpJ31g2NBGwGGnXdOix+8K6e9lY9xXHLnOVOY35FLqmw9WTS/R9j5PXTzDeHyOf5N6+TiuD/+G//u/x0Uc/RNOUmM2OMZud4PTBQ5AJwxRd0+Hm+TW6rkPblCjKBcpygZOTN5APyWdUK4O//tu/jmJR4vLJJW5e3Fj8TVhZhcLtepPNqCQ5MKlO7ejKentujkThOixmN0nnsyvs4qIcjhKH+KXf+Cak1r6I+94/+x7OPj3D8nqJyyeXuD67QFUusZifY7G8wmR8gLJa4ejoAdLpMfpeIx+OvJWXG/tSHt/Aj7ONobHkYDJAtSqxXhSQnfRdi+yIWe7CqgEa5UtbbCqlwBXFEQ2mA5JEhcRojIXw5I3avi95HEMda/z6b/0arl/c4Pf+p/8NdV1gMjnAZHaI0WyIV77xkIhJQYC6aFDM1yiWJUp7P773z77nx7B932OQJBCWxR3awjW03sudom5Ga0PMeBsKbixz/eUNnzSpIWS7QlNyL+B35gmccwScWOKN7TLTKMIky1DuV17mc9xK/OmPv4+uo3Fplg0xnR7ja7/0Nrk7bZmmdzWZFwynAwzzjCZF2njXLKcKMD1geuPXrtKaNpRti1ZKSNt9ujzRlztF6gKpeXGZk2kSI7Zs8EFM656TqFVdR+tZTH6/t+e3+ODffoCzR8+wXt1iMj3C5GCKbJji0/uHmB5NIUJuU3yItV8uCswvSJbxytuvkJPUlhwjsARE93urtvNd76qynsDCFlU1Yb0vd/f/ruMrbYpBADBOc3IjycOwKRssrpZIBwlFjFjHi+lkRBe+k5ZBqME4gwgFwijEi09e4OLxGcpqibNHU8wvyN+SsQABZ54Z2PegRSydYf9kD6G1UHIY5DTP0R/1VFVdzDHKKYpEG0NCfBZANcQ43TbG3a7OuaAurrNjpdXtmrqlyzm44KjSFnFEuhvnmOD0mOcL0k21nUQchZjmZK48zjKM0xQ3W0wwYQzSKEISRZ4QNEgSnC8W6JRCaAXYkRAYZyme3c5J+2PZVGpLyEv2alRFdxZ3Y5ztdh0g8Nx5etLLTJW5E5o7DYzsJFl4dZSQcXK4Z0e3BkVDi92du4f41u98G29dvIXLJ5f46Ecfo67XGI32cH7+GYbDGbSSGAynSJMhRBj5rEDGOcACdDaKK85i8s3kFIPEhWXcGZr/+07LvnzBn6MeMsaA9ZYVKZgPqDVKo3VC6iTCnddOMD0i9x5Xvfc9EEchvvV3/wbif53h2bMP0TQlLi8f+6R5Z5ZeVSssFhekjQ1j3L//NrJBTokqzEp+bLeWjTJECU02nKMNQOJ1BeU9TI3pdzZEgHD7xsYjqU5CqQBhFALaQNvKH9hsqn1Po+s4jX2V3IPkJtkwwyvffMVLdebnc7z3+z/B1dkZRBhjPN5H3kxwfPc+jNZgtoMDCEMiB54B2qr1xQYTHLDvldG0WW8b7BuLDb682QMkgHedLeccoXIuU2JT1fcGTSetuXzkHVf2RkM0ZYPD+xxdV2N+e4bF4hLDmzOkKRV30+OZz4lc364R5wn2TvZw/637mB5O/IbnJB+kV9x0FQB2GKhK0UjfKOMlNzQG/6IRPGHf9u91kpIbbEiBsV2hWzsiITw8FKUxMk2eymEU4pe//V2cPXqGtq1hjEZVrdDV9Ezv393HyWsnSLIYwXSA2EI2ynIpHJ7ncLvt65+GIVZN7a3fGrshUlIN3RcaM249i6AQCPdcylZuwpYNYe7KGESCNkRpJXaCcWK3TnIopbC8WuDZMwqBv7p6ivzFBGk6wJv6Xf+sA/CB18kgxWESIUrI6Dyya29qnwd3zuRm05NW3PJG3L3xHaLenN/Pe3zFkGG7KRqqQLqagllvz2+Rj3IMlUEbkj+eW9TapvMsPIC6MiaYjfoIwblAUczx9APj8RJmLaTyUY7ZyYwuznSAfJDt0G87a/l2OBohQICb81ss1gUmwwFhmsyOOvrex7hsg9/bx+GDI0ShQDZM7UPQW3mGpmiZUY44Cr17iGvhb21Wm+9U4hhpGCKLY0wyomEvyhLLuvbSEWPohTd9j0hwVDbaqrK+hO5mjzNiQTqSEWBdKMzG3ACAx9scvrRzw+zhnC5MZ8B5b930e+8I45x84jzBdDTw5BNtzcbdZ71ztIeDgymOX70DgAgn12cXaNsao9E+OOfIBuSNqiVpFEOLgTnRelu1noDSm013G0ZkoAy7iLuYJ2M02m4jBKdTowgaIhEZe+4G0tCGI22X2Pc9Xv/lN7B/MEXVtFbQC08qMtrg1XceIhtm+MnvDXH2+AkAYL64wJMn70OICLPZMYr1HGk6RJaNkKYDC/CTN6cbZ9b2BR/tjRCnMT74t5TByUPuN0ZK5thEcH3Zs8hDu6BtFSxugXUbYRCQUUAch94su2gbf+5GacI2IwHDOWSnMD2e4u6b9zzRKRultOHZuB2H5wYsoER2zslbcgsfdMza7efK6RV5KNCtK7sRvDyu6r3Y3+GOTRnYdYD0aY6sF3L4zFFnyB4Jkl+sywq/8p3v4vH7n+Hi4jG0VqjrAh//9M9wdH2fpleC48FbD5BPcg8BOAJX35NIvJWUFuLeZcfuDgJYsg5H43HtzcgboIJk+2jrDi+sxSAsqUO2lrTVKWKBCg5sjTWVpk2SBQEFmmcJsnGOd//muzh9eor17dpeL7LWlB2Z8Y/3R2T/1hJ+y8MNoQYApDGwyVD0TlCqGVpFNmjO5s6NeVVFBXVvzBdH3tsQkzLgIWGMob1uzvlq213LpcloYzCeDu2E5hTj0QEAoGkqNE1JJMRPHqOr71BUVyiQjTKMbQYoFwzT4xmyYerPzfm2OkgJFjsG4IsCR2ByXATX6bp79/McX3F8uh23BLJFkxrVsrKi5d67pgO0yGlFDvFJZCNQrJh+vE9WYOk69c7yZ4/ObFZjhsRm/82OZxTqusVYq8oasJM/h2UejkaIhMD58yuSesSbn2ecQ1mQ2F2cnTFB3yOMQgySBNPjGcT7T/1/q9cVuKAqVWuNvcGAHEMsAUi2HenGIuFHCo7tRckTPSZ57iUnAFU5UUiLjemBaZ577z9lDAo7Go44xzjLbEec0Y3fsosTtmvvtfHMrnaLLt7DMVAVEIpNhiTfnLdLn3Dkh1FOvq9F06KyZB/nqGGM2WGpPfjGK2RLxQMIEWN2Z2bvO4VQt2VDHSIIc+ysqFvZ6J7AWdrFhMd4pqbSvqunTkT4kdL24bpDZ1YNUMRyaONznPPJZDbypg32XaLztcbEgnGcvnqH7u8ne3j+EWn0qnqN1eoaTVNhND5AHGcYjIe0IVnhuCcbGIO2bHx3GAQBJtYQIoxDb6LsUszd+Rn18liYcGAtiTxDF4G6adctumdMCI4wJgaf0trjbI5M5dJO6PcQo/LBWw8QW91dta4RMOYXSDdad91tGAkiPynjJwne8s1u7G4jZSxAYzcCxxjeOS87itPWLD/gKZSi+2d0D4nNRhMJ7jviRkpPlkvCENFoiF/5O7+CB289wOOfPcbZp2coigWKYo6u6zDcG2EwGeD44dFOYgwXpKMklncH2Ng1baSXfdFCa8XhzjnFbLpEZd/flzVvfW9w9vkzvPbOLxBWbK9NV3cQgoPbqUho7QNjwON5ZqvzDLnA5GCCwXTg8X7CJ41nTAeWTescc7g1L3EjYMckddpEY2zB2G9cgsq2pY3MEs8clqjUl8sWtDIwmpiesP9O3xPRMOTCb47O0QawQnwhMJmNECcRfv3f+w4uHl9ifnmLpi5geo3l8gphSOvHYDrE3a/d9cUfD4VP82k76V2/XCe//dVtjPSquE1R+0Qaukd/ZZsiPLXc/Y717Rr5hAyb17cr5JMB0kEKo4wH5LlgWN2svGsGDzlmx1MkeYLr59d+U+zqDpPDCU5eP0E6SLF/PEMex/5FHaUp5mWJaExVZdtJfLJ4gaunVwCAg3sHnpDQce0XJy0VVCe9JZXWu24bjDMwQUnk+ZhSB8oV4RHG2rZloKR5VxHNyxKr6xWunl5R4OWywoVL+9AGXd2hqRrv/BFGG3d8bl3lkzzZJKPvjzDJMrSKBMu3ZYlXDw+9w08sQqwbepilMV48q3vj8Tet9I7/J2w3IjtBMVBbbFGjN5R6xhiyUeblLDfrAq318qylPQcWkDVcEiFLYhyMR5gOctx7cIzX/9rrqNY1nn7wFMvrpbXKI2eUtiY9armsEEYCXStx++IG7WRgw5wZXauy8YQGACgXBUk0OoW2rdDUL9nXGaoER6NNujwAryGLM9JHxlmMJx8/Q7WsCEsdpYhTSnhxz4djHn79G6/h1TcfoJES3/+fv49ivkZgR/7uZ/Nx7n+/VoZYh1ULozTOHp170fvB3X0cvXJMuJ9UO90FF9x3zAC+MGbsWglRtT4thIN5hq17XgFYxmyFpmp8goWT2TBBjOiAM/KczGJixoYC975+3y8ST99/gvnFwmJmpC1zuDJA4/fLJ5feg9blUGqlsJ4XHo/yNm9Koa0bcC52MEU3NnVazbZqkeQJ6lVNCRNpDMH6HdwNADql/ULPggCdMTg+mOHkcA9fe+c17/BzezUnZrQdSQ+nA1rMDU2gjO7BOBWODlMLrItTLDYmDc5DuZXSy5Gc9Mwl8bzsERoEAZSSXjLDeIC+p9QXpTRM0dAEjDFUdYPKwhHaFmpRQi40hgGDlCRpYso9GeZsvrBFBb0baRSRdtKei/MQde5TABlQxFbvXbbGd4hOJictf4C0zHZKYPrtvoeKHuuGFEYCbdkgzhNPSAqCEIKROYZz3XIbrlMMCM4xnQzxt3/nO1hWFUnjliV6Y3ysXDJIyX3pgAzojWWduwkSt4YtbjqYxZG3BXXXfzvNBiBHHFoTN4XYz3t8xU2R7H4CxmAkVfpt3WK0P7IvUWBTjzsw2wVoRQ9WuaCMQB4KcNuqDGzAqlLEkMxGFBKZDVPwUGCa59ZUlqolF8pbWwErFwzLqyU++fEnpO3RBm/84mubKoJzNG1n58rGEx6qZbVjhaQ6RUxaxrzIte/tiNESDaKYhObu5qdRhBcWzF/drKgjVgrlovTU8meffo7942OcvHaCeTmHUgq51Wd+8IOf4o13v4YkTyiINo0wGA+QDhLkkwG5pQwGuDOZIAnhXVqkMeB2/NKqDejvwfJ2W7xPX52Qd1eYu6l2jaNAWxaaURtikmxJ8E+u/bSJKa1xuViiXle+8+Yhx96pDdK9XaNatf53hD5nj0TpKolssCptnlwwr9kzSnsmau9GunGGuim+9InUUgMhECeRH9FTXiJhNEYZnH92jmK+xvR45rtjt7FwwbEuK4QRufMYTQvL67/0OpZXS9ye3fhRreoU6nVlu+rQ2hRSBxIEAW6e34AJhqvzp9DyTRw/vOM3w94Yr83USltTBcvI7LeINk7G1Hbo+xAiCj3mCuyOyJVU3sLNaOPTNwLGkFnP2dXNCut5gWpFG9R2/Fk2ynDx+QWdhzaQUkJYBneURGTWb4k8zJpeK6sRdEQm7QXt5LRjGroWUjYIw2jrvLbIQ/bh5JwE/yFCb6jhFuraudNYSUQckeuStO5SgjNMwgxSa0yyzDrQUChyYJxZtX2/Lc5qdI9WS/9nZ6zufsZlnSpNizJ17Mrjo4zbEeVL4n1XYKjWdtNR7yc37ny6pvMLthH0jHnSn2VYaqVR9iWc/7KIBMJQIEtib8WnOiqaKQ2I8MnKJkhoO73qTY9JnnnrOgDe69cHE6gN0Utar2FjemwLuP3UQjCEkYDTw2o7mnfn3Vssc3MdadOMQwFterRSeZcizhjSgyliIXAzzHwwt+MOuINM1kNrKEDPTmALABc1qGwRs20SQ6PgDRzkrrP7889zfOVOMWDMboyBx2aiJPIvW1PUdIIssLliGnVR4/LJJaI0xuRgjCRPfMZVPsoQcMI44izGeDL0LDCnW3Qz8LKo0Fl3EOeO8fhnj327raVG20nMhgNf9bUVsY8ctugEw9ukm6Zq8eT9Jzh65QhLs7Rdi/IVoVuouOCY5AgXgHgAACAASURBVLkHzpNBihcfv4BsO6xWt+i6BnGc4Ru/8S6mh1MsLua48+odfOe3fwOffvgEIhJ47fV76PseF59f4Nt/91v4+L1P8elPPqXP2XRY3F5hMjvA299+m0ayQmA2GFiHIJChb9d5fMxJG0gbZvyCB8COCmnExXnkCwO3ODk8SHXSswpd1V/MC4v7kNja6fNuz+feMSOMQ9Tr2rPsnHNLU9WQsoVSHRjjyLIRaetscZMOUggbJDyY5HbDsUbuL4ls+75HWS5QVS8bnW+kNKElKTBsuij3VWtNm4bpcfH4AouLBcI4xMG9A8++Lea7G64IuTUJp2pzeblA29b+ensXly3sbLG4wOef/xk4Fzg8vA8evu0LDFccMhZAbeM0dkPc3hQB2ui5xeWdCw+lFVB1zywr1Nixpmwl6nVFutAVCd/jLMb8YoHrswtI2SGKYjAmIESI1eoaSiloLdE0pf+9UjaoqjW6rkGejzEa7SPLhtBaY317CKPJBzQP6J65DsJhX64gY1ZepdTWKL/vAYu1RXEIRAKMb6Q5vem968t2VW+URlO2kHkMmcV+nA84w3wiyRyORliUdC6ORRlYkhpnjCzErMSK3Hboc+SDzEtAqq5Da6dW2sponCOO7hWNRvse1XoX36bPb7wWsmtapCqx76DdSNtN+LDzT23KBpePL8hflDFfuIQxdc7uGZ4cjFGta39dinkBZtdXl8/oLPicAQAADEzibdycB7PrLKmTsgQb7SZGwRc7RVvwEbGqRxhTUSbtdMZttgB8kpA2/dZ4M0ArjdcjuvsySikBZC0IcnBrUhgKGMc/CQKYrc2ykdbMf6sLbbeelR67aweRpIifoP+c0fCXHX+p8ak7AsYobDQIfDI9YLssQYuewzTOP7+wIwQKrGyr1o4TianmFmbnjqClQrEofSWhlUZbNljdrCA76sjamqJ+3v3NX/QaGMdidB2l07oBgLbWX9vhqABhox//6GPMzylPr1gUZMelKKFdSe03B6dXnOY5hntDfPCzP8LHH/8IZbnEycnr+N5v/VM8/MYr2L+7D9l22L+7j++8+SaOx2OsmwbfuHsXcRjiT7/7Dt6+e9eH8z7/+Dn+8Pf+L5ydfYr9/bt4+9tvw1jpicuBY8HGD9bhoM79pLMLY2pDe93h3Gq0NjD1pkNQUnm8AUFAQnNLcKqWpd1A5psRR57g+sU1VqsbaC0RxymGwz1I2VjgvEZVrfyIR6oOVbVE19ZI0iGSJEeS0OhxNNqDbO9h/+4B0kGKYl74EYcbn9LCZB1T2gpVtZuH1hsSDGutwQ2lztOztXHYMIZeitnxFG3d4vLxJZ4+/QDvv/99jMf7uHf3TUxnd6C1gpQtkiSH1gphGKGuC7KK61rUTQHZtQijGLJrib2rNeKEsOLPPnsP5+ef4ZVXvonp5Aind9/A0YMjjwupTu4kK2zjG13X7EoyrK7SETzQ7v4dt6gwThFosIXfel7gox99jIuLzyElsTurao3Ly8dWanIHsmvsZ+ao6wLr9Q2iMKEuymiU5RLGaBijkWUjDAZTJEmOYj3H3XtvYmChEWkF0bKVm67VbiZMMEABUiroLXcOY+VRLuoJgHc6YYxBKtJruvG3trhz10hcP7/2Qb/MQjGuOHE64IN7B3jl8ADKGFzMC9y+uAVAOlERCjLztt0sGVfU4JyhmY0gTsgQ29m4OYbltiaRsHFtQ6K/uMAyLij2zG40bd2CsV1SX1d3dp0kvHFxMccf/8EPMBxNbVdEDcZgOsDEZhYqqbC4XPhO06etaO2NBJJBap2dCC7pGonTXzjF0YMjpFa25rpLTyjiDP2WBGODk+5qZmnt3Kwp7pq0deux0KbtdmL9pFQ++Nc51mwb1/d9D6kUBQ+HIYowRG3fD84YRWvZLpvW7A6cJ1itCj8NSuIICbCjSdw+3DTGefD+lRJtNkQFupBERZcII2LBOb9KIl9wZHnq8+o+fP8HOHv+GR68+jXEaezT3UUUeq2V0VviWPu1WJB+TYQC12cXCENKcB/vj/HN734Tp/t7ADYxU24EUjXtDpbjAOttbM0dt1eXKBYrtF0NYxRee/vr3kqqa2gsE2cNiqbxWqDT/T0cHT1EVa3x7NmHqCqKSPnj3/sJRrOhT0//4MUL3BQFzi5vMEwSzKsKj3/2GP/jssTB3X2oTmF2PMPrv/Au3vnlb+Hg3gHe+rU3cTqbeQqyFxVbQg6NZuizS2vK/GWm2fRQhwgChcA+YEZv7OC8T6d9iVUnUa1rPPqTR/j00z/G7c0LdLLFcDDF7fwc8/m5XyzjOEUYJn5TadsKxmhwLiBlCyk7GKOQJANk2QhJkkPKBl1XIwwpZdt1F13TkTjYEmRcZ6V1j/V6jjBMds7NWIp4lEYbxl+nEMYRWMT8z/BQYDAdkqDdJlMcHt7HZ5+9h+cvPkGajRCGMZTqkA/voFyvUKznGI6INHRz/QLT2TGGwxkW8wv0fY8sHeLDj36AX/3V/xBtW6FtKxwc3Mfbb38b04N9HD44xMG9Az92axctkUnsCLa3ZBXKCa12Fk5ju8sgIHMFIyzhw0ZMOc0iQFpM0hJqdE2Hs7NPcH31DG3X4Pr6GTjnKMslsmxE1P6ugVSdJy4VxRxHR69QgRXGyLIx0pQgDSEicE7d/XA4w2AwQZRQAorsFHVFtnN1m0RvR6Kqcxl5W96nvcWmYhrLsobRO59sbPpUpyzWGEN1CuWqxPJygT/8V/8fRpMZJgckqWnKBvk4J6hlnEEIgWcfPcOf2mmEey6IUbvxZw2CAJwzj1WLkOPgviTGqoVx6JyI2evwSYAYuaajkf7L75k7mqpGV6eE31qhv2wlkiyGZpsQBLJx65EOM6TZEJ01SI+SeIdQCNB0yn1Wxmktcput28iqZYXCGDtdoA28XJTojjq/GTrD+LB3zGe1Sb6wn0frDVcEcI42m8LGjfAde7ouaqg4pNG7e34tHlgXNQVRS3J1mhcrzEEjfzcFidOYRsOWH9A1HUq6UTv4PUASC6U0ZNEQVyXqbdxdYIPpaTLY28KAimbtiYRu9P3zHH+p8Sks0cbYsebT958QyeVwgiiNUC0r3JzdUlUoSLPy3X/8Xdz7k/toihpdK/HTH/8RGKOq8c7pqxBCYO90D9OjKbmjhNyHlE6PZ1jdrHD6xinCiFhJSZ5gOMxxOKIUd8EZqjZAHsfI4ggfn1+Qk4LN0ur7HqvbNRaXC5y8fvKl56b0ZnSyvFpidmeGKKGNsVgW9P3XK0zyHOM0xd5ggH/53/xnKNsWxbpCuSwRpZFPYh8kNO45GA2RxRHu7c3AAoaj8Rj//D//jz1p52q1gul7/L2//5ueZeXYsy6epeo6LOsai7LEumnsRkiWW4Q/UXTV408+3rlX1y9uMD2cIsgTiIjBmB7L66W9jjEYt8J9uXEiSfIE7/7Nd/Gtv/cbGB+M0dmw35cjn6KYtHjOhNo5sNQ2qqVclNYdSKJYlJSOsU9yBbCAUts7iWJe0Agu5GjLhsYdUqFrW4gwwtXlY+SDyc69MtrQebiXslO+iEmymNh5VtuYT3IEQYBsmOH41Tv4lX//V1Gt/wFWV0vfIVfrCvkoR7WusLiYA4BnkiZJRgJ9LcG4QJYN8e67f4vCW9MBvvvdf4IwDnHvzXtkPWW7dREJXD+72sFLHfFGthJKtZjfnqPftvCTCtfPrjA+nGyE+lGPYkHRRWEUggfOHo2jNz3iNMb+6T7+4e/+pxjtjRAEwHpRoC2bnWiqJE8wnA0pcWNVeZlOvaaxXddKVMuKjMO1hgvkGx2MkQ0zcMH82K9eVV5OUxeNL2rLNaU9KKXw4sUn/nf3fY+rc8rXbOvWS1Ro9C0Q54mv6APOMJwNfcd0cO+AiHqtJKa19beU7SYhZf90H9WqpPzH/RHKRYHQxTdZir8j3kzTGKP9kYduYnuNXJHBBEe1JAKT+5yykVBK4ebs9guBAnR+BnW1xupGYBbvoV7XWFzMkY1yJFmMZJD6exGlMfIB8SdOf+EUi4sFikVB19O+Y8PpAOkw804yWmqCU6IQ0vI23CTFFSU8FEiyBAPLi3BOL07EPhoNIJVCVdaEBdtzM5YZ7GQO/pywycl0U0FXkDlil5NdGYs9l4sSt+e3+Nn3f4r9k33wUHjSXJxQNqfzBC4XJcl/rK0kD7ktiDVkQxaK7nvORYe0s0Psn+7jzmt3sH8wJTcw+65yTs+o0c4M/uffDN3xl2Sf2pFC6IgNBut5gSiNkQ4SxFlM1cu8QDpIMcozTI9neMWaiLsK02WwhUnoGVjuIsR5gjiNMTvZw+nRPuZliSyO0PfUMrOANkAXGAqA/jsI2HVUZ600gjDwzEytNMSXJEwz6/juqubl/BayvetlArDVVdNJdFIC6SbFQnBO0gRrLRZHIdIowihNkdlATmffRpmMHMMksZFaDJ2NgBpnmQeoHa7KWYAePRmpty2WdYWutsw5q6PUiggsspMoivnm5oZEqXfV7qZLCUi7ZuUkzlHDWMwRgPfQDAKgKQkrrixeGdmU9dOv3UcShljWFW7P59T5VJRC4jBmV/FSocCQDjNkw8xX4+53tlXriyzvmiJClOWS7mm7i+M4fEZL5UkA6Mk1xbEoRSS8XMUxfsM4RBQKyCjEcDZEaXGco9kRZcvZgqlcFFhcLfHqL74GJhiqZYU76zswSqMuGswv5r7idmkAUUJmBa6CLxel18c5cT8AO2IzCAKOql69FDIM1EWDfEL/rupo3M8FA5MkhWCc+TfXpYCIKEQ+yT1G2/fA6mqJ9bzw2PjqZuVHg45tKm2Cg5sQuE07iil1xOUqRklkZRucihhDUqdiWVrIYqOXjaIUt7ePUJabkbdjaPbGeEF8va6pmEojRAmZcvvsRh4g5CHiKMRsNsbtOPf2ga6bCoIAo4Mx9scj1BYzazsJIbi3LnNrjEsUCYIA2ShFNspxMB6h6jq/cXhC2FZ36W3rtLb45pd3ib0xUFqS61HVkkG61JQHmidIcuf52/nPH4Xk/+qNTyqyCGSMYT0vvI9uOkjofWgZWs4tftv5UXRix9ChoDzbOCRSkjs3ZU0WHGmp753MYvM/2iRf0s16xnDtWdhO580sD0R2VicYhQTtKI1yUeLq6ikuLz6HCOlcJ5MDdE1LuvW6tT9P+LgA4cubjZH+vdFeuJPow3mA2Z09+/sDL0FxEhi3rxCj1gUJkOew7v6qMMV+85C4aB63ONXrGqtreunCOES5KFEuCoz2RpBjjfEggzmiv9s2nc35Ux4fcWPTbJj5BY0LTgbSnOFkOvWsMbIwgt8QO6XQqh6xCHG5WiGNIgrktb6SqpMolxRWOzkc+xu+fbixX98bCBGhqihVoZgXm1TytkNZ1Ohm2jtjxF6XE6BhDGVRQ/fGB90mIUkpIuta30plE0BCAOQIIaz3I0Dif8ekohl8b30TyeC4a8k/kzR+1HFQNbeJ93EH4wyjvZEFzK3BsSIJB9PbLz51aUrSphkmIQbjfEcXlFgJQ7EsqSozBu/9mz/DYJyDCRrXuHFtU7aWrGPJMUFg5SeBLx5oYwWqtvIJ89KemwP3lWpR12vEcfYF2QJs5+dwKqeJJT2f9lg0t9dWxCE4Jxad4FR9R4hp87hZoQ021X+YhDi8s0/evGkMEXJcA17WIDvlcdl8nHvcXITCk7nc+A8gLMlZhW2eN2NHzO1udd733vjAjVFd4RMEEpqRC5HPG7XvY5hstLxhRBja6GBMHY9NB9FK48f/5493RnPSLlLuOaDNPbTifWY1p9x/Nmd15sypXWRP3wO6UwgCwiuvr5/Rub10dI30haZjS6+uV2CMjBCcGT3nHDxk3vBiNB5AK43l5QLlsvJm4k3ZoJpWxAzPaOzaAj7f0U1AeCiQ5MKTU4TVQjqrSPoZ7t1pvDG9ZXc7VrTbRF4+GBfg6NF1lGYSxhSYwMY5ymVBUg1G0VGyk2Bx4CPxoiTCYJwTDozK+ud2Vrrg7hWZpjt7RsfjCOMIoyz141F3vUIhEBuDHuQfG1njEb0lD/Kbon23yPx7t1Ok54KYr2EkfFHlmONQllsSCWtSwBAmIY5eOcT6do1kkEJLjeFsSNe3oXF1lIQwmjYvozUZP9Sd39SMIYJZXTT+OQmCAAf3DjxnILY6RsdF4ILWMG3d1pxeVn2FDRH4S3SK21IGN35xAPDiitxdslEG2Xaoiwbr2zUmh2PM8hxitjEIdw4gXHCvjWJWpExVKbmcU6yUwSAWNkvQMg/djVTK62Y6pb0Fm1uIXMTN7dkNeMgxPZ6R3dRL5+U2Ra0VGOMIwwht3SIsN4tN10isb1dY7k89rphEkXXdsF1zbpCElIEWb8lJVEDpHbGgLsttNj3Ih9Hhoc4E2f15WdcYJrHXa/X2IWZghNnZ6nU9L74Qfoq+x+kbp/jsTz4DAGRDWsijNPJu+9Lid84KDiApS5pR9BcHiYppjCMQpzHqNbGAF0+uduKnHDFAWe9Lx5qM09jLVDjnxD4ENUikBdV+LEfi/hZCxJCyw/n5I/pMjH/h3PJJjotHaztysoWLYIhZbNmZJDWJ4tBGS4XWTV9671AmSKPqqObVugL6HjfPb7yTDAA/vqNxtYSIBKW/WwzL2A5cKwME5LRTryui0W9JZYwx0NaNaLW69pT5rRMjowOb1OKkFX5EJnpLGGE7DEXnqvOyJiu0Xb1sJYp1gYsn55CyhdEKpte+WArDBGEYYxxP/KZFo0Rrlm2LDGMMymWJpqj972rrBmEYomlKS4BRmN+eI82GO2dmjPYdRm/IZtAxw53e2Y3A+570b0kce9OI4XQALjhunt94ljVhW40/V3eIkIwNyBwixGCSE97Mgx3nFm6hCWXxJ23fJ63IjMH9jrahuCbnyvPyYey6YYxGU9VWatX5QoqLCr3pESYheEg4G4tCXwAHtmAMbGfuGJOOVAjALviKtMLD1BpbMA/DiK01xdgNsemkj3VzKR8u8Hqbb+Hevx3ZVr/pwAgPDsFFQ4EGIb3bAdsYhCdZAhGFnrNx/eLGQxuOiBmlEYTF+V1B51IsJgcTj8M6uREPBT3/ynjtcWR1w+7e9FscCdlKr4fXmp4xlxP78x5f0eat3zhaANYyK/DfY4zh+tkVDu4dIIwjrG9XKJZEdw/eDJDFEbIoRqcUBuMcIuQoV1TJbleK25IJzun7rZLIotjrlKRWqNqOnGVaco4YZ2QD10jbPdlO7/nHz3DntRPceXgMEYW4enb1BUd4RyMXIoLWEkHAcPH4HG1FzMXx/hhcGNyez/EkibE8qJCEEQ5HI6zqGnEYIuQCeUyjUrchOjs3Yz0dq7aD1Nq6+nOvlVKajJxN3/sEeBYEiMIQ87LCxXKJZVl5Zx5X/S8vFySurlq0bb2zeZi+x2h/hGpFjvWD6ZAMzo3xnpWMB0iHGdSKyAmUu6ixuF157Z/qFHVWzm3Cknpunt9QGPN6BaUkuo60aXGcQogY2TBDGIdkBm4LC9lRBA8AT6xQkvxFqetoYYzBfH6Ojz76AeI42ynE/LNo/VH37x7gxacv0BQ10lEG2dFC4ghcnJPsRNuAXRrdiI1wXhnESYTCspkrqzu9enpl45TWiGKiko+mG4ea8T5NHFwFyzlh4MTKIxJJta69FaLRxL5UigTut7cvcHt7/iVvGRFXTt44xaM/+Qz1urJ4Jo2ZoziEiBwZid4/8kjdyBDc+blxIOPM4vAxGKOILCe0VxaLpS6AmI9xFkNYM3+jjJesuIq9XJQ7dol9T+NtpVo0jcLV1RPE8S4Luu9pUzy4dwDOGc4/v0Bd0Hg1G+eWOk+EveFsaJ8PiapuEEWhH4dyzihqzWoyG2se39UUYq0tEWZ2TPcqyRMiCFm2rtZU9HHGMC8r0tXZ56JcbFjQsqHgZtlIVKvSPy903l9YGG34OMB5iNXyCn3vSEga6TClTbZuMRjnkA2NxN243TG2uWAYTAd+HLjtnEP6O4M4T/x9FVumFb3tFAHKNC3QbmKh7GjWMViNMX7jcLCFVgarm9XOu+ausbBESSffCJMQ6SD1I/WulRhlFAmWJTGQUPwau0/EoK7uUC4oWUdJjWJe4OLxhT9nxi1umIR0b6zLUT7JkQ4ShEnkSU9ZEvus3kZ23ujB6SZlIzf7kiNF9T3KxcZI4i86/lKd4i6FvPctL/0ZyCcDLC7JKBtS4+bsBvt3972OJADhZK6L8FWww304bbBGaWR5ik4qtFuGuzQnJ7ZR3bTQUiGJI++R19og0LYhN450mJHLv9KI7Wz/5RGIMdrjigAQBAx1vUa0jLymDiDbt/Xtihb5nPz4XII1AG/0q41BaB0lWEApAIJxGyBscR0nX7BfldHoFLFLxxkZmzu8cVlXviMh70gyIZhfLNCUxNiTsgOCbYE0je6OHx7j8c8eo1gU3srL1dRaA0FBdl8BJ0zU4SeMMahig6H01h0kiOl+O1ci2c4sHrIZ34ZxZLEiun6uKnTFSFeTVsuRhIz1BFWaHvKrq6cILR6hlEQU7S6yYRLh8P4h2qrF8mqJYr72Xp+uqwEAROHOyMsVb85D1BgauYYJLU5RGiOMI8xO9ogJWaVe3O66J7fB03NjdgyxHUmInDS0t9FSUkFr6qDLcoH1+ha90dBGv4QpEg5y/MoRlldLXD29QsAYxgdjb6QtO8p9ZJpYetWaZAR+nGQ3L7fAedvFOML0eIbp8eazO+s9+9BvunjO0FsdJEAba+vGsHpjsNzWDYxR/ntlucD19bMvGXn3kF2DowdHaMoGo3WNq6dXkLYwos9DpCEnq3GCbjYd+E7bXart7h/ARnZlTTSSLAEXfKd7BGCzJzk6qcB44EexbnS3cfKRnhhVrWuM98cel/zCETjrPQ6lOiTpAFW1xl5w6Alo5bIAMEATcgTNBlcU0cZ+0WGELGI7DNMkjryjT9m2GCYJGikhtoppAN6IIBKC5GiW6dk1HUTIURfamz8YaybhHG3qdUXyup2UHYo2SxQFNWipKQqqqO35Mo/la72Jb+IsgNK9Z5nykCOfDMBDgbqoPY69vF76lJsgCLB3skeOYrbjJBggouYB2hf8cmsS0rSdz33VkhJYYHp0Vr8bBIGdGP5V6hS3tDv9F0om+HGqo2UHAXDz/AbNW9R+t4zGgo4JRh0hfQwRhTvVke5t8CRnW5sVXRSnZxEhR54m3kG96jpoSSJWR6w5fvWYYoLsQ8I59zjJ9qFUh743YEzAGAXGBNqmQTHnnr1olMZ6XtiHegQMgdg+hK2SGKc2486675BHKbybBGcB2NbG5bDJvmc+SDiJIkTeQJ1R4rbddFwuX7kqcf38ytu6jQ8n6N7bdRGBDRo9fniM9e2KhPerihIQrCsF4wyKMYjQ+mNaOrTsFLCuEOeJHysxwcnNSGsAESZHU4wPxuB28aqLGtIyVRljO+YC7rnp7IvoLLS2F0Q3Vry5eY7GOtjQv6N2GJoAMBjnuHP3EFeXt9g73UO1rlCuSuvFSlhSq0l8HSWR12AyRp0UD4U3DHcbJpEaaFNJB4kPqN2MR5nXwTLr0dprAw3qPnpjrB2YtHo27UfDtBApNE2J+fzC6yC/7D1SnQSCAPe/fh/L6yWKeYHhdOB1aMoWLM7ejtvxr2Prhc4I3PR+ozQRbTjT46m3fXN6ue3nyum6qMPdmKc7MwPZbbR8Dq8zxqCuVggYh5Rk8QYAWm+7K9E5Ht4/wMc//gTjgzEa2+ltG2n0hvyT27r1eC75WBqPG1HXQiNSYTd8JvIdlqn7++6+ba9bsu1IBtZSp7w98jdb91ArYjhnwxTZOEO9+nM8NPuewntVB85DaE1TE9e5lMuCEi2WBQWSW1szo4yHigD47jGyuY/OuSfkAmkYolUKe4OBh1YAeDzU5TOSFGbTHQYs2DFZcPestyxxAF7n6kwE3OEKnbZqqZjuJJoqQNK4AoWKKGdQHrAYRkrSfFp5iyuIvfF7HEJ1Cvkow+Rw4jNGm7JBOiAbwYCzjTTF9JCg99B5JbswhNbdN4shypZ0ojRF2YpoM2bX/vIvOL7apvgSSy6wuqlNh6FIA9V0OLh3gOcfP/eBm9W6ogXLSg5oV9+kO7iqKI0jD0AjS701UMgpWdmLTRGAcQeWxx5jXFYVimWJ5TVV2dOjKcb75KJTF8R2C4KXkRy3yVMeoPvKucDBvSM8/+yx/72DSU6kopsVomRDitHGYJxmHhd0rK9aSsS9gIhoQ3Qp36u6huDcivNp7BuLEKa3hsi2qzS9DRSW2ie5A8DiYoHb8zlUp7B/uo9smKEsF0jTXRyH20SSg3sHaEoivzgmHEAemUoq6wXaehyGmJIJ+r4mbVlIDDGje7AkBOPcy2dcl75el95lxrEZ3UPvkstpMdBe0B7YgqdpKkjZQcoWq9UNPZwiJHsoLtC9RNpwzN4wCq01YIbl9XKzyWq3YPeeHco48z6PLundsV+Zpk2GWzMDYSPK3KZZryvv+OP+fc3Yhp0MeGcebe2zKLLG4XHGk2uci4wx5otYKYhR6dxjTt84xdP3n5AkI3LFoyBfXVvVE7YYeAs5IcheywUSc86QDFMIITDKNh23MgbtgDZZZ7foGJD1qsJ6UVAXZXMQpQ19NUbDKMK0lep86sF0dgdXV67QULujfKPx8I1vIM5iyKZDOspIOrEsPWO4txiWc5tp6xbGhD50GYKmSUxwGo8z7hNkhklCYeW2e6JOiqFoWtK42ZGa1Mr7oMpW+gQMYj1T8dc1LWHmFwtESYS9k32sb1e4/9YDfPjDD5Fku1OLzZ0LYLbSa+68dgefvfeZ3VSI3Z0MOg9d+GcAzD+PWRJjlCYIEOyY70uzyUQcJAmkXfSloQABI20kXE8Wea5LdzZ1bpxorJuNtN+rViXW8wJNUePw/uHOEk/hDDm5VJWNN+h2Bii87mjdV2bHwk/HxhtnBDYhwyFGHAAAIABJREFUxAUxB4xZkk3i4ThHYnKj42yUUQFk02IYmP9KodPMb/zOV9h5EW/r3B1ssZ4X/t35eY6vyD51J2G8iJ/y7DY/0rYkDRjtjfDau6/h6ukVlldLfPqTT/HQBoEOMxpFHu5PKZC4rqCVQRpHGGepf9hHaYpQCLCArIMulkusmwaCccwGOQQj4k4rqXLq+x5nj85x/ugMzz56jjAKcfdrdynSBfBVxcvU442rA22IAJ1X05SYHb+D8f4YH/zwp6jLAn1/B1zUtsptMT4YYRAnPiFjmCTQ9uVeVhVuigLfuHsX4yyzo9Xem5x3SiGzMTaplW4QJtr5zfZiucSLy2ssr5c+v7KYF/jgj36GfDTEw3ceemNxRxLanBh94Zxh//QAjHM8//g5bp5fYzClzVNEwhcrxAImz1dn5B1ENPLYuzNDPqDrGAluiUThTqWqtEYchtCTjS+rbCXKZYnFJUlFZCutUJc2y3K9ohGO6tC2FQaDKVhAonbOQxpJyRaM7z6q2hicXd3AGIN8lOH41WNorVHM1z4dIs5iSIuHkgyENjlnzB5nMeJpDB6QzVds3ZkA+D9frlb+dyqj/TnVRY1qWaIuGp8IcvnkEsb0vqtvyhZaq61zm6Eo5jBGbQqwlyhfw+kI/+K/+Kf4X3/v+4jTGHdevQMuOD74w/cRxhGRewT3o0XqUGkD7GrqgNqazB18mHJELGLnI+wimugR6SEEp654G1Kw7M7ekEZSW9xXdspv7Frbcb5WmEyPIUTkN8g43sS8AUAUJfgv/6vfxR/99EP/uakzCKnDFQzVqiTdodLIRjnycUbjNc4RJqHFqCPsj4aIBYV4O5eUxLJI+56Ia7EQaJXC0YgmH4uqwvV6TROmEFgs1iiXRPJqK9oEHUZJ7lA1psdT5KMcg+kAf/b//hn+4X/0d/Dfnf+3OD5+FS8fPXpwHsJohY8//hH+k3/+L6CkwqvvPMTl40uPyxpjkA1T0i2GjsDGEacxhtMBbeidpNQL9Ai5IIasoU3dnW8oiHgYMrbZILVGWTek8W2o++9sweE2Nhfy3BS0hjmG6Okbp5aUtXVO1nDh+OERzh9doC5q5KMcYRLRdco7zxlQnSToy+qf3aQFSvtJH7OpLpxTo+PeMWU0sijG3Nr0ucLGZ+IC3lgkSKgrdYQaV8AEQYBeG8/AN4ZySV0Qwk6W7l9wfOXxKem+sPNh3YcACGgWQviooNHeiKyKLha4GF4gSiLM84JIEIxhkueIQ4HO2UVZrCcO6WKJngNBYPV9GwlEAIopCTThi2XbopFkCXX5+BKMM+yd7iEdJNYVgpiGMF8MCXWH1tsOHISBBLZrOHl4D08/eYRqWdkgU9pYl1crdCOJYZ4hQABtn6qybSE4xyBJkMexZdPZmCrOPTuVBQFuCnph0siGkvaUlk2b6hqLSxqhdU2HYr7GxeeX6GFw8sYJ8nHmyQGcf8ntDMgujQlK5ZgeTXHx6JzGE0FA3ZodmTqj5/HBiJxJlEZv/ShXNyuABcizFH1PowseEPOtsx28y15spPQgvXsZtTLoXJKCne9Tpa5gjIaUHYSIIEREjhZw1GyNgPGdCpyeE21dhmLCprMYg3GOxcWcJhc9R9BKRAAxJS3hgTFiPJpIkMBfcIzHIwjOIezG4TBhl7entMYoTSlfkhn/gjk9pXTjUvtOOM1Z19WWLi7p/Laq1SBwZDWFbWut4TDDOMu8vpRxhnRAaRdVYTWBjKFj9O+FtoAZTAaeQewSKBxr0Y07VURSImVIJL+DDdoOu7D6OGfi31giBkCxa8TSldBGQcmO3I6GM4//hmEMzsTOhggAw9kQJ5MJGut0Qmn1hNVXa5s+b80I1ltetDQa7uiz2k69sxOkbWwJ2CymALydGIIAddehkZZYIin1olpXfmSqJDkClavK411aadqEkw1ZqZESb37zl/H5Rx984R0DaBNZrW8xmRzgW3/7V/AH/8u/AUBEoqZqwSx26TgUbozKFRWywpqd9H0PYUPHsxhopHOkoWxEwTga2aFTmqRnxlCcXSe3bPIMnF5PS+p+3YhcK4PCGmsEjGG8P/aF8cuH1hrD2Qh10eD2/NaOORMPmbhnI3LxaHZ8SaSZ7fg3jjSOfGcv7AQwCSlAOI9jq92md8j5XiOkNbNTCkHiXIqUt0HsWullM+6/dS2xy7tWYnWzwt03Tr0e+ec5vnLIsH3O/LENpkdJjHyUe5o3tzEqo70RltdLnD86R5zSbPn+q6fUAiuFQZwAMXC5WvnqyB2dUt4/jxibwmcZRrZaKtsW66ZBsS4ta1Bj787MunsEFuwVUOvaVxS7R0C41UukoTjO/PcGkxzD4QTzmyuMzR7CSGB+McfN2Q3GcoxeG2R56m3gyrYFZwGSMPJjX/cABEGAQZJ4P0ClNaq+R2ft6YqmgTYG1+s1bs/nWFwtsLiYY3G5xM3ZFW5uX+CdX/s1zI6n6A0tzkxwu6nsEgvIJ9FAuI1jOoCIQjsOobGbW5TcaPD2fI7hbOgrzCRPyFprMkBZEQ6RJjGqjqyslMV72qpFZz0mjdZYXa9srFGPYl6gWBb+2tbrCkp20JqYk4wxm1c4wGi0Tww+o8HDmDrgL+kUpRVyk541RTbOSa5jDbXdQh/YjsfpJLVUXhpQ6wr9aAipFEQU7eA1VduBswCcCbRK+qQSJRU62zX1fU+m6Jbd6ozqtR3j/P/svXeUZuld3/m5Obw5VA6de6a7pydKM5phNIoIJMRKAoGE4QCSgLVBRgt7AMnm+HjX5hgHWNhd2wSzcAiCIyRABhFWSAilUWhNnp7OoXLVm/PNd/947r31VvdIR7Prc2zP2ftPV1VXve/73PuEX/iGMAwyg2RJkhL9WhXfF4tUcGP3x2XpOr3xeF+0PVFvKZTz7Kz3cUYaVsEmjgTlI8qZKIpCc7NJdaEq+owJ2T+O4+xwNHMmmplo5YZRVjJN+3QpJWXQHogoO8kinERhKPACxkORHfqBRxQG+IGXUEEUoihAUTRM00bV9NvQk4WcLbJU18+4oyDQoaZt0m/3yJfygIDg9xo9Aj/Mgh67YOMilHDMnImbGIynXn4C/bn/fqlHouP7tIZDHN/HCwImKWI1AWX4jjgkhR7qGHfkEEcxpdmyMPDV97Wdx57H63/g9fz+L9zk1isVhu90tnndm9/BmeVlPptIi+mJCELgiz5+4Iu1kbZDzJwI3MeJQXNczqGqKo4sJUj1fYeg9CDxw4Ch4yJLEsOJk40lPaQ8x0vmqSh9D3tDDFNPfh5mji2FakFUUZJK0cGeqYSRIGTLMyW8iQjKPcfDkKQD/NZUxSuza/IDJEnbV5nShKCJnWT36XpI22NBFCIhZdxoQ1XJGQYTz2PiCW1VXZbpT0RmSCwk3aIE0AbigE4l/HxXuPVIkvCefDFu6de7XrrM20EloKxsF4Uh9aU6a5euYudKrJ5aTXQ242xhO2OH9YvryIpMfbmOoQpCqaaqKFm0JVBUElLmmRVEEXoiiG1qMt3xiCCMhBmu69AeDRkPJnR2O8KTcaZMvlIgV7QP8MZUXRXSVdJBNfj0m+kDUXCq1MxYU5Sj8rTbu3Rae+TzFaIoZOfajqAWTFy8aoEwjpgrlvCDgCAZU3c0Qk3oFwCNwSCLXFM1niA5EAeOw9hzGTound0OjfUGe2t7bFxaZ29vjTD0se0i9WVRDg0jgdqUIYvWpx9WyvlKSzS+7VOZK9PabiMrAbqiZdGxNxGoODNnCNWSBIzjux52MceoKzL8MAhxTSEhNu4L9F5K4tYNLctcR/1xlnV0djtZ2dF3/Uzz0/c9JElG0wxMU3DJjt95lsbeTfr9lsgSE9DT9BUmfKZ03zUskSnqSXkl5byCABBFCbAkDIVyip/YIcVxnFlGSQVB50mrEWNP0GckKUWViq+FE4ib8TUH7X72/4IqI8AmvucSxeKZG7oQP6jVl+h0dxmNuiIrvuWSJYnOeN/aTFAsNEqzZdErbzfRDF2USx2fcX+Sydj1mj2svIWVtxh0hHBGv9XPKC+KpkBiEbRP4E76if6+A4Pv+Yz7Y/pNUToeD0f4vpugZ/3s6ygKsO0SqqrieS5WLs/y8h3s7opDY7rykjrcG6YugEQ5M/GLFI7rznBCt9WmXKtmfe1JUuIzcyajeEQ+0cIc90c4ikNcibPssJLLZfMC9k1oQXifpnqc7sTNhNrHvTFhGDLpjxkPJjiDCVEUU6gWKM2U0BLgXwoQcXyfO5YXuf91D/HJT/7Obc9uMOhQrS7ywLe9gmo+n6F5wyAiXynQWG+IQz4RFnCGkwwMFEVR1rMDoQAVRRGu7BLkQ+F/KEuZZVRaMo1igddINUdTJHdqSjxJDlohtBDhOW6mrGTmTAqVfGbLpCTYkOyZqRqrpw8J1ShTJ1fO4Tku4/4kE/zYF28ZC2pX0lf3PU3sP4qMlih0pQdgGiyl6l5qeiAmLaR0bIaq4ic89JS3mgLYUsH4aZ50GIYZcGrQHhDHMaV6KWsNfbPXSxYET/uIaU8kDANUVaW0WEdRFa5efZKHvuXNAjhiGwnoQHDg0mho89IGs6szFGvFhHQfULQs3CBAT0RtwzhmNJlkCjamriNLomyaRoTd8ZidTjfRq+yycWmDXDlHfbmOlbeyKDPlcsmyjJ/YjkRxfPvoknKdoqjIsoKumximLhR4dA27YJHPlen29ggCEfHu3DBwxg7lmXIG51YkGS9RU3A9HzWhemgJIGDgOERRnoHjCAX7tPwYRYKL6Pl0drt0dto0Npvs3djl+vVnhIh2dZ65xeUMOJKq8gsyvpKV5dJLVsXvkPSdUqWTYW+U2aoA2SIKekGGFguDMEE9KiIrsQyBxivmxIK2DQYdodnoJRB2zdD3+xhJudR3/cx8OPSFaXCqdiIORB09EXl3xy4nHjjO2rWTtJ/9LFEUZMi+W6+0TxHHMUoMRqLt2d5uZX0GWZYYJ6VNMxTozXw5TwjIqvidQauf8dgURaHvifJdCspJ5eh8TwA+hKtHmAEUUtUNL1GH8X2XOA5xvYngbeoWhpnDGY84cuY4nc4uOzvXMwTpdIQWxzFj1z1gZKuZom9TX6wxGQ0ZDYaYoSUcXIKAXrMnEKW+KIGlHMN+S1CHJn3BdQw8XwQyyUbpJ1mbn9iOpRzGMBBcMpHxip5oKvqeZr8AllVEU3V03cpc21dOHOLatXlarc3b+vZhJAjY05SWVAHLLuUE0rs3pDZfI4rE850MhUKMqipCQtE2CP0QuygoHymFxPMDQdRO6AaWKfr2jruvvZtaK2mmlskROiOHcW+UZfe5co7KXBkrb2XKSykHTlcULN3g3tfdc9u+ocgqo1GXhx77Vo6tLiJLCf0n7RkmVZpuo0OpXhac30jIM6ZcPt3Sp6zGwkQFRz4AJBGqX9a+qlUUZxqiwkdQVCvSg3KcVMe8iZfJXvquj5W3yJVyWEmvPbPJm5qLuqFzxytPcuErF9GT3qFVsOm3+oz6I0zbTJxNVAxLT6T/ZEb9cbJmknKqImNoGkoKgEr6ial5Y0rRS+dIKvLt+H5WTo0SAFbq/ZiCpLzk+ygU7RnP8YR2ry90lnOlHGEQZpS6b+Z6yeXTdEGI8gg4zoi7Hr6XX/rn/5hTpx7GMGxRItXEZmXaJoGuUqwWGHZH5CRR4vr8n3yBuUNzzB+ZyzROUz+1tMyVCoILZOs+vw3IUH69Ro/mZhN37GKXbBaPLgr91ZyZeQUqifpCegBounZbCXU6qk0tb/L5UvaeerIx1RZm0A2DXq/JeDxgMhmytQHFYh1NMzj76rvZtU3MnJG8bsSuIUipqXRdv9XP/AXTBrWiKAm5NaDf7PHCl1+g09lhPO6jqTorK3diWTnKcxXqy/WspBkmSM7mZivJdKetvSRB9E2lmyIhozezVCcOBUw5RYjGcpxlfP1WH7UvDvLWVgtNV7GLuYTjCHHcEFD9iZc13QUXMExkvKREYT+x7vI9PN9B10wcd5TA1UVQVa0uZBqIcRzTbu7hjFZ424+9i+A/+Dz11KeoVOZum4u6qlKeLWdwe0VTsIs29eU6iipnbvIg5MxG3WF28DsjB6tg7yvu2EZC05GzqDKNNFM/w1SvMS0TD7vCuDcFtcRxzGjQzzKoIHDRNB1VFRmwqqu0mzsEns8b3/0WRr/V5eLFr1DIVw6uMQRgwrCMxBpJHHCzq7MZb2vv5h7ddotCSYiki4NN9FIG3WEGlU8PnzCI2L25l3wdZtmhM3Iy5Ljv+wnPzsVzHaI4CbZ8L3PW8D0HTTdRFBXTtDHNXIYgLJTKbG9ex3Ncvvt97+EXP/gTlEuz+3MxyQ5OHz/MtWeukyvn8R2fXFHIm2mJTNigPaDX7GdCA4al09oURs+qpqDqiRiEJSoaZt5KpOjkrA8bJpSVVEouBV2kHMOUd7p7cy8rvemmxuLxRQqVPEZS0k3njpYI3y/XaliaxkLpoDi9LCvU5uY5cvok3/W+72ChXEaWZPF5VVXQYuKYMCjQ2Wuzu75BsVIjV8whyaIUP+6J/m9TbWIXbCE6YO1r6aYUp0ygIXHNiONYGEtPZXm+JwIlbyL4iVIi15feF9M2mV2dQVH3gT4pGnb6qs1WOLwwx/ngPJiCc5wv52huNgCRzaY8U98RmI1CJS/mbhAKIJWpCelHeyLoJpYhZDiDgLxpYmpe5smYgg1lSVRsho6T9Ul9RwD0MiR7QiOaJGswjoX586AzRDc16st17KKNYek0NpocvfvIbeP7etdLB9pMRX+KIjO/skyuaKOqOqdPP8wnP/m7vGn2ewWgRRLCvroioq18OYebREVRFLF9fZvxYEx5tsyoPz4ARBAw3kRiKrkxSmKdMn1z2olqfQrLl1WhgKMbmtjkk00tlRATKur+LQ7T+2NKjXGjBO0FZMAcSRaIxmFHSvonORxnRBB4dNrbaLrJjeeEPZFhGeRKOfFe043YhPeTvl6cRM+pXFh7p01zs8He7g2iOMK2i9h2kVyhSK4o7HIMyxDlzhRplQAgbm2UpzBsQHToARkyOHwYCuL6KKXGyDKxLHh9qSuGO3ZxVSWTcUv7xVEkJqSZt4T/pG1mBGrPE9SKVARaIEnVA6Leum5mlQYrn89scSaTAf1Wn7seu4uzr3yQS5e+KgBMtwBtdFWlVBJoPS/xhlR1VYg0JAu17/lZz0wz9IxIP+yOslJvGlykvL4oilBVJdEK3Q8wJsMJ+XKOYXeErMhCEDyM8Dwv2bB8fN9JOK4RqqKh6UZmcyaqFC7NrRanHznNnWcf4Pr1Z5Fuo2SQKDORbVSSJPRMrYJoB6To1hSolCsIQehUkECSYDBxsqAySqgh4tlMsmeYWntZVpHhsIOm6riu6HVGcYTvOVkvN45jNF3A6A3DQpZVdN06gC9wnBEbGxd5bPY1Ym24+wbG6a+dWlzkPwcp71UcZJqpoXvC+cZzRelW2M8pBzLmwBegmHF/jKIq2CVb9LIUoZG83/qIM15bpoGaZEhpNSJtGaR+i3Ii6i/QkUp2oE6vpSAMkRPk+IG5aGisnlrhxAMnqRcK2f0DoaUhq0INStUccoU8QeAxGQ2JgojKfEVQDxIg0SjxkE3pSqkvbcr/TrPIFH2cfi1QwPu9/TApt6avkZYPUx6obhpZ31rVhM+teJhTiGFVJUjUr0SALcRWTNti0Osy7Awp1UtJACw0iAedoeiVTunlps8uDdwo54XmrueTs0xRLfN8JrroUWdeuEnlJUUHx2GU9QxTuoWTjNVzvIyHXpopYxesTMBe2Eh9836K0ouSUb/eL0tSA7i9y/zf53UojuMZeNmNC5KxvVzHBS+7Z/ZyHRf8/3Pxv7fr5ToumBrbN7pe0qGY/ZEk3QAGQAgEcRy/4iW/yH+D18t1XPDyHdvLeFxl4D8BdyGqqu+N4/jx/7qf6v/79XIdF7x8x/ZyHdfXu15y+XTqel0cx83/Yp/kv53r5TouePmO7eU4rl8F/jqO43dKkqQD9n/tD/Rf6Hq5jgtevmN7uY7rRa+XWD6VY1lWQIqp1edQFDVr4spK4vE2pQiSyqnJCVdw/3Ukbn3fGPa5HrfIsKW/f2stX/zJQTpF+joxArGUah6mKjPp/ze2txn0ehJArlCMqzMzbK+tMbe8nAjjJjxLWc4+i5J8HSMq7ykHUko+M1NjSH8nGxu86Ji/kaFJzL76fSqBRTKutLeQooGDRATbczy63b1mHMcziqLG+XyF8bhHEPjMLSyjaFoG+JETnlAqKJA+J8Gnk7LPfZu50Ys8pxd7Num9+nrfp6+VyalNjTOafl7JdeG555pp+cMw7bhUrtJq7lCrzyGnvom64EWl8PV0PqZfp6CFb+a+Tz+vW6UBs2c3Ne546jNPz5MwIfgG6Vyc9rGLYzrNBqPhQAJQVS22rQKjSZ/VY8cEf0ySBGVJSpF6+/fz1nX1ouNJ1kEkvrltrNlcTr+X0lff//sDP0l77ZDNlfQZ7u606HWaicC+TBD4zTiOZ3TdjHP5EsNBm+WjR8X6SkB1ccyBZ3Xrupi+19P3+MC9nvoZkL3WrXNUQqwfSTr4RmkvNkVvT98Txxe9/uGwk71+GAbZXFRVLVZVHdedoOuCNypJMrpuJu46+4LxKQc2fe2v98zS+x4jaCbpx52ek1Gydqafw/T9Sve6297j1nUbC63mjWs38bwJcRwnt1uKTTOP644pFmvkSnkhiSgLb0h5aj8U81PKbmT2+hxcT9HUGOJYyGGmfyf2nuQZTI0t/cz7vzM15zk4h0Hs093xmMbGLpPJYH9/icLsmX2j6yVnioaRiLbKCjExr3jkNbz1+78PMyea1JahoyoyOcPA1ARZ00oEruVEAUVNtEynrzCKMq3PaeUG5UXAI9LU4rj1770gyDZUx/fpTybCSirwCaMYP7Ga+mc/+iPZ31ZnZvipf/Fv+Zf/0z/MlFRe+5bv4M3v/p5MZiklmuaMfddvXVHQVDVTZ0i5WOnnSR9QKquVEvWng4IwjjOOZvq6QAZF9oMAN0j4mmGYCf+2B0PGg7EwyB27DNoDuo0uURDx67/6oZsAlpXn7rtfy+c//1E0zczQao++6dt5y/e9i2LOymyuipaVoME0coaRfVYgk7CDfSArkMlq7ZNwDy4+WdoPklIKTBRHmSB6FEeZkhGAHwaMXBcvEHDs9B6NXJcgDHnt6dNZfyOXK/Hd3/d+Pvw7/xZJEuT8ex9+jG//3ndiF21ypRyyJFG0LKFMIwsbL1VRKFgWuqLcxmlLv0+fC4jFHkz9PFt4knTgd9Jnlr5GOBWM+YnYxE6vRxRFDPojwQd0PFzH49//ws9nr5/LlXn0NW/nhUufY/noUdavXuXo6dO8/0MfQjdNtETfMiWsxzEZxF0oPglQjyJJuEGALEmCb5mui4TknsqFTYcdiiQzSShLuioMsVP9TVWWaQ2H5AwjsW4TlmeaomTgEl1VyZsmP/Xjv8i5r3ySOAq5eu0pMRfNPO/60Z/gk//5j1g9JsZ1x5kzvP+DH0S3TNTEui0Fi6X6vyAEDaIpVLXrizXhB8FtQUFK9FYVBT357GEcZfcpXUu2ruMlQhmpupQXhgf0idNxhVFEazjklz/4azz33OcYj3tsbV3J5qKmmSwuHmNr6wqmmRM6sOU5fuSDH+T4vSfREmUkXVUoWTZBFGJqOnqaOEyNIV1HEvvzbphQtya+n60nJ/k6imN0Vc3+LpW+NBIRjyAMCeMo+z4dj6EJfdxUYcbSNH7/D/+Sf/NPfjL7PV23WFw4RruzzeLqYfqDJsuHj/DDP/VTLCzMCYnAhG5macm8S8QU9sciZ59BvHecEfLTv0/XTIo+zZvGgb1fJFtk50J6pfuIoWkZXc/UhW9j3jT5iyee5Nc+9Ctcvfokw0GH/qD1TfVHv3lGIwAxiqLyfe/9Kd7z/g/xrvf+JF/93Ke5+OzTGT/E8X2CMGLsegwdh7Hn4fh+Jl2Wbuy3SjQBByZ+OuDUQFjc0P2DItXG80PhSB9E4nWzLCq6hXIRCVHgjJ84HT3FImr5wP/yi/z0L/w7fvRnfp5P//nHufDkUwKWHgk5pUavj+N72WEQRkJebpKM0UkW5PRme2uUduv3ylR2duthnx5Kt2bWwRRpVajfJ9JKuiZQZMm1Tw6XWF09zXs/8PP88E/+LJ/9y7/g/JNPCJmo5NAdex6u7x8Ym5fc13D6JJz+7PK0e4mUPOODz1M8l/1nHUYiYxLycOGBsUax+P8wilBkseBHrnDc0NSD8ZskCbrL9/7QB/ihH/8Q3/UD/4ivffHvuHL++QRtJuaCGwTCoDkKs3HemrF7yVyaDsDSg+7FnmH6c+WWzUySpOzZpxmBkjw7N/BFgJSg5jIaShQdyN5kWcGZONy8coXXv+1t/Jvf/V1UXecPfvM3knsa4yZ2YhJStjFOm24HyZrIqjayjK6lHnz7JGpdFcGCCAQTLlgokLzpwSPkEz2GrlBZ6o7HeEGAIstivkQigEk9QVVZ5lve8QhLSycYjfd1Y2VFoVgtcOPyJd7wjnfw6x/9KLpp8Hu/8RuJLZyQCUyVZ9L3T9e1LMnJBhofCNjS+ZWqvVi6MPjWM+SuGFsYRZkM4fRzNlSVsedlRsOuLwKYMBJWSEZy4Byfm+Pux85Sry/fJiQBMWHo4zhjqtVF7rn7deiGzVe/8LeClpEcOmmwmSp2hVP7XfpM0gMxddTRFAVL18UaSL5OdV+NxElDkWV0RckCizSYUBU5EUaRszmyX90SQf30vTj18CkMI7f/mRQFTTfo9Ro89ua38KFf/j/QNJ0//8MPM3CcZC2H+88iDIXc3BThPn0/RZKTYExkg6qiZPchfXbpnE2fcfr80i0t/Xd6n0mNF6b3HTlJRN56/33c8/BDnD79CLn8QRrNN7r+X1hHhRk/Kl8ocfreV3Dl+edZXDqSqZr7iTmtaejnLV9RAAAgAElEQVTZ4ZVGs+mmGyWDns4Y00hAlkgWwtTgE1/CsbdP4palfUUYEBuCmyxY4em1vxkrsoQfiLLcrZycOBZw9kKpTBzHFEplXvHoq7ly/jx3PfAA/dEkM8nUNTXLPETEpWWZoqaqFE0zy5y87LPIWWSuq2qWOaab7XQJcTrbuJXYLyab2KgE7DxKFIMSvuMte7eI3BThNiFJ+I5HdbHGvQ8/wqWnnuGOu+6GvCDv9sbj/eyDGEs3spKbi59kIlPw+KlJ798ikffiJaFwPzuZygCBTP0/3VQ9yA7iNOsJbivzi/ewE3f3QrHMnWfvY/36Fc4++IBQ1OkO8QsWRrlEGMXZ3Bk6DmGSNSrJokJR4FY1lORZ3DomRZJEVpGWNeHAYZg+3zApW3rJPFTlfS9SKSHuT1v1iJ9LGJpNbXaWk3edRZIkXvX61/Px3/s9ho4jRJ97I3RDo1IuZKpP6cZr6hpG8ryNqUBClshK5dOHqJNkhmJzi2g2OhmBPPCD/YAsuf+e6zOZLaOqCoWCUNJpDYeJjJfGwJnw6gfv4VOVTx8wGlZ1jYXDK1RnZjh1992MPZeHX/8GPvJ//VYWqGiqmonm7weHaaUhIohSv9L96kUQRlkQBRDHEhHsz8tIeJ6OXJcY4R2Y0htSQntq6lurl1EVORPf7o3H1AuFRHpM4qHX3c+zn3uOvb0bt81uSVLRdZNyeZZSeRbdsNi8eV1oNCsKpq5lWdV0EOQGQXaAq4lqV+oSpClCG1kYqyvZIe2FIghIk4JULSaljaTPeDrTT+ehCIYUguSeTYtC3rW8jF2YdgCRKJVmyeVLnHnF/UiSxH2PPMrffvxPhCG0oqDIgraRHvBxLNaxnnzOjEYSRyiSTJgEc5qiZPtVqqGc3oP0WaYBTBTvJwVphW7kuui30GOmD/ggirBlmTe9+3Xs3tx9UfWor3e95EPR912C0EPRLILA5+qF53j1m76TxnoD3TKE91wYoVs6hmVgFSwGBdGXTVNsWZKykogbTJXTooggrTMjbFHSG5NOgLHnoSclpFT7NM3+HN+nNxlTsmzyiTuzqijg+0IH5xvU711HEGB1TQdN5rlz53jHe99Dvzeku9cVgtiIzUxPlP0Dz6c0U0octHUKtrB0URUl0/DzwxAz8Re79VBIS8nphEgPPiBTdHATVYe09OOHAePBhH6zT650sN8tyXImbSZ+IKGoGnJimOx7QsT5+a99jdd8+9sEwd0LGFs6piE0WmcKBRzPp17YL7FF8cHoHESpM4rJFjTsi6AHScSXKvak2rW2rtMd7/PgBo6L43nMFAuULDGWdGKr8kEdxun3ToZGEPh4roRhGbiuw7VL57nroR8kDCK2r24zGU4oVAuCmK+IeZeKEbuBj6FqWUYHECAWZXo4hlPvf6CMKkm4ifZuVu6eqmjEsahK+EEgHGCiOHvOqqbi4grj4bT8d8u8nF1aoLI5w9qVK5y5+y4uPPEEMwtL3HhBVH8UTRgp78l7yInCTnrY1pfq5EqCVL8wW8sCtLRU5yXRfEyMIsm0+sJnzh27DDtDdm7sMO6NccZOZrGlm6J9oFs6oR8IBRVJIl/Js3R0gblSKZm/4nA5MTeH7zvkp4QJdFOnXKtRnZ1l++ZNDh87xrnHH2dmcZnN69sJsVsYUg87w0zyLI4ilhaFCICpi2xLQsILwkT9Sqxr1xdZpaaoWdvEC4JMw7W11RJqQ66fODnohIHwY02VWDrlDlbBor5UQ5UVOuMxtmFQyeUIo5gHjx3j1wKfUvFgW0rM0xg94XEWShXWN17g8NnD2XwLoxhNORiopwF9GEcQifmnSPs92jAMURKBekWSQSEr8SqSIg6aqUqGOlWqlGJxmKbBrJSsR1MTdmx+4EOyfxqJ6lc1l8cu7O8pURRSKtUp1+rsbK5Tqc1x8dmnWTy0CpFQ65o44p6qdflAtueHIUbSWkr3r/QSeIV4KiOWiRLT5PQS8p7igNfSgzUJ/oJoX9fW1LSsOihLoEQyasLJHLoODxw+wh/pKrlciW/2ekmHoiRJRFHEH/zGL4mbFoacPH0fhlSmudUiV8zR3GhgFeyM/OpOXOIwYu7IPLXFGoVKnmIxz0q1iqnvxylC+d3Psj3haC+z0+nR3mnjOR5bV7aEUepcOYtAplU7UtNYAN/xqS3VWFiePaCcD/tk/Omrvdfgw7/xq5lU0ok77uGeh17F2gtrbF7eTGTUJJobTSaDMV/6+79hPBnw2m/9bkozxYwoPe6NOXrPUWZXZ8mVc1imwVyplNmkTGd96dUdj0Qm47iMekMGnSHPf+F5WltNNE2jslAV90hVQJYEoX7somoq80fnyZfymQJQ6pQu7kmAZeXJ5cvs7d3kd//jv0LRFI4cO0vQ13jm758m8IWklxAGtrCKNrmizamHT5M3DYqmRb1QyKK/tASjKgq98ZggDOk7DpamsdZqsbvTJAyEWs6g3ac8V8HMmRw5skTJtjE1jWoux1a3y1ZH2Ent9HoMO2JzXlqcpZzLkTMMsal5nsjGX0RxYzIe8ucf+zAgHAruvOsBBpsBf/Ps37C3d5NuZ5diaSZRltHJ5ysYlkl1vkqpXqIyX2Hu8Bz1WpmCaVK0rMy709C0rI+blvqDqQh95LpZebHXE04mmimCPt3SCVyfUSLhJVSHAs48dEp4BVo6znCyr8k4XT5VZF7x7a/g8AOL/OYv/ivCIKBQqvL6b/seug1heBsMhAhCr9lj98Zu4tcYMx4O0DRT+CfmLVbuXGF2dZbaQpWFmRp6ErAosix6t37A9lUhoOGOXbq7HVrbbTxHOGNMHKHqoygatl2kVC9h5U1GvSFm3hJiE3tdrj1/g/sfPMNKVczT9miEomjo2r60lmZo9Bo9fvRnf5Zf+vmfxxmOKZSqvP37f4TWVkusr0QUYW9tL1Nw8V2PXDGHmQhOLxyZZ+XUKvNzNYqWlZSmRcl47HlMHJdxb0xru8Uk0UMe90b0W33h9emOCQIPz52QL1TQNFPIN1YKVObKKKpKv9VHlmXKs2VKZ6ysd1q0hEVbsVi7bV+cmVmhXJ7j2rWnuXLla8yvrPDO974XRRbVLTN5xr3xmEF/RD5xQ/GSvq+RbO7VXC6rdqlJUKoqwhR95LqoSVKRls9VRSYIhVVbHIvAtDccicDME9J3kiILwZA45sbYJV8pUCjmmCkUkvaJKqQ0K1WK1n6mGMcRppHjH/z4T/C7//svE3g+1dk53vyOH+ALf/ZFxv0x+XKO2dVZNvXNLGgadISBdm2phqqpWHlTWIElRP3RUGgGp9qvcSyMn43EAi9V4Ukvd+SwsDBDu9vHnbgUqgV2b+wx7A44cvYoh2bqRHFMybbRcipBGGV9SFWR8b2AanXhtv3j610v+VDM58v80D/60JTYrPDkK9VLzB+ZYzyYUF+qJ9JfQoGiudEU8k2NnjD9nSkxVyohB1PGlHKclQsnnkdvPGY8mtBYb9DcbBJHMVefusrKHSvUlkQEfPc9J9EUhcs3N4Xwcaqo4vr0m31mVmYoWiatwZDxaEpNxTIObERxHJMvVPihH/8Q/UYPAC2JjmsLVVRNZePShsjOykIvMAh9fvZX/jXveO0jmZh3GMf84Dv+IZPhhJ0bO9QWapTqRUoPnEJNfmc/6w0ykEmz1SPwfLp7PXZv7tJr9Fi/co1CoUqunCdXyhGFUWa+ShSj6RrVhSrV+QrtnQ7Xn7lOoVY4MC5V07DzBY4fF6WPex56hNpijclgjKwo5Eo5JAmckcvi8UV6zR6j7ohBe8C1p68KlaBijtFcjVNLiwdK10bSf3I8IcfkeB7XLq7R3Gxi5U0mQ4dcKUd7u017p821p69RnilzxwMnuP+hh5hJnCnWm63sNUe9MeFCxHMXr1GsFymawk9TSe7brVe5UuPdP/zTgDhMSvUiURQzf3gO1/Ho7XWFcLosMegMOffX5+i0dmnsrCPJCvl8iZU7DnPmkTMU60WW6lUMVRNCxGF4IKofOI4A/CTVi+e//EIikzemt9climJK9WImFq6bOts31+j29lhcPEGhWsAZOeQreeqLNWH/5Hi3qRAZplB2OT57ml/58B+wtdHgypNXOHTmUOK/J1OsFsU893xamy26jS7OcEJjoyms3RThvBDHMd29LpqhsTBTw9S1DGxjaCqO59Mp5YRClLcPWpEkGUmOMc0cum4xszJDebZEaaaMmTOxCzZ2yca2xKHX3mnz3DOXyT94NnM2qMxWuXRpODWyWIiVF6t833t+migM0U2dynw1k9kzcwbu2OXiuUtC87Q/ydzh4zBC1jX6rT6D9gC7YFPJ5bL2i6rIWUUjCvaFoUM/yAx1hTi1ga6bFItVZg/PUaqXKNaKQjousR+TVaFoc+HLF3hKlnj0vruQZZn+xKFYK7G1deW2uWhbBSIz4tWv/m503eLV73w1hp3LXFaiOGZjp8GoO0SSZfrNPuuJ1u6oPxJOJY7Pyp3LKJpAeC5VK8JXMY6Fd6QkE8YRY89PSqoqE89j4DhMHJdeo0ev2cMZTmjvdIT8YSIvmd5j3xVet3bJplXKccex1QPVnoP9donKXI17HnmQ0w/8J774ceHx2dsboihC0k23dBqbTXxH2DT1ux3C0EdRNPLFErqhUV2osXl5E0mS6Peb5PNVFo8vCgUyWRLWWiMnE9Tv7HbQEyPzwBM9bmF7V6ax3qC+VGfQHRJ4Acsnl9EUhYubW8iyzEypyKF6PQNH6qoi/HDPt297Zl/vekmHoiyrzM8fwR27SLLw2PO9AE1Xsyxt/cJ6pi85d2iWb/uBb+X4qUN89e+eZOfGrkCFjhxaJ5apF4posnwgC0jLQEEU0VhvMOgMhbxVouq/c2OH1laTve1NOm9+jMXjS1x96iqyLOyh8uUck/6YxWMLvOlV9zFXLLHd6/Hprz3NsDMkX8lnEkS3XqPuKItEPNfnypNXuPvhM6yuLjDsDhOfRvE+rdYm1bmKaGwnJYCFcpn7vuURYa1iCbd3ENFb0TKz3lQQhhnCUpXlzIlc640TR3qf133Pm/i+t7+RnCEsms5dv87Tn3uG5lZLCFCHIcPukN2bIlPotBpCem24L62lKCLaPWncS78tPBnVZOyyqgj3+KR/NEmct/P35LEtkxsX1zKd2WvDCYfq9cSkVs4a7GPXy0rdO70e7e1WJjMFopLQa/RwE3PTUXfI5ScuA1AvFNjp9di6soVu6hSqBQrVAkuVKnnD5O//9iusnlpFN3XqpeJtaOU4jrNoUtVVBu0BsiKzcWGdZz/3DKYtvBN/9Z//HP/nX/wpruPRam5mmeNo1KPXa9L7SpPNyxucfvgM/ZPLHD22TNGyREkuCFAVGdcXGWFnMMR3fRrrDS58+QL5Sp5j9x5j8TtfxVc+8RUG7QGqrrJ0Yoles8dv/dG/w9b1rDKw1mrxmb/7KhuXNlg+uSyE8k3jQPlUMzR0QwhQtzt9tq9vI8sSh48uJU4rgQBsSDIDxyGej8hX8jgjB8M2cccOmiFaF4ZtoJs6RmqqrGoZAluSJCp5A/n4Cp2FKs2NBr7jsXtzjziOUBSVYrXEzMoM80fmsYu20AxOqjO6LjJ+gNVTq9x8/gZPn7/CK8/egaGqHLv3GH/2x1ennpgov+5e32XcH3H4riNU5srolkEpQT6nhuGyqghd2cSLc9QfJbKNcvYZfFdUkoqWhW3o9CdOUl0IyRkG7mE3yXq9TIMXoFAtkq/kKdaKVOcriXaqmh2EhUKOkm0JJO6ZQ6xfWOdrRZv7jh5GluDux87ypc/91S07h0SpPEuns4OmmcwdmqU0UxLuMuUSkgQXLt2ksd7Inq87cRl2RzQ3mlmZOvQDWltNrIIt1vRdhynPllmoljFUlUmCyPZDYZfXTbLOQbuP5/r09rqMB8L8urHZFEYAgO87aJopDKqTQ7hYK9Jr9OjsdTl8+hBHZmayXmR6qarG/OE53nj2DM9tbDDqDnnwLQ/y2T/+LJW5Mpoh9FBLmkJ7p0N7u02v18B1x+RyJWE+XZvhxAMnGA/GbFy5zng8wDILQk84saVLg5goEuYRmzevEwQehmExGvX3y8Oqhq6bdHa7mDlTtFD8kKcvXgVJwnd9zv3NOay8xfIdyzz6wFkWSiXylTzDYedF9/wXu17SoajrJouLJ+g1e+LgmHjIqkJlvkq+LByqV+5cIYoixj1ROqrYNhPfZ+2FdWDflDgIhZciqprRGuKE4hBEQt9xMhRC0+P+GFmWRKRZEALAZs6k3+oL5fa8KfoDukq/LTwIraKNmxykx2Zn+byhCTcBU8+U9aevwAsY9xPnZ13DGbnCsmmhSqGSpzJX4dBdh7ALQp3/bd/zPx7IXkxNozMSvnXu2OX6s9e4cG5CpV5HVhXuve8OTE0TfEniDAzkBoGwfAmjpAwGdsmmUC2IprQkoasqrzhyBIC//O2/Zv3aVWRZwfc9CvkKqqbjeSILsfLWgXGZtok38RiNe0LYWVWEaK+dNql9ynMVLnz5QmLeGbF0conXv+1RGu0ue2sNBu0+a8dbrNSqqIqRAXLypsk4Qd+2tlqZ8aisCgCLJMscPnuY5kaTQrUgDKe9gJ21XXblRqbH6Dkek8GY8lyF59fWeeDYUQrVAp3dDrOrsxnwYPoKgxDD1DPXh8bGHlHi7mEm80TVVUwrzwPHjtKcneFP/uMfsL5+nnJ5nmp1nlOvPMuph+6kMlPmxPw8QRhyfn0DVREm0FKChEsvWZYZtETF45G3PczlJ67wxCef4IlPPkFjd5OdnWtYVoFabZHnn/88//5/+7kMTKSronxumDovPP4CIISb7UJ8ILtPOW2WobO5uU2uKMpTkPZb1aw/npbgZUWUYTVdwxlOGLT7OIZOebaEmTMwrKTFEEUYSR80DT5XqlV0VWHr6hbNrRajUU8cfLoF5NASPWJZkZFVWfSPdJVqPo9t6ARhxEK1jHz3USbDCVvdDkdnZrn3kTO3ZB3CvmzYHZIr5SnWi8xUy/t85gRY4vqBCAryZhLoik3c94JM4zNXzIlDJNVXlvZ7pqalU8vncQOf5laL7l6XXqPHYNDFNHPkyjkK1QLl2TKGLTAPUZi0BHRBKckbJhPP445Dy+QKNo2NBmvFFmdXVnj1o/fx67eBvmKciciKdVNn8fgSuqmjqAKhe/nCTW48dx0zb2EXbOEpqQqPyEFbtA1CP8D3fYa9kQiok0Rj4egCs68qEcUxOUO406dLIY6Fc0S/1Wfcn9DZ6+AMhD1WFER43oTxWPD0SiWhd2qXbOyCTa4o7oVdsLn+3A2a1Rb/w2tedeCZGYZFaaZEezjiwqWb/MD//C7uP3yIL/35lyjWilTmq1mg39hsYuYMarUFPNfBDzwmzpDJ5pAv/4VCdaGGYeZQNZ2JM2Dl1CqarlGoFvAdj85el+5eF8MyWDp0hOaOsFeLoxA3cdTxfZeZmRUURSZfyWMXLMzE+KGSy2GoKvlSjlzeZuPqFr/zm3/Kw9/xEKunVgkCn2/2ekmHoqYZFIs1JsMJdsESxH1DCH2beUukyvMVJkOHYrVAr9HjC597EgBFUzIVe8/xODE/RxjFbHe7FEzBfYoRD36z3aaz2xGirpqSOaanmUG+JFzGhei2LQSxk9KpO3JQFIW9G7ucu3qNpWqV7niMM3IzlBlwG+laVmQ0Q3BcZFmmPCesoPZu7tLd7SLJUKjkSVHUM6uzXD9/k1cdPy5upCyz1moJM96STb5yNHP2vv7MdY7eeYiynUOJY3xZQSLC1HTanaaIjq5s0dxs4jvCeeLiVy5Smavw0InjeEHA5598jpvn15g7NEdlrkJnpy16i44HkWjyR0lfNb1kVUG3RBmhUKgShcKOplgvUqgWMG2TMIwo1sT3k/4ksxVqD4Z093p0djtsXdnikTe+kvZwhKFqGVdTlRUa/T7NVhe7aCdWVuJgVVKPNk2lMlfJ7HPKs2UUVcGbuOTydibW7jpetjl+9eJlCuU8swv1zHfy1isI/EzAO3W0mAwdFk8s0tluU1usoRsa737fB/jIxz5Jrpjjje98K+7EZfPyFoEXoOkar7rnNKu1WsZpfObqDfa6PeZKpQTBLDhdk57H3toea+dv0txscfncJVRdE3ZZps7SoSPML61iJtZI8ysrNAcDLF2Y09q6zsc+8kk0XaVQK7B7c4+lE0tiPt5y4Ju2ieN6qLrK7OoslqEnXNv9PnQcxzR32oz6I5zhBHfiMeqNElNZH98LhFNNMl8LhRx508TSNAxJylCnYRyz0+mxcXGD5mYDWVYIwwDHHeFuTYQpbRAy7Aywi7lMqL9ayJM3THqTCe3hiIJpUsnlGLkufcfhNXee4vjx+3niif87WW7C3Hv11CqGbaBqiggIE1SiAI+IXmfKvfUTs1g/sSWL4zjLTmRFwqmJ6pQiy5i6husHKLIkDo/ugN0buzQ3GziTITExjjOit6dl2aZdsIXxbwK2kWRBGcibwsR4vd2ili9QvTPPbqdLbzLmjoVF7r33tVy58rXsWURRRLe3hyyJtVWeKxN4PrPlOtdvbLJ+cZ3lO1eEG9B8laJtEcUxg/EE3/UYtAcCD5DYIOmWLkzBLYNxf0R3NKJi2+QMI6OIpYAizxcI2xQnEaWBgixMCyqVOWRZYunkEnYxx8zKDKqmMLMyw0KpjBeG7JZzbF3ZEtzgqXmomzrluQqf+PTjGKbOG86cYeS6zKzMZObeqTH1oCUO33K9hjtx6bR2CUMRfO1tbxLHUKqVsyrisDPkzEOn0FWVsediFiyckcOJ+09Qmatw+YnLXH/hIqqqEw47IjnQDGy7gF3KYRcsSvUSoR+wOjNPyRbJyjoNqrkc977+Yb6wUOGZzz/HW9/+Gj6yeJz19Re+wem2f72kQ1Gg/ESNXzhTi2hm49ImnuOhmzp20SYMwsQWRaIQRCLzqeTZW2uwt7nNzOI8f/rxz1CeLVGoFhlMJrz21Cnh5B5HaKrKyvElOs0u7sQjjiJ8LxBGpHsiktVNPXFbt1k6vkh3r8eoP8qay4Vqgec+/1wCFFCIoogjZ48wWytz9fJaZjQK0G93OPe3X+ZnfukDvHDhBleevIIcirp/Y72BoigCxdbrYhh25sbQ3m7zO2OXKCn19po9aos14ihi1Bshy6LPde3Z61STDUORZVZr+4367UaLfqtPr9EXXoMTUfaJgpCP/fLH+MLReQrlfNYjINn8yzMlaot1ESk2exi2wczKDJ/7xF/vL9Zkwvquh+tOWDyywsLRBVE22e3S2e2QK6aRc0nA1cMQM2/xtb85R3evh+/5mDmTZ5+4SL6S53rBYnluhpPz89QLBQaOg3VUJ4xjNlotRkNxsIZ+QGOjmWWDvuuzcWEdSZZZvmOZ0A8ZtIXfX2urTa/ZY/vqNo++9WGwTORykVOLi/zehz+B7wlAyPQVRYlK/mg/Q5ZlAbMftAdcfO5pHGdEsVhndn6Z2dVZUa4zhVtGv9vhL/7w7/ncJ/6at//Y95Mv54mjiPNfekEszFN3AtAc9Bk4Ibvre3R22iyfXKY0WxYO9WHE7o1dhr0BM0szNLd6KKo4/HNFm3/6c7/K7KFZCtUCumlkG/zCkYUsOLPyB50mFFmUBNV8nlqxgJYYrW5s7AqfuiSjCf2Q57/4PDcvXiWOI2YXFvGSflEcx4R+yN7aHofPHBZ9n50Wlq5jlUqJNY+HIgkxivWL6zTW9rByNm57TBTtH76N3U0uX3iCam0Bw7BRZJVXf/drmCzUeGZ9nVFvJNxgwpD5UonZYjEBiki855/8Y554pzgUFUXBtE3mE6TqTq9Htztg0B6gqAqqpmZl/Etfvcjs6iwblzaEq0PBwnf8bH2U6iWG3RE7nR71QhFDVZElOSl3K0RxxM6NXXZv7KJpGiDKZ2HgE8cRg/MdNq+aSJJCbb6OJEF1scapV53C9QOeWV9DU9SsvHnf3XfwyuPH2Oy0WSxXeP//+j4++tFfyu6RnPAC84UKpx8+TbFeRFVVLl26SWenw+Ezh1g+skg1l+OFyzd56tNPsbe2lwWwhmVkBsi5Uo5ivUhtoYqRM9ENDS3J7sMoEkGW62LrCiXb5sjMDNVCnq9+7mnGPSHmMRr1aDTWmUwGWGYeRdUSb9kuV568giRJ3PnQnThnj3DfiaMslsucXFzg8YuXDvDHi5UCc0sz7G42KM+U+e2/+luCICRfyTPqjti5visERBo9NFOnsbNJu71DHEWUK3PYdgnXHdNqbuF5DqaRI18Q1ncLR+aF16yiEIXCHaSz0+b08hLdRpfGeoMgCDI1LlXVkBOkuDNyaO+IcujGZYEnuf+eOylaJneuLiNLEiPX5Y13n+X+Y0dYrdX5wK98iC89/Off1Dn30g5F+6BRo6opBJ5Mp9EkiiKqej37vye/8DjDYZvDh+/OfMoq8xW21q8zuSp6e57j0Wv0aW42BMfPEqWLzZs7zCXO8pou6u8CnaZQrBWFjZSm0Nxssvn4Ve5/7JHsEMpX8qLsGgkn63FvjGYKg+BaRZQhnvr0U1kDH0TUfeHCl9jp/HDi5iwi0731XZrNDQzDxrLydLt7tFqb9HpNlpfvoFKZEwdkKZ+ZGvdbfcIgFD6GCIJ5sVrgj3/7E8wfmSOO4KHH7hWozcmE3Zt79Jt94Wg9mDDsCvPfyWTE+voFSvXX0tnuJC7lwpDVKlisXbrB3OpiVi5NzVu9pNSQvveoJ2ySup0dVk4cxrRNtgfb7K1vIyF6jrql090TTfqdtXXKtRkK1YJA9k3E661fWMfKm2imzpq1zuOSxKG7DrF3Y5fFE0ucmJvD0DQczUPTRX8kfXbDziBzU//Kpz7DlScXqczV2Lp5g3sefSW9Rpdhd0R9scaNS+vUl+tc+upFvEcDHv+rz3Li7GkU9SAgxTRzHL/vOBfPXcx6J57j0Wv22dm5iec5CRF+wNqNi7nIQuoAACAASURBVDxx7lPUa4sUi3Vcd8zy4WNUZ9+AM3Y49zfnmD88T2mmROPmHnc+eCdjz2O31+Pc488KFaDH7md0YpXnnryEoihMhhP6jR7D3iB5b5+93RuMRmVW9WPIqoJqaPTbA7aubmcmp5IkUagW0AwNVVMZ9UcH0NAxgoOX9mtTeP6gO2Sc9JxBlF4D18d1RmxuXWFmfiGxJ1LpNUSQVKwVUTThB6iZogoy8f2sJ5nKzhWqBSrzVXzXp9XYZjIZ4vsuxWKNKArZ2b1Oo7lBrbbA3t4auWKBnRs73PXoXTjDCXNzVXrDseABhqKn1+gP+LZvOajNLnrSAmXujB3aW619k+uJy9oLa2i6xqc+8VEefd138sIz57DtErPzyyL7URJJOFXOssWJJ4JSSxfzy/V9JopCZa5MdbGK7/iMeiP29tZwnZFQ5NJNNjYu0mpvMTd3GMcZoSoaYfC99E+tcvjkCmtXNinPlmh0huz1+8yXy5Qsm9ZwyIn5+QPjUhQF2y4xv7wqDIpNg5xh0AqbHL3nKLYpKivb3S7Xnr4qyp2DMXvbaywfOc5dj90l2grXd2huNFl7/iZREDJ3eJ7ACxiMxrjFIpqqZsT9ieehSBKmprG+ucv29W3xuuO+sAHTdFxXodHcgDji3R94H8VakatPXWXYGbJ9bZvWlsAA3HPiCDExlWI+K6sDOI7Hv/yxD/KDP/N+GuuNbC8IvIDmZpPObodeu4mq6XS39qhW59nausIdJ19JEHiUSjN43oRisUajsc7s3GE6nV1OP3Iaz/F4cGVZvF4Y4s3O8JFf+X1ufNdjrJ2/yXjUQ9cMYjOPYUQoioZl5bl69Sny+QrDYYfZmVVOT+7j7e95C0+fv8LMQo3VmgCUaYqKG/jMFos0BgNeceTobefZ17te0qE4GY7Z3r7CiRP3E/phVraMooggcBl0BwR+iF2wmZtbZThsc/Xqk3Q6O7zpH3xn5k83GnVxxy6tzSZBEFJfqnP+3AUq81UkSeLGczeoLlQTj7soM60MEwNc3dKZX5knDiO+8vhllC9ojMc9DMNm5cgJUUOfERFpZ7eDbunEYcSN52+ye32HXqOHrOxvRLl8gTd+x7t4/gvPC1PctOkbeDjOCMdJDtxcGccZ4boTwsBnMhly9tVnCYOQrStbbF/dZuHYApIkcfP8TWRFlGGtgo0zcmhutqjMVbh+YxNJluju9bj8xOVk81KFIWoQkq8U6PVaPPPMZ1hZuZPRqI9hWDQa6yiKSi5Xpl5fEKXiBDijGTqt7VbmaA+iKqfpGpPBhMEtjebUSHb7+gZRuJgZm7rehOtXn+Ns+SHKsyU8x2Nva5PZ1VnR4zi2SH25jqFrOK6X+d9Fs0I/1TINTENnbOpsXt7Ec3wK1QKHzx4hjmKaG01aew3auw0WDx0WkWZ7QLu5Q22pRt0ViMrAD3nqs8+weuI4hm1w7N5j8GtTA5Aktq9tEYcRdsFi1B8TBsJPznFGjEc97FyJ8WSAomiEoc+Vq08iywqvff27mDsyz6A9wCpYWYl40B4wGg34D//sF2j+2I9Rmi2jairDzoA//PU/Y+HYIuXZMp7joumpI3uIJCk4wwnPPvdZJpMhx9buYzTq8uCDbyVXtHEdj1zRZufGLvlyXjjJJ7064Zq+f+BLiLJ0Ct4SXO9YyPjtduju9agt1bjjFSe59NWLlMqznD//RW5eu8i3fPsbKM2UuBnHaIbG7OosdsES4A5TFwdiciiqCQF67HkcPbpMd7fD+oV1FEVDUdRsnqmqSqMxLygu3T0cZ8Shuw5x+dxldm/scvz+4xw7sYqUROd5Qxz+Y8/jzsXFg5tNghAdOA6t7TbdRo9hd8hkMMEqWHgTj36jhzMZcOHZJykW65QqdUFxSYJiq2Bh5UUvKWcYmSxgKSlJOgl/9OihJRonm6IsOHKIYxE4abpJsVhjPO6Tc0tMJkMMw8bzJkwGE579+2fYuLRBbbFGZa6MM3Jo7LToVKsZ9zmVI+PAU0OUKHMCMW1oGoVqMSuVAuzc2EXVNVrbLRo76+zsXufwyTs5eeYI1Vye8/M32L2xR7fRpbXZEpW3Uk7My2pFCCQknN8wjggTele/1aff7Cd+ngq2XWA06uM6I8bjHrZdYuPiBv/0Z9/L06uL7HS6fPHjX6RUL/GZP/oM+nt0Ti4tMFcsHejdK6qosF0+d4nObjcx2lYpVPI0Nhs4zpDJZMiRlVNsbFzkznvuw3o+z8bGRQ4dvov73nAfl792mZ2NNaq1RSwrz2jU5XVvfhXPP39V+LcmPcmybTMcdph4HqWZMifvO8OFJ54hjMKML6lpJs3mJocPn6XV2uTJJ/+W06+8n1/8wL/mje9+C9tXt5j7jkcTpSahhqUpKh/5+Kd437ve8o0Pt+l5+k3/JsLMVlE0dEsXTuclG8/xqM/PMRkIw9nybJlSvYQ7qYkm7U6H6nyFmeU6nuNhWQU8z6FQLRB4AccfOMErHjhNNZ9DlRXaoxFrL6wx7o8plvMC6j6TZ1iyuXzuEsVakdpSjRP3n6BUL9HceiOBF5DPV5hZmsGdeOxubjDqjVg8vpgRdgHayUJcPX0I82v7Wa+syCydXMoi7NnVGRHp6yrFcgXP8TJ05FxzmWFnSBgGLJ1Yplgr4k5cqvMVAeP+0gucevgUh04fYufGDrqxL1B97N5jLB9eyBQbDMtg6+oWdsHKAob0/X3PZ2npBJ///Me4775v5cyr7qG7d4gXnnqCGzeeRVEUVirHkpKSB5LE+vlrGMYUoV+SkFWRPQeB6NkZtoFh6pRrM/Q6LeZWF6ktCHh6v9nP+GQrp1ZRFIVhd4S0K4myTq3IQ6+8i5VqFVvX6U8m/HV3JGDgh/yMh2hoGqOcy95iPQtq4ijGLtrc9633M+lPsp7wZDihWC1QXC9QKOfRDI3OXgdFVbj+zDXmjsxz3xvu48jcvos7CM5mc7OFoiqYSbas6oITFQWnaTa3KRSqFCtFDNtg3J/Qbuzi+S53v+YshWqRvbU9tq9uYeUtRt0RdsnmSPk4R84c5/7X3EvRMjFUjf5kwp/+1idEX8PUxTyfKTFo9ZFllaUTy9QXa1y8eC9ra+cZDNrk8xUK1QLPP/Xl5BPfjWmb9Ns9nKEosTc3W4z748x1HZJDMeHFRXGM4/kMHAdnOMEZuVh5ITJdqBXxfZ8oCjh95luoVhfIlYVZc3mmhKKp/D+0vfezbdd9H/bZbe166u3l9QY84AEgQYAgRVI0KVqCFImSNbJlx5nE1jiaSZkkM/Yv+SEZZ5I/IE3JL46dSSaJbcmRLSUT0xIligZEUABBor+H19vt97Td91pr54fvWuuc+yAxxA9ZM28eyr3n7LLKt3yK6znG8Np1nbmWreui8TxMAJR1jW4Y4vJnLoE3Apm6nqZp4PkMQUS6nmtrZ1FVOTY3W6yfXcdgbYDDh4fqwGkRhwHKujHC+1qbc3H4roeirpGXZGBNeIQE/dU+kl6M7UtbOHh0iGTwNxDEvkGJdwaJAdJZloXh+gBJJ4YFC2XdoPXoszX/Mq9r9KMIV1+8YoB966PzKMtMLQsLa2tncerU0xis9mEp4f/LL10miTBlhK6rPGVeYX86xVInQc3Fid4uQHy+8XgXy5tLJuDwHAfLw55B1h/PUtx46wZOP30aeTrDcIkChs/97It4amMTtm0jO7WBpuZgIYPnezh4cIC6amg/bRo0guTTtFhB4DGSTKw5WinRGw6IdzydYDo9gu9HYCxE21KiMsoyBJ6Ha2dO493huxjtHiPuxbj+/evYfHWIfhSdAA/atoVnn/8CXvjaC7j3wX3cefcO9h4/wL07I1PSjOM+PObi8lOfw/e/+wdwHA9Scmxsn4bLXLCQ4ZmXX8DO7V3UZY2v/trX8fkLF3D30R7qpjHyjbKV+OI3voF3vvMOfv5Xvoqln/8K/oN/623Yto0giNAd9CFFi6WlTdy7+x7W189jZ+c2/qu//+/jN3/j7+M7v/OHuPryc/jo1j0ESYheEkO2LTb6PfzT/+Ef4hdf/dKPO9pO7i0/8U+CMo9Tp56C7TjIJzk2L25iuD4Erxuk48zQJqiJHSLuncKVl58iJCWXWN5axtd//RuoyxrT4xlYyPDUM+fRiyKEzEfDOZaSBOeeO4ejx0dYXR0gXvKNYO+1n36OXJjLGvc/vI+lzSF+/u9QBMACBl43mI1SuJ5rem1lVsL2GfzIx+bFTVz9wlWcOrWG3/vtedphOzbSUYrNC5sIYh9hJwLzPVx44QJa1bcq0hL5LMdwY0gODDaBjLJxCi9giPsJPJ/h53/zF9CUtKA2Lmxg7+4e8mmOrctbuPr0OaPcQgs3Rv1Tz+DhjYe4+JmLOHP1NNJJRmCdfoLTT/9dxD1yWx/tjeAxD5efeR7nLz9DG8mAHNePd44x2jkG5w2eeeFlvPkmQcZb2aIuakTdCM9/5qtwPAeO5+DKy08hHc9Ql41C3gGQLfFHz67BdR04notilqO71MULf+l57N/fx5XnLmC91wVTm1Xs+7hwfhvv/PA6lpIEk6JAL4rguySifu7qGaSzHHVRQTQc6WiG7lIXWxc3sdHrI/Z92Er6bH86xbQssNLpIlLvm//yV+F7HrphcEI4HAAs1Tc+uL8P27awcWETvWWqDpTXSMWkLmqkkxTbl6lM4wcvAraFuBtDSonV06vYOL8BXhMUvswqPLzxEJdfuoxLa2vmuzphiHPXzuHue3cJgdyLsHJqBWevnUOjIP+WbeM3/tP/BH7kY3Y8Q5mVaKraoG6jTgTbsXDvg/t4eP0hHj64AVg2vvFrv4jvvjZHDFuWBde20QkCo2jkex6e/fI1SC5guw58RiIBf/Xv/TXs3t1FXdQos1J9Z4O4nyCIA2xd2sIgiUlTVPVvQkUR0Qhb6uO3WO12cerVLyKIA+ze2TWgHQA4df48WOgj6kaIutRTP3v5FL7wxeeNnGGV5wiYh6Ku0FOUlt3JxNxXq9CTse8jCQJsDQekrasUVbTW6ealLRxfISqFVO9co4kD1b45tbxEyk5VjYB56AYhGiGI1qGUhABgs9/Hxl/6HKavPIt3f3TDUBaKlP60QiLohPBDH0k/IQDR+gCDfgfdIKRsem2ZNEQdV8lQWijrk+AvzhvMpsc4deUUfM8j1RhFyLdVL/DgwQFYwLByagXf+Js/h4/e+AhXv3gVX/vCZ0mpSyk9tbJFmATgTQcsYEj6CZHgHQejLEdWVbiwuoad8diIZ3zmpavEjb69S+C7osL6+nnk3Qm2t69glo5w9tpZvPHxTaqENRy/9us/izffu0Ec1Ubgw4/u4PlnL524LyEkNi9uobvcxUtf/yw+89XnMZ2k2L29g9koxeObj5FPMsS9BNtXTmFlaxmzUYpWleU/euMjAgvNCpR5gS9+86fw13/p6/id199APslwnGVG2ES2wN/7u/82/uv/7n/Hb/0X/wi/+h/9Cp556TO4/d7HBPw7OITn+bh06XMm63/11b+D/+Z/+m186a98ibAPUYD+Ug/r/T42+iRF6tgWVpa3zb77k4xPLfPGAl+VMxq4noNYlYMAUpXRQADbIXuRsEMKKS7z4Dg2yrxE2wJ7f/g21s6sIgmCExqNruMgiAN4voe8qrHR78NzXYhWojPsmMMIAGBZCOOA0GeeB9btYH15CMe2UdQ19rsRilmBuBcjUfJFEWMnlHQAGCmrwfqANh7Hhh/66IYhccySCHxZoK4bVDlJdNGBIpBOMtizAnEvQtTpmeb5YK2P6eEUjuegKirqhfKTUmAAkPRjPPjwPq594RlYjg3X95BPcxSzwvTRhKIa2I6NICYFiN5yl8AbdYMwCTGyLUI/xot939ZoWC7KN4VJYK5TbzR+RJG5ZVkoUgVeUb8TxAEe3XyM9V5vLmas7mMQEaycS4nNfh+Hsxlcx0HkM2wNhyiTBGlVYpIS76w36MB1HNRCgEmJDvMgJAk5i1Zio98HU70TjZD8c0fbwvVcdFd6VMqXknhYrgPHtSG4gMtcRL3I9Htd1zHZh8fI9kyT3aWUuP2j2+Z5+p6nonNagEsbQzy88RDlrCDaRxSgQg2AGf1M3RsMk8AEaUuby/ACQqlatk3l40dHWF7ZxvbF0wiSENquSM9p7bYSeB6BR6QE65CslwXabNOyhO3Y6PQTNBG9X6Gu1bZtDNb6GCSx0tqEORABmF4iOTfM3ycXEi99/lnc2V7G7u0d5Eo5J5/msB2bLMccm+hLZYXA8xAxZmQb27aF7youo+uiqBdL+aR3ads2UVMUKX13MkFe1crxgyydgjig92Nb8OMAK33aOLXTB3OJrxkyhsA7eU+LovpaSqwXhrh09SxGmzMUaYlCgcGycQbHtdG29M483wPnxL91bQcrnQ4meY5+ROoztgVw9bknp6LE6tpZdJSLibZhKxV6eVaW8CMfSxtLyCcZzl85jY1z1Jf88PFjlFWNfErBsJaP9EMfZUro1JV+z2T5zHUQMk85lZB4+XKng6devoJsnKGpaiT9BOk4RaezBJe5WF5fx/69PbDAh8tIIrC90uKrn3sO13d2wFwXs6JA8cRhD1WGb2punrMf+uit9NEZdjBcH+Lu+3cRxLSfeAFDqEBRvOFUDQg8FNMCZ585h2/+3JfxR++8Z7jgi6YNUkpMiwJf++aX8D/+Z/8A9z66j+HGEHv3umiqhtpWZYZuj8QedOA3XB/g3MVTWO/1lOB7a4j75EjkoL+08ueUvP/i8ekORYu4gsynfgoLffr3gCl4M0GoRcNRVw1sm3hN44MJzl86hUYIpI3A0nIf6WiG00+dgqd4igCMvNGFjXXc+LMb+GuvfhX3jo7QcI5+FJP7RhSiqGvwhtCodd3AVfy4Fi1FdErtodONcfHUptF/dG0SpF1crADBmYn3EiEdUYYRRCTsrReAowScCYYMxd9ykQw6cBwb3W4Cx7YwGlMGLEWLpbUh0klmFvkkzzGMY9MLoMOc4dGd+5hOSCVCAzBIT9WD49oY7Y2R9BLUZQXeCDiug95qnzZ0G0j6REYOk9BE1+rOjAAxCxn8gMFjLsJuROLtQqCpOYq0AG8EoODpjmujP+wiLyjj2lhbwtalLQyThIAfqofSCIG1Xg/nnj2L199+H//Oq18nQnFRYHMwwEpnPvHLpsE4y06IY5NGqDRRtWxpQju2rWDnjtE4/POG49pIegmyaabEtS0TPLCAoUhLWLaFIi3mWVbkk6RdGJjgiTfcoB2DKIAUpNWYt63RSA27EVzPxZ337uIrr75C2o6eh1lGEb7gAk1amvlk2RZc5qGz1DHQehYwrJxeBSwqR1MQJj9hWMmFQIvWaMsK24JjeSeenQkml2B60VLSJhaH1G9b1Nn1Xdf0oxq1znRWKtu5SHjkM1zY3sBg0MXhwQhVVhoJQ65oHp4mnyveoG3baARHxPwTIguaJwxQhsUUH9lW61UHWPVCdselxDBO1HZDQBLfdY0wvmVRydSxbAS+Zxwgiroyh6Gm9pDmLK39tW4PFixMmYcg9knwYFhASgoagzhAMkjAfA+RzwwoaLXbBVPXAOjg4UnnGxunz16Br/SOtY2cY9nIeGUCtsE6SR7KtsWF1VUwz8ObH32MfJojHZFCixd4CDsRBVGWhd5KH6HnYcI5mOuiG4TgQs57i+odX1pbR/6Fp/Hud97B4aMjeL5H+4NF87BISwLqKT9E0nSNsNbrwrFsRIxhUuQnyPstKFgu0wKDDr2T1mtPgsYGCVpJAWrciykYVE4wLiNaCa85fuGv/wxef/8jlFmJzVNrmGW50a7W0om2ZWG128UXv/lT+M5vfwe//B/+CvJpjt07u4hEiKbmEI1AXTWI2paQ3qGPyGfwXBdM8W9t20bDOWqlv3rhhQsYxDF+0vGpy6dRJ0SQhPBDBktpGWvkI6DMJIVEkZawHRJrDqMAWVUhm+UY7R6TNU1Ro7tMija2BdRcOSQotY3hxpDsdiwLe1mGJAjQCUOSO7JtlE2NsttgnOWE9nQc4pS5Sv1A2aa0LZHMZ0WBspVmIT45OoMEjqIPlFmJMAnQRPyEvZHPPPjMOxHhRD478ZnDfheTLMetH96inuRSF8tby/B8Rpkm5ycyY7JSsXH7R7exenoFm2c30FSkj1nMCvCaI+5TxO8FtBA0cEI0gkTMAx9lXsJ1HRPd02gND474nuSIEYUBOnFkvB0BoKyI3+YyD8yjDTSdUUn8j3/vdTz31ecAkEiBPtDTqoRrO3j+wjn8yz/8HpjrGseEmnNEjEG2rZG3c9VGrC3CbMs2GctidD8rS6RlidVuV6nkt58QBG9b6nGHSWDAXk3NEdlkDu33E3gBMxmbENLoQHbiyFh8MdfFzR/cxGCtb/QuXeV/56iN1VYBUX+lhw9e/wCrp1dx4akzVP5VOpQABUpCSNNG0AAa13WQDDpgrovlzSWESYikTwT00d7opKFu2y4IKLcImGeEo7UguY7oK85NVmIzj9aH0omtlW8g/WnhOKD1gJY2C60Sog6xWh062ncvEQHEUg9VJ0I+U6U9lVUz34PnzyNv5hKiNFL9NJ2tLW6w+h7J/cEzwtG9KFLWbyet3jSSVIu4t2ghJTkvZFVlROaZ55FfZT0XlCbu4jxwawQBcSKfkVSfZVE1KPLhMs9kZr7PjP9m4NHByFwXIfOMPKMuhy4Ox3Gxfm7N+MTqNRUwD1lVGSEIV+0fgTJGAKgPznzCadiObShkjuNg7dw6tk+vK7cJqnIxtf60d6EWzg48hucvnoPLXNx862PcefcuAChOqGtaKY7iY8/KAp0gQD+KzeelZXnyHQiJ/kofo70xtrfIP1HYNrr9hEB2ZW1AggAFZ6IR4HVDHGkllMJrjjt3H6Opapy9sE3VD4+ebfvE2o59H1/8qRdw/PgI2TjFtS8/izNXTxt1s6ZqTCUvTAK4PvFT07I0+6qnnn/s+wgYw9NfeNo41/wk41PKvNlYP7+BdJTCcV3kswK242C4MTTwcb0owigwGaC+8Va2kLLF9e9fx9UvXiWyfEsRsXZXyKoKjmXhlZev4ff+6Ht45cVn4No2waJ7PUj1mYHnARGw2iUdyOaJiapHxTk8ZfDaCQIkHTogT2htSIp+Dh8fQQoqu1V5hSyqjCGrdr3Q5py0oTqouTDqNFr9hNfEF8smKXZu7eDsM2eIaM4FJnmO08vLpNqjMqDnv/JZPL71WNE5JC4+dQbTvCAoPSMFEw2H1kOTfX2LkLmD1QHSSQoWzjcrPyTU5v0P7hOnc6GEyhwyYdU+bY0/D2osy8I4JxHl8f4EjuegG9Pvam/EUjmPlA3Bnv/GN38Gv/U7v49/71f/DVzf2cGdgwNc2dhAI2gyRsoHjkthbLfmZTwbtuWjaBrUXODRaISGc2wPhxBSGn+7xWEClTjAiirfjHaPEcQBOt0YnuuiF0cnLHUAmANYH+waNPHo5mOESYC4T9HutCigbWqKukIcBrj44iWsnVvH3p1dHK32SfHE943AQC8MaeNYcMXIquqE0bIf+SjzCoHK6t0nfCI1JN51HDjqXbg23Wvs++ag0YGGFmfXziR66J5eK0kdJ2Ce2awbZdCrQRXaC7FoGlhFoWgTNXk/Kt3JMPDNs9OC6Y5tGZPqpYQsvFzbRqgO8km2oH1q0cGrg9XQsY0yj64IaJNxLsgRp2oa1EIQMZ+T/my1kOUKSTQTx7bJ+sxxjKZr7PuY5IXxCS2bBnce7BgJxrZtkU8LJAMCajHmoRMESrifysKDODbzrFioVhzMZifemeO4WDlFzhmLalUh87HcIXeVRFnKaduqsmnApMSw20ER+IiUs0knjtAJAnNgWJaFWVFgtdtF4FGJOq9rBJ6HRnA4ymOyahoEjOHFC+fxwvlzeO/zD3C8e6yEHWi+OVr1Jw7w8HhkDmytqbrUSU7MIRKyb/DxWx9jsNbH5XOncDCjVsnhw0OcuriFc+e2UDYNmgUhhoYL2I6F6eEUH//gJvJZjt4KXf/xdIYoJL6qpgh1AtXC8ahvuzkY4G//xq/gP/7b/zm2L5zBl3/1S1jaIrpfK1twThkjCxiWuh0ypFbzijwrFZDR9fDm7dv4K59/6ce3Yp4Yn+pQbGWL5a1lFLMcgpPYrlQeeNoLDSALGe2LpQ+KPCuMmG9n2IEfMJNdlnWtLEGkOVgB6ptdf/QYZ9dWTQa5KIllbmKhZKMPR8dSLtRC4jhNUdcN/A5Jp9VPZB1QPmtEJD9C3KNUW4oWUUCLftF9nu5z7hC+KAU2zjPkswJCUA9psNYnJKtjk6ksTkZGFiysnFpB0kswO57i3T95B4O1PuIkQtW2xkmbhYxUShwHZU4RneOQVVTbtrDduSmnHkk3xtd+9hX8w/fv0YKwqe+rvR+1BRdAm7GnXDAAYLQ3RplVYCFZ+mgVG9nO3SIA2lB1FBb3E/zW7/w+/t1ffhUh8+a+kbCMdZbJelRpx1PWNkLSpD1KU0yLAk9vbhr4vnYLOPnKWtiOheXNJXgBU5q7hHT1PU9VFCxjLk3vjbzk0rIynz3aGxlAjLWQQehMy7Is5GWNXhga+xvbtvH45iMsDXvGnR2YZ3La38+xLVP602VKoYTd27ZFlROadHFGaxscrdSiSdvavUOjD09WG2zzO3poayudoev/JVvKnmrO0YsiU7oum8Z8zjjLsLt7BMklbNeGaATajkScUGCky13MoYNR2yPpZ6DL60+aU9NBx2FbNh2qFmWOerMmL0ALFW9oo1fZ67QoMc4IOdoJAvM8Fn0ua2WZFPsJuJAUrNQN8rpGRx1I+/f2sH9/H0uby4j7MURDLj6WbRH9qyVd2NKyTHm6FgKlNiDmHKHnneDy6TXnMipvu8KBcCQ8x0PNCSTlKEARcx1UTaumb4uimYOfNAhJZ5X63rkQ1BrQBr2wTlR4hGypxN6SbKbLGFzLwkqvFnKwBwAAIABJREFUiyiggK3MKjieY8rfvs8QeqSDSxZcMDZOi0MIej7XvnINt354C1/73AvI6xoPHuyC19xYhjGXjKq1t6NtWXjrBx/i/dfeRzpKSayDS4zSKcqsNIGgpgVFyttUmyPrsuel55/C3r09vPa7r+PyS5excW4Dlm1h0E2gCmCmjxswRp9jz/1rH49GmGQ5ZmWF4zTFTzo+aT3wY4aW1NIAjEZxh1yVdfgukSapJLiQOQlBpOrbO7AsIrt2V3pIAp9evjooqob6kHoT21hZQjbOcG//ACFjJrPSrhR6ctaco5ESjdJ29FTvUC/+4/EUYUD9Dt1PXNxAqBQnVa+U1EJIU482n8Cj+9IvDYAJAPQGUHO6/vE+CW+XaQHme+ivDdBKSaascWQssoSUaEHBQ9SJVK+L5Nbe/e579B2ujapuFB+UDhhHlQ7ofbQQXJA3X82R9OYlYIA253u7+9i4QLYpUpD+pGNbZhNzFjZ6Wx1SjeDEjVJasIPVPiIVgUkpzfPXh4B+hy9cOg/LtvHf/5Pfw9ZgiElRnCj9UVYzP7zNhqoWo2NZ2J9OcW5lBZ0gOGFe/OTQh8rRzrFSRbFJ1Ub7Ji5sJBptaQxXVWlu/x7Jtmkx6LZt0VvuYWVjCdOiMH5uLVpjKwUALGTk5vDOLQIWKfd6fQjqnxOSwDI99btCSnDVnytnBWbjlIA/sj1xXzqYOCHOrHtV6s/i0P3AmnPUnGNaFGaz0ddTqWgeAMZ5jnGeY1pQqd1zHFMBCBnxGXdv7+LxrccY7Y6IB3c8w2yaoaxqs+5k26p1MX+nWrBaBxTzGzt5nTpjov7b/PCnvYAy7LQsMSly7E0mJJXnz+9H+41qWbasqswfLgR8d96DDVTJMpvk2L9/gLvv3cGDD+8TR/ZwinySUWWoqsw16j1IW1MVNd23kPITQD0ARkJS70s6+9UtA99z4TmUyQQKoRp6HlY6HWz0+1jr9bDUScgk2nNVMNVgWhYn+rSWZZkKC61f7ecpyTqrrk/8vOe4SDoR1gZ9LC/1EEdkBafpU6Ha2wLGqKy78M4kl+CNQBD5GG4s4Yf37uHBg10EcYD+Wh8Ro8NV01B8VW7en07xg2+9haZqcObqGWxd2gKvG3UwN6TN2mpXJMriddnZrJ22RdyPze9+63/5v/Hev34PjQIIMtdFxAilrg9Ex57//se7u7j+eAdXNjfw5zgF/tjxqa2jirRQivkuHM8liSa10elFbMECc6g0ZVkWqrrB8e4xpGxRlzWCJMTyygDdIITvUjnSsU9mfIXyVjx/bgvvvfMxsnGGF5+5ZLIUHUFJteHZOkO07RN9nsPjCVzmkneY6i84TzylVrbkGCEkOv2E5LK6CcqmVpvFvKegD8HF/gWVzKh0MjueIR2nSmw4QislBCfT5W4YmFKHHsx1iHw+TmG7NrpLXSqjStJG1a73jZh/b4uWRJMlkdXrqgGvGzz3pWv47u++Zj57fDDGt/7nf4ULL1xA71TPeNZpR2/9HKUqiekNYZoRuZw8JJVWauDDteeZpa02QL1BZRUBCq5dvYB337+J//Z/+128+vUvAJhnUFwIinRVz0z/biPIheJwNsPl9XUqv0lhgqq2bT8RnbctKeTzmiObZEjHGaJOe2JRa8COYwIAywQve/f3kc9ysIBBcoFsnJJNVz82GxoXpOHq2nRgpmWJKid1pc6wi8c3H0FKiedefAqx76trliZDdW3beFDqTNePfLi+hzIr0VHSck+iGUtVCvMXMncA5qDRz03oTEJlFmVNKE5NaB/GsdFMbThH0TQYxjFmU0IpFmmBrN9BWpbqcLex2e+jqhuM9kY0t0pSKNL2UnEvgq/MfmVL9mE6e9OG1PpQZ84nnU0aBSLSaNUT96fmVsUJlLV7cIxiVqCjnG14GEJYLaZFASEJ1UngHQeTCQmHjNgMUJSpRyPSBz6OyCuzqRo4roNskmOiLOK0LyRvBLrLXTCX1kauLJlKVXrN6xplU2O91yfD3yfuq8xLU9IGYDJ6vWZdx4Ft0SG1WGnRfz/ZM5/kBfKKDgBLZdQA8fkazsEty+ifep7+To60lAapKyRpTQvVwycEqf5MC+GCGYOu2ixqDnJVPuVckJCBup6DR4dwXRfv3bkHy7FNH3F6PMO99+7heOcIp54+TWpZAQkvsJD0rWfOzMyDJPAxUQFcLwqVBrVjgovty9v4wR/8AJ1hB0vpGt769huwLAtnnz2DzpCMyWVLmXLgEep5UuS4c3CA8SzD5a0NbC8twYKFm3t7+EnHpyufqr+1ZmaQeGpiUyN/cejNs2oaTA4mWD+7jgcfPUBVVHBcx8Cz9eYqFvY813EwKQrMyhKdIMBTz5zHa9/6M/zSlz+PSZ4THN2aK/1rxBEA0+Bnrkt8t8jHpqJ1WKphXdQ1nizCCk58RMrEGGZZDsnJWknIFoECyPgLQBMA5qB0bBtH04IyMZV5AMBslJrMTnPt9GZngdCtnk9uD03NEfcT8EbgnT95F8995Zr5Pn0Y67JZ45DdDMoGktPBWysuoHlfsiWro4cH6A4783LdQl9Kv6dGRd5FTTY7rXohYSdE7PuqAjDPLvXv6U2tqGuECghw5sIWdncO8a/ffg/PXD6H1S5ZPzHXxTjPkauIXGePeVWhEQLLnQ5tXoIbF3d9YDxZ8m71ghcCqInaIkWLw8dHOJBE34ni0JSmdA8sr2a4+8E9uIzQcsWM9ERr5f6gn4W7kHE7to1pWaBuOHjNUZfE/VzeXsbuHeIJXnvlqrFS0lmXdpHQz2t0NDEawZpjmo5SI9qt568+xHTs5jkuRNvCVRuWzp6lKulJdUAUinNYqfJs6joYjWfU+7ctKt+3rTEV5jW1QKYsJaJ4UWOYJMafUTvS16UitJfUx9aSfZ7rGo6jXMjox3mOJAio76+GZc3d03VPDZiDdDRiUKpy6aPH+7j/4QOi1XQjcC6wN6LrmhxMjAFBVZH36nh/AiEIhet4Lpqywd69PRzc34fLPGxd2kKRFkZse//RGAcPD9Fb6SlrKRJgd10HIiaO4uFshrwmuT0uBB4eHGG12/1E5UJKskvjUsJW81S20iCsbUslChoPwRhsiwoEVFafTwDbolaD7kV77hxhqwF9x3UGSyE1G8FNcOtY8/75o50D8t9URgwTi0TT9WcJKQHV4tKB1ifuS5BbkVD0iqogqycvYKiLGocPDw2vWjQCdVlhsNbHmaunEfVici1SknaeQ+o42oiYqmWqtVbXpqLkLFzDz33pJbzxf72BIi1JhDz08eYffg83/uw61s9vYPX0Kn7lm1/FcqcD2Uo8Ho2V+L6Pta0eNvp9lHWNXhTh4w/u4Ccdn07RhguUipOYTVIIIdAKiR3smzKe4OSJpR0S4j4J3L73J+8i7EakDdiJqJbuedgcDOjzVOljWhSmv7HW66IfxXg8GuH88+fxz779GiYHYwAEIukudxH3EgghjP4lIWItdDoxljsdXFpbM/JPmnNWVCQyfuLepFTZmoOkF2O8N4IULVzmYgzyBqzyCpPDKVm7BB7JdbkulraW0FvuIfAZDtVCO3XlFACQhxpzIbg0Ja2+auBrnz3bsYgjVZN11NalLYx2R3j9X/wpHl5/iM2Lm9TX60aKcuCQDZbvocorMOWdd++De6bMChA1wFM/I4Q0Sh07+0fkbM4F9YXVARQmZLdUZiXSSYa1M6vor/YRMR+9BZV+gIKdcZ6hUpYsnuNgGMcmK5ykOTaGA9x6tIMffXATtm0jTAIMB10kPlEGusqkthsE8BXsXUfEuhToOjbK+pNNcqkO/GycGd9AKSUmhxO0UqJSBr4sOMlPIsWgVUwPp7j3wT10hh1lxOoZHVkN4dfqLDXneP/hQwhBvV2XucZSafPiFo53j/Gv/o9vY3lzyaB//cjHYH0AP2CQkkq921e2MVjqwXMcjGcpRCPQlM2JudiqvhaXAlC3bYBoT/zccZYir6hkNhnNjHWW7ZKZ7Dvv3cGtt2/BCxhWT6+iu9Q1ZsTZJDOl9v37+7jx1nVUVQ4WMur7ME9ZehXgDaEFPT9HOqbezCz24XgucTpVSdNzHBKGPz7GuZUVWAvcMNm2EK2Eazlm/mhwiJ5T1D8s8PofvYWP3/oYG+c38OxnnoEf+aT1WnMS76gasJAAS0VaYnowIQ5pViJMQrId2z0mfl1CsnBFWhhTZ7/r49LKFfzhv/hdLC9vY33zNLrLXbQtueyE3QjFkMTuq7pBFJBd2nKvi73JFEtJ8sRcJJnH9MslfOYZcQutwakzQ00VcW3bZJI15yYglQqYNStLhIyhr5C5oyzDYUoarC+eO4fvf3wTohG42ZIXaTcOUdYN1nrU4459Hz/89g8VuC6E7VKLJupGSPoJhoMumOPQgW/b6ATUgy+b5gmTcgd33ruLrcvb4A1HXVZgAe19YRKgM6R+uhDUZtBBluaCMt/D9HCK8f4Yew8PUOYlqozwENPjGYoLm9i/tw8pJXYe7uPl56jicpSmqDnHs9vbePZLz+KdP/4RAeiGHTy7+QJcl9ZrEAd47e0PsLQ2gOs4OLu8rBDrJDm4P51Sb3kywe//g3/2iT3kLxqfLlNsSSCatEglmpLqw23bgoW+Ail4iHvEg9OGttq8d2lrGXXVIFTYBNsmo1TXcdAJQ8zK0kTZur9IUG9aXJcuncZ0ewXTSUoWOY0wkXcnjgyakrmO0WDUB6J2jafGvr347qk8YduAC3XgMbhKIEAKSQhQtVmvnVs3iFAhJJjnmmtuhMoiOiFshxwbqPTXQjQc3HUMr8hViFatEm+ra+IqG3n6pSs49dQ2Ln7mAtJxpiJ02rg1utVjHnqrtiH6ko/aQkbVQpU2OIT672VO4JJOPyEune8ZbqRlAfmsMOobjdqE8oT6O0VNaNzIZ6g5GSXr3mLDOcZ5TotcgbAi38fVM6cwK0vIlvpriWqM62a4AQ9I6omYTFgFMDUXaBZ6KItDUx9sdfgz36PsxrWN16JtWwi7kaEK6QNq9+4uRjvHiLsRypRQ1EVaEIycecb2yffmgCHtDA5QgEhzz8PZK6dx9spplFVtXEG0AIFUpSJd5oyUlZRWi+EKUDFfY7rnyeGwefXjSXRpzbk5EDPFw7RUNhj4dA/dpS5OPX0aLPCM2g8sC47rYHY8g+d76FU1PN/D+ecugPkeBmt9jPep5SClJMsmOQcHAUA6Tqk/1JBz/HGWwbEtRIwoKp2A/Aj9hUxxsT/q2JZB6WqpL42q3J9OceuHt+C4Ds48cwbdbkJVBYu0j/UGr3tLXsAAlYVm45RkBRWAjwVM+a2GyFVFQEryLhVcotMZ4uDgPjyPxMUjpW7jeIQ+tyyLEgHHMpmeZVmmF2vuTUrsPXxkBDFqX6hsrIWQjcmY9R4i23m/tWgalHWNtCrBhTSlYddxTC9zmhdwHBuT8Qw3ggCT/TFsl5x7EuVan45SHEUjbJ9aw+ZgAK74x21LlCLJBfJZbvwwa86N1ZevUJue45yooNkOBVdN3RhxCiEE7MaCaFS/X4k5aMK+4AJFWpBsnSpXO66Dm2/fxO7tXWTTGVa2V7F+bgOSS8yOp8SRBrCyQco9jx/sYff2Do6+dA2TgwniPnEhNQJfepJM0iUBwaq6AYtcZFVlQGg6kAQIvLd99v8nQXAppSkHOh6pFdiOY/g+rufA85kp1UhO5HBtHplNMkgh4bgOirrGOM+M+/wkJwmjttXptDANby4lpCr1ragSW805Ip8hZD68BbCIVH0NDbXXyhm6xForU188sRFpjh59DnEH9UswHDfLAmNE7hWyhesTV08on0gtCVdmFUZ7lNE2qt+nP4dzYa7bd+lFkgsITT7tWu/YNpJODJfNNzStwCKERFPWaGpuXMMzBRbQii30CwTW0Ru5rTiNnX5iDkOPuSoDVNn6ODWLW3+mlESo1s9Xl0w1XUIv3ryuDc9OCIlO4EPIFr7nmR7wIpeLNllCren+lN74G84N6Kp54uAAaINpag6+IC3oMg+WbRmD11a26CxRn8hzHFRNgzyjjEHrwO7e3QOviFfFa45snGG4PjCZayMExrMU5YzKiUVaoEwLBFEAl3mIurFBhRqQj+MgYsxwUhdpFGlZEtVBrQ3JTx74rSSEKkC9WA2aaAQ3QC9NZ6k4p5Juw0kNyXMpo1Pl+bifmFKi4BJNVSvJObLZIjSii6RPura6D55NcrCAWiPcsoCyRiskeEsVoDItjCBFUzeYZblaW4Sw1A4c2mBZvx8uCLJPvoeKgqHKpqIllPij2zvIJxmu/fRzWNqcW6w5Wm1pmish9hb5rEAgpHJhJweNYppjqojkABR9TFMRfIPSFkLgzLmn8OH7b+DRo4/BWIDeah/ZNIPjke6xboFo8QLZEn3oOJtr1QJkxvvgwUdEYVClz04QGIcT4TimfGhZFkQLU+ZMVdn7OE1RlBVcl+z4mobjEMAHr3+Am2/fxKXPXsLZZ8/g0fGIJDJ9MkL3mIvrf/Iu3vne9xFFXXzuZ14xVaq2bUmbVlD1zo8DOtwsC91lorK5joNuGBrE7+Jc9HwPVZUDyrfUhq10VltqXwhCgLeyRTbNqPJRNxAKyc9rEnLpDBLaqwIP6c4YeGSZ3uHseAZeN6gr8oZ8fHcXr/2fr4HXHIP1odEz1oNz8qi1LAvZOEVn2EEm0hOYg1Yh5TWKd2c8xl/+W38Z/+s/+i/xk4xPKfOmUmQhDWLMYy6COIDjuSTwG4WmH5NXNYq0NIvv6PERRMMxO54i6oQoNpcR+qTFSP0a2pwoCgH5ACpOUZGWRr6HPt+ln+EcUNmFozZkPSF0BlcovhM0avLJclxL6E5NSG5qbg56x7FJ/UV9rpZ+89WCoY1NUFDAqKT68MZDhJ3QTFwpJZIJKZroyaLl1aqiMnyimVK1sOw5QdhVC1oIQbBx0aKtapIW02UnBbih3tETgGIVHUshzIGhxRZc20ESBIgYQ1qWaEqCb+ve2tGjQxzvHuPw0SEhZJmHqm5MebwqKsokZ4Wh2mi7oqSfmGxdw8/pciwTzVWcm75CI0goQXPXAJi+05NEcD0XJRcmuNHN/t5qXxlGU/br2rb5rlqVisMkQG+lh7Zt8eDD+7j+wdsIwwSDh+tgjHRsxdcp46jyCul4ZoKVgwcHOHx8hKuvPI3tK9voxZHiKjaG1qI3w4ZzZEUJ5rmoG26ySF43BjlclxWebHBreoXu/bRtC0tlG7q32qheYtu2RtHJ8z2VhVsQkqoc7QKytanp/oWQYKGvqhKEbtaUJKnl8boxLNtGLnKDJKfAkAAYVUFRuWiopaLXCFcSZL7nYX86PXFfFW/gOjY4lwYYwVWQVdQ1dnYOcOddEoE//fRpMNdFmhdgzINlzStVdUUbr9YwDeIA+Syf94QX1reU1BeLOiF6K31UeWkqL1E3xJkzz+L69Tewt3cP2xfPoJjlYD75D+pyun5ntm1DyBZ5eZIzTN9DVQTbsRX/dd5W0FUPnWlKhcAt6ppATtMZirSAaDh5MSrrtSqvcPDgAC/93EuIuhHqsgGQGg9Kz/dQV4TZ8P0QnseQTTIcPT5U4h4EtuENV/3kApJLeIzEArSh8R6bgAthMnY9XM+B5/lUrgbotJAwc0rKCpZFqPYyLUzrDJYFp7ZRl42ayzQ3ty9vo7/Sx+RwoizlUqSjFPmMgqrxwRg7t3fILWdzifapkIEFPrUuAmYCdn2dZVYiiANqpXiVCSIXq1GP7+7ixRee+sQ7+4vGp0Sf2hjtHRmiqh62Qy+IMQ+uY8Ox7BPAiCD2YTsW0lGK77/2XRwdPcIz73wJa2c2sLS1hK6qTU8OJjjeHSHqRgg7IQ4eHGB5cwmnnj6NjTNrSAKS5tISPmVTExHY80zvSW9GekPlokYjOHl2NXTgUA9tfv0tKIvinBTqtauGVpoAgK4fqmdA5cO8qlFxjkEnmVMKbBvPfeU5vP/6+/jwzXdwcHAf4/EBhODodpeQJH0MBhvYvnDGSErVVYPx3hjHe0cAgCufewprZ9aQFyWiMDAWQlyVcGwHqj/YoC7nBsy85sgn5PQwf18WXGUEPdobI+7FqtxNwCLPdw2w43iWoqk5kkGCIFZKHw3Ht/7xP8dsdoTx3girZ9bgRz485qIuG1R5ieHGEgbrA5OBRHGIQRwbArLr2AgYQ8O5KqNK00vVBHfZtrAtG8wlesf83Ql1cEojAmDeWQsUaYmqrIHjmQloPGV0XeUVJBNA6GOmgFnDTgJ/6GJalGAB9WijToQ33/gD3L37LmbKWcD1GI52fxn9ZVqYdVnDdclxIhl0sHFhExvn1xF1Y/K1s23DL6s5N+CxvipPCSnNQUgVAdrwJBemxL44mqqBiCU8wJSmvQWpMz20QwI9DyrBl1WNLKVsKh2lmB5NTa+6bVtMDifIJzmklITqdBwAAkVaIRtn8NSBsH52Ddk0V7116kc3ZY22hRHPDpMQYRLAsm24qjJUcgG3E6NqGnzw5kfza20ERtMUS5sdHFUzI4ygkcsPHuzie7/3PTy6cw+v/q1fIveQaW7uz/HInqtRiOjp0ZSed1lhtDtCUzcYrA0QdUK0LYzcmC10ZihJDnHYQdiJcPDgAMePj5D0Erz8Uz+L3QcPyPmnG1M5VrVNojjE6JCqPqLhxP/0Tm6bURLjF37938T9D+5h48Im9dsUIlcrQFmWBdnUsFUWXTdEtziYTJWgvAUvYOhHlOHWnGPq5XjlF19R5tQkOu8yUrO69/49bF3aAlv38PlfeBmwPg/mU1Wprhsc7RzDjgM0VY1sIpBPMjiea4J0FhLqWjQcB7aNaVGYazVrTLZYO7OOdJQi7kXw/LlClN4fXM+FF3hoxy2OHh/CD32w0Ec2oSCFK+nIMi1g2ZaRZOQNN8bKh/uPcebiRTIWrjnWzqzh4mcuIp9m6K300V0iRxvRcAo8bBt2M1cf80OfONtCYlIQELMXRdgc9EntZjT7RB/4x41PLQheNyUEF+YiNLCjFRJNw1HZ9pzM63mIehEalR73V3vY3LyIyeQAt269jTQbo0jPojvsYGlrGfv3DxD3Y5x99izatsXamTUk/RhxLzGCro5tmcwQYKbfAlD51GlbNKADqlFwfy7mJSpd925PQv4AAFVO/VLLsij7EtKQWquGm4h5UaUlCQLTDxFSYv3sGljI0Bl2cPfdIXZ2bmN//x7SdITRaBfj8T75iqnM0fEcCCFw9plz6C130V8bQAplBxOc5Oi1aIl8r+SgAIr+m6qB4AJVSWLAi0NnHfksR6Q866RCbjaCo+JKWsp1aKGo7ENwgeH6EFdf+Cwe332IWx9+iMnBBP21AZa3ltDKFqtn1zBYG6DX75Daj+Ipad6alo8CSGJM99OetBSyqamLup6XT3X5XN/Dk0RwIRrYNm1evBGA1aBIC/RWeqjyyvQyyqxE0okIeq7eY8Op3BgprcZvfPOv4ta7N/Do0Q3k+QxFMcWdO+9iu7mCTo/AMhdeugzbccB80kFtFb0IABpPkMCC6xiVIw2ksi0LjZQGuNLKdsGvU5wARgFzQFfdFXAsOgxrMZcaNPJgIBS453uospLoKWqO6u+ZHhFZ2mMuKiX4UBUVyrw0cl+WZVH5X62R6eEEUTc2PUUhKGOOOiE4Fzh+fGzmmB9R/32xmkJ9W3rvVXFSYFo0dB9UQm0ML5ZLgf37B3h45y6Gy2vqEGhgWYDLiL7SXe6qwCc32pu0OVP2lXgJ+it9BDEFMYJTi8RxbTieYzZz23VIZm+Q4PChiyKlZ7G6uYWHNx5g+/K2AVFZCwhk23GInuIzVNXJ+7IdGxsXNnD/g/solVasiKURndCBvGVZYK6az0q8GqAD37Zt0h02ogSU5WosQT7LUaYFgeE8l6oYRYXZKDXzojPsoFa93zAJIdW78AJPCXbb5nlVORH6qW3QmHW/WJFp6gb5JEOr1GQa9bx1i4b5nrEo279/gHxKcoBFWtJnK0uufJrBdhxIQfiGMiMTeL1+oqgDL2BIerHBRNiOreREybi9vzag5xf42Lm9g/wox9o5CtL7q310Ikpa8rpCwDyjlCbU2vvzuM5/0fjUh6JlES9FuATRdT3XlPxcAI0rFCeHLsJxHIIGK9+7s8+cBQt83L39PiaTAxTXUywtbRAXZn2A9XPrSPqx6VXaNmlZkvahRM0Jxq0PRq1go3tWunyquT1a0YQr+H4rqJT45JBKYaUuaziq3u14Lrh6SS1IXUZz0LRQsRZv1ptg7PuITq+hu9TFuWvnsHf3Km68eQNFmuHw6BEODh7g+OgxknqA/vISol6EzQubSAYJTWIuzMboMhdh4Cv4veKAWvPyYtu2RLCtG4X8EgZQc+Ilu/SOqKFdmWjLsiyUqMGcEEngY6p6WbZNAY/tWLjy8lPorw3w8VvXTTYWKBH4uBuj041Jk9F1Df+SNAe9+XuxiDcWMGbej+aK0t/EH9QEbn1v83f5Sb3JtiXQDABVHqb32pQ1EDBDxncZ9dg02EH39ABVbvQ9PPfT17B5cRMPb1zE/v19zCYjSCmwde40hhvkNNBfHageGvVU9MZAwQWBjrphSIe5PUfo6nt3XQdV24JzJXfI5SdL3aAsMZ/lqJe7sC0LgeqfaRUTV8mjlZyyzaZsDKCibUkQvC5rFRjYVLK1LLCQHFWMHqsCIUlBgCGpDt4yox65LvNrOyo3CdBf6aMuiL7QW+nD8ai074cEsKkbTsFNw+El1Oc27wsUaHEhTui5krAAx+7dXeT5FJe3n0FTkT+obZMKlO2oTNSTcBw64OJ+jCqnuexHWlvUVX1mYcrdtgKCaDS8PvAipQOcZRMEQQzLsXHr1tv4bPkiOgPiKjuK/0ZejoSZYJ6L2fFJmTfbcZSBABTYTSoBAdfoujKj3KT2IzGf267rwmdEpLcJPg+hen8EoiEO5vR4Bj8OyGhdBSN11Pu4AAAgAElEQVTpKFXIdWr5aBR+f6WHIi0NnYKCHxIl0Uht2lsdWFo8oZUnDsXpaIy3vv9tbFz4m4Dad3jNEXUj2u81fsGykI5mcDzXoK+DKEA2yag6pdDvTdkYgI5oBCxmYTI6Qn+4THuS68CPA3iMUKthNzRAxWycgTcCZ6+dxdLWEn70Rz/CwYMDXH3lafjMwyCO4dg29qctIuYbwJ/vEXjsSQ/MHzc+NfoUoF6fdrNvlMKFzh4FFwDTWRu9eBYyxL0YrZTwA4bOsIsyy+EHAaJejMFaHxsXNtGUZKgZdiJ4nou6bqiX5s6VSGyQeoPr2GgXZMpc9c9GC1LODwfZtgaQYbuOMfRdHKR5ShY/+j6pZ8LNP8MmvpHvOoazOMlzs2HrB+/YNnpxhN75iEo63QhlVmK8fwH3PriLtm2xemoN6+fW0V3qmn6l7jlJ0RrnA41Eo/9Ph6PO7AAYIWwhKFOYHs37OJqnqPsqUghYvoembND4FPWRjJwkSLbXoHIdoG3Rtg4AB4M1WkR+SFSGuBeBBYxQkmph6UNaHz5aP9IccCChaQ200ZY+mlyvOZiObSGv+Yl+GgBlrvpk+bRFXRP4xVpYyGVengAbWZZFnoTq0F4MjqCed9SNsRkwLG0MkU1z1CWJo0ddVcpSvETBBZyFjNW2qTytyfR6LPJYZUsCB3lBG5RUYIzFg3xx8IXMXziklKN1M7WWMHNdHCr9zenRdD63HVsFdfTdQULOAkEUKPsqQvtZFrl0JIMOWfyovrUWmqdMS1CvKCN4fV1U8KMAS1tLOHx0hOWtZfgBI4CPolfVDUfgMxRlhZoTwG7hhUFygVlZGmUa/X7qhuPw4SHquiTaSFYiSEK43vw96oOenhHN6TIrzX+XQiAdpahLag8Q6GyOe9DrWIN0hOqnAkBZpHQddYlsnGF5a9kE450gIOCgTYeqkPIEF1jPA15zdJe6psrC1drQPeFFIf1FZSc9lzVAcKZEuaumQTHNUWaEyaDs3sFkf4xsnNLhETAy1RYt0FLlIp/lVOpf7cPxUtVzo9J6NsmQT3P0V/vmXQexD9d1zZxZLM83TY17996njK5tVaCiDsZeRNWstoULoC6p76grH8P1AfFGDTCQSsA62BAWrUHbdpCnM8TdaE75S4BsmhlOe1PWmB5NUeUVZsczLG8tY+3sGt7+kz+lvqNSAGJq/9EBsFA9/ps/uIkHHz3ATzo+taKNbdtIFTcMjKKofJIhSEJ46lCZTlO4/S45cQsBz/cwXB/SgvVI/f3CCxdMpClV6a+YFbBdSrmFkHA9usmQMTDXMcodntqE9GGxKAbu2TaKpjHQ9sWSQCskGi4oEl0YrQLa2IrS4ToObMci9JRtg4EWkxGxRotS9fK5FCcMcB3bRl5W8NXi85mH89fOkchyVePpV5423+k4ZHeUT+cQb33w2Y5tNgHPp9KPLudIpXivUWWiEXT4CYnRweH8fSmqgjZRHu2NsXZm1bge6FGUFWRMAQUFNha6S10wjw7+ztkAwUvPwrEszMoSWVXheDQlCxrGjLYkU9QaQqTOeaH0N2mYakL7k+T/tlUHpWVBAkYZpWoaKjU9EchIKVEUKaqcvNlc5ir0qW34inE3QpCEmB3PMHEdWLZlerFhEoKFFG3bzEPSiRHFITa3VhH7PvanU8zGJNfnKMV//b0AjFUTbzimqpedVRVC5Qyi76vm3JTDm5orMIKy66q5CXIW39n0aIqNCxsQUuI4y4hiFARGxFu2De7fJydzl7kYH4wpI1DgC63QBABhEhr/USqRAVGX+s5HO0eGdwwARVogVvSV6dEUo91jHDzcRwtp1siZq2fovsoacT8xiFvZtogCQv35zMPB8RjryjOQ3i+V1WyLXON1mb2oa2STFKOjA8Qx9Y/GB2ODKB3tjnC0c4T1s+sYrg/geC42zq3j8e0drJ9bx+efvozrOzu4f/MRustdoosJgds/uo2Nc+uwXQcfvfEReCPww++8hUePbiCdjeC4HoaDdcRJn4Bg+Qyrq6cRdkJ4Ss2pzEtMfYbuchdVXiGJQkynKW6+ffPEXAxCHy88fxl/VtXUq9w5Jv/EJEHJOSwLyv/Rh2ORHOAoy3Dr9kOSPStrMJ/mrh/5SEfpHGyWl+gMO0gnKZJegjIvIYQ0vEPHdUylACC0bV3UiHqRAZ/VZY0g8tFf6SGb5rj+/ev4+d8kc3bXddGPI/ieZygN83cm4LoRPv7hR4i6ZLzOfOIHzhQC1vOJurV1adMIoEgpcfT42Lj6+MpisMxK+A03fqTZJENSdNBd7iKIfEyPZ2ada/CYphlF3Qh79/bgeA6mh1Ocf+4cjneOqaLoesY5Zr3XQ1ZVSNRcBIA//dYfYzzex086PnX5FIDagFtIMd/QmoroBF7gQTQcIyclIEFFhNAgIRi441AJwk8idIPQkFU5F4YvGKoynd5otS0UHXYEE9fwZo2Y0uK6OurS5VM9JBdGFoyueX4/xCMUgAKbWZYFy7ZVk5ia9Kgb2CFDXlbUQ7HtOYhCNawtx0akCOlaFi5izFi76Og4G6cQuhyqFgIA1etsYUMBMxyHSOpKnk0q2xRezVFdgkvURUVlLRVB66HfC1FkbAXqmPcZG+V5adkWUqswKN+mqsm0tqXnqJ0JHI/QjZ0gQN1RUl6uqwjAvlG+AUAZtP4epVQS+75B4NmAcUXQUHCtdCJUSVKXnjzHgcAny6d1XSrxAgbXc2h+qSzRdR0Uyt9QyhZNSc+mSAvk0xydYYe0Um0Lgk+MoTMLmLGc0hqnkCQDB8DopNoK/ctrbsAzcTdSKiSUPWZFaUAJiz/L68b0Tp4E2Xi+h+PHR7ShKQCPVm9aPGijTmi0aW3bRpZVePe77+LUlVMEDmtbs8FohGlT1ZgcTIwZsVa1sSwLtkOZUFM1aMoaB48OMTraQ1UVGPTX4DECZlRFpTINRiRqZ26V5LuumjMWZvwkyruVktotDglgF0pGLfZ9SNHC9yNwXqtAxcH0eIYy3cd7b7yNZz//GWxd2sLa6hAtWpwaLmGYJGjbFlc2NtCPSO5rOUkQ+z6yqsLrt1+Do1owo70RNi9som1bpLMR9vbvIQhiuC5DGHXBWIBWSgyHm+iv9mHZlur1SyMuXlc0L6fHMxw+PjrxzixV5u4udfHg+kPMjqcYbgzBhUCoQGZER5lLK+6NJ9QnVHSpVkiyl1PAK9cjr8CqqBAmIbYvbYE3goTMucBwcwjHcQySXXAOFtA6IBUbYSQgGwWS8iMfcTcyqFrfZ4ZCpBWn7BOHYgvLsrG7ewfX+PNAwADbMr65zHC5BRzXhRQUHNZFjRvvvgPfjxCGHQQR9XDRkowbdF9dSASxT36jswLHuyPECijYqv29yiukkwy7t3fw4O5NJIPPAQBmxzPE/diIR2h1ND0PLYuMr3cnYxRFeuKw//8an7p8qkEaQgi4C7+u4dJ6w60L6lNUBcmGaTK/XiiOyui0uSw9CLLW0YdH7FNPsW1bI2HVCG7I3oHnIV7ory3y2RzLBgfx6JqyNjBufZicuC/Zqh4aQc6BeaSivcLqisBCfuTPy29qVEWFumzIdVq5k+uySaWzHUkebz7zwKM5GMAGDK/TcQmcILhUXBxC2gUIDAqWRAsUUENNzrqijBxPgFFaBfuH68BjHpq6oehMSYyJhqMCTB+KVw2mR1PTHyiz0jxPnXH4AUOcRMp/kaOsarWp2ljtdtFTnpeu46BUgs5Vw5FnBeKEDo2lToKi5nMXDdWvaFWpUWeYc4eH1hxai6MoUnAFBrAsi+yYhITrKnqAKq35kY8sLQzE/da7N7C6tUHABFUq1Go+esNgIUOoskxAc1ctMyf0gWq7BMDIJxmSQQe95S4GKyQrKFS/DoAJIOmfW/OZT2q6wrLw+PZjuv66AWJaB9OiME4tsm2xujTA/v19cmBhJLwwm4xw8CBAd7lLsmkLIB4yyLbRVDVSJabhMZfAQwHRifyQDJh1L5H59N+knGvPVnmFIApMIKcl0PRG5NnUZ8+nufH0o7lGSNu8rikTH0/Qti26IfXiekt9VBVJK9J1NnjvjbfxwQevg7GQMsi9ETYubOIf/8v/B4O1AR589AB3v/wYtuvgT//56/B8ArgdPTrEG9/9FtxvM3iej+n0CMs/3Mbu7m0cH++gKGbodpfQ7S6j0xmCMYaqqhBEoRKVd+brgzfwnAB1UcN1Xezf28Pbb/7ByXXWkt7s0toQLKBAqqmIv6utjLQEmxY9H+2NkE9yU7VyXAeBa6NVZVctIsICBtu2EQ8jA6rpr/ZVf480W6XiDFIy4BoqmHbTOdo5RtSJyBfxyjZ6K12IRsCN5pZdgHK7WDg8LMtG20qMx3s4fHSIyy9dIV6tJAPhtm1NgBV1Q4z3a9MaOH/lKnjDkY5TjI8PkU4nZFPnUdIgBEfTUCUsDBOk6Ri2TRSQ7qCL7lIXLvOwe3fXXM/a2mkU08JoOPuhD2tBx7riJHnHPA+16ud/+NFdcF59Ivj8ceNTZ4ptKw2U3FGTRz9IozLhe2gqAgAUsxzpmCLapmpQF7VRHHE8F7Zjk75mN0Y+zZTGIvVF6l7HWIPoCGuWlwYpxVV2ons6i+AMQBmn/r/tvdmzZcd55bf2kHs+4x1rQKEAFACBIAkQokyY3XZQTTmssFthRzvCcrj94Bf/Ef577Ae3X/zQ3SFZ3dFtqk2RBAcRBAECIlHjrbrTuWfac+7M3H74MvOcWwWxhY5QhE2fjEBgPvfus/fO4fvW+i2d4Uh8UGn7ds8Ps4P3NKfUTHhftMMwO/5e9eBth3yeo2s7ZJPM7vRoF06nBCmJ/OH5LhzX1bzFDk3VoNalUxaR6MPTJl+DtGIhg+fTabJXytblN99naydcKa9PsI6zOTn1qgc86Ngvaf9913TUMNfCqYvHF3j0ySPMnl3RPfY9xFmEo7vHlm8YRCEcF3Yi9XTv5uSzEwK0B74lyrRVCyEEVhdLeMxH8p++iyQMLdWj4hzMpSgrk74BbNI7/rZBPaAanHPixjYcTVFjMB1Qxp7vEbtRSKTjzKoPBe/w6ac/xKOHGaKYThuMBUiSEQaDKaZHe/Z5iLLYKlmNB4433DJxPd+1gpW6aJCOU7zytbu2PMRrLXhhPoG/9bNoTsVSqhe8hOUqx4MHv4Bo/wtITX5xHAdF0yAJhvYUbTaOgpMsPpsM8LVvf8NaJBwNxTaKULPbGx06dCJpOOJBjOF0QH1Bn6T16SiFz3wc3T22WMDZ0xnqorYsTLPxlVKBY2NBkfpUX3GOi0fn+PzXH9rrqksKHa853/hPJVUJHJfM5MvZFampdbB2USyQ53P85Md/hvv3f47BYA9f/+b7OLn/CJO9A1yeP6VJU/X48MPv0XvEQtR1jiJfoOU10PcIwhiXl0/QthU4r+G6HobDfdy+8zqihDxuQd+TRUVXAJSm3vC2QwkS4I2nQzz9zTOs1psWBUAtgKJpMUkTxFlEfmPN91xpq4PPPDsxl22LYlnYd6lcl2BNh8ZrSNzHBTpNZzJzCVU4ymsionqr9I2+R7HISZnrUAl+eb7E8nKJ2ewEb33jG6QCdV0bNg7A2mIa3Xffnu0cx4XnMSv4efyrx7jz1h1bnXE9z1YDg4hQi6sZgdZv3rtpr1l0ErOnM8hOWBXv+mqNrmvQ8RZCcPC2huv58H1St06Opzh+5Qg3XrtBbagowNXpHCd/cwI0wPzZHMkoge+6RMJivtUxmDnkfLXCL//dR3b+/buOL70oep4Pzrml55udMECmXjQ0kUohUecVzh9d4NEnD3Hj7AYZ+TtSL9149YZVhgFUdxa6BBClEZSQuHxyac3WABClEeqiAa9JzcRChuTtAIM4vtbbMz0OA5N2HOrVucq1J8JrQ59y26qFoxVvioID9enRsVxX6jd0dlF79ptnOPnsBAAw3BsiHSW0S9O19WSQYLRP6dQEHiaBy/YD7XmeFQJ4zLcJFV1Lp8+2JvGRFMpSUIy4Sfe/AQCc19etJoDFMzmuYw3XXdtBpQoA2UF422GwR4SLZBCjzNe4/PETCNnB83zE8cCeKHpdzlVCgkUBlmIJn/mQQlpRAEAknXiQkHLQmKrbDldr8gwZODJAPWGm/7zdazTKTaVe7CkCDkTHoZSAEAJi6+crpRD4gVUt+gFRW9JhAj9g+E71T7C4WEIImlyCgE59TIMNpNgQOVjgww8ZqlVJBmhF5BwpWk0yIsygMV0DJDZwPG5LpLLTvcQtBZzHfEjJbdq6GXVdYLW61AIi2BglpXvjJsRW6ZaE6QlGaYSX3ryNWHs0ZSctIFsKZXvVQgjwfQ7ZSbCIIRnEFCnm03PveR6SUYLh3hBdy3Hx+BLjwzFtKF06aboeldB8nZ6RZom1jYiGqgsff/8TLBabXT7nNRbnS9yqW9QRRxyFKIsKfd8TpnE6QBjS9biuCxb4uHP3Ldy//wusVheYL05x585X0HGB/aMjOK6Lg6NbUEqhqgswFiIIQriuD9f14HkMTVNCKYE0HaOu1lBKoq5zHBzcwauvvoPp8XSj3JYK46OJLSH32lPKAoaqqC0J5uQ3DzCd3sBsdmKvTSmFdVlhnCQYHVJSfVu3NsJMSAk/iiAUJagIqZCOUqsGrYsaq9kKTz5b4+jlQ73RXsNxSbhYLguMjyYolyXKdYl6XRHmTfs2lRYwmolAcIGnTz5HWSzBghBxRJtCFfi0EIcMaRaDeZ5tPxm9yPOHgDjOsFicI0ojXDy+wOGdQ9ujBmgj3pSN7UWLtoO/5e8mVTDD3bdfRluTr9pxSRBWLktrDwriEEcvHyIdZdorHRFH9jUfRU1iLyEkzu6fou+19kJIdEJiWVXwXRfH4zGFn+u228/++lP8zS8+hpQCjIX4u44vvSiSv6rC+oomb1cbMONBYqXBAKyhOx7Q7unyySX5hWIqCRjiusfI+9XWHD7zUec1ymVJwglmdsOdPW0alFwQB1hfrXG1pvIWxSttQm1NCY5gtfpidVaiUevZa9K7Gd5qgY6g03A2GVgsncd8SMHJu+i6tiEfxiFe+forWJ4v0VYtZk+vLJ0+8AO4vguhaTNN2RCJRvVgEbNyehNpE2cR2qs1cRn3BkgG20QNYculghO2q61bzaQEoHo0TQnfvw7ANuUFKSRYwNDWLRl5PQ/B4ciWC+MgwOQoxfHBFF/59lfw6JPHVubeS4XDu0eIQkqcYL6PdV3bXk6g+0qtNq5zDbT2dJjsQAO/I8ZwvlpRdNRWKX6UxMibFo0ukZc6NcNApvOW203DZtACsVrN4DjUp6iLmhSVvIN7PEU2zqyKl+nNVjrOcOO1G1hfrrA4XxKn0TOYQAejwzHiLLZeOF5z+4I3ZUOMRyGoLyIkfN9DPEyQDhNkg9TG61D/skEyjInbWFHft61bEnxxYRWT2wQW13Vxevo5Tu+fYno8RVHVKJ0G4yy16ua8rgnPNR2QtN0B9m7uY7Q/QuD7lgO8LKk811YtlYmlwNXTK2uzML1Qwwcd7g1xeOeQ+lz6pTFpIgYSUef0PK0ulsDhGL0k8c5olKFuOQZJhOWywqef/ujaRNR1LX72vR/i5r2bpH7NSJGdZ6QWPri1j5PPTrCarRAPEmSTAb77T7+L9/7oPfzP/9N/j3v33sM//tP/AfEggZLSWkcE7zBoBzi8dYxA4ydpniB+qWFxPn30AHW9xuHhXXzl/a/g8OUjzE5m+v57FnphVKnluqQkIMZwdnGGvVt7OH96ifOLhy8sHIvzBX76f/4Eq/deRxAy5PMcV0+vUL9+WwOqXTydz3E4HEI4RHN67+tv4tdPnmJ9tUYyjK3n8oO/+AFWywv88T/9b8ACH5dPLpGOM9x87Qb+8Pffwb/+0V/jZ//6Z3jr/bdw/ugcy/Mlfvr9v8Qbb72LUPfDk2GCu1+7iyiNMNofwXVdXDwmocnsKYWo102LNAzt5tNzHUti2h6exyAFxUIlgwQ//zc/xzf/89/HWlfH6DQIFKsSy8sl/JBpe4oDn3lwXCoJt1Vr20xN1dB8VZJoyDyH1bqy0PJ0nGIwIUyhOY2mwwT7tw9QrAoMxhnCJLQkID9kYL5P5Xg4+MEPPsSf/y//HBcXjxGGyQsBEL9tfGnMm+u6EKJF15HIgWlzLalPN+Bsx3EQpxFwNEE2yRAmEfV7dMLAYDrAYEqnE1PaMmxPo7KUul7ueZvomiCmyW08SK+lJxgAr5H8W7GG3vXBcWwJ9cXLIrn4dmSS67sbr5frA3BsmdCcQKIkwqvvvKoXdTLS1nmFXhHFR+rrHU4HJNzREmYppJXBG8n7ZqISaOsW6SjF5IgSRMyLLjupT7qeFUkYxJvhtF6/W7DXazx2hnDTVA3qIsRofwilejQdt32hNAzBQobl+QIsJMBAPs8hBwl4J5DGkc1AVH2PTi+KJnnb5MeN4tiGjzoOwbCHcWxtCkYstapq+l610MZ3iVFrSuK0eD7fEyDCT1EsEUeZNfYa4QJbFEhGCUINNnd9zxI4fN9DMkrtCSrXqjfHcYCLJfJ5jjAObcWirbTnUi+Gru8hzEJC8Lm0Ew7i0EKVjfWDbZ2shaBFcFtgI4VCta6ee2EdKCWtxy8ZxogHCVpNBDJyc8KlbexDdDr2rYWHS4kwYNbOJISEyOlEsumt91ZNaCD2ohPoW4UwpfKv2YwEEfXBXc8DrznCOLTtkDAhXxhvOJBEePjxQ3RdizjegCRc10NdFzh/eIbxIWU21kWDekTlWDJqB8jnOW2mM0JH3v3qy3jnne9gtZqh1AIpAWwA5yBajpQS6TCF6GhyNaeZSltshsM9vPnO1/Dy2y/T6V9jKema6FmkYO3Kbu6zSYblkjbdXdPh/OE5+TLDDTUKAJqmxPf/4l/hs5/9Co7j4PLyCVj4bfCOUG5pGKLWJxihJHyX3olskGJxvgQLA4wOxzh+9QZu3buJ80cX9r5enswwmA7wvf/9L6knfjLD7GSG+x/eR5RGaKsWd199GwcvHWD/1gHiYYwwos8zSLmu6VAsc0JZttRqkJ0OCdfPXtD7Njf0+gwCRHGG9XKO4XQAzmsUy9LOXYHmX0tBOgs/8K1y31QBjN6EhQGkMIzoFicP7sPR2ZRdx3UbgKLLDu8cgtccrMc1MZIpJ2ejTFdzBK5Or3D79VsAKEDg/v0T/PCf/xBVlWu7iY+quo4c/G3jSy6KRvXpouuoh2P4kPQFDeEzjZzSaqBAN4vDJESd19a8WReN5oX6tn/nuq41iKu+R6t9LI5HEUDDKcGdTXr1/sDHLL9+sYa+30lSX9lF0EyuklSo230co/D0ag4VbDiSQpARONA82k0MESn1AuYjmA4RMh9lHNhdjdS7Z4BOneWqQjbJbFk0jANLhg+TEFVe2d4fQFWQbJKB6QnLPKhmInMchyYCXRoTXKBYlnDd5+rmWw94x0myb04tpkxr7k3HBbpA2lKsiYWpVpS9t7xYolyWlg7i+R6qhBaGIA7guwTBTnSmItPWFrqeTZZcHAQWeND2vUW9UVyS7o32yp40hVLacnLdRmNGUSyQpiN4PoPrGqCEh3JVIIh1wGkUEDdWSEADGcwpmMQ5PcpVgbbm2irR2TBsgEqT44OxrV74rotsktnUDdfdiL1M6V50wkaGCY3hM4xRFlCPsSkbFMviWsgwTboxbr1+Cx9//2NMjiZIRxmqmjZNg/0IeV6CdwL5Va5L7KQoNBuTiDFCwBlLjC53m0FmdzoFp3rH7XikTq7zinqMuqrg+h6KqzWSQYL2lFvSk+hogS9XBcaHxLOM0gh51eCTv/qE3v+tvrADoKpWyBcFqnWlc0dJUNP3vbYPBajyCoPp0ArzOi7wx3/63+LP/rd/hp9+/3t4P/wj7N/cIxj7ILZm9vnpnNoT+t6Jju47+fgk3vyDNzE+GGF8NLFsZUALkHTvq1xSruThnUOqSAU+1vNcz1c1zh+eo66LF6oxALBez3D67Ddo2xosCHHz5J4V2jmOg2Ec66y/wPoVB1EEz3dt/3pyNMHt127i4M6hVYa/9f7vIYhC3Lp3E6vZCq7n4rV3X4Or+7Db80SqSUSO62AyyOA6DtZNjfwqx2h/RKjHMaVqKEn8Vcdx0LSEMdwW3WwPz/NRFAv06g7CMMH6ao10mFoQglFWmxCI1eXanlDNho968ArrqzW2iT1ZNgLnDSmBswhRGmE9W2F9tbaHAfP9ENyd9CgAKffLdWkpOUEc4OJ0hp//m5/j6dPPISVVdXw/fGEj89vGlz4p0oPkQcoOnNOOo6la+MtSs0JDQCvnTC8LIIIEejoy85pbsY4ppxoqhecTgcPk0LmugygM4ER00gBIcmuwYcMohuxpEdqOMSJqiOmDdPaEJoWyC7O9Km1yZxGDK8kjaSwmACkHjUKvazgt4DoGKgkDOHCstDwdZ/pIL60AplwVKFcUJutq0YwSCrxpbQkoiELAB1jA4PouWEACGxPKaRZxotvQCbrXKuCu5Sjz9YuLou4TABt/nfHBmd6TkfV7jMhDJlE90DFVLCAUVrHIwX2u4Qb0IrCQIZtkVGZKI0yOUzDfB9MToqPLMiYiypRqevRoOPkYTRKGYeX2PcUmSaHs0+k4+IKeYk+nb8Gt6EYpiWqVWBRVtdpYFowS0ySLGABCqNV9HvPQakQX1/fYQI4N/i9KIwQhsyVl+mwHjvbqmfIm52S8Frp0B60CNspr3nb2vq9Wl8/Zg8gakAzIHP3wlw82jFHHwWy+ImO6R7aBdt5aJaivJ1pgQwyqywa1DhV+fmPB2w5J36PTKl1DhHEcB7Vb23sY6KzPdJSiMwtOHNB3pYVlQkgIIfHx9z+G4AJRlF63B6HHYnGOpmywvlrbDUPXcCsu6fueaEEuQTOMYO+tb/0egD/FR//3z3H6+Sne/5P3cf/D+5RaoiH40xtTe3IyJ8ZeKcQD6o/u3dzfKGEmXzMAACAASURBVMv1PQzjgFCVLUfXdHA9DyYTsK1J0NaWjdUb0LPoPnea2tw387BWVY6Li8dUMszohBgxpkHhwgZyG7FUoMERaZZgqNXbJn0nziIr4jIbm3SYQKnepsE4jmPjs+qipk23fteMDc0sOOW61O80tQ2yQUKkMK7nh+euizzjgBAcfshw8NIBZicz4DYwmGSYny10P9JBU7ao8uqah1dwIoN5PlX7DDWpVz18j6xKvlZqK9ljeb4AHAezpzMM94ZaSEYRVukwQdfSAkkqaQE28e3zx2uOj//qE/zml5+gqTf4OyFaarH8Hcd/QE9Ragm9i6YpMD+jyZGYosLuWoMohBBk3O+lspL3wXRAyKKrNYQQqC9JKGDik9JRpjmHdAOiMLBhneSp2ew+W1OSEMpmnHVSWiGO4VMarqNJay/X1TWSiJQCs9NzHDjHUIkRsOjdjD7uCx4AoJMxdJ9KuC64t8Wl1JlsxjBv7BPz07lV40ohsThb2F3QYJJhdDCG67uIwtCqVY1X0og08nlOPkShUOUV6ry28VHnT05RlmsELIRUW723noQV230Co5S8eHSBwR6dBgnDRC/PEnRKNfYTn3kYH03QlBPtz9sssnTSSG38lIEltEJYWn3fOwCELYvahUMrTcuqoh6jtuh0UthTdFPSRG4WpudHrxQ4rxFFKV57+008+NVvsJhdodXmfF5zRGlECsL1JqWEMimFrVDEAdPqXloot20a5bpEqKsdfsiskEBqLGDf93BUD+50KPNKq0mVTofpdJ+613DrDm1NFZZ8nkOpnqJ5rl8VPM/Hpx98inf/0bv46V/8FB/82Qd474/esxtM36fyeavL4IuLBYplgXScIgjod4u1By1MQvT9wKr+DDFGSYXx4di2NMLIR6ZPjeR1I+9XW5FeQGmPnpQKHoDF2YJEaJ6L1eUKs6czOI6Dv/yXf4G2KW21aDMc1BUZvn/xf/0C3/rH34LPPKxma0yOJ5BCWgjD5MYUo/GAym8Bw+zZFe594x7e/IM36YRTc+zf2rfCLyOOAUiw1ytS2xplr4ERxIMYSajVlHkNx6UKVJRREK9RS1Z5DZ/5KJclqrzG+aNzHN45xNXTGXw/QBBE1+6YEalkgynSXuHi4jE+//yvcf/D+2DfehOO4+BgPLKgaqPUXTe1TSdhYYBJmqKTFC031BCMinOUmmxDi4nC/GxBWoSGGLFBHGC4N7QpNckwwWKxhuuSzy9KIxSrEskwwdnDM6TDBMWigM98u0gd3Niztrfte9Z1LYTo0PGWAqc5lcl/+cFPcPP2qyjWK4z397YEdvQ9Xp1eESYvjTA5GlPma9kgHaVwHAfzszmiOINSAnGaoa0by9odH4511VBvQJXC8mJp5zGf+bh6NsP0BtGVAEqvefzJI/ziBz/BfP5Mq8pDQAGMRei65oX5428bX7p8av1kHoOUHVpeWwVqEzTW40MhtaTeYhGzsGLH8yzPcXsoIZEvCqSjlFSlg81xV6oeDiQC3ycTrE+AXaFr9Fxs0GDbC6LSmCFbMtW9Q8JCbZ88egjRoVjkkFJqbxapW0mN6lqVpx/46HWP01ggzHdiUuzNPwtibQDX4opkmMBnPvZu7CGfr208lWG8ml4qkWU8skA4nRXZWASYhporDX3uuI7xUcL6hswwE5PZhXdCUr+0bhGUDE0U0CSe0+bFePB6qcjfGJJp25TnjJfTdz0Ee1RKZL5vxTYEeFaQfQ9IY/2g/k4nJWrO7cNdcUo5cXQaBgC7IJprBAgruK1y3h7j8RHuvP4asskAt165g/uffkbXrHqrFB4djChkVfeXoiTSpWTN3/RdQAB+5OugbN1PlAp7RxOqPuhnudsCKgOwajoT91MXDbwtP645AQmdldk23KZ77N/cg/r1dQGR47gQXYsHH93Hm3/wJg5eOsBnP/0EvPmqzc6cny0oLmlFC6qSyp5muraD57kYJtS7ZY4DFQXoGrKumF62Ub2ajY5RfXs+tTDMZKSUwuJsjnScafxfb83tuRZfXDy+wPx0jtH+EI7jIC8WiOMMhGgw1+XA8+lZL/MCq9kK44MxupZb1fD2e2RKv4HvIx4QDcX3PUSDGNPhAK0QWC1z8JqDFzW1Zgw32KgczSRqSq1xAKE9047raJES/cxC2yjM8+a4LkUc6d69FBLr9UKfnK5Hz23aGiRMSZIBFotzVOsS69kaB7f20XQd6qZFxBgWeYGjyRhlS5arZJggiUL4Lr1bzPOR13QCTsMQ2SSD7ATKpcT89Mr6FQWn0/ThnUOd7+nbPq/jOCTm00Iqz6P+9+RwQpuNmGDwdU5CSd5RtFr3nKDN9wO0bUXPuLbQBXGAs7MHeHj/V1v310OUxIgi6sPnVzkGk8wiJsMkpI2HvjdhFNhqYK96ZKMMw72hFn1RVYTmRx/ViuK8Zs+uoITEUCvlBe+Qa/rP4myB0cEQRbGw+EnX9eC5PqQUf58nxe0+nCl30UW7Lp2MXD05VjqXTMUai2XYolLZ2JntE4zHPGSTgW2QZ6OUXmrfJxmzUnC3JnzjY6t4S5DdLYuCFJSzJzppF0SzkzTG5O1F2XU9LdcugS0zqNn9AHRidH0Xrk/XKgMfnn6pTGqF8RWZYcoK6TC13ifKliTqBNNosu3h+S5kK623pq1bi3Ej1anU0VFU8lkvF+gEt0ba59Vjz5vDDQzB8zxU65p8dr4H3hAs2pfK5pv1qofjAUFMJBpTvjbeUOZ5kD1BEyLGIPueoMd9D0//HoZqA8D6oQCt+FUbDFzT0aInTRqJpDI3WS3aF9B05jPf+9Yf4v0/eR8f/eVHiLIYUnaodekEc0dXKHR4tN6wNVVDZdPtBSGJNE7QR+B7SMMQbSesP7bVwp/K5/Z7NM8TPR9Se+w6zQol60Jbt7Rj14kRxaLAarbErddvE0jb84HneopxMsSTJ5+irf4RkmGCV96+h8XZnODk+vf3mYcqr+zCxgKGOq+gZI/B3sCqd01iiRom1h+WjVOr5jb9KBYy2682oARTael7+r171VvhTaTvVZVXOH94ThjHtsNyeb55zp6jEEVRSkD1XmJ5sUSmxU75PKdggU5geb6ktPVRhlgzUs2EX60qm8EHkACj0SK1piQltpIEtVDaVhOlkW13GF+xrzbpM0bsRRvmzUYYfY+zh2dkXTG+6zrX5bgX4dL0/kt0vEEYJqiqNVzfw4OPHiBMQgwmGYKAFkQlJFZVBQdk9RLtJmvUg2tP2VwI24uXgsKUoyzeWHH0Nbgu5a327WYOiFJdUme0WYuzCLOn5K80VbkwDm3FzFTUmmsVmR69osME53SSS4cJilWJGzdexcMHH8FnAfL1HADgeTds+IPPqBQf6IOCx3yEaYQ20KKZnli9y/Ml4iGtBZOjMSnvp0PURU3+adXD0xqBTEffOS7Zi8p1hfVsBd50KJYFXv/9e1ivZxT/5gdba1T/wrz428aXJNpsJqO+J8GN4zioCrJQuA2ddlzPtdw7YAO6NmZy13PgByR+MIT2KAysCd8gwYyvh4DRm7gV13XhgcqnVUt5dlKj1pRSUMI0dzc9RIBio8yLdK2k6BFJQYgOXKdfA7C9SIBOBAbx5Wm1mol7wXMLm1HhmpuRDGJ7qjSiDKnLQEaJanogSvbXYNXmZGtM0yZ8VHYCq9kKXddsTNrPnb57bS8BqJdpy7L62oUQKFelhQP72mReFzUJS9gmsHOapiTh7nsMohCuQ9xTI2wKfR+rugLzfLtgNl2HwPwsKS2j1qRpcEGJEp2gEnHf99dOhOY74k2L+rlF0XEczBdn+M5/9x3s740JYqB6jMdHyPM5ynKt42lai78yorB0mEJppXKYhEjSGIM4pvQVQDNYXYtVS8NQP48SaUeTzSVye5oxsAWziTLl+o5LbXinPmVTkN1o75gyRL+oJGzGanWJuqgRRAGOXj7CB3/+A7z/X36b2gVaoewz3/JKAWB2QiUlJRXqltPpw/OQOA5a3iGIAoz2R3bi5w23qQmm7MXbDiwM4IJKwK5+t4hK5dmUjfVsTf3EqkW5KvHGN9/A7GSGqlojigikbugl26NrOxy+dINgDr6H0f4IxaLQ/WuCB6yv1ji8ewQnCkl0xTuKFppk6HSorgGD8IZT/6+5vlmJUqLueL6vcWjCUq2glb9S97Rpk+giGKc2qmk9z9FLgn+/9f5XUCxz7QPu7fywPcznqF4hCCIEQYRXvnoXP/wXP6LTmVRkl8hiSM9Dq0OL66Khcm3IkAQBfM+FlKTODnyfOMIafC44odWkFXhB9+6oamTgH52+1+bEq6TUnFoPq8s5lYs9F4uzBbJJpoV7Amf3z2zEmHnHHFfbrdoKPvP0gkoe1TQbo2lKdIJDSYGyXEKKDulwoDfvEpOjCalF9c8xc9Rwb2i9rmEcEms5YjazkTdU8TMRV1JvWBIdVcUbAotfPr2E79Npee/mPvU+PYYwTKjVZ8Q+f1+L4vbnGiktALRthf1bryJfFLh6emX5dXEW65SGHukotZ5Ej/nYHw1Jvq9FGYZybuT6AE2evuehbGlBKJoGYeBZmryR+gqjMtUPuyk1bge7GqL+erbWRuvNQub5LrLhCMurS7RthbrObd+AhQxMlziNz9EEsSpdynVqAvqarDbzmRELMNQsVJMKAcAG7PbowQVlPlYth9BG3SAObEQPeXvopNTrPl5dNHj68CGE6OzCq0yKxPNim63heZ4tr5odctd2uHh8Qacz7XkTnUQQEssxzRIEmuUp+x7MpesyiDbm+UhDD6oHbo4n1gpj7ANcCNRdB65tClwIyF5RrqEubxv1Gq/JT8e1NYa3nfZVVrYHa4YQHIPBFP/kH7yP/+OvfgSleiSDGOODCdqmRN0U1A/pOJ49aJHOhhjtj6woxfM9+zICFNhrlM1mcTT3a3uz4ekdPECCmq7trH+xqShrtFpXFmZgeommrPrqO68iGcSo8hquTzaFbeCCuZer9QyXJ6SEBIDf+4O38YvvfYTL86fYO7iBMA6RjlLEWaR75CQGW82I42o2GGkWQyiFal3SRkCXlOMsJsizVub6AbOTbsfpe1/P1gi10MsPfBtZVCwKlMsCxapA05S4/dpdDKYD/M1P/kbv0PWz1V2fYMMwxsXjc9x+4yUquZ7PMZgM6WTbdoizCCyk612cLtBk1MMnIlBv2bVN2dgoOtP7ZrYaQKcII9xwXNoYdS23iuC23swJ+TzX10e9fCMEyuc5HIc2zB3v8OzzU/C2gRAdAvZiT5EEOBKu44LzBoPBFFIovP8n7+NH/+JHOH1winvfuIerpzNEukpW5xWpLD0XV3oejNJQq+sDdFIgCQKM90boVY/FxRLJyLdJF+iJKmTA4OmIvH0AbSjNhqYuajz86AEmx1OwKECd1xgdUKn7yWdPcHD7AFfPrlCuSgixxavtzTPvo+taUmpr/3a1ruB593D27DFBEnqFpimR5ws07QRHt26jVz2e/vqEqFdayNe1HNWa7mu5LjE9niCIQ7QV2TvIt8216ImqLsWC+uVGRPT5xw/pgKZbVbdev6X9r0Caju2p3dCqOK+B/u8xT5G+LGUXRaUkhsMpvvHdb+Dn//ZDrC6WJCYoGxtHwmtOviNtgg8DZuGtslcIPGal7CasFiA1naetHcR+pAefc24h08DmyzGnDbMgGhh5UzYaldToBTqzJzZAx0ElIbpzbr1VHW+xvlohGaSQES26LGLkTdv6fnm72b0B+uXXLyhhk67fDOr9bU7A5lpHCe0KecPBV6UtvfFGp6brBbGtaYHsOn5tkXM9f7MwfsEwniXz11Yc5LqoCko9MadVj/nWiwQAIgkxiCL4uqxj/l8DSDCJJSY70aCWhCIaC9f3ykR7cSHRauSauUfGYtI2xFTtmg6dLhe7noNsnD73DPb45rf+MyKarCtbvo7SCNlggrVGcSXJEJ7nIV8tANUj1rR/FgakmKsaeEtdCg0INRcyRpmFz3nLAGBd12iFQFnVFuPG9e8sOPVzzH0yE3i5LNE0Je698yZJ5j0XVU5huVk2fqHE7eifZdoSBGgnyf75s0eoy4IESPo7M/13FpD3jshREqODEZpWK4ZVf60/Zkqmq8sllBYjGUizgRX0iiT0vO0Qa+ENsXELqySM4wF9n4FPJb2+RxSl8DwGITanfqUUGIvAOeUf3rp3E1enc1Srksq+txXhHscp6rzG6YNTZKMM+7f3kY5T6xE1kO9a/yyzsWMh0xtWOiENpmOrts0mA6sYNmHIxrPq+UST8hkFUpdaJMRChtVsidtvvASANpTZYII8vw4DN0NKoStHAbquhecxFMscezf3cfO1Gzh7eI7Hv3qMg5cOyIZVNLZS4AdUqZG6KjSMYhJJ+ZtwXIMOrHXQcF3UVjuBvtf+QNcKwKiaRap63lCP0UR5Ga+f+ezLk0vU60pTlp6LaNOnrbal57VYFJifzuEzH+PDEVaLDE2t+cCOa1F6ewfHm3vGfFvaF4JyX8nLKFCsSrh5bRGYJg+y73tMjifYuzFFW7eYnczsc5kvczBGFo7J4RTTG1ME2nNalkskyYgcEmJT6bsm8f73jP+gRZF+hgJjIcpiibf/4Vfx1ssv4VfJp4iymCZwjXtTihrQdUEiHM9z0ekyqee68PTiavIQAVzL2JNbNX+AeoiUnq4xVvrGm56deQior0ACBF7Tgsg1KT6Ig+ePvdRbCiL7QPsBYaIAKsMaCLeJtQpjZeOdes1JNIxSk6IhlEQrNlYSY6y2i75O9eh1f63tNie/Mq/BG+qRdHqyrXISNZEdQ0I5G38cBSN71yYix3W2vJV4ocRqBS/VCt/9r/8TfPbJA3z07z6yyR1tw+EXDfWUwsb6CA35wvQ8At+3p15znTUn+HPf92i6DkkQYFFRCbTRhBrecK2E1PddCIuuMhN+39Mm5vneq+8H+PZ/9R/b+2M2YMZ7ORofYrE4Q1mucHz8CuW2VQWahl7uMKYX01mVOqG8RzbJKCqK+cAUKOuGQA1aTOQ6DlZFSf68dYVOx1CZbETy65LNRQkJ0XZYzZZo24oSA7SAwNwzJRXuvfU2PvjgXz53bQyeRyezpmxw/ugcezem2L+9j/2TW6iqwvZNpQYcBCFDMkpQrkpIIW2ZNIiY/Y4NINrAG3qpKHOx6WzIsImFM1FGxq5kypGXTy7R1g2Wi3Ps7d/C5HiCm/duAY6DfL2A69HEKgS/Vj51QBtopejk0ktCJkqp0HUNzh6eou97jPZH9h3gDfmfJ4djTZLafHemhKdkb4lAilGqC/TzGUQhXJ96xvTfKqsuNj3M4d4Qy4sleNuhWBSoywqO4yIbZzqyTYAFDMUit6cPOM8ntlyfcKMwBW8JazfcG2JyPMVwf4gf//mPqcfpUhq941BAMwsZ4duKGjdePUalVaCuQ1avkDHIRCEZ0mI4mA4ghUBdmM1NQJUqfTLspUIySsHzihSdWmTYFI31hZvr7doOy4ulDl0GnsdEQs/PoqN31Sy+QUw9+TQdYDE/pXKl5hlz3uiIKw1+6ALkiwJKkP3F1S0ogEr+LPCRjFLrpzViOxYyFACqVUlK8BX1k4Xg8H2aD8iG06DwXFpgXR9SdrQgQqFtK3jul1vmvrT6FNiUTqUUaHmDb33nG2TU7gmqaxKfjQXBY57e9VJPkbcdAo1wA2NwdEYioCduQ0jRJwzZk5Cm4i2qlqPbSm/ueGfLpcYmoKTUGC1lMWpdS1mO6Si1N2R7eL6LJBlisSChAPMDeF6PrmvtS9i1nfYX0s49iEId06LAtLS9ymutsnXR8g6pLp+akpw5QXkaPFxxTicPHTMkWirJUdmNrrPT6RWt7pvceesOZhfPtKJUWmg0nQa31Kd9/7eKAkx/l2sSzj944w0IJfH5zz9HU9Q2Mdv0G6I01JsR+sOcDAPGKHDZ91G2LQLfB9f0FfP3xsDcdNz68+qCJOY0+dF1Cd0vNS+Fp0/lJqR6e6TpEF//6uu0O9enL9d1tMo3RpnHGI0OcHLyme4DBeh7Cd42NnNOSok4ExrMLW1/16hehS79Gy6qkbgr1WN1udoQivTzWK4rAjevqGS6XqzRNAXSdIwbr92wJ4Lt8c4fvot/9r9eT5uh0mNrRUdxFlsc1sFLB3jy6wp13cDzSFIfVIH2/IZwPRee76GpGrCI2cWv033IKIm0QIY2WMdZDCkEmrLd9NzLBpn22zqOg7qoLaPz6vIUg8Ee0myMIAqQDBJ0nCLNuH5XTE9RbpXizELFeQMlFMaHIzz99TMiPu0d4vLZGRbnC1sKNM/F4myO6fEEcB0kcQRH+yOT4Sbk1vXIumTUo2YRcBzHllW7lji2juvYLEvzzPnMw+zpkti1Jc1rTdVgejy1AjaP+cjzOakZ1YvvlCmhKiUhlUCSjjA7mWH/1j7qosZwf4hbr9/Gk189Rn17H7ztkI0yjA5Ina6EtKB2FgYWwCB7ZcVSURbj4KUDAKYnJ61533jEHQc2VIE3HeqcWg8meJs+n6FaV1heLNGWVD07eOkAzz5/9tymGWAsgBAcCrAna9MWaOsWcB3sH9xGvp6DBaFdCItiDiEEGAvg5T6CKKSga0UHl3JdEUigqtG15Fm1SMSa4CKmtC2lwlDzr88enoGxDc4vziKESYTp8QSn98+uVbIcx9MRfn97Be2LxpdWn5pTm+t6qDU65+3bt/FsuSSmZxhsqT0Fam2gN2b0Kq8oPDiNIPVNNxl8nZS2xxjr0EuAenCt6FA09OIa3A9J9Tu96HVWmt73lJ9nyllGYEIm6OuqV3Pzw5jgAVGUom0rSEYQWSWlBhU0cBsXSpCKVnYCYdrB9V2bbAFAe9FaC+JWSkHowEtDeKESHZVWWyHQ8k4nhFAJy7y0UmPq6qJGXTQ2AeLNb76Bv/rzf4UwTPTOXO+Uv6B8un2tZqIwD40UEk1TYTjcR8QYkiC0/S6jbJSdhEgEmjGVnOumBU8lAt3rNanwoe4Huw4lIXCtKFU9xX7VnFtOoVEcuq5jTbc2iV71FsJuQqj9rV6tGYPpAMOYykxRGlnKhR9QGSVOKZ8vTceoyhXCMEEYpaSWWy7h+5rElNXg48wu1Oko3RBozO8kJaKEVIzmn+eadGIWUd5wLM8XqNa13SX3vUQcD3B89wjZKKNQaX0/PI96LF//+usIo+u0DaUkkmSEYlVQWO3NPU0zodLh/o0j8EcNGKNnNl+soZTA6GBkY9DyeW69mq7nUACshof3PdFbhCC/cKB9xvk8J37sOEM+X2vguQL6HrOTGS2aTQXGIowmU7CIIc4iNEWtgQgKjAVomhJxnMH1r5/upRQYDKbW83gNUK8kmqrGw18+xOvvva6ffa2M1C2KpiWQeJRGcD0XdV5bRq0UEqvZSisvt6KtXGdT0el7iLzeUqLTvYwHCeYXn+Kl1++irVs0VY18tcBgnMHxXBtnZU8+wfVncfN+KatkZyzE8nIBAAjjAGEc4qU3X8LHP/6ZTZlocrofZg6BQz7WMBVYlZVeaEmQJjqJIGDgujUFEBDFahi051CpTUJA13ZWlKOEJOLL4wsKLV4QDamqCkwPDxDEwRfyQaUUkFIgDM1JkloojuvYv47TDEWxguO4BG2QAuv1FTivMRjsIQzpdzS+yl5zinltNsMcQnQamehDdLQJqXI6GERphI4LlOuSfJkBnYyDiJI6kmFCFiUNIvH9AFIJeB6zCmjRfbGl64vGly6fStnZI2rLG7z7/vtIw5B24wFDnFHZ7sEv78N1XYz2x8jnOQTvkIxS+GyNMIlsE5v6jEQWMSchI2wxC0u1rq6pSpVGZNHuUNpYG7MoGg+i2Q2aHe1gOgALfO3R2VxT38Nml8XZAS5On6Eslkizsa7PM33tEosFgXXZnLw/BzePSSCgSzSD6cAirqI0RL4orPRZyd7mkPWKGKbmVGtimcpVpUu+3HJR27rF3a/dRTJI8OiTR0jHGS4uH+Pg4CUwFoGxEE1TgrHg39tXlB35FE2yRdtW+OP/kVK497JMQ5V9PP31U6TDZJMnqfvCQRwgZ7k9QZjv1/VcHXPl2ftiSoSmVCW4sABsQ3gx3jkAGvXFdHo8+f8838PkxvSF030UhVaY9cqtY3yoPrRlHbOzN597efkEdVMgbikuCvBR1znqOsfiClAPJMIwRpSkSIcpXNdBrE8irutYCo4RqvQ95YWaOCghJOp1hTynTDjHcZAkGUaHYwwmGdJxZtPuLStYT9xHoxEmh+Nr1+Z5VAq7vHwCAChXpUV4GQi96f/mi7UuE5HJPEoIC5gME0vh6bjUvc8Ol08utYeYnrnTz0+tJ9f0XRbnC/i6zJhNBiRSazusF1c4OHiJFu1hDI/5GB9NrGq6qtZgjOYCKnFtTsVGaKOUsDSSIKIKwPxsjjBM4Hk+lJL41Qe/RJxmePWdVyG4wLPfPCN+chyCD2ihF5xUsmESgtctXM+le6dpUATAN89uC+NRVpJg//OzxbXNa10XOH90rkV2MfaPj8H0RouUxAKO42rRyYtGcMdx7CnSdT24roenT38Nn/1DFDpNx3EcvPPt/wgPPvoc8/k5BoMpOi7spJ4ME6xnK4vPNAt+uSrAwgBXT6/gB77d8Li+i2JB/TxHJw5tKjuRfU6LRQ4hJLJRisX5ArITOPn8IcZ7B3j5rVcxPZ5icjzBh99bXrumvifEm+M4iGNdTu6I+KOERBgFSEYpzh6ewvd9XF09s88/ADhwUeQLuA7lKK5Wl8jzOW7deoNSUxbnyLIxFotzSCkwXE0xHB3QJuziGXw/QJqOcPbkBFk2RtfRZtfMN37IbP6nHzAszun3pznQR9+T7sLz2N/nokgLxPTgELxuMdk7xNe/8w4AyuViEdO7Z4EwDDGfn0NJicGEFH4dJzwUpQdQppeZSNuqRWtgzlGAoAysX6qtScjgeq5d8KiMpVl6Utny6ZtJpQAAA4dJREFU0vPDY55NPfAZcVRJVr4dpkm2kWQYo1rXSJIhhOggpaASlVJwHQ+929sHvusadB0wP79CsKL06GycQUkFFlCZIMjJvE8WAHUNGCA7qbl8PoTG0rV1e41UU65KdA3HcH+oF1ZlJefvvvtdfPjhv8XtW29Ayg69kug6bkUagLFkXE8J8ZiHRKOvPJ+yHd975/fQ9z3GSWIDa13XxeJ8icHeAL7vYX42RzJM7KJlDOpK9qicCo4LxFrwYZigZlCYbo8qr1AuSwqo9g01hVCABvVk0GI9NuHDXzRcACFj6ITAKwcHNBEEka1KUE8pIM+S59OJWklw3iAIomsvb9vW6DoO3jbgDU2gaZHpjZi0TEehqx4EKNcey47y4IToEEWpFWrFwwTT46l+/jYnWSGk/o4d23u+xgg1JUalUFUUxOsxD4PpwG5CxkcTrGZrLM4XUL3EYDSGVzLwhpTKXddC8AnCmAQpvVKo8hqe56JcVbg6vaJ+m7ZlxJnBoyVYzdbWj9ZxgdnJpf2OssHEEow8RmHa89O5bktkGughdEWCvYAd7DoOzgmZR6G3CxSLHE2lxS2MQSmgqnLwtsHJZ4F99qUg4RCw2ezytrS9ZwBWLEaqbY5Ob8Zcz9W2jwh+wCzP9PLJpY0Pk5JOqwQyH4BpwIjnuYiymPrUo33UdQHJv3iCVVqAaE6L6/XM+iMB2LzK6fE+yvsrNE0Jb+1DSV0t0fNDNk43xCTVo1iVxJWd54iHpOivc6LchEm40XHUHHCMQI9viExJiNXjS7RVi3y1gOwkhiMKRB7uDZEMYvi+j7atv/C6eqUwGEztqTsa0IaoXJVoygajvTHkRYe9vZt2gaN1gBI2eNfabEzRcRTFHEopzVOVWvFfEAkJPYIgghSd1nf4EIKjKJYIgtD2ZB0NUhnuU2Byt0UuA2hhdL3N8qae75X+luE83yT+rf+x41wCePR3/h/+3z1e7vv+APiduy5AX9vv6nUBv3P37Hf1uoDds/j/tfG7el3A1rX9tvGlFsXd2I3d2I3d2I3f5fGiDHM3dmM3dmM3duP/p2O3KO7GbuzGbuzGbuixWxR3Yzd2Yzd2Yzf02C2Ku7Ebu7Ebu7EbeuwWxd3Yjd3Yjd3YDT12i+Ju7MZu7MZu7IYeu0VxN3ZjN3ZjN3ZDj92iuBu7sRu7sRu7ocduUdyN3diN3diN3dDj/wHHjbwb6EwAOQAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "tags": [] } } ] }, { "cell_type": "markdown", "metadata": { "id": "pB2IzJHL526B", "colab_type": "text" }, "source": [ "\n", "\n", "\n", "### Train and Test Sets" ] }, { "cell_type": "markdown", "metadata": { "id": "SFJ-3mkF526B", "colab_type": "text" }, "source": [ "You have your data ready and you are eager to start training the classifier? But be careful: When your classifier will be finished, you will need some test data to evaluate your classifier. If you evaluate your classifier with the data used for learning, you may see surprisingly good results. What we actually want to test is the performance of classifying on unknown data.\n", "\n", "For this purpose, we need to split our data into two parts:\n", "\n", "A training set with which the learning algorithm adapts or learns the model\n", "A test set to evaluate the generalization performance of the model" ] }, { "cell_type": "code", "metadata": { "id": "Dm4g_j7b526C", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "from sklearn.datasets import load_iris\n", "iris = load_iris()" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "vDrMUUjY526D", "colab_type": "code", "colab": {}, "outputId": "ad43b351-7690-45bd-8ffb-65835f9af2de" }, "source": [ "# Looking at the labels of iris.target shows us that the data is sorted.\n", "\n", "iris.target" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n", " 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n", " 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,\n", " 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,\n", " 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])" ] }, "metadata": { "tags": [] }, "execution_count": 3 } ] }, { "cell_type": "code", "metadata": { "id": "_sW_LKap526F", "colab_type": "code", "colab": {}, "outputId": "3ad8edb3-e542-43a4-948b-7911297f2d76" }, "source": [ "# The first thing we have to do is rearrange the data so that it is not sorted anymore.\n", "\n", "indices = np.random.permutation(len(iris.data))\n", "indices" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([105, 108, 30, 98, 84, 35, 1, 119, 61, 107, 129, 110, 130,\n", " 140, 82, 4, 48, 92, 144, 3, 28, 85, 142, 77, 103, 121,\n", " 27, 45, 126, 148, 68, 62, 135, 90, 60, 95, 132, 26, 104,\n", " 72, 101, 123, 143, 17, 124, 115, 93, 147, 14, 34, 2, 19,\n", " 9, 10, 131, 12, 81, 91, 109, 136, 125, 7, 52, 97, 16,\n", " 120, 76, 36, 58, 24, 41, 71, 15, 116, 80, 42, 118, 88,\n", " 111, 102, 25, 83, 112, 49, 13, 37, 133, 106, 40, 56, 64,\n", " 74, 122, 141, 43, 53, 57, 70, 138, 99, 67, 31, 78, 0,\n", " 11, 128, 114, 23, 139, 46, 75, 18, 66, 146, 54, 79, 134,\n", " 5, 39, 47, 94, 69, 50, 145, 117, 113, 29, 51, 87, 96,\n", " 8, 55, 89, 137, 65, 6, 73, 32, 86, 100, 21, 59, 127,\n", " 44, 22, 33, 38, 20, 149, 63])" ] }, "metadata": { "tags": [] }, "execution_count": 4 } ] }, { "cell_type": "code", "metadata": { "id": "d7ZBm8U2526H", "colab_type": "code", "colab": {}, "outputId": "34962125-d02e-43ec-edfc-2b0128d939fa" }, "source": [ "n_test_samples = 12\n", "\n", "learnset_data = iris.data[indices[:-n_test_samples]]\n", "\n", "learnset_labels = iris.target[indices[:-n_test_samples]]\n", "\n", "testset_data = iris.data[indices[-n_test_samples:]]\n", "testset_labels = iris.target[indices[-n_test_samples:]]\n", "\n", "print(learnset_data[:4], learnset_labels[:4])\n", "print(testset_data[:4], testset_labels[:4])" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "150" ] }, "metadata": { "tags": [] }, "execution_count": 16 } ] }, { "cell_type": "code", "metadata": { "id": "FM2dA9Ga526J", "colab_type": "code", "colab": {}, "outputId": "b3df95a6-a41d-4510-9f61-e00782cf7c47" }, "source": [ "# It was not difficult to split the data manually into a learn (train) and an evaluation (test) set.\n", "# Yet, it isn't necessary, because sklearn provides us with a function to do it.\n", "\n", "from sklearn.datasets import load_iris\n", "from sklearn.model_selection import train_test_split\n", "\n", "iris = load_iris()\n", "\n", "data, labels = iris.data, iris.target\n", "\n", "res = train_test_split(data, labels, \n", " train_size=0.8,\n", " test_size=0.2,\n", " random_state=42)\n", "train_data, test_data, train_labels, test_labels = res \n", "\n", "print(\"Labels for training and testing data\")\n", "print(test_data[:5])\n", "print(test_labels[:5])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Labels for training and testing data\n", "[[6.1 2.8 4.7 1.2]\n", " [5.7 3.8 1.7 0.3]\n", " [7.7 2.6 6.9 2.3]\n", " [6. 2.9 4.5 1.5]\n", " [6.8 2.8 4.8 1.4]]\n", "[1 0 2 1 1]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "PnE7doRz526L", "colab_type": "code", "colab": {}, "outputId": "f794ff87-d6ee-4d97-a95b-b339e7885228" }, "source": [ "# Generate Synthetic Data with Scikit-Learn\n", "\n", "# It is a lot easier to use the possibilities of Scikit-Learn to create synthetic data. In the following example we use the function make_blobs of sklearn.datasets to create 'blob' like data distributions:\n", "\n", "from sklearn.datasets import make_blobs\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "data, labels = make_blobs(n_samples=1000, \n", " #centers=n_classes, \n", " centers=np.array([[2, 3], [4, 5], [7, 9]]),\n", " random_state=1)\n", "\n", "labels = labels.reshape((labels.shape[0],1))\n", "\n", "all_data = np.concatenate((data, labels), axis=1)\n", "\n", "all_data[:10]\n", "np.savetxt(\"squirrels.txt\", all_data)\n", "all_data[:10]" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[ 1.72415394, 4.22895559, 0. ],\n", " [ 4.16466507, 5.77817418, 1. ],\n", " [ 4.51441156, 4.98274913, 1. ],\n", " [ 1.49102772, 2.83351405, 0. ],\n", " [ 6.0386362 , 7.57298437, 2. ],\n", " [ 5.61044976, 9.83428321, 2. ],\n", " [ 5.69202866, 10.47239631, 2. ],\n", " [ 6.14017298, 8.56209179, 2. ],\n", " [ 2.97620068, 5.56776474, 1. ],\n", " [ 8.27980017, 8.54824406, 2. ]])" ] }, "metadata": { "tags": [] }, "execution_count": 9 } ] }, { "cell_type": "code", "metadata": { "id": "zQsfQ6Dk526N", "colab_type": "code", "colab": {}, "outputId": "dbea7fd1-7aa3-4547-eec4-2ad6bef95b0d" }, "source": [ "# For some people it might be complicated to understand the combination of reshape and concatenate. Therefore, you can see an extremely simple example in the following code:\n", "\n", "import numpy as np\n", "\n", "a = np.array([[1, 2], [3, 4]])\n", "b = np.array([5, 6])\n", "\n", "b = b.reshape((b.shape[0], 1))\n", "\n", "print(b)\n", "\n", "x = np.concatenate((a, b), axis=1)\n", "x" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[[5]\n", " [6]]\n" ], "name": "stdout" }, { "output_type": "execute_result", "data": { "text/plain": [ "array([[1, 2, 5],\n", " [3, 4, 6]])" ] }, "metadata": { "tags": [] }, "execution_count": 14 } ] }, { "cell_type": "code", "metadata": { "id": "2JOAYhdS526P", "colab_type": "code", "colab": {} }, "source": [ "# Reading the data and conversion back into 'data' and 'labels'\n", "\n", "file_data = np.loadtxt(\"squirrels.txt\")\n", "\n", "data = file_data[:,:-1]\n", "labels = file_data[:,2:]\n", "\n", "labels = labels.reshape((labels.shape[0]))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "xtR9iFXZ526R", "colab_type": "code", "colab": {}, "outputId": "52b69a1c-8556-4baf-f946-2067ea9d6a86" }, "source": [ "data" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[1.72415394, 4.22895559],\n", " [4.16466507, 5.77817418],\n", " [4.51441156, 4.98274913],\n", " ...,\n", " [0.92703572, 3.49515861],\n", " [2.28558733, 3.88514116],\n", " [3.27375593, 4.96710175]])" ] }, "metadata": { "tags": [] }, "execution_count": 33 } ] }, { "cell_type": "code", "metadata": { "id": "bijBYCVF526U", "colab_type": "code", "colab": {}, "outputId": "dd1aa841-c187-47b2-c40e-1a5437697900" }, "source": [ "import matplotlib.pyplot as plt\n", "\n", "colours = ('green', 'red', 'blue', 'magenta', 'yellow', 'cyan')\n", "n_classes = 3\n", "\n", "fig, ax = plt.subplots()\n", "for n_class in range(0, n_classes):\n", " ax.scatter(data[labels==n_class, 0], data[labels==n_class, 1], \n", " c=colours[n_class], s=10, label=str(n_class))\n", "\n", "ax.set(xlabel='Night Vision',\n", " ylabel='Fur color from sandish to black, 0 to 10 ',\n", " title='Sahara Virtual Squirrel')\n", "\n", "\n", "ax.legend(loc='upper right')" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": { "tags": [] }, "execution_count": 35 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "aa6vLaCK526W", "colab_type": "code", "colab": {}, "outputId": "2d6af0a7-3ad9-4283-8114-3c46629e98b6" }, "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "data_sets = train_test_split(data, \n", " labels, \n", " train_size=0.8,\n", " test_size=0.2,\n", " random_state=42 # garantees same output for every run\n", " )\n", "\n", "train_data, test_data, train_labels, test_labels = data_sets\n", "\n", "# import model\n", "\n", "from sklearn.neighbors import KNeighborsClassifier\n", "\n", "# create classifier\n", "\n", "knn = KNeighborsClassifier(n_neighbors=8)\n", "\n", "# train\n", "\n", "knn.fit(train_data, train_labels)\n", "\n", "# test on test data:\n", "\n", "calculated_labels = knn.predict(test_data)\n", "calculated_labels" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([2., 0., 1., 1., 0., 1., 2., 2., 2., 2., 0., 1., 0., 0., 1., 0., 1.,\n", " 2., 0., 0., 1., 2., 1., 2., 2., 1., 2., 0., 0., 2., 0., 2., 2., 0.,\n", " 0., 2., 0., 0., 0., 1., 0., 1., 1., 2., 0., 2., 1., 2., 1., 0., 2.,\n", " 1., 1., 0., 1., 2., 1., 0., 0., 2., 1., 0., 1., 1., 0., 0., 0., 0.,\n", " 0., 0., 0., 1., 1., 0., 1., 1., 1., 0., 1., 2., 1., 2., 0., 2., 1.,\n", " 1., 0., 2., 2., 2., 0., 1., 1., 1., 2., 2., 0., 2., 2., 2., 2., 0.,\n", " 0., 1., 1., 1., 2., 1., 1., 1., 0., 2., 1., 2., 0., 0., 1., 0., 1.,\n", " 0., 2., 2., 2., 1., 1., 1., 0., 2., 1., 2., 2., 1., 2., 0., 2., 0.,\n", " 0., 1., 0., 2., 2., 0., 0., 1., 2., 1., 2., 0., 0., 2., 2., 0., 0.,\n", " 1., 2., 1., 2., 0., 0., 1., 2., 1., 0., 2., 2., 0., 2., 0., 0., 2.,\n", " 1., 0., 0., 0., 0., 2., 2., 1., 0., 2., 2., 1., 2., 0., 1., 1., 1.,\n", " 0., 1., 0., 1., 1., 2., 0., 2., 2., 1., 1., 1., 2.])" ] }, "metadata": { "tags": [] }, "execution_count": 36 } ] }, { "cell_type": "code", "metadata": { "id": "iOmAA1cB526Y", "colab_type": "code", "colab": {}, "outputId": "711164cb-37d7-4704-9d2f-013f84017980" }, "source": [ "from sklearn import metrics\n", "\n", "print(\"Accuracy:\", metrics.accuracy_score(test_labels, calculated_labels))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Accuracy: 0.97\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "YI8Vt-to526a", "colab_type": "code", "colab": {}, "outputId": "e19aa7a4-7d03-4627-e4ec-bafa35fdc195" }, "source": [ "import sklearn.datasets as ds\n", "ch = ds.california_housing\n", "print(__doc__)\n", "\n", "import matplotlib.pyplot as plt\n", "\n", "from sklearn.datasets import make_classification\n", "from sklearn.datasets import make_blobs\n", "from sklearn.datasets import make_gaussian_quantiles" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Automatically created module for IPython interactive environment\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "ZtWTTloL526b", "colab_type": "code", "colab": {}, "outputId": "2f0e1f44-52af-417b-ad92-b4fceb45b245" }, "source": [ "plt.figure(figsize=(8, 8))\n", "plt.subplots_adjust(bottom=.05, top=.9, left=.05, right=.95)" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "
" ] }, "metadata": { "tags": [] } } ] }, { "cell_type": "code", "metadata": { "id": "AWT1OyK1526d", "colab_type": "code", "colab": {}, "outputId": "39a62bb2-09a1-43af-bb93-895bacea1cb4" }, "source": [ "plt.subplot(321)\n", "plt.title(\"One informative feature, one cluster per class\", fontsize='small')\n", "X1, Y1 = make_classification(n_features=2, n_redundant=0, n_informative=1,\n", " n_clusters_per_class=1)\n", "plt.scatter(X1[:, 0], X1[:, 1], marker='o', c=Y1,\n", " s=25, edgecolor='k')\n", "\n", "plt.subplot(322)\n", "plt.title(\"Two informative features, one cluster per class\", fontsize='small')\n", "X1, Y1 = make_classification(n_features=2, n_redundant=0, n_informative=2,\n", " n_clusters_per_class=1)\n", "plt.scatter(X1[:, 0], X1[:, 1], marker='o', c=Y1,\n", " s=25, edgecolor='k')" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": { "tags": [] }, "execution_count": 40 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "Hc936ZdB526g", "colab_type": "code", "colab": {}, "outputId": "db73f5c8-e028-4a2c-c9af-f63038897429" }, "source": [ "plt.subplot(323)\n", "plt.title(\"Two informative features, two clusters per class\",\n", " fontsize='small')\n", "X2, Y2 = make_classification(n_features=2, n_redundant=0, n_informative=2)\n", "plt.scatter(X2[:, 0], X2[:, 1], marker='o', c=Y2,\n", " s=25, edgecolor='k')\n", "\n", "plt.subplot(324)\n", "plt.title(\"Multi-class, two informative features, one cluster\",\n", " fontsize='small')\n", "X1, Y1 = make_classification(n_features=2, n_redundant=0, n_informative=2,\n", " n_clusters_per_class=1, n_classes=3)\n", "plt.scatter(X1[:, 0], X1[:, 1], marker='o', c=Y1,\n", " s=25, edgecolor='k')" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": { "tags": [] }, "execution_count": 41 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "3-ift3qD526j", "colab_type": "code", "colab": {}, "outputId": "fa4b5da6-dbb7-40f5-cb7f-bd9a35abb907" }, "source": [ "plt.subplot(325)\n", "plt.title(\"Three blobs\", fontsize='small')\n", "X1, Y1 = make_blobs(n_features=2, centers=3)\n", "plt.scatter(X1[:, 0], X1[:, 1], marker='o', c=Y1,\n", " s=25, edgecolor='k')\n", "\n", "plt.subplot(326)\n", "plt.title(\"Gaussian divided into three quantiles\", fontsize='small')\n", "X1, Y1 = make_gaussian_quantiles(n_features=2, n_classes=3)\n", "plt.scatter(X1[:, 0], X1[:, 1], marker='o', c=Y1,\n", " s=25, edgecolor='k')" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "" ] }, "metadata": { "tags": [] }, "execution_count": 52 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "LsPPNrTo526l", "colab_type": "text" }, "source": [ "\n", "\n", "## KNN - From scratch and Sklearn" ] }, { "cell_type": "markdown", "metadata": { "id": "OhNNLpBs526l", "colab_type": "text" }, "source": [ "Nearest Neighbor Algorithm:\n", "\n", "Given a set of categories {c1,c2,...cn}, also called classes, e.g. {\"male\", \"female\"}. There is also a learnset LS consisting of labelled instances.\n", "\n", "The task of classification consists in assigning a category or class to an arbitrary instance. If the instance o is an element of LS, the label of the instance will be used.\n", "\n", "Now, we will look at the case where o is not in LS:\n", "\n", "o is compared with all instances of LS. A distance metric is used for comparison. We determine the k closest neighbors of o, i.e. the items with the smallest distances. k is a user defined constant and a positive integer, which is usually small.\n", "\n", "The most common class of LS will be assigned to the instance o. If k = 1, then the object is simply assigned to the class of that single nearest neighbor.\n", "\n", "The algorithm for the k-nearest neighbor classifier is among the simplest of all machine learning algorithms. k-NN is a type of instance-based learning, or lazy learning, where the function is only approximated locally and all the computations are performed, when we do the actual classification." ] }, { "cell_type": "markdown", "metadata": { "id": "S-8HeD9y526l", "colab_type": "text" }, "source": [ "### knn from scratch\n", "\n", "Before we actually start with writing a nearest neighbor classifier, we need to think about the data, i.e. the learnset. We will use the \"iris\" dataset provided by the datasets of the sklearn module.\n", "\n", "The data set consists of 50 samples from each of three species of Iris\n", "\n", "Iris setosa,\n", "Iris virginica and\n", "Iris versicolor." ] }, { "cell_type": "code", "metadata": { "id": "TeylfLzu526m", "colab_type": "code", "colab": {}, "outputId": "cd8e5b91-0426-41df-9131-6d4827b49ec9" }, "source": [ "# Four features were measured from each sample: the length and the width of the sepals and petals, in centimetres.\n", "\n", "import numpy as np\n", "from sklearn import datasets\n", "\n", "iris = datasets.load_iris()\n", "iris_data = iris.data\n", "iris_labels = iris.target\n", "print(iris_data[0], iris_data[79], iris_data[100])\n", "print(iris_labels[0], iris_labels[79], iris_labels[100])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[5.1 3.5 1.4 0.2] [5.7 2.6 3.5 1. ] [6.3 3.3 6. 2.5]\n", "0 1 2\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "LJBmU3Lw526n", "colab_type": "code", "colab": {}, "outputId": "9d14b3b6-53dd-441a-8796-90549c208195" }, "source": [ "# We create a learnset from the sets above. We use permutation from np.random to split the data randomly.\n", "\n", "np.random.seed(42)\n", "indices = np.random.permutation(len(iris_data))\n", "\n", "n_training_samples = 12\n", "\n", "learnset_data = iris_data[indices[:-n_training_samples]]\n", "learnset_labels = iris_labels[indices[:-n_training_samples]]\n", "\n", "testset_data = iris_data[indices[-n_training_samples:]]\n", "testset_labels = iris_labels[indices[-n_training_samples:]]\n", "\n", "print(learnset_data[:4], learnset_labels[:4])\n", "print(testset_data[:4], testset_labels[:4])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[[6.1 2.8 4.7 1.2]\n", " [5.7 3.8 1.7 0.3]\n", " [7.7 2.6 6.9 2.3]\n", " [6. 2.9 4.5 1.5]] [1 0 2 1]\n", "[[5.7 2.8 4.1 1.3]\n", " [6.5 3. 5.5 1.8]\n", " [6.3 2.3 4.4 1.3]\n", " [6.4 2.9 4.3 1.3]] [1 2 1 1]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "mMLTNlwB526q", "colab_type": "code", "colab": {}, "outputId": "5fdd5ad3-ff0e-4173-fa44-fc491c18c8dd" }, "source": [ "# The following code is only necessary to visualize the data of our learnset. Our data consists of four values per iris item, so we will reduce the data to three values by summing up the third and fourth value. This way, we are capable of depicting the data in 3-dimensional space:\n", "# following line is only necessary, if you use ipython notebook!!!\n", "\n", "%matplotlib inline \n", "\n", "import matplotlib.pyplot as plt\n", "from mpl_toolkits.mplot3d import Axes3D\n", "\n", "colours = (\"r\", \"b\")\n", "X = []\n", "for iclass in range(3):\n", " X.append([[], [], []])\n", " for i in range(len(learnset_data)):\n", " if learnset_labels[i] == iclass:\n", " X[iclass][0].append(learnset_data[i][0])\n", " X[iclass][1].append(learnset_data[i][1])\n", " X[iclass][2].append(sum(learnset_data[i][2:]))\n", "\n", "colours = (\"r\", \"g\", \"y\")\n", "\n", "fig = plt.figure()\n", "ax = fig.add_subplot(111, projection='3d')\n", "\n", "for iclass in range(3):\n", " ax.scatter(X[iclass][0], X[iclass][1], X[iclass][2], c=colours[iclass])\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "CUdSRmsG526s", "colab_type": "code", "colab": {}, "outputId": "921c0c9e-5718-4f93-ec7c-69b227e46170" }, "source": [ "# Determining the Neighbors\n", "# To determine the similarity between two instances, we need a distance function. In our example, the Euclidean distance is ideal:\n", "\n", "def distance(instance1, instance2):\n", " # just in case, if the instances are lists or tuples:\n", " instance1 = np.array(instance1) \n", " instance2 = np.array(instance2)\n", " \n", " return np.linalg.norm(instance1 - instance2)\n", "\n", "print(distance([3, 5], [1, 1]))\n", "print(distance(learnset_data[3], learnset_data[44]))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "4.47213595499958\n", "3.4190641994557516\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "BKIip1B-526v", "colab_type": "code", "colab": {} }, "source": [ "# The function 'get_neighbors returns a list with 'k' neighbors, which are closest to the instance 'test_instance':\n", "\n", "def get_neighbors(training_set, \n", " labels, \n", " test_instance, \n", " k, \n", " distance=distance):\n", " \"\"\"\n", " get_neighors calculates a list of the k nearest neighbors\n", " of an instance 'test_instance'.\n", " The list neighbors contains 3-tuples with \n", " (index, dist, label)\n", " where \n", " index is the index from the training_set, \n", " dist is the distance between the test_instance and the \n", " instance training_set[index]\n", " distance is a reference to a function used to calculate the \n", " distances\n", " \"\"\"\n", " distances = []\n", " for index in range(len(training_set)):\n", " dist = distance(test_instance, training_set[index])\n", " distances.append((training_set[index], dist, labels[index]))\n", " distances.sort(key=lambda x: x[1])\n", " neighbors = distances[:k]\n", " return neighbors" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "u1rrAcxG526x", "colab_type": "code", "colab": {}, "outputId": "3052a899-222a-4577-8a01-d242343a0d10" }, "source": [ "# We will test the function with our iris samples:\n", "\n", "for i in range(5):\n", " neighbors = get_neighbors(learnset_data, \n", " learnset_labels, \n", " testset_data[i], \n", " 3, \n", " distance=distance)\n", " print(i, \n", " testset_data[i], \n", " testset_labels[i], \n", " neighbors)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "0 [5.7 2.8 4.1 1.3] 1 [(array([5.7, 2.9, 4.2, 1.3]), 0.14142135623730995, 1), (array([5.6, 2.7, 4.2, 1.3]), 0.17320508075688815, 1), (array([5.6, 3. , 4.1, 1.3]), 0.22360679774997935, 1)]\n", "1 [6.5 3. 5.5 1.8] 2 [(array([6.4, 3.1, 5.5, 1.8]), 0.1414213562373093, 2), (array([6.3, 2.9, 5.6, 1.8]), 0.24494897427831783, 2), (array([6.5, 3. , 5.2, 2. ]), 0.3605551275463988, 2)]\n", "2 [6.3 2.3 4.4 1.3] 1 [(array([6.2, 2.2, 4.5, 1.5]), 0.26457513110645864, 1), (array([6.3, 2.5, 4.9, 1.5]), 0.574456264653803, 1), (array([6. , 2.2, 4. , 1. ]), 0.5916079783099617, 1)]\n", "3 [6.4 2.9 4.3 1.3] 1 [(array([6.2, 2.9, 4.3, 1.3]), 0.20000000000000018, 1), (array([6.6, 3. , 4.4, 1.4]), 0.2645751311064587, 1), (array([6.6, 2.9, 4.6, 1.3]), 0.3605551275463984, 1)]\n", "4 [5.6 2.8 4.9 2. ] 2 [(array([5.8, 2.7, 5.1, 1.9]), 0.31622776601683755, 2), (array([5.8, 2.7, 5.1, 1.9]), 0.31622776601683755, 2), (array([5.7, 2.5, 5. , 2. ]), 0.33166247903553986, 2)]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "Kvu70pfI526z", "colab_type": "code", "colab": {} }, "source": [ "# Voting to get a single result\n", "# We will write a vote function now. This functions uses the class 'Counter' from collections to count the quantity of the classes inside of an instance list. This instance list will be the neighbors of course. The function 'vote' returns the most common class:\n", "\n", "from collections import Counter\n", "\n", "def vote(neighbors):\n", " class_counter = Counter()\n", " for neighbor in neighbors:\n", " class_counter[neighbor[2]] += 1\n", " return class_counter.most_common(1)[0][0]" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "5QLamS6m5262", "colab_type": "code", "colab": {}, "outputId": "5eb038e7-7382-4643-aa02-d608ed479055" }, "source": [ "# We will test 'vote' on our training samples:\n", "\n", "for i in range(n_training_samples):\n", " neighbors = get_neighbors(learnset_data, \n", " learnset_labels, \n", " testset_data[i], \n", " 3, \n", " distance=distance)\n", " print(\"index: \", i, \n", " \", result of vote: \", vote(neighbors), \n", " \", label: \", testset_labels[i], \n", " \", data: \", testset_data[i])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "index: 0 , result of vote: 1 , label: 1 , data: [5.7 2.8 4.1 1.3]\n", "index: 1 , result of vote: 2 , label: 2 , data: [6.5 3. 5.5 1.8]\n", "index: 2 , result of vote: 1 , label: 1 , data: [6.3 2.3 4.4 1.3]\n", "index: 3 , result of vote: 1 , label: 1 , data: [6.4 2.9 4.3 1.3]\n", "index: 4 , result of vote: 2 , label: 2 , data: [5.6 2.8 4.9 2. ]\n", "index: 5 , result of vote: 2 , label: 2 , data: [5.9 3. 5.1 1.8]\n", "index: 6 , result of vote: 0 , label: 0 , data: [5.4 3.4 1.7 0.2]\n", "index: 7 , result of vote: 1 , label: 1 , data: [6.1 2.8 4. 1.3]\n", "index: 8 , result of vote: 1 , label: 2 , data: [4.9 2.5 4.5 1.7]\n", "index: 9 , result of vote: 0 , label: 0 , data: [5.8 4. 1.2 0.2]\n", "index: 10 , result of vote: 1 , label: 1 , data: [5.8 2.6 4. 1.2]\n", "index: 11 , result of vote: 2 , label: 2 , data: [7.1 3. 5.9 2.1]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "GQ1RGCfK5264", "colab_type": "code", "colab": {}, "outputId": "40b5f35d-f8f4-4cda-d6f4-efdaf641b785" }, "source": [ "# We can see that the predictions correspond to the labelled results, except in case of the item with the index 8.\n", "#'vote_prob' is a function like 'vote' but returns the class name and the probability for this class:\n", "\n", "def vote_prob(neighbors):\n", " class_counter = Counter()\n", " for neighbor in neighbors:\n", " class_counter[neighbor[2]] += 1\n", " labels, votes = zip(*class_counter.most_common())\n", " winner = class_counter.most_common(1)[0][0]\n", " votes4winner = class_counter.most_common(1)[0][1]\n", " return winner, votes4winner/sum(votes)\n", "for i in range(n_training_samples):\n", " neighbors = get_neighbors(learnset_data, \n", " learnset_labels, \n", " testset_data[i], \n", " 5, \n", " distance=distance)\n", " print(\"index: \", i, \n", " \", vote_prob: \", vote_prob(neighbors), \n", " \", label: \", testset_labels[i], \n", " \", data: \", testset_data[i])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "index: 0 , vote_prob: (1, 1.0) , label: 1 , data: [5.7 2.8 4.1 1.3]\n", "index: 1 , vote_prob: (2, 1.0) , label: 2 , data: [6.5 3. 5.5 1.8]\n", "index: 2 , vote_prob: (1, 1.0) , label: 1 , data: [6.3 2.3 4.4 1.3]\n", "index: 3 , vote_prob: (1, 1.0) , label: 1 , data: [6.4 2.9 4.3 1.3]\n", "index: 4 , vote_prob: (2, 1.0) , label: 2 , data: [5.6 2.8 4.9 2. ]\n", "index: 5 , vote_prob: (2, 0.8) , label: 2 , data: [5.9 3. 5.1 1.8]\n", "index: 6 , vote_prob: (0, 1.0) , label: 0 , data: [5.4 3.4 1.7 0.2]\n", "index: 7 , vote_prob: (1, 1.0) , label: 1 , data: [6.1 2.8 4. 1.3]\n", "index: 8 , vote_prob: (1, 1.0) , label: 2 , data: [4.9 2.5 4.5 1.7]\n", "index: 9 , vote_prob: (0, 1.0) , label: 0 , data: [5.8 4. 1.2 0.2]\n", "index: 10 , vote_prob: (1, 1.0) , label: 1 , data: [5.8 2.6 4. 1.2]\n", "index: 11 , vote_prob: (2, 1.0) , label: 2 , data: [7.1 3. 5.9 2.1]\n" ], "name": "stdout" } ] }, { "cell_type": "markdown", "metadata": { "id": "8mgTomop5265", "colab_type": "text" }, "source": [ "The Weighted Nearest Neighbour Classifier\n", "\n", "We looked only at k items in the vicinity of an unknown object „UO\", and had a majority vote. Using the majority vote has shown quite efficient in our previous example, but this didn't take into account the following reasoning: The farther a neighbor is, the more it \"deviates\" from the \"real\" result. Or in other words, we can trust the closest neighbors more than the farther ones. Let's assume, we have 11 neighbors of an unknown item UO. The closest five neighbors belong to a class A and all the other six, which are farther away belong to a class B. What class should be assigned to UO? The previous approach says B, because we have a 6 to 5 vote in favor of B. On the other hand the closest 5 are all A and this should count more.\n", "\n", "To pursue this strategy, we can assign weights to the neighbors in the following way: The nearest neighbor of an instance gets a weight 1/1, the second closest gets a weight of 1/2 and then going on up to 1/k for the farthest away neighbor.\n", "\n", "This means that we are using the harmonic series as weights:" ] }, { "cell_type": "code", "metadata": { "id": "vb6VjDJ35266", "colab_type": "code", "colab": {}, "outputId": "abde5149-bad4-450c-9ffb-e984d0c55c99" }, "source": [ "# We implement this in the following function:\n", "\n", "def vote_harmonic_weights(neighbors, all_results=True):\n", " class_counter = Counter()\n", " number_of_neighbors = len(neighbors)\n", " for index in range(number_of_neighbors):\n", " class_counter[neighbors[index][2]] += 1/(index+1)\n", " labels, votes = zip(*class_counter.most_common())\n", " #print(labels, votes)\n", " winner = class_counter.most_common(1)[0][0]\n", " votes4winner = class_counter.most_common(1)[0][1]\n", " if all_results:\n", " total = sum(class_counter.values(), 0.0)\n", " for key in class_counter:\n", " class_counter[key] /= total\n", " return winner, class_counter.most_common()\n", " else:\n", " return winner, votes4winner / sum(votes)\n", " \n", "for i in range(n_training_samples):\n", " neighbors = get_neighbors(learnset_data, \n", " learnset_labels, \n", " testset_data[i], \n", " 6, \n", " distance=distance)\n", " print(\"index: \", i, \n", " \", result of vote: \", \n", " vote_harmonic_weights(neighbors,\n", " all_results=True))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "index: 0 , result of vote: (1, [(1, 1.0)])\n", "index: 1 , result of vote: (2, [(2, 1.0)])\n", "index: 2 , result of vote: (1, [(1, 1.0)])\n", "index: 3 , result of vote: (1, [(1, 1.0)])\n", "index: 4 , result of vote: (2, [(2, 0.9319727891156463), (1, 0.06802721088435375)])\n", "index: 5 , result of vote: (2, [(2, 0.8503401360544217), (1, 0.14965986394557826)])\n", "index: 6 , result of vote: (0, [(0, 1.0)])\n", "index: 7 , result of vote: (1, [(1, 1.0)])\n", "index: 8 , result of vote: (1, [(1, 1.0)])\n", "index: 9 , result of vote: (0, [(0, 1.0)])\n", "index: 10 , result of vote: (1, [(1, 1.0)])\n", "index: 11 , result of vote: (2, [(2, 1.0)])\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "Jd0hX60b5267", "colab_type": "code", "colab": {} }, "source": [ "# The previous approach took only the ranking of the neighbors according to their distance in account. We can improve the voting by using the actual distance. To this purpos we will write a new voting function:\n", "\n", "def vote_distance_weights(neighbors, all_results=True):\n", " class_counter = Counter()\n", " number_of_neighbors = len(neighbors)\n", " for index in range(number_of_neighbors):\n", " dist = neighbors[index][1]\n", " label = neighbors[index][2]\n", " class_counter[label] += 1 / (dist**2 + 1)\n", " labels, votes = zip(*class_counter.most_common())\n", " #print(labels, votes)\n", " winner = class_counter.most_common(1)[0][0]\n", " votes4winner = class_counter.most_common(1)[0][1]\n", " if all_results:\n", " total = sum(class_counter.values(), 0.0)\n", " for key in class_counter:\n", " class_counter[key] /= total\n", " return winner, class_counter.most_common()\n", " else:\n", " return winner, votes4winner / sum(votes)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "fg3zlnXN5269", "colab_type": "code", "colab": {}, "outputId": "c277a13b-ebd4-4530-ab77-2c24186a79a7" }, "source": [ "for i in range(n_training_samples):\n", " neighbors = get_neighbors(learnset_data, \n", " learnset_labels, \n", " testset_data[i], \n", " 6, \n", " distance=distance)\n", " print(\"index: \", i, \n", " \", result of vote: \", vote_distance_weights(neighbors,\n", " all_results=True))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "index: 0 , result of vote: (1, [(1, 1.0)])\n", "index: 1 , result of vote: (2, [(2, 1.0)])\n", "index: 2 , result of vote: (1, [(1, 1.0)])\n", "index: 3 , result of vote: (1, [(1, 1.0)])\n", "index: 4 , result of vote: (2, [(2, 0.8490154592118361), (1, 0.15098454078816387)])\n", "index: 5 , result of vote: (2, [(2, 0.6736137462184478), (1, 0.3263862537815521)])\n", "index: 6 , result of vote: (0, [(0, 1.0)])\n", "index: 7 , result of vote: (1, [(1, 1.0)])\n", "index: 8 , result of vote: (1, [(1, 1.0)])\n", "index: 9 , result of vote: (0, [(0, 1.0)])\n", "index: 10 , result of vote: (1, [(1, 1.0)])\n", "index: 11 , result of vote: (2, [(2, 1.0)])\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "taQtd69m526-", "colab_type": "code", "colab": {}, "outputId": "408d2013-0887-4ffb-f121-302163dd7acb" }, "source": [ "# We want to test the previous functions with another very simple dataset:\n", "\n", "train_set = [(1, 2, 2), \n", " (-3, -2, 0),\n", " (1, 1, 3), \n", " (-3, -3, -1),\n", " (-3, -2, -0.5),\n", " (0, 0.3, 0.8),\n", " (-0.5, 0.6, 0.7),\n", " (0, 0, 0)\n", " ]\n", "\n", "labels = ['apple', 'banana', 'apple', \n", " 'banana', 'apple', \"orange\",\n", " 'orange', 'orange']\n", "\n", "k = 1\n", "for test_instance in [(0, 0, 0), (2, 2, 2), \n", " (-3, -1, 0), (0, 1, 0.9),\n", " (1, 1.5, 1.8), (0.9, 0.8, 1.6)]:\n", " neighbors = get_neighbors(train_set, \n", " labels, \n", " test_instance, \n", " 2)\n", "\n", " print(\"vote distance weights: \", vote_distance_weights(neighbors))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "vote distance weights: ('orange', [('orange', 1.0)])\n", "vote distance weights: ('apple', [('apple', 1.0)])\n", "vote distance weights: ('banana', [('banana', 0.5294117647058824), ('apple', 0.47058823529411764)])\n", "vote distance weights: ('orange', [('orange', 1.0)])\n", "vote distance weights: ('apple', [('apple', 1.0)])\n", "vote distance weights: ('apple', [('apple', 0.5084745762711865), ('orange', 0.4915254237288135)])\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "1uNc9ZNu527B", "colab_type": "code", "colab": {}, "outputId": "e45d7dfa-78f3-467c-bec2-7b5ba3facc34" }, "source": [ "## Now we have the SKLEARN MAGIC\n", "# We will use the k-nearest neighbor classifier 'KNeighborsClassifier' from 'sklearn.neighbors' on the Iris data set:\n", "\n", "# Create and fit a nearest-neighbor classifier\n", "from sklearn.neighbors import KNeighborsClassifier\n", "knn = KNeighborsClassifier()\n", "knn.fit(learnset_data, learnset_labels) \n", "KNeighborsClassifier(algorithm='auto', \n", " leaf_size=30, \n", " metric='minkowski',\n", " metric_params=None, \n", " n_jobs=1, \n", " n_neighbors=5, \n", " p=2,\n", " weights='uniform')\n", "\n", "print(\"Predictions form the classifier:\")\n", "print(knn.predict(testset_data))\n", "print(\"Target values:\")\n", "print(testset_labels)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Predictions form the classifier:\n", "[1 2 1 1 2 2 0 1 1 0 1 2]\n", "Target values:\n", "[1 2 1 1 2 2 0 1 2 0 1 2]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "HAVTN2BC527D", "colab_type": "code", "colab": {}, "outputId": "0099c50a-6ffe-41cc-d13b-4abca2e422d7" }, "source": [ "learnset_data[:5], learnset_labels[:5]" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(array([[6.1, 2.8, 4.7, 1.2],\n", " [5.7, 3.8, 1.7, 0.3],\n", " [7.7, 2.6, 6.9, 2.3],\n", " [6. , 2.9, 4.5, 1.5],\n", " [6.8, 2.8, 4.8, 1.4]]), array([1, 0, 2, 1, 1]))" ] }, "metadata": { "tags": [] }, "execution_count": 68 } ] }, { "cell_type": "markdown", "metadata": { "id": "_9-i9wHPgsf6", "colab_type": "text" }, "source": [ "\n", "\n", "### Neural Networks from scratch" ] }, { "cell_type": "markdown", "metadata": { "id": "-MdSv1RY527G", "colab_type": "text" }, "source": [ "### Neural networks\n", "\n", "it is amazingly simple, what is going on inside the body of a perceptron or neuron. The input signals get multiplied by weight values, i.e. each input has its corresponding weight. This way the input can be adjusted individually for every xi. We can see all the inputs as an input vector and the corresponding weights as the weights vector.\n", "\n", "When a signal comes in, it gets multiplied by a weight value that is assigned to this particular input. That is, if a neuron has three inputs, then it has three weights that can be adjusted individually. The weights usually get adjusted during the learn phase.\n", "After this the modified input signals are summed up. It is also possible to add additionally a so-called bias 'b' to this sum. The bias is a value which can also be adjusted during the learn phase.\n", "\n", "Finally, the actual output has to be determined. For this purpose an activation or step function Φ is applied to the weighted sum of the input values.\n", "\n", "The simplest form of an activation function is a binary function. If the result of the summation is greater than some threshold s, the result of Φ will be 1, otherwise 0.\n", "\n", "Before we start programming a simple neural network, we are going to develop a different concept. We want to search for straight lines that separate two points or two classes in a plane. We will only look at straight lines going through the origin. We will look at general straight lines later in the tutorial.\n", "\n", "You could imagine that you have two attributes describing an eddible object like a fruit for example: \"sweetness\" and \"sourness\".\n", "\n", "We could describe this by points in a two-dimensional space. The A axis is used for the values of sweetness and the y axis is correspondingly used for the sourness values. Imagine now that we have two fruits as points in this space, i.e. an orange at position (3.5, 1.8) and a lemon at (1.1, 3.9).\n", "\n", "We could define dividing lines to define the points which are more lemon-like and which are more orange-like.\n", "\n", "In the following diagram, we depict one lemon and one orange. The green line is separating both points. We assume that all other lemons are above this line and all oranges will be below this line." ] }, { "cell_type": "markdown", "metadata": { "id": "zjiBgtDH527G", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/orange_lemon_dividing_line.png)" ] }, { "cell_type": "markdown", "metadata": { "id": "8B1GTVzm527G", "colab_type": "text" }, "source": [ "The green line is defined by y = mx where:\n", "\n", "m is the slope or gradient of the line and x is the independent variable of the function." ] }, { "cell_type": "markdown", "metadata": { "id": "8Ub3Sser527H", "colab_type": "text" }, "source": [ "This means that a point P′=(p′1,p′2) is on this line, if the following condition is fulfilled:\n", "\n", "mp′1−p′2=0" ] }, { "cell_type": "code", "metadata": { "id": "BOJh_23b527H", "colab_type": "code", "colab": {}, "outputId": "2baeb48b-9443-4b91-ce57-9cbdaf29294b" }, "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "%matplotlib inline\n", "\n", "X = np.arange(0, 7)\n", "fig, ax = plt.subplots()\n", "\n", "ax.plot(3.5, 1.8, \"or\", \n", " color=\"darkorange\", \n", " markersize=15)\n", "\n", "ax.plot(1.1, 3.9, \"oy\", \n", " markersize=15)\n", "\n", "point_on_line = (4, 4.5)\n", "#ax.plot(1.1, 3.9, \"oy\", markersize=15)\n", "\n", "# calculate gradient:\n", "m = point_on_line[1] / point_on_line[0] \n", "ax.plot(X, m * X, \"g-\", linewidth=3)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "5t4xxvBS527J", "colab_type": "code", "colab": {}, "outputId": "5154d88e-070c-4cfa-c65a-c4518a7a09a0" }, "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "%matplotlib inline\n", "\n", "X = np.arange(0, 7)\n", "fig, ax = plt.subplots()\n", "\n", "ax.plot(3.5, 1.8, \"or\", \n", " color=\"darkorange\", \n", " markersize=15)\n", "\n", "ax.plot(1.1, 3.9, \"oy\", \n", " markersize=15)\n", "\n", "point_on_line = (4, 4.5)\n", "#ax.plot(1.1, 3.9, \"oy\", markersize=15)\n", "\n", "# calculate gradient:\n", "m = point_on_line[1] / point_on_line[0] \n", "ax.plot(X, m * X, \"g-\", linewidth=3)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "VovQ9OGk527M", "colab_type": "text" }, "source": [ "If a point B=(b1,b2) is below this line, there must be a δB>0 so that the point (b1,b2+δB) will be on the line.\n", "\n", "This means that\n", "\n", "m⋅b1−(b2+δB)=0\n", "which can be rearranged to\n", "\n", "m⋅b1−b2=δB\n", "Finally, we have a criteria for a point to be below the line. m⋅b1−b2 is positve, because δB is positive.\n", "\n", "Finally, we have a criteria for a point to be below the line. m⋅b1−b2 is positve, because δB is positive.\n", "\n", "The reasoning for \"a point is above the line\" is analogue: If a point A=(a1,a2) is above the line, there must be a δA>0 so that the point (a1,a2−δA) will be on the line.\n", "\n", "This means that\n", "\n", "m⋅a1−(a2−δA)=0\n", "which can be rearranged to\n", "\n", "m⋅a1−a2=−δA\n", "In summary, we can say: A point P(p1,p2) lies\n", "\n", "below the straight line if m⋅p1−p2>0\n", "on the straight line if m⋅p1−p2=0\n", "above the straight line if m⋅p1−p2<0" ] }, { "cell_type": "code", "metadata": { "id": "OVapuGjw527N", "colab_type": "code", "colab": {}, "outputId": "1fc7998e-5fb0-44dd-d624-ee3bd25b74b4" }, "source": [ "# We can now verify this on our fruits. The lemon has the coordinates (1.1, 3.9) and the orange the coordinates 3.5, 1.8. The point on the line, which we used to define our separation straight line has the values (4, 4.5). So m is 4.5 divides by 4.\n", "\n", "lemon = (1.1, 3.9)\n", "orange = (3.5, 1.8)\n", "m = 4.5 / 4\n", "\n", "# check if orange is below the line,\n", "# positive value is expected:\n", "print(orange[0] * m - orange[1])\n", "\n", "# check if lemon is above the line,\n", "# negative value is expected:\n", "print(lemon[0] * m - lemon[1])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "2.1375\n", "-2.6624999999999996\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "GSkJYEIE527P", "colab_type": "code", "colab": {}, "outputId": "c3daa1a8-d632-4f34-b812-89097b7655c7" }, "source": [ "# We are going to \"grow\" oranges and lemons with a Python program. We will create these two classes by randomly creating points within a circle with a defined center point and radius. The following Python code will create the classes:\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "def points_within_circle(radius, \n", " center=(0, 0),\n", " number_of_points=100):\n", " center_x, center_y = center\n", " r = radius * np.sqrt(np.random.random((number_of_points,)))\n", " theta = np.random.random((number_of_points,)) * 2 * np.pi\n", " x = center_x + r * np.cos(theta)\n", " y = center_y + r * np.sin(theta)\n", " return x, y\n", "\n", "X = np.arange(0, 8)\n", "fig, ax = plt.subplots()\n", "oranges_x, oranges_y = points_within_circle(1.6, (5, 2), 100)\n", "lemons_x, lemons_y = points_within_circle(1.9, (2, 5), 100)\n", "\n", "ax.scatter(oranges_x, \n", " oranges_y, \n", " c=\"orange\", \n", " label=\"oranges\")\n", "ax.scatter(lemons_x, \n", " lemons_y, \n", " c=\"y\", \n", " label=\"lemons\")\n", "\n", "ax.plot(X, 0.9 * X, \"g-\", linewidth=2)\n", "\n", "ax.legend()\n", "ax.grid()\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAW4AAAD8CAYAAABXe05zAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJztnXl4FFXat+/TnY0QFgkYNtk+FJiwr4O4BHFhmddxm3EBcRkHh01wG3SYUVRAZ9BRRmAQcZRXcVB8lXEEBBEiIqAkAgYJi6zGaIAEIQvZus/3R6chCV3d1Ut1VSXnvq5ckO6q6l9Xd3711HOe8xwhpUShUCgU9sFhtgCFQqFQBIcyboVCobAZyrgVCoXCZijjVigUCpuhjFuhUChshjJuhUKhsBnKuBUKhcJmKONWKBQKm6GMW6FQKGxGTKANhBBdgHeqPdQJeEJK+ZLWPs2bN5cdOnQISVBxcTENGzYMad9oYyetYC+9dtIK9tJrJ61gL73haM3MzDwhpWyha2Mppe4fwAn8BLT3t12/fv1kqGzYsCHkfaONnbRKaS+9dtIqpb302kmrlPbSG45WIEPq9OJgUyXDgANSyiNB7qdQKBSKCBGscd8G/NsIIQqFQqHQh5A6uwMKIeKAXCBVSpnn4/lxwDiAlJSUfsuWLQtJUFFREUlJSSHtG23spBXspddOWsFeeu2kFeylNxytQ4cOzZRS9tezbTDG/WtgopTy2kDb9u/fX2ZkZOg6bm3S09NJS0sLad9oYyetYC+9dtIK9tJrhNaKigpycnIoLS2N6HEBSktLSUhIiPhxjUCP1oSEBNq2bUtsbGyNx4UQuo07YFVJNW5HpUkUCoUPcnJyaNSoER06dEAIEdFjFxYW0qhRo4ge0ygCaZVSkp+fT05ODh07dgz5dXTluIUQicA1wPshv5JCoaizlJaWkpycHHHTrmsIIUhOTg77zkRXxC2lLAGSw3olhUJRp1GmrY9InKdgUiWKCJOXt5SDB6dTVnYET4m8i/j49nTqNIuUlNFmy1MoFBZFGbdJ5OUtZe/ecbjdJVWPuAAoKzvC3r3jAJR5KxQKn6heJSZx8OD0aqZdE7e7hIMHp0dZkUJRd5FS4na7zZYRMZRxm0RZ2dGwnlcobM2hpbCiA7zt8Px7aGnYh/z73/9O9+7d6d69Oy+99BKHDx+mW7duTJgwgb59+/L9998zfvx4+vfvT2pqKk8++eTZfTt06MCTTz5J37596dGjB3v27AHg+PHjXHPNNfTt25f777+f9u3bc+LECQDeeustBg4cSO/evbn//vtxuVy4XC7uvvtuunfvTo8ePXjxxRfDfl++UMZtEvHx7cJ63ork5S1ly5YOpKc72LKlA3l54f8xKuogh5bCV+Og5AggPf9+NS4s887MzOT111/nyy+/ZOvWrbz66qucPHmSvXv3MnbsWLZv30779u2ZNWsWGRkZfPPNN3z22Wd88803Z4/RvHlzvv76a8aPH8/zzz8PwFNPPcVVV13F119/zY033sjRo56AKjs7m3feeYcvvviCHTt24HQ6Wbp0Kd988w0//PADu3btIisri3vuuSesU6WFMm6T6NRpFg5Hos/nHI5EOnWaFWVF4ZGXt5Q9e+6tGmiVlJUdYc+ee8+atzJ1xVl2TgdXrTShq8TzeIhs2rSJG2+8kYYNG5KUlMRNN93E559/Tvv27fnlL395drt3332Xvn370qdPH7799lt279599rmbbroJgH79+nH48OGzx73tttsAGD58OBdccAEAn376KZmZmQwYMIDevXvz6aefcvDgQTp06MDBgweZPHkyH3/8MY0bNw75PflDDU6ahHfgUU9Vybnqk6PEx7cLu+ok0scD2L9/ClKW13hMynL2758CUGMgVg3A1nNKNNKAWo/rQGsGePUWq4cOHeL5559n27ZtXHDBBdx999016qnj4+MBcDqdVFZW+j2ulJK77rqLZ599tsbjhYWF7Ny5kzVr1jB//nzeffdd/vWvf4X8vrRQEXcU0Io2U1JGM3jwYdLSJGlplaSlSQYPPnyeae/dO65GJLt377iQI9ZIH89LZWW+5uO+BmLVAGw9JlEjDaj1uA6uuOIKVqxYQUlJCcXFxXzwwQdcfvnlNbY5ffo0DRs2pEmTJuTl5bF69eqAx73ssst49913AVi7di0nT54EYNiwYbz33nscO3YMgIKCAo4cOUJ+fj5ut5ubb76ZZ555hq+//jrk9+QPFXGHSaDotXbZX7DRpj/TCyVajfTx9KA10KoGYOspvWZ5ctrV0yXORM/jIdK3b1/uvvtuBg4cCMB99913Nq1x9mV79aJPnz6kpqbSqVMnhgwZEvC4Tz75JLfffjvvvPMOV155Ja1a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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "R48KQfng527R", "colab_type": "code", "colab": {}, "outputId": "af417116-6d12-45ce-bd76-25a70fe411ae" }, "source": [ "# The dividing line was again arbitrarily set by eye. The question arises how to do this systematically? We are still only looking at straight lines going through the origin, which are uniquely defined by its slope. the following Python program calculates a dividing line by going through all the fruits and dynamically adjusts the slope of the dividing line we want to calculate. If a point is above the line but should be below the line, the slope will be increment by the value of learning_rate. If the point is below the line but should be above the line, the slope will be decremented by the value of learning_rate.\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from itertools import repeat\n", "from random import shuffle\n", "slope = 0.1\n", "\n", "X = np.arange(0, 8)\n", "fig, ax = plt.subplots()\n", "ax.scatter(oranges_x, \n", " oranges_y, \n", " c=\"orange\", \n", " label=\"oranges\")\n", "ax.scatter(lemons_x, \n", " lemons_y, \n", " c=\"y\", \n", " label=\"lemons\")\n", "\n", "fruits = list(zip(oranges_x, \n", " oranges_y, \n", " repeat(0, len(oranges_x)))) \n", "fruits += list(zip(lemons_x, \n", " lemons_y, \n", " repeat(1, len(oranges_x))))\n", "shuffle(fruits)\n", "\n", "learning_rate = 0.2\n", "\n", "line = None\n", "counter = 0\n", "for x, y, label in fruits:\n", " res = slope * x - y\n", " if label == 0 and res < 0:\n", " # point is above line but should be below \n", " # => increment slope\n", " slope += learning_rate\n", " counter += 1\n", " ax.plot(X, slope * X, \n", " linewidth=2, label=str(counter))\n", " \n", " elif label == 1 and res > 1:\n", " # point is below line but should be above \n", " # => decrement slope\n", " slope -= learning_rate\n", " counter += 1\n", " ax.plot(X, slope * X, \n", " linewidth=2, label=str(counter))\n", "\n", "ax.legend()\n", "ax.grid()\n", "plt.show()\n", "\n", "print(slope)" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAW4AAAD8CAYAAABXe05zAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsnXl8VPXV/993lkz2nSQsEkAWAwEVcKFUC7hWrWt/tooCgtXW1tI+rY91Q4uiXayP2tr2sQVUjILagtZSRK1RoagPuAUIO0QCZIckk8x+v78/7kwySWa5s8+E+3698oLcufd7z9yZfO6553vO+UpCCDQ0NDQ0Ugddog3Q0NDQ0AgNTbg1NDQ0UgxNuDU0NDRSDE24NTQ0NFIMTbg1NDQ0UgxNuDU0NDRSDE24NTQ0NFIMTbg1NDQ0UgxNuDU0NDRSDEOwHSRJmgCs8do0BlgihHjS3zHFxcVi1KhRYRnU1dVFVlZWWMfGm1SyFVLL3lSyFVLL3lSyFVLL3khs3bZtW4sQYoiqnYUQqn8APdAAlAfab9q0aSJc3nvvvbCPjTepZKsQqWVvKtkqRGrZm0q2CpFa9kZiK7BVqNTiUEMlFwD7hRB1IR6noaGhoRElQhXu7wIvx8IQDQ0NDQ11SEJld0BJktKAo8AkIUSjj9dvA24DKC0tnbZ69eqwDDKbzWRnZ4d1bLxJJVshtexNJVshtexNJVshteyNxNbZs2dvE0JMV7NvKMJ9FfBDIcTFwfadPn262Lp1q6px+1NdXc2sWbPCOjbepJKtkFr2ppKtkFr2xsJWh8NBfX09Vqs1quMCWK1W0tPToz5uLFBja3p6OiNGjMBoNPbZLkmSauEOmlXixQ1oYRINDQ0f1NfXk5OTw6hRo5AkKapjd3Z2kpOTE9UxY0UwW4UQtLa2Ul9fz+jRo8M+j6oYtyRJmcBFwN/DPpOGhsagxWq1UlRUFHXRHmxIkkRRUVHETyaqPG4hRDdQFNGZNDQ0BjWaaKsjGtcplFCJRpRpbKziwIH7sNnqUFLkXZhM5YwZs4zS0rmJNk9DQyNJ0UreE0RjYxW7d9/mFm0AFwA2Wx27d99GY2NV4ozT0EhBFi5cSElJCZWVlYk2JeZowp0gDhy4D1nu9vmaLHdz4MB9cbZIQyO1WbBgARs2bEi0GXFBE+4EYbN9FdHrGhoafTn//PMpLCxMtBlxQYtxJwiTaaRXmMT366lGb8z+K0ymkVqs/iRl1C/+GZNxD/3q8piMm4poHneCGDNmGTpdps/XdLpMxoxZFmeLIqOxsYpduxa6b0YCm62OXbsW9sTqGxur2LJlFNXVOrZsGaXF8DU0IkDzuBOExxNVk1USbU82Fp7x3r2LEcLeZ5sQdvbuXQzA7t239cT0PROwgOaRD0Ki7RmnUgFOvNCEOw74E0rPT7Bjoyl60R7Pg9PZ6ne7r4lYzwSsJtwaGqGjhUoiJFgIoG/anwg53S+Q6IVDtMdTg7+JVm0CViOa3HDDDcyYMYPdu3czYsQIli9fnmiTYobmcUeA09kW1HuN1NuMtujFSkT1+iJcroFet15fhMGQ7XMiNtQJWG3yUyMQL7988rRS0jzuCLDZjgT1XgMJpZoJO3/iFm7WSbTH8zB+/FOAsd9WI+PHP+VzIjbUCdhIn1w0NAYTmnBHQP/JOA/eYu1PEA2GQlVCFA3Ri9Z4gW40paVzqahYiclUDkiYTOVUVKzsieNPmPBsn9cmTHg2JG85ESEeDY1kRQuVRICytsRAvMV6zJhlfcIpoAilEKgKofTNPok8RBDueL4mNWtrb2LPnsWMH/9U0MlWNROxgdDi5BoavWjCHQEm03B0uswBouztvfoTytram32O6UuIIhW9aIznr0Tf5WqNS2qfv4KlVCxU0hjEyHJcTqOFSiLAYChUFQIoLZ3LjBmHmDVLZsaMQ5SWzo1ZrDlWBPJs4xGyiHbISEMjmgiHA3t9PYajRxEuV8zPd9J63NHKUAjHe21srMLlMg/YnsxCFKxEP9Yhi2iHjDQ0ooEQAldbG87GJoTsAklC7ragz4ntGpknpXDHqgglnHN70OuLemLFyYivWL038XhSiHbISGNwcfjwYebNm0dDQwM6nY7bbruNxYsXx+x8cnc3jqNHkd2r2eiys7Hn5pIRY9GGk0C4fXnWiazk8xcrNhiyk1qUPLbt3bt4QJVkMj8paJw8GAwGfve73zF16lQ6OzuZNm0aF110ERMnTozqeYTTiaOxEdfx4wBIRiPGoUPR5eRgNw98ko4FgzrG7S/3198jfzQf9/2lzqVydkRp6Vy+/vUWKipejCi1T0MjFgwdOpSpU6cCkJOTQ0VFBUeOHIna+EIInG1t2PbuVURbkjAUD8E0diz63Ny4Lt02qD1uf561p6FTf6L1uB8oFDMYsiMSFbKIxryEVn0ZBx7Ki+pwPe2lHmpXfcyhQ4f47LPPOOecc6Jig9xtwXHsKLLFAihhEePQoehMpqiMHypqV3nPlyTpNUmSdkmSVCtJ0oxYGxYN/HuxrphmKAQKxWjZEeERjcpJrfry5MBsNnPdddfx5JNPkpubG9FYwunEfvQotgP7kS0WJIOBtFNOIa28PGGiDeo97qeADUKIb0tK1YnvRtJJhn/vtrwn1h0LzytQOETLjgiPaMxLaF0K40QInrEaQmnr6nA4uO6665g7dy7XXntt2OcUQuA6cQJnQ4OS3idJGIqKMAwZgqTXhz1utAgq3JIk5QLnAwsAhFLn7bvWO8nwV7Xo3VY1FhgMhT7bnHrCIVp2ROj4vxnWUV2tU3UDTOX5BY3gCCFYtGgRFRUV/Nd//VfY48gWC45jx5C7Fd3QZWZhHDYUXXp6tEyNGDWhkjFAM7BSkqTPJEn6qyRJWTG2KypEo0dGqDQ2VuF0dgzYLklpWjgkAgLPAagLe6Ra0ZNGaGzevJlVq1bx73//mzPOOIMzzjiD9evXqz5euFw4jh7Dtn8/cnc3ksGAccQI0kaPSirRBpCEEIF3kKTpwEfATCHEx5IkPQV0CCEe6LffbcBtAKWlpdNWr14dlkFms5ns7NjnQUYDX7Z2ddX4aT5lIDv79PgY5odUvrZOZxtWax0QuKRYktLIyprs8zXfY+hITy/HYIhskdlUvrbRIC8vj7Fjx0Z1TA8ulwt9LMMTQiB1daE/cQLcVY9yTg5yfj7oQku8U2vrvn37aG/vG1KaPXv2NiHEdDXnURPjrgfqhRAfu39/DfhF/52EEM8CzwJMnz5dzJo1S835B1BdXU24x8YbX7ZWV88BfN0MJWbNik8fA3+k+rX1zgjxfY2h/3X2PiYrayQjR15Ga+v6fvML4cdCA9mbrMTC1tra2pgtLxbLpctkq1UpoukJi2Qq2SIZGWGNp9bW9PR0zjzzzLDOASqEWwjRIEnSYUmSJgghdgMXADvDPuMgZzCk+yUr3nMDW7aMCnqdfaVlNjQ8r+WdayBcLpxNTThb2wCBpDdgKCtFn58f13zscFH7HHAnUCVJ0pfAGcCjsTMptdHS/eKDmuus9fDW6I8QAueJE9j27sXZ2goIDIWFmMaNxVBQkBKiDSrTAYUQnwOqYi8nO75Wb/cWC83T6yWSYhg1aZVaFomGN7LVqmSLdHUBoMvIwDhsWNhhkUQyqCsnE4VHPBLVyCoViEajr2BplVrYSgPcYZHmZsXDFgJJr8dQWoo+hTzs/qRcrxI1q6oHW8cx1DHDwd9jem3t/KSo1IvFew6FeIQxtLDVyY0QAld7O7Z9+3C2tIAQ6AsKMI0bh6GwMGVFG1LM4w7mpYXjxcWqxWugcvtEe96JbGvrIR5hDK1K9eTCarVy/vnnY7PZcDocXH3RRdz/ve8BoEvPUIpoMlOi6DsoKeVxB/PSwvHiYuX5BXocT/QEWTJM2sWrGMbX6kMagxOTycS777zD1o0b2fLSS2x87z0+2b4d49ChpJ06ZtCINqSYcAfz0sLx4mLl+fl6TI/m+JGQDJN2WhhDI5oIIZA7OzEeO4azuRmHw4FTCEynnIKhqCilwyK+SKlQSbDJJn89QgJVxcVqAsvj2dXWzieWLWTDIVgvlXighTEGL5Of9125Gik182t8bpftdpzHjuHq7MTlcjHzu99l/+HD/PCHP+TcmTNjYkuiSSmPO5iX5q96P1BVfyw9v9LSuVRUPJ9UnmUy9VLRwhgakSBkGUdTk7KwQWcnkk5H+vARfL5zJ/X19XzyySds37490WbGhJTyuIN5aS5Xm8/j/G1XM2asbY43ShzbMWC7TpejCadGVPDnGYeLrzJyV2cnjmPHEHalL5A+Px9jaSmS0QhAfn4+s2bNYsOGDVRWVkbVnmQgpYQbAufuhhv2iHWb1WRq4+ovjh3o5hZPPEU5ZvOdbNmyQAufaPRBtttxNjTg6lCeGnUmE4Zhw9BnZdHc3IzRaCQ/Px+LxcI777zD3XffnWCLY0PKCXcgAvXf1lBI5qKUZEhT1EhOhCzjbGnF2dwMQkbS6TCUlKAvLERyd/A7duwY8+fPx+VyIcsy119/PVdccUWCLY8Ng0q4ky0skYwk881NW6FGwxeSxYLNOyySl4ehrAydOyziYcqUKXz22WeJMDHuDCrhhuQKS3gItydHLBa2TeabW6LTFANdb22R4fgjOxw4jzWg72hHAJLJhHHoUPQp0vc8lgw64U42wn38j2XYIBlvbpDYME6g6w1a35l4ImQZV2srjuZmkGVlvceSEiUfO8SFDQYr2lWIMeFWKSZDdWO8SWRRTqDrfTJ+FonCZTZj278fR2MjyDL63Fycw4ZhHDJEE20vNI87xoT7+J/osEEwYh3GMZvBZCqPeFy1dkaz6lYjdGSHQ8kWcS/nJaWlKWGRnBxsnZ0Jti750G5hMSbcnhyhHBdJp79wuynu3n2bO6yhbqFetXiKcrKzpw0oygnV1lDsDHS9tUWGY4cQAmdLC/a9exXRdodFTGPHoo/RcmWDAU24IySYmIT7+K/2uEhENNxjExE6CMfWUOwMdL21viqxwdXVhX3ffhwNDQhZRp+Tg2ncOIwlJVpYJAja1YkAp7MtqJiUls5lwoRnMZnKAQmTqVzVmodqj4tERMM9NhFhnHBsDcXOQNc73M9QwzfC4cBeX4/94EFkmxXJmEbayJGklZejS0uLaGyXy8WZZ545aPO3PWgx7giw2Y5gMATPOw43i0PNcZGIaLjHxiv7Q82q7oFsDdXOQNc7WTNxUgkhBK62NpyNTQjZpYRFiosxRHHi8amnnqKiooKOjoH9eAYTmscdAULYfW6P9aSVd3jG30eoRkTDjd3GI3TQ/2nGH4Fs1UIcyYPc3Y19/36lv4jsQpedjWnsWKW/SJREu76+nn/+85/ceuutURkvmVHlcUuSdAjoROlP6hRCaAsHo3TU80UsJ6365xv7ahmrVpzCraKMRxGPr6eZ/qixVZIyAGUcg6GIceOe0jznGFN7WkVMxq3YVRvw9Z/85Cf85je/ofMkyEIJJVQyWwjREjNLUhCTaTg6XWZcy8d9xXoV9IAckoiqEWB/6XSxDh34e5pRkIK+z4E3OJBlS5St1EgW3nzzTUpKSpg2bRrV1dWJNifmaDHuCDAYCpkw4dkeYTMYChECamtv5sCB+ygquozW1vVR9Ur9h2FkZs2SQx4vkAAnsumT/6eZcmbMOBT0+Gj0PdHK3MNjwqef4jh2FNmi3Ch12dkYhw5FZzKFNZ6vtq792bx5M2+88Qbr16/HarXS0dHBTTfdxIsvvhjWOZMdtcElAWyUJGmbJEm3Bd37JMKTd1xRsQpZtuByteLJMDl69E9Rz3VWG5eOxiruiawY9DzNeBPK00ykmS+xzFUfrAinE/vRo9gO7Ee2WJAMRtJOOUXJFglTtNXy2GOPUV9fz6FDh1i9ejVz5swZtKINIIlAy8N4dpKkYUKIo5IklQBvA3cKIT7ot89twG0ApaWl01avXh2WQWazmewUaSLjbWtXV02Qx3sFSUojKyvw0k5OZxs22xGEsCNJaZhMw3uWX3M627Ba6wBv71pHenp50H2EGE1OTn4I72+b39eys6epHicczGYz6el2v9chGP4+DzXXP5zjU/V7GxVkmfzMTCbk5iq9RQA5Nxc5Lw+iMPHocrnQ6/Wq9//www95+umnefXVVyM+d6iotXXfvn20u6tEPcyePXub2vlDVcLd5wBJeggwCyEe97fP9OnTxdatW0Ma10N1dTWzZs0K69h4422rkuGh5lpKAUMavmKzOl1mn7zhYI/wW7aM8pkG19X1NJdffqeq9xZoHLXhikiI9Hug5joGPr+/z9P355eq39tIsdbW0vDLpXR871bGlZaiy8pSwiLp6VEZH9SFSpIBIQTHO49TmBvcuaitraWiou8kriRJqoU7aIxbkqQsQCeE6HT//2JgqZrBTyb85Qz72i8QamKzwSYG/YUD1DwReJPMvbuDEWnmSzIvOJEMuDo6aH769xx/6SXFy9bpMI4YgT4vb9CtqB4MIQQd9g5aLC3YnDZy5VwMuthOH6oZvRRY6/4wDMBLQogNMbUqBfElcv1RI3rRqEr0Jzr+Jvz8kcy9u9UQ7AYX6MkllW9asUQIQccbb9D428dxtbSAXk/h/Hm0lpRgyFcfhhsMyELmhO0ELZYWHC5lHVe9pMfmsiVeuIUQB4DTY2rFIMCXyIWTVRINT8+f6JhMw1WP4WGwVgwGy5hJ9ZtWLLDu3kPDw0uxbFXmPjKmTaNsyQOkT5hAW23gHOvBhEt20WZto83ahlN2ApCmT6MoowiD3UCWMSvmNmjpgF5Emv4VDZGLhqfnT3Rqa9VN7MWLRKbbRSMkdbLgMptp+cMztK1aBS4X+sJCSu66i7yrrzqpwiIO2UGbRRFsWSjzHOmGdIozislNy0WSJDod8Sn+0YTbTbAVUOIlMNHy9HyJTk3N390Tjon3IBO9MHAoIamTNZ9bCEHH+vU0/erXyiK9Oh0FN97IkJ8sRp+bm2jz4obdZafF0sIJ2wk8yRxZxiyKM4rJMmYl5OalCbcbfx7Ynj2LEcLiR9BDDz0kgsbGKvbuXYzVeg8GgxKGSfTyW4leGFhtSCrRN5hEYdu/n4aHH6H7o48ASD99CmVLlpAxaVKCLYsfVqeVFksL7bbetL2ctByKM4rJNGYGODL2nHRNpvwVpvjzwFyu1rgWoUS78MMzntPZOuC1RC6/legVftQ2oDrZli2Tu7poevxxDlx1Nd0ffYQ+P5+hjzzMqJdfPilEWwhBl6OLuo469p/YT7utHQmJfFM+Y/PHMjJ3ZMJFGwaZxx3skTaQ96Q2nc9DtASmv80ulzmqnqj/3iYKgd5HLEMEiU63UxuSSvQNJl4IIejc+DaNjz2Gs6EBJIn8669nyE9/gqGgINHmRYwQAiEEOj8FQUIIzA4zzZZmLA53qb6kIz89n6L0ItL0kfUJjzYp7XF7e88ffljMrl0LA3qqgbwnfx6YwVDk89zREBhf3rUvzxjCFwo1vbXV2hatku/GxipcLvOA7YEmYaNRwt8fT7uCWbPkAcukedDrfU/oDqZ8bvuhQxy+9XscWbwYZ0MD6ZMmMWrNaoYu/WXsRPtgFawbBS/plH8PRv55PvHEE1RWVlJZWcmTTz7JoUOHqKio4I477mDq1KkcPnyYH/zgB0yfPp1Jkybx4IMPKil91hOcUn4K/33ff3PFeVdwzfnXcOLwCcYVjMPQbeDySy9n6tSp3H777ZSXl9PSovTae/HFFzn77LM544wzuP3223G5XLhcLhYsWEBlZSWTJ0/mf/7nfyJ+X75IWeHuLywuV+uAApP+j7SBvCd/q5yMG/eUT0EvKrqMrq6aqPcC8UcgoQgkaoGOCySUsQoR+Avd6PVFTJjwLKBUbJrN23reS6L6hjQ2ViHLvrIEjIMin1u2WGh68kkOfOtKujZvRpeXR9lDDzLqlTVkTJkSuxMfrIJPboNud6/17jrl9wjEe9u2baxcuZKPP/6Yjz76iL/85S8cP36c3bt3M2/ePD777DPKy8tZtmwZW7du5fMvPued997hzU1vcsR8BIGgqKiIDz7+gB//8MesfGYlBp2BX/7yl8yZM4dPP/2Ua665hq++UjSktraWNWvWsHnzZj7//HP0ej1VVVV8+eWXHDlyhO3bt1NTU8Mtt9wSpYvWl5QNlagVPW+xDvZ4Hij9q39+dkPD8wixFG8h8YyhFvVetITNVseWLaNCCv+Uls71Wxik1xcxfrz/3tSxChH4+9wMBqV3hq/3otNlJGQi88CB+3xWmxoMuak9MSkEne++S+OyR3EcPQpA3nXXUvKzn2EojEPK6Bf3gavfd8DVrWwfHd513bRpE9dccw1ZWUoO9bXXXsuHH35IeXk55557bs9+L69+mf999n+xOWw0Nzaze9duKior0Et6br/pdoozijlr+lmsW7uuZ9y1a9cCcOmll1LgfgJ599132bZtG2eddRYAFouFkpISZs2axYEDB7jzzju5/PLLufjii8N6P8FIWeFWKyDeHmckCwf07wUSDSHxdyPR64swGLLdr0l4emb4ukEEy87w3s9sVvqMxKsQyBeBbgj+3ou/G3Ss48z+xnc622J63lhiP3yY/D/+kfqa7QCYTjuNsiVLyJx6ZvyM6PbzufnbrgJ/PZc8Qu5wOfhs12f8+vFfs3rjavLy81jy4yVkk83Y/LHoJB0Z6RkA6PV6nE5nwHGFEMyfP5/HHnusz/bOzk6++OIL3nrrLZ555hleeeUVVqxYEfb78kfKhkrUCEh/UY7Woq/R8kb9xdXHj3+KGTMOue3s+8UJJfzjwRPLzc6e5jeWq9a2SEMEgdrShnr9Yh1nDndpt2REttlo/sMzHLj8Ckw129FlZ1N6332Mfu3V+Io2QKaf6+dvuwrOP/981q1bR3d3N11dXaxdu5bzzjsPgeCo+Sh7T+zlcPNhMjIzKCsqI8OSwaZ3N5FhzAiYh/31r3+dV155BYCNGzdy/PhxAC644AJee+01mpqaAGhra6Ouro7W1lZkWea6667j4Ycf5tNPPw37PQUiZT1u3yEAIwZDLk5nm98sgWhUw0XLGw2W2aBGlGPlGceq5DvQU49yLt9PIN659N7HxJLB0q/E/P77NDyyDMfhwwBYzjmbKY8/jmHIkMQYdPoyJabtHS7RZyrbw2Tq1KksWLCAs88+G4D5t8zHYrRgd9k5blXE9uxpZ3P21LO5/GuXM2bMGGbOnBl03AcffJAbbriBNWvW8I1vfIOhQ4eSk5NDcXExjzzyCBdffDGyLGM0GnnmmWeQZZlrr70W2d3etr9HHi1SVrgT2UvC8wftTbh/0IFuJGpEOZbiEouS72Cfm6/3Mn78UwGPiRWp3q/EceQIDY89hvmddwEwjRtL2ZIlfNLVlTjRht449hf3KeGRzJGKaIcZ3/bw05/+lNt/dDvNlma6HF0AvL7pdfJNSkqfyWBi1QurfB576NChnv9Pnz69Z/mzvLw83nrrLQwGA1u2bOG9997D5F4U4jvf+Q7f+c53+ozT2dkZMy/bm5QVbkhcLwnPObdubUPN+ofhokaU+4tL/+XT/NmVyDJuf59bsHh8oj7rVBFqD7LdTtuKlbT8+c8IqxVdZibFd95J4U1zkYxGSIY1GUfPjVioPQgh6LR30mJpweLszcEuSC+gKL0Io94Y9thfffUV119/PbIsk5aWxl/+8peo2BwpKS3ckDgBKi2dS1ZWdVjrPIZyDgju8XnERW15djKXcXveS3V1dcwXaxiMPUjMmzfT+PAj2N0eZO5ll1Fy990YS0sSa1gMkIVMu62dFksLdpeS/aPX6SlKL6IgvSAqrVXHjRvHZ599FvE40SalhTuZBShahOLxqe3/keg+IcnAYPvuOBoaaPzVr+ncoLTKTxszhrIH7idrxowEWxZ9XLKrpw+2p62qUWekKEMRbJ2UsjkXqklp4fYnQHv3Lh50npQa1Ga7JFMZd6K8Xn/fndramwKGmJIN4XDQ9sILND/zR0R3N1JGBsV3/ICi+fOR0pKrTDtSnLKzpw+2S3YBYDKYKE4vJteUe1IItoeUFm7/ebatPZV5qepJhSNoajNMEt0nxEPgVrqx67zY2FgVsC9Nqnxnuj7+hIaHl2Lftx+AnIsvpvSeX2AcOjTBlkUXp3ByrOsYJ6wnevpgZxgzGJIxhGxj9knVE9xDSt+i1ApNqnVzC7fEW23udaxytEMllmX1/loAeK5tMJL5O+NoauLIz+/iq/nzse/bT1p5Oaf85S+MePqpQSXaNqeNI51HOGo/SptFWbwgOy2bUXmjGJ07mpy0nJNStCHFPW416zx6SKVubuHGoEOZzFSzX6yJRcgmWOw6lP4wyfadEU4nx6uqaH7698hdXUgmE8Xfv53CRYvQDaKwSLejmxZLC5323j4xeaY8ijOKSTf4Xz0+Ozsbs3lg87LBSEoLty8BcjrNuFwDO+ylUrVbJIKmdjIzkWlunjBQ/6pQD0ooJ7yxg930Ql10OVno3raNhl8uxbZnDwDZc+ZQeu+9pI1IjcU8guHpg91iaenJwZYkpQ92upxOYU5yLbuXaFI6VAIDW3OOH++7m18qVbsNplLr/vQNAw0k0s8q2E3P/zXs+8idLN8ZZ0sLR39xD3Vzb8K2Zw/GESMY8ac/csofn0lp0fYOZ23+z0hqDj5JXUcdXY4udJKO4oxixhWMY1j2MIxS6HnYv/3tbznrrLOYMmUKDz74IKAU2Zx22mnceuutVFZWMnfuXN555x1mzpzJuHHj+OSTTwClfP3qq69mypQpnHvuuXz55ZcAPPTQQyxcuJBZs2YxZswYnn76aQC6urq4/PLLOf300znnnHNYs2ZNlK6Sf1QLtyRJekmSPpMk6c1YGhQp0epHkkiSJQYdCwKFKqLxWQW76fm7tsOGfT+pvjPC5aKtqor937yM9nXrkNLSKP7hDxnz5j/ImT07YXZFg/5zOA77YdoO34u9/V+UZJYwvmA8pVmlGHXhFc5s3LiRvXv38sknn/D555+zbds2PvjgAwD27dvH4sWL+fLLL9m1axcvvfQSmzZt4vHHH+fRRx8FlDL3M888ky+//JJHH32UefPm9Yy9a9cu3nrrLT755BN4Iaw1AAAgAElEQVR++ctf4nA42LBhA8OGDeOLL77g448/5tJLL434GgUjlFDJYqAWSPpVQlOx2s2baMegPaEJs/lOqqsvBFyquwRGG/+hCikqBTfBqk2TJb4fCMvnn3Ns6VJsO2sByDr/PMruu4+08vIEWxY5LtnFvv2/GHjzFlasTb9nyKk/j/gcGzduZOPGjZx5ptI8y2w2s3fvXkaOHMno0aOZPHkyAJMmTeKCCy5AkiQmT57cU/a+adMm/va3vwEwZ84cWltbaW9X1p28/PLLMZlMmEwmSkpKaGxsZPLkyfz85z/n7rvvZs6cOVxyySURv4dgqBJuSZJGAJcDy4D/iqlFGkD0bj79J+tAyX9NVMpbrFMR1Qhzst7YnceP0/zEE5x49TUADMOGUnbvvWS7xSWVccpOWi2ttFnbcNiP+NzHZjsclXMJIbjnnnu4/fbb+2w/dOhQT58RAJ1O1/O7TqcL2MrVc/29j/e0fx0/fjzbtm1j/fr1PPTQQ3z88ccsWbIkKu/FH2o97ieB/wZy/O0gSdJtwG0ApaWlPU1aQsVsNod9bLxJBVu7utrcCz6AyzUCs/nxPq9v3dpGVlZ13OxxOp/Aaq0DvFsF6HA6y/tcy8iu7XDgOQBsNqithdracMdSR0T2yjIZmzeTve51dF1dCL2erosuouubl3LEYID3308eW/2Ql5dHZ+fA1YKcwkmHq4MuVxfCPRmtNw7F5Tg6YN+0tBE+x3C5XD63+6Kzs5PzzjuPRx55hCuvvJLs7GyOHj2K0Wiku7sbWZZ7xnI4HFgsFjo7OzGbzT2vnXvuuaxYsYK7776bDz/8kMLCQiRJwmazYTQae46XZRmz2cyePXsoKCjgqquuQpIkXn755aD2Wq3WiD6DoMItSdIVQJMQYpskSbP87SeEeBZ4FmD69Oli1iy/uwakurqacI+NN6lga3X1HDzZG2bz42Rn938UlWLab8UXvouLru2zT7SvbawrNMO111KznYalS7HW1ACQ9bUZlN7/AKYxo6NmW39i8b2tra0lJ6fXr7M6rbRYWmi3t/dsy0nLoTijmOKxv/EZzjr11Mf6jOGhs7PT53Zf5OTkcPXVV1NXV9ez+kx2djYvvvgi2dnZ6HS6nrGMRiMZGRnk5OT0ee3RRx/llltuYebMmWRmZrJq1SpycnJ6QiSe43U6HdnZ2ezevZtvf/vb6HQ6dDodzz77bFB709PTe0I54aDG454JXClJ0mVAOpArSdKLQoibwj6rRtwItnp9tEIUaoSx/z4VFaviErJIxr4krhMnaHrySU6seQWEwFBaSuk9vyDnkktSOiyiJgc7M0bzDN453IsXL2bx4sUD9tm+fXvP/5977rme/48aNarntcLCQl5//fUBxz700EM+xxo1alRPXDuUm0wkBBVuIcQ9wD0Abo/755poh0ci+nIEKlLqn6kSrn1qhDGR4plMTbWELNO+dh1Njz+O6/hxMBgonD+PIXfcgc69zFaqIYTA6rRysP0g3Q7lOkuSRIGpgKKMItL0A4uDknWeIVVI6QKcVMKfcLW3b6a1dX3MxLx/j2vQ4yurJBJhVSOMiRTPZGmqZa2tpWHpw1jcbUIzzz6bsgfuxzRuXFztiBZO2clbh95i+fbl/HDoD0lzpKGTdBRmFFKUXhSVtqoavgnpygohqoHqmFgyyPEnXEeP/plAiwFHA+8e17NmOUOyT42wqhHGRIpnoptquTo7aX7qaY6/9BLIMvohxZT+993kXnF5SoZFrE4rr+97nZU7VnLErGSI6IbpKMksoTC9EL1On2ALkxt/CxCHgnZLjBP+Bcr3YsDJkl+tRljVCGOo4ul0trFly6ioPIkkau1IIQQdb7xB428fx9XSAno9hfPnUXznneizs2N67ljQYe/gld2vsGrnKtqsykr35bnl3DLpFkYaRiJ1S+gyUr4YO6YIIWhtbSU93X/PFTVowh0ngk0SepOI5kaReKVqhDEU8WxsrMJqbcJgUOyJ9EkkEUU31j17aFz6MN1btwKQMW0aZUseIH3ChJidM1a0WFpYtXMVr+x+BbNDmQCsKKzg1sm3csHIC9Dr9DgcDurr62lubo76+a1Wa8RCFy/U2Jqens6IESMiOo8m3HHC9yShhK9GS4noSRKJV6q26CXYPh6UBlR39tkW6ZNIvCbDXOYuWv7wB9pWrQKXC31hISV33UXe1VelXFjkcMdhVu5Yyev7XscuK0uDnVN2DgsnL2TG0Bl93o/RaGT06NikMFZXV0eUOhdP4mWrJtwBUJtloWY/X8JVVHQZDQ3PDxDLoqLLohYmUEukXqkaYVQrnskymRgSQtD+z3/S9Ovf4GxqAp2OghtvZMhPFqPPTfouEX3Y1baLFTUreKvuLWQhIyFx4cgLWVi5kMlDJifaPA004fZLLBbe9SVceXkzA4p5PNPmkiVFy2Qaia+2ysnaHdG2fz/5Tz7F0d27AUg/fQplS5aQMWlSgi1TjxCCrY1bWb59OZuPbAbAoDNw1alXsaByAWPyxiTYQg1vNOH2QywW3vXnmXvvt2XLqKTJOU4UY8Yso7W1qc+2ZOyOKHd30/KnP9H63POYHA70+fmU/Pxn5F17LZIuySfpDlbBF/chd31FddoYlutP5ctOpQw9w5DBt8d/m3kT51GWVZZgQzV8oQm3H6K98K5azzwlwwRRprR0Lunpf8dkKk/KDn5CCDo3vk3jr36F89gxkCS6z/s6p//mNxgKChJtXnDsbTg+vo1/OdNY4TqV/c504Cj5hgxurLyFGybcQH56fqKt1AiAJtx+iPbCu2o980TnHIeCrycIiE72hsFQGJU2r9HGfugQDY8so2vTJgDSJ02i7MElfNzWlhKibXFaqD7+Fo/aRnAMpaKxFAcLdC1cm5lN5uk/SLCFKYytk4K2T4FZMT+VJtx+UJtloXY/tZ50onKOQ8XXE8SuXQvdxQWOnm2J7gkSLWSLhZZnn6Xtr8sRDge63FxKfvoT8q+/HkmvhyTvEtlua+flXS/zUu1LHLcdB9IYg5WF+hYuk9oxSgIsbYk2M/WwmWHPBtixFva9w+lOK1zwHciL7epEmnD7IdoL76r1pFOh0T/4foIQwj5gv8EQn+/8979pXPYojiNKlWDetddS8vOfYShM/nUQG7oaWLVzFa/ueRWL0wJAua6Yn0rbmC11ovPOUMxMvqe6pMTeBXveUsR670ZwWt0vSJzIm0h+d6sm3IkkmgvvhuJJJ0t2RyBCibmnanzefvgwjcsexez2pk2nnUbZkgfInDo19id3Tx7S/ZUiqKcvg9HqvxMH2w+ycvtK/nHgHzhlpc3BTF03i6RGzBnzmW2r7nuAPlM5RwxsGRTYuxWR3rFWEW33TRCAU86FSdfAxCv5/NM9zBo6JebmaMIdJ0L1pBPRSTAUQqkETcb4fCBkm43Wv/6V1mf/grDZ0GVnM+THP6bgxhuQDHH4kzlYBZ/cBi73Tb67TvkdegXTj5juaNnB8u3LeafuHQQCnaTjklGXsKjl71TYDgJQ3b8QKLPcvxirsWWwYu+GfW/3irXD6wlzxNlusb6qn3e9Jy6macIdQ3yJr5oJtz177ohL86lI8PUEIUlpfWLckJzx+UCYP/iAhkeW4fhKeUrIvfJblN51F4YhQ+JnxBf39QqlB1e3sn303AFiKrrq+HjLj/nrly/z8QnlZmrUGblq7FUsmLSA8txyeOkJPyeT4OpDvl86WAUfzQfh8m/LYMNhgX3vKGK9ewM4unpfGz69V6zzT0mcjWjCHTPCbZPa2FjVR7Q9JFus2N8ThK9tyWJzIBxHjtDw2GOY33kXANO4sZQtWULmWWfF35huP6Elz3a3sLsE/FvkslwuZofIhBN1ZBoy+c6E73DzxJsZkul1s8kcqXjL/fEX1/bcHPqLdo8t6p62UgKHFfa/6xbrf4Hdq/pr+DQvsU6eJ0dNuGNEuG1SlT4dvts+Jlus2F8sPhWE2oNst9O2YiUtf/4zwmpFl5lJ8Y9+ROHNNyEZjYkxylgIjtaB290i6+g6zJsinxWuIRxCWby2ECc36Vq5/tt7yTPlDTz29GV9Qx4QOK7ty+vvg6SIe6p63Q4r7P+3l1h7rRE57Ey3WF8NBeWJszEAmnDHiHALaQK9nmqx4mSn6z//oWHpw9gPHQIg97JvUnL33RhLSxNn1MEqcPlYaFYy0l35IK/ueJ4XXKfRJJTKzGHYWaBr4RrdcdKzRoIv0YZegf3iPmWd5kBxbfDv9fcgUi9c4rTB/vfcYr0ebB29rw09o9ezLozdep/RQhPuGBFuIY3/ST8ppWLFyYyjoYHGX/2azg0bAEgbM4ayB+4na8aMBFuGW1j7plUeF3peYhgv/d9f6bB3ADrGSnYW6Rq5RGrHKBHYe/Yweq7yU10Nsw4F3tdfaMWboOLuh3hmqTjtcMAt1rvWg6138WLKpihiPelqKEytXiyacMeIcAtp/LV/HTbs+ykVgkhGhMNB2wsv0PzMHxHd3UgZGRTf8QOK5s9HShu4LmJC8BLLY8LI83IRf5MLsaIDOjhjyBncOvlWznccRvryfujuiI34+Qqt9CecvO94ZKk47XDwfbdYvwlWL7EunawI9aRroOjU6JwvAWjCHSPCLaRJlQKcVKPro49peORh7Pv2A5Bz8cWU/uJujMOGJdgyLw5WARL7RBorXcWsF/k4UVL3zjc4WXRhFVNLvXLIx8RwzW7v0Ep3HQN6x4eS9z3sMji6Xvld0sUmS8Xl6BXr2jfBeqL3tdJKRawnXgPFY8M/RxKhCXcMCbeQJhUKcFIFR1MTTb/+DR3//CcAxvKRlN1/P9nnnZdgywbyxbYHWO48hfeE0r9bh+Ay6QQL9S1M+NpfoTQOhT/eeEIroD684cuj3ven3tf9ZqmEEXZxOeDgB72eteV472slE3snGIeMD33sJCeocEuSlA58AJjc+78mhHgw1oZpaESCcDo5XlVF89O/R+7qQjKZKP7+7RQuXIjOZEq0eT0IIdh8dDPLa5aztSsLgDRkrtEdZ76uhVMkd058oicBvUU8EEGzUfygNuzicsKhD92e9T/69lcZUtEbsx6SekvEhYIaj9sGzBFCmCVJMgKbJEn6lxDioxjbpqERFt3bttHwy6XY9ihVbNlz5lB67z2kRbjOXzRxyS7ernub5duXs6ttFwDZCL6ra2GuroViycszzUzOlDSfhOM5B5lYlWQXHKjuFetur1RJkw5OuxRmLoGSitDPnaIEFW6hlMJ5MtKN7p/I15fX0IgyzpYWmn77OO2vvw6AccQISu+7l5zZsxNsWS82l43X973Oczue43DnYQCK0ouYN2ke/88kyPn0x+DyEm012SLxQk24RE02CoCkByH7H0d2Qd1m2LGWGV/8DT7wmmBME5BthxwHpMlgfwO6rgBOHuGWFF0OspMk6YFtwFjgGSHE3T72uQ24DaC0tHTa6tWrwzLIbDaTnZ0d1rHxJpVshdSyNyRbZZmM9z8g+4030FksCIOBrksupuuSSyBO2SLB7LXIFjZ1buK9jvfolJU87WJDMRfkXsA52edglNzFPvY26D6ipATq0iBzOKT56UIYyr4h2Or3XF11ith6kHSQVd73nL7264+v4wCEi7z2WkqaNjGkeQtpjt4Jxu6MYTSVfJ3m9BK60gqgf78VXRrkJ349zEj+xmbPnr1NCDFdzb6qhLtnZ0nKB9YCdwohtvvbb/r06WLr1q2qx/WmurqaWbNmhXVsvEklWyG17FVrq+Xzzzm2dCm2nbUAZJ13HmX330daeXzDC/7sbbG0UFVbxZpda+h0KII9oWACt06+lQvLL8SgCzM/oP8kICje+dnPBo1Fh/U9WDfKT8l8+cBeJ4GySvp72LILvvrIHQZ5A8yNveMUjoGJV/N/1pGcdfkCRaxf0uH7gV+CGwPcLOJEJH9jkiSpFu6QvjVCiBOSJFUDlwJ+hVtDI9Y4jx+n6Xe/o/21vwFgGDaU0nvuIefCC5H6e2MJoL6znud2PMfavWuxuwtqppdOZ9HkRcwcNjNyG4M1ooo2wfqneBNsIlOWoW6LItY7XwdzQ+9rBaPcE4zXKAUykkRXdXWvhx1qz5VBipqskiGAwy3aGcCFwK9jbpmGhg+Ey8WJV1+j6X/+B7m9HYxGim65heLv344uMzPR5rG7bTcrtq/grUNv4XKnvs06ZRaLKhdxRskZ0TtRKEIaDSIVTFmG+k9gxzrYuQ46j/W+ll/emw0y9IyBYRBvQu25MkhR43EPBZ53x7l1wCtCiDdja5aGxkAsNdtpWLoUa00NAFlfm0Hp/Q9gGpP43hL7rft55Z1X+PDIhwDoJT1Xnnolt0y6hbEFMSj6UCOk0SwtD0cwZRmObFU86x3rwL2KPAB5I3srGIedGVisvelTGHTyLuygJqvkS+DMONiioeET14kTND35JCfWvAJCYCgpofSeX5Bz6aUJDYvIQubD+g9Zvn05nzV9BkC6Pp3rxl/HvInzGJYdw6rMYEIaqLScMJbVUiuYQkD9VsWr3rEOOup7X8s7pbeCcfhU9WLty5aTTKj7o1VOaiQtQpZpX7uWpsd/h+v4cTAYKJw3j+I77kCfnZUwuxyygw0HN7Bi+wr2ndgHQKYuk5srb+bGihspTA9zLcpQPGRfQjrsMuX3LTcHLi3Pfy48+/qf84v7lN9H3QhHPoUdf1di1u2He4/JHd4bsx4+LXyx1uiDJtwaSYnh8GHqbpyL5fPPAcg86yzKljyAady4hNlkcVpYt28dz+94niNmZeHgkowS5k2aR2ljKZeeeWn4g4fTfKl/Sbr38YFKy/OjYKMA2g7DP74Ptvuhy6uCMWdYbxhk+HTQ6cI8oYY/NOHWSCpcHR00P/17CquqsAiBfkgxpf99N7lXXB6bsIgKL7fd1s6a3Wuoqq2izaoI1KjcUdxSeQtXjLmCNH0a1c3VkdnhL0vko/nK/4OFBtSWmkeSffH5vdBlhU4TdBrB6RHkNsgZqvQFmXS1sh6jJtYxRRNujaRACEHHG2/Q+NvHcbW0gE5H4bybKf7Rj9Dn5MTmpEG83KbuJl7c+SKv7HmFLvfagxOLJnLr5FuZc8oc9Dp99Gzxlw0iXOranqrJJvHEwENZdUwIaPjSnbrXBg6v4hK9rFQv5rjglp2aWMcRTbg1Eo519x4aHl6KZes2ADKmTqX+sm8y8aYYti0Fv15u3af3s/LYXt7Y/wYOWWnydM7Qc1hUuYhzh54bG88/UKm4mvxsf8f7Ki2vqw5sixDQUOMW63XQdsD9gk4R62ynItgZLqXba2a5JtpxRhNujYThMptp+cMztK1aBS4X+sJCSu66i7yrruTQBx/E3oB+XupOkc4K1xDedmQh7/0bEhIXlV/EwsqFVBZXxtaWYAsXBPOo/WWZqKikBBSxbtzhTt1bC237e1/LGuJe0isb6h4H2dr3HCdZDnUyoAm3RtwRQtCxfj1Nv/o1zuZm0OkouPFGhiz+Mfo8P2smxoLMkYiuOv5PZLFcLuY/QgnJGBBcNfYaFlQuYExenJa08ojrR/N9TywGi02Hk98sBDTtVNL2dqyF1r1e5yuGiVcqE4zlM8ETFiobn5gc6ngud5YCaMKtEVds+/fT8PAjdH+kdAVOP30KZUuWkDFpUlztkIXMe8Pns7z2JWpEOgAZuPh/+k5unn4vZaf9IK72AL1CFG5loMr85syur+C9RxWxbtnjdR4JTp0J594F5V8HvQ95SEQOtb0tesudDZIbgCbcGnFB7uqi5U9/ovW558HpRJ+fz5Cf/Rf5112HFMf4qMPl4J8H/8mK7Ss42H4QSCdfkrlRauHGrAzyzvxVYv+QY1UZ2LQLNi+F3f/ibKtXMya9gGyH8pPpAn01SDf6Fu1E0X0kOn1Z4rHeZZxIok9HYzAihKBz49s0PvYYzoYGkCTyr7+eIT/9CYaCgrjZ0e3o5u97/87zO5+noUtpalSWVcaCSQu4Zuw1ZBoT3+ekh1C9Wn9eZPOe3ph1c23P7g59OsasDshxQqYTvOdaY9moKlz6rXrfQ6h9WeLdmCuGaMKtETPshw7R8PAjdG3eDED6pEmUPbiEjClT4mbDCesJXt71MlW7qmi3Kc34x+SNYWHlQi4bcxlGnTFutsSE/l7kicOw/nZwPgLHvXqD6OhZfOA/hffxDduAlvq9xKpRVX/Uhi10fnqqh5qTHu/GXDFEE26NqCNbLLT87//StnwFwuFAl5tLyU9/Qv711yPpo5j7HICGrgZe2PkCr+15DYvTAsCU4iksmryIWafMQicNkvS1L+4DixU608BsBJvn+h4FnQSjz4GCdGh/o8ezFlKQzyAeLVJDCVtkDgdbZuQdAQdRS1hNuDWihhAC87//TeOyR3EcVby9vGuvpeTnP8NQGGb/jhA50H6AldtX8uaBN3HKTgBmDpvJosmLmF46PSl6dUeF1v1KjnVtC9i8imJ0npi1OwxiqIYOe99wSB8k+ixMEK/0vlDCFmmFSlpjpHH/QdQSVhNujahgP3yYxkeWYX7/fQBMp51G2ZIHyJw6NS7nr2muYfn25fz7q38jEOgkHZeOupSFlQupKPKxFmEqZhe0HXR33VsLx75wb9QrYp3l6I1Zez9M+IsPexj7ff+r00QLX9c61LBFoLi/2s9yELWE1YRbIyJkm43Wv/yV1mefRdjt6LKzGfLjH1Nw4w1Ihth+vYQQbDm2hRU1K/i44WMAjDojV4+9mgWTFjAy188jcCplFxw/1Jtnfezz3u1p2TCiAmybIMPWV6zVYiyCs/8YHTv9iae/a51WCPbWgeOEGrYI9bMcJC1hNeHWCBvz++/T8MgyHIeVNp65V36L0rvuwjBkSEzP65JdvPPVOyyvWU5tm3utSWMW10+4npsrbmZIZpDzJ0t2gT+xO/FVr1gf/bR3f2MWTPimUhQz9gL4ZwV028I/v6NVWUsyHK/T2/a0QnB0gFDaA/QRT3/XWpehhCkiDVsky2cZZzTh1ggZx5EjNDz2GOZ33gXANG4sZUuWkHnWWTE9r91l5x/7/8HKHSup61AmmQrTC7l54s1cP+F6ctNy1Q2UDNkF/T3F9q/gX9+Dzh+CxSvmbMyCCZe6xfpCMGaEZq8uTamQ9Ihqf8J52uhvuy/P2SOe/mx0tMGMVZGHLZLhs0wAmnBrqEa222lbsZKWP/8ZYbWiy8yk+Ec/ovDmm5CMsUur63J08eruV3lh5ws0W5oBGJ49nAWTFnD12KtJN6SHNmAyZBd8cR9YLWBOg04DWD1/igIkAVlOyNPBrGUw7hbfY6htLNW8GfY/679Hd6geqtoWsh5B9netoxG2SIbPMgFowq2hCvPmzTQ+/Aj2Q4cAyL3sm5TcfTfG0tKYnbPN2kZVbRUv73qZTnsnAOMKxrGochGXjLoEgy7Mr28isws6jiqrxOxqAatXu1qPWOc4lH89Mesdv/Qv3GoaSx2sgoPP+xdtD6F4qGr39dw4YnmtB1GmSChowq0REEdDA42/+jWdGzYAkDZmDGUP3E/WjBkxO+dR81FebXuVu167C6tL6UQ3tWQqiyYv4rzh50We0hfv7IKOY1D7hhKz/mqLe6Pev1h7E0gk1byPWCywEKgFrQePeIZ7rfvE/5+Cg0eSOlOk2+5k59EO3qlzcL4s0Olim3YaVLglSToFeAEoA2TgWSHEUzG1SiPhCLudtlWraH7mj4jubqSMDIrv+AFF8+cjpfmpZIuQvcf3smL7Cv518F+43B7iN0Z8g4WVC5laGuW0Ql+P6dFMEexsgJ1vKOl7df+hJ1daAk45HUZNg8ZnQVgCj6OmK2C0FlhQiy8vV5cG+hwldt3/2oVTwu89vmxPqkwRi93FzmMd1NSfoOZIBzVHTrCvyYzs/ogXtXUzuji2a6Kq8bidwM+EEJ9KkpQDbJMk6W0hxM6YWqaRMLo+/oSGpUux71d6MudcfDGl9/wC49ChMTnf502fs7xmOdX11QDoJT3TM6dzz4X3ML5gfEzOOYBopAh2Nro963VQt5lesRZKfnWOuzDGuA1G3w6jp/vPzIDoPPKHssCCWmLt5SZRpojV4aL2WAc1R9r5sr6d7Ufa2dtkxiWLPvvpdRIVZTkU61Q83USBoMIthDgGHHP/v1OSpFpgOKAJ9yDD0dRE029+S8ebbwKQVl5O6f33k33e16N+LiEEm45s4q81f+XTJiXlzaQ3cc3Ya5g/aT77tu2Ln2hD+GJhbobaNzj985Xw/g5FDAH0aUoWiKUajA3gXWXuGffqQ33HjkVRkC/vWNLBuc9HNnYsvdxIMkUiuIZWh4tdDZ1uT7qdmiMd7Gns9CnSp5XlMHl4HpNH5DF5eB4VQ3NJN+qprq6OubcNIca4JUkaBZwJfBwLYzQSg3A6OV5VRfPTv0fu6kIymSj+/u0ULlqELsphEafsZOOhjSzfvpw9x5Ve0DnGHL572neZWzGXoowiAPaxL6rnDcjBKv8xW19i0dXSG7M+tAmETAGAzgjjLoaSUmh/HWxrIF0MPN7fuOGKYSCx8uUdZ5bD6GtDP0+8CDdTJISnJpvTxe6GTr6sb6emvp2aI+3saezE2U+kdRJMKM2hcngeU0bkUTk8j4lDc8lIi0/PHX9IQvj5YvXfUZKygfeBZUKIv/t4/TbgNoDS0tJpq1evDssgs9lMdnZ28B2TgFSyFXzba9y3j5yXV2M8cgQA65QpdF5/PXJxUVTP7RAOPjZ/zLsd79LibAEgV5/L7JzZzMyZSYYuo8/+cbu29jboquv1lPujS4P8yRjtHRS3fMSQ5k0UHK9BQtlflgwcLzidw7nTMA//Bk5hDzxev3FjYr+kg6xyJfzig6T/3vZ7T2bdCLLF0YDvCYATNT5L/J2kUa+fyMF2mUMdyk99p4yrn/RJwNBsidG5ekbl6hiVp2Nkjg6TQf1EYyTXdvbs2duEENPV7KtKuCVJMouZe4oAACAASURBVAJvAm8JIZ4Itv/06dPF1q1b1Zx/ANXV1cyaNSusY+NNKtkKfe11trTQ9PjvaF+3DgDjiBGU3ncvObNnR/WcnfZO1uxew4s7X6TVqhRqjMwZyS2Vt/CtU7+FSW8KamtMWTfKv7ctMqF4PjQdgwPv96bU6QwwZrZSFHPaZZBR0GtvoPE8hLIWZLj2Z5YroRgfBLy24YYaoh3m8RqvOvMpZp1eGHy8l3TYZT17bCOp6R5HjWUsNZax7LKOwiH61hlIEpw6JFsJd7hDHhOH5pJliizRLpLvrSRJqoVbTVaJBCwHatWItkZyI1wujq9eTfOTTyF3diKlpVH0ve9R9L1b0aWHWMgSgBZLCy/ufJE1u9dgdpgBqCisYOHkhVw08iL0usQ+avbQP2ThQmmP2mkESxrsrVK26wxw6oUw8Wo47XLI9OP5BYzDStGfyItm5WC4E7Sx6P3iHTaqrobRswbs4nDJ7GnsZLtn4nD/76ntHo69v0gjM2ZIFlOG57lDHvlMHJZL9tE18MV8+OoraBkJInUaTqm5vcwEbgZqJEnydLm5VwixPnZmacQC44EDHHz6aWw73f09zj+PsvvuI628PGrnONxxmOd2PMe6feuwux9bzy47m0WVi5gxbEbytVXNHAmddW6xNkC3gZ4eqJIEp85xe9ZX+Bfrg1Vwog1emqOEKXwu9uvfA47Y/nDjwf095HAnaOOQBeJ0yextMvfEo7880k7tsQ7sTu+Q1CgAxqTVU5m5jykZ+6jMOsyk835KzoRv9R0wlRqN+UBNVskmAnTz1Uh+nMeP0/zEExS++ho2wDBsKGX33kv2BRdETUh3t+1m+fblvHXoLWR3bHLOKXNYOHkhpw85PSrniCqWE7D7X9AyHOrb6P2KC8iSYcpN8PVHICtIrN8jAMalyrG+RDuWlXzhVA76W3zXX6FOMO89yv1CnC6Zfc29Ir15p4X6d97C5hw4bzCqKJPJI/KZPDyXycPzmeTYQO6ux4KHbJIo5TActMrJQYyQZU68+hrNTzyBq70doddTfOutFN9+G7rMyNdYFEKwrXEby7cvZ9ORTQAYJAPfOvVbLKxcyJj8MRGfI6pY2xWx3rEW9r0LsjtnWtJBlh4yzUpGyLTHQu/b0b9VSyR50qEQTk61v8V3Jb2fp4Ug3nsE/UJcsmB/s7knR/rL+hPsPNaB1TFQpEcWZjJ5RB5T3HHpScPzyMvof+HnwmkqrnWKN6fShHuQYqnZTsPSpVhragDI+toM6i6+mInf/W7EY8tC5oP6D1hes5zPm5XoWYYhg+vGXce8ifMYmh2bQp2wsHbAng1usX4HXF5ZBxlOKMqFrz0IE78f3vj+/tCFDDcGySyJFqGmEfpbXEG4lGwX79d1acGfFlR6/S5ZcLBFEemaI0oa3o6jHVgcA28WpxRmMNkdkxYtdcy97DzyM1WmpqqZKE3x5lSacA8yXCdO0PTkk5xY8woIgaG0lNJ7fkHOJZdwwL06Tbg4ZAcbDm5gxfYV7Duh5FnnpuUyt2IuN5x2AwXp8Vu1PSC2TtjtLdaentUSlI0DdkFmNxgE0A01P4OMnPC8Yn8CYCx0Z3wk4Uor/hbfNRaBs6PvNjXpwj68fnnKMg5kXcX2z470eNPbj7bTbR8o0sPzM5gyoreYpXJYHgVZvTZWV9eHJtqBYtc9ol5HwpZtiwKacA8ShCzTvnYdTY8/juv4cTAYKJw/jyF33IEuK7JKLovTwtq9a3l+x/Mc7VLWkizJLGH+xPl8e/y3yTRGHnaJGJu517Pe+3ZfsS6fqUwwVlwJ754D3V19j40ktunxNr2RjODqVBYqgMRMfAXyOv0tvisxsG+3cAS9NrIsOJR9FTWjZlFTr0wc7ny+A7NtoKMwPD+DyuG5TBmRT6U75FGYpVKU1RAodg39ngy8+54XwfSnkufmGgRNuAcB1tpaGpY+jOWzzwDIPPtsyh64H9O4cRGN225rZ/Wu1VTVVnHcdhyAUbmjWFi5kCvGXIFRH7se3Kqwd8Get9xivRGcVvcLEoz8Gky6WhHrXK/QTbRjmz3epnuCM3MkOM0DFxeI58RXMK/T3+K7W272PZ7XtRFCUNfazZdHemPSO4500GlzDjhsaF56nzzpycPzKMr2nbcfNQJ9voE6JcpBmn0lGZpwpzCuzk6an3qa4y+9BLKMfkgxpf99N7lXXB5RtkhTdxOrdq7ild2v0O1UvuiVRZXcOvlWZo+cjU4KZ4HDKGHvUkR6x1rYsxGcXn9wp5yreNYTr4TcYb6PDxTaCJfRc6GuGq52x7Rf8nN94jXxpSZjwldcvCeEoCAEfGUvo0aeQc36Wnf/jnY6rQNFuiw3vacs3BObHpIThkj7elJguPpj/aZjjgx8/VMoowQ04U5JhBB0vPEGjb99HFdLC+j1FM6fR/Gdd6KPoJS5rqOOldtX8sb+N3C4My5mDJ3BosmLOLvs7MTlYNu7Yd/bbrF+CxxeojTibLdYXwV5Kv7AT18GH90yMCTg6lT+8KPxh5voia8wniqEENSPfoyaLX/hy66R1FjGsd1yKu0u92IPew/07FuSY+rp2+H5tyQnCsVb/p4UClb13SfQosSB0jH73ZgGkCIZJaAJd8ph3bOHxqUP0+1uKZAxbRplSx4gfcKEsMfc0bqDFTUreLvubQQCCYmLyi9i0eRFTCqaFC3TQ0LnsvX2s969ARxecekRZ3mJ9YjQBh49F7YtHhjKkO3R87gSvSpLkBuHEIL64909edKenxPducDP+hxSnCEzpbxMEWnDZ0xufpRSZ40y1qlRnnD196TQrfTRCRgC8hcGkfR92wsEyldPkYwS0IQ7ZXCZu2j5wx9oW7UKXC70hYWU3HUXeVdfFZYnLITgk4ZPWF6znC3HlFVZDDoDV516FQsmLWBU3qgovwMVOKxKFsiOtXyt9k1wWXtfGz6tV6zzI/wDs7f53h4tjysa/aoj6f3hdeMQAo46hlBjm0iN7RpqHvstn3WNp/Ot9wYcVpSV1pMn7SkNL801Kd+veFQa+rv+nvTEQCGgQGmZ/Tsl+rpxp1BGCWjCnfQIIehYv56mX/8GZ1MT6HQU3HgjQ36yGH2uylXNvZCFzHtfvcfy7cupaVFyvDMNmVw/4XpuqriJ0qzYrSHpE4cV9v9bCYPs/he415Y0AAyb2ivWBdEryw8ayohGw6RI+lWHKZJCCBo6rNR0X0CN9AI1X+2npnM4ra78AfsW6tuZnHmAyWMrmFw5k8nD8xial+7fCYhHpaG/z8WTvhgoBKQ2POX5XGLR+zyOaMKdxNj276fh4Ufo/ugjANJPn0LZkiVkTAo9fOFwOfjI/BG/W/c7DnUcAqDAVMDcirl897TvkmfKi6bpgXHaesV61/oesQZg6Bkw6Ro+6izj3G9GXizkk0ChjGToYaFSJBs7rF7FLMoyWi1mTxpkOqB8TwoyjVQav2CKqYbJGfsw53+H6+SfIEmArggmtQS3KR6Vhv4+l0z33EUgcQ41PBXn5c6ijSbcSYj8/9s77/C2y3Pvfx5Zsi0vOd6JHbKcmMQDQgIp8yTMQNmFUA4EAubQcWhLX9rTUmi5GuCUvodywXk7ODSTHELKKCGlpYyCS6EBkjDilR0n8d6y5S3pef/4/WzJtiTLQ5ZkP5/r8pVYv6Gv11e37ud+7ruzk8bf/Y6mLVuhr4+IxETSfvAAlhtvRBhGV9HR2dfJq4dfZWvpVuo66wCYGTuTdbnruGHhDZiN5hHuMEHYe+HY+7pZ/xl63DZ6ZBRokXXu9ZCkbZPvLioKnBZfqYydc4Pfw8KDGdb3zaC4Np397xzSyvCqrDS09ww7z2I2DZTf9ac8smaYES+upr9uuSjqa4j+LFRfk3+LspOx4Ort53JCr/jxZc4hMjR4slDGHUJIKWl/+x3qnngCe00NCEHimjWkfv9+jDNGtyuxtbuV7Qe2s/3Adqw9VgAyTBl8d8V3WT1vNSbDJNRg23vhWJGbWVtdxzLy9TTI9ZC8IPBahuIt4gqBHhYNxlyKm6O1ftJ6X+k6u97squLwwHnx0UZXdYepmPzGXzLb8Tki9jTIGWJaviaz+/OiNFkLrp5+LieKXMfA97SfKWrUQ1HGHSL0VlRQ+9jjdHyoNWuKzs0l45GfYS4oGNV9ajtq2Vq6lVcPv0qXXuN8RuoZ3JN/D84jTi5ecPGEax+Eo08bOlD6Ghz4k9bYqZ/0PC2qXnIDpGQHVsdYGW1k2Z8rdX4Hdq4bdZTXaOsZ6NvR/29t2xPDzos3dJKXYaIgO2egDO+0pJjBC4fOTm33o6f0zhmPw+7bPYvw50VpmkW0oY4y7iDj7Oqi8bnnaN6wEdnXh8FiIe3795N4882ICP+HDRxrPcamkk38+difsUttg8QFmRdQmFfIsvRlCCEoOloUmC/C0QfHdbMufwO6W13H0nJdaZCU8e3knBRGE1m658OjGTEf3qSbdInbxPBqa/ew8+KijOQmdVNAEXnGzylI6mDOivsxzL/Zs2Z/N9x4qqYA/9MdwY5oQ2H9IURQxh1E2t97j7rH/5M+fd6j5Ws3kvbAAxiT/N/FV9xQzMaSjbx38j0kEoMwcOW8KynMKyQnaey13SPisEPFB7pZ/wm6WlzHUhe7zDo1gBoCwUiRpXs1gqdderphtqTd7KqR1qPpqtbh26pjIyPI1beF96c95iXHYjAI4LrBz/nxWs+Rrr/pnWXPDO+rEk5lcP68QIV5tYi/KOMOAr2nTlH3+H9i0xfgok4/nYyf/YyYs5b6db2Ukt3Vu9lYspFPaz8FINIQyQ0Lb+DOJXcyO2F2YIQ77FDxD21TTPmfoNMtekvJcZl12uLAPP9k4S2yHBrx6aZttcdSao2hzHoTJV3Z7O9cSOXH7wy7PCYygtxZWsP//Czt33kpsUQYhOv+Hw3d7s3IUeZoSuFgcF+VcDK2kV6gplFErox7EnH29NC0YQNNz/0e2dODIS6O1O9+lxn/eivCOPKPwuF08M7Jd9hUvInyZm38WJwpjltybuH2JbeTYk6ZeNEOO5z4SI+sdw026+SFkHejtsCYtlgb9RXOjBStffkQ1h5BSdcZA4Noi7uyOdnb38Rq3cCp0SYDubMsA02WCrIszE+Nc5m0p+ceajq71zKog10/Q6PMWVfBkWfxq0Xp0L4qoYb7zyAySfuSIh7U1g8ik3ynesJ8qs1oUMY9Sdg++IDaxx6n76QWHSRcew3pP/whxtTUEa/tdfSy6+guNpds5mS7dn1ydDJrl6xlTc4a4iPjJ1as0wEn/uky644G17HkbD2yvgHSloS/WffjwTjbdn+PkiojxY7lWsrjwEOc6B3evCpK9JAV4+SC6HfJjz1J/oq1LDjzFowRoyjd9Lhl20cvbPco8/jWIecKmHdn+JnV0J9Bv0lHoL2QCdPwQQ/uL1AhUBE0WSjjDjB9VVXU/uIX2N79GwBRC7O1tMjZZ494ra3XxsuHXmZb2TYaujTzzIrL4q68u7h2wbVEGyduKjtOB5zcrZl12S7oqHcdS5oPuTdqaZD0vKlj1m6073uUEusCPdWRTUlXNsd7M2E/wAH9rFlEil6WmI9pg2jNRygwHybbXM2H0b9gpeGvepR+6+gFjNpcpFZz3mfzbPjVfs7y9vUuYzT54onILftquwpaYzBjMkTHeekzHt5TbUbDiMYthNgEXA3USynzAi9pauDs7aV502Yan30W2d2NISaGlPvuI2nt7QiT7xrqpq4mXih/gR0Hd9Cu7yrMmZFDYX4hl825DKNhgl5vnU449bFu1q+Drc51bMY8V2SdkT+lzNrWY6e0anCDpWMNvxp2XqToY3H0cfLPuFRLeYiPWHjkG5icbjs9I2LgnM1wIhNWVoxdlK86a2+Mt9Odr5ww+J8vnqjcsj+a+5rhZi87PYPd3GsS8ccBtgC/Bp4PrJSpQ8c//0nt+kfpragAIOGqK0n70Y8wpfvuA1Jlq2JLyRZeO/IaPfoEl2XpyyjMK+SCzAsmpq2q0wmnPtEWGEt3gq3WdSxxjsusZ54xJcy6o8dOWU3boGG0xxo7hk3kihR9nB59nDzzUQrMh8mLOcKiqJNExmXC9d/XzzoNkp2eI8v+TSJjxZPpjAd/osyRpsX4my+eqNyyPy9evr6uaVRrPqJxSyk/EELMDbyU8Kevtpa6J35J+1//CkDk/Plk/PRhYs891+d1h1oOsblkM28efxOHXqmwcvZKCvMKOTPtzPELczqhcg/ZhzfAvm9Be7XrWOJprh2Ms5aGtVl39topq24bVIJ3pME2zKRNEYKcjHitukNfOFzU9QaR+x4eOVoLVC1z/z0/vtNzT+nR4G+UOZacsHtufaArn5dc/GjTPyO9ePnzdQW71nySUDnuCUD29dH8/PM0/Oa3yM5OhNlMyre/RfKddyIivc/T+7z+czYWb+TvldpsvggRwTXzr+HuvLvJnjHOnYVOJ1Tt1aLqsp3QVsVA52rLbC1fnXuD1oEvDM26q9dBWU3bQHOl4qpWjtTbcA7xEKNBkDMzftD4rJyMeKKMQzc33aYtggU6WvOVC553m/fxYb6ITAajl7yvL0bKCXs7NjQ14uv+o2FQxHwCMAB69UuYzYQMNEL6McVZj7jf8JXjFkLcC9wLkJ6evmzHjh1jEmSz2YgbxxSXycRmszGjqpqEHTsw1tQA0L10Ke0334TTyyYaKSVl3WW8bX2bYz3aVBGTMHFe3HlcnHAxScZxjNCSkvj2Q6TVf0Rqw0dE97hygd1RKVQnnk1L5ira4xeFvFm7/x70OiQn251UWJ1UtDmpsDqo7pDDTNogIDPOwNwEA/MsBuZaDGTFGYiMCPzX6tfvbW8zdJzQekT3IwwQO0crdQNoLR5cNTEiAuLmuq4fjVZfesD7sc6qkTUO/bpGwxBdNkMWcbJ67PebRMbjX6tWrdonpVzuz7kTFnFLKZ8DngNYvny5XLly5ZjuU1RUxFivnUz66uspfuAHmPfsAcA05zQyHn6YuAsv9Hi+3WnnrYq32FiykcMtWqOg+Mh4bj39Vm5bfBtJ0WP8hZQSqj/TFhhLXwer29vThEwtBZJ7A9GZyzj5wQch/73t7nNwoLad997fQ3f3DPZXWjlcb8MxxKUjDILT0+MGRdKLZyYQbfK/TcCEcfwFir5sZmX193xHvDvnQpeHKFbMgcsr9HtVeV5gizB7rmGOTIbL/WjL6sagvzGP7wBu9H1suwHvpYpi+H1Gy5DvU1H0k6zs/gHYk70vTIYIk+VfKlUySqTdTssLL9Dw3/8Pc0cHIiqKlG9+g6S778YQNXw4are9m9ePvM7m0s1U2bSt7WnmNO7IvYObFt1ErCl2DCIkVH+uLzC+Bq1uZh0/c8CsyTobRtkGdjLpsTs4WNuu9ZTWc9KH6tqxD5h0JaBF0jnp8YNmHC6ZmYA5MggmPZT+tIFpPSB9V1T4k1P2tsDmLYXibZqPv/jKCXs75jXFMgeurxifHvD+ffK3Be00wJ9ywBeBlUCKEKISeERKuTHQwkKRzn37qP35enoOHQKgpyCfJU89RWTW8LmHbb1tvHTwJbaVbaO5W/vjmpMwh7ty7+KaBdcQGeE99+0RKaHmSz2yfg1a3f5w4jK0KTG5N8DsFSFp1r12Jwdr2/Xyu1aKq6wcrG2nzzE4cjMIWJgWR6qxm8uWLaIgS4ukYyJDNMbor6hwr/B0dGqLjLuH9BYZ7ZSWoc8TKjXKgS67G28L2mmAP1UlY9hNMLWwNzZS/+SvsO7cCYApK4v0h37CPiGGmXZjVyPbyrbx0sGXsPXZAFiSvITCvEIuOe0SIgyjiBKlhNpil1m3HHcdi0t3M+uvhJRZ99qdHKprH9Rk6WBtO72OwdushYDstLiBbeH5WVokHRtl1N5ynj8vSF/BKPA661CvDHGPwD0ZnjCB3aalH3ylWUKpRjnQZXfjbUE7DQjRMCY0kA4HLTt20PD0Mzjb2xGRkSTfcw/J9/4bhuhocJvScrLtJFtKt/D6kdfp1RduVsxcQWFeIV+Z+RX/a7ClhLoSrRqk9DVoPuo6FpsGS67VzPq0c2E0LwIBos+hmbR7q9LyGs8mPT81dtAg2iWzEoiLCvNfQX9qj/trmvvTCP2GZ0oCR7srd+0rzRJqNcqBLLubiBa0U5ww/6sJHF1ffEHN+vX0lGnNnGIvvJCMhx8ics7gobXlTeVsKtnE2yfeximdCASXnnYpd+fdTX5qvn9PJiXUl7ki66YjrmMxKa7Ies55QTVru8PJ4XrbQD56f5WV8po2eu3DGxbNS4kd1Ko0d1YC8dGTMHVnsumPhEeiP1J0N7ydc7W8rTu+Nq5MkxplwNWCNhTeYYQgyriHYG9poeGpp2h9+RUAjLNmkv7gg8RfeulA1CylZG/dXn5b91vKT2jGbjQYuW7BdazLW8d8y3z/nqy+3GXWjYdcj8ckw2I9sp5zPkRM/o/J7nBypMFl0sVVVsqq2+jxYNJzk2MGLRzmZVpImIom7YmhrVI99egGz5HiNGqK5BVvde3u7zCcaAufU3QX5FhQxq0jnU5aX36FhqeewmG1gslE8l13kfLNb2CIiQHAKZ0UnSpiY8lG9jfsB8BsNHPTopu4Y8kdZMRmjPxE9QfczPqg63FzEiy+RjPruRdOqlk7nJKjDbZB28LLatro7htu0qclxQyU3xVkWsjNtGAxTxOT9oZ7q1RPm1O8RYrTqCmSR0bqcdL/UVQ0vj4wUxBl3EBXcQm169fTXVwMQOx555L+8E+Jmq8tjvU5+3jz+JtsKt7EUauWc7ZEWTgv+jx+svonJEYn+n6ChkMus24odz1unjHErANvgA6n5HijZtL9C4el1W109Q2PEmcnmfWFQ21reF5mAokxo6yGmW6MJhftbcFx1lVaGiUUctmBnCgzjfpnTzTT2rgdra3UP/00rX94CaTEmJZG+oM/Jn71aoQQdNm7+OPhP7K1dCs1HdrOyPSYdNblruPGhTfy6UefejftxsOuBcb6Utfj0Ymw+GrNrOf9S0DN2umUHGvsGFg4/LCsi8r33qKzd7hJZyaaXRPDsyzkzbIwI1aZ9JjwNxftyeRnXaX11w7WFBd3o+5fPO3fJTnRWlSqaMxMS+OWTifW13ZS/+STOFpawGgk6Y47SPn2t4mIi8XaY+XFAy+yvXw7LT3aLMX5lvncnXc3V827CpM3s206CqV/1Ay7rsT1eLQFTncza+PEG6LTKalo6hiIovfrOWlbj33YuZmJZvIyEyjISiRPL8VLUiYdHIaa/M65449Ch5qvQNuoMzAOLdP7de7vAIYunI5Fiy+me6poHEw74+4uL6d2/aN0ff45ADFnn03Gz35K1MKF1HXU8fye3/LyoZfpsmuDXQtSCijML2Tl7JUYhIda6aajrh2MtcWux6MscPpXNbOev3JCzdrplJxo7tRNWtvMUlrVRrsHk55piR4wZ5pPcNuVF5IcN3yHpyJEGG8U6st8+yPmGds8XzvSIIPRahmJUKpNDzOmjXE72ttpeOa/adm+HZxOIlJTSP+PH5Fw9VepaKtgyz8fYdfRXdidmvmdP+t8CvMLWZ6+fHgNdvNxKNvJsr3boMitzjoqAXKu0sx6wSowjt8gpZScHDBpvVa62kp793CTTk+IGtSqNC/TQmq8S0NRUZUy7VBnvFHoSObr6NSaRHnCX0OeqIg41GrTw4gpb9xSStp27aLuv57E0dgIEREk3XkHKffdx4Gek2z8+wO8e+JdJBKDMHDF3CsozCtkcfKQSeUtFa6cdc0XAMQDRMbD6f1mffG4zFpKSWVLl2vhsKqV4korbR5MOjU+igK3Bkv5mRbSEiZwlJkiOIw3CvXHfL119vNnM9FER8TTqTZ9ApnSxt196BB16x+lc+9eAMxnnUX6Tx/my0QrD+3+Pp/UfAKAyWDiuuzrWJe7jjkJbhtsWk+6zLr6M9fjkXGQcyUlzmzyrr8fTKM3zH6TLtE3spTotdKtnX3Dzk2Ji3ItHOpmna5Memoy3ijUH/M1eEnbeduSb0oYnCNXRht0pqRxO2wdNP761zRv2wYOBxFJSaT84AH2LY3lx6U/p7RJq/KIMcZwS84trF2yltQYfdp66ylXzrpqn+umpljIWa1F1tmXgslMY1GRX6YtpaTa2j2Qj+6vl27xYNLJsZHkZ1kGbQ1PT4iamLFlivBgPFGoP1NkYrwsTqrURdgwpYxbSkn7m29S98QvsdfXg8GA5davs+fahWyo2EzFBxUAJEUncfvi21mTswZLlAWslbD7N5pZV+5x3dAUA4vczDoyxi8NNdbuQeOziqusNHcMf3uaFBs5qMFSfqaFmZZoZdKKsTPUfD1VlZzw0ftdpS7Cgilj3D3HjlH76KN07v4YgMiCPD5bu5xnu9+mfr+2fT0zLpN1ueu4Pvt6ojua4LMXdLP+1HUjoxkWXaGZ9cLLfZq1lJJaazf7K1sHpTwabcNNOjHGNGDS/WmPzESzMmnFxDOS+Y53sLEi6IS9cTs7O2n83bM0bdkCfX2IRAtla87iqYwvsDYfACA7MZvC/EJWJ52J8cAbsPU6OPWx6yZGMyy63M2sPQ83qGvrHhRF7zvehfWtvw07z2I2DYqi8zMtZM1QJq1QKCaGsDVuKSXt77xD3S+ewF5TA0JQsWoR/3dpFY1R/4A+WJq2lHsWfI0Lm2sRRb+Bk7sZGLlkjIaFl+lmfQVEDZ4TV9/ePahV6f5KK/XtPcN0JEQbyR9YONRK8WYnKZNWKBSBIyyNu7eigtrHHqfjww8BaJqTyNOrOjk4Uxu+e1HGCgqjZnPW8U/hkzsZMOuIKJdZL7oCouIBaGjvoeR4/aCFw9q27mHPGx9tJG+WK9XRWXmANVetUiatUCgmlbAybmdXF43PPUfzho3Ivj56zEaev8jJu2e2Y4iI4KsJOdzV2kbO7ldwmXUkZLvMuskepaU6PqylCDvwLAAABwBJREFUuOogxVVWaqzDTTouykheZoKe8tAi6TlJMRgMLpMuajmkTFuhUEw6YWPc7e+9T93jj9NXpe36er9A8L+rJL2xJtbIGO48dYjZfRXayRGRsOASOrKv4YuYc/miwUnxl1aK/7KXqtauYfeOjYwgd8jC4bzk2EEmrVAoFKFCyBt3b2UltY89RkfR3wGoSIONV0RQnRXB11tb+deGNlKcTqTBRNOsVXyRsJI/9yzl01MOKvd3AeWD7hcTGUHurARta3iW9u/8FGXSCoUifPDLuIUQq4FngAhgg5TyiYCqApw9PdQ/9z80/f73GHrtdEbBHy40sO8MJ7fZWllTYcNMBOXms/kf+zn8oa2AtmP91SDakF6zSTPp/lal+ZkW5qfGEaFMWqFQhDEjGrcQIgL4DXAZUAnsEULsklKWBUpUw9/eonL9z4iua8MAfJAreO8iJzfZW3ikups99jx+7lzB247lWLu0apAoo4GzZrlalRZkWVigTFqhUExB/Im4zwGOSCmPAQghdgDXARNu3Me//JDOX/2QxsM2ooGTKfDOxU5WxbXzzcb5vOm8mscdy+kyWlg8K4Hr3Br/Z6fGYYzw0HZVoVAophj+GHcmcMrt80pgxUQLef3JbzFnSxHz7NAVCR+vcBAxN5HI7ot40XwxcxfNZnlmIusyLSxMj8OkTFqhUExThJTS9wlC3AxcIaW8R/98LXCOlPI7Q867F7gXID09fdmOHTtGJaSx8gBz/+sZTswxcOKcZTiyriUtaQaZcQaMIZrusNlsxMXFjXxiiBBOesNJK4SX3nDSCuGldzxaV61atU9Kudyvk6WUPj+Ac4G33D5/EHjQ1zXLli2To8XpdMrqA3vl+++/P+prg0U4aZUyvPSGk1Ypw0tvOGmVMrz0jkcrsFeO4Mf9H/7kG/YAC4UQ84QQkcDXgV1jeUXxhRCCmTnLJvq2CoVCMeUYMcctpbQLIe4D3kIrB9wkpSwd4TKFQqFQBAi/6rillH8B/hJgLQqFQqHwA1WaoVAoFGGGMm6FQqEIM5RxKxQKRZihjFuhUCjCDGXcCoVCEWaMuHNyTDcVogE4McbLU4DGCZQTSMJJK4SX3nDSCuGlN5y0QnjpHY/WOVLKVH9ODIhxjwchxF7p77bPIBNOWiG89IaTVggvveGkFcJL72RpVakShUKhCDOUcSsUCkWYEYrG/VywBYyCcNIK4aU3nLRCeOkNJ60QXnonRWvI5bgVCoVC4ZtQjLgVCoVC4YOQMW4hxGohxEEhxBEhxI+DrccXQohNQoh6IURJsLWMhBBithDifSFEuRCiVAjxvWBr8oUQIloI8akQ4ktd78+DrWkkhBARQojPhRBvBFvLSAghKoQQxUKIL4QQe4OtxxdCiEQhxCtCiAP67++5wdbkDSFEjv497f9oE0LcH7DnC4VUiT6Q+BBuA4mBW2UABxKPByHERWij5J+XUuYFW48vhBAzgZlSys+EEPHAPuD6EP7eCiBWSmkTQpiAD4HvSSk/DrI0rwgh/g+wHEiQUl4dbD2+EEJUAMullCFfFy2E2Ar8Q0q5QZ8FECOlbA22rpHQ/awKWCGlHOt+Fp+ESsQ9MJBYStkL9A8kDkmklB8AzcHW4Q9Syhop5Wf6/9uBcrQ5oiGJPgzEpn9q0j+CH114QQiRBXwV2BBsLVMJIUQCcBGwEUBK2RsOpq1zCXA0UKYNoWPcngYSh6y5hCtCiLnAUuCT4CrxjZ56+AKoB96RUoay3qeB/wCcwRbiJxJ4WwixT58TG6rMBxqAzXoaaoMQIjbYovzk68CLgXyCUDFuT9OAQzbKCkeEEHHAq8D9Usq2YOvxhZTSIaU8E8gCzhFChGQ6SghxNVAvpdwXbC2j4Hwp5VnAlcC/62m/UMQInAX8Tkq5FOgAQnrtC0BP6VwLvBzI5wkV464EZrt9ngVUB0nLlEPPFb8KvCCl/GOw9fiL/ta4CFgdZCneOB+4Vs8b7wAuFkL8b3Al+UZKWa3/Ww+8hpamDEUqgUq3d1uvoBl5qHMl8JmUsi6QTxIqxj0pA4mnI/pi30agXEr5VLD1jIQQIlUIkaj/3wxcChwIrirPSCkflFJmSSnnov3OvielvD3IsrwihIjVF6jR0w6XAyFZGSWlrAVOCSFy9IcuAUJyQX0ItxLgNAn4OXMy0ITbQGIhxIvASiBFCFEJPCKl3BhcVV45H1gLFOt5Y4Cf6HNEQ5GZwFZ9Zd4AvCSlDPkyuzAhHXhNey3HCGyXUv41uJJ88h3gBT2YOwbcFWQ9PhFCxKBVxn0j4M8VCuWACoVCofCfUEmVKBQKhcJPlHErFApFmKGMW6FQKMIMZdwKhUIRZijjVigUijBDGbdCoVCEGcq4FQqFIsxQxq1QKBRhxv8H5kLvWEuo0T0AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } }, { "output_type": "stream", "text": [ "0.8999999999999999\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "zQBMPtvn527T", "colab_type": "code", "colab": {} }, "source": [ "# A simple Neural Network\n", "\n", "We were capable of separating the two classes with a straight line. One might wonder what this has to do with neural networks. We will work out this connection below.\n", "We are going to define a neural network to classify the previous data sets. Our neural network will only consist of one neuron. A neuron with two input values, one for 'sourness' and one for 'sweetness'." ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "WHXak2oE527V", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/one_perceptron_neural_network.png)" ] }, { "cell_type": "markdown", "metadata": { "id": "MWk_2b7l527V", "colab_type": "text" }, "source": [ "The two input values - called in_data in our Python program below - have to be weighted by weight values. So solve our problem, we define a Perceptron class. An instance of the class is a Perceptron (or Neuron). It can be initialized with the input_length, i.e. the number of input values, and the weights, which can be given as a list, tuple or an array. If there are no values for the weights given or the parameter is set to None, we will initialize the weights to 1 / input_length.\n", "\n", "In the following example choose -0.45 and 0.5 as the values for the weights. This is not the normal way to do it. A Neural Network calculates the weights automatically during its training phase, as we will learn later." ] }, { "cell_type": "code", "metadata": { "id": "8GXU0pI-527W", "colab_type": "code", "colab": {}, "outputId": "1dd7de09-9557-471a-d38a-d7eacdb279ba" }, "source": [ "import numpy as np\n", "\n", "class Perceptron:\n", " \n", " def __init__(self, weights):\n", " \"\"\"\n", " 'weights' can be a numpy array, list or a tuple with the\n", " actual values of the weights. The number of input values\n", " is indirectly defined by the length of 'weights'\n", " \"\"\"\n", " self.weights = np.array(weights)\n", " \n", " def __call__(self, in_data):\n", " weighted_input = self.weights * in_data\n", " weighted_sum = weighted_input.sum()\n", " return weighted_sum\n", " \n", "p = Perceptron(weights=[-0.45, 0.5])\n", "\n", "for point in zip(oranges_x[:10], oranges_y[:10]):\n", " res = p(point)\n", " print(res, end=\", \")\n", "\n", "for point in zip(lemons_x[:10], lemons_y[:10]):\n", " res = p(point)\n", " print(res, end=\", \")" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "-2.1402919535118503, -1.3071887994944085, -1.51159453316879, -0.48041236165903634, -1.3858050204524741, -0.6397458200847141, -1.5938443972321414, -1.0582873832255286, -1.1785192372827578, -1.6866496906598036, 2.734992566261176, 0.47165411990968154, 1.7868441204422165, 1.3656278548586318, 2.106966109695529, 1.9441029630002595, 1.5114476891429196, 2.551615689069525, 1.4455619880635868, 1.652779382058979, " ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "S1m8wJOd527b", "colab_type": "code", "colab": {}, "outputId": "74d459e4-c04c-4800-827f-04801935c6d3" }, "source": [ "#We can see that we get a negative value, if we input an orange and a posive value, if we input a lemon. With this knowledge, we can calculate the accuracy of our neural network on this data set:\n", "\n", "from collections import Counter\n", "evaluation = Counter()\n", "for point in zip(oranges_x, oranges_y):\n", " res = p(point)\n", " if res < 0:\n", " evaluation['corrects'] += 1\n", " else:\n", " evaluation['wrongs'] += 1\n", "\n", "\n", "for point in zip(lemons_x, lemons_y):\n", " res = p(point)\n", " if res >= 0:\n", " evaluation['corrects'] += 1\n", " else:\n", " evaluation['wrongs'] += 1\n", "\n", "print(evaluation)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Counter({'corrects': 200})\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "bgnEtPbV527d", "colab_type": "code", "colab": {} }, "source": [ "How does the calculation work? We multiply the input values with the weights and get negative and positive values. Let us examine what we get, if the calculation results in 0\n", "\n", "\n", "w1⋅x1+w2⋅x2=0\n", "We can change this equation into\n", "\n", "x2=−w1w2⋅x1\n", "We can compare this with the general form of a straight line\n", "\n", "y=m⋅x+c\n", "where:\n", "\n", "m is the slope or gradient of the line.\n", "c is the y-intercept of the line.\n", "x is the independent variable of the function\n", "\n", "We can easily see that our equation corresponds to the definition of a line and the slope (aka gradient) m is −w1w2 and c is equal to 0.\n", "\n", "This is a straight line separating the oranges and lemons, which is called the decision boundary.\n", "\n", "We visualize this with the following Python program:" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "QytFabgR527e", "colab_type": "code", "colab": {}, "outputId": "f2febcf3-3989-4ca4-e29f-70a42eb9babc" }, "source": [ "# visualize is with the following Python program:\n", "\n", "import time\n", "import matplotlib.pyplot as plt\n", "slope = 0.1\n", "\n", "X = np.arange(0, 8)\n", "fig, ax = plt.subplots()\n", "ax.scatter(oranges_x, \n", " oranges_y, \n", " c=\"orange\", \n", " label=\"oranges\")\n", "ax.scatter(lemons_x, \n", " lemons_y, \n", " c=\"y\", \n", " label=\"lemons\")\n", "\n", "slope = 0.45 / 0.5\n", "ax.plot(X, slope * X, linewidth=2)\n", "\n", "\n", "ax.grid()\n", "plt.show()\n", "\n", "print(slope)\n" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } }, { "output_type": "stream", "text": [ "0.9\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "rX1MB82G527g", "colab_type": "code", "colab": {}, "outputId": "2e08779a-263d-4238-d960-719e4af46740" }, "source": [ "# Training a Neural Network\n", "\n", "#As we mentioned in the previous section: We didn't train our network. We have adjusted the weights to values that we know would form a dividing line. We want to demonstrate now, what is necessary to train our simple neural network.\n", "#Before we start with this task, we will separate our data into training and test data in the following Python program. By setting the random_state to the value 42 we will have the same output for every run, which can be benifial for debugging purposes.\n", "\n", "from sklearn.model_selection import train_test_split\n", "import random\n", "\n", "oranges = list(zip(oranges_x, oranges_y))\n", "lemons = list(zip(lemons_x, lemons_y))\n", "\n", "# labelling oranges with 0 and lemons with 1:\n", "labelled_data = list(zip(oranges + lemons, \n", " [0] * len(oranges) + [1] * len(lemons)))\n", "random.shuffle(labelled_data)\n", "\n", "data, labels = zip(*labelled_data)\n", "\n", "res = train_test_split(data, labels, \n", " train_size=0.8,\n", " test_size=0.2,\n", " random_state=42)\n", "train_data, test_data, train_labels, test_labels = res \n", "print(train_data[:10], train_labels[:10])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[(1.4182815883989126, 6.730294531432508), (4.768602585851741, 2.403687826460562), (5.533575568202748, 2.208607970477525), (4.9966982721791, 2.4294960377925743), (2.1180430003516846, 5.699338001209949), (6.123656964829826, 1.2522375595933088), (3.136508248315214, 4.569021662694616), (4.786566178915706, 1.3135470266662674), (3.67502607044438, 4.221185091650704), (3.465049898869564, 5.249061834769231)] [1, 0, 0, 0, 1, 0, 1, 0, 1, 1]\n" ], "name": "stdout" } ] }, { "cell_type": "markdown", "metadata": { "id": "tbUBWAeA527i", "colab_type": "text" }, "source": [ "##### As we start with two arbitrary weights, we cannot expect the result to be correct. For some points (fruits) it may return the proper value, i.e. 1 for a lemon and 0 for an orange. In case we get the wrong result, we have to correct our weight values. First we have to calculate the error. The error is the difference between the target or expected value (target_result) and the calculated value (calculated_result). With this error we have to adjust the weight values with an incremental value, i.e. w1=w1+Δw1 and w2=w2+Δw2\n", "\n", "![](https://www.python-course.eu/images/neuron_input_weights_error_correction.png)" ] }, { "cell_type": "markdown", "metadata": { "id": "2fl3NhZg527i", "colab_type": "text" }, "source": [ "If the error e is 0, i.e. the target result is equal to the calculated result, we don't have to do anything. The network is perfect for these input values. If the error is not equal, we have to change the weights. We have to change the weights by adding small values to them. These values may be positive or negative. The amount we have a change a weight value depends on the error and on the input value. Let us assume, x1=0 and x2>0. In this case the result in this case solely results on the input x2. This on the other hand means that we can minimize the error by changing solely w2. If the error is negative, we will have to add a negative value to it, and if the error is positive, we will have to add a positive value to it. From this we can understand that whatever the input values are, we can multiply them with the error and we get values, we can add to the weights. One thing is still missing: Doing this we would learn to fast. We have many samples and each sample should only change the weights a little bit. Therefore we have to multiply this result with a learning rate (self.learning_rate). The learning rate is used to control how fast the weights are updated. Small values for the learning rate result in a long training process, larger values bear the risk of ending up in sub-optimal weight values. We will have a closer look at this in our chapter on backpropagation.\n", "\n", "We are ready now to write the code for adapting the weights, which means training the network. For this purpose, we add a method 'adjust' to our Perceptron class. The task of this method is to correct the error." ] }, { "cell_type": "code", "metadata": { "id": "DzwRlxSp527i", "colab_type": "code", "colab": {}, "outputId": "151c7f1a-ddde-49f3-9705-ce4a96a2523a" }, "source": [ "\n", "import numpy as np\n", "from collections import Counter\n", "\n", "class Perceptron:\n", " \n", " def __init__(self, \n", " weights,\n", " learning_rate=0.1):\n", " \"\"\"\n", " 'weights' can be a numpy array, list or a tuple with the\n", " actual values of the weights. The number of input values\n", " is indirectly defined by the length of 'weights'\n", " \"\"\"\n", " self.weights = np.array(weights)\n", " self.learning_rate = learning_rate\n", " \n", " @staticmethod\n", " def unit_step_function(x):\n", " if x < 0:\n", " return 0\n", " else:\n", " return 1\n", " \n", " def __call__(self, in_data):\n", " weighted_input = self.weights * in_data\n", " weighted_sum = weighted_input.sum()\n", " #print(in_data, weighted_input, weighted_sum)\n", " return Perceptron.unit_step_function(weighted_sum)\n", " \n", " def adjust(self, \n", " target_result, \n", " calculated_result,\n", " in_data):\n", " if type(in_data) != np.ndarray:\n", " in_data = np.array(in_data) # \n", " error = target_result - calculated_result\n", " if error != 0:\n", " correction = error * in_data * self.learning_rate\n", " self.weights += correction \n", " #print(target_result, calculated_result, error, in_data, correction, self.weights)\n", " \n", " def evaluate(self, data, labels):\n", " evaluation = Counter()\n", " for index in range(len(data)):\n", " label = int(round(p(data[index]),0))\n", " if label == labels[index]:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", " return evaluation\n", " \n", "\n", "p = Perceptron(weights=[0.1, 0.1],\n", " learning_rate=0.3)\n", "\n", "for index in range(len(train_data)):\n", " p.adjust(train_labels[index], \n", " p(train_data[index]), \n", " train_data[index])\n", " \n", "evaluation = p.evaluate(train_data, train_labels)\n", "print(evaluation.most_common())\n", "evaluation = p.evaluate(test_data, test_labels)\n", "print(evaluation.most_common())" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[('correct', 160)]\n", "[('correct', 40)]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "FVZRdDAj527k", "colab_type": "code", "colab": {}, "outputId": "8ced0079-790f-4ed6-ad5d-a1760580db15" }, "source": [ "#Both on the learning and on the test data, we have only correct values, i.e. our network was capable of learning automatically and successfully!\n", "#We visualize the decision boundary with the following program:\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "X = np.arange(0, 7)\n", "fig, ax = plt.subplots()\n", "\n", "lemons = [train_data[i] for i in range(len(train_data)) if train_labels[i] == 1]\n", "lemons_x, lemons_y = zip(*lemons)\n", "oranges = [train_data[i] for i in range(len(train_data)) if train_labels[i] == 0]\n", "oranges_x, oranges_y = zip(*oranges)\n", "\n", "ax.scatter(oranges_x, oranges_y, c=\"orange\")\n", "ax.scatter(lemons_x, lemons_y, c=\"y\")\n", "\n", "w1 = p.weights[0]\n", "w2 = p.weights[1]\n", "m = -w1 / w2\n", "ax.plot(X, m * X, label=\"decision boundary\")\n", "ax.legend()\n", "plt.show()\n", "print(p.weights)" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } }, { "output_type": "stream", "text": [ "[-1.35516659 1.67041832]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "bd7F_lfb527l", "colab_type": "code", "colab": {}, "outputId": "bbf9b5a6-b04c-42e8-af4e-71280b1fbd1f" }, "source": [ "# Let us have a look on the algorithm \"in motion\".\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import matplotlib.cm as cm\n", "\n", "p = Perceptron(weights=[0.1, 0.1],\n", " learning_rate=0.3)\n", "number_of_colors = 7\n", "colors = cm.rainbow(np.linspace(0, 1, number_of_colors))\n", "\n", "fig, ax = plt.subplots()\n", "ax.set_xticks(range(8))\n", "ax.set_ylim([-2, 8])\n", "\n", "counter = 0\n", "for index in range(len(train_data)):\n", " old_weights = p.weights.copy()\n", " p.adjust(train_labels[index], \n", " p(train_data[index]), \n", " train_data[index])\n", " if not np.array_equal(old_weights, p.weights):\n", " color = \"orange\" if train_labels[index] == 0 else \"y\" \n", " ax.scatter(train_data[index][0], \n", " train_data[index][1],\n", " color=color)\n", " ax.annotate(str(counter), \n", " (train_data[index][0], train_data[index][1]))\n", " m = -p.weights[0] / p.weights[1]\n", " print(index, m, p.weights, train_data[index])\n", " ax.plot(X, m * X, label=str(counter), color=colors[counter])\n", " counter += 1\n", "ax.legend()\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "1 -2.142275280509582 [-1.33058078 -0.62110635] (4.768602585851741, 2.403687826460562)\n", "4 0.6385331448890958 [-0.69516788 1.08869505] (2.1180430003516846, 5.699338001209949)\n", "20 22.224912531420745 [-2.10211755 0.09458384] (4.689832234901131, 3.3137040451304345)\n", "21 0.8112737797895683 [-1.35516659 1.67041832] (2.4898365306121653, 5.2527816145638475)\n" ], "name": "stdout" }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "BaTQK39C527n", "colab_type": "text" }, "source": [ "Each of the points in the diagram above cause a change in the weights. We see them numbered in the order of their appearance and the corresponding straight line. This way we can see how the networks \"learns\"." ] }, { "cell_type": "code", "metadata": { "id": "bd-T0Civ527n", "colab_type": "code", "colab": {} }, "source": [ "" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "UJQYdLE3527q", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 997 }, "outputId": "a40f2bd0-d265-42be-adeb-2c984f44f5b2" }, "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt \n", "\n", "def create_distance_function(a, b, c):\n", " \"\"\" 0 = ax + by + c \"\"\"\n", " def distance(x, y):\n", " \"\"\" \n", " returns tuple (d, pos)\n", " d is the distance\n", " If pos == -1 point is below the line, \n", " 0 on the line and +1 if above the line\n", " \"\"\"\n", " nom = a * x + b * y + c\n", " #print(y)\n", " print(b)\n", " if nom == 0:\n", " pos = 0\n", " elif (nom<0 and b<0) or (nom>0 and b>0):\n", " pos = -1\n", " else:\n", " pos = 1\n", " return (np.absolute(nom) / np.sqrt( a ** 2 + b ** 2), pos)\n", " return distance\n", "\n", "orange = (4.5, 1.8)\n", "lemon = (1.1, 3.9)\n", "fruits_coords = [orange, lemon]\n", "\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "import numpy as np\n", "\n", "fig, ax = plt.subplots()\n", "ax.set_xlabel(\"sweetness\")\n", "ax.set_ylabel(\"sourness\")\n", "x_min, x_max = -1, 7\n", "y_min, y_max = -1, 8\n", "ax.set_xlim([x_min, x_max])\n", "ax.set_ylim([y_min, y_max])\n", "X = np.arange(x_min, x_max, 0.1)\n", "\n", "step = 0.05\n", "for x in np.arange(0, 1+step, step):\n", " #print(x)\n", " slope = np.tan(np.arccos(x))\n", " #print(slope)\n", " dist4line1 = create_distance_function(slope, -1, 0)\n", " #print(dist4line1)\n", " Y = slope * X\n", " results = []\n", "\n", " for point in fruits_coords:\n", " results.append(dist4line1(*point))\n", " if (results[0][1] != results[1][1]):\n", " ax.plot(X, Y, \"g-\", linewidth=0.8, alpha=0.9)\n", " else:\n", " ax.plot(X, Y, \"r-\", linewidth=0.8, alpha=0.9)\n", " #print(results)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n", "-1\n" ], "name": "stdout" }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "syycqAp6527r", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 268 }, "outputId": "53b21506-a89b-4314-e3fd-e7a2f9348ed5" }, "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "def points_within_circle(radius, \n", " center=(0, 0),\n", " number_of_points=100):\n", " center_x, center_y = center\n", " r = radius * np.sqrt(np.random.random((number_of_points,)))\n", " theta = np.random.random((number_of_points,)) * 2 * np.pi\n", " x = center_x + r * np.cos(theta)\n", " y = center_y + r * np.sin(theta)\n", " return x, y\n", "\n", "X = np.arange(0, 8)\n", "fig, ax = plt.subplots()\n", "oranges_x, oranges_y = points_within_circle(1.6, (5, 2), 100)\n", "lemons_x, lemons_y = points_within_circle(1.9, (2, 5), 100)\n", "\n", "ax.scatter(oranges_x, \n", " oranges_y, \n", " c=\"orange\", \n", " label=\"oranges\")\n", "ax.scatter(lemons_x, \n", " lemons_y, \n", " c=\"y\", \n", " label=\"lemons\")\n", "\n", "ax.plot(X, 0.9 * X, \"g-\", linewidth=2)\n", "\n", "ax.legend()\n", "ax.grid()\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "TtCBhU3i527u", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 357 }, "outputId": "9c030c67-91a2-42a7-ff5d-db60f86d0fd8" }, "source": [ "" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([6.26765438, 5.06235429, 4.73712982, 3.91655753, 3.63460958,\n", " 5.40773705, 5.65186691, 5.50105834, 5.62928108, 4.19302401,\n", " 3.91629729, 5.28988205, 3.96826748, 4.35540642, 5.51396698,\n", " 5.28073029, 5.22141734, 3.64364878, 5.82547247, 3.95752793,\n", " 5.22802031, 4.64541491, 6.12965773, 5.14990656, 6.00175734,\n", " 5.27675896, 5.31910683, 5.53284673, 4.52133452, 6.01694432,\n", " 4.82235461, 3.95390166, 4.61669362, 4.13012981, 6.32618251,\n", " 4.65470159, 4.32196254, 5.48488329, 5.65122981, 6.04990209,\n", " 6.26269394, 4.26441685, 5.93503055, 3.46773206, 3.73496063,\n", " 4.99534664, 5.273816 , 6.40536385, 5.73155694, 6.45874655,\n", " 4.44128037, 4.37608149, 5.50527571, 4.74457559, 5.98827553,\n", " 6.55891347, 5.3742811 , 5.44733033, 5.41528626, 3.92623167,\n", " 4.78118219, 5.83870804, 6.02902931, 6.21902735, 5.8199929 ,\n", " 4.65163644, 4.88398435, 5.2259429 , 5.68928356, 4.01121116,\n", " 4.85056572, 4.43851887, 5.66538548, 6.20913147, 4.65246463,\n", " 4.14089727, 4.80725505, 3.82355957, 4.13923433, 5.56028289,\n", " 4.68071163, 5.60490218, 4.55389931, 6.21247997, 5.79062078,\n", " 4.659516 , 5.11882656, 6.31021458, 6.28745664, 4.2944521 ,\n", " 3.75066171, 3.95739264, 4.42854212, 6.15528261, 4.51380721,\n", " 4.96421135, 3.55325837, 5.84630912, 4.46894041, 4.98038749])" ] }, "metadata": { "tags": [] }, "execution_count": 13 } ] }, { "cell_type": "code", "metadata": { "id": "j3Krxrsj527v", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 305 }, "outputId": "99e36598-544c-4af5-db74-55e12dfa2d45" }, "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from itertools import repeat\n", "from random import shuffle\n", "slope = 0.1\n", "\n", "X = np.arange(0, 8)\n", "fig, ax = plt.subplots()\n", "ax.scatter(oranges_x, \n", " oranges_y, \n", " c=\"orange\", \n", " label=\"oranges\")\n", "ax.scatter(lemons_x, \n", " lemons_y, \n", " c=\"y\", \n", " label=\"lemons\")\n", "\n", "fruits = list(zip(oranges_x, \n", " oranges_y, \n", " repeat(0, len(oranges_x)))) \n", "fruits += list(zip(lemons_x, \n", " lemons_y, \n", " repeat(1, len(oranges_x))))\n", "\n", "shuffle(fruits)\n", "print(fruits)\n", "learning_rate = 0.2\n", "\n", "line = None\n", "counter = 0\n", "for x, y, label in fruits:\n", " \n", " res = slope * x - y\n", " if label == 0 and res < 0:\n", " # point is above line but should be below \n", " # => increment slope\n", " slope += learning_rate\n", " counter += 1\n", " ax.plot(X, slope * X, \n", " linewidth=2, label=str(counter))\n", " \n", " elif label == 1 and res > 1:\n", " # point is below line but should be above \n", " # => decrement slope\n", " slope -= learning_rate\n", " counter += 1\n", " ax.plot(X, slope * X, \n", " linewidth=2, label=str(counter))\n", "\n", "ax.legend()\n", "ax.grid()\n", "plt.show()\n", "\n", "#print(slope)\n", "#print(len(fruits))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[(6.049902093318299, 3.010119116589132, 0), (5.935030553794445, 1.9871403695051668, 0), (1.0039418262683837, 6.544882518818315, 1), (4.964211347888926, 2.8521586846596776, 0), (2.0670485148233126, 5.525064609725629, 1), (1.3419670493198925, 3.2553257013030406, 1), (5.319106833656101, 2.2492755415077825, 0), (5.118826564356001, 1.1150632094977084, 0), (4.654701587308848, 2.5973072202316105, 0), (4.807255045408332, 0.9393311942140776, 0), (3.6436487836598195, 2.145385329981008, 0), (2.5628892993526646, 5.43170701322438, 1), (5.415286264551378, 3.4604953125726605, 0), (5.407737047386694, 3.2374094581723583, 0), (5.5602828861261715, 1.7059770611325935, 0), (3.9165575334249665, 1.9922643960913677, 0), (2.4371780460788677, 5.093585653912693, 1), (4.294452100110949, 2.6913505671497804, 0), (2.865106160382074, 4.4447233426706525, 1), (3.4555043600043365, 5.126914931376197, 1), (2.8652087859036004, 3.724547126688389, 1), (2.68820977189831, 3.8716267207708643, 1), (5.374281098846284, 2.5075549920336493, 0), (0.2291581120468602, 5.046092578202444, 1), (4.744575594677753, 0.6093534588163243, 0), (3.953901664151333, 1.311948917287734, 0), (1.5146531540327859, 4.566783963844153, 1), (2.4956099167296393, 4.487251341371328, 1), (4.140897268953957, 0.7652604180030362, 0), (4.822354605670376, 1.9014478013293918, 0), (6.129657733169854, 2.710924811039726, 0), (4.441280373644662, 1.372474229078521, 0), (5.062354286150915, 3.395260273363413, 0), (3.957392639843555, 1.8250312009308267, 0), (5.228020308419652, 2.5806246794025167, 0), (4.468940409526259, 1.6801146609291773, 0), (6.5589134702766305, 1.9204176258085743, 0), (1.1067384816569978, 4.938571464945354, 1), (3.618997893193729, 5.06391499214549, 1), (3.011005639263592, 5.544914225925098, 1), (2.05377540190833, 3.855795575927692, 1), (3.0702096022693617, 4.740218044238683, 1), (3.10736679943033, 4.090770053460584, 1), (2.392748166498636, 6.034905587693354, 1), (5.8199928965898895, 1.605614511180026, 0), (6.219027350629856, 1.1500659623785117, 0), (1.922792933691469, 5.309771835184253, 1), (1.15882146355588, 3.385225592493864, 1), (6.458746554460426, 2.4115649248929127, 0), (4.428542121080078, 2.749158207083129, 0), (3.5926800737338898, 4.0190434284690735, 1), (3.5532583695506106, 1.8998232869095344, 0), (5.84630912242436, 3.1862214147190424, 0), (0.7235968362131986, 5.929244318029509, 1), (6.029029307255811, 1.541334861392329, 0), (4.883984353319233, 2.524494719173661, 0), (4.659515996519572, 3.0519047170052946, 0), (3.290754333135054, 5.788724977749354, 1), (4.321962540567349, 1.9383801736617963, 0), (1.7731236031819158, 3.8924018332435044, 1), (2.457613536026213, 6.717727822858727, 1), (1.77275786063912, 6.092693763300225, 1), (5.532846733257923, 1.0401424805021149, 0), (1.7664484754332594, 4.254064283748427, 1), (3.734960629039203, 2.0199767281543872, 0), (3.750661705733356, 1.2227607606838735, 0), (4.616693621026842, 3.4382552226352647, 0), (1.7142232694144317, 6.131835577762911, 1), (4.645414910618952, 1.0856682538176792, 0), (5.280730293504485, 3.404280649699651, 0), (3.301756671676376, 3.804760632629546, 1), (0.4920136043593686, 4.2435109523910555, 1), (3.4294847499134278, 4.069649391142176, 1), (0.9899259519974735, 4.867294339737574, 1), (6.326182506976519, 2.6667497118457715, 0), (3.0740620118390516, 6.3607400940913905, 1), (4.553899311252643, 2.580431937021215, 0), (2.8261820371209705, 6.668670639540275, 1), (5.289882045217848, 3.4230337519620218, 0), (2.243390228179248, 3.4119014821577642, 1), (0.944550076307489, 6.322841265572141, 1), (4.513807209575935, 3.087854418082138, 0), (3.4677320557746194, 2.4376037272495514, 0), (4.521334520408453, 2.4520948911799914, 0), (2.408283113925454, 3.2555603527630352, 1), (1.9552638956285313, 3.769196016587176, 1), (5.689283555060966, 2.9454989001953633, 0), (4.193024005676287, 1.4557202327628624, 0), (2.7272574522163104, 5.988978262969358, 1), (5.513966978223561, 1.9569000091867204, 0), (1.9159349898890703, 4.51810281980018, 1), (1.2372931222556336, 6.651557875325379, 1), (4.139234325221487, 0.8266250871719671, 0), (2.7580365315506348, 3.4033512396933103, 1), (1.3046830659037154, 4.0205567949075895, 1), (4.850565715744369, 0.9958855653082281, 0), (3.968267475478644, 3.079783660379757, 0), (2.4850695770729248, 5.912954817638061, 1), (4.3760814917660555, 1.2762548331323353, 0), (2.7131868856058836, 5.44513534815838, 1), (1.520141635504673, 5.904515337259627, 1), (6.155282609992539, 2.091902948643391, 0), (1.8625950690894162, 4.633309293872202, 1), (5.825472472972081, 1.4061682816876084, 0), (5.65122981054438, 3.380419956248737, 0), (5.651866905255455, 2.5776966941010406, 0), (1.4402893465219155, 5.487264689321096, 1), (5.225942904594912, 2.7129593352528385, 0), (3.9162972926050443, 2.614495914684847, 0), (0.9003295223719403, 3.8546791482690206, 1), (5.665385482568267, 0.8907991729652167, 0), (6.001757340361932, 2.249335615468104, 0), (1.9144622631342376, 4.024878816274294, 1), (1.999827027558481, 5.222432440585215, 1), (5.629281078778822, 1.701930919957974, 0), (1.3202565900054275, 3.948654674009362, 1), (2.976742297238169, 5.395048839682586, 1), (5.484883286902073, 2.2802946446694836, 0), (1.5629763854955594, 3.907215708486745, 1), (5.5010583361524175, 3.348536963969977, 0), (1.7519290178714038, 4.442902327443237, 1), (0.8003588321881547, 3.6201758149207146, 1), (3.957527932401687, 2.1536920484365494, 0), (0.3144441520570278, 4.135979775260482, 1), (4.651636441706, 1.6659153463386949, 0), (1.1263768130342935, 6.637233383071908, 1), (1.9148883102760281, 6.127204351920069, 1), (5.276758961909394, 2.066415579072818, 0), (1.0212916152892064, 6.604815779021072, 1), (4.2644168471979516, 1.9818145585746585, 0), (2.0731756479169356, 5.126028703204834, 1), (0.39666042433642734, 5.017920964887209, 1), (2.227131033819836, 5.643377398955581, 1), (1.6110720695195089, 3.496247150412295, 1), (3.040040000965311, 4.56979678027357, 1), (4.438518868935118, 1.997731872725952, 0), (6.267654378443874, 1.5265143514150243, 0), (5.604902181815981, 1.045419271938037, 0), (6.31021457577617, 2.699012020120641, 0), (3.4654156199411115, 4.352191103447135, 1), (6.01694432064879, 1.655416193716333, 0), (0.9929242004533738, 5.8494746362805214, 1), (2.3090956012386665, 6.293928770685085, 1), (0.34945419392163424, 4.831616187773503, 1), (1.0377012942789388, 4.699726308075407, 1), (0.2989097250063293, 5.296950682271108, 1), (3.406958039444023, 5.526447571354541, 1), (1.7024611080436922, 5.627284432228556, 1), (6.2874566393117135, 1.672688966834766, 0), (0.6053882460403761, 5.470957842460061, 1), (6.405363845320636, 1.7042379389173268, 0), (1.8053275934837645, 4.212735203177973, 1), (2.4286346670142116, 6.273763352135788, 1), (3.634609583707298, 2.7978681120466398, 0), (4.7811821891185255, 2.5293305346063044, 0), (1.0474968195202439, 5.2478428790944385, 1), (5.221417343523917, 0.47970231615909276, 0), (1.1796103303730479, 4.8410850546277615, 1), (3.2557192797668604, 5.224699548005336, 1), (1.7029806944117811, 6.665148317953912, 1), (3.766175058038638, 5.517160990019933, 1), (2.2669127875889123, 6.146526360972896, 1), (5.988275533241056, 2.6048274984598665, 0), (0.5826679401289883, 3.9646681862260698, 1), (1.7439556894930548, 4.941961563625292, 1), (5.731556940815731, 2.5597385445727854, 0), (3.229450249650385, 3.9945012052219235, 1), (1.656397797589236, 6.450255693542701, 1), (4.680711628217797, 1.7606655962685689, 0), (0.866271205636522, 4.06996482663326, 1), (5.273815997371548, 2.3920166520387824, 0), (2.2160276255003257, 4.742501236305322, 1), (0.24049599224611673, 5.640924901168703, 1), (3.926231666161927, 1.951467973773984, 0), (6.2124799722666815, 1.7792481907845799, 0), (4.737129823133595, 1.2212385859324104, 0), (5.505275707501477, 0.5898149750040926, 0), (2.361036078076616, 4.400037024507985, 1), (5.14990655930699, 1.844765786280678, 0), (6.209131473040115, 1.910964597124956, 0), (1.2029760924316772, 4.262617282971526, 1), (5.447330330656625, 1.6929410745972353, 0), (2.1005827741737506, 3.7107754228235077, 1), (6.262693942582858, 2.2487581425709715, 0), (4.652464634209104, 2.6505047203439993, 0), (4.995346638109806, 2.9492252768296185, 0), (5.838708044648155, 1.4196167023885682, 0), (4.011211159675684, 1.5037041861230631, 0), (3.7039865395149465, 4.293358142192014, 1), (0.9942300691047614, 5.226909648235841, 1), (5.790620775377038, 2.1833274007855796, 0), (1.9537617382715955, 4.753862138879839, 1), (3.093992459736266, 4.214420349278206, 1), (4.980387489007265, 1.8483342537667418, 0), (2.5223604858868316, 5.898613335384697, 1), (2.7958187758404596, 6.5161717326756845, 1), (3.823559570912465, 2.3055523426788573, 0), (4.130129809759955, 1.085190177392655, 0), (4.3554064188355, 2.358271735118856, 0), (3.601737467962887, 5.140543767149951, 1)]\n" ], "name": "stdout" }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "-ow5jArF527x", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 54 }, "outputId": "64727c15-f143-4f99-b91e-8ea976376b71" }, "source": [ "from sklearn.model_selection import train_test_split\n", "import random\n", "\n", "oranges = list(zip(oranges_x, oranges_y))\n", "lemons = list(zip(lemons_x, lemons_y))\n", "\n", "# labelling oranges with 0 and lemons with 1:\n", "labelled_data = list(zip(oranges + lemons, \n", " [0] * len(oranges) + [1] * len(lemons)))\n", "random.shuffle(labelled_data)\n", "\n", "data, labels = zip(*labelled_data)\n", "\n", "res = train_test_split(data, labels, \n", " train_size=0.8,\n", " test_size=0.2,\n", " random_state=42)\n", "train_data, test_data, train_labels, test_labels = res \n", "print(train_data[:10], train_labels[:10])" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[(1.7142232694144317, 6.131835577762911), (1.2372931222556336, 6.651557875325379), (4.995346638109806, 2.9492252768296185), (2.7958187758404596, 6.5161717326756845), (3.634609583707298, 2.7978681120466398), (1.77275786063912, 6.092693763300225), (3.5926800737338898, 4.0190434284690735), (2.05377540190833, 3.855795575927692), (6.267654378443874, 1.5265143514150243), (1.15882146355588, 3.385225592493864)] [1, 1, 0, 1, 0, 1, 1, 1, 0, 1]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "0-2ju4ph527y", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "03f28c1b-d020-416d-c3b1-7387debab852" }, "source": [ "\n", "import numpy as np\n", "from collections import Counter\n", "\n", "class Perceptron:\n", " \n", " def __init__(self, \n", " weights,\n", " learning_rate=0.1):\n", " \"\"\"\n", " 'weights' can be a numpy array, list or a tuple with the\n", " actual values of the weights. The number of input values\n", " is indirectly defined by the length of 'weights'\n", " \"\"\"\n", " self.weights = np.array(weights)\n", " self.learning_rate = learning_rate\n", " \n", " @staticmethod\n", " def unit_step_function(x):\n", " if x < 0:\n", " return 0\n", " else:\n", " return 1\n", " \n", " def __call__(self, in_data):\n", " weighted_input = self.weights * in_data\n", " weighted_sum = weighted_input.sum()\n", " #print(in_data, weighted_input, weighted_sum)\n", " return Perceptron.unit_step_function(weighted_sum)\n", " \n", " def adjust(self, \n", " target_result, \n", " calculated_result,\n", " in_data):\n", " if type(in_data) != np.ndarray:\n", " in_data = np.array(in_data) # \n", " error = target_result - calculated_result\n", " if error != 0:\n", " correction = error * in_data * self.learning_rate\n", " self.weights += correction \n", " #print(target_result, calculated_result, error, in_data, correction, self.weights)\n", " \n", " def evaluate(self, data, labels):\n", " evaluation = Counter()\n", " for index in range(len(data)):\n", " label = int(round(p(data[index]),0))\n", " if label == labels[index]:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", " return evaluation\n", " \n", "\n", "p = Perceptron(weights=[0.1, 0.1],\n", " learning_rate=0.3)\n", "\n", "print(p.weights)\n", "\n", "for index in range(len(train_data)):\n", " p.adjust(train_labels[index], \n", " p(train_data[index]), \n", " train_data[index])\n", " \n", "#evaluation = p.evaluate(train_data, train_labels)\n", "#print(evaluation.most_common())\n", "#evaluation = p.evaluate(test_data, test_labels)\n", "#print(evaluation.most_common())\n", "\n", "print(p.weights)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[0.1 0.1]\n", "[-1.84053364 2.41829665]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "vEsWqD1z5270", "colab_type": "code", "colab": {} }, "source": [ "### Perceptron for the AND Function" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "rrqWOmOZ5271", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 282 }, "outputId": "931cd89f-d011-457f-8f1d-d90422c61120" }, "source": [ "# In our next example we will program a Neural Network in Python which implements the logical \"And\" function. It is defined for two inputs in the following way:\n", "# We learned in the previous chapter that a neural network with one perceptron and two input values can be interpreted as a decision boundary, i.e. straight line dividing two classes. The two classes we want to classify in our example look like this:\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "fig, ax = plt.subplots()\n", "xmin, xmax = -0.2, 1.4\n", "X = np.arange(xmin, xmax, 0.1)\n", "ax.scatter(0, 0, color=\"r\")\n", "ax.scatter(0, 1, color=\"r\")\n", "ax.scatter(1, 0, color=\"r\")\n", "ax.scatter(1, 1, color=\"g\")\n", "ax.set_xlim([xmin, xmax])\n", "ax.set_ylim([-0.1, 1.1])\n", "m = -1\n", "#ax.plot(X, m * X + 1.2, label=\"decision boundary\")\n", "plt.plot()" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": { "tags": [] }, "execution_count": 3 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "yiiYnqWw5273", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 282 }, "outputId": "7ec1587d-3e54-47d9-f926-a62a9b3bd796" }, "source": [ "# We also found out that such a primitive neural network is only capable of creating straight lines going through the origin. So dividing lines like this:\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "fig, ax = plt.subplots()\n", "xmin, xmax = -0.2, 1.4\n", "X = np.arange(xmin, xmax, 0.1)\n", "ax.set_xlim([xmin, xmax])\n", "ax.set_ylim([-0.1, 1.1])\n", "m = -1\n", "for m in np.arange(0, 6, 0.1):\n", " ax.plot(X, m * X )\n", "ax.scatter(0, 0, color=\"r\")\n", "ax.scatter(0, 1, color=\"r\")\n", "ax.scatter(1, 0, color=\"r\")\n", "ax.scatter(1, 1, color=\"g\")\n", "plt.plot()" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": { "tags": [] }, "execution_count": 4 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "xcmYV0EV5274", "colab_type": "code", "colab": {} }, "source": [ "#We can see that none of these straight lines can be used as decision boundary nor any other lines going through the origin.\n", "#We need a line\n", "\n", "y=m⋅x+c\n", "\n", "#where the intercept c is not equal to 0.\n", "\n", "# For example the line\n", "\n", "y=−x+1.2\n", "\n", "# could be used as a separating line for our problem:" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "GF2s5iVT5276", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 282 }, "outputId": "4fb804b1-2739-4ff4-d193-0d6597db1dde" }, "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "fig, ax = plt.subplots()\n", "xmin, xmax = -0.2, 1.4\n", "X = np.arange(xmin, xmax, 0.1)\n", "ax.scatter(0, 0, color=\"r\")\n", "ax.scatter(0, 1, color=\"r\")\n", "ax.scatter(1, 0, color=\"r\")\n", "ax.scatter(1, 1, color=\"g\")\n", "ax.set_xlim([xmin, xmax])\n", "ax.set_ylim([-0.1, 1.1])\n", "m, c = -1, 1.2\n", "ax.plot(X, m * X + c )\n", "plt.plot()" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": { "tags": [] }, "execution_count": 5 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "0ANgrCg6ePU3", "colab_type": "text" }, "source": [ "#####The question now is whether we can find a solution with minor modifications of our network model? Or in other words: Can we create a perceptron capable of defining arbitrary decision boundaries?\n", "#The solution consists in the addition of a bias node.\n", "\n", "#### Single Perceptron with a Bias\n", "\n", "##### A perceptron with two input values and a bias corresponds to a general straight line. With the aid of the bias value b we can train a network which has a decision boundary with a non zero intercept c.\n", "\n", "![](https://www.python-course.eu/images/perceptron_two_inputs_and_bias.png)" ] }, { "cell_type": "code", "metadata": { "id": "s_G_ULKA527-", "colab_type": "code", "colab": {} }, "source": [ "#While the input values can change, a bias value always remains constant. Only the weight of the bias node can be adapted.\n", "#Now, the linear equation for a perceptron contains a bias:\n", "\n", "∑i=1nwi⋅xi+wn+1⋅b=0\n", "\n", "#In our case it looks like this:\n", "\n", "w1⋅x1+w2⋅x2+w3⋅b=0\n", "\n", "#this is equivalent with\n", "\n", "x2=−w1w2⋅x1−w3w2⋅b\n", "\n", "This means:\n", "m=−w1w2\n", "and\n", "c=−w3w2⋅b" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "6-qYdu25527_", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "from collections import Counter\n", "\n", "class Perceptron:\n", " \n", " def __init__(self, \n", " weights,\n", " bias=1,\n", " learning_rate=0.3):\n", " \"\"\"\n", " 'weights' can be a numpy array, list or a tuple with the\n", " actual values of the weights. The number of input values\n", " is indirectly defined by the length of 'weights'\n", " \"\"\"\n", " self.weights = np.array(weights)\n", " self.bias = bias\n", " self.learning_rate = learning_rate\n", "\n", " @staticmethod\n", " def unit_step_function(x):\n", " if x <= 0:\n", " return 0\n", " else:\n", " return 1\n", "\n", " def __call__(self, in_data):\n", " in_data = np.concatenate( (in_data, [self.bias]))\n", " result = self.weights @ in_data\n", " return Perceptron.unit_step_function(result)\n", "\n", "\n", " def adjust(self, \n", " target_result, \n", " in_data):\n", " if type(in_data) != np.ndarray:\n", " in_data = np.array(in_data) # \n", " calculated_result = self(in_data)\n", " error = target_result - calculated_result\n", " if error != 0:\n", " in_data = np.concatenate( (in_data, [self.bias]) )\n", " correction = error * in_data * self.learning_rate\n", " self.weights += correction\n", " \n", "\n", " def evaluate(self, data, labels):\n", " evaluation = Counter()\n", " for sample, label in zip(data, labels):\n", " result = self(sample) # predict\n", " if result == label:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", " return evaluation\n", " " ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "jIFc50K4528B", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "f10d4e76-575e-449d-d005-5124b0ee8ef3" }, "source": [ "#We assume that the above Python code with the Perceptron class is stored in your current working directory under the name 'perceptrons.py'.\n", "\n", "import numpy as np\n", "#from perceptrons import Perceptron\n", "\n", "def labelled_samples(n):\n", " for _ in range(n):\n", " s = np.random.randint(0, 2, (2,))\n", " yield (s, 1) if s[0] == 1 and s[1] == 1 else (s, 0)\n", "\n", "p = Perceptron(weights=[0.3, 0.3, 0.3], learning_rate=0.2)\n", "\n", "for in_data, label in labelled_samples(30):\n", " #print(in_data)\n", " #print(type(in_data))\n", " #print(label)\n", " p.adjust(label, in_data)\n", "\n", "test_data, test_labels = list(zip(*labelled_samples(30)))\n", "\n", "evaluation = p.evaluate(test_data, test_labels)\n", "print(evaluation)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Counter({'correct': 30})\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "0LANtAODb8so", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "dedb5b62-e197-4f4a-f7ac-24e714398665" }, "source": [ "p.weights" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([ 0.1, 0.3, -0.3])" ] }, "metadata": { "tags": [] }, "execution_count": 18 } ] }, { "cell_type": "code", "metadata": { "id": "znWYlASg528C", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 299 }, "outputId": "7f31d0e8-7774-499b-e715-b898c65918f2" }, "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "fig, ax = plt.subplots()\n", "xmin, xmax = -0.2, 1.4\n", "X = np.arange(xmin, xmax, 0.1)\n", "ax.scatter(0, 0, color=\"r\")\n", "ax.scatter(0, 1, color=\"r\")\n", "ax.scatter(1, 0, color=\"r\")\n", "ax.scatter(1, 1, color=\"g\")\n", "ax.set_xlim([xmin, xmax])\n", "ax.set_ylim([-0.1, 1.1])\n", "\n", "m = -p.weights[0] / p.weights[1]\n", "c = -p.weights[2] / p.weights[1]\n", "print(m, c)\n", "\n", "ax.plot(X, m * X + c )\n", "plt.plot()" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "-3.0000000000000004 3.0000000000000013\n" ], "name": "stdout" }, { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": { "tags": [] }, "execution_count": 14 }, { "output_type": "display_data", "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAD4CAYAAADvsV2wAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAbvklEQVR4nO3de3BU95nm8e+rG0JcBEjipm4QtsG2DObiFuPEGceJ7QzgGHAMLbvsmmTKFWouSW02U1vrLVLeWU9Ru0lqJqnZ9cwsm0olkyIxYMcOjnHs+JJxxjE2ItzBYIINiKu4GLBlDIJ3/+iGtISEukXrnL48nypKrdM/qR8anUfNOd1vm7sjIiKFryTsACIiEgwVvohIkVDhi4gUCRW+iEiRUOGLiBSJsrBuuLa21hsaGsK6eZGMnTpzjj3H2hlfU8XQyvKw40iRWrdu3VF3r+vL14ZW+A0NDbS0tIR18yIZ6zh/gU/9r1eZGhnGD74cCzuOFCkz29PXr9UhHZE0lZWWcP+MCK/tOMKR02fCjiOSMRW+SAYWxiKcv+D8/Pf7w44ikjEVvkgGrq0bTFPDcFa07EOvUpd8o8IXydDCWJTdbR+xbs+JsKOIZESFL5Khe6aMYVBFKSta9oUdRSQjKnyRDA0aUMYXbx7LLzcd5MNPOsKOI5I2Fb5IH8SborSfPc/zmw6EHUUkbSp8kT6YMW4Y19YNYkVLa9hRRNKmwhfpAzOjuSnKuj0n2HXkdNhxRNKiwhfpo/umRygrMVbqUb7kCRW+SB/VDRnA528YydO/b+Xc+QthxxHplQpf5CrEY1GOfniW1945EnYUkV6p8EWuwh3X11E3ZICeky95odfCN7MfmtkRM9vSw/VmZv9kZrvMbJOZzch+zBAsWwYNDVBSkvi4bFnYiSQH/XGgWhtHTmmgWqplm5fR8P0GSv5HCQ3fb2DZZu1DYUvnEf6PgFlXuH42MDH5ZxHwL1cfK2TLlsGiRbBnD7gnPi5apNKXbsWTA9We1kC1S5ZtXsai5xax5+QeHGfPyT0sem6RSj9kvRa+u78OHL/CknnAv3nCGmCYmY3JVsBQLF4M7e2dt7W3J7aLdHFN3WBmNoxgpQaqXbL4lcW0n+u8D7Wfa2fxK9qHwpSNY/j1QOoBzNbktsuY2SIzazGzlra2tizcdD/Zuzez7VL0FsYi7D76ES0aqAbA3pPd7ys9bZdgBHrS1t2XunvM3WN1dX16h65gjBuX2XYpevfcnBiotnytTt4CjKvufl/pabsEIxuFvx+IpnweSW7LX0uWQFVV521VVYntIt2oqijj3qljeV4D1QBYcucSqso770NV5VUsuVP7UJiyUfirgD9PPlvnVuCkux/MwvcNz0MPwdKlMH48mCU+Ll2a2C7Sg3hTlI/PneeXGzVQ7aEpD7H03qWMrx6PYYyvHs/Se5fy0BTtQ2Gy3k4ymdnPgDuAWuAw8N+BcgB3/1czM+D/kHgmTzvwF+7e67uTx2Ix15uYSyFxd+7+3usMrSzj5399W9hxpECZ2Tp3j/Xla8t6W+DuD/ZyvQN/05cbFykkZkZzLMqS1dvZdeQ0140cEnYkkU70SluRLLpvRj1lJaaTt5KTVPgiWVQ7eAB33jiSn/9+vwaqSc5R4YtkWTwW5dhHZ3lluwaqSW5R4Ytk2Wcn1TFyyABWaqCa5BgVvkiWlZWWcP8tEV7bcYTDGqgmOUSFL9IP4rEoFxye/r3eDUtyhwpfpB9MqB2UHKjWqoFqkjNU+CL9JN4U5b2jH/H2e1caNisSHBW+SD+ZM2U0gweUsUJvci45QoUv0k8SA9XGsHrzQU6fORd2HBEVvkh/iseSA9U25fc8QSkMKnyRfjQtOoyJIwdr1ILkBBW+SD8yM5qbomzY9wE7D58OO44UORW+SD+bPz0xUG2FHuVLyFT4Iv2sdvAA7rpxFM+s38/ZDg1Uk/Co8EUCEG+KcOyjs7z6zuGwo0gRU+GLBOD2iXWMGjpAz8mXUKnwRQJQVlrC/TMi/GbHEQ6d1EA1CYcKXyQgGqgmYVPhiwSkoXYQMyeMYGXLPg1Uk1Co8EUC1ByL8v6xdt7SQDUJgQpfJEBzpoxJDlTTc/IleCp8kQANrCjl3qljWb35IKc0UE0CpsIXCVhzU5Qz5y7wy40aqCbBUuGLBGxqpJpJowazXId1JGAqfJGAmRnxWJSN+z5gxyENVJPgqPBFQnDf9HrKS00nbyVQKnyRENRooJqEIK3CN7NZZrbDzHaZ2aPdXD/OzF4zs/VmtsnM5mQ/qkhhiceiHP/oLK9s10A1CUavhW9mpcATwGygEXjQzBq7LPsWsMLdpwMPAP+c7aAiheb2SXWMHlqpwzoSmHQe4c8Edrn7bnc/CzwJzOuyxoGhycvVwIHsRRQpTKUlxoJbIvz7zjYNVJNApFP49UDqQ5DW5LZUfwc8bGatwGrg6919IzNbZGYtZtbS1tbWh7gihWVhLKKBahKYbJ20fRD4kbtHgDnAT8zssu/t7kvdPebusbq6uizdtEj+Gl8ziFuvGcGKln1cuKCBatK/0in8/UA05fNIcluqR4AVAO7+JlAJ1GYjoEihi8ei7DnWztvva6Ca9K90Cn8tMNHMJphZBYmTsqu6rNkL3AlgZjeSKHwdsxFJw+zJYxgyoExvci79rtfCd/cO4GvAi8B2Es/G2Wpmj5vZ3OSyvwW+amYbgZ8BX3EN/BZJy8CKUu6dNpbVWzRQTfpXWTqL3H01iZOxqdseS7m8Dbgtu9FEikdzLMpP39rLcxsP8NCfjA87jhQovdJWJAfcHKnm+lFDdFhH+pUKXyQHmBnxpigbW0/yzqFTYceRAqXCF8kRlwaqrdVz8qV/qPBFcsSIQRXc3TiKZ9a3aqCa9AsVvkgOiceinGg/x8saqCb9QIUvkkP+dGIdY6o1UE36hwpfJIdcHKj2+s42Dp78OOw4UmBU+CI5ZuEt0cRAtXU6eSvZpcIXyTHjaqr41DU1rGhp1UA1ySoVvkgOijdF2Hu8nbfe00A1yR4VvkgOmj15DEMqy3TyVrJKhS+SgyrLS5k7dSyrN2ugmmSPCl8kRzU3Rfmk4wKrNugdQyU7VPgiOWpKfTU3jB7CSh3WkSxR4YvkKDMjHtNANckeFb5IDrtvej0VpSUaqCZZocIXyWHDUwaqfdJxPuw4kudU+CI5Lt6UHKi27UjYUSTPqfBFctxnrqtlrAaqSRao8EVy3KWBau+2ceADDVSTvlPhi+SBBbdEcQ1Uk6ukwhfJA+Nqqvj0tTWsWLdPA9Wkz1T4InkiHouy7/jHrHnvWNhRJE+p8EXyxKzJoxMD1dbq5K30jQpfJE9Ulpcyf1o9L2w5xMmPNVBNMqfCF8kj8VhyoNpGDVSTzKnwRfLI5Pqh3DhmqAaqSZ+kVfhmNsvMdpjZLjN7tIc1cTPbZmZbzeyn2Y0pInBxoFqETa0n2X5QA9UkM70WvpmVAk8As4FG4EEza+yyZiLw34Db3P0m4Bv9kFVEgPnTkgPV9ChfMpTOI/yZwC533+3uZ4EngXld1nwVeMLdTwC4u4Z+iPST4YMquPumUTyzfr8GqklG0in8eiD1oURrcluqScAkM3vDzNaY2azuvpGZLTKzFjNraWtr61tiEaE5FuUDDVSTDGXrpG0ZMBG4A3gQ+H9mNqzrIndf6u4xd4/V1dVl6aZFis9tyYFqy3VYRzKQTuHvB6Ipn0eS21K1Aqvc/Zy7vwfsJPELQET6QWmJsSAW5bfvtrFfA9UkTekU/lpgoplNMLMK4AFgVZc1z5J4dI+Z1ZI4xLM7izlFpIuFt0Q0UE0y0mvhu3sH8DXgRWA7sMLdt5rZ42Y2N7nsReCYmW0DXgP+i7tr4IdIP4qOqOK262pY0aKBapKetI7hu/tqd5/k7te6+5LktsfcfVXysrv7N9290d2nuPuT/RlaRBLisSitJz5mzW49vpLe6ZW2Innsz24azdDKMp28lbSo8EXyWGV5KfOnJweqtWugmlyZCl8kz8VjUc52XGDVxq5PnhPpTIUvkucm11fTOGYoK1r0bB25MhW+SAGIxyJs3n+SbQc0UE16psIXKQDzp2ugmvROhS9SAIZVVfCFm0bx7AYNVJOeqfBFCkRzU2Kg2ktbD4cdRXKUCl+kQNx2bS31wwbqsI70SIUvUiBKSowFt0T4j11HaT3RHnYcyUEqfJECsjAWAeDpdXpOvlxOhS9SQCLDq7jt2lpWrtNANbmcCl+kwMSbEgPV3tRANelChS9SYL7QOIrqgeUsX6uTt9KZCl+kwFSWlzJ/2lh+tVUD1aQzFb5IAVqYHKj2Cw1UkxQqfJECNLm+mpvGDtVhHelEhS9SoOKxKFsPnGLL/pNhR5EcocIXKVDzpo2loqyElXrlrSSp8EUK1LCqCv7sptE8u+EAZ85poJqo8EUKWnMsysmPz/HSNg1UExW+SEH79LU11A8bqMM6AqjwRQpaSYmxMKaBapKgwhcpcAtuSQxUe2qd3vO22KnwRQpcZHgVn7mulpUtrRqoVuRU+CJFIB6Lsv+Dj/ndHzRQrZip8EWKwN0XB6rp5G1RS6vwzWyWme0ws11m9ugV1t1vZm5msexFFJGrVVleyn3T63lx6yE+aD8bdhwJSa+Fb2alwBPAbKAReNDMGrtZNwT4T8Bb2Q4pIldvYSySGKi24UDYUSQk6TzCnwnscvfd7n4WeBKY1826vwe+DZzJYj4RyZKbxlYzuV4D1YpZOoVfD6T+hLQmt11iZjOAqLs/f6VvZGaLzKzFzFra2toyDisiV6c5FmXbQQ1UK1ZXfdLWzEqAfwT+tre17r7U3WPuHqurq7vamxaRDM2dWk9FWQkrdPK2KKVT+PuBaMrnkeS2i4YAk4HfmNn7wK3AKp24Fck91VXlzJ48mmfX79dAtSKUTuGvBSaa2QQzqwAeAFZdvNLdT7p7rbs3uHsDsAaY6+4t/ZJYRK5KPBbl1JkOXtx6KOwoErBeC9/dO4CvAS8C24EV7r7VzB43s7n9HVBEsutT19QQGT6QlS0atVBsytJZ5O6rgdVdtj3Ww9o7rj6WiPSXkhJj4S1RvvfyTvYdbyc6oirsSBIQvdJWpAgtiEUw00C1YqPCFylC9cMG8pnranlqXSvnNVCtaKjwRYpUc1NioNobu46GHUUCosIXKVJ3N45iWFW5npNfRFT4IkVqQFkp86fV89LWw5z4SAPVioEKX6SIxWNRzp6/wC827O99seQ9Fb5IEWscO5Qp9dUsb2nFXSdvC50KX6TIxZuibD94iq0HToUdRfqZCl+kyM2dOpYBZSUam1wEVPgiRa56YGKg2i82aKBaoVPhi4gGqhUJFb6IcOs1NURHDNRz8gucCl9ELg1Ue2PXMfYdbw87jvQTFb6IALDglsRAtZV6lF+wVPgiAsDYYQP504l1GqhWwFT4InJJcyzKgZNn+A8NVCtIKnwRueSuxpEM10C1gqXCF5FLBpSVMn96Pb/WQLWCpMIXkU6amxID1Z7VQLWCo8IXkU5uGD2UmyPVLF+7TwPVCowKX0QuE49FeefQabbs10C1QqLCF5HL3HtxoFrL3rCjSBap8EXkMtUDy5kzZQy/2HBAA9UKiApfRLq1MBbh9JkOfrVFA9UKhQpfRLp164Qaxo2o0pz8AqLCF5FuJQaqRXhz9zH2HtNAtUKgwheRHi2IRSgxWLlOj/ILQVqFb2azzGyHme0ys0e7uf6bZrbNzDaZ2StmNj77UUUkaGOqB3L7JA1UKxS9Fr6ZlQJPALOBRuBBM2vssmw9EHP3m4GngO9kO6iIhCMei3Lw5Bl++25b2FHkKqXzCH8msMvdd7v7WeBJYF7qAnd/zd0vHuRbA0SyG1NEwnLXjaMYMaiClS2tYUeRq5RO4dcDqQfwWpPbevII8EJ3V5jZIjNrMbOWtjY9WhDJBxVlJcyfVs9L2w5xXAPV8lpWT9qa2cNADPhud9e7+1J3j7l7rK6uLps3LSL9qLkpyrnzzrPrNVAtn6VT+PuBaMrnkeS2TszsLmAxMNfdP8lOPBHJBdePHsLUSDUrWjRQLZ+lU/hrgYlmNsHMKoAHgFWpC8xsOvB/SZT9kezHFJGwxZsSA9U2tZ4MO4r0Ua+F7+4dwNeAF4HtwAp332pmj5vZ3OSy7wKDgZVmtsHMVvXw7UQkT907dSyV5SV6N6w8VpbOIndfDazusu2xlMt3ZTmXiOSYoZXlzJk8hlUbDvCtexoZWFEadiTJkF5pKyJpizdFOf1JB7/aejDsKNIHKnwRSdufTBjB+BoNVMtXKnwRSZuZEY9FWbP7OHuOfRR2HMmQCl9EMnL/jORANb3yNu+o8EUkI6OrK/msBqrlJRW+iGQsHoty6NQZXtdAtbyiwheRjN15aaCaTt7mExW+iGSsoqyE+6bX8+tthzn2oSap5AsVvoj0STyWGKj2jAaq5Q0Vvoj0yfWjhzA1OkwD1fKICl9E+qw5FmXn4Q/ZqIFqeUGFLyJ9du/UMRqolkdU+CLSZ0Mqy5kzZQzPbTjAx2fPhx1HeqHCF5Gr0hxLDFR7YYsGquU6Fb6IXJWZE0bQoIFqeUGFLyJXxcxYGIvy1nvHef+oBqrlMhW+iFy1SwPV1ulRfi5T4YvIVRtdXckd14/kqXWtdJy/EHYc6YEKX0SyIh6LcPjUJ/z23aNhR5EeqPBFJCs+f8MoagZV6ORtDlPhi0hWXByo9vJ2DVTLVSp8Ecma5qYoHRc0UC1XqfBFJGsmjhrC9HHDWL5WA9VykQpfRLIqHovy7pEP2bDvg7CjSBcqfBHJqi/ePIaB5aWs0Juc5xwVvohk1aWBahsP0H62I+w4kkKFLyJZ19wU5cNPOnhh86Gwo0gKFb6IZF1Tw3Am1A5iuebk55S0Ct/MZpnZDjPbZWaPdnP9ADNbnrz+LTNryHbQwC1bBg0NUFKS+LhsWdiJRPKGmbGw9Chvv3ec92rqtQ/liF4L38xKgSeA2UAj8KCZNXZZ9ghwwt2vA74HfDvbQQO1bBksWgR79oB74uOiRfqBFUnXsmXc/z+/QcmF86ycfJf2oRyRziP8mcAud9/t7meBJ4F5XdbMA36cvPwUcKeZWfZiBmzxYmhv77ytvT2xXUR6t3gxo9r287nd63hq8p10WIn2oRyQTuHXA6kH4lqT27pd4+4dwEmgpus3MrNFZtZiZi1tbW19SxyEvXsz2y4inSX3lfimlzgypIbXJ8zotF3CEehJW3df6u4xd4/V1dUFedOZGTcus+0i0llyX/n8H9ZS+9EJlt/8hU7bJRzpFP5+IJryeSS5rds1ZlYGVAPHshEwFEuWQFVV521VVYntItK75D5UfuE8X9ryKq9cN5OjNaO1D4UsncJfC0w0swlmVgE8AKzqsmYV8OXk5QXAq57PgzQeegiWLoXx48Es8XHp0sR2Eeldyj4U3/wyHaVlPPOt/619KGSWTi+b2Rzg+0Ap8EN3X2JmjwMt7r7KzCqBnwDTgePAA+6++0rfMxaLeUtLy1X/BUQk933pn9/g9JkOXvrPt5PPz+fIBWa2zt1jffnasnQWuftqYHWXbY+lXD4DLOxLABEpfPFYlEd/vpn1+z5gxrjhYccpWnqlrYj0uy9OHcvA8lJW6pW3oVLhi0i/GzygjHtuHsNzGw9qoFqIVPgiEoiLA9We33Qw7ChFS4UvIoGIjR/ONbWDWKk5+aFR4YtIIMyMhbEob79/nN1tH4Ydpyip8EUkMPfPqKe0xFi5To/yw6DCF5HAjBxayeeur+Ppda10nL8Qdpyio8IXkUAtjEU5cvoT/n1nDg9QLFAqfBEJ1OdvGEnt4AqWr9Vz8oOmwheRQJWXlvClGRFefecIbac/CTtOUVHhi0jg4rEIHRecZ9br5G2QVPgiErjrRg5hxrhhLF+7j3werJtv0pqW2S83bHYa2BHKjWemFjgadog0KGf25ENGUM5sy5ec17v7kL58YVrTMvvJjr6O+AySmbUoZ/bkQ858yAjKmW35lLOvX6tDOiIiRUKFLyJSJMIs/KUh3nYmlDO78iFnPmQE5cy2gs8Z2klbEREJlg7piIgUCRW+iEiRCKzwzWyEmf3azN5NfrzsnYzNbJqZvWlmW81sk5k1B5hvlpntMLNdZvZoN9cPMLPlyevfMrOGoLJlkPGbZrYted+9Ymbjg86YTs6UdfebmZtZKE+FSyenmcWT9+lWM/tp0BmTGXr7dx9nZq+Z2frkv/2cEDL+0MyOmNmWHq43M/un5N9hk5nNCDpjMkdvOR9K5ttsZr8zs6lBZ0zmuGLOlHVNZtZhZgvS+sbuHsgf4DvAo8nLjwLf7mbNJGBi8vJY4CAwLIBspcAfgGuACmAj0NhlzV8D/5q8/ACwPKj7LoOMnwOqkpf/KuiM6eZMrhsCvA6sAWK5mBOYCKwHhic/H5mjOZcCf5W83Ai8H0LO24EZwJYerp8DvAAYcCvwVtAZ08z56ZR/79m5mjPlZ+NVYDWwIJ3vG+QhnXnAj5OXfwzM77rA3Xe6+7vJyweAI0BdANlmArvcfbe7nwWeTOZNlZr/KeBOM7MAsqWd0d1fc/f25KdrgEiA+S5K574E+Hvg28CZIMOlSCfnV4En3P0EgLsfCTgjpJfTgaHJy9XAgQDzJQK4vw4cv8KSecC/ecIaYJiZjQkm3R/1ltPdf3fx35vw9qF07k+ArwNPk+jJtARZ+KPc/eK7Fx8CRl1psZnNJPGI5g/9HQyoB1JntbYmt3W7xt07gJNATQDZLrv9pO4ypnqExCOqoPWaM/nf+ai7Px9ksC7SuT8nAZPM7A0zW2NmswJL90fp5Pw74GEzayXxaO/rwUTLSKY/v7kgrH2oV2ZWD9wH/EsmX5fV0Qpm9jIwupurFqd+4u5uZj0+HzT5m/8nwJfdXW+LkyEzexiIAZ8NO0tXZlYC/CPwlZCjpKOMxGGdO0g80nvdzKa4+wehprrcg8CP3P0fzOxTwE/MbLL2nb4zs8+RKPzPhJ2lB98H/qu7X8jkQENWC9/d7+rpOjM7bGZj3P1gstC7/W+ImQ0FngcWJ//rF4T9QDTl80hyW3drWs2sjMR/nY8FE6/T7V/UXUbM7C4Sv2A/6+5hDBvvLecQYDLwm+QP6mhglZnNdfc+zwjpg3Tuz1YSx3DPAe+Z2U4SvwDWBhMRSC/nI8AsAHd/08wqSQwCC+MQVE/S+vnNBWZ2M/ADYLa7B7mPZyIGPJnch2qBOWbW4e7PXvGrAjwJ8V06n7T9TjdrKoBXgG8EfIKkDNgNTOCPJ8Zu6rLmb+h80nZFDmacTuIQ2MQgs2Was8v63xDOSdt07s9ZwI+Tl2tJHJKoycGcLwBfSV6+kcQxfAvhPm2g55Oh99D5pO3bQedLM+c4YBfw6bDypZOzy7ofkeZJ2yDD1yTL/F3gZWBEcnsM+EHy8sPAOWBDyp9pAeWbA+xMFubi5LbHgbnJy5XAyuQPw9vANSH8APSW8WXgcMp9tyrojOnk7LI2lMJP8/40EoeftgGbgQdyNGcj8Ebyl8EG4AshZPwZiWfVnSPxP6NHgL8E/jLlvnwi+XfYHOK/eW85fwCcSNmHWnIxZ5e1aRe+RiuIiBQJvdJWRKRIqPBFRIqECl9EpEio8EVEioQKX0SkSKjwRUSKhApfRKRI/H+H7knelrCepQAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "ZV0-7iZQ528E", "colab_type": "code", "colab": {} }, "source": [ "# We will create another example with linearly separable data sets, which need a bias node to be separable. We will use the make_blobs function from sklearn.datasets:\n", "\n", "from sklearn.datasets import make_blobs\n", "\n", "n_samples = 250\n", "samples, labels = make_blobs(n_samples=n_samples, \n", " centers=([2.5, 3], [6.7, 7.9]), \n", " random_state=0)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "jLTKWsCg528F", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "612427ee-3944-4987-8d28-825e5a1e8925" }, "source": [ "# Let us visualize the previously created data:\n", "\n", "import matplotlib.pyplot as plt\n", "\n", "colours = ('green', 'magenta', 'blue', 'cyan', 'yellow', 'red')\n", "fig, ax = plt.subplots()\n", "\n", "\n", "for n_class in range(2):\n", " ax.scatter(samples[labels==n_class][:, 0], samples[labels==n_class][:, 1], \n", " c=colours[n_class], s=40, label=str(n_class))" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "qWU919oS528G", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "d823df60-d521-4373-9da4-77a1a4a441f0" }, "source": [ "n_learn_data = int(n_samples * 0.8) # 80 % of available data points\n", "learn_data, test_data = samples[:n_learn_data], samples[-n_learn_data:]\n", "learn_labels, test_labels = labels[:n_learn_data], labels[-n_learn_data:]\n", "\n", "#from perceptrons import Perceptron\n", "\n", "p = Perceptron(weights=[0.3, 0.3, 0.3], learning_rate=0.8)\n", "\n", "for sample, label in zip(learn_data, learn_labels):\n", " p.adjust(label,sample)\n", "\n", "evaluation = p.evaluate(learn_data, learn_labels)\n", "print(evaluation)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Counter({'correct': 200})\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "PaTVPStL528H", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 282 }, "outputId": "0fa3e785-97d7-4bc7-9695-c477dc1cc40f" }, "source": [ "# Let us visualize the decision boundary:\n", "import matplotlib.pyplot as plt\n", "fig, ax = plt.subplots()\n", "\n", "# plotting learn data\n", "colours = ('green', 'blue')\n", "for n_class in range(2):\n", " ax.scatter(learn_data[learn_labels==n_class][:, 0], \n", " learn_data[learn_labels==n_class][:, 1], \n", " c=colours[n_class], s=40, label=str(n_class))\n", " \n", "# plotting test data\n", "colours = ('lightgreen', 'lightblue')\n", "for n_class in range(2):\n", " ax.scatter(test_data[test_labels==n_class][:, 0], \n", " test_data[test_labels==n_class][:, 1], \n", " c=colours[n_class], s=40, label=str(n_class))\n", "\n", "\n", " \n", "X = np.arange(np.max(samples[:,0]))\n", "m = -p.weights[0] / p.weights[1]\n", "c = -p.weights[2] / p.weights[1]\n", "print(m, c)\n", "ax.plot(X, m * X + c )\n", "plt.plot()\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "-1.5513529034664024 11.736643489707035\n" ], "name": "stdout" }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "BFQm1Gpq528J", "colab_type": "code", "colab": {} }, "source": [ "# In the following section, we will introduce the XOR problem for neural networks. It is the simplest example of a non linearly separable neural network. It can be solved with an additional layer of neurons, which is called a hidden layer.\n", "\n", "# The XOR Problem for Neural Networks\n", "\n", "#The XOR (exclusive or) function is defined by the following truth table:\n", "\n", "# Input1\tInput2\tXOR Output\n", "0\t0\t0\n", "0\t1\t1\n", "1\t0\t1\n", "1\t1\t0\n", "\n", "#This problem can't be solved with a simple neural network, as we can see in the following diagram:\n" ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "YFGFbFXcfDCM", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/xor_problem_1.png)\n" ] }, { "cell_type": "markdown", "metadata": { "id": "r4vUW94FfMRi", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/xor_problem_2.png)\n" ] }, { "cell_type": "code", "metadata": { "id": "9ParPBRL528K", "colab_type": "code", "colab": {} }, "source": [ "# To solve this problem, we need to introduce a new type of neural networks, a network with so-called hidden layers. A hidden layer allows the network to reorganize or rearrange the input data.\n" ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "Vgy3KXj8fW0R", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/simple_ANN_with_hidden_layer.png)\n" ] }, { "cell_type": "code", "metadata": { "id": "IQR4Fb-GfOij", "colab_type": "code", "colab": {} }, "source": [ "# We will need only one hidden layer with two neurons. One works like an AND gate and the other one like an OR gate. The output will \"fire\", when the OR gate fires and the AND gate doesn't.\n", "# As we had already mentioned, we cannot find a line which separates the orange points from the blue points. But they can be separated by two lines, e.g. L1 and L2 in the following diagram:" ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "8uc4T2CyfkLh", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/xor_problem_3.png)\n" ] }, { "cell_type": "markdown", "metadata": { "id": "xrq8FrsZfu5U", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/xor_problem_solution1.png)\n" ] }, { "cell_type": "markdown", "metadata": { "id": "yL7SzYiLf37e", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/xor_problem_solution2.png)\n" ] }, { "cell_type": "code", "metadata": { "id": "LqQbikMjfOnc", "colab_type": "code", "colab": {} }, "source": [ "# We could extend the logical AND to float values between 0 and 1 in the following way:\n", "\n", "Input1\tInput2\tOutput\n", "x1 < 0.5\tx2 < 0.5\t0\n", "x1 < 0.5\tx2 >= 0.5\t0\n", "x1 >= 0.5\tx2 < 0.5\t0\n", "x1 >= 0.5\tx2 >= 0.5\t0\n", "\n", "#Try to train a neural network with only one perceptron. Why doesn't it work?\n", "\n", "#A point belongs to a class 0, if x1<0.5 and belongs to class 1, if x1>=0.5. Train a network with one perceptron to classify arbitrary points. What can you say about the dicision boundary? What about the input values x2" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "Rprb3ZbCfOr4", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "a6fbdd82-1de0-4c57-e498-0776398d55be" }, "source": [ "#from perceptrons import Perceptron\n", "\n", "p = Perceptron(weights=[0.3, 0.3, 0.3],\n", " bias=1,\n", " learning_rate=0.2)\n", "\n", "def labelled_samples(n):\n", " for _ in range(n):\n", " s = np.random.random((2,))\n", " yield (s, 1) if s[0] >= 0.5 and s[1] >= 0.5 else (s, 0)\n", "\n", "for in_data, label in labelled_samples(30):\n", " p.adjust(label, \n", " in_data)\n", "\n", "test_data, test_labels = list(zip(*labelled_samples(60)))\n", "\n", "evaluation = p.evaluate(test_data, test_labels)\n", "print(evaluation)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Counter({'correct': 56, 'wrong': 4})\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "2sBmHKK1fOqX", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 282 }, "outputId": "a571486c-b89e-4ff0-a43d-8e540d4afa1b" }, "source": [ "# The easiest way to see, why it doesn't work, is to visualize the data.\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "ones = [test_data[i] for i in range(len(test_data)) if test_labels[i] == 1]\n", "zeroes = [test_data[i] for i in range(len(test_data)) if test_labels[i] == 0]\n", "\n", "fig, ax = plt.subplots()\n", "xmin, xmax = -0.2, 1.2\n", "X, Y = list(zip(*ones))\n", "ax.scatter(X, Y, color=\"g\")\n", "X, Y = list(zip(*zeroes))\n", "ax.scatter(X, Y, color=\"r\")\n", "ax.set_xlim([xmin, xmax])\n", "ax.set_ylim([-0.1, 1.1])\n", "c = -p.weights[2] / p.weights[1]\n", "m = -p.weights[0] / p.weights[1]\n", "X = np.arange(xmin, xmax, 0.1)\n", "ax.plot(X, m * X + c, label=\"decision boundary\")" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": { "tags": [] }, "execution_count": 28 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "gRz3b-xofOmH", "colab_type": "code", "colab": {} }, "source": [ "# We can see that the green points and the red points are not separable by one straight line." ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "S9pP2QchfOg0", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "0568806b-89a3-4610-ad8e-7cd2bf7460ef" }, "source": [ "import numpy as np\n", "from collections import Counter\n", "\n", "def labelled_samples(n):\n", " for _ in range(n):\n", " s = np.random.random((2,))\n", " yield (s, 0) if s[0] < 0.5 else (s, 1)\n", "\n", "\n", "p = Perceptron(weights=[0.3, 0.3, 0.3],\n", " learning_rate=0.4)\n", "\n", "for in_data, label in labelled_samples(300):\n", " p.adjust(label, \n", " in_data)\n", "\n", "test_data, test_labels = list(zip(*labelled_samples(500)))\n", "\n", "print(p.weights)\n", "p.evaluate(test_data, test_labels)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[ 1.84372572 -0.32977169 -0.9 ]\n" ], "name": "stdout" }, { "output_type": "execute_result", "data": { "text/plain": [ "Counter({'correct': 453, 'wrong': 47})" ] }, "metadata": { "tags": [] }, "execution_count": 29 } ] }, { "cell_type": "code", "metadata": { "id": "RSB4opmj528L", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 282 }, "outputId": "5ded577c-bb13-4e21-e8aa-5a6cd1ec0f30" }, "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "ones = [test_data[i] for i in range(len(test_data)) if test_labels[i] == 1]\n", "zeroes = [test_data[i] for i in range(len(test_data)) if test_labels[i] == 0]\n", "\n", "fig, ax = plt.subplots()\n", "xmin, xmax = -0.2, 1.2\n", "X, Y = list(zip(*ones))\n", "ax.scatter(X, Y, color=\"g\")\n", "X, Y = list(zip(*zeroes))\n", "ax.scatter(X, Y, color=\"r\")\n", "ax.set_xlim([xmin, xmax])\n", "ax.set_ylim([-0.1, 1.1])\n", "c = -p.weights[2] / p.weights[1]\n", "m = -p.weights[0] / p.weights[1]\n", "X = np.arange(xmin, xmax, 0.1)\n", "ax.plot(X, m * X + c, label=\"decision boundary\")" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": { "tags": [] }, "execution_count": 30 }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "6a-JkTuw528M", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "c91893a3-4df3-465d-c0e6-d651821380e0" }, "source": [ "p.weights, m\n", "\n", "#The slope m will have to get larger and larger in situations like this." ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(array([ 1.84372572, -0.32977169, -0.9 ]), 5.590915703160016)" ] }, "metadata": { "tags": [] }, "execution_count": 31 } ] }, { "cell_type": "markdown", "metadata": { "id": "vy4FUAHhh5A_", "colab_type": "text" }, "source": [ "#### Structure, weights and matrices" ] }, { "cell_type": "markdown", "metadata": { "id": "LeIaQ0Ich1LW", "colab_type": "text" }, "source": [ "We introduced the basic ideas about neural networks in the previous chapter of our machine learning tutorial.\n", "\n", "We have pointed out the similarity between neurons and neural networks in biology. We also introduced very small articial neural networks and introduced decision boundaries and the XOR problem.\n", "\n", "In the simple examples we introduced so far, we saw that the weights are the essential parts of a neural network. Before we start to write a neural network with multiple layers, we need to have a closer look at the weights.\n", "\n", "We have to see how to initialize the weights and how to efficiently multiply the weights with the input values.\n", "\n", "In the following chapters we will design a neural network in Python, which consists of three layers, i.e. the input layer, a hidden layer and an output layer. You can see this neural network structure in the following diagram. We have an input layer with three nodes i1,i2,i3 These nodes get the corresponding input values x1,x2,x3. The middle or hidden layer has four nodes h1,h2,h3,h4. The input of this layer stems from the input layer. We will discuss the mechanism soon. Finally, our output layer consists of the two nodes o1,o2\n", "The input layer is different from the other layers. The nodes of the input layer are passive. This means that the input neurons do not change the data, i.e. there are no weights used in this case. They receive a single value and duplicate this value to their many outputs." ] }, { "cell_type": "markdown", "metadata": { "id": "YREnNBtFiIXR", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/example_network_3_4_2_without_bias.png)" ] }, { "cell_type": "code", "metadata": { "id": "XzFKQKFPg932", "colab_type": "code", "colab": {} }, "source": [ "# The input layer consists of the nodes i1, i2 and i3. In principle the input is a one-dimensional vector, like (2, 4, 11). A one-dimensional vector is represented in numpy like this:\n", "\n", "import numpy as np\n", "input_vector = np.array([2, 4, 11])\n", "print(input_vector)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "Y3j4NrICh7o-", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 85 }, "outputId": "2e3c59fc-08ca-40be-f6be-144936a1004a" }, "source": [ "# In the algorithm, which we will write later, we will have to transpose it into a column vector, i.e. a two-dimensional array with just one column:\n", "\n", "import numpy as np\n", "\n", "input_vector = np.array([2, 4, 11])\n", "input_vector = np.array(input_vector, ndmin=2).T\n", "print(\"The input vector:\\n\", input_vector)\n" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "The input vector:\n", " [[ 2]\n", " [ 4]\n", " [11]]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "6lj3jaenh7yr", "colab_type": "code", "colab": {} }, "source": [ "### Weights and matrices\n", "\n", "# Each of the arrows in our network diagram has an associated weight value. We will only look at the arrows between the input and the output layer now." ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "BG0IBNsfkwy4", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/weights_input2hidden_example_values.png)" ] }, { "cell_type": "code", "metadata": { "id": "ifG-xvMrh77y", "colab_type": "code", "colab": {} }, "source": [ "# The value x1 going into the node i1 will be distributed according to the values of the weights. In the following diagram we have added some example values. Using these values, the input values (Ih1,Ih2,Ih3,Ih4 into the nodes (h1,h2,h3,h4) of the hidden layer can be calculated like this:\n", "\n", "Ih1=0.81∗0.5+0.12∗1+0.92∗0.8\n", "Ih2=0.33∗0.5+0.44∗1+0.72∗0.8\n", "Ih3=0.29∗0.5+0.22∗1+0.53∗0.8\n", "Ih4=0.37∗0.5+0.12∗1+0.27∗0.8\n", "\n", "# Those familiar with matrices and matrix multiplication will see where it is boiling down to. We will redraw our network and denote the weights with wij:" ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "Bt5NRvYWucQK", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/weights_input2hidden_1.png)" ] }, { "cell_type": "markdown", "metadata": { "id": "mT1ZNpZsu0xP", "colab_type": "text" }, "source": [ "\n", "In order to efficiently execute all the necessary calaculations, we will arrange the weights into a weight matrix. The weights in our diagram above build an array, which we will call 'weights_in_hidden' in our Neural Network class. The name should indicate that the weights are connecting the input and the hidden nodes, i.e. they are between the input and the hidden layer. We will also abbreviate the name as 'wih'. The weight matrix between the hidden and the output layer will be denoted as \"who\".:" ] }, { "cell_type": "markdown", "metadata": { "id": "ufeFUo_nu3uz", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/weight_matrix_input.png)\n", "\n", "![](https://www.python-course.eu/images/weight_matrix_hidden.png)\n", "\n", "\n", "\n", "Now that we have defined our weight matrices, we have to take the next step. We have to multiply the matrix wih the input vector. \n", "\n", "\n", "\n", "You might have noticed that something is missing in our previous calculations. We showed in our introductory chapter Neural Networks from Scratch in Python that we have to apply an activation or step function Φ on each of these sums.\n", "\n", "The following picture depicts the whole flow of calculation, i.e. the matrix multiplication and the succeeding application of the activation function.\n", "The matrix multiplication between the matrix wih and the matrix of the values of the input nodes x1,x2,x3 calculates the output which will be passed to the activation function.\n", "\n", "\n", "![](https://www.python-course.eu/images/weights_input2hidden.png)\n", "\n", "\n", "The final output y1,y2,y3,y4 is the input of the weight matrix who:\n", "\n", "Even though treatment is completely analogue, we will also have a detailled look at what is going on between our hidden layer and the output layer:\n", "\n", "\n", "![](https://www.python-course.eu/images/weights_hidden2output.png)" ] }, { "cell_type": "markdown", "metadata": { "id": "iog3cjwYxuVl", "colab_type": "text" }, "source": [ "#### Initializing the weight matrices\n", "\n", "One of the important choices which have to be made before training a neural network consists in initializing the weight matrices. We don't know anything about the possible weights, when we start. So, we could start with arbitrary values?\n", "As we have seen the input to all the nodes except the input nodes is calculated by applying the activation function to the following sum:\n", "\n", "As we have seen the input to all the nodes except the input nodes is calculated by applying the activation function to the following sum:\n", "\n", "yj=∑i=1nwji⋅xi\n", "(with n being the number of nodes in the previous layer and yj is the input to a node of the next layer)\n", "\n", "We can easily see that it would not be a good idea to set all the weight values to 0, because in this case the result of this summation will always be zero. This means that our network will be incapable of learning. This is the worst choice, but initializing a weight matrix to ones is also a bad choice.\n", "\n", "The values for the weight matrices should be chosen randomly and not arbitrarily. By choosing a random normal distribution we have broken possible symmetric situations, which can and often are bad for the learning process.\n", "\n", "There are various ways to initialize the weight matrices randomly. The first one we will introduce is the unity function from numpy.random. It creates samples which are uniformly distributed over the half-open interval [low, high), which means that low is included and high is excluded. Each value within the given interval is equally likely to be drawn by 'uniform'." ] }, { "cell_type": "code", "metadata": { "id": "6WHKIt5qh74X", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "bd33f5ef-e666-4eed-9d25-a5da70e04435" }, "source": [ "import numpy as np\n", "\n", "number_of_samples = 1200\n", "low = -1\n", "high = 0\n", "s = np.random.uniform(low, high, number_of_samples)\n", "\n", "# all values of s are within the half open interval [-1, 0) :\n", "print(np.all(s >= -1) and np.all(s < 0))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "True\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "oeOOKJinh72h", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "0385d602-19c6-4e77-d00c-1fc56cb7e7f5" }, "source": [ "# The histogram of the samples, created with the uniform function in our previous example, looks like this:\n", "\n", "import matplotlib.pyplot as plt\n", "plt.hist(s)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "5N5D0KvZh7xJ", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "e38bef57-8045-409e-962a-cabba2eea21d" }, "source": [ "# The next function we will look at is 'binomial' from numpy.binomial:\n", "\n", "# binomial(n, p, size=None)\n", "\n", "# It draws samples from a binomial distribution with specified parameters, n trials and probability p of success where n is an integer >= 0 and p is a float in the interval [0,1]. (n may be input as a float, but it is truncated to an integer in use)\n", "\n", "s = np.random.binomial(100, 0.5, 1200)\n", "plt.hist(s)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "kxGhj_Aah7uM", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "cc79c96d-4f97-4d03-f29e-7dd84541de42" }, "source": [ "#We like to create random numbers with a normal distribution, but the numbers have to be bounded. This is not the case with np.random.normal(), because it doesn't offer any bound parameter.\n", "#We can use truncnorm from scipy.stats for this purpose.\n", "#The standard form of this distribution is a standard normal truncated to the range [a, b] — notice that a and b are defined over the domain of the standard normal. To convert clip values for a specific mean and standard deviation, use:\n", "\n", "#a, b = (myclip_a - my_mean) / my_std, (myclip_b - my_mean) / my_std\n", "\n", "from scipy.stats import truncnorm\n", "\n", "s = truncnorm(a=-2/3., b=2/3., scale=1, loc=0).rvs(size=1000)\n", "\n", "plt.hist(s)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "JEPVLZdAh7sY", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "8ccab6c9-2123-4cdf-d05a-d270ca9eac64" }, "source": [ "# The function 'truncnorm' is difficult to use. To make life easier, we define a function truncated_normal in the following to fascilitate this task:\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", "\n", "X = truncated_normal(mean=0, sd=0.4, low=-0.5, upp=0.5)\n", "s = X.rvs(10000)\n", "\n", "plt.hist(s)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "AtxVLOF-h7m4", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "dd0fba65-45c6-4a12-a888-88d55697a72f" }, "source": [ "X1 = truncated_normal(mean=2, sd=1, low=1, upp=10)\n", "X2 = truncated_normal(mean=5.5, sd=1, low=1, upp=10)\n", "X3 = truncated_normal(mean=8, sd=1, low=1, upp=10)\n", "\n", "import matplotlib.pyplot as plt\n", "fig, ax = plt.subplots(3, sharex=True)\n", "ax[0].hist(X1.rvs(10000), density=True)\n", "ax[1].hist(X2.rvs(10000), density=True)\n", "ax[2].hist(X3.rvs(10000), density=True)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "usQzkefYg99D", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 85 }, "outputId": "48cb8252-4bb6-4726-b6e8-12fc139b8867" }, "source": [ "# We will create the link weights matrix now. truncated_normal is ideal for this purpose. It is a good idea to choose random values from within the interval\n", "#(−1n−−√,1n−−√)\n", "\n", "#where n denotes the number of input nodes.\n", "#So we can create our \"wih\" matrix with:\n", "\n", "no_of_input_nodes = 3\n", "no_of_hidden_nodes = 4\n", "rad = 1 / np.sqrt(no_of_input_nodes)\n", "\n", "X = truncated_normal(mean=2, sd=1, low=-rad, upp=rad)\n", "wih = X.rvs((no_of_hidden_nodes, no_of_input_nodes))\n", "wih" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[-0.55112178, 0.57346199, 0.50551326],\n", " [ 0.53854 , -0.01347012, -0.24251467],\n", " [ 0.55745045, 0.55101259, 0.09515262],\n", " [ 0.54143718, 0.17447115, 0.21492893]])" ] }, "metadata": { "tags": [] }, "execution_count": 42 } ] }, { "cell_type": "code", "metadata": { "id": "xy-ea-Shg97S", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "019e8bbe-3b01-4e68-f2a0-78cb82129bf2" }, "source": [ "# Similarly, we can now define the \"who\" weight matrix:\n", "\n", "no_of_hidden_nodes = 4\n", "no_of_output_nodes = 2\n", "rad = 1 / np.sqrt(no_of_hidden_nodes) # this is the input in this layer!\n", "\n", "X = truncated_normal(mean=2, sd=1, low=-rad, upp=rad)\n", "who = X.rvs((no_of_output_nodes, no_of_hidden_nodes))\n", "who" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[-0.17817573, 0.3269819 , 0.22092318, 0.44145631],\n", " [-0.31995317, 0.09779239, -0.28801483, 0.19439632]])" ] }, "metadata": { "tags": [] }, "execution_count": 43 } ] }, { "cell_type": "markdown", "metadata": { "id": "LX4AuUX6qmyH", "colab_type": "text" }, "source": [ "### Running a Neural Network with Python\n", "\n", "\n", "\n", "We learned in the previous chapter of our tutorial on neural networks the most important facts about weights. We saw how they are used and how we can implement them in Python. We saw that the multiplication of the weights with the input values can be accomplished with arrays from Numpy by applying matrix multiplication.\n", "\n", "However, what we hadn't done was to test them in a real neural network environment. We have to create this environment first. We will now create a class in Python, implementing a neural network. We will proceed in small steps so that everything is easy to understand.\n", "\n", "The most essential methods our class needs are:\n", "\n", "__init__ to initialize a class, i.e. we will set the number of neurons for every layer and initialize the weight matrices.\n", "run: A method which is applied to a sample, which which we want to classify. It applies this sample to the neural network. We could say, we 'run' the network to 'predict' the result. This method is in other implementations often known as predict.\n", "train: This method gets a sample and the corresponding target value as an input. With this input it can adjust the weight values if necessary. This means the network learns from an input. Seen from the user point of view, we 'train' the network. In sklearn for example, this method is called fit\n", "We will postpone the definition of the train and run method until later. The weight matrices should be initialized inside of the __init__ method. We do this indirectly. We define a method create_weight_matrices and call it in __init__. In this way, the init method remains clear.\n", "\n", "We will also postpone adding bias nodes to the layers.\n", "\n", "The following Python code contains an implementation of a neural network class applying the knowledge we worked out in the previous chapter:\n", "---\n", "\n" ] }, { "cell_type": "code", "metadata": { "id": "pM92G_icg92B", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate):\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes \n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.learning_rate = learning_rate \n", " self.create_weight_matrices()\n", "\n", " \n", " def create_weight_matrices(self):\n", " rad = 1 / np.sqrt(self.no_of_in_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_in_hidden = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_hidden_out = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes))\n", " \n", "\n", " def train(self):\n", " pass\n", " \n", " def run(self):\n", " pass " ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "YWgU7BN1rtl5", "colab_type": "text" }, "source": [ "We cannot do a lot with this code, but we can at least initialize it. We can also have a look at the weight matrices:" ] }, { "cell_type": "code", "metadata": { "id": "tBLjRveyrKBz", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 119 }, "outputId": "c4b9e639-06fa-4563-db8e-2331a364e7a9" }, "source": [ "simple_network = NeuralNetwork(no_of_in_nodes = 3, \n", " no_of_out_nodes = 2, \n", " no_of_hidden_nodes = 4,\n", " learning_rate = 0.1)\n", "print(simple_network.weights_in_hidden)\n", "print(simple_network.weights_hidden_out)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[[ 0.16379186 0.06011313 -0.15302571]\n", " [ 0.45475017 -0.31724778 0.30797774]\n", " [ 0.28319144 0.04135061 -0.25525429]\n", " [-0.05891287 -0.23247173 0.41167064]]\n", "[[-0.38672941 0.31728956 0.28547084 -0.4301142 ]\n", " [-0.31227695 -0.21348151 -0.27381275 -0.03849596]]\n" ], "name": "stdout" } ] }, { "cell_type": "markdown", "metadata": { "id": "Os563BnQsGRK", "colab_type": "text" }, "source": [ "Activation Functions, Sigmoid and ReLU\n", "\n", "Before we can program the run method, we have to deal with the activation function. We had the following diagram in the introductory chapter on neural networks:\n", "\n", "![](https://www.python-course.eu/images/neuron_neural_network_detailled_view.png)" ] }, { "cell_type": "code", "metadata": { "id": "KSr2ULsxrJ_K", "colab_type": "code", "colab": {} }, "source": [ "The input values of a perceptron are processed by the summation function and followed by an activation function, transforming the output of the summation function into a desired and more suitable output. The summation function means that we will have a matrix multiplication of the weight vectors and the input values.\n", "\n", "There are lots of different activation functions used in neural networks. One of the most comprehensive overviews of possible activation functions can be found at Wikipedia.\n", "\n", "The sigmoid function is one of the often used activation functions. The sigmoid function, which we are using, is also known as the Logistic function.\n", "\n", "It is defined as\n", "σ(x)=11+e−x" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "RLW11_XErJ8c", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 295 }, "outputId": "b5742f8b-6360-4cf0-87a3-ffa094e4d529" }, "source": [ "# let us have a look at the graph of the sigmoid function. We use matplotlib to plot the sigmoid function:\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "def sigma(x):\n", " return 1 / (1 + np.exp(-x))\n", "\n", "X = np.linspace(-5, 5, 100)\n", "\n", "\n", "plt.plot(X, sigma(X),'b')\n", "plt.xlabel('X Axis')\n", "plt.ylabel('Y Axis')\n", "plt.title('Sigmoid Function')\n", "\n", "plt.grid()\n", "\n", "plt.text(2.3, 0.84, r'$\\sigma(x)=\\frac{1}{1+e^{-x}}$', fontsize=16)\n", "\n", "\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "KVQfqFiGrJ6N", "colab_type": "code", "colab": {} }, "source": [ "#Looking at the graph, we can see that the sigmoid function maps a given number x into the range of numbers between 0 and 1. 0 and 1 not included! As the value of x gets larger, the value of the sigmoid function gets closer and closer to 1 and as x gets smaller, the value of the sigmoid function is approaching 0.\n", "#Instead of defining the sigmoid function ourselves, we can also use the expit function from scipy.special, which is an implementation of the sigmoid function. It can be applied on various data classes like int, float, list, numpy,ndarray and so on. The result is an ndarray of the same shape as the input data x.\n", "\n", "from scipy.special import expit\n", "print(expit(3.4))\n", "print(expit([3, 4, 1]))\n", "print(expit(np.array([0.8, 2.3, 8])))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "FRG3yfatrJ4F", "colab_type": "code", "colab": {} }, "source": [ "# The logistic function is often often used in neural networks to introduce nonlinearity in the model and to map signals into a specified range, i.e. 0 and 1. It is also well liked because the derivative - needed in backpropagation - is simple.\n", "\n", "σ(x)=11+e−x\n", "\n", "and its derivative:\n", "\n", "σ′(x)=σ(x)(1−σ(x))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "SPM_dj5ArJ1c", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 295 }, "outputId": "46b97c8c-1686-4a2e-f4c0-e2b1c0b054d3" }, "source": [ "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "def sigma(x):\n", " return 1 / (1 + np.exp(-x))\n", "\n", "X = np.linspace(-5, 5, 100)\n", "\n", "plt.plot(X, sigma(X))\n", "plt.plot(X, sigma(X) * (1 - sigma(X)))\n", "\n", "plt.xlabel('X Axis')\n", "plt.ylabel('Y Axis')\n", "plt.title('Sigmoid Function')\n", "\n", "plt.grid()\n", "\n", "plt.text(2.3, 0.84, r'$\\sigma(x)=\\frac{1}{1+e^{-x}}$', fontsize=16)\n", "plt.text(0.3, 0.1, r'$\\sigma\\'(x) = \\sigma(x)(1 - \\sigma(x))$', fontsize=16)\n", "\n", "\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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qfuZO3cut956K/379+eXX35h9erVpZZLTU0lOjq6zHjmz59PYGDgKZcLLrjghG0HDx58Qid3TVwqwq4IjDGl+t+KJB7+fA3N6ofw0c39aF+J5wLq1XOGl9648fimpJdeeolDhw5x6623HlvXqVMn8vLySEpKIjY29tj6FStWMGLECMaOHcv48ePp0KEDjzzyCDNnzjzheImJifTt27fMeCrTNDRv3jzi4uJOuW11yMzM5NJLL2Xu3Lk8+uij9OjRgyuvvLLC+7FEYIw5TlGRMn7OZl79MYH+baJ4Y1RP6oVWboiI9u3b06NHD15++WViYmJo27YtM2bM4I033uDVV1+lW7dux8qed955ACxZsuRYIkhISGD48OEMHTqUV199FT8/P5588klGjx7NTz/9dGwbgLS0NDZv3sz9999fZjwREREVfkahJgoLCyMuLo7bb7+dqKio00oCYE1Dxphi8gqKuPeTVbz6YwJX927O+6P7VjoJgNPW/uWXX3L++efz4IMPMmLECFavXs1XX311Qjt/q1at6Nu3L19//TUA+/btY+jQoXTu3JkPP/wQPz/nY+uGG26gU6dOPPzww8dtP3PmTIKCghgxYkSl4y5LdY8empiYSFxc3HHLnXfeCcDZZ5/NV199xdNPP33a+7crAmMMAJm5Bdz24Qp+2pzMA3/syO1xbau0s7RFixbMmDGjXGVvu+027r77biZNmkTjxo3Ztm3bCWX8/f3ZsGHDCeunTZvGlVdeSVTUqZ9tOF2nM3poXFwc7733Hq1atarw8Vq3bk18fPwJ6/fu3cu///1vRowYwYIFCxg0aFCF9w12RWCMwRk2+tq3f+XnLcm8dHlXxg1u59E7ZkaNGkXTpk15/fXXK7TdqlWr+PHHH3nyySfdFJmjX79+tGnTpkr3eeTIEe666y4GDBhA586dGTNmDAUFBWWWz8vL45ZbbmHSpEk8+uijlRpWwxKBMT7uwJEcrn5rERv3Huat63tzdZ8Wng6JgIAApk6dSmhoaIW227dvH++99x7t2rVzU2Tuc80113DBBRewcOFC1q9fz4EDB07a7BQUFMTXX39Nq1ataNq06bGmtNNhTUPG+LB96TlcO2Ux+w7n8N5Nfcs1VER16devX4XH7R82bJibojk9V199NZs2bQKcDu8LL7zw2INyH3/8MR07dgSc21kXLFhAUlLS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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "Qcn22kGdrJyZ", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "2ed71d97-5d6b-4437-8830-ec33aaad1d77" }, "source": [ "# We can also define our own sigmoid function with the decorator vectorize from numpy:\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "\n", "#sigmoid = np.vectorize(sigmoid)\n", "sigmoid([3, 4, 5])" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([0.95257413, 0.98201379, 0.99330715])" ] }, "metadata": { "tags": [] }, "execution_count": 6 } ] }, { "cell_type": "markdown", "metadata": { "id": "OjmBIlG9tzam", "colab_type": "text" }, "source": [ "Another easy to use activation function is the ReLU function. ReLU stands for rectified linear unit. It is also known as the ramp function. It is defined as the positve part of its argument, i.e. y=max(0,x). This is \"currently, the most successful and widely-used activation function is the Rectified Linear Unit (ReLU)\"1 The ReLu function is computationally more efficient than Sigmoid like functions, because Relu means only choosing the maximum between 0 and the argument x. Whereas Sigmoids need to perform expensive exponential operations.\n" ] }, { "cell_type": "code", "metadata": { "id": "ZS6yjoPerJwN", "colab_type": "code", "colab": {} }, "source": [ "# alternative activation function\n", "def ReLU(x):\n", " return np.maximum(0.0, x)\n", "\n", "# derivation of relu\n", "def ReLU_derivation(x):\n", " if x <= 0:\n", " return 0\n", " else:\n", " return 1" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "S742PVA1t3lE", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 295 }, "outputId": "00bf7339-281b-47ac-f3d3-81b3a99ac00e" }, "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "X = np.linspace(-5, 6, 100)\n", "plt.plot(X, ReLU(X),'b')\n", "plt.xlabel('X Axis')\n", "plt.ylabel('Y Axis')\n", "plt.title('ReLU Function')\n", "plt.grid()\n", "plt.text(0.8, 0.4, r'$ReLU(x)=max(0, x)$', fontsize=14)\n", "plt.show()" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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eJ8+fbp/9tlnfsABB/hRRx3lnTp18hkzZvjcuXN9n3328f79+xfa98ILL/QPPvjAly1b5lOmTPGmTZv6kCFDSl2n7c9Fbm6up6Wl+csvv1yonH79+vlxxx1XxFnfUUWcS/fwBhtTP3iRnXj/fejTB048ER56qOQeM7NmzSInJ4e6deuSl5fHpk2bqFGjBsOGDePgRJtO3759ueSSSxgyZEj+frfddhtnnHFGoePsv//+xQ4hW/AqvaCZM2cC5L+3fPlymjZtWmgbM2PIkCGceuqptGzZkiFDhvDuu++y3377FdquadOmbN68mW+//XaH9vu+ffty9tlnF38igGbNmu2wbu7cudSrV48xY8aQmZkJQJcuXcjOzmbx4sXsscceABx//PGsXr260L69e/fOv/pu3rw5p556KosXLy51nbY/F2vWrGHr1q35cWyTmZnJO++8U2LdtqmIcxkmJXiREixZEkzcse++8MorkJ5e8vazZ8/m0ksv5YYbbuCXX37h5ptvplWrVlxzzTVAkGQmT57MjBkzePjhh/P327p1K7Vr1y50nOKaZyBI8LfcckuR65s3b56fKDdt2rRDAgP405/+RLt27bj11lsZP3487dq122GbWokBdbY1gxTUoEEDGjRoUGx8xZk3bx7dunUrFNOKFSs444wz8mPetq5gTN988w0PP/wwV111FatWreK3334jNzeXGws8gLCzOhV3LsqrvOcyTGqDFynGzz8HA4i5Bz1m6tff+T6zZ8/mmGOOoVWrVhxxxBE8/vjjPProo8yfPx8IElzdunX57LPPmDt3bv4yf/78QjdhS0rwq1atYu3atbRuveM8OlOmTCnUxtywYUPWr1+/w3ZTp05l3rx5uHuxSW/dunUANGrUaIf3hgwZQkZGRolLUb1R5s6dS/v27QutmzNnDkcffXShdfPmzePwxLgPa9eupV27dqxbt47777+fGTNmMHPmTGrWrEmbNm1KXaftz0XDhg1JS0sr1FYO8P3339O4ceMiz0lRynsuw6QEL1KELVuCMd2//BLGjoVWrXa+z9KlS1m3bh2HHHJI/roWLVpw+OGHM3r0aADS09PZuHEjjRs3plWrVoWWbV0btx3niCOOKLKc3377DdjxavDzzz9n1qxZnHPOOfnrDj/8cBYtWlRou3nz5nH66aczfPhwevbsycCBA4ssZ8GC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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "pRqv3_pdt3i9", "colab_type": "code", "colab": {} }, "source": [ "## Adding a run or FIT Method\n", "# We have everything together now to implement the run (or predict) method of our neural network class. We will use scipy.special as the activation function and rename it to activation_function:\n", "\n", "# from scipy.special import expit as activation_function\n", "\n", "# All we have to do in the run method consists of the following.\n", "\n", " - Matrix multiplication of the input vector and the weights_in_hidden matrix.\n", " - Applying the activation function to the result of step 1\n", " - Matrix multiplication of the result vector of step 2 and the weights_in_hidden matrix.\n", " - To get the final result: Applying the activation function to the result of 3" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "YZNOVMtFt3gf", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "from scipy.special import expit as activation_function\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", " \n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate):\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.learning_rate = learning_rate \n", " self.create_weight_matrices()\n", " \n", " def create_weight_matrices(self):\n", " \"\"\" A method to initialize the weight matrices of the neural network\"\"\"\n", " rad = 1 / np.sqrt(self.no_of_in_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_in_hidden = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_hidden_out = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes))\n", " \n", " \n", " def train(self, input_vector, target_vector):\n", " pass\n", " \n", " \n", " def run(self, input_vector):\n", " \"\"\"\n", " running the network with an input vector 'input_vector'. \n", " 'input_vector' can be tuple, list or ndarray\n", " \"\"\"\n", " # turning the input vector into a column vector\n", " input_vector = np.array(input_vector, ndmin=2).T\n", " input_hidden = activation_function(self.weights_in_hidden @ input_vector)\n", " output_vector = activation_function(self.weights_hidden_out @ input_hidden)\n", " return output_vector" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "eFV6srjCt3dk", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "01bb7491-9bff-4f30-c6fd-2e8eb0096b6d" }, "source": [ "#We can instantiate an instance of this class, which will be a neural network. In the following example we create a network with two input nodes, four hidden nodes, and two output nodes.\n", "\n", "simple_network = NeuralNetwork(no_of_in_nodes=2, \n", " no_of_out_nodes=2, \n", " no_of_hidden_nodes=4,\n", " learning_rate=0.6)\n", "#We can apply the run method to all arrays with a shape of (2,), also lists and tuples with two numerical elements. The result of the call is defined by the random values of the weights:\n", "\n", "simple_network.run([(3, 4)])" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[0.5418742 ],\n", " [0.48816723]])" ] }, "metadata": { "tags": [] }, "execution_count": 11 } ] }, { "cell_type": "markdown", "metadata": { "id": "MvJs8gxpu8Cp", "colab_type": "text" }, "source": [ "\n", "\n", "### Backpropagation\n", "\n", "\n", "\n", "\n", "We already wrote in the previous chapters of our tutorial on Neural Networks in Python. The networks from our chapter Running Neural Networks lack the capabilty of learning. They can only be run with randomly set weight values. So we cannot solve any classification problems with them. However, the networks in Chapter Simple Neural Networks were capable of learning, but we only used linear networks for linearly separable classes.\n", "\n", "Of course, we want to write general ANNs, which are capable of learning. To do so, we will have to understand backpropagation. Backpropagation is a commonly used method for training artificial neural networks, especially deep neural networks. Backpropagation is needed to calculate the gradient, which we need to adapt the weights of the weight matrices. The weight of the neuron (nodes) of our network are adjusted by calculating the gradient of the loss function. For this purpose a gradient descent optimization algorithm is used. It is also called backward propagation of errors.\n", "\n", "Quite often people are frightened away by the mathematics used in it. We try to explain it in simple terms.\n", "\n", "\n", "Explaining gradient descent starts in many articles or tutorials with mountains. Imagine you are put on a mountain, not necessarily the top, by a helicopter at night or heavy fog. Let's further imagine that this mountain is on an island and you want to reach sea level. You have to go down, but you hardly see anything, maybe just a few metres. Your task is to find your way down, but you cannot see the path. You can use the method of gradient descent. This means that you are examining the steepness at your current position. You will proceed in the direction with the steepest descent. You take only a few steps and then you stop again to reorientate yourself. This means you are applying again the previously described procedure, i.e. you are looking for the steepest descend.\n", "\n", "This procedure is depicted in the following diagram in a two-dimensional space.\n", "\n", "\n", "![](https://www.python-course.eu/images/gradual_descent__mountain.png)\n", "\n", "\n", "Going on like this you will arrive at a position, where there is no further descend.\n", "\n", "Each direction goes upwards. You may have reached the deepest level - the global minimum -, but you might as well be stuck in a basin. If you start at the position on the right side of our image, everything works out fine, but from the leftside, you will be stuck in a local minimum.\n", "\n", "\n", "\n", "Backpropagation in Detail\n", "\n", "Now, we have to go into the details, i.e. the mathematics.\n", "\n", "We will start with the simpler case. We look at a linear network. Linear neural networks are networks where the output signal is created by summing up all the weighted input signals. No activation function will be applied to this sum, which is the reason for the linearity.\n", "\n", "The will use the following simple network.\n", "\n", "![](https://www.python-course.eu/images/backpropagation_example_network.png)\n", "\n", "\n", "When we are training the network we have samples and corresponding labels. For each output value oi we have a label ti, which is the target or the desired value. If the label is equal to the output, the result is correct and the neural network has not made an error. Principially, the error is the difference between the target and the actual output:\n", "\n", "ei=ti−oi\n", "\n", "\n", "We will later use a squared error function, because it has better characteristics for the algorithm:\n", "\n", "ei=12(ti−oi)2\n", "\n", "\n", "\n", "We want to clarify how the error backpropagates with the following example with values:\n", "\n", "\n", "\n", "\n", "\n", "![](https://www.python-course.eu/images/backpropagation_linear_network_error.png)\n", "\n", "\n", "\n", "We will have a look at the output value o1, which is depending on the values w11, w12, w13 and w14. Let's assume the calculated value (o1) is 0.92 and the desired value (t1) is 1. In this case the error is\n", "\n", "e1=t1−o1=1−0.92=0.08\n", "\n", "The eror e2 can be calculated like this:\n", "\n", "e2=t2−o2=1−0.18=0.82\n", "\n", "\n", "\n", "![](https://www.python-course.eu/images/errors_hidden_layer.png)\n", "\n", "\n", "Depending on this error, we have to change the weights from the incoming values accordingly. We have four weights, so we could spread the error evenly. Yet, it makes more sense to to do it proportionally, according to the weight values. The larger a weight is in relation to the other weights, the more it is responsible for the error. This means that we can calculate the fraction of the error e1 in w11 as:\n", "\n", "e1⋅w11∑4i=1w1i\n", "\n", "\n", "This means in our example:\n", "\n", "0.08⋅0.60 / 0.6+0.1+0.15+0.25=0.0343\n", "\n", "\n", "\n", "\n", "So, this has been the easy part for linear neural networks. We haven't taken into account the activation function until now.\n", "\n", "\n", "We want to calculate the error in a network with an activation function, i.e. a non-linear network. The derivation of the error function describes the slope. As we mentioned in the beginning of the this chapter, we want to descend. The derivation describes how the error E changes as the weight wkj changes:\n", "\n", "∂E∂wkj\n", "The error function E over all the output nodes oi (i=1,...n) where n is the total number of output nodes:\n", "\n", "E=∑i=1n12(ti−oi)2\n", "Now, we can insert this in our derivation:\n", "\n", "∂E∂wkj=∂∂wkj12∑i=1n(ti−oi)2\n", "\n", "If you have a look at our example network, you will see that an output node ok only depends on the input signals created with the weights wki with i=1,…m and m the number of hidden nodes.\n", "\n", "The following diagram further illuminates this:\n", "\n", "![](https://www.python-course.eu/images/w_kj.png)" ] }, { "cell_type": "markdown", "metadata": { "id": "woURZyjN4MyE", "colab_type": "text" }, "source": [ "This means that we can calculate the error for every output node independently of each other. This means that we can remove all expressions ti−oi with i≠k from our summation. So the calculation of the error for a node k looks a lot simpler now:\n", "\n", "∂E∂wkj=∂∂wkj12(tk−ok)2\n", "\n", "\n", "The target value tk is a constant, because it is not depending on any input signals or weights. We can apply the chain rule for the differentiation of the previous term to simplify things:\n", "\n", "∂E∂wkj=∂E∂ok⋅∂ok∂wkj\n", "\n", "In the previous chapter of our tutorial, we used the sigmoid function as the activation function:\n", "\n", "σ(x)=1 / 1+e−x\n", "\n", "\n", "The output node ok is calculated by applying the sigmoid function to the sum of the weighted input signals. This means that we can further transform our derivative term by replacing ok by this function:\n", "\n", "∂E∂wkj=(tk−ok)⋅∂∂wkjσ(∑i=1mwkihi)\n", "where m is the number of hidden nodes.\n", "\n", "\n", "The sigmoid function is easy to differentiate:\n", "\n", "∂σ(x)∂x=σ(x)⋅(1−σ(x))\n", "The complete differentiation looks like this now:\n", "\n", "∂E∂wkj=(tk−ok)⋅σ(∑i=1mwkihi)⋅(1−σ(∑i=1mwkihi))∂∂wkj∑i=1mwkihi\n", "The last part has to be differentiated with respect to wkj. This means that the derivation of all the products will be 0 except the the term wkjhj) which has the derivative hj with respect to wkj:\n", "\n", "∂E∂wkj=(tk−ok)⋅σ(∑i=1mwkihi)⋅(1−σ(∑i=1mwkihi))⋅hj\n", "This is what we need to implement the method 'train' of our NeuralNetwork class in the following chapter." ] }, { "cell_type": "markdown", "metadata": { "id": "9HfAWW8n8ovK", "colab_type": "text" }, "source": [ "### Training\n", "\n", "In the chapter \"Running Neural Networks\", we programmed a class in Python code called 'NeuralNetwork'. The instances of this class are networks with three layers. When we instantiate an ANN of this class, the weight matrices between the layers are automatically and randomly chosen. It is even possible to run such a ANN on some input, but naturally it doesn't make a lot of sense exept for testing purposes. Such an ANN cannot provide correct classification results. In fact, the classification results are in no way adapted to the expected results. The values of the weight matrices have to be set according the the classification task. We need to improve the weight values, which means that we have to train our network. To train it we have to implement backpropagation in the train method. If you don't understand backpropagation and want to understand it, we recommend to go back to the chapter Backpropagation in Neural Networks.\n", "\n", "After knowing und hopefully understanding backpropagation, you are ready to fully understand the train method.\n", "\n", "\n", "\n", "The train method is called with an input vector and a target vector. The shape of the vectors can be one-dimensional, but they will be automatically turned into the correct two-dimensional shape, i.e. reshape(input_vector.size, 1) and reshape(target_vector.size, 1). After this we call the run method to get the result of the network output_vector_network = self.run(input_vector). This output may differ from the target_vector. We calculate the output_error by subtracting the output of the network output_vector_network from the target_vector." ] }, { "cell_type": "code", "metadata": { "id": "BmdcMtEet3bV", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "from scipy.stats import truncnorm\n", "\n", "import numpy as np\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate):\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.learning_rate = learning_rate \n", " self.create_weight_matrices()\n", " \n", " def create_weight_matrices(self):\n", " \"\"\" A method to initialize the weight matrices of the neural network\"\"\"\n", " rad = 1 / np.sqrt(self.no_of_in_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_in_hidden = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_hidden_out = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes))\n", " \n", " \n", " def train(self, input_vector, target_vector):\n", " \"\"\"\n", " input_vector and target_vector can be tuples, lists or ndarrays\n", " \"\"\"\n", " # make sure that the vectors have the right shape\n", " input_vector = np.array(input_vector)\n", " input_vector = input_vector.reshape(input_vector.size, 1)\n", " target_vector = np.array(target_vector).reshape(target_vector.size, 1)\n", "\n", " output_vector_hidden = activation_function(self.weights_in_hidden @ input_vector)\n", " output_vector_network = activation_function(self.weights_hidden_out @ output_vector_hidden)\n", " \n", " output_error = target_vector - output_vector_network\n", " tmp = output_error * output_vector_network * (1.0 - output_vector_network) \n", " self.weights_hidden_out += self.learning_rate * (tmp @ output_vector_hidden.T)\n", "\n", " # calculate hidden errors:\n", " hidden_errors = self.weights_hidden_out.T @ output_error\n", " # update the weights:\n", " tmp = hidden_errors * output_vector_hidden * (1.0 - output_vector_hidden)\n", " self.weights_in_hidden += self.learning_rate * (tmp @ input_vector.T) \n", " \n", " def run(self, input_vector):\n", " \"\"\"\n", " running the network with an input vector 'input_vector'. \n", " 'input_vector' can be tuple, list or ndarray\n", " \"\"\"\n", " # make sure that input_vector is a column vector:\n", " input_vector = np.array(input_vector)\n", " input_vector = input_vector.reshape(input_vector.size, 1)\n", " input4hidden = activation_function(self.weights_in_hidden @ input_vector)\n", " output_vector_network = activation_function(self.weights_hidden_out @ input4hidden)\n", " return output_vector_network" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "2WoDCLjDt3ZH", "colab_type": "code", "colab": {} }, "source": [ "#We assume that you save the previous code in a file called neural_networks1.py. We will use it under this name in the coming examples.\n", "#To test this neural network class we need train and test data. We create the data with make_blobs from sklearn.datasets.\n", "\n", "from sklearn.datasets import make_blobs\n", "\n", "n_samples = 300\n", "samples, labels = make_blobs(n_samples=n_samples, \n", " centers=([2, 6], [6, 2]), \n", " random_state=0)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "5_0Z5SRtt3WY", "colab_type": "code", "colab": {} }, "source": [ "#We are going to create a train and a test data set:\n", "\n", "size_of_learn_sample = int(n_samples * 0.8)\n", "learn_data = samples[:size_of_learn_sample]\n", "test_data = samples[-size_of_learn_sample:]\n", "\n", "# We create a neural network with two input nodes, two hidden nodes and one output node:\n", "\n", "#from neural_networks1 import NeuralNetwork\n", "\n", "simple_network = NeuralNetwork(no_of_in_nodes=2, \n", " no_of_out_nodes=1, \n", " no_of_hidden_nodes=5,\n", " learning_rate=0.3)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "rdZJB6kRt23w", "colab_type": "code", "colab": {} }, "source": [ "#The next step consists in training our network with the samples from our training samples:\n", "\n", "for i in range(size_of_learn_sample):\n", " simple_network.train(learn_data[i], labels[i])\n", "\n", "#We now have to check how well our network has learned. The network has only one output neuron. This means that the values will be between 0 and 1. If the output values were ideal, which they cannot be, the output values would be one for class 1 and 0 for class 0. Due to the sigmoid function 0 and and will not be even a possible result. So we have to assign result to the values between 0 and 1. We use 0.5 as a threshold. Everything greater or equal than 0.5 is considered to be 1 and everything smaller is taken as a 0. Now we are capable of comparing the results with the labels" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "gr_kLQBot21U", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "3a7a44e8-3750-4d8c-fab5-c3c05e1d524f" }, "source": [ "from collections import Counter\n", "\n", "evaluation = Counter()\n", "for i in range(size_of_learn_sample):\n", " point, label = learn_data[i], labels[i]\n", " res = simple_network.run(point)\n", " if label == 1:\n", " if res >= 0.5:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", " elif label == 0:\n", " if res <= 0.5:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", "print(evaluation)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "Counter({'wrong': 120, 'correct': 120})\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "-Jdw5tUKt2zC", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "0bbefc62-2d9b-431a-97f9-2e8f272d9855" }, "source": [ "#The flaw in the design above is this: If we have a value of 0.5 or close to this, the classifier is rather undecided. The result is in the middle between two possible results.\n", "\n", "from collections import Counter\n", "\n", "def evaluate(data, labels, threshold=0.5):\n", " evaluation = Counter()\n", " for i in range(len(data)):\n", " point, label = data[i], labels[i]\n", " res = simple_network.run(point)\n", " if threshold < res < 1 - threshold:\n", " evaluation[\"undecided\"] += 1\n", " elif label == 1:\n", " if res >= 1 - threshold:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", " elif label == 0:\n", " if res <= threshold:\n", " evaluation[\"correct\"] += 1\n", " else:\n", " evaluation[\"wrong\"] += 1\n", " return evaluation\n", "\n", " \n", "res = evaluate(learn_data, labels)\n", "res" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "Counter({'correct': 120, 'wrong': 120})" ] }, "metadata": { "tags": [] }, "execution_count": 17 } ] }, { "cell_type": "code", "metadata": { "id": "eFELeNpIt2wY", "colab_type": "code", "colab": {} }, "source": [ "# Neural Network with Bias Nodes\n", "\n", "\n", "We already introduced the basic idea and necessity of bias node in the chapter \"Simple Neural Network\", \n", "in which we focussed on very simple linearly separable data sets. We learned that a bias node is a node that is always returning the same output. In other words: It is a node which is not depending on some input and it does not have any input. The value of a bias node is often set to one, but it can be set to other values as well. Except for zero, which makes no sense for obvious reasons. If a neural network does not have a bias node in a given layer, it will not be able to produce output in the next layer that differs from 0 when the feature values are 0. Generally speaking, we can say that bias nodes are used to increase the flexibility of the network to fit the data. Usually, there will be not more\n", " than one bias node per layer. The only exception is the output layer, because it makes no sense to add a bias node to this layer." ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "Pqj2Za0GFNzk", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/weights_input2hidden_bias.png)\n", "\n", "We can see from this diagram that our weight matrix needs one additional column and the bias value has to be added to the input vector:\n", "\n", "\n", "\n", "![](https://www.python-course.eu/images/weight_input_matrix_multiplication_bias.png)\n", "\n", "\n", "\n", "Again, the situation for the weight matrix between the hidden and the output layer is similar:\n", "\n", "\n", "\n", "\n", "\n", "![](https://www.python-course.eu/images/weights_hidden2output_bias.png)\n", "\n", "\n", "\n", "The same is true for the corresponding matrix:\n", "\n", "\n", "![](https://www.python-course.eu/images/weight_hidden_matrix_multiplication_bias.png)" ] }, { "cell_type": "code", "metadata": { "id": "rh4Ep03kFAM8", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "outputId": "355e8734-cce5-4336-9041-e5ec9f30060a" }, "source": [ "# The following is a complete Python class implementing our network with bias nodes:\n", "\n", "import numpy as np\n", "from scipy.stats import truncnorm\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", " \n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate,\n", " bias=None): \n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " self.learning_rate = learning_rate \n", " self.bias = bias\n", " self.create_weight_matrices()\n", " \n", " \n", " def create_weight_matrices(self):\n", " \"\"\" A method to initialize the weight matrices of the neural \n", " network with optional bias nodes\"\"\" \n", " bias_node = 1 if self.bias else 0 \n", " rad = 1 / np.sqrt(self.no_of_in_nodes + bias_node)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_in_hidden = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes + bias_node))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes + bias_node)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_hidden_out = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes + bias_node))\n", "\n", " \n", " def train(self, input_vector, target_vector):\n", " \"\"\" input_vector and target_vector can be tuple, list or ndarray \"\"\"\n", "\n", " # make sure that the vectors have the right shap\n", " input_vector = np.array(input_vector)\n", " input_vector = input_vector.reshape(input_vector.size, 1) \n", " if self.bias:\n", " # adding bias node to the end of the input_vector\n", " input_vector = np.concatenate( (input_vector, [[self.bias]]) )\n", " target_vector = np.array(target_vector).reshape(target_vector.size, 1)\n", "\n", " output_vector_hidden = activation_function(self.weights_in_hidden @ input_vector)\n", " if self.bias:\n", " output_vector_hidden = np.concatenate( (output_vector_hidden, [[self.bias]]) ) \n", " output_vector_network = activation_function(self.weights_hidden_out @ output_vector_hidden)\n", " \n", " output_error = target_vector - output_vector_network \n", " # update the weights:\n", " tmp = output_error * output_vector_network * (1.0 - output_vector_network) \n", " self.weights_hidden_out += self.learning_rate * (tmp @ output_vector_hidden.T)\n", "\n", " # calculate hidden errors:\n", " hidden_errors = self.weights_hidden_out.T @ output_error\n", " # update the weights:\n", " tmp = hidden_errors * output_vector_hidden * (1.0 - output_vector_hidden)\n", " if self.bias:\n", " x = (tmp @input_vector.T)[:-1,:] # last row cut off,\n", " else:\n", " x = tmp @ input_vector.T\n", " self.weights_in_hidden += self.learning_rate * x\n", "\n", " \n", " def run(self, input_vector):\n", " \"\"\"\n", " running the network with an input vector 'input_vector'. \n", " 'input_vector' can be tuple, list or ndarray\n", " \"\"\"\n", " # make sure that input_vector is a column vector:\n", " input_vector = np.array(input_vector)\n", " input_vector = input_vector.reshape(input_vector.size, 1)\n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate( (input_vector, [[1]]) )\n", " input4hidden = activation_function(self.weights_in_hidden @ input_vector)\n", " if self.bias:\n", " input4hidden = np.concatenate( (input4hidden, [[1]]) )\n", " output_vector_network = activation_function(self.weights_hidden_out @ input4hidden)\n", " return output_vector_network\n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs\n", "from sklearn.datasets import make_blobs\n", "import matplotlib.pyplot as plt\n", "\n", "data, labels = make_blobs(n_samples=250, \n", " centers=([2.5, 3], [6.7, 7.9]), \n", " random_state=0)\n", "\n", "data, labels = make_blobs(n_samples=250, \n", " centers=([2, 7.9], [8, 3]), \n", " random_state=0)\n", "\n", "colours = ('green', 'blue', 'red', 'magenta', 'yellow', 'cyan')\n", "fig, ax = plt.subplots()\n", "\n", "\n", "for n_class in range(2):\n", " ax.scatter(data[labels==n_class][:, 0], data[labels==n_class][:, 1], \n", " c=colours[n_class], s=40, label=str(n_class))" ], "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "code", "metadata": { "id": "BNAv8qz_FAJ7", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 374 }, "outputId": "2938c2be-0480-490a-b81b-fbb47c08e6d0" }, "source": [ "simple_network = NeuralNetwork(no_of_in_nodes=2, \n", " no_of_out_nodes=2, \n", " no_of_hidden_nodes=10,\n", " learning_rate=0.1,\n", " bias=1)\n", " \n", "simple_network.__dict__" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "{'bias': 1,\n", " 'learning_rate': 0.1,\n", " 'no_of_hidden_nodes': 10,\n", " 'no_of_in_nodes': 2,\n", " 'no_of_out_nodes': 2,\n", " 'weights_hidden_out': array([[ 0.26941196, -0.01997585, 0.28672862, -0.04093959, -0.14280921,\n", " -0.05934062, -0.26826302, 0.12012418, 0.06644027, -0.00382013,\n", " 0.26553275],\n", " [ 0.2480301 , 0.05782807, 0.2189935 , -0.05538357, -0.02518258,\n", " 0.0402508 , 0.18196787, -0.23013821, -0.10456948, -0.06328227,\n", " -0.11475722]]),\n", " 'weights_in_hidden': array([[-0.43501034, 0.01057816, -0.46792921],\n", " [-0.45765353, 0.33604196, 0.02081498],\n", " [-0.47899684, -0.19868647, -0.26203225],\n", " [ 0.3005188 , 0.01189104, 0.34763523],\n", " [ 0.34948936, 0.15240694, -0.18995716],\n", " [-0.34469368, 0.43349791, -0.05582405],\n", " [-0.41400176, 0.10515102, -0.54367979],\n", " [ 0.29281351, -0.29617842, -0.35219619],\n", " [ 0.22781509, -0.11408715, 0.29116765],\n", " [-0.03005796, -0.29423357, 0.29627065]])}" ] }, "metadata": { "tags": [] }, "execution_count": 19 } ] }, { "cell_type": "code", "metadata": { "id": "mNboxYS9FAHY", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "89689c71-7105-4d26-a67d-100506cd0db9" }, "source": [ "import numpy as np\n", "labels_one_hot = (np.arange(2) == labels.reshape(labels.size, 1))\n", "labels_one_hot = labels_one_hot.astype(np.float)\n", "\n", "for i in range(len(data)):\n", " simple_network.train(data[i], labels_one_hot[i])\n", "\n", " \n", "simple_network.evaluate(data, labels)" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(250, 0)" ] }, "metadata": { "tags": [] }, "execution_count": 20 } ] }, { "cell_type": "markdown", "metadata": { "id": "1cy55FWbZ0R2", "colab_type": "text" }, "source": [ "Softmax\n", "\n", "The previous implementations of neural networks in our tutorial returned float values in the open interval (0, 1). To make a final decision we had to interprete the results of the output neurons. The one with the highest value is a likely candidate but we also have to see it in relation to the other results. It should be obvious that in a two classes case (c1 and c2) a result (0.013, 0.95) is a clear vote for the class c2 but (0.73, 0.89) on the other hand is a different thing. We could say in this situation 'c2 is more likely than c1, but c1 has still a high likelihood'. Talking about likelihoods: The return values are not probabilities. It would be a lot better to have a normalized output with a probability function. Here comes the softmax function into the picture. The softmax function, also known as softargmax or normalized exponential function, is a function that takes as input a vector of n real numbers, and normalizes it into a probability distribution consisting of n probabilities proportional to the exponentials of the input vector. A probability distribution implies that the result vector sums up to 1. Needless to say, if some components of the input vector are negative or greater than one, they will be in the range (0, 1) after applying Softmax . The Softmax function is often used in neural networks, to map the results of the output layer, which is non-normalized, to a probability distribution over predicted output classes." ] }, { "cell_type": "code", "metadata": { "id": "HVJ3I9aMFADw", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "ca576467-e81c-4c6c-cb80-fa17ad9f999f" }, "source": [ "import numpy as np\n", "\n", "def softmax(x):\n", " \"\"\" applies softmax to an input x\"\"\"\n", " e_x = np.exp(x)\n", " return e_x / e_x.sum()\n", "\n", "x = np.array([1, 0, 3, 5])\n", "y = softmax(x)\n", "y, x / x.sum()" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "(array([0.01578405, 0.00580663, 0.11662925, 0.86178007]),\n", " array([0.11111111, 0. , 0.33333333, 0.55555556]))" ] }, "metadata": { "tags": [] }, "execution_count": 21 } ] }, { "cell_type": "code", "metadata": { "id": "DJqnNfeSFAAu", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "1fb8a7cf-9fea-4453-f99a-72c2c982f9c9" }, "source": [ "# Avoiding underflow or overflow errors due to floating point instability:\n", "\n", "import numpy as np\n", "\n", "def softmax(x):\n", " \"\"\" applies softmax to an input x\"\"\"\n", " e_x = np.exp(x - np.max(x))\n", " return e_x / e_x.sum()\n", "\n", "softmax(x)" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([0.01578405, 0.00580663, 0.11662925, 0.86178007])" ] }, "metadata": { "tags": [] }, "execution_count": 22 } ] }, { "cell_type": "code", "metadata": { "id": "ziBwVKPnE_9A", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 136 }, "outputId": "d9a07619-1346-4ef3-f3f2-de3e5aa46b24" }, "source": [ "import numpy as np\n", "\n", "def softmax(x):\n", " e_x = np.exp(x)\n", " return e_x / e_x.sum()\n", "\n", "s = softmax(np.array([0, 4, 5]))\n", "\n", "si_sj = - s * s.reshape(3, 1)\n", "print(s)\n", "print(si_sj)\n", "s_der = np.diag(s) + si_sj\n", "s_der" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[0.00490169 0.26762315 0.72747516]\n", "[[-2.40265555e-05 -1.31180548e-03 -3.56585701e-03]\n", " [-1.31180548e-03 -7.16221526e-02 -1.94689196e-01]\n", " [-3.56585701e-03 -1.94689196e-01 -5.29220104e-01]]\n" ], "name": "stdout" }, { "output_type": "execute_result", "data": { "text/plain": [ "array([[ 0.00487766, -0.00131181, -0.00356586],\n", " [-0.00131181, 0.196001 , -0.1946892 ],\n", " [-0.00356586, -0.1946892 , 0.19825505]])" ] }, "metadata": { "tags": [] }, "execution_count": 25 } ] }, { "cell_type": "code", "metadata": { "id": "GjBpo6G3t2s9", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 401 }, "outputId": "13841d26-dd0e-466d-b4fe-3772809627f8" }, "source": [ "import numpy as np\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "\n", "def softmax(x):\n", " e_x = np.exp(x)\n", " return e_x / e_x.sum()\n", "\n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate,\n", " softmax=True):\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.learning_rate = learning_rate \n", " self.softmax = softmax\n", " self.create_weight_matrices()\n", " \n", " def create_weight_matrices(self):\n", " \"\"\" A method to initialize the weight matrices of the neural network\"\"\"\n", " rad = 1 / np.sqrt(self.no_of_in_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_in_hidden = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.weights_hidden_out = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes))\n", " \n", " \n", " def train(self, input_vector, target_vector):\n", " \"\"\"\n", " input_vector and target_vector can be tuples, lists or ndarrays\n", " \"\"\"\n", " # make sure that the vectors have the right shape\n", " input_vector = np.array(input_vector)\n", " input_vector = input_vector.reshape(input_vector.size, 1)\n", " target_vector = np.array(target_vector).reshape(target_vector.size, 1)\n", "\n", " output_vector_hidden = sigmoid(self.weights_in_hidden @ input_vector)\n", " if self.softmax:\n", " output_vector_network = softmax(self.weights_hidden_out @ output_vector_hidden)\n", " else:\n", " output_vector_network = sigmoid(self.weights_hidden_out @ output_vector_hidden)\n", " \n", " output_error = target_vector - output_vector_network\n", " if self.softmax:\n", " ovn = output_vector_network.reshape(output_vector_network.size,)\n", " si_sj = - ovn * ovn.reshape(self.no_of_out_nodes, 1)\n", " s_der = np.diag(ovn) + si_sj\n", " tmp = s_der @ output_error \n", " self.weights_hidden_out += self.learning_rate * (tmp @ output_vector_hidden.T)\n", " else: \n", " tmp = output_error * output_vector_network * (1.0 - output_vector_network) \n", " self.weights_hidden_out += self.learning_rate * (tmp @ output_vector_hidden.T)\n", " \n", " \n", " # calculate hidden errors:\n", " hidden_errors = self.weights_hidden_out.T @ output_error\n", " # update the weights:\n", " tmp = hidden_errors * output_vector_hidden * (1.0 - output_vector_hidden)\n", " self.weights_in_hidden += self.learning_rate * (tmp @ input_vector.T) \n", " \n", " def run(self, input_vector):\n", " \"\"\"\n", " running the network with an input vector 'input_vector'. \n", " 'input_vector' can be tuple, list or ndarray\n", " \"\"\"\n", " # make sure that input_vector is a column vector:\n", " input_vector = np.array(input_vector)\n", " input_vector = input_vector.reshape(input_vector.size, 1)\n", " input4hidden = sigmoid(self.weights_in_hidden @ input_vector)\n", " if self.softmax:\n", " output_vector_network = softmax(self.weights_hidden_out @ input4hidden)\n", " else:\n", " output_vector_network = sigmoid(self.weights_hidden_out @ input4hidden)\n", "\n", " return output_vector_network\n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs \n", "\n", "\n", "from sklearn.datasets import make_blobs\n", "n_samples = 300\n", "samples, labels = make_blobs(n_samples=n_samples, \n", " centers=([2, 6], [6, 2]), \n", " random_state=0)\n", "\n", "\n", "import matplotlib.pyplot as plt\n", "\n", "\n", "colours = ('green', 'red', 'blue', 'magenta', 'yellow', 'cyan')\n", "fig, ax = plt.subplots()\n", "\n", "\n", "for n_class in range(2):\n", " ax.scatter(samples[labels==n_class][:, 0], samples[labels==n_class][:, 1], \n", " c=colours[n_class], s=40, label=str(n_class))\n", " \n", "size_of_learn_sample = int(n_samples * 0.8)\n", "learn_data = samples[:size_of_learn_sample]\n", "test_data = samples[-size_of_learn_sample:]\n", "\n", "#from neural_networks_softmax import NeuralNetwork\n", "\n", "simple_network = NeuralNetwork(no_of_in_nodes=2, \n", " no_of_out_nodes=2, \n", " no_of_hidden_nodes=5,\n", " learning_rate=0.3,\n", " softmax=True)\n", "for x in [(1, 4), (2, 6), (3, 3), (6, 2)]:\n", " y = simple_network.run(x)\n", " print(x, y, s.sum())" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "(1, 4) [[0.24794264]\n", " [0.75205736]] 1.0\n", "(2, 6) [[0.23659567]\n", " [0.76340433]] 1.0\n", "(3, 3) [[0.26767871]\n", " [0.73232129]] 1.0\n", "(6, 2) [[0.29311966]\n", " [0.70688034]] 1.0\n" ], "name": "stdout" }, { "output_type": "display_data", "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "tags": [], "needs_background": "light" } } ] }, { "cell_type": "markdown", "metadata": { "id": "CN4jr382crj5", "colab_type": "text" }, "source": [ "### Confusion Matrix\n", "\n", "In the previous chapters of our Machine Learning tutorial (Neural Networks with Python and Numpy and Neural Networks from Scratch ) we implemented various algorithms, but we didn't properly measure the quality of the output. The main reason was that we used very simple and small datasets to learn and test. In the chapter Neural Network: Testing with MNIST, we will work with large datasets and ten classes, so we need proper evaluations tools. We will introduce in this chapter the concepts of the confusion matrix:\n", "\n", "\n", "A confusion matrix is a matrix (table) that can be used to measure the performance of an machine learning algorithm, usually a supervised learning one. Each row of the confusion matrix represents the instances of an actual class and each column represents the instances of a predicted class. This is the way we keep it in this chapter of our tutorial, but it can be the other way around as well, i.e. rows for predicted classes and columns for actual classes. The name confusion matrix reflects the fact that it makes it easy for us to see what kind of confusions occur in our classification algorithms. For example the algorithms should have predicted a sample as ci because the actual class is ci, but the algorithm came out with cj. In this case of mislabelling the element cm[i,j] will be incremented by one, when the confusion matrix is constructed.\n", "\n", "We will define methods to calculate the confusion matrix, precision and recall in the following class.\n", "\n", "\n", "Accuracy:\n", "\n", "AC=TN+TP / TN+FP+FN+TP\n", "\n", "The accuracy is not always an adequate performance measure. Let us assume we have 1000 samples. 995 of these are negative and 5 are positive cases. Let us further assume we have a classifier, which classifies whatever it will be presented as negative. The accuracy will be a surprising 99.5%, even though the classifier could not recognize any positive samples.\n", "\n", "Recall aka. True Positive Rate:\n", "\n", "recall=TP/ FN+TP\n", "\n", "True Negative Rate:\n", "\n", "TNR=FP/TN+FP\n", "\n", "Precision:\n", "\n", "precision:TP / FP+TP\n", "\n", "\n", "\n", "## Multi-class Case\n", "\n", "To measure the results of machine learning algorithms, the previous confusion matrix will not be sufficient. We will need a generalization for the multi-class case.\n", "\n", "Let us assume that we have a sample of 25 animals, e.g. 7 cats, 8 dogs, and 10 snakes, most probably Python snakes. The confusion matrix of our recognition algorithm may look like the following table:\n", "\n", "In this confusion matrix, the system correctly predicted six of the eight actual dogs, but in two cases it took a dog for a cat. The seven acutal cats were correctly recognized in six cases but in one case a cat was taken to be a dog. Usually, it is hard to take a snake for a dog or a cat, but this is what happened to our classifier in two cases. Yet, eight out of ten snakes had been correctly recognized. (Most probably this machine learning algorithm was not written in a Python program, because Python should properly recognize its own species :-) )\n", "\n", "You can see that all correct predictions are located in the diagonal of the table, so prediction errors can be easily found in the table, as they will be represented by values outside the diagonal.\n", "\n", "We can generalize this to the multi-class case. To do this we summarize over the rows and columns of the confusion matrix. Given that the matrix is oriented as above, i.e., that a given row of the matrix corresponds to specific value for the \"truth\", we have:\n", "\n", "Precisioni=Mii∑jMji\n", "Recalli=Mii∑jMij\n", "\n", "\n", "This means, precision is the fraction of cases where the algorithm correctly predicted class i out of all instances where the algorithm predicted i (correctly and incorrectly). recall on the other hand is the fraction of cases where the algorithm correctly predicted i out of all of the cases which are labelled as i.\n", "\n", "Let us apply this to our example:\n", "\n", "The precision for our animals can be calculated as\n", "\n", "precisiondogs=6/(6+1+1)=3/4=0.75\n", "precisioncats=6/(2+6+1)=6/9=0.67\n", "precisionsnakes=8/(0+0+8)=1\n", "\n", "\n", "The recall is calculated like this:\n", "\n", "recalldogs=6/(6+2+0)=3/4=0.75\n", "recallcats=6/(1+6+0)=6/7=0.86\n", "recallsnakes=8/(1+1+8)=4/5=0.8" ] }, { "cell_type": "code", "metadata": { "id": "lvn8IvKKt2qS", "colab_type": "code", "colab": {} }, "source": [ "# Example\n", "\n", "# We are ready now to code this into Python. The following code shows a confusion matrix for a multi-class machine learning problem with ten labels, so for example an algorithms for recognizing the ten digits from handwritten characters.\n", "#If you are not familiar with Numpy and Numpy arrays, we recommend our tutorial on Numpy.\n", "\n", "import numpy as np\n", "\n", "cm = np.array(\n", "[[5825, 1, 49, 23, 7, 46, 30, 12, 21, 26],\n", " [ 1, 6654, 48, 25, 10, 32, 19, 62, 111, 10],\n", " [ 2, 20, 5561, 69, 13, 10, 2, 45, 18, 2],\n", " [ 6, 26, 99, 5786, 5, 111, 1, 41, 110, 79],\n", " [ 4, 10, 43, 6, 5533, 32, 11, 53, 34, 79],\n", " [ 3, 1, 2, 56, 0, 4954, 23, 0, 12, 5],\n", " [ 31, 4, 42, 22, 45, 103, 5806, 3, 34, 3],\n", " [ 0, 4, 30, 29, 5, 6, 0, 5817, 2, 28],\n", " [ 35, 6, 63, 58, 8, 59, 26, 13, 5394, 24],\n", " [ 16, 16, 21, 57, 216, 68, 0, 219, 115, 5693]])" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "GyMJeYz8t2m4", "colab_type": "code", "colab": {} }, "source": [ "# The functions 'precision' and 'recall' calculate values for a label, whereas the function 'precision_macro_average' the precision for the whole classification problem calculates.\n", "\n", "def precision(label, confusion_matrix):\n", " col = confusion_matrix[:, label]\n", " return confusion_matrix[label, label] / col.sum()\n", " \n", "def recall(label, confusion_matrix):\n", " row = confusion_matrix[label, :]\n", " return confusion_matrix[label, label] / row.sum()\n", "\n", "def precision_macro_average(confusion_matrix):\n", " rows, columns = confusion_matrix.shape\n", " sum_of_precisions = 0\n", " for label in range(rows):\n", " sum_of_precisions += precision(label, confusion_matrix)\n", " return sum_of_precisions / rows\n", "\n", "def recall_macro_average(confusion_matrix):\n", " rows, columns = confusion_matrix.shape\n", " sum_of_recalls = 0\n", " for label in range(columns):\n", " sum_of_recalls += recall(label, confusion_matrix)\n", " return sum_of_recalls / columns" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "oIfZq5JBrJuN", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 204 }, "outputId": "8f8dd899-0b68-474a-fce0-611c1b7643a6" }, "source": [ "print(\"label precision recall\")\n", "for label in range(10):\n", " print(f\"{label:5d} {precision(label, cm):9.3f} {recall(label, cm):6.3f}\")" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "label precision recall\n", " 0 0.983 0.964\n", " 1 0.987 0.954\n", " 2 0.933 0.968\n", " 3 0.944 0.924\n", " 4 0.947 0.953\n", " 5 0.914 0.980\n", " 6 0.981 0.953\n", " 7 0.928 0.982\n", " 8 0.922 0.949\n", " 9 0.957 0.887\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "-apb46J0rJqq", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "6af636b0-c1e8-4168-f0a1-f08c73839908" }, "source": [ "print(\"precision total:\", precision_macro_average(cm))\n", "\n", "print(\"recall total:\", recall_macro_average(cm))" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "precision total: 0.9496885564052286\n", "recall total: 0.9514531547877969\n" ], "name": "stdout" } ] }, { "cell_type": "markdown", "metadata": { "id": "uSvaA6JhgM29", "colab_type": "text" }, "source": [ "\n", "\n", "### MNIST - From Scratch\n", "\n", "\n", "The MNIST database (Modified National Institute of Standards and Technology database) of handwritten digits consists of a training set of 60,000 examples, and a test set of 10,000 examples. It is a subset of a larger set available from NIST. Additionally, the black and white images from NIST were size-normalized and centered to fit into a 28x28 pixel bounding box and anti-aliased, which introduced grayscale levels.\n", "\n", "This database is well liked for training and testing in the field of machine learning and image processing. It is a remixed subset of the original NIST datasets. One half of the 60,000 training images consist of images from NIST's testing dataset and the other half from Nist's training set. The 10,000 images from the testing set are similarly assembled.\n", "\n", "The MNIST dataset is used by researchers to test and compare their research results with others. The lowest error rates in literature are as low as 0.21 percent.1\n", "\n" ] }, { "cell_type": "code", "metadata": { "id": "GS3WX5J0rJoh", "colab_type": "code", "colab": {} }, "source": [ "# Reading the MNIST data set\n", "\n", "#The images from the data set have the size 28 x 28. They are saved in the csv data files mnist_train.csv and mnist_test.csv.\n", "#Every line of these files consists of an image, i.e. 785 numbers between 0 and 255.\n", "# The first number of each line is the label, i.e. the digit which is depicted in the image. The following 784 numbers are the pixels of the 28 x 28 image" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "hEXP8bEsRHPr", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "d522d808-a817-4628-99cd-4815631f4aa6" }, "source": [ "!ls" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "mnist_test.csv\tmnist_train.csv sample_data\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "7BS-JsfBrJmj", "colab_type": "code", "colab": {} }, "source": [ "%matplotlib inline\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "image_size = 28 # width and length\n", "no_of_different_labels = 10 # i.e. 0, 1, 2, 3, ..., 9\n", "image_pixels = image_size * image_size\n", "data_path = \"data/mnist/\"\n", "train_data = np.loadtxt(\"mnist_train.csv\", delimiter=\",\")\n", "test_data = np.loadtxt(\"mnist_test.csv\", delimiter=\",\") \n", "test_data[:10]" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "egovE1H3rJi4", "colab_type": "code", "colab": {} }, "source": [ "# The images of the MNIST dataset are greyscale and the pixels range between 0 and 255 including both bounding values. We will map these values into an interval from [0.01, 1] by multiplying each pixel by 0.99 / 255 and adding 0.01 to the result. This way, we avoid 0 values as inputs, which are capable of preventing weight updates, as we we seen in the introductory chapter.\n", "\n", "fac = 0.99 / 255\n", "train_imgs = np.asfarray(train_data[:, 1:]) * fac + 0.01\n", "test_imgs = np.asfarray(test_data[:, 1:]) * fac + 0.01\n", "\n", "train_labels = np.asfarray(train_data[:, :1])\n", "test_labels = np.asfarray(test_data[:, :1])" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "0ndzun8irJg4", "colab_type": "code", "colab": {} }, "source": [ "#We need the labels in our calculations in a one-hot representation. We have 10 digits from 0 to 9, i.e. lr = np.arange(10).\n", "#Turning a label into one-hot representation can be achieved with the command: (lr==label).astype(np.int)\n", "#We demonstrate this in the following:\n", "\n", "import numpy as np\n", "\n", "lr = np.arange(10)\n", "\n", "for label in range(10):\n", " one_hot = (lr==label).astype(np.int)\n", " print(\"label: \", label, \" in one-hot representation: \", one_hot)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "RDnzpsb6rJep", "colab_type": "code", "colab": {} }, "source": [ "#We are ready now to turn our labelled images into one-hot representations. Instead of zeroes and one, we create 0.01 and 0.99, which will be better for our calculations:\n", "\n", "lr = np.arange(no_of_different_labels)\n", "\n", "# transform labels into one hot representation\n", "train_labels_one_hot = (lr==train_labels).astype(np.float)\n", "test_labels_one_hot = (lr==test_labels).astype(np.float)\n", "\n", "# we don't want zeroes and ones in the labels neither:\n", "train_labels_one_hot[train_labels_one_hot==0] = 0.01\n", "train_labels_one_hot[train_labels_one_hot==1] = 0.99\n", "test_labels_one_hot[test_labels_one_hot==0] = 0.01\n", "test_labels_one_hot[test_labels_one_hot==1] = 0.99" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "gRiCZglWrGfr", "colab_type": "code", "colab": {} }, "source": [ "# Before we start using the MNIST data sets with our neural network, we will have a look at some images:\n", "\n", "for i in range(10):\n", " img = train_imgs[i].reshape((28,28))\n", " plt.imshow(img, cmap=\"Greys\")\n", " plt.show()" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "RBwCinzarGdN", "colab_type": "code", "colab": {} }, "source": [ "#Dumping the Data for Faster Reload\n", "#You may have noticed that it is quite slow to read in the data from the csv files.\n", "#We will save the data in binary format with the dump function from the pickle module:\n", "\n", "import pickle\n", "\n", "with open(\"data/mnist/pickled_mnist.pkl\", \"bw\") as fh:\n", " data = (train_imgs, \n", " test_imgs, \n", " train_labels,\n", " test_labels,\n", " train_labels_one_hot,\n", " test_labels_one_hot)\n", " pickle.dump(data, fh)\n", " \n", "#We are able now to read in the data by using pickle.load. This is a lot faster than using loadtxt on the csv files:\n", "\n", "import pickle\n", "\n", "with open(\"data/mnist/pickled_mnist.pkl\", \"br\") as fh:\n", " data = pickle.load(fh)\n", "\n", "train_imgs = data[0]\n", "test_imgs = data[1]\n", "train_labels = data[2]\n", "test_labels = data[3]\n", "train_labels_one_hot = data[4]\n", "test_labels_one_hot = data[5]\n", "\n", "image_size = 28 # width and length\n", "no_of_different_labels = 10 # i.e. 0, 1, 2, 3, ..., 9\n", "image_pixels = image_size * image_size" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "bk3CY3w4rGa0", "colab_type": "code", "colab": {} }, "source": [ "# Classifying the Data\n", "# We will use the following neural network class for our first classification:\n", "\n", "import numpy as np\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm((low - mean) / sd, \n", " (upp - mean) / sd, \n", " loc=mean, \n", " scale=sd)\n", " \n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate):\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.learning_rate = learning_rate \n", " self.create_weight_matrices() \n", "\n", "\n", " def create_weight_matrices(self):\n", " \"\"\" \n", " A method to initialize the weight \n", " matrices of the neural network\n", " \"\"\"\n", " rad = 1 / np.sqrt(self.no_of_in_nodes)\n", " X = truncated_normal(mean=0, \n", " sd=1, \n", " low=-rad, \n", " upp=rad)\n", " self.wih = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.who = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes))\n", " \n", "\n", " def train(self, input_vector, target_vector):\n", "\n", " \"\"\"\n", " input_vector and target_vector can \n", " be tuple, list or ndarray\n", " \"\"\"\n", " \n", " input_vector = np.array(input_vector, ndmin=2).T\n", " target_vector = np.array(target_vector, ndmin=2).T\n", " \n", " output_vector1 = np.dot(self.wih, \n", " input_vector)\n", " output_hidden = activation_function(output_vector1)\n", " \n", " output_vector2 = np.dot(self.who, \n", " output_hidden)\n", " output_network = activation_function(output_vector2)\n", " \n", " output_errors = target_vector - output_network\n", " # update the weights:\n", " tmp = output_errors * output_network \\\n", " * (1.0 - output_network) \n", " tmp = self.learning_rate * np.dot(tmp, \n", " output_hidden.T)\n", " self.who += tmp\n", "\n", " # calculate hidden errors:\n", " hidden_errors = np.dot(self.who.T, \n", " output_errors)\n", " # update the weights:\n", " tmp = hidden_errors * output_hidden * \\\n", " (1.0 - output_hidden)\n", " self.wih += self.learning_rate \\\n", " * np.dot(tmp, input_vector.T)\n", "\n", " def run(self, input_vector):\n", " # input_vector can be tuple, list or ndarray\n", " input_vector = np.array(input_vector, ndmin=2).T\n", "\n", " output_vector = np.dot(self.wih, \n", " input_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " output_vector = np.dot(self.who, \n", " output_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " return output_vector\n", " \n", " def confusion_matrix(self, data_array, labels):\n", " cm = np.zeros((10, 10), int)\n", " for i in range(len(data_array)):\n", " res = self.run(data_array[i])\n", " res_max = res.argmax()\n", " target = labels[i][0]\n", " cm[res_max, int(target)] += 1\n", " return cm \n", "\n", " def precision(self, label, confusion_matrix):\n", " col = confusion_matrix[:, label]\n", " return confusion_matrix[label, label] / col.sum()\n", " \n", " def recall(self, label, confusion_matrix):\n", " row = confusion_matrix[label, :]\n", " return confusion_matrix[label, label] / row.sum()\n", " \n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs \n" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "UZq1h5y6rGYT", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 231 }, "outputId": "8f69d61c-9505-4469-a4b0-77d76de1b575" }, "source": [ "ANN = NeuralNetwork(no_of_in_nodes = image_pixels, \n", " no_of_out_nodes = 10, \n", " no_of_hidden_nodes = 100,\n", " learning_rate = 0.1)\n", " \n", " \n", "for i in range(len(train_imgs)):\n", " ANN.train(train_imgs[i], train_labels_one_hot[i])" ], "execution_count": null, "outputs": [ { "output_type": "error", "ename": "NameError", "evalue": "ignored", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m ANN = NeuralNetwork(no_of_in_nodes = image_pixels, \n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mno_of_out_nodes\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m10\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mno_of_hidden_nodes\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m100\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m learning_rate = 0.1)\n\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mNameError\u001b[0m: name 'image_pixels' is not defined" ] } ] }, { "cell_type": "code", "metadata": { "id": "gFZGZ1f-rGVf", "colab_type": "code", "colab": {} }, "source": [ "for i in range(20):\n", " res = ANN.run(test_imgs[i])\n", " print(test_labels[i], np.argmax(res), np.max(res))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "gEtLm1Evg9zQ", "colab_type": "code", "colab": {} }, "source": [ "corrects, wrongs = ANN.evaluate(train_imgs, train_labels)\n", "print(\"accuracy train: \", corrects / ( corrects + wrongs))\n", "corrects, wrongs = ANN.evaluate(test_imgs, test_labels)\n", "print(\"accuracy: test\", corrects / ( corrects + wrongs))\n", "\n", "cm = ANN.confusion_matrix(train_imgs, train_labels)\n", "print(cm)\n", "\n", "for i in range(10):\n", " print(\"digit: \", i, \"precision: \", ANN.precision(i, cm), \"recall: \", ANN.recall(i, cm))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "lnGmLSxpg9xi", "colab_type": "code", "colab": {} }, "source": [ "#Multiple Runs\n", "#We can repeat the training multiple times. Each run is called an \"epoch\".\n", "\n", "epochs = 3\n", "\n", "NN = NeuralNetwork(no_of_in_nodes = image_pixels, \n", " no_of_out_nodes = 10, \n", " no_of_hidden_nodes = 100,\n", " learning_rate = 0.1)\n", "\n", "\n", "for epoch in range(epochs): \n", " print(\"epoch: \", epoch)\n", " for i in range(len(train_imgs)):\n", " NN.train(train_imgs[i], \n", " train_labels_one_hot[i])\n", " \n", " corrects, wrongs = NN.evaluate(train_imgs, train_labels)\n", " print(\"accuracy train: \", corrects / ( corrects + wrongs))\n", " corrects, wrongs = NN.evaluate(test_imgs, test_labels)\n", " print(\"accuracy: test\", corrects / ( corrects + wrongs))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "_UgCBcj6jEMC", "colab_type": "code", "colab": {} }, "source": [ "#We want to do the multiple training of the training set inside of our network. To this purpose we rewrite the method train and add a method train_single. train_single is more or less what we called 'train' before. Whereas the new 'train' method is doing the epoch counting. For testing purposes, we save the weight matrices after each epoch in\n", "#the list intermediate_weights. This list is returned as the output of train:\n", "\n", "import numpy as np\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm((low - mean) / sd, \n", " (upp - mean) / sd, \n", " loc=mean, \n", " scale=sd)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "I9niObB-jEJb", "colab_type": "code", "colab": {} }, "source": [ "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate):\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " self.learning_rate = learning_rate \n", " self.create_weight_matrices()\n", " \n", " def create_weight_matrices(self):\n", " \"\"\" A method to initialize the weight matrices of the neural network\"\"\"\n", " rad = 1 / np.sqrt(self.no_of_in_nodes)\n", " X = truncated_normal(mean=0, \n", " sd=1, \n", " low=-rad, \n", " upp=rad)\n", " self.wih = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes))\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes)\n", " X = truncated_normal(mean=0, \n", " sd=1, \n", " low=-rad, \n", " upp=rad)\n", " self.who = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes))\n", " \n", " \n", " def train_single(self, input_vector, target_vector):\n", " \"\"\"\n", " input_vector and target_vector can be tuple, \n", " list or ndarray\n", " \"\"\"\n", " \n", " output_vectors = []\n", " input_vector = np.array(input_vector, ndmin=2).T\n", " target_vector = np.array(target_vector, ndmin=2).T\n", "\n", " \n", " output_vector1 = np.dot(self.wih, \n", " input_vector)\n", " output_hidden = activation_function(output_vector1)\n", " \n", " output_vector2 = np.dot(self.who, \n", " output_hidden)\n", " output_network = activation_function(output_vector2)\n", " \n", " output_errors = target_vector - output_network\n", " # update the weights:\n", " tmp = output_errors * output_network * \\\n", " (1.0 - output_network) \n", " tmp = self.learning_rate * np.dot(tmp, \n", " output_hidden.T)\n", " self.who += tmp\n", "\n", "\n", " # calculate hidden errors:\n", " hidden_errors = np.dot(self.who.T, \n", " output_errors)\n", " # update the weights:\n", " tmp = hidden_errors * output_hidden * (1.0 - output_hidden)\n", " self.wih += self.learning_rate * np.dot(tmp, input_vector.T)\n", " \n", "\n", " def train(self, data_array, \n", " labels_one_hot_array,\n", " epochs=1,\n", " intermediate_results=False):\n", " intermediate_weights = []\n", " for epoch in range(epochs): \n", " print(\"*\", end=\"\")\n", " for i in range(len(data_array)):\n", " self.train_single(data_array[i], \n", " labels_one_hot_array[i])\n", " if intermediate_results:\n", " intermediate_weights.append((self.wih.copy(), \n", " self.who.copy()))\n", " return intermediate_weights \n", " \n", " def confusion_matrix(self, data_array, labels):\n", " cm = {}\n", " for i in range(len(data_array)):\n", " res = self.run(data_array[i])\n", " res_max = res.argmax()\n", " target = labels[i][0]\n", " if (target, res_max) in cm:\n", " cm[(target, res_max)] += 1\n", " else:\n", " cm[(target, res_max)] = 1\n", " return cm\n", " \n", " \n", " def run(self, input_vector):\n", " \"\"\" input_vector can be tuple, list or ndarray \"\"\"\n", " \n", " input_vector = np.array(input_vector, ndmin=2).T\n", "\n", " output_vector = np.dot(self.wih, \n", " input_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " output_vector = np.dot(self.who, \n", " output_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " return output_vector\n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs\n", " " ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "BLnf77ZoUWtd", "colab_type": "text" }, "source": [ "So, in the above code:\n", "\n", "1) setting up weight matrix\n", "\n", "2) setting up training of the network where each sample is trained and weights stored after 1 epoch (that is after all training samples have gone though one cycle, the weights and the epoch numbers are updated), the single training happens in train_single where weights for hidden_output and input_hidden is updated after the model goes through each sample\n", "\n", "3) train function stores the weights for each epoch(1 epoch will have all samples in it)\n", "\n", "4) Run function will have the final weights from train function because its run after .train(so that the weights are updated)\n", "\n", "5) The evaluate function uses the run function\n", "\n", "\n", "### the same logic is below, with bias nodes and multiple hidden layers" ] }, { "cell_type": "code", "metadata": { "id": "47Kr2fMPjEGl", "colab_type": "code", "colab": {} }, "source": [ "epochs = 10\n", "\n", "ANN = NeuralNetwork(no_of_in_nodes = image_pixels, \n", " no_of_out_nodes = 10, \n", " no_of_hidden_nodes = 100,\n", " learning_rate = 0.15)\n", " \n", " \n", "weights = ANN.train(train_imgs, \n", " train_labels_one_hot, \n", " epochs=epochs, \n", " intermediate_results=True)\n", "\n", "\n", "\n", "cm = ANN.confusion_matrix(train_imgs, train_labels)\n", " \n", "print(ANN.run(train_imgs[i]))\n", "\n", "\n", "for i in range(epochs): \n", " print(\"epoch: \", i)\n", " ANN.wih = weights[i][0]\n", " ANN.who = weights[i][1]\n", " \n", " corrects, wrongs = ANN.evaluate(train_imgs, train_labels)\n", " print(\"accuracy train: \", corrects / ( corrects + wrongs))\n", " corrects, wrongs = ANN.evaluate(test_imgs, test_labels)\n", " print(\"accuracy: test\", corrects / ( corrects + wrongs))" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "ZNaAPmORjEDY", "colab_type": "code", "colab": {} }, "source": [ "# With Bias Nodes\n", "\n", "import numpy as np\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm((low - mean) / sd, \n", " (upp - mean) / sd, \n", " loc=mean, \n", " scale=sd)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "X8p6E9eGjD_3", "colab_type": "code", "colab": {} }, "source": [ "class NeuralNetwork:\n", " \n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate,\n", " bias=None\n", " ): \n", "\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes \n", " self.no_of_hidden_nodes = no_of_hidden_nodes \n", " self.learning_rate = learning_rate \n", " self.bias = bias\n", " self.create_weight_matrices()\n", " \n", " \n", " \n", " def create_weight_matrices(self):\n", " \"\"\" \n", " A method to initialize the weight \n", " matrices of the neural network with \n", " optional bias nodes\n", " \"\"\"\n", " \n", " bias_node = 1 if self.bias else 0\n", " \n", " rad = 1 / np.sqrt(self.no_of_in_nodes + bias_node)\n", " X = truncated_normal(mean=0, \n", " sd=1, \n", " low=-rad, \n", " upp=rad)\n", " self.wih = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes + bias_node))\n", "\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes + bias_node)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.who = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes + bias_node))\n", " \n", " \n", " \n", " def train(self, input_vector, target_vector):\n", " \"\"\" \n", " input_vector and target_vector can \n", " be tuple, list or ndarray\n", " \"\"\"\n", " \n", " bias_node = 1 if self.bias else 0\n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate((input_vector, \n", " [self.bias]) )\n", " \n", " \n", " input_vector = np.array(input_vector, ndmin=2).T\n", " target_vector = np.array(target_vector, ndmin=2).T\n", "\n", " \n", " output_vector1 = np.dot(self.wih, \n", " input_vector)\n", " output_hidden = activation_function(output_vector1)\n", " \n", " if self.bias:\n", " output_hidden = np.concatenate((output_hidden, \n", " [[self.bias]]) )\n", " \n", " \n", " output_vector2 = np.dot(self.who, \n", " output_hidden)\n", " output_network = activation_function(output_vector2)\n", " \n", " output_errors = target_vector - output_network\n", " # update the weights:\n", " tmp = output_errors * output_network * (1.0 - output_network) \n", " tmp = self.learning_rate * np.dot(tmp, output_hidden.T)\n", " self.who += tmp\n", "\n", "\n", " # calculate hidden errors:\n", " hidden_errors = np.dot(self.who.T, \n", " output_errors)\n", " # update the weights:\n", " tmp = hidden_errors * output_hidden * (1.0 - output_hidden)\n", " if self.bias:\n", " x = np.dot(tmp, input_vector.T)[:-1,:] \n", " else:\n", " x = np.dot(tmp, input_vector.T)\n", " self.wih += self.learning_rate * x\n", " \n", " \n", " \n", " def run(self, input_vector):\n", " \"\"\"\n", " input_vector can be tuple, list or ndarray\n", " \"\"\"\n", " \n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate((input_vector, [1]) )\n", " input_vector = np.array(input_vector, ndmin=2).T\n", "\n", " output_vector = np.dot(self.wih, \n", " input_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " if self.bias:\n", " output_vector = np.concatenate( (output_vector, \n", " [[1]]) )\n", " \n", "\n", " output_vector = np.dot(self.who, \n", " output_vector)\n", " output_vector = activation_function(output_vector)\n", " return output_vector\n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "VGEoLfHMjD8R", "colab_type": "code", "colab": {} }, "source": [ "ANN = NeuralNetwork(no_of_in_nodes=image_pixels, \n", " no_of_out_nodes=10, \n", " no_of_hidden_nodes=200,\n", " learning_rate=0.1,\n", " bias=None)\n", " \n", " \n", "for i in range(len(train_imgs)):\n", " ANN.train(train_imgs[i], train_labels_one_hot[i])\n", "for i in range(20):\n", " res = ANN.run(test_imgs[i])\n", " print(test_labels[i], np.argmax(res), np.max(res))\n", "\n", "\n", "corrects, wrongs = ANN.evaluate(train_imgs, train_labels)\n", "print(\"accuracy train: \", corrects / ( corrects + wrongs))\n", "corrects, wrongs = ANN.evaluate(test_imgs, test_labels)\n", "print(\"accuracy: test\", corrects / ( corrects + wrongs)) " ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "qYND2-SMqgtx", "colab_type": "code", "colab": {} }, "source": [ "## Version with Bias and Epochs:\n", "\n", "import numpy as np\n", "\n", "@np.vectorize\n", "def sigmoid(x):\n", " return 1 / (1 + np.e ** -x)\n", "activation_function = sigmoid\n", "\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm((low - mean) / sd,\n", " (upp - mean) / sd,\n", " loc=mean,\n", " scale=sd)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "OZekfay3qgq1", "colab_type": "code", "colab": {} }, "source": [ "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate,\n", " bias=None\n", " ): \n", "\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes\n", " \n", " self.no_of_hidden_nodes = no_of_hidden_nodes\n", " \n", " self.learning_rate = learning_rate \n", " self.bias = bias\n", " self.create_weight_matrices()\n", " \n", " \n", " \n", " def create_weight_matrices(self):\n", " \"\"\" \n", " A method to initialize the weight matrices \n", " of the neural network with optional \n", " bias nodes\"\"\"\n", " \n", " bias_node = 1 if self.bias else 0\n", " \n", " rad = 1 / np.sqrt(self.no_of_in_nodes + bias_node)\n", " X = truncated_normal(mean=0, sd=1, low=-rad, upp=rad)\n", " self.wih = X.rvs((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes + bias_node))\n", "\n", " rad = 1 / np.sqrt(self.no_of_hidden_nodes + bias_node)\n", " X = truncated_normal(mean=0, \n", " sd=1, \n", " low=-rad, \n", " upp=rad)\n", " self.who = X.rvs((self.no_of_out_nodes, \n", " self.no_of_hidden_nodes + bias_node))\n", " \n", " \n", " def train_single(self, input_vector, target_vector):\n", " \"\"\"\n", " input_vector and target_vector can be tuple, \n", " list or ndarray\n", " \"\"\"\n", "\n", " bias_node = 1 if self.bias else 0\n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate( (input_vector, \n", " [self.bias]) )\n", " \n", " output_vectors = []\n", " input_vector = np.array(input_vector, ndmin=2).T\n", " target_vector = np.array(target_vector, ndmin=2).T\n", "\n", " \n", " output_vector1 = np.dot(self.wih, \n", " input_vector)\n", " output_hidden = activation_function(output_vector1)\n", " \n", " if self.bias:\n", " output_hidden = np.concatenate((output_hidden, \n", " [[self.bias]]) )\n", "\n", " \n", " output_vector2 = np.dot(self.who, \n", " output_hidden)\n", " output_network = activation_function(output_vector2)\n", " \n", " output_errors = target_vector - output_network\n", " # update the weights:\n", " tmp = output_errors * output_network * (1.0 - output_network) \n", " tmp = self.learning_rate * np.dot(tmp, \n", " output_hidden.T) \n", " self.who += tmp\n", "\n", " \n", " # calculate hidden errors:\n", " hidden_errors = np.dot(self.who.T, \n", " output_errors)\n", " # update the weights:\n", " tmp = hidden_errors * output_hidden * (1.0 - output_hidden)\n", " if self.bias:\n", " x = np.dot(tmp, input_vector.T)[:-1,:] \n", " else:\n", " x = np.dot(tmp, input_vector.T)\n", " self.wih += self.learning_rate * x\n", " \n", "\n", " def train(self, data_array, \n", " labels_one_hot_array,\n", " epochs=1,\n", " intermediate_results=False):\n", " intermediate_weights = []\n", " for epoch in range(epochs): \n", " for i in range(len(data_array)):\n", " self.train_single(data_array[i], \n", " labels_one_hot_array[i])\n", " if intermediate_results:\n", " intermediate_weights.append((self.wih.copy(), \n", " self.who.copy()))\n", " return intermediate_weights \n", " \n", "\n", " \n", " \n", " def run(self, input_vector):\n", " # input_vector can be tuple, list or ndarray\n", " \n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate( (input_vector, \n", " [self.bias]) )\n", " input_vector = np.array(input_vector, ndmin=2).T\n", "\n", " output_vector = np.dot(self.wih, \n", " input_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " if self.bias:\n", " output_vector = np.concatenate( (output_vector, \n", " [[self.bias]]) )\n", " \n", "\n", " output_vector = np.dot(self.who, \n", " output_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " return output_vector\n", " \n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "IXP4D6ybqgnz", "colab_type": "code", "colab": {} }, "source": [ "\n", "epochs = 12\n", "\n", "network = NeuralNetwork(no_of_in_nodes=image_pixels, \n", " no_of_out_nodes=10, \n", " no_of_hidden_nodes=100,\n", " learning_rate=0.1,\n", " bias=None)\n", "\n", "weights = network.train(train_imgs, \n", " train_labels_one_hot, \n", " epochs=epochs, \n", " intermediate_results=True) \n", "for epoch in range(epochs): \n", " print(\"epoch: \", epoch)\n", " network.wih = weights[epoch][0]\n", " network.who = weights[epoch][1]\n", " corrects, wrongs = network.evaluate(train_imgs, \n", " train_labels)\n", " print(\"accuracy train: \", corrects / ( corrects + wrongs)) \n", " corrects, wrongs = network.evaluate(test_imgs, \n", " test_labels)\n", " print(\"accuracy test: \", corrects / ( corrects + wrongs)) " ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "rKCClW_7qgkC", "colab_type": "code", "colab": {} }, "source": [ "epochs = 12\n", "\n", "\n", "with open(\"nist_tests.csv\", \"w\") as fh_out: \n", " for hidden_nodes in [20, 50, 100, 120, 150]:\n", " for learning_rate in [0.01, 0.05, 0.1, 0.2]:\n", " for bias in [None, 0.5]:\n", " network = NeuralNetwork(no_of_in_nodes=image_pixels, \n", " no_of_out_nodes=10, \n", " no_of_hidden_nodes=hidden_nodes,\n", " learning_rate=learning_rate,\n", " bias=bias)\n", " weights = network.train(train_imgs, \n", " train_labels_one_hot, \n", " epochs=epochs, \n", " intermediate_results=True) \n", " for epoch in range(epochs): \n", " print(\"*\", end=\"\")\n", " network.wih = weights[epoch][0]\n", " network.who = weights[epoch][1]\n", " train_corrects, train_wrongs = network.evaluate(train_imgs, \n", " train_labels)\n", " \n", " test_corrects, test_wrongs = network.evaluate(test_imgs, \n", " test_labels)\n", " outstr = str(hidden_nodes) + \" \" + str(learning_rate) + \" \" + str(bias) \n", " outstr += \" \" + str(epoch) + \" \"\n", " outstr += str(train_corrects / (train_corrects + train_wrongs)) + \" \"\n", " outstr += str(train_wrongs / (train_corrects + train_wrongs)) + \" \"\n", " outstr += str(test_corrects / (test_corrects + test_wrongs)) + \" \"\n", " outstr += str(test_wrongs / (test_corrects + test_wrongs)) \n", " \n", " fh_out.write(outstr + \"\\n\" )\n", " fh_out.flush()\n" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "CnsnR5aHqghK", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 51 }, "outputId": "4f21c5e2-8809-497c-87ef-25cc48048856" }, "source": [ "from scipy.stats import truncnorm\n", "a, b = 0.1, 2\n", "r = truncnorm.rvs(a, b, size=10)\n", "a, b = 0.1, 2\n", "r" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([1.15240077, 1.61190255, 1.67895239, 0.20673539, 0.49145456,\n", " 1.37142258, 0.61435577, 1.65742488, 0.81815654, 0.44936201])" ] }, "metadata": { "tags": [] }, "execution_count": 36 } ] }, { "cell_type": "code", "metadata": { "id": "A2AdQApJqgd_", "colab_type": "code", "colab": {} }, "source": [ "## Networks with multiple hidden layers\n", "\n", "# We will write a new neural network class, in which we can define an arbitrary number of hidden layers. The code is also improved, because the weight matrices are now build inside of a loop instead redundant code:\n", "\n", "import numpy as np\n", "from scipy.special import expit as activation_function\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm((low - mean) / sd, \n", " (upp - mean) / sd, \n", " loc=mean, \n", " scale=sd)\n", "\n", "\n", "class NeuralNetwork:\n", " \n", " \n", " def __init__(self, \n", " network_structure, # ie. [input_nodes, hidden1_nodes, ... , hidden_n_nodes, output_nodes]\n", " learning_rate,\n", " bias=None\n", " ): \n", "\n", " self.structure = network_structure\n", " self.learning_rate = learning_rate \n", " self.bias = bias\n", " self.create_weight_matrices()\n", " \n", "\n", " \n", " def create_weight_matrices(self):\n", " \n", " bias_node = 1 if self.bias else 0\n", " self.weights_matrices = []\n", " \n", " layer_index = 1\n", " no_of_layers = len(self.structure)\n", " while layer_index < no_of_layers:\n", " nodes_in = self.structure[layer_index-1]\n", " nodes_out = self.structure[layer_index]\n", " n = (nodes_in + bias_node) * nodes_out\n", " rad = 1 / np.sqrt(nodes_in)\n", " X = truncated_normal(mean=2, \n", " sd=1, \n", " low=-rad, \n", " upp=rad)\n", " wm = X.rvs(n).reshape((nodes_out, nodes_in + bias_node))\n", " self.weights_matrices.append(wm)\n", " layer_index += 1\n", "\n", "\n", " def train(self, input_vector, target_vector):\n", " \"\"\"\n", " input_vector and target_vector can be tuple, \n", " list or ndarray\n", " \"\"\" \n", "\n", " no_of_layers = len(self.structure)\n", " input_vector = np.array(input_vector, ndmin=2).T\n", " layer_index = 0\n", " # The output/input vectors of the various layers:\n", " res_vectors = [input_vector]\n", " while layer_index < no_of_layers - 1:\n", " in_vector = res_vectors[-1]\n", " if self.bias:\n", " # adding bias node to the end of the 'input'_vector\n", " in_vector = np.concatenate( (in_vector, \n", " [[self.bias]]) )\n", " res_vectors[-1] = in_vector\n", " x = np.dot(self.weights_matrices[layer_index], \n", " in_vector)\n", " out_vector = activation_function(x)\n", " # the output of one layer is the input of the next one:\n", " res_vectors.append(out_vector) \n", " layer_index += 1\n", "\n", "\n", "\n", " layer_index = no_of_layers - 1\n", " target_vector = np.array(target_vector, ndmin=2).T\n", " # The input vectors to the various layers\n", " output_errors = target_vector - out_vector \n", " while layer_index > 0:\n", " out_vector = res_vectors[layer_index]\n", " in_vector = res_vectors[layer_index-1]\n", "\n", " if self.bias and not layer_index==(no_of_layers-1):\n", " out_vector = out_vector[:-1,:].copy()\n", "\n", " tmp = output_errors * out_vector * (1.0 - out_vector) \n", " tmp = np.dot(tmp, in_vector.T)\n", " \n", " #if self.bias:\n", " # tmp = tmp[:-1,:] \n", " \n", " self.weights_matrices[layer_index-1] += self.learning_rate * tmp\n", " \n", " output_errors = np.dot(self.weights_matrices[layer_index-1].T, \n", " output_errors)\n", " if self.bias:\n", " output_errors = output_errors[:-1,:]\n", " layer_index -= 1\n", "\n", "\n", " \n", " def run(self, input_vector):\n", " # input_vector can be tuple, list or ndarray\n", "\n", " no_of_layers = len(self.structure)\n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate( (input_vector, \n", " [self.bias]) )\n", " in_vector = np.array(input_vector, ndmin=2).T\n", "\n", " layer_index = 1\n", " # The input vectors to the various layers\n", " while layer_index < no_of_layers:\n", " x = np.dot(self.weights_matrices[layer_index-1], \n", " in_vector)\n", " out_vector = activation_function(x)\n", " \n", " # input vector for next layer\n", " in_vector = out_vector\n", " if self.bias:\n", " in_vector = np.concatenate( (in_vector, \n", " [[self.bias]]) ) \n", " \n", " layer_index += 1\n", " \n", " \n", " return out_vector\n", "\n", "\n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs " ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "Pm_zm6X5ZQb1", "colab_type": "text" }, "source": [ "So in the above:\n", "\n", "Same happens, but in train function the number of layers are considered and first forward propagation happens, that is the first while loop and from second while loop it iterates back and backpropagates to update the weights and in the above example its still one epoch,\n", "\n", "In the run function, same as above run functions but for each layer.\n", "\n", "The same with multiple epochs is below:\n", "\n", "# Networks with multiple hidden layers and Epochs(train single function)" ] }, { "cell_type": "code", "metadata": { "id": "kirsWo_NqgZl", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "from scipy.special import expit as activation_function\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm((low - mean) / sd,\n", " (upp - mean) / sd, \n", " loc=mean, \n", " scale=sd)\n", "\n", "\n", "class NeuralNetwork:\n", " \n", " \n", " def __init__(self, \n", " network_structure, # ie. [input_nodes, hidden1_nodes, ... , hidden_n_nodes, output_nodes]\n", " learning_rate,\n", " bias=None\n", " ): \n", "\n", " self.structure = network_structure\n", " self.learning_rate = learning_rate \n", " self.bias = bias\n", " self.create_weight_matrices()\n", "\n", " \n", " \n", " def create_weight_matrices(self):\n", " X = truncated_normal(mean=2, sd=1, low=-0.5, upp=0.5)\n", " \n", " bias_node = 1 if self.bias else 0\n", " self.weights_matrices = [] \n", " layer_index = 1\n", " no_of_layers = len(self.structure)\n", " while layer_index < no_of_layers:\n", " nodes_in = self.structure[layer_index-1]\n", " nodes_out = self.structure[layer_index]\n", " n = (nodes_in + bias_node) * nodes_out\n", " rad = 1 / np.sqrt(nodes_in)\n", " X = truncated_normal(mean=2, sd=1, low=-rad, upp=rad)\n", " wm = X.rvs(n).reshape((nodes_out, nodes_in + bias_node))\n", " self.weights_matrices.append(wm)\n", " layer_index += 1\n", "\n", " \n", " \n", " def train_single(self, input_vector, target_vector):\n", " # input_vector and target_vector can be tuple, list or ndarray\n", " \n", " no_of_layers = len(self.structure) \n", " input_vector = np.array(input_vector, ndmin=2).T\n", "\n", " layer_index = 0\n", " # The output/input vectors of the various layers:\n", " res_vectors = [input_vector] \n", " while layer_index < no_of_layers - 1:\n", " in_vector = res_vectors[-1]\n", " if self.bias:\n", " # adding bias node to the end of the 'input'_vector\n", " in_vector = np.concatenate( (in_vector, \n", " [[self.bias]]) )\n", " res_vectors[-1] = in_vector\n", " x = np.dot(self.weights_matrices[layer_index], in_vector)\n", " out_vector = activation_function(x)\n", " res_vectors.append(out_vector) \n", " layer_index += 1\n", " \n", " layer_index = no_of_layers - 1\n", " target_vector = np.array(target_vector, ndmin=2).T\n", " # The input vectors to the various layers\n", " output_errors = target_vector - out_vector \n", " while layer_index > 0:\n", " out_vector = res_vectors[layer_index]\n", " in_vector = res_vectors[layer_index-1]\n", "\n", " if self.bias and not layer_index==(no_of_layers-1):\n", " out_vector = out_vector[:-1,:].copy()\n", "\n", " tmp = output_errors * out_vector * (1.0 - out_vector) \n", " tmp = np.dot(tmp, in_vector.T)\n", " \n", " #if self.bias:\n", " # tmp = tmp[:-1,:] \n", " \n", " self.weights_matrices[layer_index-1] += self.learning_rate * tmp\n", " \n", " output_errors = np.dot(self.weights_matrices[layer_index-1].T, \n", " output_errors)\n", " if self.bias:\n", " output_errors = output_errors[:-1,:]\n", " layer_index -= 1\n", " \n", "\n", " \n", "\n", " def train(self, data_array, \n", " labels_one_hot_array,\n", " epochs=1,\n", " intermediate_results=False):\n", " intermediate_weights = []\n", " for epoch in range(epochs): \n", " for i in range(len(data_array)):\n", " self.train_single(data_array[i], labels_one_hot_array[i])\n", " if intermediate_results:\n", " intermediate_weights.append((self.wih.copy(), \n", " self.who.copy()))\n", " return intermediate_weights \n", " \n", "\n", " \n", " \n", " def run(self, input_vector):\n", " # input_vector can be tuple, list or ndarray\n", "\n", " no_of_layers = len(self.structure)\n", " if self.bias:\n", " # adding bias node to the end of the inpuy_vector\n", " input_vector = np.concatenate( (input_vector, [self.bias]) )\n", " in_vector = np.array(input_vector, ndmin=2).T\n", "\n", " layer_index = 1\n", " # The input vectors to the various layers\n", " while layer_index < no_of_layers:\n", " x = np.dot(self.weights_matrices[layer_index-1], \n", " in_vector)\n", " out_vector = activation_function(x)\n", " \n", " # input vector for next layer\n", " in_vector = out_vector\n", " if self.bias:\n", " in_vector = np.concatenate( (in_vector, \n", " [[self.bias]]) ) \n", " \n", " layer_index += 1\n", " \n", " \n", " return out_vector\n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs\n" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "mlvotJQFg9uF", "colab_type": "code", "colab": {} }, "source": [ "epochs = 3\n", "\n", "ANN = NeuralNetwork(network_structure=[image_pixels, 80, 80, 10],\n", " learning_rate=0.01,\n", " bias=None)\n", " \n", " \n", "ANN.train(train_imgs, train_labels_one_hot, epochs=epochs)\n", "In [ ]:\n", "corrects, wrongs = ANN.evaluate(train_imgs, train_labels)\n", "print(\"accuracy train: \", corrects / ( corrects + wrongs))\n", "corrects, wrongs = ANN.evaluate(test_imgs, test_labels)\n", "print(\"accuracy: test\", corrects / ( corrects + wrongs))" ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "2qBBlgl1bHRz", "colab_type": "text" }, "source": [ "\n", "\n", "### Dropout Neural Networks\n", "\n", "The term \"dropout\" is used for a technique which drops out some nodes of the network. Dropping out can be seen as temporarily deactivating or ignoring neurons of the network. This technique is applied in the training phase to reduce overfitting effects. Overfitting is an error which occurs when a network is too closely fit to a limited set of input samples.\n", "\n", "The basic idea behind dropout neural networks is to dropout nodes so that the network can concentrate on other features. Think about it like this. You watch lots of films from your favourite actor. At some point you listen to the radio and here somebody in an interview. You don't recognize your favourite actor, because you have seen only movies and your are a visual type. Now, imagine that you can only listen to the audio tracks of the films. In this case you will have to learn to differentiate the voices of the actresses and actors. So by dropping out the visual part you are forced tp focus on the sound features!\n", "\n", "This technique has been first proposed in a paper \"Dropout: A Simple Way to Prevent Neural Networks from Overfitting\" by Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky, Ilya Sutskever and Ruslan Salakhutdinov in 2014\n", "\n", "We will implement in our tutorial on machine learning in Python a Python class which is capable of dropout." ] }, { "cell_type": "code", "metadata": { "id": "8lX_HilLak_V", "colab_type": "code", "colab": {} }, "source": [ "# Modifying the Weight Arrays\n", "\n", "If we deactivate a node, we have to modify the weight arrays accordingly. To demonstrate how this can be accomplished, we will use a network with three input nodes, four hidden and two output node" ], "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "FC3qo3tobjqo", "colab_type": "text" }, "source": [ "![](https://www.python-course.eu/images/example_network_3_4_2_without_bias.png)\n", "\n", "At first, we will have a look at the weight array between the input and the hidden layer. We called this array 'wih' (weights between input and hidden layer).\n", "\n", "Let's deactivate (drop out) the node i2. We can see in the following diagram what's happening:\n", "\n", "![](https://www.python-course.eu/images/weights_input2hidden_dropout_i2.png)\n", "\n", "This means that we have to take out every second product of the summation, which means that we have to delete the whole second column of the matrix. The second element from the input vector has to be deleted as well.\n", "\n", "\n", "![](https://www.python-course.eu/images/weight_matrix_input_dropout_i2.png)\n", "\n", "Now we will examine what happens if we take out a hidden node. We take out the first hidden node, i.e. h1.\n", "\n", "\n", "![](https://www.python-course.eu/images/weights_input2hidden_dropout_h1.png)\n", "\n", "In this case, we can remove the complete first line of our weight matrix:\n", "\n", "\n", "![](https://www.python-course.eu/images/weight_matrix_input_dropout_h1.png)\n", "\n", "\n", "Taking out a hidden node affects the next weight matrix as well. Let's have a look at what is happening in the network graph:\n", "\n", "![](https://www.python-course.eu/images/weights_hidden2output_dropout_h1.png)\n", "\n", "It is easy to see that the first column of the who weight matrix has to be removed again:\n", "\n", "![](https://www.python-course.eu/images/weight_matrix_hidden_dropout_h1.png)\n", "\n", "\n", "So far we have arbitrarily chosen one node to deactivate. The dropout approach means that we randomly choose a certain number of nodes from the input and the hidden layers, which remain active and turn off the other nodes of these layers. After this we can train a part of our learn set with this network. The next step consists in activating all the nodes again and randomly chose other nodes. It is also possible to train the whole training set with the randomly created dropout networks.\n", "\n", "We present three possible randomly chosen dropout networks in the following three diagrams:\n", "\n", "\n", "![](https://www.python-course.eu/images/example_network_3_4_2_dropout_examples1.png)\n", "\n", "![](https://www.python-course.eu/images/example_network_3_4_2_dropout_examples2.png)\n", "\n", "\n", "![](https://www.python-course.eu/images/example_network_3_4_2_dropout_examples3.png)\n", "\n", "Now it is time to think about a possible Python implementation.\n", "\n", "We will start with the weight matrix between input and hidden layer. We will randomly create a weight matrix for 10 input nodes and 5 hidden nodes. We fill our matrix with random numbers between -10 and 10, which are not proper weight values, but this way we can see better what is going on:" ] }, { "cell_type": "code", "metadata": { "id": "awNHtIWYbJHw", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 102 }, "outputId": "6ee2f5f9-aeb3-4e5d-c461-fac9523802c6" }, "source": [ "import numpy as np\n", "import random\n", "\n", "input_nodes = 10\n", "hidden_nodes = 5\n", "output_nodes = 7\n", "\n", "wih = np.random.randint(-10, 10, (hidden_nodes, input_nodes))\n", "wih" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[ -4, 6, 9, -7, 0, -4, 4, -8, -2, -1],\n", " [ 4, -1, 4, 0, -10, -10, -6, 9, 2, 0],\n", " [ 5, -9, -7, 8, -4, 1, -7, -1, 9, -4],\n", " [ -1, 3, -4, 1, 9, -8, -3, -9, -10, 4],\n", " [ 3, 3, 9, -10, 3, -3, 8, 9, -8, 9]])" ] }, "metadata": { "tags": [] }, "execution_count": 41 } ] }, { "cell_type": "code", "metadata": { "id": "nS3vmjqAbJEv", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 34 }, "outputId": "556ed90e-49d5-4c9c-92d0-a3e1db9062d4" }, "source": [ "#We will choose now the active nodes for the input layer. We calculate random indices for the active nodes:\n", "\n", "active_input_percentage = 0.7\n", "active_input_nodes = int(input_nodes * active_input_percentage)\n", "active_input_indices = sorted(random.sample(range(0, input_nodes), \n", " active_input_nodes))\n", "active_input_indices" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[2, 3, 4, 5, 7, 8, 9]" ] }, "metadata": { "tags": [] }, "execution_count": 42 } ] }, { "cell_type": "code", "metadata": { "id": "nR62sHUSbJBx", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 102 }, "outputId": "57732ea1-cd90-43f5-d5e6-669213df940a" }, "source": [ "# We learned above that we have to remove the column j, if the node ij is removed. We can easily accomplish this for all deactived nodes by using the slicing operator with the active nodes:\n", "\n", "wih_old = wih.copy()\n", "wih = wih[:, active_input_indices]\n", "wih" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[ 9, -7, 0, -4, -8, -2, -1],\n", " [ 4, 0, -10, -10, 9, 2, 0],\n", " [ -7, 8, -4, 1, -1, 9, -4],\n", " [ -4, 1, 9, -8, -9, -10, 4],\n", " [ 9, -10, 3, -3, 9, -8, 9]])" ] }, "metadata": { "tags": [] }, "execution_count": 43 } ] }, { "cell_type": "code", "metadata": { "id": "v7t7JXbDbI-1", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 272 }, "outputId": "fced7812-16cb-44c5-db87-43de17a09f4c" }, "source": [ "# As we have mentioned before, we will have to modify both the 'wih' and the 'who' matrix:\n", "\n", "who = np.random.randint(-10, 10, (output_nodes, hidden_nodes))\n", "\n", "print(who)\n", "active_hidden_percentage = 0.7\n", "active_hidden_nodes = int(hidden_nodes * active_hidden_percentage)\n", "active_hidden_indices = sorted(random.sample(range(0, hidden_nodes), \n", " active_hidden_nodes))\n", "print(active_hidden_indices)\n", "\n", "who_old = who.copy()\n", "who = who[:, active_hidden_indices]\n", "print(who)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "[[ -5 2 -3 2 -10]\n", " [-10 0 7 6 8]\n", " [ 2 -5 3 7 9]\n", " [ 6 -3 1 7 3]\n", " [ -2 1 -5 -10 -1]\n", " [ -5 7 6 -5 -9]\n", " [ -3 9 6 4 7]]\n", "[1, 2, 3]\n", "[[ 2 -3 2]\n", " [ 0 7 6]\n", " [ -5 3 7]\n", " [ -3 1 7]\n", " [ 1 -5 -10]\n", " [ 7 6 -5]\n", " [ 9 6 4]]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "mmB2Xd2pbI7j", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 68 }, "outputId": "1a84b0d3-44f2-45ed-b62d-7dc5d51487b4" }, "source": [ "# We have to change wih accordingly:\n", "\n", "wih = wih[active_hidden_indices]\n", "wih" ], "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "array([[ 4, 0, -10, -10, 9, 2, 0],\n", " [ -7, 8, -4, 1, -1, 9, -4],\n", " [ -4, 1, 9, -8, -9, -10, 4]])" ] }, "metadata": { "tags": [] }, "execution_count": 45 } ] }, { "cell_type": "code", "metadata": { "id": "X-4M_dJPbI4C", "colab_type": "code", "colab": { "base_uri": "https://localhost:8080/", "height": 663 }, "outputId": "d7349209-cb26-4a85-8b77-59ba9671298f" }, "source": [ "# The following Python code summarizes the sniplets from above:\n", "\n", "import numpy as np\n", "import random\n", "\n", "input_nodes = 10\n", "hidden_nodes = 5\n", "output_nodes = 7\n", "\n", "wih = np.random.randint(-10, 10, (hidden_nodes, input_nodes))\n", "print(\"wih: \\n\", wih)\n", "who = np.random.randint(-10, 10, (output_nodes, hidden_nodes))\n", "print(\"who:\\n\", who)\n", "\n", "active_input_percentage = 0.7\n", "active_hidden_percentage = 0.7\n", "\n", "active_input_nodes = int(input_nodes * active_input_percentage)\n", "active_input_indices = sorted(random.sample(range(0, input_nodes), \n", " active_input_nodes))\n", "print(\"\\nactive input indices: \", active_input_indices)\n", "active_hidden_nodes = int(hidden_nodes * active_hidden_percentage)\n", "active_hidden_indices = sorted(random.sample(range(0, hidden_nodes), \n", " active_hidden_nodes))\n", "print(\"active hidden indices: \", active_hidden_indices)\n", "\n", "wih_old = wih.copy()\n", "wih = wih[:, active_input_indices]\n", "print(\"\\nwih after deactivating input nodes:\\n\", wih)\n", "wih = wih[active_hidden_indices]\n", "print(\"\\nwih after deactivating hidden nodes:\\n\", wih)\n", "\n", "\n", "who_old = who.copy()\n", "who = who[:, active_hidden_indices]\n", "print(\"\\nwih after deactivating hidden nodes:\\n\", who)" ], "execution_count": null, "outputs": [ { "output_type": "stream", "text": [ "wih: \n", " [[ -5 7 -4 -2 3 -10 1 -4 1 -2]\n", " [-10 9 -10 0 3 -8 -4 1 4 0]\n", " [ 3 -5 1 -7 -3 7 6 -1 -10 -8]\n", " [ -8 -6 -5 9 -2 2 0 -2 0 0]\n", " [ 7 -5 7 4 4 4 -9 -6 -7 0]]\n", "who:\n", " [[ 3 -8 -8 -4 2]\n", " [ 4 8 -9 -1 0]\n", " [-10 -10 3 4 8]\n", " [ 9 -7 8 -8 2]\n", " [ -6 0 -5 2 -4]\n", " [-10 7 6 0 -9]\n", " [ 2 -10 4 -5 8]]\n", "\n", "active input indices: [0, 1, 2, 3, 5, 7, 9]\n", "active hidden indices: [0, 2, 4]\n", "\n", "wih after deactivating input nodes:\n", " [[ -5 7 -4 -2 -10 -4 -2]\n", " [-10 9 -10 0 -8 1 0]\n", " [ 3 -5 1 -7 7 -1 -8]\n", " [ -8 -6 -5 9 2 -2 0]\n", " [ 7 -5 7 4 4 -6 0]]\n", "\n", "wih after deactivating hidden nodes:\n", " [[ -5 7 -4 -2 -10 -4 -2]\n", " [ 3 -5 1 -7 7 -1 -8]\n", " [ 7 -5 7 4 4 -6 0]]\n", "\n", "wih after deactivating hidden nodes:\n", " [[ 3 -8 2]\n", " [ 4 -9 0]\n", " [-10 3 8]\n", " [ 9 8 2]\n", " [ -6 -5 -4]\n", " [-10 6 -9]\n", " [ 2 4 8]]\n" ], "name": "stdout" } ] }, { "cell_type": "code", "metadata": { "id": "L8y9V_tabI0g", "colab_type": "code", "colab": {} }, "source": [ "import numpy as np\n", "import random\n", "from scipy.special import expit as activation_function\n", "from scipy.stats import truncnorm\n", "\n", "def truncated_normal(mean=0, sd=1, low=0, upp=10):\n", " return truncnorm(\n", " (low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)\n", "\n", "\n", "class NeuralNetwork:\n", " \n", " def __init__(self, \n", " no_of_in_nodes, \n", " no_of_out_nodes, \n", " no_of_hidden_nodes,\n", " learning_rate,\n", " bias=None\n", " ): \n", "\n", " self.no_of_in_nodes = no_of_in_nodes\n", " self.no_of_out_nodes = no_of_out_nodes \n", " self.no_of_hidden_nodes = no_of_hidden_nodes \n", " self.learning_rate = learning_rate \n", " self.bias = bias\n", " self.create_weight_matrices()\n", "\n", "\n", " def create_weight_matrices(self):\n", " X = truncated_normal(mean=2, sd=1, low=-0.5, upp=0.5)\n", " \n", " bias_node = 1 if self.bias else 0\n", "\n", " n = (self.no_of_in_nodes + bias_node) * self.no_of_hidden_nodes\n", " X = truncated_normal(mean=2, sd=1, low=-0.5, upp=0.5)\n", " self.wih = X.rvs(n).reshape((self.no_of_hidden_nodes, \n", " self.no_of_in_nodes + bias_node))\n", "\n", " n = (self.no_of_hidden_nodes + bias_node) * self.no_of_out_nodes\n", " X = truncated_normal(mean=2, sd=1, low=-0.5, upp=0.5)\n", " self.who = X.rvs(n).reshape((self.no_of_out_nodes, \n", " (self.no_of_hidden_nodes + bias_node)))\n", " \n", "\n", " def dropout_weight_matrices(self,\n", " active_input_percentage=0.70,\n", " active_hidden_percentage=0.70):\n", " # restore wih array, if it had been used for dropout\n", " self.wih_orig = self.wih.copy()\n", " self.no_of_in_nodes_orig = self.no_of_in_nodes\n", " self.no_of_hidden_nodes_orig = self.no_of_hidden_nodes\n", " self.who_orig = self.who.copy()\n", " \n", "\n", " active_input_nodes = int(self.no_of_in_nodes * active_input_percentage)\n", " active_input_indices = sorted(random.sample(range(0, self.no_of_in_nodes), \n", " active_input_nodes))\n", " active_hidden_nodes = int(self.no_of_hidden_nodes * active_hidden_percentage)\n", " active_hidden_indices = sorted(random.sample(range(0, self.no_of_hidden_nodes), \n", " active_hidden_nodes))\n", " \n", " self.wih = self.wih[:, active_input_indices][active_hidden_indices] \n", " self.who = self.who[:, active_hidden_indices]\n", " \n", " self.no_of_hidden_nodes = active_hidden_nodes\n", " self.no_of_in_nodes = active_input_nodes\n", "\n", " def weight_matrices_reset(self, \n", " active_input_indices, \n", " active_hidden_indices):\n", " \n", " \"\"\"\n", " self.wih and self.who contain the newly adapted values from the active nodes.\n", " We have to reconstruct the original weight matrices by assigning the new values \n", " from the active nodes\n", " \"\"\"\n", " \n", " temp = self.wih_orig.copy()[:,active_input_indices]\n", " temp[active_hidden_indices] = self.wih\n", " self.wih_orig[:, active_input_indices] = temp\n", " self.wih = self.wih_orig.copy()\n", "\n", " self.who_orig[:, active_hidden_indices] = self.who\n", " self.who = self.who_orig.copy()\n", " self.no_of_in_nodes = self.no_of_in_nodes_orig\n", " self.no_of_hidden_nodes = self.no_of_hidden_nodes_orig\n", "\n", " def train_single(self, input_vector, target_vector):\n", " \"\"\" \n", " input_vector and target_vector can be tuple, list or ndarray\n", " \"\"\"\n", " \n", " if self.bias:\n", " # adding bias node to the end of the input_vector\n", " input_vector = np.concatenate( (input_vector, [self.bias]) )\n", "\n", " input_vector = np.array(input_vector, ndmin=2).T\n", " target_vector = np.array(target_vector, ndmin=2).T\n", "\n", " output_vector1 = np.dot(self.wih, input_vector)\n", " output_vector_hidden = activation_function(output_vector1)\n", " \n", " if self.bias:\n", " output_vector_hidden = np.concatenate( (output_vector_hidden, [[self.bias]]) )\n", " \n", " output_vector2 = np.dot(self.who, output_vector_hidden)\n", " output_vector_network = activation_function(output_vector2)\n", " \n", " output_errors = target_vector - output_vector_network\n", " # update the weights:\n", " tmp = output_errors * output_vector_network * (1.0 - output_vector_network) \n", " tmp = self.learning_rate * np.dot(tmp, output_vector_hidden.T)\n", " self.who += tmp\n", "\n", "\n", " def train_single(self, input_vector, target_vector):\n", " \"\"\" \n", " input_vector and target_vector can be tuple, list or ndarray\n", " \"\"\"\n", " \n", " if self.bias:\n", " # adding bias node to the end of the input_vector\n", " input_vector = np.concatenate( (input_vector, [self.bias]) )\n", "\n", " input_vector = np.array(input_vector, ndmin=2).T\n", " target_vector = np.array(target_vector, ndmin=2).T\n", "\n", " output_vector1 = np.dot(self.wih, input_vector)\n", " output_vector_hidden = activation_function(output_vector1)\n", " \n", " if self.bias:\n", " output_vector_hidden = np.concatenate( (output_vector_hidden, [[self.bias]]) )\n", " \n", " output_vector2 = np.dot(self.who, output_vector_hidden)\n", " output_vector_network = activation_function(output_vector2)\n", " \n", " output_errors = target_vector - output_vector_network\n", " # update the weights:\n", " tmp = output_errors * output_vector_network * (1.0 - output_vector_network) \n", " tmp = self.learning_rate * np.dot(tmp, output_vector_hidden.T)\n", " self.who += tmp\n", "\n", "\n", " # calculate hidden errors:\n", " hidden_errors = np.dot(self.who.T, output_errors)\n", " # update the weights:\n", " tmp = hidden_errors * output_vector_hidden * (1.0 - output_vector_hidden)\n", " if self.bias:\n", " x = np.dot(tmp, input_vector.T)[:-1,:] \n", " else:\n", " x = np.dot(tmp, input_vector.T)\n", " self.wih += self.learning_rate * x\n", "\n", "\n", " def train(self, data_array, \n", " labels_one_hot_array,\n", " epochs=1,\n", " active_input_percentage=0.70,\n", " active_hidden_percentage=0.70,\n", " no_of_dropout_tests = 10):\n", "\n", " partition_length = int(len(data_array) / no_of_dropout_tests)\n", " \n", " for epoch in range(epochs):\n", " print(\"epoch: \", epoch)\n", " for start in range(0, len(data_array), partition_length):\n", " active_in_indices, active_hidden_indices = \\\n", " self.dropout_weight_matrices(active_input_percentage,\n", " active_hidden_percentage)\n", " for i in range(start, start + partition_length):\n", " self.train_single(data_array[i][active_in_indices], \n", " labels_one_hot_array[i]) \n", " \n", " self.weight_matrices_reset(active_in_indices, active_hidden_indices)\n", "\n", "\n", " def confusion_matrix(self, data_array, labels):\n", " cm = {}\n", " for i in range(len(data_array)):\n", " res = self.run(data_array[i])\n", " res_max = res.argmax()\n", " target = labels[i][0]\n", " if (target, res_max) in cm:\n", " cm[(target, res_max)] += 1\n", " else:\n", " cm[(target, res_max)] = 1\n", " return cm\n", " \n", " \n", " def run(self, input_vector):\n", " # input_vector can be tuple, list or ndarray\n", " \n", " if self.bias:\n", " # adding bias node to the end of the input_vector\n", " input_vector = np.concatenate( (input_vector, [self.bias]) )\n", " input_vector = np.array(input_vector, ndmin=2).T\n", "\n", " output_vector = np.dot(self.wih, input_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " if self.bias:\n", " output_vector = np.concatenate( (output_vector, [[self.bias]]) )\n", " \n", "\n", " output_vector = np.dot(self.who, output_vector)\n", " output_vector = activation_function(output_vector)\n", " \n", " return output_vector\n", " \n", " \n", " def evaluate(self, data, labels):\n", " corrects, wrongs = 0, 0\n", " for i in range(len(data)):\n", " res = self.run(data[i])\n", " res_max = res.argmax()\n", " if res_max == labels[i]:\n", " corrects += 1\n", " else:\n", " wrongs += 1\n", " return corrects, wrongs\n", "import pickle\n", "\n", "with open(\"data/mnist/pickled_mnist.pkl\", \"br\") as fh:\n", " data = pickle.load(fh)\n", "\n", "train_imgs = data[0]\n", "test_imgs = data[1]\n", "train_labels = data[2]\n", "test_labels = data[3]\n", "train_labels_one_hot = data[4]\n", "test_labels_one_hot = data[5]\n", "\n", "image_size = 28 # width and length\n", "no_of_different_labels = 10 # i.e. 0, 1, 2, 3, ..., 9\n", "image_pixels = image_size * image_size\n", "parts = 10\n", "partition_length = int(len(train_imgs) / parts)\n", "print(partition_length)\n", "\n", "start = 0\n", "for start in range(0, len(train_imgs), partition_length):\n", " print(start, start + partition_length)\n", "\n", "\n", "epochs = 3\n", "\n", "simple_network = NeuralNetwork(no_of_in_nodes = image_pixels, \n", " no_of_out_nodes = 10, \n", " no_of_hidden_nodes = 100,\n", " learning_rate = 0.1)\n", " \n", " \n", " \n", "simple_network.train(train_imgs, \n", " train_labels_one_hot, \n", " active_input_percentage=1,\n", " active_hidden_percentage=1,\n", " no_of_dropout_tests = 100,\n", " epochs=epochs)" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "PM6zNiTvg9sG", "colab_type": "code", "colab": {} }, "source": [ "" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "M7M1hjd5528Q", "colab_type": "code", "colab": {} }, "source": [ "" ], "execution_count": null, "outputs": [] } ] }