{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 逻辑回归\n", "\n", "逻辑回归(Logistic Regression, LR)模型其实仅在线性回归的基础上,套用了一个逻辑函数,但也就由于这个逻辑函数,使得逻辑回归模型能够输出类别的概率。逻辑回归的本质是:假设数据服从这个分布,然后使用极大似然估计做参数的估计。\n", "\n", "![theory](images/linear_logistic_regression.png)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. 什么是回归\n", "\n", "一说回归最先想到的是终结者那句:I'll be back\n", "\n", "regress中,re表示back,gress等于go,数值go back to mean value,也就是I'll be back 的意思\n", "\n", "在数理统计中,回归是确定多种变量相互依赖的定量关系的方法\n", "\n", "> 通俗理解:越来越接近期望值的过程,***回归*** 于事物的本质\n", "\n", "最简单的回归是线性回归(Linear Regression),也就是通过最小二乘等方法得到模型的参数。线性回归假设输出变量是若干输出变量的线性组合,并根据这一关系求解线性组合中的最优系数。\n", "\n", "通俗理解:输出一个线性函数,例如$y=f(x; \\theta)$,通过寻找最优的参数$\\theta$使得观测数据与模型数据相吻合。\n", "\n", "![linear regression](images/linear_regression.png)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## 2. 逻辑回归模型\n", "回归是一种比较容易理解的模型,就相当于$y=f(x)$,表明自变量$x$与因变量$y$的关系。\n", "\n", "以常见的看医举例,医生治病时的望、闻、问、切,之后判定病人是否生病或生了什么病,其中的望闻问切就是获取自变量$x$,即特征数据,判断是否生病就相当于获取因变量$y$,即预测分类。$X$为数据点——肿瘤的大小,$Y$为观测值——是否是恶性肿瘤。通过构建线性回归模型,如$h_\\theta(x)$所示,构建线性回归模型后,即可以根据肿瘤大小,预测是否为恶性肿瘤$h_\\theta(x)) \\ge 0.5$为恶性,$h_\\theta(x) \\lt 0.5$为良性。\n", "\n", "![LinearRegression](images/fig1.gif)\n", "\n", "然而线性回归的鲁棒性很差,例如在上图的数据集上建立回归,因最右边噪点的存在,使回归模型在训练集上表现都很差。这主要是由于线性回归在整个实数域内敏感度一致,而分类范围,需要在$[0,1]$。\n", "\n", "逻辑回归就是一种减小预测范围,将预测值限定为$[0,1]$间的一种回归模型,其回归方程与回归曲线如下图所示。逻辑曲线在$z=0$时,十分敏感,在$z>>0$或$z<<0$处,都不敏感,将预测值限定为$(0,1)$。\n", "\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "plt.figure()\n", "plt.axis([-10,10,0,1])\n", "plt.grid(True)\n", "X=np.arange(-10,10,0.1)\n", "y=1/(1+np.e**(-X))\n", "plt.plot(X,y,'b-')\n", "plt.title(\"Logistic function\")\n", "plt.savefig(\"fig-res-logstic_fuction.pdf\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.1 逻辑回归表达式\n", "\n", "这个函数称为Logistic函数(Logistic Function),也称为Sigmoid函数(Sigmoid Function)。函数公式如下:\n", "\n", "$$\n", "g(z) = \\frac{1}{1+e^{-z}}\n", "$$\n", "\n", "Logistic函数:\n", "* 当$z$趋近于无穷大时,$g(z)$趋近于1;\n", "* 当$z$趋近于无穷小时,$g(z)$趋近于0。\n", "\n", "Logistic函数的图形如上图所示。Logistic函数求导时有一个特性,这个特性将在下面的推导中用到,这个特性为:\n", "$$\n", "g'(z) = \\frac{d}{dz} \\frac{1}{1+e^{-z}} \\\\\n", " = \\frac{1}{(1+e^{-z})^2}(e^{-z}) \\\\\n", " = \\frac{1}{(1+e^{-z})} (1 - \\frac{1}{(1+e^{-z})}) \\\\\n", " = g(z)(1-g(z))\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "逻辑回归本质上是线性回归,只是在特征到结果的映射中加入了一层函数映射,即先把特征线性求和,然后使用函数$g(z)$将做为假设函数来预测。$g(z)$可以将连续值映射到0到1之间。线性回归模型的表达式带入$g(z)$,就得到逻辑回归的表达式:\n", "\n", "$$\n", "h_\\theta(x) = g(\\theta^T x) = \\frac{1}{1+e^{-\\theta^T x}}\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.2 逻辑回归的软分类\n", "\n", "现在我们将y的取值$h_\\theta(x)$通过Logistic函数归一化到(0,1)间,$y$的取值有特殊的含义,它表示结果取1的概率,因此对于输入$x$分类结果为类别1和类别0的概率分别为:\n", "\n", "$$\n", "P(y=1|x,\\theta) = h_\\theta(x) \\\\\n", "P(y=0|x,\\theta) = 1 - h_\\theta(x)\n", "$$\n", "\n", "对上面的表达式合并一下就是:\n", "\n", "$$\n", "p(y|x,\\theta) = (h_\\theta(x))^y (1 - h_\\theta(x))^{1-y}\n", "$$\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.3 梯度上升\n", "\n", "得到了逻辑回归的表达式,下一步跟线性回归类似,构建似然函数,然后最大似然估计,最终推导出$\\theta$的迭代更新表达式。只不过这里用的不是梯度下降,而是梯度上升,因为这里是最大化似然函数。\n", "\n", "假设训练样本相互独立,那么似然函数表达式为:\n", "![Loss](images/eq_loss.png)\n", "\n", "同样对似然函数取log,转换为:\n", "![LogLoss](images/eq_logloss.png)\n", "\n", "转换后的似然函数对$\\theta$求偏导,在这里我们以只有一个训练样本的情况为例:\n", "![LogLossDiff](images/eq_logloss_diff.png)\n", "\n", "这个求偏导过程中:\n", "* 第一步是对$\\theta$偏导的转化,依据偏导公式:$y=lnx$, $y'=1/x$。\n", "* 第二步是根据$g(z)$求导的特性$g'(z) = g(z)(1 - g(z))$ 。\n", "* 第三步就是普通的变换。\n", "\n", "这样我们就得到了梯度上升每次迭代的更新方向,那么$\\theta$的迭代表达式为:\n", "$$\n", "\\theta = \\theta + \\eta (y^i - h_\\theta(x^i)) x_j^i\n", "$$\n", "\n", "其中$\\eta$是学习速率。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1.4 示例程序" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "\n", "#from __future__ import division\n", "import numpy as np\n", "import sklearn.datasets\n", "import matplotlib.pyplot as plt\n", "\n", "np.random.seed(0)\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 1.0, 'Original Data')" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# load sample data\n", "data, label = sklearn.datasets.make_moons(200, noise=0.30)\n", "\n", "plt.scatter(data[:,0], data[:,1], c=label)\n", "plt.savefig(\"fig-res-logistic_train_data.pdf\")\n", "plt.title(\"Original Data\")" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def plot_decision_boundary(predict_func, data, label, figName=None):\n", " \"\"\"画出结果图\n", " Args:\n", " pred_func (callable): 预测函数\n", " data (numpy.ndarray): 训练数据集合\n", " label (numpy.ndarray): 训练数据标签\n", " \"\"\"\n", " x_min, x_max = data[:, 0].min() - .5, data[:, 0].max() + .5\n", " y_min, y_max = data[:, 1].min() - .5, data[:, 1].max() + .5\n", " h = 0.01\n", "\n", " xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))\n", "\n", " Z = predict_func(np.c_[xx.ravel(), yy.ravel()])\n", " Z = Z.reshape(xx.shape)\n", "\n", " plt.contourf(xx, yy, Z, cmap=plt.cm.Spectral) #画出登高线并填充\n", " plt.scatter(data[:, 0], data[:, 1], c=label, cmap=plt.cm.Spectral)\n", " if figName != None: plt.savefig(figName)\n", " plt.show()\n", "\n" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": true }, "outputs": [], "source": [ "\n", "def sigmoid(x):\n", " return 1.0 / (1 + np.exp(-x))\n", "\n", "class Logistic(object):\n", " \"\"\"logistic回归模型\"\"\"\n", " def __init__(self, data, label):\n", " self.data = data\n", " self.label = label\n", "\n", " # parameters\n", " self.data_num, n = np.shape(data)\n", " self.weights = np.ones(n)\n", " self.b = 1\n", "\n", " def train(self, num_iteration=150):\n", " \"\"\"随机梯度上升算法\n", " FIXME: change to same API to sklean\n", " Args:\n", " num_iteration (int): 迭代次数\n", " \"\"\"\n", " # 学习速率\n", " alpha = 0.01\n", " \n", " for j in range(num_iteration):\n", " data_index = list(range(self.data_num))\n", " for i in range(self.data_num):\n", " rand_index = int(np.random.uniform(0, len(data_index)))\n", " \n", " error = self.label[rand_index] - \\\n", " sigmoid(sum(self.data[rand_index] * self.weights + self.b))\n", " \n", " self.weights += alpha * error * self.data[rand_index]\n", " self.b += alpha * error\n", " \n", " del(data_index[rand_index])\n", "\n", " def predict(self, predict_data):\n", " \"\"\"预测函数\"\"\"\n", " result = list(map(lambda x: 1 if sum(self.weights * x + self.b) > 0 else 0,\n", " predict_data))\n", " return np.array(result)\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "logistic = Logistic(data, label)\n", "logistic.train(200)\n", "plot_decision_boundary(lambda x: logistic.predict(x), data, label, \"logistic_pred_res.pdf\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. 如何用sklearn解决逻辑回归问题?" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "accuracy train = 0.891667\n", "accuracy test = 0.825000\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "\n", "import sklearn.datasets\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.metrics import confusion_matrix\n", "from sklearn.metrics import accuracy_score\n", "import matplotlib.pyplot as plt\n", "\n", "# 生成模拟数据\n", "data, label = sklearn.datasets.make_moons(200, noise=0.30)\n", "\n", "# 计算得到训练、测试数据个数\n", "N = len(data)\n", "N_train = int(N*0.6)\n", "N_test = N - N_train\n", "\n", "# 分割成训练、测试数据\n", "x_train = data[:N_train, :]\n", "y_train = label[:N_train]\n", "x_test = data[N_train:, :]\n", "y_test = label[N_train:]\n", "\n", "# 进行逻辑回归\n", "lr = LogisticRegression()\n", "lr.fit(x_train,y_train)\n", "\n", "# 预测\n", "pred_train = lr.predict(x_train)\n", "pred_test = lr.predict(x_test)\n", "\n", "# 计算训练/测试精度\n", "acc_train = accuracy_score(y_train, pred_train)\n", "acc_test = accuracy_score(y_test, pred_test)\n", "print(\"accuracy train = %f\" % acc_train)\n", "print(\"accuracy test = %f\" % acc_test)\n", "\n", "# 绘制混淆矩阵\n", "cm = confusion_matrix(y_test,pred_test)\n", "\n", "plt.matshow(cm)\n", "plt.title('Confusion Matrix')\n", "plt.colorbar()\n", "plt.ylabel('Groundtruth')\n", "plt.xlabel(u'Predict')\n", "plt.savefig('fig-res-logistic_confusion_matrix.pdf')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4. 多类识别问题" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.1 加载显示数据" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt \n", "from sklearn.datasets import load_digits\n", "\n", "# load data\n", "digits = load_digits()\n", "\n", "# copied from notebook 02_sklearn_data.ipynb\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)\n", " \n", " # label the image with the target value\n", " ax.text(0, 7, str(digits.target[i]))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(1797, 64)\n", "accuracy train = 1.000000, accuracy_test = 0.905556\n", "score_train = 1.000000, score_test = 0.905556\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/bushuhui/anaconda3/envs/dl/lib/python3.7/site-packages/sklearn/linear_model/_logistic.py:765: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " extra_warning_msg=_LOGISTIC_SOLVER_CONVERGENCE_MSG)\n" ] } ], "source": [ "from sklearn.datasets import load_digits\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.metrics import accuracy_score\n", "from sklearn.manifold import Isomap\n", "\n", "import matplotlib.pyplot as plt \n", "\n", "# 加载示例数据\n", "digits, dig_label = load_digits(return_X_y=True)\n", "print(digits.shape)\n", "\n", "# 计算训练/测试数据个数\n", "N = len(digits)\n", "N_train = int(N*0.8)\n", "N_test = N - N_train\n", "\n", "# 分割训练/测试数据集\n", "x_train = digits[:N_train, :]\n", "y_train = dig_label[:N_train]\n", "x_test = digits[N_train:, :]\n", "y_test = dig_label[N_train:]\n", "\n", "# 进行逻辑回归分类\n", "lr = LogisticRegression()\n", "lr.fit(x_train, y_train)\n", "\n", "pred_train = lr.predict(x_train)\n", "pred_test = lr.predict(x_test)\n", "\n", "# 计算测试、训练精度\n", "acc_train = accuracy_score(y_train, pred_train)\n", "acc_test = accuracy_score(y_test, pred_test)\n", "print(\"accuracy train = %f, accuracy_test = %f\" % (acc_train, acc_test))\n", "\n", "score_train = lr.score(x_train, y_train)\n", "score_test = lr.score(x_test, y_test)\n", "print(\"score_train = %f, score_test = %f\" % (score_train, score_test))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.2 可视化特征\n", "\n", "针对机器学习的问题,一个比较好的方法是通过降维的方法将原始的高维特征降到2-3维并可视化处理,通过这样的方法可以对所要处理的数据有一个初步的认识。这里介绍最简单的降维方法主成分分析(Principal Component Analysis, PCA)。PCA寻求具有最大方差的特征的正交线性组合,因此可以更好地了解数据的结构。在这里,我们将使用Randomized PCA,因为当数据个数$N$比较大时,计算的效率更好。\n" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAV8AAAD8CAYAAADQSqd1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAAD5hElEQVR4nOydd3xUZfaHn/feOzW9kYRA6L13EFERQSzYey9rL1t092d3ddeyrr2tuth7FwsqCoKA9N4hdNJ7MpMpt7y/PyaETGZS0CiuzuNnPpLb78y955573nO+R0gpiREjRowYvyzKoT6AGDFixPg9EjO+MWLEiHEIiBnfGDFixDgExIxvjBgxYhwCYsY3RowYMQ4BMeMbI0aMGIeAmPGNESNGjHZACPFHIcR6IcQGIcSfWls+ZnxjxIgR4ycihBgIXAGMBoYAJwohera0Tsz4xogRI8ZPpx+wREpZJ6U0gHnAaS2toP0ih9VG0tPTZdeuXQ/1YcSIEeN/gBUrVpRJKTN+yjaOnRgnyyvMtu1vbWAD4G806QUp5Qv1/14P3CeESAN8wPHA8pa296syvl27dmX58haPN0aMGDEAEELs/qnbKKswWfJ1pzYta8ve7pdSjow2T0q5SQjxL2AW4AVWAy1a9VjYIUaMGL9jJKa02vRpdUtSviilHCGlPAKoBLa2tPyvyvONESNGjF8SCVi0j7iYEKKDlLJECJFLKN47tqXlY8Y3RowYv2ssWvdq28iH9TFfHbhOSlnV0sIx4xsjRozfLRKJ3oaQQpu2JeWEg1k+Znxj/Koo2VtG0c4SOvfNIaVD0qE+nBi/cSRgtlPY4WD5ycZXCOEEvgcc9dv7QEp5txCiG/AOkAasAC6UUgZ/6v5i/DYJ+oPcf94TLPtqFTaHjaBfZ/JFR3Ljs39AVdVDfXgxfsO0V8z3YGmPbIcAcLSUcggwFJgqhBgL/At4TErZk9DI3+XtsK8Yv1H+85dXWfbVKoJ+HW91HXpAZ/ab3/P+w58d6kOL8RtGAqaUbfq0Nz/Z+MoQnvo/bfUfCRwNfFA//VXglJ+6rxi/bqSUFO8upbqs5qDWM02TWa98R9Cvh00P1AX5+MmZ7XmIMWJEYLXx0960S8xXCKESCi30BJ4BtgNV9WV2APuAnPbYV4xfJyu/XcvDlz1LTXktlmUxYHxfbnvrT2FxWz2os/jzlRTvKqH3yB4MmtAPIQRG0MDQo+eje6vrfqlTiPE7RCL/d2O+AFJKExgqhEgGPgb6tnVdIcSVwJUAubm57XE4MX5h9m0r5M6T/0XQdyCkv27+Jv5vyr08v+phhBAU7izmT4ffic/jQw8YaDaVnsO68eDXd+BwOejcpyO7N+4L264QMOjw5i+lpV+u4r1/z6CsoILhkwZx7q2nkdEp7Wc7zxi/PaQE/RD1EG7XCrf6vLbvgHFAshBiv3HvBOQ3s84LUsqRUsqRGRk/qUw7xiFASsl95z4WZngBTN2kcHsxW1fsAODBC5+kqrgKX60fI2jg9wbYunw77/zrEwBufPYKHG4Hihq6JFWbijPexVWPXBx1vzOe+ZJ/nPkIa+ZuIH9rITP/O5urht5M6b7yn+9kY/wGEZht/LQ3P9n4CiEy6j1ehBAuYDKwiZARPqN+sYuBGT91XzF+fXzy1Ex2rIleYq+oCqV7y6it9LB1+Q4sK9zFCPp1Zr08F4DBR/TnmaUPcMwFR9B7ZA9OuHIyL6x5mK4DOoet462pY+vyPKbf8ib+ukDDdNMwqavx8c6DH7fvCcb4TSMBS7bt0960R9ghG3i1Pu6rAO9JKT8XQmwE3hFC/BNYBbzYDvuK8Svj/Uc+wzKjD0foAZ3eI7o3Ox9Cg2376dK/M399+bpml3v+ptf44oVvUBQlzPA2LGOYrJq9Lur6W5Zv5/2HZ1CQV8TgI/tzxl+mkZ4TC1HE4GfxatvCTza+Usq1wLAo03cQEhaO8RumptzT7LyJ5xxOh9xQKKlLv07sWLuLxhk7NrvGUeeMb9N+3nnwE2ZOnx2REdGU9Cgx3x9mLOP+8x8n6NORUrJz/R6+fmUu/1nxEFldO7Rp/zF+m4SKLA6N8Y2pmsX4SfQb2yvq9PjkOG568ZqGv29540bikuNwuh0AuOKddOyZxYV3nhF1/aZ89PjnBKJ4u41xuB2c/beTw6ZZlsXj17xAoC6IrLf8RjAUonjlrnfbtO8Yv10koEulTZ/2JlZeHOOg8NbUMfuN+exYu4seQ7py8T1nsX7BZoygEbZcwBdg24od9BkV6qTSdUBn3tjxDHPeXkjhjiL6jenNuJNGotmiX4I/fLqM1+5+l6JdpXQd2JnaCm+zx+RKcCIQXPHQBYyYPCRsXll+RdR0Ncu0mg1RxPj9IBGYh8gHjRnfGG2maFcJN4y5FZ83QKAugDPOgTPOgaoqGE2W1QMGL9/5Dg9+dUfDtLikOKZdPaXV/Xz75vc8ftXzBOpCGRQbFm5BNPNm2GVAZ25/64/k9O6I3WGLmB+X5MYyoucQJ6bFt3osMX77WPJ/NOYb4/fDk9dNry+iCL2++72BUAy2mdLLFd+s4Vjb2fQe2YPrn7qcPiN7tLoPKSX//evrDYb3wHQQ9RZYSokQArvLziX3nMUrd73L0pkrEYrChNPHcsGdp1O6t5wOuel06t2RDl0yKMgritjXCVdOPtivIMZvjEMZ840Z3xhtQkrJym/WRKSLtZTJgAzN37xkGzdPvJv/rHiITr07trifgu1FVBRXNXsMY04Yzt4tBXQblMtZN5/EvWc+QmVxdf1xmHz39nzmvD2fuEQ3RtCg2+BcSveWRWxLURU2LNrCuu83EvAFOfrcwznyrMNQtZiIz+8LgfkzxHPbQsz4xmgziqpiGj+uyj3o13n3X59w04vXNrtMRVElfxx/B81WewoYOWUo//zsVgC+eW0edTW+sAfAfid8f5x364odUf0ay7SY9+4PyPqHyZq5G5j12lzun3k7ihIbh/69EOpk0T6/txDiz8Af6je7DrhUSulvbvnYVRajTQghOOrsw9DsP+55bZkWeat3tbjMe/+egbeq+YE1JFSWVDf8uXP9HnyeZq/t0H4Nq9kHhmzkxfu9AVbMWstJSRfx+r3vh+Ufx/jtIqUgKNU2fVpCCJED3AiMlFIOBFTgnJbWiRnfGG3m2scvJbdfDq54Jw6XHbvThlDaFi9TVIUeQ7u2uMzyr9c0K7AD4Ix3MnTigIa/uw7ojCve2eq+hRBotraFEwLeAO8+9An//evrbVo+xv8+FqJNnzagAa56WQU3UNDSwjHjG6PNxCfH8dzKf/OPz27hqkcu5oqHLsThtkdddr9Gw36EgJHHDom67H5aMqRCgf7jejN04sCGaUeeNQ53oitiX02RUjJoQj9sDg2H2058chyq1vw6gbognz33DT6Pr8Xt7t+2/Bm0XmP8MoQG3JQ2fVrcjpT5wMPAHqAQqJZSzmppnVjMN8ZBIYRgyJEDGHLkACzL4p0HP8bviSx+GDShLxt+2NqQ/2uZkn9d9DQv3/42rgQXNofGqKnDOOnaY0nOSOLlO99my/LtLe2ZrgM6N2Q8ADhcDp5a/ABP3/giS79YGbqRmvGcy4uqeLfgv3ir63C4bZyVdWWL56naFEr3VZDbN7oSan5dBQ9umMGyijw0oXJM1iBu7jeNeFvrnniMXxMHNeCWLoRY3ujvF6SULwAIIVKAk4FuQBXwvhDiAinlG81tLGZ8Y/xoFEUht18nygsqI+blrdoVlv8rpcQIGhRsLz6wzMqdfPrM19z5/l94918zwmKwTZGW5KPHvyA1K5kzbz6pYVAso1Mad713Eyu/XcfTN0wP235j9mzah5SSLcu288Y/3kcI0aLHagQM3vznB/i9ASacPjYU764vCPHofi5Z9Cw1ug+JJCgNvilcy3ZPMa+Nuy7sARHj181BDriVSSlHNjPvGGCnlLIUQAjxEXAYEDO+McLZuyWfL1+cTXVpLWNOGM74U0a3mmZVXlhJbYWHTr2z0Wwa/73ljWarxPx1gWbzf/dj6Ca1lbX892+vYzZTCNGU1+55n5I9ZSR3SOK7dxbgqaqjuqwGq5UsDIHg+Ztf4/v3F+H3tlymrNpULEvy3dsLQyl2367lixe+4d+z70azaXyRv5KAqSMbpWXo0mSPt4w1VbsZmtK1TecS49eB2T5FFnuAsUIIN+ADJgHLW1ohZnx/h8x9dyEPX/Yshm5iGibff7CYj5+cyUPf3oXNHlklVl1Wwz/PfowNP2xBs6momsopN0zl02e+anYf0pKomtJqapplyggR9ZYI+oJ89p+vUW0qRrDtGQlSSma9MrfV5eKSXPi9wbCHgd8bIG/VTr7/YDFHn3s4W2sL8VuRAj8SyS5Pacz4/g8hEejyp5tBKeUSIcQHwErAIKTk+EJL68QG3H5nBHwBHrniOQK+AwbG7/WTt3Ins9+YH3WdO0/6F+sWbEIP6Pg8fjxVXt66/+Ooso4AqqYy8tghbc4Jbm47zSElB2V424pqU5l27VQcrshBRL83wLz3fgCgT2I2TjXyISUQdI+PqaT9L9FeA24AUsq7pZR9pZQDpZQXSilbvLBjxvd3xsZFW1GipIf56wLMeXtBxPR9WwvYsWZXxECWZVrNFkN0H9yFW9+4Mey1vEV+JckCpm7y/r8/RdebKlWEWDNvAz6Pj+NzhuNS7SiN0o9sQqVbXAaDkmOtsP6XkAhM2bZPexMzvr8zHC57swNNzjhHxLTywsqDKqzQ7BruRBcX9bweaba/VVU1tc25xT8G0zDRm9EMDviCfPHCt8RrTl4eey2HZfRBEypO1cbxOcN4ZvQfYoNt/4NYKG36tDexmO/vjL5jeuFOcOGrDa8Mc8Y5OPGqSMWxHkO6ogdaFjDfj6qpWJbFmrkb2uVYozH5oiOZ/db36P7o3mlr2Bw2QKIHDn59I2Aw/6MlnPGXaXR0p/DoiIt+1DHE+PUgJYdM2yHm+f7OUBSFf35+K4lpCbgTXbjiHdidNk669lhGTR0asXx8chzn3HJqVK84bLuaglBEq1kHP5XuQ7qQ0iH5R63rcNt5bP4/eHXb03Tqnf2jtpGYGpOh/C0RGnBT2/Rpb2Ke7++QnkO78U7+86yYtZbaCg9Djurf0O4nGhfedSZdB+by+j3vsXPdnugLSdlinm578eyfXm5zqXBThFDoPaI7Qggu+ce53HfOYwdVneaMc3Dy9cf9qH3H+PUSE1OP8Ytis9sYe+KINi8/4bQxADx08VNR82QtS6KIn9frBUDSov5DS/i9fvZtLaBznxwGjO8DgjYP9glFcN5tpzFySqhE2rBMNKX1h0BVsI6ntnzJd8UbUITg2OwhXNN7CvFarBLu14BExMTUY/z66TemZ7PpYxPPHk/eqp3s3dKilki7IRTxozzt5/7yKumd0ug6oBPuBFfUFkPRSM1K4dxbT+PrgtU8teUrSgI1JKouBuelkPp9kMETBjD5oiNwxbsa1tEtg8sWP0uRrwpDhr63T/YuY03lbl477DoUEYv6/RqIeb4xfvWk56Rx/BWT+Prl7xq8X0VTSMtOoXPfHFbPW//LHIgMhQCklK1WqzVl6ZerEIpAs2stC8E3wdAsZuxdysMbPycgQ4N1NaaPBdlenP4ylvzfSt596BOeWfYgyRlJAMwt3khFwNNgeCFUCbevrpyl5dsZmx69+WiMXw4JWLEBtxj/C1z3xGX86bmr6DumF5375nDO306h35hevPvQJ1QWVoctqzm0VhXHfiwBf5AjTh9Lwo/owyYtie7XMXUTobb8yikdAt/fstj3TAb3b/ikwfA24FQInJuGzxugLL+C//zllYZZW2sLqTPD2yEBBC2TvNoiLGlhyl8gVBOjBQRmGz/tTczzjXFQCCGYdP4EJp0/AYDi3aVc1u+PoV5ujbA7bZxzy6l4q7x8/sK3rbZ9P1gsw2LWa/N+8nZay0Wu+1sW5sg4mh3srjNx/yMUarFMizlvLqAgr4hH5t5DZ3caLtWOr4kBtikq35ds4tmts7CkxdCUrtw68FS6xKX/5POJcXCEWscfmtZRMc83xk9ix9rd9bmz4QT9Osu/XoOnpo7UrCRcCf97A0xWqooxwo20RfF66kxs39UQd1s+6mZ/mF+0eUkeN4y9jclZg3GqNkSjuSoC3TJYV7kHQ5pYSFZV7uLyxf+hRm9dPzhG+yKlwJJKmz7tTcz4/gYxDZPX7nmPMzpcxvGuc/nrMfewc30zKWJtZPuaXbz/yGfM/O+31FZ6GqZnd8/EiFKOq6gKW5bl8c2r8yjcURLS9f0fK/6y0jXQIz1jbbmXxPN34nqqBHVrABEl+WLHmt0UbynmpbHXMCylK6pQUIVC36QcNKFi0qjvHJKgafBF/oqf83RiNIMplTZ92pufHHYQQnQGXgMyCXnxL0gpnxBCpALvAl2BXcBZUspI4dcY7c7Df/gP899fRMAXet1dPWc9fxx/By+seZisrgcn/CKl5PGrnufbN79HDxhIS/LYVc8z5KgB3P7On+k6oDM9h3Vn67I89OABI2xZ4doP+yvKfmyWQnsjaf5ZYLkF3oc7I1M0cDa56epM3PcVIgKtn8OGhZs5YcBknhtzBQFTRwjBzPxVPLr584hl/ZbOttrI9vYxfl5Cer6HxitoD3NuADdJKfsDY4HrhBD9gVuA2VLKXsDs+r9j/MyUFVQw790fGgzvfnR/kA8e/eygt7fki5XMeXsBQZ8eZjTXzN3ADWNuxdAN7vv8Fg47ZRSaXUO1qeT0ymoQHm/Kr8HwtoQE/JekY3V1IJPU+lzgA8dsW1bX6l0jFZDZdlKzUxqmOVQbdkWjR0JmWBhiP07FRr/E6F0zYvyciP9dz1dKWUioZxFSylohxCYgh1BLjaPqF3sVmAv830/dX4yW2bs5H7vTFqHHYOgmW1ts0xPycr944Rve+dcnVJfW0HtED4Qqmk3nqiyu4ocZyzjijHHc8c5fCPqD6AEdRVU4Pf2ydjunXwoJGOPjMfs6ETUmMlEFRYApQbfAIUCXSNm81yxVkG4F711ZDJ48IGL+wKTO9ErIYnNNPkErFK9QELg1B8fnDP/5Ti5GVEKpZv+7nm8DQoiuwDBgCZBZb5gBigiFJaKtc6UQYrkQYnlpaWl7Hs7vkpyeWVGFcFRNofvgLi2u+9o97/P8Ta9RvKsUvzfA2u83sm7epmaXD/p1dm84IIRud9qJS4rDFe9i9AmHzpCo9eXHmkMLhTmaDGZLu0A/Kh7pEDR2aKQdtGVe4m/ZR8KFO3E9UhSK+aoho4sFxgg3wmjee7c6aHie74LWNY69gYqI+UIInhx5KSd3GkWc5sChaByR2Z9Xx11LnNayfkaM9udQaju0m/EVQsQDHwJ/klLWNJ4nQwX0Ua9YKeULUsqRUsqRGRnN6wvEaBsZndPpOKEH0hb+09ocNs74y7Rm1/PXBXj/4U8jhM0ty2pWwtEZ5yC3X/RX5XEnjaI1dcXGnY8VVWmXnGCH28ERp4/l7L+dzNUPX4TdacPs5kDaBFacgrQJ9CPi8d2URc30LhgDD1SkiSCIoETUSYQusS3w4Hwx5BCoJQaqKZApGoHjk6JezBIwezmRyRq6NLCaqV12aw7O7Tqewcm5GNJiUelWpm+fg9c4+HQ8S1qUB2rxm21TnosRSXtISgoh+gghVjf61Agh/tTSOu2S5yuEsBEyvG9KKT+qn1wshMiWUhYKIbKBkvbYV4yWeXbtYhaclUS8mU7igjKEbqHnxvHXF66jU++Oza5XvLsUpZmCA7vTFoohN7ElRtCgaFcJwYCOvUm62Y7VO1ts4SYEXPPYpSz4eAn7thbQsUcWPo+fTYu2Nr9OGwbrAnUB3IkuNLvGW/d/TKAuiPDbqH2qM0qthdXRFhpIA4hXUSoPpCo0PXsRkNi/qsF/YRqDVyXgGZTCbn8ZgSsysM+tRdQ0KZBwCILHharbJHDj8pd5ddx15LhTwxar0X1cuug/DQ04TWkxM38VebVFvDT2mjZrAn9buI5HNn1GrRGSBz2u41Bu7jeN7Z5ittQU0NGVwqi0HrEy5hYISUr+9LCDlHILMBRACKEC+cDHLa3THtkOAngR2CSlfLTRrE+Bi4EH6/8/46fuK8YB9tZWU+b30ic5Hbct5EH6DZ2n1y7Gp1j4zu9C6Xm5YIVKgD+zFRKp1nuA9JzUZgVrBh7el1OuP44X/vY6ezcf0G4wdJPX73mfxZ+v4JG59zR0FAbI6p6J3WUj6IvukdldDuISXcQnuSneWUrxzhJAtCh205bBOofbztKZq6gsrm5IgVP26bgfLsb7rxxw1b8++ixs82tR90ZWoIVhSv7ceSrnTp9InRHgxe1zmFmwGvlQb5RbdhIM1K9vQODMFMwh7oZVa3QfD26YwVOjLm2YplsGD22YQW294W2YLk12eErYUL2PgcmdWz3PlRU7uXfdB2G95L4sWM2Cks14zQBWUGD6VdISXLxyxJWkOxNb3ebvlZ8h5jsJ2C6l3N3SQu3h+Y4HLgTWCSFW10+7jZDRfU8IcTmwGzirHfb1u6fS7+OqOR+ztqwITVEwLYubRxzB5QNGstdTjdLYaxICVLCkZHVpYfMbBeIS3Yw7cQTff7A4Yl6HzumMPXEkyR2SuPnovxOoO2CwAr4g21fvYvnXaxh93LCG6ZPOn8Ard77TrPGVUrJ05krmvvtD46n1xx0SZkfS5q7G+xFCUF1WE5Z7LAA1L4Dr4WKCp6eALrF/WY3t+wP5yjanLWoHi+zcDpwz6iggFC64oc9x3NDnOJgIhedWcNaT/8DyGBiDXMjUyNtpSfk2zl/4JFf0PIbxGb25eul0NlbtazYksdNTEmZ8LWmxvGIHxb5q+id1okdCaOjk5e3fRTTxDFoGZQEP/j1xBEtdoEgqLMFJea/yzR+uIs4e2Zvu905I1azNbwbpQojGHYlfkFJGa5J5DvB2axtrj2yHBTQ/+Dvpp24/RjjXfPcJq0oL0C0L6u3Swyvn0z0pleEZHdHN6MaqS2Jyq9turinld+8s5LonL2P9gs1RVc18Hj9r520IM76JqQk88t093Hfu4+zbGq505nDZGT5lMN+9s7DZYznp2mP59JmvWz3mpqTlpJC/NTJfVgD2RV7si7wR8xQ1JDB/9ykPEfQFsUwLIUIDiDc83UJrIE0gR8ajy5YfENtqi7hjzTscntGXbbWFYQUWTekaf2Dco9hfzdVL/ktl0ItEYkmLcem9uX/oueTXRQ7mAQRLnQTLnCAFmKHjLq/QufWzr3ny9OZj/r9XQuXFbTa+ZVLKkS0tIISwAycBt7a2sZi2w/8QBZ6aA4a3ET5D57/rl/LW1HM4uUd/PtuxCb95wPNzqCqWJTnsvf/QMS6R64aMY2Kn7hHbz1u9M+p+hRCU7i0nNSsZm10LVas1wu6yk9YxNWK9nsO68a9Zd/DUDS+y8pu1GEEDd6KbU/90PKf98QROTbkk+onKkIKa3WnD5zk4z7cgr/iglodQ37nhRw/i6SUP8PzNr7Jr3V66Dc7lwrvOpO/oA8pjhb5K3tq1gPVFu0ndLDgqsz/YJERWV0cQtAzmFDev+iaAeM3JbSvfwmsGGJLSlfJADQW+ijAf+YfSrby7exGDknMp8FVGeNDBIhdYTYyJFMzZsgOfruOyteFgf1cclOfbFo4DVkopW70QY8b3V4qUBhg7QUlAqFkA7KipwGpmFKvUF/Lo7hs3Baeq8f62dZhSkmh3UBsMsLh4L5aUFHhruXbOJ9w9ZhLn9BkSto2cXlmU7CmL2LZpmKRmp3DYKaN5+oYXI+arqsLR5x0eMb2soIKrh/8Nb3Vdg3yjoRtYpoU7wYVqUyO6IgMoiqBzn44/qlHmjynicLjs7NtWyJ0nPUhlcTWKorBm7kbGn7K7wfhury3i8tnPYi6rwvFYEXsVwRq+xynBui0LY0TcQe837LiB0sCBJKGFZVuiLheUBh/uWcxjIy9hXslGfGawwfyqQkGa0Q2JQFAXjBnfaLRzhdu5tCHkADFth0OKlCbSLEBanrDplu9LZMk4ZMWZyNLJWOXnUebdy5/mfd7g9WY6vBydsYc+8RWoQuBUNV5cv4xaPcA/xk1mzfk3svTsaxmT2QnDssKMts80uH/5XIwmHvQFd56JwxUeF3S47Rx76UTcCS6cbgcPf3cP2d0zcbgdOOMcpOek8sBXd5CUHjmg88Ejn+Hz+MJ0c/3eAO//+1PqanxMuyb6EOAJV01h1NSh2By/jG/Qd0wvbpnyD4p2lOD3+KmrqSNQF+DZP73MlmV57Fy3mz+Ovg3tjE04HihE+CWizgp9fBbufxYian5cd40fQ43hI92RwIBGsWEFwXEdhxKfHD2rMy3OTarbFTH9987+bIf2aB0vhIgDJgMftbYsxDzfQ4ZV9wnU3g/SD5hI21DQugIq+D4GGuV86qt5aeO/qQl2QSD5x4CFnJazjaCloAnJFk8Kly0/lodWlvPoqgW8NuUsRmTm4FA1VpYWNLyaqsKqv4gEumVR6K2hc0IypmWxrrwYq28y//fmjTz351coz6/A5rAx7Zpjufz+8xoOpfvgLry67Sn2binAMi1y++WEZTk0Zs3cDVHjyDaHjd0b93H1IxdjBA2+nD4Hy7JQFMEJV07h+qcuQwhB75E9WPbV6ja3+mkOmyOy4m8/ml3jyDPH8cyNL0X0cwv6dT587HOWfrkKf3Vdi/6RbX4twROSD0yQklYTnX8kmY4kbl/9DmsqdjV8NRaSbwvXcfexp3Ln+/MJ6AaWBEUIHJrKvSccE2tr3wztFXaQUnqBtLYuHzO+hwAZ+AFq7gIatW/Xl4U+KBAxIGPwfYmLoGVyXufNnNIxD6dq4lRDhm1AQjkPD57HFSuOJQBcN/dTFp11NUIIMt3x9HBt4e7+P9A9rhqvYeOlXQN5YedIkh0uVpTkc9Xsj/EZOgiBXVF5duEtDE3sgN1lR1UjK3uEEOT2bV2HILt7Jtuj5PvqAZ30nFRUVeWPz17JVQ9fTGVxFWkdUxvyhfdszmfN3I0/yfA64xzcNP0aLNPisaufx++JLGI4+rzDkZaMGuKQliRv9S6MoNHyi6khoa7Jb9aScs9PZKe3hF3e0oiBPr+l813lGr6+5lJeXrKCFXsK6JqWzOVjR9I3K1bAFI1YD7ffGdL7PGGGN4zoI+FZTh/ra+DSrutxa00GvFSLw9PySdAC1BoOaoJ+8qrL6ZWczm1DUxmofINLDa2TYNO5svs6hqfHI4GLZr2PVz+QOuYFLpv9EQvOvApXFMN7MJx580ks/XJlWGqazaExYHxfMrscMAZOt4PsbuHV51uW5rW54k1RFboO6kz+1sKGfTnjHPQY2o3DTxuDlJKPn5zJzvV7wo4F4Lu3FvDdOwujthRyuB0kZSSyd3N+ywegCYyR9TFfKUNZKD+jPrfRQveLAl8lmYnx3DL5yJ/vAH5DSMCItRH6HWHua32ZJvyh2zpcqka8Fr0oQCJw1xtYKSVafVXTqLgZOJVwY+1SDQ5PWcqXO9dGbZ1uWRZPrf6BdWVFB9VavSn9xvTib69cT1JGIg63A5tDY9TUYdz94c2trpuWk9rsW3vTSjxnnIMHv7qTez/5PyacPpYRU4Zw3ZOX8+/Zd6HZNGx2G4/Mu5erH7mEboNyw4y6HjRC+b1ShpU7O9x2OvbIZPIFE3DGNy8EL52C4NEJWN0cIcNbZoSEeNr5FV+U6Khb/eBv3vBqQmFEamQWS4yWOVRi6jHP91BgGwFmPs15uU3ZWJPKTm8C5/bqxoKyLpzUcQs2JdwolgedFAdC1VVZcQl0TayXMzS2R7UDQmhU+ksJRskLDlgmb21Zzfvb1pHidPHK5DPpmdzmUFYYR5wxjvGnjqZkTxnxyXEkpLSt59rQiQNISkskUBcM80odbjuDjujP6tnrkFLSY2g3bpp+DSkdkkg5ZjDDjxkcdXt2h40Tr5rM2u83snNdpLC8w+3gjJumsX31LmrLPUw4YyxTLzsaIeDtBz6hLKA3VABKLaRcZgxxox+TiDGyvqrNgriHi/E90KmNv2zbEMU6CVftDt2tJvgvTCV4Wnhqn4LApTq4qNsR7bjn3wEyFnb4XSHir0P6ZwEtty3XLbhm5WQWlXcEAYrYSs/EI5mWU4SFD4UAplQIWAp3rD+KOM2BXVV47uhTDgyu2PpCIJ+I4Kk0GZNuYVMk0YrIgpZF0LKo8+ic+9U7LD7rGtRmBtZaQ1XViLBCayiKwiNz/84/zn6M7at3oaiCxLQEbnn9RgYf0R89GDKGrriDa0+kas2fQ69h3bnwzjMjpj+99AFevuNt5n+0BKlC1SQnnrMSwd5YEk1im1uDe7tFnDORkmBNxHZ+FFKibvQhghLqX3qcr1dg5dgxxhx4kB2e0Ye/9JtGpiu5ffb7O+FQiqnHjO+PRJpl4P8CaVUi7OPAPrrNo8lC64KMvxY8j9FQphaFF3cO5ofyjvitA7mZ6ypMTl98Htf12s2QpN2kx/dnnzGNI7urnOGKY3JuL5zagZ9VxF+PDCygcYzZwoEi3AxSb+fI9MOYV9oJX8M+wkeKJFBn6Cwq2sPhHbu26fzaiw65GTy16H7KCysJ+oJkdevQ8B3b7DZs9oPPWZ1y8VEs+GhJhEaxlJJhkwZGXScpPZE/PXcVf3ruKgzL5KR5D+EJ1IYvFJAkvFvLLa9ejzUgkb+teuOnJmk0oG7yYQxxEZyciLQJ7HNrsX9UGWZ8bYpGR3dKC1uJ0Rwxz/d/CBlYiKy6FqQFBJB1r4B9NDLhH+B9EvzfgLCB60xE/DUIEanTKtQcpHCCjCx3BfCZKq/v7hdmeCEUqNhQFeTaZdm4tFwS7SpfHpvPJTnfg0hEyLOBAyLewtafYufTlJbcTu/4Uqp0J4W+OPollmNTLJ4eNptPC3rw3r7ebK1NpUIPzwUVhkTN8/L27u/pdnEiOZ0iK9mqKjx89PJ8ln+/ldQOiZx+6QSGHdYTS0rKfF4S7A5cWsuGUrdMPt2xiRk7NuJUNc7tM5SjcrohhCAtu/2MytCJAznhqsl89p9ZSEuiagpSwl3v34zD1bqerqao3NR3GretefuAMI4Em03jwbl3MrR7L7xGoN0ML7rEGBdP4DIX2AUoocE9dUN4s83tntYr+/y6gSLArsVu+/0cSjF18VMGVNqbkSNHyuXLl7e+4CFESh1ZMg5k09dKFwh7vTHdP8ClgHCByAAZAIKhQRn7IIi7BCovp2ncV0p4adcAHtk6ioClIlt4JVKFxWujvmRYckl92pkAHJDwN5S4CxqWO/HTV9lYXtKQ77thysu41EiP++P8nty5YTx1ZshQOgsNOr/vQVgSxQQknH75EVzxl+Ma1qmq8HDtyU9QW+NryOl1uGyM+NNIPrXvpSboR0qY1r1vqPouihE2LYsLZ73HqtLCUMob4NZsnN9nKNd3H8GGhVtISI1nwPg+zeYU+zw+7E57SJCnDezdks+yr1bjTnAx/tTRbY5FA5z7/eNsrwtXSBXAYRl9eGzExXyydxkPbPi4fQxwwKoXpmhy3roFjTSbc1ypTMwcwImdhtM9PjzEs7uiits+m8WqfQUIBId1y+Wf0yaTmdD2c/41IoRY0ZrWQmsk9c2Uh79wdpuWnXnkUz95f42JPQJbQMoABBeHPFz7GITiRvpn1hvSpvjqpzc2plbIGDf1boPzQp8ohnVhWUce3ToSv9X6T3N81k56xlcypyQXv6UyIT2fDIePQNV9TN+SztVDJlPur2NbVRlDkou4IHcTyTY/NhF9OOj4rB28vGsAeZ5k/IZG5w88aP5wE/LxywsYc3gfBo8Ojap/9PL8MMMLUJli8ZJ/E9I8cH6f79yCT9d59uhTIvb73b4drCjJJ9Bo8K/O0PnooU9Z8MUL2B02pJTEJ8fz0Dd3hukSr/hmDU9eO53i3SWomsbUyyZy1SMXR+gLA+zwFPP2roXs8ZYxPLUbZ159JKmOthmgRZ8t571/z6CsrIrt/44PdbdohASWl+8AQhoQ7ebSBGXI422KFj4t31fB27sW8P6exdzc/0RO7jQKAE8gyNkvvU21P1Bf5ShZuGM3577yLrOuuxSthTi+YVm8vWIt761ch2lZnDSoLxePGf6bK1GOxXx/ZVj+r6HqbyAUQkbSRKp9wNhIw8hH5FoHuZfwW1RKuH71pEbx12jLC7rFVXF1t7UclbGHReUdeWnnQPK8yZhS4aZeyzm78xbWFn7KqM1buX7wGM7rvI6bei3FoRioChiWiCjAMiywKxbvjf2c9/b25pGPRkdtl2MZFl+9v6zB+C6fvzWiiq18rBPZ5MoKmAaz922nzOcl3RWug/DUmh/CDC+Aa2MNyZ8XYAQtjPrOx36Pn1uPu4/X8p5GCEHeqp3cfepDDbm7phHkq5e/o7bSy21v/jFse0vKtvHXlW+gSxNTWmyo3scHe5bwxmHXtzpI9cGjn/HKXe8SqAuE2g6ZPSKML4CmCyzLoq87G7dqp85sRSu4LSSoodS1pkQZXzCRmJbOwxs/4+jMgTgUOw99+z21gWBYebkpJVV1Pr7P28nRvXs0u+vr3/uURbv24q+X53x2/lK+3bKddy8950cPvv7qkL+RHm6/BaTUsapuhqobCHmzXpAekD4wVtO84f3pWAhqjOiaqwJJn/gKhiQV8+lhn3BqzjYynH6Oz9rJW2Nm0i+hgoCl8ci2kcwo6EG1bqcq4OfRlXP5a+8luLWQ4QXQlFC0MlDvmXoNjUrdiQU4VZPzczeRsFtBWJEXpQDqGg1WpWZEajoEk9WoxsGmqBR5wweqSuo8rC+PjFcmf1eMCEaGZKpKa9i6IuRhvv3ARxF6wUFfkIUfL6GyuKrRepJ/rv8Iv6Vj1hcoBC0Dj+7j+bxvI/bdGJ/X32B4AYQFtjm1oXBAY/wWcd94mRZ/AQ90/QfO63ahbfZF2WLzKPuCOJ8pwX37PuzvViBq6x9IzXQYaQ7dMnlz2yKOeeolPlq9IULDA0A3LfZUVDe7jbUFRSxuZHgBAobB9rIKvtsWXf3uf5H9Md+2fNqbmPFtgqx9HPwzD8m+VSHpHhf9hhiQWMbbY2byzwE/EKcZaPV5vpoicWsG9wwIiZIHLJV/bBzH0spsAHTTJNhUYpBQU958XwJv7u7H/RvHMHHO2awvD1WdzSruSulYlZ0XJ7D3lDh8WQfiqJYKizIK+GzzS5iB9Zx2yeE4XOGeurvQjPoSYFgW3ZLCB+wWFe3Brka+gCleM+rLoKII6mpCKXp7NuVHLQKxOWwU7z7QjLU8UEtlMHJg00TyQ2nzbYv276Npeprr+VK0db6QAfaYELSwLfKiP7eXoF9HWhIzz4v7tnyU/LY9rNXVdcTfsAf7V9XYVvlwvl1B/FW7ERVG6ys3wULy8q45lPpqG8mPSoTNBFF/3agKfTLTm93Gqr0FmFEU4uqCOq8uWcGSXXt/UgHOr4lDZXxjYYdGSCnB9yYHBsx+ee7ou4irV06mR3w1mrDYUJOKEII7+i0h2R4gyRa9yWLfhAoULCwU9Ea1rSYK0ZQZpYRucTVsqx3O14v6o1VbPJo/gZtPm8dNa49ET5IgVIKpCt5uNnJmeIjbbZDUw8/0y2cghUKwHIb2zuHyP/+Jlx5bTMdOtUyclEd2T4X3tU58XtipoXTTpdm4auBo4mzhnn28zY4axUv2jEjBudOL0sT7NQ2LvmNCMo99R/dkz+b8iNJgPaCHxYWdmr1ZQ5FgazlPODUrOUK/WAQkcXcVYGbbsDra0PYEEaVG5PNGl9g/rsR/fSs5zlLifqwYEThwjCIowTRxvFGO/8aDy5GGUAcMLc1HsNiNLc2HM9eLqH9gG2Vuuga7MrZr9HZFC7bvZsbaTVE9ZoAVewq4+t0Z9ExP5dULz8TdJOVPSokl5f9EaEIiMKM4J78Ev3njK6Vk054Sqr1+BnbNJMF94Gbbuq+UF79aSl5+GX06ZXD5cSPpphzcq2J7YkkYk1rE90e9S5ymAxJTClZUZtHJFZKdNKVAE1E8ElOLOnBgIagO2nGrepgR3m/vJufa+Hetgyqfjw35mVw4Zxr+uEZhAyXUXr3w+DgGVJTy34tmEW8/YIykuZsTpj7BlGnXofpuQ2AihMEYdnJdrw5csOQEEh0JXDVoNKf3jMyjPbxjV9QoDR5rJmSQOL8Me7G/wQBrNpXrnri0obDinFtPZd77i/B5DuQwO9wOTrxqMvHJB+LK8ZqTwzJ680Pp1jAxGqdq45Sc0XxaLz5/ZE5XMt0JYceR0SmNgRP6sW7eRvRGRlhRFZRSE0pMeg7rxj5/PnW14XodwgRlV+ueryg3EdWR2SfCBNtSb7MqIC1uUwXFaaIlBXB18SAaJYE4O/gZlRMXNS/96e8XMf2H5fj05h0QU0rqgjqbi8t4ct4PDToSAcPg39/O5/1V6wkYBv2zO/D34ycxuGPWjziDX45DNeD26380/QQKyqs57Z5XueKx9/m//37OlFte4NVZywBYuW0fl/z7HWav3MbOogpmrdjKhf96l/VFw5vZ2s/3VUkZ+ux/y+vg9BGnGcRpJok2g4kd9tHBWccyz0k8kzeEOjM8ncpnqryxuz/RZbQEFy07jiJ/HB7Dhtk4jitcqPFn89yNE8lO9uCyB6l1qFG3Y7oVzH4KcfZQjLXE72JTTSpBU1Dqq8Cquw1FBBCivmklPrq7S3i3l8HfPD0ZK9Oi3uwOVeOPal9Uj4HwmaEvQUqkJsj/S2/Kp2VjaQJFVbjljRs57vIDnalyembzxMJ/MmLyYJzxTjrkpnP5/edy1cMXReznrkFnMCC5Ew7FRrzmwK5oDInvy30Ll3Hrwq/4++JvOeKDF3h+3dKIde989y8MnTQIm8OGK8GJO9HFn1+4iq8C7/BV8B3u+fiv6FGkM6UGxqDWNXSlU9Bcq2fp/nHXnTTB9Go4curCDC+AicWXhavwNxkQLPfW8fyCZS0a3sYETZNP121q+PsvH83kvVXr8BsGEthQWMLFr33AnoqqH3UOvwRSxsIO7Y6Ukhue/oS9JVVhI73Pf7GYvrmZPPrBPPyNPBlLSvxBg0e+nsTLF28kVBG2fz0FEm6GurfB3Nvux7rfJmkCFBG94k0TFk9utFhUPpwMp79Bz9ehWHxZ2I1HtzWffrizLpkJc89mdEohSbYgQig8Ong+s0oHc8es5XSKj+fPZy+im6jk4vVTKApGT7/aUpvK+po0Ht06kiUV2diEhSlhREoJzwybjaOJnRD4qM5/m6euX4NpmBxx5jj++vJ1Ybm6pmHy+fVv063aS12fBCynglQVjAwH9kIfcWurcTntHH3u4Rx55mEETIN5+3ZSEwwwLjuXboO68ODXdzZsL99Tw9aqMnokpYWlUSXYXLww5ip2eUoo9FXRyZ3OsR+9Sp0RPmD3+KoFjM/OZWD6AW8tPjmO+7+4jcriKqrLasnplRVWXZeek8aRZ45j/keLGzIvhADsKuqJzcdVD+xAxRjiRltVR+OfXzoEwZOSW18/GgpQ40Tt1FwJu6A6WIezkXj+yr0F2FU1qt5Hc+yPC+dX1TB/+y4CTWrVg6bBy4tXcvfxRx/sGfxiyHYyrEKIZGA6MJCQ8bhMSrmoueV/s8Y3r6CcooraiLY7/qDB23NWkZcf2S4HYOMeLyLtHaTnOTC2gq1/qEpN64mlZEP1rTQvB/nTaeky6J9YzMLyLO7YcDiPbB1Jl7ga9tXFUxZ0N1qqcXmwJMXmp0p3IFFYUhnS4LUrcPjcbCp1O2CwpaqK/+wYyNPDvuX6Xqu4a8N4rCaevghA2hKFP350CqYNHD0FNX1Du6ox7IgooRAAbw0NYYH5Hy5h0OH9OP6KYxrm79tWiB7QEaYkbmN44YrNYWPo5CEc94djOPzU0awvK+KCr9/DkKHOHKa0uLT/CG4ZeRSF3lqunvMxmyvL0ITApqo8NP44pnTpFbbNrvEd6BrfgZm7tkT1xAOmwYd5G8KM735SMpNJyUxGSkmxvxpNKKQ5QmGKm1+6lo69svj0ma+oq/EzaEJfrnjkIvak1/KPdR/hMVu+Znw3Z+G+Mx91TxCpCoQuCU5MIHh8UovrNYcQkDysCmkp6NKKuLDsitpw7BByVhKdjrB29o1x2bQIj1gRgsl9ewKwu6ISu6pGGF/DkmwqDi9I+XXRrl7tE8BXUsoz6htpulta+DdrfGvq/KjN9ACr8vhwO+14/ZHxuAS3A2nsAWN9SPpR1iKDYxBaTxTXCVjSD55HwSpnf/7vL0Wf+AMdayt1J5VV0QaLBDZhcFhKATd2W0X35GoqdQepdj9F/jieyhvGF0U9CFo2BBJNWIxIKWb6iFk4FINzO2/hw329WVXdgYY71oCcr0AJhv5WTUjaBJoHKkbBuuoManU7btUIiyv7/AqveYaw+++5xK2uJGVWMZ/+5+sw45uQEkcwSst2AM2ucv/M24FQFdwl335AVTDciL22aRVjs3L5x9I57KqpxJQy1APE0Llx3md8Ou0ieqdEep8B04j6qm8BPjP68QBsqs7nzjXvUuSvAiQ94rO4f+i55LhTufDOMyOEeVbsXkSdGX2QtDEyUcX7RC7KjgBKqY7Zw4FM/2nFDEGr3lhGGF6Na3sfi6aoFFTXcM/MOczfvgsBaKqKIFLD3qgf1Gw8T0rJgu27Ka710D09NarHbFMUBv3KY77t4fkKIZKAI4BLQtuUQVrJS/3Nxnz752ZGHa112DSOHtaTs48cgtMW+ewZ0nEjgfK/1IcXJFglUHMPVuWfkWYZwnUquK8HpRM/h+FtSZsny1mHS2neMOwnvtpi3/Qc/nb7idz272OxeSHRptM7oYp/DZrPBbkb6RFXxdapL7Lp2Jd5c/TMhjxgIeCpYXPC9pOyDhQ9/B5WTIjbA6ovNGJ8+YpjqdId1Oo2PIaG31R5c28/vnL2IdjZTdXUbPbcPQCvEX49pmalNNsoM+AN4vOGjO3K0gJ8RmQsss7QeW7dUgq9tZhN2wBZJq9tWhl12xM6do3oAg2hsubju/aJuk6F38O1Lz9BwdzdBKsDBC2TzTUFXLHkeQwr8lpYW7mHp7d8FdFhuCWs7g6MMfE/2fC2Rr/EHLZUFXL6f99ibt5OTCkxpCRgGChCRFS+7f+uGp+JBEpqPdz66ddkJSYwpW+4qBOAXVO5ZExz4yiHHinBtESbPkC6EGJ5o8+VjTbVDSgFXhZCrBJCTK/v6dYsv1nP1+WwcdMZR/LIB/MI6AZShgxvVkoCp08YjMOmUenx8cWSTQQbvSpdN2kJDq2pgdMh8AWy9FuwDQd9NfDLZ0WMSyukf2IZK6qyaC5AIQyJtl7DqO9iu2lHBjfcP413/v0udpuJWzO4ufcypBTN5u53dHl5e+xMbls3gfwVCSRuUiDKgwoVtFowXbC5No1xc85jQno+KTY/i8qzKAgcKMCQNgUzUcNx8YCIzbgTXdSWeyKmNz5Fv9F8K5+aoD9qupolJfu80fOm011x3D56Ig8sm4tumZhS4tZsHNO5JxOiqLft2ZzPjZPuRK3y4hISYYD/4jSCp6ZQZwRZULol1Eq+ER/uXUzAOnRpi80RtAyuWPI8dYV26nxxNFWxEwKSXU7KvC1LnkIo82HJrn34dYMHTppC5+Qk3lqxBm8wyIjOOdw25ShykiMLcX5NHES2Q1kL2g4aMBy4QUq5RAjxBHALcGczy/92jS/A6RMG0ysng3e+W0V5TR1HDu7OKeMH4naGBhnuvGAy3bNTefqTHwjUe1UdU1rSYQ2A3mz8vFnaq5eiBDbWphPN8AokKhYJO8GVf2B4W0oFf1BjwcouHD0mVBnmVI2o6WqNGZxUxt22ddw3czieBAemFqVqzQTDJUPv6haYhuC7gs7YK02MFA2aOG/SrlLVOzIMdsz5R/D587OozbQT7OzCVhTAvauOQRP6NaSVjczMiYjfQyh/+IyeA3lw+byIeU5V48ic5js7XNxvOGOzOvNh3np8hs7ULn04LDs3IhZsWRa3Tv0n3qJahDzw7TtfK8fs7cQYpFHijzTy1UFfszHUQ40uTXS/gj3LhxVQMarsUP/6bViyTYa3MZ+u28jT8xZT7PGS6nZx7/HHcNrQyAftrw1Juw247QP2SSmX1P/9ASHj2yztYnyFEC8BJwIlUsqB9dNSgXeBrsAu4CwpZWV77O9gGNw9m8Hds5udX1rtbTC8APmVifTo0H6H2X5NbFUMpR8BM/pPpgqLq+s28dnqyAs+ENQoKmuk/SpkG47JwWvT+6AHTWw1fsx4e5jNl0ISSJXEbw+SutyPGoRAuoqt2kJqgt3nJ9D0IaEg6JSYHLGns+46jelp+VRmqFBv3JwVOs+cfVnDMi7NxoPjp/K3BV9iWBaGtHBrNganZ3Fhv2Hke2p4a+uaBlU0u6KS7orjzF7RNXr30yclg9tGTWxxmc1LtlFb4YkMhAYl9s+rkIMTGZDUKWK9iVkDWFm5A38LMeRDiauzF0S98TEFnk3JyODBNZ8TQE5SIv/4am5DzLeizsetn81ibt5O/nXysb9yIZ72GXCTUhYJIfYKIfpIKbcAk4CNLa3TXjHfV4CpTabdAsyWUvYCZtPKU+BQ0S83E3cjBaxnZo/BF2y/F4KfbnhViLsOkbkGR/Jfmi0/HppUQnqcDxktl9Zm0rtrOQC+oMaCbbmYZisHJlIpzA99D4pu4SiqRQSNhoRkrTpA6vJqsmb7sNVIbB5J/C4DR6WFo9TEVmXSVDzNoapcNmBExK6ey1uBN9eFdKhIp4rlVNE7uXlyX3i89qTu/fji5Iu5fMBIzuw5iMeOOJE3jz0bm6Jyx+iJ/Gv8VIZlZNMzKY0rBo7ii5MuJt7WukZva3ir6xBRqrWEBLVWMiS5K/2jGN+p2UPoGpeB1jTRdj+H2CkWakg3SlElQrNwd2+5+4ZL0+iQEIetXiTEpigkOB14gsGog21fb9rGuEee54sNW9hTURX1zeXXwP48+9Y+beAG4E0hxFpgKHB/Swu3i5WRUn4vhOjaZPLJwFH1/34VmAv8X3vsrz05emhPnv30B4IVNRimxfdbu/H3T47hr8cvJD2+NsoagtAz65fKcpAIYUcIO9I+nnuHz+byhToBS8VCQRUmKmBtdfHkzjG4NStscEwoFh071DCwVyF1QY2v1/Vk1oaedE2rolNqTTMPBxvIMjp2qmX7tpCQuRowceXXNtgLAQhhYUuR+GvCjYsAOn/gofyCNHwpAlVREMA/xk1mcHo2puWjpG4eulVLmmsM729bT6DJgJVuWXy1eyumZYWVqfZISuPWUUdFHLEQgpO69+Ok7v0O/ituhf7jekeUGAPgVDjs1FHcPeLCZgpIbPx3zFV8kb+SZ7fNwqP7sADNUnA8X4JzVi0MiqPmjASsvi7M6JpKLaKi1HuvEqte/TnR5qaTM5VNtfvCSp5dqh3DMiNazkPICKtxRmgk1Yp8WGgCTh86gPdXrQ/TfLCpKuUthCh8us5fPpqJU1Nx2+3848TJHNOneSW1Q0F75flKKVcDbdb7bTcx9Xrj+3mjsEOVlDK5/t8CqNz/d5P1rgSuBMjNzR2xe/fudjmeg6HK4+Ph9+fy1bItWFJiUxWEEDx24RbG5M4nlDGiACrE30hZ2WwStdVYEoKGhiUFSa7AQXm5QUOgKJKQZku05J56RBwi8V6EaxoAMrCEjbv/ymNbBrGyLJN0/ATz3FhejThHkNJqN1qlxFYX2l5mp1r6DSxmRLd8huQWk5noRbdU7KqBaQncjqY3ogC1K1ilrFzq5p7bD8PQm96MEkWR5HQO8PenJ/DHCzfgqQofgHS6bFx758n0OaYH1QE/vVPScagalf41LCu6ColEElJo/+P3ZzUorDVGEYLNF/4F+09sYd8ezHjmS/77f28Q9OlIKXG4HXTu05EnFv4Tu/OA1dxcnc+L2+ewrbaIHvGZXN7zaPondUJKybKK7ayu2EXek6vZ8NIqgr4DmR8Olx3HadnsPf/gLHCC5uSjI25mbslGqoJeBiXl0ikulc3V+dy25p0D6WaATag4VBseI3rOsbQgaU9XyqoCba5yO1icNo13LjmbflkdfvK22kNM3dWzo+z+yJWtLwhsPOWe/z0xdSmlFM1k4UspXwBegFAni1/ieJqSHO+isKI2ZDxlSG4P4KY3+3L/RVM5ovcOQqNHdvC9y1XTx1PhHYrbrlNcExotntQ/j3tOmYNdM+u9wpb3adckBZUJlNSmMXTgdWAfDuWnNumQoQBOcE5umGJ43iLXVs7FyZvoXeblhmMW4zgudLx7ypO48L9n4E/T6NKvgmcv/Ay7ZuLQDDRVNsSfnfVeu24KDhh+DYQDhBOSHoeKsxk+qoTb71nMUw8Po6IiVCarqoIhY3tz/vUTqMp4l/9bN4t1V3VGr0sieYtO2rw64hQ7g8d05+hpQ0OdJepz+S1psKL4egwZntnQP3Ufa0o7h3lpAhiW0fGQGN6FBbu4a9G35Htr6OCK47ZREzn5uuPoNaIHn/3na6pLazj8tLEcc8EEtvmLeXz1TDbX5OPWHNTqfkxpIgmJqi8r385jIy5mRFp3Rqf1ZHRaT059840wwwsQ8AWRM4pwXtgDv9X2GPFjIy4mye7m2OwhPLjhE/6bNzuUfS5DcfHG6DIUCuqf1ImN1fsittU5Lo0Pr7qCGz74nAXbd+PT2z9WHTRMXlmykn+d3DRKeeg4VNGQn9P4FgshsqWUhUKIbKDdylz2i+UUVdbSt3MHOqb9tFSWsmovG3YVRUjo+YMGz39VzVEj/ojlfQVqHwN8FFVPIWBo1PoPxBNnb+zJ4u2dmNh3J5alMLxrPicP29KiEe6Q6OHqNy7j89EnA7A9+Dzx+p2kuXYihEDYBiKSHkYIJ6Zp8dIbC/hwRhZB/UKSE3xcccZS7NqBGyw3rZo3r3qPl78fznXHLCHJ7Y8qprMfmypBHQCJdyCMdaBmgmMSQtix4q8G7/OMHlfE6x9+iWkqVFakYGXfju7Q2V51B3+b34tyf1dMqYILKofYsA3K4qFBJzJ4aDnUXIVl7gP7KETcVVTqhVgyMu/89B5L2FHdkaDlxGfoOFUNm6Ly4Phj2/wbthcf523gz/O/aPh7j6eaq7/7hLtGH81lY0fSf2zvhnnbagu5Ztn0hgG1QJPQhAT8ls6/Ns7goWHn08mdhqao+DzR0xR1b5C/9p/Gk1u+wm/qBFoxwncPOoPBKV0AuHfdB3xfsinM042GJlT+0vcE7lv/McX+KurMIC7Vjl3ReGzkxQghePKME5m5YQt//eSrdo/TWlKyt7J5HeFDQXuFHQ6Wn9P4fgpcDDxY//8Z7bHRSo+P6578kN3FVSiKQDdMpo7qw50XTP7REnZ1AR2lmUR/jz+IlDp4nmJ/bm+XtCq2FkdWTTk0i1W7c8ivSmDpzhymDc1DbaLVYEmo9dtJcgUpqEqgsCKIZVn8/bVZfLtqG4Z5LCluHbcjyP2XjKJvcsjjfP6VeXzy+SoCgZAnWF4Vx2OvHU5Kop/RA/Mbtt8ppZY7T45Mu2oeH4pjBDjCB8JE3DWgdkZ6nwerHGEfyp7UfZR77kXWmiwvyaQ66AoZ3v3nJhSq7X6qMpZD5X00lGH7diP9M7Hi7iRamlyqs467R3/ImrIJlPpHMDitF2f1HkSqs8XqzHZHSslti2ZFnffA8rlc1G94WPHBf/PmhCrlWmGXt5SLfngGTVG5qtdkUgd3oHRlUcRyvUf1YFqnkRyfM5wyfw0z81fxwvbZDQLwTXl26ywMy2Rcem++K9qA2YZOKnVmkKBl8ub4G5hfupkt1fl0dKdyTNYg3FrImVCEYEB2Jk6bRl2wfb1fVQj6ZGa06zZ/ChLxv218hRBvExpcSxdC7APuJmR03xNCXA7sBs5qj33d+fKX5BWUN5Q7AsxasZW+nTM5Z+LQH7XNTulJxDntYUI7EBKcnjikR6iUWB64CG+cvIib3plKwAhlSaTHe3ngjFkMyCnBtBRqfA7+PuNoPlk9gdOHL2G/0Q4aCtU+Jxe+cDqJrgCH99rFEX33cs59L7G9YP9gluTs0Us5Z8w6DPMtrFKQtqP44qtcAk2qVANBG69+MjzM+O53VNoSf5ZoCMdRUecJIcA1rSHWvLbkFkqDi5GEvodNFdkEzMgUoqBpsbnoY47o3jiuaIL0kqzPRTZjIJyanzFZ36CK+QxJfYl3Z63m8yVrsQgyeVQGVx93Cm5HpELY/jGLaANeB0upz9uQqtYU3bIo9NbSOeGA1sLWmoI25/H6LR0snUc2fYb9UgfOjQJ0GZKd1BTsDjs3PP0HAFShsNNbykvbv2vW8AKUBmr498bPQNAmw7ufP694lTnH3MnEzAFMzDyQmlgR8GBXNOJtTrIS43+SWLpdVUh1u6io8xFsdK+aUvL28jV8uzmPu6ZO5Ji+Pdvlt/spHKocjHZJNZNSniulzJZS2qSUnaSUL0opy6WUk6SUvaSUx0gpK1rfUsvU1vlZtmVvmOGFUHjgnbmrwqZt2FXELdO/4OKH3uaZGQuprG1+RFZRBH+/6Ficdq1BD8Jp10hLdHPp1NGgpIQtP7bHPh455yv6ZJVi1wz+c9GnDOpUjF2zcNkNMpO8PHrOl8ze3I8ddbexak9HdpYm8/aSQZz73FmUeeLZWZbCV+v6cO/JXzH9wkcZ0TUUgzt1+EbOHr0ep80k3hlEEETo87j27PlRj72w7IA4Sr0aY7OGt3HKjJRgGBYbisdELBc0TWbu2sJjqxYwY/sCdlZ9RIH3ywbD+/nOwSwu7km0y9aumnR2R/upLVR9Gf0S7mHPgmR2fZ+A4Y88UN0Mcs3jn/PKN4sprPBRXGHyzux9nP/v+/EEdx04F7MYq/JaZPEAZPEArMobkWZ59BNvI26brcVapz98+yHf7d3e8HeXuB/nwQV72Kl9pgvBYxMx+jhwHJ/Jc6seos/IUBaAYZncseYdArJ1rzoojVZDDU0JWDqLyrY1/L2xeh9nzn+UaXP/xZQ593Ht0hfxmj4uHTsCV5TKRkHIg22p+aYQgnink9unHIXS5IKUQInHy18+nslj3y08qGNvdyRIS7Tp0978T1W4+YNGs0/JxiI5s1Zs4e+vzWooK96yt5SPF67n7dvPJyMpulzi+AFdefPW83l37mryy6oZ0y+XUw4bSLwr9Com3RdA3Zvs92LH9tjH2B6fY7huJFjtQVPDDZGqWJw4eA1zNo3luc9PjtiflAqegJ11+VmM7bGPR8/5kqmPXsxF41fjsoffTIIAR4/O47HXDkM3Gg9ASXp0Dhk6X1DjzUWDOWfMeuKdQSqDDnZ4k+jk8pDprGswvPvvFyFAKJIk4xYsa1GDzGOFv45TP3+DMl8dR+Qso3vielaXKdgUE0VAgSeZb/YODAs37EfBIlELMqnDnqjf8cr5Gdx7zUcYruGARHqrOf5fW+lx9IEBuG07O1JYpqEbB35nw9AoLEngnaX3cPm4+5G1D9W3emr0nQe+RVZsgPSvEeLHXdbxNgeD0rJYWx4ZEgDYUlXGNd/N4IkjTuTYrr25vMfRrKzY2WpsNhoy29bQ4cInBGnd0hrmbazOx2ymi4SUECxxECiKQ5oCLUHH2dmL6jy41Mc9nlLo0I8yfw3XLp0e1uxzVcVOrl46nXeP+CMpbhfTf1hGZZ2fLqnJDOyYSefkJKb2741P17n3yzmsyY/8vgKGyY6yCjYXl+Gy2fAGI2P9QdPi5cUruWj0MNLjW5RB+Fn5nw47/FKkJ8WRnhRHQXl4MriqKhw5uN5rMC0eeGtOWAghaJjU1Pl58cul3HJO87qi3bJSm50vEm5CCjvUvQoyAEoqJNyKDQGajaath+yaRZytiNISL4oisKL0w5JAWW3oohNCckSfXSS5oqcBKYrE6dTRPQeMnsNucvlpy6kLamwvSWXW+u5cOH4V92wcyzt7+2JXTIKWysSMvTwyaC52NfwG1RRJRkINlRULSEs/AoB/Lv2OfE8NXRMLmZK7Hpti0jineVVZ52barkhy3TW8MfpL7IogdGkZFPvdzC7JRa/VeO/GLGRKAgiBEALpcDPz7wlcOnAB8R1C+9hXmEFQj7wsdUNl+z4Tb8nJuEU1UXS3wKqAwFxwHhM2R0pJuX8xJXULsCtJ5CRMw6VFr3p8/dizOG7GKxR4oxcc+E2D+5bP5diuvRmckkuv+CzW10TXeG4hgTAMBSWsEMNnBppXQpOgOMyGSjSj2oZfcePq4kHR2v4CvaR8O+d3m8An+5ZFZEWYWJQFalhduZuLRg/jotHDmt3Oe5edy5Jde7n49Q8iztWSko/XtljkhV1VWZ1fdEhzf3+L2Q7tjhCCv180hRuf+QTDtDBMC4dNI8Fl5+oTxwGwr7QqarWNYVrMX7+DW2i7qLOUkqVb9rJhVxEdkuOZNOw6nPE3gPSF8m+FQBp7owqg+4Iai/I6MmvD1mZjZ5alMCS3EAgZwji7zqo92Rzea3dDp+H9ePUkSh0ubH6JYoIjXuekKZsoDbr56Ot+bC1O5+U/zOD1Pf15b28fApZGwAr9vN+VduafW8Zy38DIVzy7aiKVtYTU8OCr3VsxpMX47K31hjcchZCORFMcwuCSrhvo6PICyeAYwVPrq3h6+yBUJElfV5ESr4RViglVQbrjWfZyZyb+3y4AUhKD2G1mhAG2aQZJ8bVY0tfQBDIC6QdjO3DA+EppsqL4Rsr9yzBlHQIbedXPMyzj32TGRV4LSQ4nP5x1NWtKCznl89ejGs89tVVIKanW69hSWxD9WAC35sCUFn5TR5rg3xeHXu5EAraUAM5OXhx2hYmZA9CUA8b31e3zQgYhikMmFNCSDBSnjrQU4vtWIbRIvd7WWFu1m0VlW9lbVx41bLE/Va4tFNd6mn3I+KMo0TXGQpIW13q3j5+LdtR2OGj+p4wvwMjenXn3jgt5d+5q9hRXMqJ3Z047fGBDb7ZEdygtKxpFFbV8umgDJ40L1z8wLYv8smrcDjvpSSFPNKAbXPHoe2zcXdzQ3uefb37LG7eeR8+OBzIdhNaZavMYnNashnBB0FCo9Lr4Yk1ffHpjD+bAHeW06UwZkEfn1JqGeYu2d2bFro6M7FrQkJtrSYEiHFj2k3FlmPiSVHRTw4PGS8uH41hjIKXg5cs+wmXXeWX3IHxW+EBYwNL4KL8Xd/f7AbsaeZvsq1lJ70ZNhTVh4tKC4dq8NTbKdybSO76CrxVBxFcsBEdmlCNFOuWuZ7jkuzVsrAhlF+qAI8FR/6/I9XbmdWSCVUCcLZkzxp2KaX1Et9x9eOucLFg2iM3bctE0i6F99hEnWtDGFU7QeoZNKvR+Tbl/Kab01X/LOlLC6tJbOMY1H1WJXn48JCObTHc8RXWRamsZrtCDtyxQi02oUSvGACZmDuDIDv15dcc8Viypw/Aq7Hcy9TInZo2dQYe7uWXAKayv2stz275ha00hVUFvq8bUnuFHdZsIm0WUFnit4jODfFu0jiHJXfiueENDutz+MQNLSvol5bS6HSkl8/N2HvwBEDrF9Lg4huY0r73ysyNpEBT6pfmfM74AnTOSufnMo6LOS010M6xXDiu27MVo8qovJTz49hwS3Q5Wby+ksraO9CQ3n/ywAZ8/iGFJenZM44lrT+H9+WtYv6s4bP2gYXLxQ2+z8PEbwqYnZv6bR173ceqINbjtOnM2deeVBcPx6U2zAUIvokkuP3+esojjh2xpOK73lw+hqCYJpOTc587ikvGrGNS5iH2VKSjxV3Jk7iO8d20tby8ezIxV/ajxObCkQqB+H907VKIIqNajV0gZUiFgadjVcAMoBGyqKCIuvYZMt8ZNw1aT7loV6oRcL3Lzw8t9WTOjO6rdwtIVRvdUWXEsWE4FgcCwTISwccz3J5HicONUl7CvyWt79egEkrbXEFfQxGpLSWFKJg+u+APvHzeNTZUXMGpoNWCQnlpDdod5rFzfi15dKxiZejhCn0VUI44KSgY4jgybmu/5rMHwhv8SgsrAStJd46J+XwB/HDqee5fOCcuAsCsqPZNSeXbNIk7o3herGS/cJlSu6DmJbFcKLn8iVwU+wQqLDQvs0sHJ8UexrbaQPy5/5UBxRWuyGwIUp4Eab/wow7t/F07VxnEdh/Gf1d9TthVQLZw5XhSniVQUvEbrIvBzt+3kmy3bW12uKQ5NpUtqCs+dffKhz3aIhR3ajwcuO54/PPoeOwojR939usFNz32GooiIogqAzXtLOf72F3Fo0a9qX8Bg3po8jhxywMOy2WzM3TaS95b1bcPRCXRT5ZgBeViWIGip5PuvoVgfjGAVpoSCqkTu/+KAEenSoZIjryknPd7kiiNX8PbiwVgy/PjySxNwaibZTg953hSa3sEpNj8OIl8BvYbKt6XdqHBuY0Dqf+kYtzosHWzTt51Y+1k3TF3FrC8zrt5WzUmp3ej756EsKdrL3H078Nfnu5b5m8kqUaBitIu4T7xNpgtKDnNh1Xl5b9uD9E2poXH83G43GD10C+OzPyDZ7kaWzwlL+9v/neI8HpF4e8RgmyKaV9QSrVz+5/QeTMA0eHzVQjxGECklUkoWFe1lRUkBT61ZxJn9hzO3YmVYVZomFJ4bfQXZrlCWzJbi0qgDaH7dYENRMZ94Nx5UVZuUYPo1tMQfXwJsFxon5oxg7b5iCtfbEXF+3D2rG5ptBmSAq5ZM56lRlzAyrfl47BvLVx90KbIiBDOuvJBuaSmtL/yz8/NkMrSF32Qni+R4F1ccNxaXPfqNJyGq4d2PaVnURRNSqeeBt+dw7ZMf8dJXS6n0+DBMi5KqKGLgzVAXtHHFy6dw8fTTOfKBK7joKXhv3upmj6nS4wcRKjjwBGxhdlUYEnehweV3nM7Ft5+B58tkiHIxVXqcvDBvNL6gxn474DU01lZ3YHZJVxRRSoV/Wb3ewgFWfdQdIxBupAzdZNPSnZzesR+Li/Y0GN4WEQJPFw1LBYkV+k+B/BPd6MkappQ41A0N6WyN0QMqn3/7HULrhEh5BdTuhPwGGzimIDosRUl+BKGkRqzbKeE0VBEZUxTCRoqz+YGk0DKCS/qPYOV5N3DriCOxKfX90Ah1yfCZBjO27Ob2gafRJyGbdEcCx2QN4p3D/8SglNyG7eSmJEdNy3LZNLqnpZLnKY6YBy14ZLI+bFGnRSwjJRg+hdp1KdTtiCdamrBA8Id6zYn7Z81DNy2cueHt5YUAE5NHN30RuYFG1Ppb946bkpkQ/ysxvPXINn7amd+k5wswvHdOs+k6P5WSai8l1V4Wb9rNK18v5fVbzkNtxpNujF01OGbAdgZ1KmZveRJfrO2DKcFswXMQAob2zIG4K8DzLKlxPlw2g6ChgZS4iwyECRZKqJtxMWR/A4WTCPt1LZsgmFHOx7uy6egyCdo1ZhZ254ui7miKythMO7trbFiE30z+2uhhDEVRqKrxUtO08qMlHAojnz2SL75dhWGY1OXasBwHHhQVvjhy48toaqfsTp3kfk+ztHAl/dL+SkLGV0irGoQDIaL1sQNL6pTUzcWr7yHVOYoy32IEAiFUQDAi80mUNqakKULw5e6t+KMM5JrSIkPL4PXxN0RZM8ThPbqQGucmYNQ0hMIE4NA0pg3qy9uL4ut7wjVBgu5R0dxmw9/Uy0DG968ial2FBO+WZNBVLL8GisTVqQ7UkIZzvObk6ZGX0T+5E0HTZFtpGSBRmklV2+FpWRXg+AF92FBQjBHlSaEQ/RDvOq5l/eRfFBkbcGt3MpLiuXTqKF76aim6cfBGWBHQii0FwOPX+de73zGsZw7Lt0aKlewn0enn1Ss+JDWujjiHgS+oceVRy7nilZPZFqVUOXQMAqdd48ZTDgd3CnhfRcHPYT138+W63qh+iYgy0K15IHEr1DTqatPBXU3/3qH822pTY1FhL74q7oOmwB2jJ5KbmM326joUJF01k46qhQUsHVnEsm+7YJnhFjGg6dyz6V6mdfMwe29XvD4nUq3/4lpg5r6NXHHaDtaWB1hU1J2a+s7LmlDwBSdi6q+jNFFaEwJUTVLmX8j8/B9ItPdjWMZjrCmrYmdNJX1TMxie0bEhdug3Svih4Hx0qwZLBlCEHZeWTeeE03FqGWS6J6EpB1e6bFMi85ohNOBkb6WsXVUU3r7kbO74/BsWbN+NRDI0J5v7pk0h3uHg0h5H8djmL8JF1y1BsNBFsNKBNEBLDOLI8aHWa3kIhajvrWatBo1U6PRSN3qZE0cnL84sP35T5/71H9Ojuh8fr91YX0EnkKZARElVS7G3/D11SU2O6J0H0C0thTumHsX0hctZsjt0Xzg1jbuOO5qje/+6JCUPVYnbb9b4Alw+dQweX5B3vlvVqlfaFEu23QAv3bKXbx68kim3vNDsfq6euJTMRE+DEI7LbmBJuOeUOZz3fHjldWaih9NGbGR0L8jpeCxpHdxgbEfKUDx1fK89zNnUHdOMbhAUC2yNoiA2xeDUHgeEyR2qwRE5efRLvYjJXY6gU3wSG8v/BUBKIIGnNg9hiyeVAQnlnHPuJjb+0JE6n4ZpqEgBUoX8yXFsKUgkcadO9++qCZb7kRpUDnVQcoSLRKePGj3yxvUZPgy5neO7lDO1y1qeWzeJUl8HzuuzgAGpu5k7YxBjJm/EZtdDIt8RtlyS79nBjfOmUxOMQyKxKSoD0jrw+pSzcNvsrCu7G79Zwv78ZFMa+IwCfMY+eiRf1nSDbeLcPkNYU1ZIXZPy4wS7g/5pma2unxEfx/PnnELQCP3ujZu3ntJpFJUBD6/u/L4hLXF4ejdWqjuhs4EhTYxmMioaY9cVxAe1ZC7Zi9QUPKOyqBuQBijopU6cWX4MabJubR1rqjcSNEy0VD9GpZNAoQtnx7qw0IMiFS7pflSL+3x96eqotquguoaOiYlce8RY/qgqdIiPIzspMaLa7ddB+xyTEGIXUEvowjNak5/8TRpfy5K88MVi3pi9gqBhHLThbdjOQay2ZPMeNFXBjNLFFmBS/x1hCmQQMu7d0itJcvmp9oVen4flFvDE+V+gKhYOzQK5EVn2BiTcEWo9IGFiv5088PmRNJPYgKWCvwMILDJctZzaYyWD08O9ck0oTOxcS6f4JCyps6f2fcpqUrlpzWQCZkiofYcniS8Lu9IzsxqxAxCSQIpCwQlxBLJtuPINMj/2oRv2kIymDimrAowZuY289HRqKqN5TRLd0rDVF3xcN3gRmpKLYA8Snb7Dd/P8Xadw1o3fkJ0bmWcqJTyyagoVASf7X2pN02BNaREPr5zPHaOPoMz3A03F7iU6Bd4vGZh+V/QvrRWmdevLvPydfLFzMxDyZlUhmD7ptDYblKqgl7d3LWRx2TYynImc3/VwBiXn8vjmmczYtwzTskiwuzi902je2LUAv9QbvDK5P+4oQqcd70vGlWZSZwQBiWGYdLi9lOotlSh66Hux53tw7Kii8qSeWPXesKUL/BU2qDfmitPEnuUlWORGqBJHZn1miIBjOg7krC7jmLdtJw/Pmc/uiio6Jibyp4mHMbV/SN2tuDb6WIdumkx7/nWcNg3TsshJSuK/551Cx6RfYTPN9o1OTpRSlrVlwd+k8X1h5mJe+3Z5hFBOW0iKc1IX0NGNtpdrpifG8eqs5QT05tfRm/FSEWA0DJBJ7j11Nu6w8mIf0iykpnI2cZaFpoJuKgRNBcuuYDgtNL9sqDtQVYtOA8q54PTFdIqvbEFgR8EmQqXWplWHlCavbh2Dr5FYjoVCEIUdY5Lolhfq6mGvkSRt0inJtpH+gw/R5Cu2KSaTjllPanUu26s7EGySc2xJQY+kA3FEuxIEtmIRKj/N7FzJ5Xd+SmVpIqahNLxm7ydgqpT4kmjqrRjS4oO89dwx+ojmTpioo09tRAjBIxOO58qBo1hStJcUh4tjcnvi0trWn6wy6OH8hU9RHaxDlyabavJZWpZHv6QcNlbnN3Q5rgx6eWnH3Ih280KEDt+zMQXLp2LY7dw1+DjiUiVVupfAvHJe2PVyg+GFUPunuDVl1B6Wg5HhxNIFMqgiFImsF683yp3ED6jE2dGH1ENdMYQCiZqLuwefwfd5u7jxg88biiV2VlTyf59+TcAwOXlwP3qmp5JXGqmpYUmwpIUnEPpdt5eVc+4r7/Lt9Zdh+xWI4zdwCPN8f3PZDoZp8ca3K36U4XU7bEwcGl0wpiVqvD627CttcZkZq/rib9IRwrAEFf6+6GbIQ8xOqiUlLlpOqk5d9UyOefgSPl89kOU7O2HXQoben6ESSFYwtZDH23dkOedfOZvOCS0Z3hCZcZMA0JREbEoy2z2R2QIA/uwDx60YkLI6gDAk9orIptspnTxISzCywy66J5biUEKv6SomNsXgvD6LcKgHfhvTNLCavC3EJ/np3LMETdsv9h4iYKosLupBc6+JAdNEETZSnaNoemkLNLLiprTwbbSNPikZXNRvONO692uz4QV4Y+d8qvW6sIIMv6WzqnJXhDZEU8PbgBQINRSjrQvqrC0oZnR6T6ZkDyHvu634PVFK0wU4dodyroUAl0ugNEpTtAIa3u0J9duWIAVOHPxnzB+wKRoPzZ4fUaXm1w0embOAjYUlzNq0jbYggaIaD0c/+WKz3vKh4iB6uKULIZY3+jRtgSGBWUKIFVHmRfCb83x9gSDBg/BaG1MX0Nm2rxQR5eZW6/UZot0W/hY83v28umAYw3ILGdipGEVITEuh2ueixvF3rjvJ4ImPFxAwNJRmkvZ9QQ2PX3LvpxNISzAI6AcUcvREFT1RRSAZOzU/9P7fCt2TLkZTQtV8y4r3MWvP4ThVHX+URmKqP/KYVL/En6mi1YQM8P7D9lU5UG0WqiK5fshs1pfnsK68E3FagLFZeWTFHeiLZ1lg6haaI9KICzQ6JZyGblZQXDcbb9DO7L39+GrvoGbPaWh6qFJqUPo9/FB4Hqblw5R1qMKNQ02jb+pNrX4vPxcLS7egNxOSajOKxJ7hQ+tZg7AU8tV8TGmhCoXUrBQ0uxbZa06AFWfDmWDROSGFM7uM49vKIhbsOCB+ZFY7qVnpADU0emt3xtNraui73FNRFfVQims9XPrmhwf9xl7m8XL7Z7OYft5pB7nmz0jbfa2yVuK4h0sp84UQHYBvhBCbpZTfN7fwb874xjkdJLodVNRG7xbQGhv3FKMpCg6bGhZG+LFx4/0ETY1rX5/GgI4l9M0uo7A6nuU7uzBuwG4ykuJDx+yVbCrMYEDHkjCVNF9Q4/1loZJoS0JpTfSfzWG3kZlRgdnM1bR/EBGgsG4WvVOvZ37+Lq6Y/RF+M4FURy2mVNCtA9sXuiRlRbhHJTXQ3Dp6phN/IC70qqpb2MvrqPU6Wfp9X3J7lJDTtYzB6fsi4s1SghlUMIIqmsOI6qELFPrEjUOr+T8Mp0KZMFkubWjCQo+iqCaAhyccB4DblsPETl9R6J2FV99Nor03mXGTWiy4OFikWQqBb0MFH46jEVpk9+LGpNrj2RGtmUsUDQcB2BQNS8qGgTZp1qvSJel46hzoARszPNsoX/AaL064hGMvncj7j3yKEQzfNDaV9FFdePOyc8hMiKeguoYH9qyIcoQC6kNjZR4fszZuY0r/XmQlxrMnSueJeIedmh+R42sBi3buJWAYOLRfiflpvwaa+fX/LxFCfAyMBn4/xldRBDeeOoEH35nTaujhuFF9+G51Xpjnuj9rJpoK2U9HsKEgkw0FB0bH563dgSJEgwG69f0pPH/JDFLifAgkqiKZu7kbH64YEHWLmiLQNBXLkpw7cRgZcbsp8OyLyJWVEjZWdGRgWkgIJmCEDME/ls5pKJKoCOzXBg51wcWCpA0B0hf72W8hNIfBqIvySNvWleLiDpj11lzaVQJZ8QjFYsmXg1lsCVSbSVyCD3eCnxFHbqH30D0hKUsRKpz45uGhHPu3VWj2yN8p0d4DreZvIL2owJUrTmZrbWoTwxsahbILixcnn0fnhOSGOariolNCpJRne2DVzYCaOwBBmW7nu6r30e1HMaHTxXSJi542eH63Cayv2htWySYtsIICxUbolb8eh2rj8eEXM790MwtLt+ASDnYW1eCx11JZkVCflyowTZidV8x99tncPmYSd753Ew9e+CSWUS86lezigumXc8qxYxoGBWdtzmtTOe0fP/qCr7Mv4U9HHcZtn3+Dv1EuusumMTQnK8x7PhgkMuwY1hUU8X3eLtx2G8f370NmYnTZ15+L5nSaDmobQsQBipSytv7fU4B7W1rnN2d8AU4aN4Bqr5/HP/w+qg+oqQqXTBlFl8wU5q7dQdORcd20ftGUGEvKhlefcm8Cpz11HsO7FpCZ6GFDfgd2lzdfDZQY5+LqaeMY168LOelJVAcy2F37bVgpccBUWVTYk093DuPRCe8AkOQIGfO86mgC5CHdsnPiC6jp6EEfDKXbk4hP8zP6/K10HFLBgjtGYxpq09WQUiXoD03XAxp+r5PyIijanU7BrnQmnhpKeUtLCJDY28QWJblfYKOzPR2sPACWVGSzw5tMMIrHe0LWTh4c9D2upHSkdT5CaX9dWCklX+/exosbl1Pl9zA57Xv+0A2WeNK5f2/oLdSihOd3P8GF3Y7kyl7HRGxjfEYfruw1iac3z8I0JQiJWadRl5eIlhTE2dFHYryN/kmdOKfLYfRL6sTwtO78se/xAPxp+at8vT3YYHgbM33DcvLyKnny9Gm8XzSdzSu2E1Rh8PCeaE0Gt0zLalOHCktKpjz9MpP79uRvkybwxNwfqPYHEITS5opqflzcVhGCoTnZOG0aUkru+mI2n67fFEp7UxQe/+4HHjz5WI7r37v1jbUHUkStCP0RZAIf1+eaa8BbUsqvWlrhN2l8ITR45rBrUb3fo4f25NqTDmPj7uKoF6KANjcObEtlW1tx2W0M6ZFNWbWXuIQezFy7o9V1OmUkccaEwQ1/Jzn6sKLkD+TEfUDnhFDGi10xGZi2F00xAIEqHPRJ/TMAaU43pT5vxHZTHS4ePPtxAPIqp7O16vGGeTu2ZDXjLjR9fz7wtx60sWJuPw4/eiNHdqjBLWDoJStwqgabgiqFjQaBFDQyXKPAuwiArZ4UzKivhoI0u484zcTyPIH0vQ9pHyOU9vWcHl25gOkblzcI7Oyu6c/HhV1RU/TwB4I0eX3nfCZ06BdVEeyCbkfw8hdbKdQrkLqCVd+PTy93Ya9N4pTje/Fx8SJuX/MOlrQ4IWc4N/ebhqaodIlLRw8WsP87VhSLxOQ6bPVvDWv11Rw/azM5wU5szqvFkhLH3Nn88ajDuGDUUABqdR9ed1WbWw5J4NvNeXyzOa/BiZEQNQzRFgSQ5HRw/7TQwOcPO/fw2frNDV71finYW2Z8zYQeXYl3NJNL2d60w+0rpdwBDDmYdX5z2Q77yU6LntDtsKn06dwBgP5dMunbuQN2Ldw7aOtvMahrFsN6ti6711YURXD2UUN5786LePzakxnbL7fF9G+nXeOiyZHx/5uGX86a4oHolopS/5qf7qpjfPZ2Cr1pjMh8hWTHQACuGzw2YtTepdm4ZvDYhr+L62Y3/HvDli689ukUDOPgn9uqZmLbk0q8AE1AdaGTJx4YydNXHM2SV/tgmQIIpTstKX8h1LgU6OquRhORBsOt6vSKrwJAQQezCFn32kEfV0tU+Ot4YcPSMGWzoNTwCA0rygMhYOlM3zYnJAsZhZ7p6VgeG5Yh0JIDaIlBEBIr0cP7hQvxGgF8ZpCAZfBF/ioe3zwTgLO6jGs0DiBJSfNgsxsNYRzFZlFdJlm1pQKfbhAwTGr8AR6ePZ9P126i2FfFGfMf5YPi+diyPbRVsMBq01JtIzMxnm9vuJyu9boOn63fHLU9vaoo/LBjdzvttQ0cIm2H36zxHdM3l6Q4V0NPtv2oqsLJjfR8n77+VE4+bAAux8ENxnRMS+TRa05iw67oLWeiodUrpNuaUUwTQjC2X5eGv289dxKJcU6c9pChU4MSZ5lBfLGBu9rivCOGkZuRzJMfz+fh9+eyKi8fKSUJNgcTc5bgUKOU6YoAiwoPPGwu7jec6waPIU6z4VQ1XJrG0Z26MzyjY8NbgUcPvf77/HY++OIoDGkjGC/CxykaN4hrDgmZST4UAdvzkvjTVUfz/ZxOVNbaGX52HooqAQtT+vBaHrbpChIb49MLyHTWoTUSrRfSQvcqLPp3NtPnDOKiZVM5at5J3LRoBzurQ2p2tcEA725dy5Orf2B+/q5W32ak5cHyvoVVfSeW902k5WFtWRH2KKXFulSjeuNSwvelm5gy+35uXPZyhCzjdRPG4soKkDi0HHe3Wtw9akgcWk5S10BEylnA0nlv12I+WbeBHHcqt444GkWA3WEgFCtioDJQ6I54hfbpBk/PX8wTW76kOliH39JxdvQRNyCygOXn5uhePcK82ZYci19UZjImrNO+qIrCSzefxW0vfcn6nYUIIeiYlsg/L51KamIorzaoG8xcuomdRRUM6pbFss172/QdJ8U5+fieS7j3jW/wtTGf+MjB3TlxbH9W5eWTmZJAIGgw/csl9YZYoAjBk9edgqNR2WnnjGQ+vfdSPlu0kYVL8ti8eA+mGRqscBrw2VvLeHP2SgxhYUnJRwvWcdzoflw4aSjxrujZHqlODxsrSpjWvR8Au/dWYP5Qx4mluWyLq2Z9Qjnz8nfy3b4d5MQl8ubUs7EpyZimj83bcxH1HmgwRUVqFvYaC2GFBlEUXYKqhFIqmnTyFMIiLj5A/54hBa8X/zMIvz8kctPriAKiXd27TSdJrglkGl/xzujPuXHNRJZUZCMtgXuvQdbXPlZnZvKlpzsyENpXvs9i1mev8fDhx/G3hV9hWhY+Q8el2RiQmsnrx56FM8oouzTzkeVngFVHqE+fC1n7BGlciRFF7lEPqNE7TTRMkywuy+PONe/y6IiLGuY7EizcuV50CSiNMlqI3j5KIrn7629QUbh40Fhs0sl9az+PzBCxaDZ2WVzjYWHp7rD8Yc1toiYGMWvsRJ6IRDh1pN8WZd6P54QB4XHckwf358uNWyMkKS1pcVj3XH4RDmGRxW/W+AJkpiTw4k1nUeXxoZtmWPNM3TD5w6Pvk1dQdlAFGU67xnkTh7Fy6z5mLdvSpnUE0CkjmUnDejFpWC8Aqjw+nHaNLftKGdw9m5PHDcAepVNsgtvJ2UcN5d3pCzEaCQTphhnKZy4zMNNC6/mDBl8t3cTEIT2oxYVD1Qn6bcQn+Rpu1gp/PJ3jk/ludR4z56xn5dw8TNNCSrC5goztUUp5poNNiWnsMCu47uMPuaTrScis57FMsT8PIiy/GClx76vDle/FiHdgukOyl0pSqPecZSokp9dy5tVz2O/0b9mUyv4b2xGvo9ojwwqWDOLV+lETWMHlK0az3ZuMzbJC1YKGQK21KD4/AWk7cPOYUqFOD3LT/JlY0kuXxDK8uoN9nlRWlRUw9ZOXGJXZiYv7DWdgelbDerLmXrAqOVBr6gN89FcfIdd1KnmeRExCWSlSgk04uDhb5a2iaoJWfcZYRLKyZEnZNsoDtaQ5QpkkM/Yti9oOXkVETRGUpsDvs7jnyzks25PPuG65PDTqJP6+8V1o3JVEAWGzkHqkl+7QVOoCekgRrdExxvWqoWZ1akOKWf0eQUhk4Mel5cXZbXiD0fPMmxZXjOnSiTOHDeK9letC+cqKAhIePe144uy/ULyX9sl2+DH8po3vfpLjw/Vcy2u83PvGN2zYXdRmFXuXPZR3mRLv4sWvl6IIgd5Mu6Km2G0ak4cfeOovXL+Tm18IeS+WJfl25Tbyy6r502lHII09EFwGSjI4JiCEneKSGqq9kZ6RADSfDBOB9OsGC9ZuRy0fxtie20HA3C8HkTRwH537F/PVrlGI9evYW1CJ2O5DEyaHn7CWkRM3YnOYWJbANBV8uo1tq7KpWJrIf5/Ood/R/Rhw6t6owtOqYuGu8qFpJpq/DsOrcthFe7n8vOUQ1Njrt1HlDmIh2Kor9LJZJCYF8ftCN/je1emMOCMPxRUeJlGEjQzXeG5b6WZz7Z5Qmlm9mlddrkbJkS4se5RXf6DOCNI/pZQjcjbTO7mYykAcT6+dxK5aiz2eaj7buZkHx0/llB710m+B+UQr8hfC5MWRX3Lh+il41Hpv11I4s9PhXDtkKqf0quTMb6YT0KrC0sUOfDcqFUFPg/Gt1f1RK9gsGVJOC1pmg4GUJvj3xAGC2kCQd1eu47P1m+mSmkzvvlls9xRj1b+JCAHOzl58uxIiPGCPVkuciCZSBLl9BaVbNBQhCJpmqBAkLKMiSiJyC7R0Tyzdk88JAw80HBBCcPuxR3HWsIHMq081m9qvF6lxB6c495OJGd9fhrJqL+fc9waVtXVt/s5PGtefpZv3UlRZS2FFbesrNGHa2P4M7h6qGPIFdP42/QsCTV613pu3hvHd5zMi652QgA4CsEPqa5SbCViWjHoLNGlogSIEY1OfYtRh23A5Q/sY3reQhatzef2H4xiVdhwf5K9F9+q4JUy7dAE9B+1Fs4VuGlWVqKqJzWYyYvxOGA+WsYbP7xnNO3+YQOqgakriDpQh22wmwwdt5YgL1rBjcRaGpdCzl8kZo7agCRC2IBnuIHUSFgds7DY1vNg4+Vw/r/3HRcCvULQphV3LOtBlVAn2egMscJLpPga3rQ+z9s6MKKyQNkHNAHuzdsGp6jg0nTe3HMa0rqsZl53HdYNn889lJ2HJUBfiOxbN4riuvXGoGvu7LUfj7fKemPYD+hmoFp8VL+Lo8l6MTOvBsVnD+TB/PnZXMMLACaCz+0Du7/j0vny1b22Eobak5KzUibyz6wd0hx8roBAoiMOoCfcA64I6O8squVoZxdjulXyevzJk0KVFSgewaR5EUQpej4VRr2etxhnRQyQKlNf6GJHbleuOGMvLaxfx7ZYdODt50eJ0pKkQKHYRLHICAk1RiLfbqWqhuEKPonm8n1V7ozcb7dUhnV4doudH/xLEPN+fwJ6SSr5ftxO7pjJpWE/SEpvP9Xzl62XU1vnbbHh75qQxa/nWsCTzg8Fp1yit9rBi2z5G9OrE4k27o2ZhBIIGny/JZ8TJgUZPYi+y8kp2BJ5FzxTYikP6vfuRAoKJ4UZpYFYJo/ttw+lolBTvNBg/bA+7v5nG1yt2EdBDo+RJqR56DNzXYHgbthserkW1wQl3LWX2E0NJ717LHm82G/O6ATDl+KWMGhsKvww7dQfCUJgU56fxmKImwA3ITSnM/jaX9K4Orr/4cTYUfcaC91cjFcHMh0fQ6axS+kzdC0KgKccwtevNBEyj2YEyyymwl5roKWpY6MGu6JzecznDM3ahCslbW8cyJms7aU4v2XFVFHoP5E1vrihlSEY2uE4A36c07Q/nM1U+Le9GQIbfKgFLZ3reHEam9eDawWP5fPcGLFkMHPAwbULl2l5TcKoHXuETg8lQZ0O6gyGRutAYI/6COGbk7cBuZVLl8bY4OOg3DN5aupYXzz+NG/qEqvqKfFXs8pbSJS6dLGcyA+9/smF5s06L6t1JEwK1Gstq85mxdhPbykuJ71MVCmEIEKqFs6MXxW4SKHShSRs1gWDkhhrhtGnNthWq8kWPax9yfqsxXyHEVOAJQAWmSykfbM/tP/f5Il6dtRwpJYoQPPbh99xz8RSmjOgTdfmFG3e1OVwAsKOgos05v9HwBw3mrd3B/PU7Gdq9I4luZ9TqOYnEitZ5Q1bTI66I2sNU4uYZ2CsJvXqb4MsFIRTcNhuWlFiW5NIjg2hapPdh10zS4tegqSHVL2kTpKZXYZoKtkZFJpYFigK6X0VRJWq9YdZsMOnGtWgOi0GBXRxnLuG9pyfRpfOBFjhSQopmRr2WNQEpumDjl12wbLDq7Yc55eHjeK/jPqzdPgLJCltSU5m9rjdxuwz67hEonT7imFOGMyA1k7XlUbJKhCCYouIoMwlkhUICdsXguC5rGZ+d17DYeb0XU+pLJMXpJU47YDwMyyLBHupeLBJuQ+qbwNwFUkeiI4BywxnS24hyCeytCxWopLvi+ObkK/nPhoXMKl6JIeroHJfKNb0nc3iH8L5+Dk3D3JFGMN6DlhIAUxAsc2F6bBRQ27AbQctvw6UeL2e++DanDOnP3487mixXMg7p4JtNeXiDO2isQmLW2jDrNNS4Aw03Q9V1KkaVHUOavLNyHe5utWhK+INXqKFOyYF8d5vaRZmWDLVbanItC2BwTlb0lQ4lP1MmQ1v4WY2vCPVseQaYDOwDlgkhPpVSbmyP7W/cXcRrs5ZHvMLf/eosxvTtQlJcZIuZtEQ3u4vbnmbzUwxv2HYsycq8/GaLMmyKRK9QWbCyC+OG7EFVD9yG/RM9ZCTHs+foakSNRPWBngTOOBsfTT2fvB1l6LrJ4QO7EWd9gFH7BVqTNDPdUEhNy+L07EE89tH3+IMG+VZqg2SjoSusW9yd7Mwy5j0ziNIdiQgBXUcVc/SNa3ElBtEc9TqxDhNpmZxw8UJSO4TCMFKCaSm8tWMEwwctjDg/04TK8tDvoehQW+3juwfmk1VUjhKQSCGoy1GxXIKEPJ063cOspeWsWLGQiefkstNmUatHSdHTIJAduoxHZOzgrF5LSbCHe2dCSJIdXlyqzvujvqI86OKZvGFs8R1G96RQCEUoCZD2MejLkfo2gnWfgr6adC161ogA+iZ2bPg7yeHkluGTuIVJUZffT6i6y463woleEX59yib/dmoqHRIT2FtRFWEfJCEPeMbaTRzdqzuWlPzpwy9Cvdcs2WQsQ+Ddkoyjoxd7WgCERK9w4i9wh3l9iluPGheWlkBxWpjelqUgnZrGMX17kJWYwPQflofNUxXBjUc23yn6kPJbNL6EhCXy6qs/EEK8A5wMtIvx/XLZFgJG5NNYVQTz1+/gxDH9I+ZdNHkkG3cXh2U4qIpAU5WoeryteSAHS2PDq9UbYmmBUif5YWEXVi/PplNWNU/c8gUuhwHSCzV389ZIJ39cexarhUQkC7Kdbh454nj6ZnSgb0aHhm1K6ySCdQ/TtGQaBIOG/YGklE4s2ribxZt3U+VJZufebLLTynj7salUlzpJKKpC92nsLzHetbQDH986jnOfmRcWNhQKJGd4KPAm4tZ0tlZlsrY8lxS7F91S0Jrkoeq6yswZjdrHSNi3vRRFEwQyE5Cais1v4NjtQUhwJQU44a6lpHevwTIUHnApfLR9KHPym3SIbrSTFGcdLi3K9SAsbDaL/ppBks0iyaZz38AFLApU8djWXYxJPYIxaUehChXsoxD2UThcZ/PK1rMZYNvLBR228HpxX/yNQg8ORXBVlDLi1lAVhefOPplL3/wQKSVB02o2TqqpKn866jDu+3ou3kAwQtoRwKfrvLdqHQt37I46vwEpCObHI4sSCTbz5mf6VBSnGdGOXiiyoRqvJbIT41GF4MUmhhdAEQo7yyvpfQhju80RpX7nF+HnLrLIAfY2+ntf/bR2oTnxG9nCvCMGdefqE8bhsGnEOe04bBpDenTkjvMnNxQz7Mdh0xjbv0tY7i2E7vdEt7O1dmWtHLxEeEwSAgruYgNbaUhW0Rews7sghfdnDWy0cB2ZjgreGfUqP5zUg9mn/YEFZ17F2KwouZDmPjTXSHRDo85vw+uz4w868TkeIy09l1pfgLMnDuWfl0wlNcHN259M4tO3JlBTEYeoMvELJ3qSCyPeHip7N1Vqil0UbAjX+vV57QQDKgsLe2FaCqMyd3FJvwWc3nMF84MqFRYYEnQJAb/K808NIW9rpEaFPzsBaVNBEai+A50bjr9jGR16VmNzWDjiDBQlyLTuK+ibEn3QBmBDeaeoVWdSCqqqM8htFNt2qiZjnevY693Mx/te5787/o1lWRR6Z7Ew/1zm5Z9Az8SOVFpOLszYws2dVtHJ7sGl6AyLK+HZnvPpFZ8c9TiklBTsKac4P/ob1uCcLBb8+UoGdcxqsTBFNy0Gd8xi3h//wOXjRuLQohvAkloPSlOLWc+YLp04pk8PjunTg3+fMpV3Lj2HeIcde73mg9ro4RUojIvwNKQJeoUDabRuKnZWVDFj3eaozkrQNHnm+8WtbuOQ8HstsqgXHb4SIDf34BKrp4zszccL10Xk6VqWxYSB3Zpd76IpIznjiMHkFZSTlugmJz0JAI8/wDMzFmKaFqYlmTqqD7eeczQL1u/k8Y/ms6+smoykOC4/bjS5HVJ49tOFrN8Vve13W1A9FtIXoOktFdQ1vv2hJxdNWw3A9pIUXv9hKDvLUhicO48LT5yEiI80Mlbdu1BzH4IgNs3CptlByYT0j3GJBB79YB7vzVuD3aaiGyGBFd3Q2LMpG8UE4bYTSHQecPdTXTiLPCB1aorc5AysoGBXGjNfH09laTw33Pwl9/VbwjpDxUKg1LsQlhQsDdhIFJL/Z++8w+Oorjb+u1O2qnfJKq5y78YF3Cimg6kBAgQIgZBACAkkgRRISEjjIyQBEgIhBULvvdkGG+Pee7dkyVbv0rYp9/tjV2W1K1vGJthE7/PsY2vmzp07uzNnzj33Pe9RLMGDV55OW7MzaqwSkKoIB5gjBkBGXphJ2T6yBjeh6tF3vFO1mFOwiT1NWdjoHZWA21HlT+STA0OYnrcLXQnfE4atsaJyAP2EBuyPaq8AiYpJox1kd+s2VtT8kib/W1gyHGoQZgWqJpGK5Nz0Us5N75LyKhLA3AqOiVF97thUzm++/ywNNS1IKcnul8pP/nglRUOi67ztqa1nXXlFTGy0HZqiMCo3C6emsru2nmunjOefy1fTfUbj0XUmFvRjd2193H7yU5L59fmdIvJSSh644GyeXrWOep+futY2KiL8W9uv0bYzGXdRa7iasQ2hWheBsqOjlVHRfPhMoc8bQn552Q77gYIuf+fT7QmQUj4GPAYwadKkw/oaxg7M46Lpo3nlk42ETAtVESiKwo8uO5nUxINzBT0uRwf9qx2XzRrHRdNHU1XfQmqiB68rTPM5ZfwQThk/BCkl6/cc4La/vI5lS8zDWLiLBy0ge2RRtsd8n146hj9+cGLkxSvYst/mjbX/5j93XklRdqcnKe02aL4PojKlQgSDFWxZ/jC7g2fz0icbCLUnZ0CnlGU7r1TvstoSMcDBLC96TZCMAc0013t47s+nYwR1pp24nXOLq9hqqDHsWCEg5NfYuS+B5govwaAWc5UCsJ1a1GYlkkSSP64mkmoci+KUKi4ctBpLKqQ5i3h2RwaGrWJJm+KUSt7YO54NdYVMztqDEJKVVQMpaUrnlsHrmVdVyIyMcpyqHbl+icAEHNi2j3rfq3Slm0ksTAl7DZVhjm6hAWmCkh61qaXJz13X/h1fWycVq3xvDT/42mM89dGdOF2drIfFu0t7DDeoimBUbjaqIjjlz0+EOeW21SUzL/zdKIpgQv8cbpoxmWdWb4jpx6VrOHWVx5esZPbgAWQnJXLeo09SeZBKElaLg9ZNaWGLJOFoZrj1Oxbrt8GXlu2wEhgihBhA2OheDnz1aJ7gjktnc97UEXy8YTdOTWPOxOIOT/azQFdV8jNTOv5u8Qd5ceF63l+1jaa2ILVNB6cB9YguspEA7hqr8/7uZoKdDoNzZm7DsgWPzJ9CV4avRKEtYPCnVz/hDzed39mhsR5ELKXIqZuI0Af84VkPISV6Z/t12Mkaos6MzacXAqkqZAxtJXNgM++/OgkjIiN58WlbUIBgDw+otAVrXhpMcq4PK95CGZJ+A+rZ0+YhMcXHyRetYumDQ8gc3czMb26Km7AAoCqSWf3aMwu3MjodmkPpZHn6Mb3fg9y9dD5v7nWwszHsaSqEy+78dc9YFMIJIU+e8C7Dk+ooMwQTE/dQZyRQHsrBRomNwwmotSL0kg5ooBUjtP5RTRe+vQ7LiqXtmSGTpfM3M/uccR3bvU4HmqpidYvTOlSVG086gdVl+1lZWh7l3QfUAK5cH4rTRlqgOGx2pzSDeja/Ovc0fvrWh9i2xLDDkqgBw+DlPavQ0gM8WgZqk5emlnA6+yHxORik80YNO3SjLwJfRs9XSmkKIW4B3idMNfuHlHLz0T7P0IKsDqWyo4lWf5Arf/00lQ0tB/VyhQjHhw+WpqwEJXpbWAdB88uoqU6iN4hlKRimgqpIxg6t4IJTthA0VIoyGthZlRnT38pt3YSslUTiZWjZNjS1OMLT2zhBaqeu8o0rp/LkXxZhm7HHK6rNzG9vZu+WApZtG4rLCpunDG8QRUCWIqm3Jd0LAamazYEtqSiqjVCIqV2puSxOuGQXY7UysgdX4PEESDxPJffcUlRX7Di6c487zqNAqqsOW7ZR1fYxv59+BXMHlfL89sWUtuxma4MTw1bwtZdHsuC6VWfy7Izn2G0pqEKSrrfSZteFVdS6ncO2oWJvEv5BjdiWQNMkTc15ZI98NGYstZVNBANxdCAMi7rq6Cn3mcOHcP+8T2LaKkJwSvFAHl+yMsrwailBPAObOzi40gLbUKhc7eGW+ld49IKv8MaN2Vz7n5epam7FlhJ3/xb0tGBHOXiZEMSd4MC/O4nD8WhVRaAI5aAJFIeCrihcNrHnElBfJL6sYQeklO8A73ze5/k88OKiDVQ3HtzwQtgwnDt1BK8u3tijtq/tFIiWTsPb7jCGEgV33fwxoSaNmgYvIwdVk5/XxPxtgzBMhdrW+OETj6sz80lKCdooUNKQph/R5W4KGhqvLRgB0kaixNSnczmDTJ20DO2qCTz59FpCUYwPSVJ6G8mZLaTnNEGmiV2poFiCNRvzyT95G/00m32Wgk/SYYDNoMKKZ4rxN7ip3ZuEbUafUwJmQGPDBzmkXNpCk9KP73q3o1y5g09Nlfi5fD1/90KAJQMsrvoDr1Zu5pKC63jo5Ku45eM32FC3LeYYn6Xybl0exSnheL0qJAWOBlosF4mqH7XL6a2QyrsPj+XZkkT6D2yiqclJfV0K//nYQ5fCGQAMH1+E2+PA74umummayrCxBVHbMhK8/PHic/j+K+90JN3YUvKHi85GAkrX70BI3ANaOowohPm3irBxZAZZvauGa556iUvGjaTB58cmTBvranjbj9GTQ4QSTKzW3mk3ODWVu886hU0Hqnh78zYMy+4xiQLCDB4pwYrMqnRFQVUUfjv3DBKczh6P+8Igjy7bIUKvXQXsl1Kee7C2X/iC27GGuuY2XluymZLKetbt3k8ojjfYHYoQTB/Zn1c+2dhzIyEIZKio/rAHjAAjQcFyKTy7Ygy/u/QD3A6TeZsH8o0H5qIqEssWBM3Yh0Tz2aj1fmaf83sgbICyMhO54eq7mTXiZxjBemwbdM3mydfHs8CZR9t4m6RtClgSIQVgo2s255+xgNKWKtLGOyle8Q1272kmEDRQdQtVtbjgGwtxuw2Cfp1J6XvYaA9DIvn36xM548RduJwmU50m5aZChaXQUu/itd9NorS0H3a2SlWrC00LoZg2hltQM9NNS7GOkFC1xUXWPT7+7z8L8CrhBABhqr2eBdo2VPuTyPGGq/MaKJT4dvLQznu5bcjttIR6jm0aVvQypyokXiVAk+khSfVj2ioyIFj48Giqtodj69u3puNymZw8Zx+tVY+TkHAOQhvc0cekmUMpHJzFnm2VGJFZkNOlM2JCISPGF0Wdr8kfYOqAApbc/k2Wl5QhJUwdUIBb1/EbRoewOBCmf8Vxz4QCemqQ4AEvO2tqeWrlWgKReL6WFOvFhzsDLSnYK+PbfvjvPlhE0DLR1YP/NjMH92f6wCKcmkZ+SjLryg/gdTq+kNJAh4Wj6/l+F9gKHDLA3Wd8u2B7WTXf+MOLmJZF0LB6XUrIlpKBuRmMKMpm08H0fYXA8ggsT3RkccmuIk67/1rOHrOdtzcMI9STULmUOOpNnK3Q1m3Vu7qmhfsfWs2jSZeRm7qHRG+QTbuyqdNctJ4CUoOm0SauSgWtRYDL5vJTFzC0qCwcrFBDXHzz+yQ33c+GLbspaf07rU0OFr8zltyiWtYtHoq/1Rkx3JKmFhfX/fxCfv7d9xmc00yCX2fDM8W8/vJQ/HlJkCJAEdhuiZnkQq9uofRqL0aiQrtr2TDOha+fRrG3qcPbLFTDnnTXMEbIVNnXmkpBYkOURrEhVZ7fOYXvjvsQUwrKg+kkKH7GenewtupKBiYNZFnlZILdDK0tFQYlRxezFAJUJD7bweqW/qwtKcJ81kXCFrNjJMNH1vGL3y1GCImmrcCsfhzVezEi6ecIIQgGDHSHhm3ZCCGQUlI0JJu7H/5aRzx9w4FK7nr9fUrqGxHA9EH9+c35p5Pq6RR/cus60wYUsjgiKC4t0WOUQFrhHUHTYndtJ7VNmmEPNOYwCdLqHcNURvoNRgx68BBVwZeXlHH/BWeR4g4nj0wfVHTQ9scMjpLxFULkA+cA9wHfP1T7L62Y+mfB3f9+n7ZAqCPZorcLaw5NZfXOcn565WkxVTF6i6Cp8+qakYS610WLQJgSb7mJ4yCls0KGRV2dj027cli6voiWNhe+vE7xHamDv8AmNDrA9JPX0T+30wAJAT57K2+9v4qhQxP49J2RrFk0lF0bCln89lhaGjyYRvtLIUyRaGx2s91p8o8DeUxefCWPtozDn+sNx5bb48si/P9gXgKmW9B1Ti81QShdZXldJ+ukWLfIU20UJKqUGAGV1S8O4o/rTmfR/qEETA1bQkVbMn/deCq7mrKwpKA0kEGj6WFywh68ShCBxYTMXRQl1uBUw16oio1LMfnVyMWMdwXo/tQpAtL1NmxFZUxRDSddNiacF024bM/PfrUEr9fE47FwOCxUJYTZ+goEPwLgoXteZfuGsohEZ7jv0p1VvPVMuBzSrvJqvvbvF9lVW49p2xi2zSe7S7jo8ad5a+M2WroI1vzkjNkdwUgZUrH8WkzcXFoQqopW7GuH0eCMz6IRClaXzDq1lw5Gb6CrKpVNxx6d7FBop5sd6gNkCCFWdfnc2K2rPwI/JN7iSxz0eb4RtPgC7K2Mz5U8FHRNJcHtoDg/kxd+djXX/v45mn0BuoZ/Jw7px6aSyrhZdJ3oyb2RaJHFusN9VIRFlI1RhcXt498ly92MQ42+R2xL8OnyElauLscIdU5LpR3/hSAlLHl3DEt3FpOih8hYFsRIS4y7MiZsEXfBz1YEb24cBIUag7PryU5qY5TDYlDIZsnaTP5x71RCPh3t6/Aqk3h1z0RUYWNFVM7yEur5tHkIfukk31GLQmdmnapIbh37IaGmPD6tKSBFD/CV/B0MSWzElNAoBRXdvOK2Ohetn6Rw5tkncumll7I6byyP/OJ10tK2RwkQ7fcn8Oed41lan0emazE3jM5j8QebMLv9vsGAwWtPLmHrun28XVOKf6g76gVk2jYHmlv4yVsfAIIHLjyL04YNZmBGGtkDbar2KCAkvl2JeIc2oeh2mImgSILVboyGHuKolkLbzmQ8g5sjFUwEbofOr8dewbSzimkJBLGk5M8fL+H5NRs7FNCOBKZlk5/62ZlGxwFqpZSxdbsAIcS5QLWUcrUQYnZvOuszvhF0r/LaFelJHhpa/D16wooQTI8kdRRmpfLOr2/g7eVbWLxpL1mpiXxl5hgG5WXwh5cW8uKi9YcwwHEgCRvfwzsKAG8ZNI3stL/jM0vJcLXGGF4pYcuq/gQDFsGY1OQehmUr5A6uIX99Oo2rXSg2GLFJbBEIsCR0UR/DgsQdKgt8I1i6shjDUjl1+G5+fN7HGKokOKSFa/81j/l/Gkvr/ELKLkkAFSypIrDRFYvLBy6nKLGO1W396e+sQ+02l3MImzNy9nJB7t6o7ZoIhzi6Gl8joLL8saHUrs5g8bZFpNzxJnphK997egpv3Gd2fIkH/F7OXXwhraaOhUK5H27/9B2SxuukrYj97hpqW1ixcDuByZ4ow9sV7bHa2199l4+/+w1SPW6uGjeRPx5YheVXkSGF1o2pqF4LodtYbVpc4fQotDoxNmWRkGlzyvh+XDtkJoMSw+I2ia6w0b555lQ+3LaLpkAwbqp+b+HWNa6ePP6/V/TyaOLohB1OAs4XQpwNuIAkIcR/pJRX9XRAn/GNwO3UmTKskOXb9kWxG5y6xsUzxrBsaykb91TE/E4OTeWRWy+KSkF2OcLHXNylqjDA9y+ZRVqim7+8ubRHBoWmCGxJp8KZBL3FRotfHOCQ0PyQthrqJ4W9n2HJFbji6B9YpkL57uw4PcSHUGwy8hoYPqaMQUMO8OzNs2iu9KI1BzBT3LFebkTMW9qyY5+nREFrU7CloC2iHTB/60D0lGYmT1uP4rZwAnNuX0f9HQkUqQdoyXBR2ZZMYWI9ZxZtJNfbBMAkb0lHiaOuMAmnOMezeVKqGLaCbQkUC5Y9VcyeT3MZO3c7067ZjuGwMEzwtx5g5DdUQgK8wF93j6XN0rC6RO38lklwupuUNQGULl+vEOHwlRUycdUY+PMcyB5q+LW3n7d9F5eMG8XLH5diB7qGesBq632k0Ebi6N9CUDN45ZMQL75XRprHww9OnskFY0YghCDd6+Htb32NF9Zs4rnVG9jf2NTL2sadSHG7uHXWNL46aWzc/U3+AC+u28SG8kqGZKVz2YTRZCUeIwtwR4ntIKW8C7gLIOL53nEwwwt9xjcKv/jaGXzjDy9Q3dgayYmQjB/cj6+fcQJFWals2FMRc8yPLjuZUf17L5U3b+2uHg2vIiA3PRm9xWJfdSNCgNYmUYM9v5q77unJM07YB0WhFgbNqGYAbWFj0y2JwTJV2pp6zgq0RZgA5nQaSFvgSg2wb7KDWxdeSaqzjbGXlNP8sBe9KYh0qFgeR9idjriiQgpyFkjqJkEwXaIIiatBiyHzh0ydj9aMZPK0zowtRbM57ycrSMrxx+X6AghbokbuZn+Tg8ptKbiTQ2QPbaTe1shTol84hi1Y4cvg7cZCapYm07rci7peRXeaTLtmO7qr04OVmDg8kjdX53LZCQdYWpeHKWO9TqdDg1wn6gEDy7LRHSqaQ8MwLMygSdKeAE0jPFiKjBuCCV+/RcAw2Xigiurm1l5WWomsrHVPjBA2QR8EK1IiUUhBXUuAn7+zgJrWNm48aTIASS4X3zhxEheNHcG5f3uKep+/I2bdG4zMyeLKSHn67tjf2MzFTzyDP2QQME0+2rmHfy5bwzPXfIVhObH89S8EX1ae7/GEtCQPL99zDat3lrO/tplhBZkdyRvPfrQ27jGPv7OcC04adchqq7YtuefJ99la2rMWxMiiXB646Twef+oTqrfXxylrGEa79IIEjGSBnayRH3JRVxl/saO4fzV//NE7aIqNqdp8EtSj2AS2DaGgxt5tuTHHulwaliVpywuRNbyKk7J3sW7jIEq358EHAtcgqBmYxEJPMemjQgjpJJTqQAnYOKtDKF0Yq3qrIOdjkKrNTfe9xAOrrojL6Q2EomlQqiZJzvEfMuDd6HfzyvsnULo1k+T9QdwHLBLSgiTfm01m4TMowkTVJDZOakyFP5ZNoNl0YQ8SKAMlzqsMzlTWxKV1ISyyRqp8/5a5iHMITyy7wRKS3/35OhY/v5ayPdWMGF/EGZdM5uvn/B8AiiHp914D9WO9+PqFp/22M9qTtaREVRTq2nwoh1JuUmz6DbdocTWGozptGv7SBGxf+PuTgNHo7DC87QiYJg8vWoYqFAZnpTN9YBGqopDm9fDaDVdy8wtvsOFA7zVLluzdh2nbaEqsV/67eYto8gc6QnYhyyJkWfz07Q956fqjmuz6mSA4+kkWUsqPgY8P1a7P+HaDEIJJxQVMKg4bTF8ghNups3N/bdz21U2tBAwTt+PgvMkP1+xgwdpdPb5kE91O/n7HpeiqyrWXTuWD9zbGKLO1G13TAUaigukE1YDh6em4DYWa5jYI2ChRjrXkF9+aH5anBHRgosNkTUAnEGFWNNYk8urjs5F29MPjcup89ZIpnDxzKIu3fsgLbzSyZM1Y6muT0CJ1wlLXg7MWGsZpBLNc4QU+IbASFHweFb3VxtXQTVjbUti1qj+ZaY1U10WrpQlsBhZ2Uy7rSQCjCzbV9eOJrbOwEhTkFKg1PSTuCtHvnVZ+fUMrefmncNZ5u8nJ9bNhUw7zTkqm2XJho4AWThAJoLHIVcwQR3Xcc2SkDeCRN37N/F07uXXZ2/i7iIs7FJXpuUWMG1bEuHuiKVZZc/pT8d4eFAs0v03mshZsvZX9Z6Vhx1kve3b1Bv511cUdGhw9IXFoM60uo0MCUvWaJAxromVjKtJQEArYwfjpxEHT4sGPPsWhqWQmeHnm2stI93poCxkocYzowSChR0/5k90lcddKNldUEzRNnHEqSf/X0ef5HjuQUvLcx+t47K1ltAaCJLqduB1ajGg7gNuhx72BgobJwvW7Wbm9DF/QYFNJBf4eqro6NJUfXn4y7yzfFlZkGz2Qn9xxDr998F3siG+oCAWHQ8XvNxAhG7Uu4rsqsFXUYDkFpCmgKOitNs768P70ZB8pSWGxHcsWrNiQz9L1Bby9eChpWc0YIY2musSOsaQlt3H1xSsZP66MRlNBuhu465fLqa8V+APpKKoZZi5EoFjg2Q+BNCXsYXWdASgCI1HB0dT9hWCz9L3RzLlmCc+/exq2rWBLBaHYqNjMmba687eww3qyPVlfKSFkKKytKUIoEhmhhkkHtAx20DzISdJOg/1lCfz9L5GYpCppGiOxu/GtJQr7fan89eqzkM0KBeNqmPXtjSTn+FGEi4HJX0dRFOYUD+VeEeKXKxZg2uFaabPzB/CHmefEHeO3v3MW3/E/i2dDM6rfxp/loHG0FzMh/oJZRVML6V4PX586kX+vWBM3o8zhtVA8ZhRZVAiQQuLI9hGq9uAZ3ESgLAGrJf55DNvGCNkEG5u55535fO/kk7j0iWcOmsEWD7qqEDTD2iDdvV+XpuGLc9+rQvSaR/+54kusanZc4sVFG3jotcUdWg2NbYFwTSuiX5Iuh8aVp06ImR5uL6vmm398iVZ/6JBcYU1VuHD6aH71n3nhfqTk9y98xO2XzuL1Z29h9dpSVFUwcVx/2nxBnnjqExZ9uoPWtiBSgj9NDRveLmMwvApKCPRWG0sKFAVafQ6+8+tzqapLwB/UAUFtRTQ1we0M8eSvX0LXLBy6Tb4EUz7HV76ZzEP3XoCUOlYPCSB6i4hJXYbwF6Z5NOxWE4SNokjSMpvJElV8dNdYclKrEeMFMlklP78aY69kzb8GMva8vTi8BimKjaN/a7yi6uEYpwRNlVw+bDmXyFU8uO70jhpt0hEuspm0s9vDb4mYlOeOXi0wQhqKCftWZ/L8d2dyxUMLKV00lTnfm0Rl24fsbnyCdGct/54zCZd2FTmeQaS64vNtASYX5XP1ZdN5rN9KVDWc4u2JpOG2BGOLUQ7LDguO33byiYzKy+bJFWupa/MhgNL6RlRVYeKQTPborfisblU7FNDTgjhzAgQPuHHm+vC16gcVyjFtm4927AEZLtDZ0x2rCBH3fnaqGlP+71E0ReHS8aP44ZyZHXrBl44fxb+Wr41iUuiqwpyhg9EPwjD6r+ILElPvM75x8Pg7y2JEcrrfc5oquHz2OG48e2rUdtuWfPcvr9Ps67nCa1c4HRqvfboxhn72wIsLmTy0iJkndZacD4ZMMjOSUFUlvCAowPSIWF6tIgglKdiapMrysm1vBh8sGUx5VTKm1fMNb5gqbqdBu/OiirBjNTGjhRGT97B+cfy6eAiQTjuixhjt+ei6yq9+dC7jhufznR88jTNjOWJ/kL1LslFUycU/+5SUfq3oETEdacPqlwbx5s8nc+ZPV5M/ugaPkDR10Y6I0oJTwplpKia2NLlx5Mf8YsUFdOpkxh+ye6eFb6KC7DpeWyJrFQ6c6qatv4YSgtS1Af759VNxu1x8NOt3WFmvYth+QpaG33wHXV1I/8SXgZ6NL8AtM6dx6bjRLCspI8HpYMagIt7ctI1fvvdRlKcZlvkUzN++m1OKBzJn2GDmDBsc019paw1XLdkRs13aYNS6EQ4LKQX+0gTUxFA4ndgW9DyDkKwpP9Cj4U1yOrn91Ok8t3oDu2rrkVKGP0BrKPwCMG2bF9duoi0U4jfnnxG57qlsraphRUk5qqJgS8ngjDR+cc7Byy39N9Hn+R4jkFJS1+w7ZDuHpnHTudNivN5tZVW0+g9teB2aiqIIzpsygteWbIrZb9mSD1dv5/TRg/n1H95h+84qLMtGUcILZHBw1T+pgLMxfFfd++gp+AP6QQ0vgMfVaXjbIQRk6TZFQyviGl+JRDokJ83YxOp5YzHMaGM2vDCLkyaGywedPHM4T/6jBnVfOLW2eHYZKXltHYYXwsZ0wiW7yRtZR1OFl73bU5kwqpZ8VXLACgtEptiwr9pDQk50fTVFQIrTR6a7hRp/EiIkSd4cDHOJZOe4FKdFYVodJWoqQUvDRkG1LQy/Sn0wEXtIJDXaCbXT3AQzVIo+bMaf/AYLSofw3r7RBC0djxZk7oD15HoeZ3TmPVFjqW5p5Z0tO2gLhpgxuD9j8nLITkpg7pjhHW0uHjeKJJeLPy9cyp7acKFWW0pWlJazrryCEwcU8LcrLoz7WxUlZDIlfTCLa3Zg0/nikrYgVO1GmgLhDaHpoPg8OCJvUk1R8BkhrC4GRxGCKf0LaPD5qWuLvfcdqsq8W79OssvFZRNGs6Wymv2NzTy1ch0rSsuj2gZMk7c3b+fOObNIdrtwaBqPX3EhO6tr2V5dS1FaCqNysw+5QP1fxRdkfPvSi7tBCEFe+qFFn0OmxQerYz2PkGkd9MbSNZWLpo/m5rkn8ca9X6cgMyVuySPbluzcW81VNz7Blm0VHTqxXRORhA0iXnhOyrB6GmE/p67Riy9wKCEVybmztsbdY0loqu2MCzvdQXSHgaqZZBfU8+0fvcrE5DKSW3wIw45oF0sSRZBrL1nDispvUtL0LHPPHY6z3t/hew2YXInujlM3T0DO8EYGT6+krjSRv/3kRMqCKmmKRK1yc9+F5yB70PtFClTLRhiSjMY2hn2lDPfgIMJho7gtdK/BzFs3Mm32Dk7K3MWAxDryPfVMkGXwkY5UokM4Uhe0FDvwDjVYcGAYb5eMxW86saVCq+HmxV2TeHtvSdQQ5m3bxZyH/8kD8xfz8KJlXP3ki9z1xvtxF6XmDBvML8+dTHFOJSmepo7tIcvi410lTPr9X7jiX8/z8KJlNPiiXza/HHs5drUX2xBIC8wmB61bUiMlfwSyzYnRqpHmdnP9tEn846qLeefb15CZmIBHD98PHl0nxe3i3nNO46bpk3F3K5nl1FTOHTWUZJcr8tsIRuZmc/rwIVT2UJlCU1Squgm2D8nK4NxRwxidl3PsGd7efo4y+jzfOLjtohnc/a/3CRxk4cG0bH71zDx2H6jjuxfN6Ng+siinRy4qQH5GMj+9srPw4ozRA/jza7G6rhLJBxt2IvI19CYbR0v8DDdXvYU/U41wZgTYEiQ4m2ILaB6cNCAozGvEtAVaF9F1S0JpSGXzsoGRLTYDRuxn6pzNuBOCJKX68LU6+eev5xAKOvBiRYLjEqEIVq/byvBJJdQHVuPWnkV1jiWIA2HatNa5sC1QujnkIhJJUVwWw07Zz/aP+rHu7f6MnVtCqwpCs/GkBiKLcdHH6orJLGM7a98ZxMh7yrGReEdVEdqvk2D4mT5me0REx6afsxFHwOLfO05ii6LhLbSRcd5RwpQ0aF42lI8gZEc3CNkab5bkc/vEVnQ1AV/I4I7X3o0qZhkwTN7bspMzRxQza/CAju1SSrbVP8D+4H+4arrCx1tGMn/LGCy787FsCQZZU3aAzRVVPLNqPa/ecCXZkQSFP320lKZSF5TG4b11QUVLK08sXcW5o4axv6mZDK+X6pY2XJrG9EFF/Pr800l0OilITaaiuYU/L1yKIPwCyElMYE3ZAb7xzKt886QTOKEov6Pf0Xk5lDc2x8SBLdsmP+X4STP+osIOfZ5vHJw2oZjffONsBuelo2tKj8Y0ZFg8//E6tu7r5ETqmsrPrpwTt72iwP03Rkt85mem8I2zpuLStXC8L7JdSiKVJAShFIVgSg8/lS1x1plorTZKwEZvsfFWmCifIVP0oadPYve+NAxbYMiw4W2wddauHkhLQwJCSHRNUrI1h/ScJhJTwlPUzSsGYEdoau28SYFA2gpvP3USG5YOIhQK8c8HB9Gc4iWU7iaYncD896fSUn/wWKmqWxRNrGHLh4XYFpStzaDf6PqOBTMjoHZ+X4S/4xOn7uTCG1fQtfqEo1+IE8fsRFdsNGFH9A4kY9PLOCH7ALeOn85Z08aixHkQpSr4+tfOw29Gp87meBq5Y/w73DnxNT7cN5XlFd9gackG1DhULZ9h8PqG6KLd+1peprT5OYQwcTtCLNs9NMrwdkXQtGj0+fjVex9hWBYh0+TplesP+t1FHW+Y/GHBYq79z8tsqqjClpKAafLJ7hIeWdhZ2PK6qRNZdvtN/PmSc3GqKuWNzZTUN/LJ7hK+8eyrvLmpUx/55hlTupQ2CsOta3x92kQ8h6BeHlP4gjzfPuPbA2aNGcQLP/sayx/6LjeeMxX1IBlJ89fuitrW1OaPSjcWpsRZY+IpN/njnz9g+85o2cnrz5rMv354OVfPmUhBVkrsSSKUrXgxXsujEMzQcNXbeKssXI02ymcsONDmd3DTvRdwyy/n8udnptPo+CsfL/s1/3rqRIIhHSkFhqlihBxsW1PQ8VJqafB2UTzrNj5TZeFrE1j63mjKdmWGjbSihK9J6Dz414v52dIL+WjvUIxg7O0obYEZUpE2hNp0lj89FDOoojokQoGWmrD33PUFqTttCobWka03dmxLVv2ocfJInZrJKdpOxvozuHHclLgaH263g/NPmUCmuzMl1q2FuH38e/RPqkWNWOy6wHJC2p2IyJtAKhJbk8j2mmtd3PRPa+ezovp32F1q7vUoJdr+XUr4cNsuTvzD3/jHstWHVVnCJpwM0Z0u6TdMnlm9ntYurAunpvHqhi34DLNDFB3CHvx9732EFYl9DcpM55lrv8JJAwrxOnQKUpK56/TZ3DprWq/HdSxA2L37HG30hR16gW+eMw2P08Ejr38aQ3wXIkwX64otpdUdN7kSlHiqOkVZ1q8v4zs/fIZf330Rk8b3B8LTz7Z6P8l+hZbWnhfrbC2cVNF5cpCKQAl1Wf0/yHX0LtIm2FGawY7SDOYtXk8wZCK7zcUtU+PTd8YzakopAP0G1bDuUwMjGN/bCfodrF8yJMZACwSuakFZWyIv7z6B5e8Vc/MlH5CY2fkdNAQ8fBAaQeOFLlZ8fCnKqRJHo8WIpj0Up1SRVtAW95yKIslX6yndmoWFQtLgNhraPHh0A68z2K1tgHdX/4ITkxKR9I/py7ZtXtq1ibtOmM1dn75PwDKZkr0bTbG6ZQlLbNlAXuZeNgZzkE7Z4TV5WhxcMGYEAFua1vFq+ZOclBhNgRver5x1JQOiGRjdIIHmQJAHP1rSY5ue0BONTFNU9je2MDS7M+NjRWl5XFqZ3zSpaG7pCCsMz8niH1ddfNhjOWbwOXm1vUGf8e0lzpk8nL+88WnMdk1VOX1icdS2gblpuBzhmm6OBotgshIWEReghCRWvcUf//Ih/3n8BkzT4q5fvMLGzeUEgga+DBXccehjEBNKUBSB4RW4q62jWGO2E4Fgz7GLlgZvx/+HjC4jLbOZqvI04pl4VbOxDibgLcHWFcoGp1C5NwtnQjjDrc1ycN/y8wkO1MKLYDqQKAnka/x146mcUrCZ8wfEn3pX7UrizZ9NJRTSsG1BiejH27MSCGQ6GJBZxVUnfYzuNKkKJKPmWozP38g2XwaqyMMgOrwQsC3eLtnOc2ddgUtVuXf5k+R5o4Xd22HYBinZjciqbDpWPIFgikFSUrjfD6teo3m7oNTOZPAJFR0x7/PGr2RnRR5BU8ewjv6jKaWM4aoDmLZFXnJi1Lb2uHB32LbsEEv/MqBn8t3nj76wQy+RluThZ1fOwamruBzhktwOXeXb501jYG50CfHzpo3EoakIwEwIhwxQwgbVdir4slVKqhrYX9XIsy+tYP3GffgDBlKCo8mKfTrssJ5v1+0C+NEdZ+H1OA4qvNMbqN11GHuB1Ozmjv8rquSyWz8gt6iG7oPXHQYnnLqZIaPL6T6jl4CRRMcil7AlLy6dxENvns7Db53OH/5zNoaiRovQRLJd0hJamZRVEld4Rkow/Br+JmdYjjGooAYkmfNbkQHBnuocXt05mU9bitllZLMjlMOn/mIsRfRYP660uZGAaXBW/2H8/qRtTM/bFbedlIJyX2rME20jeWzzcgAO7G6g/NfZLHl0BKE2HTMU/v6T3W38+Pw3ue7EQmYMKiIzwYt2KH2HbshNSuxIcOiOeIbXpWlcPHZUh8RkO2486YRY5oOqctrQQcdmLbYjQR/b4djH2VOGM2V4IR+t341l2cwcM5DctE5aWmV9C1v2VZGdksA/7riMu//9PltKKmO9WAGhZIWvXv94uJhmFwuihsJl5QOpatgoSdCbbZxN0WwHCfgag7x09zVcetVfD3pzCBGbJNIV3cudHwq6rnDahVtQhBNbBgkFNYJ+J0ZI44yvLuGTNyYQ9DtQNZsTTt3MSWdtwNfqomRbHiF/IsGghR1R9qqd3NmvrQvKxySAjMRW04mr/qUpFmNyysjyNMd8te3XmTO0MXbgUuItDaJNMcnq1xjWdeiCCpmKwCY2gCOpDbTxg8Xv8n/TT6TV2Bv3ezEthfKmNPY0Z8a4NRJYUbMRnzmHxtfTkYaPlmoPT39rNuMu3EO/0XU0VXq49Jz7uHjYCR3HrSgp42tPvXTIZ18RgkvGjeKX557Gfe9/zHOrN0TVgYtneAEKUpP56ZmzY7afNaKYsoZG/vLJclShELIsZgzuz33nnX6IkRx/6EuyOE6QnuTlkm46vbYtuesf7zB/TZj3qwiFvIwkvn/xLH742FtRDwEQ9oAdCthm/BhcQJJQEb0vnv+zYs0eLp47kcH9M9m9t6bHMR+GOmCv8JMfnMtJ066nvOU1Gn17+PezNWxaXkjxuH0Mn1jK2Gm7CQZ0HE6zQ7rSmxTgGz97jS3LR1Nbfi4ftZTS1B/s9hmsJcMGqz2Pu3P0dL96KRXSXK1IKWKeHCFgV2MW7+4ejZEo0Fs69wsL1KBNv/waFDX2hWPaKqleHxXNXT07SYq7jdagm/dLd3LzmBaEUMNl5qPGBPvrM3h0/pkQRxZZETZpCU0sqnkPs8wNMszZ9TW4WPKPcCzY6VU594Q86KK0mOR2oQgRtfAVDw5N5dIJowC4ddY0Pt1TSmVzC20hA7euY1hW3GoV+xoaaQmG4oYSbjxpMledMJ7S+gYyE7xkJHhj2nwp0Ec1Oz4hpeSGP7zAh6t3hEXQZTjNcl91Iw+9thire+Gt8EEooUN7m4eKR+VkpwBw9TUnhbs9/OF/Jjz8twUE/W4GplzHhLxfMnv0jaiKi6DPGRYqUcDlMbCAYKTmGoDDZTJm5lqGTnyWc88dFza8kYQM1HBYxqWGGJhUTYYrPoFfYJPk8WGqGkoclyVkqWyuz2Nrcx57r06iK3NLquDPdiAUGZc+aEolbqw9RfMzrd8uEhwWrUa0loJtwb41mWz9sJDNG4owTR1PyEQVXb1OG1216J9RyYamlQwZVoCIV1LJFOT0i9bbWFFa3qMAjaYoODUVp6Zyw4mTGJPXWaXi9Ruv4rfnn8E3TzqBn5wxq4MbHK+Pmm4JEV3hcegMz8nq0fCGTJOGw9T/PaYg+9gOxx1W7SjjX++vYsf+Gmqb4q+4766oi6+ZLcHRFPtrHs7tK4Tg8osnU1JZz8/+/BbxhQM/H9TWtfL0C8u46euzASgqSCcl2cPerblYlkpE5IHV1f2ZkFUa9R0oAnIG7qX8/T2QSJSxO6NwA2cVbcSUCpqwKW1J5++bZ2LYGpZUMKVCZkILE4tKMaRGSSCDIlctWsQIG7aCz3TwyYGhYY60Q9I8zEHKphC2Cv5cB3YuNDe6yckVqN2y5BQhqWnpXHjKcLVwy5h5JDn8CCG5uP8qvNq3qI28UJur3LzyoxMJtOhIW2CZGnkFLQTOcJGdv4/dBzIxhEZ2YhPDBlbg1Cy8aiJnf3MWn3y4MVzVIwJbFQyZOZDElGhB+xS3C11TMbq9rHVF4ZTiQQzNzsDrcFCclY5l2x0cY11VOX34EE4fPgSA5SXlVDS3xDAYbCk/U921oGly77sf8cbGrUgk6R4PPz/7VE4uHnjog481HIX3hhDCBSwCnITt6ktSynsOdkyf8f0MeGPpZn773IIY8Z14cOhaZzspUUISV72N2sOh3Q2oBOxsHb3GxLYj8pKqwmUXncADD73P1r1ViAbzczK8PZPXFizcRlKim0+W7mDbjspIirTCc3+ew1dunk+L4iTBEYqpFQdgoVBRuRFX8kACdthDHJuxjzOLNuJQLRyR5IgBSbVcN3wx2Z5GbKlSYSax30zvMNi7gtmEpEqhow5d2JS3pvLUthPxmRGhcodCYICCIxQkMFwjZ0Y1Y7ObQMjw+icCiURFxZKSHRWZmB2axpLvjP2QdGdrlN7F3sa/IaUNCrz7m4m01rqidJDdZUGmlw1kzT/rKRA+pBV+UbaclUDSV/3MyjqL2kaL6tPSSFjeiLPexHYImordfJjdTKM/gK4qHGhsZkVpefzy74CqCBJdDh5dvAI9smCa4HTy5NWX0D89Nab9zTOnMm/7rigRH7eucdP0Kbj1w0+IuPP195m/Y3dHSK2ypZXbXnmbJ6++hLH9YkX5j2UcpZhvEDhFStkqhNCBxUKId6WUy3o6oM/4HiYMy+L/XlzYK8ML0fFWb7nZTde2S7ueOhDhmPJ13zmZgUnJmKbFe/M388yLy7s2+a+jtr6Ffz39KcGQCUiEkEw5fSMFg6tZ+OY49lmZDD1lF0ZqBXq3ixaKpKE2kcAgC0UJX/vcAWtiqFuaYlOcWtnhOSfZPg7UpGFoCpoqSVXbGOKuQshwpeL8hHpuH/8+v1l9Dg3BBJCShuFOpl5ajUOLpYUpKAxKGEZwXyJvvVnHnhEeFEdY3KYosZ5EPRAjNCRFWLy8rd5J3d6kGAF6admsfndzOB4d+WUk0Ph+EqedNpVRYyfw80/n05Kq0HxmtJC8W1W48l/Ps7u2vuO159BUpIREpyPitYY1c786aQz/Wr62ozIEhHm8Nz3/Ou9+65oY/YTS+gYsu5NqJoCsxASumzL+YD9zXNS1+Zi/fTfBbmsZQcPkb4tX8pfLzj/sPr9QHAXjK8Nxl/b4jR75HLTnI4r5CiEuFUJsFkLYQohJ3fbdJYTYJYTYLoQ440jOcyyhvKaps7jlITB+UC7DC7M6PJOefgoJ9JBVCoCiKIwdksf0aUMwLZulK3ZH7e8hsnFQ9EbbJBxTjb3WdvZEsOMFJJBSYePSIQwYVsGcS1cybfImFu0fgdXNOBmWwv62FHYlpEFEf72fKsl2N8ecJzyGyPVIEIZgyYIhbK3IpbbVw3DXATQhOzLMHKqNWw9y3oB1kQMEoLB8z8C4i44WFntr9/HBd6vQFhioQbAjsoseLRiXdtb+vZkhJSLyHou44c+QQtunSZFriv/lBwyzw/BC+DcMmlaHgX340vN44soLWXL7N1lddgC/0W3RD6hsbmF3bT0tgSDNgXD2nGFZ3PHqe4QsK6rv6pZWXlm/hbZQiNrWtl7HbSuaW9C1WDqbBErqG3rVx7EEIXv3ATKEEKu6fG6M6kcIVQixDqgGPpRSLo89WyeO1PPdBFwE/K3bIEYAlwMjgTxgnhCiWEr5GRNfjx2kJLh7LIDZFfmZyfzx5gvDTIgn3mbNzv3gsaAt/rHBVAV3rR3Xag4dnsuYAeGp3AuvrOzVOAWQmZFAa1uIYNCIUU7r/pzFkKsEpKb4mTF+L69/NDLSXqCqCrqmxE3ACAV0GusSSM1sZfjgfbyyegZ/Wn86Vw1dQo6nCYlgQ10Bz+yYRsrEBppC4elxfsZuLARaD68M2wZfg5NX75pK/k315OU1omHg0UIxbVUBI9P2owgbm7CBaA64O21xNwRFK9jpndcuASHY25wZNx25vZ+kbD/u5BAt1b17hKQEK6LjeN7oYbyyfnNMxYiDmT5VKFQ0t3LxuJHUtfnY19AYt51A8P1X3mFPxIgPz87kuqkT4merGSYPfvQp932wMOIJe7nvvNOZ2r/goNfSPy0lbmqzKgTjjrOQA/H9i55QK6Wc1NPOiH0bJ4RIAV4VQoySUsbqxUZwRMZXSrkViCcRNxd4TkoZBPYKIXYBk4GlR3K+LxKGZbFowx72VtYzKC+dXfvrom9AGS6pk+J0cP15U7jijM7f6C+3Xkxdcxt79tXy45++RChktR8S7tsrsDwqwRRwNtioqugwljNOH87d3z4LIQQ+f4jmlk4tgEOhodGHafbuzmqfjkoBqGDrMPSKySQ3zuErFxmkJHtISnQxang+9/7ujbjUNttWcLjCBqWsLY3mUJDaQDr3rTofp2pg2QqmVNGEycT8EuaVeQlYDnTDxjYEOGNfEC01Tj7522j2Ls8mZU4z/Qobw9IQ8etmAJCgB7lk8ErW1RaxozEH01YImDoeRyw9zKhRQUJLsY6t0+FqBywHr+8Zz9yBa9EVCyHCC3qGpeJQDDQVTv/BWl7/2RQsUyDNg2slu9wOZp8zFoDx+XlcPXk8/16+FlvaqELBsMP8YiuOvCiEVe4s2+bTPaXc/MIbGD04AH7DYEd1bce9tamiirvfmd+jV9sU6Ey1Lm9s5qbnXuPVG65iQJy4cTsSnE6umzqRfy/vLHEkAJeucdP0yT0edyyiXQjqaEJK2SiE+Ag4k7CDGhefV8y3H9A10Fwe2RaDiOt+I0BhYeHnNJwjQ11zG9f+/jkaWv34Q0ZYgUwROISKtCWGaeFotHG22JjC4MnHFzN73BBysztXkdOTvKSP8vLcP77J4/9exIJPtuE3TIIpCmaCiqYqJBd4+dmts/nTw/OoqWtFEYIlH25j7sJdBIJhw3E4xQ17a3jbIRVoGgZGKpge+PSJLaxTNEKGhZQwcngep58yiksvmMQf/zKvY0zhcVn0G1iN6jXZ1JLH4ppiUrwBmnwQtHSCVueijiIkEzJL2deSzobaQirfzUcZHuvRG5bCY/tOpjo/GXeyQd6lPpTIHWuhUm0kkqm3oHZ5eiwpUJDM6reDqTl7KGnJ4JENp7KhvIBJ/feiimiamZ5tknJGI7XNOUhHtDn/aP8IyltTOTV/G24tyNraIlZUDcClmnx/wnvkjKjnikc/ZsUzo9nxYU6PBk53qEw9ZThjpwwM63iEDL538klcMGYEi3btxalpZCZ4+OHr78etdwZhcf0TBxZy/qNPxa2xpghQFQVFCIJd9EckYflTp6aBEb/vrgiZFk8uX8s9Z59y0Ha3zT6R/OQkHl+6igafn4kF/bjj1OkUpqUc8hzHHI4O2yETMCKG1w3MAX53sGMOaXyFEPOAnDi7fiKlfP0zjbQLpJSPAY8BTJo06ZgkC/7uuY+obGjp8Er8IRNNVZgypIBNn+zF8lsdb08pIRQ0ee6lFXzv5k5pyfYHs7q2hcVLd6EKBbemoTZYJCd5uHjuRE4cUshN330Sw4gIp0sJEvyBzofmcLPRDge2C5rDfH/y3gMRlPjoPPeGTeV85Zq/8o9HrsU7wot/XSNCSjSHRVpWEzOuW80nzUOxpMKAzDry0xrQbItPdw2mxXCHJSkVm6+PWESy049hqGhtENjv4ePXxjNr7loU1UYIiWmorNswiD1tWTBA0oqD7nqPm335jPeWkKz5saVAEZIDoRQKnOG4o1M1EUgKE+rY25zF1opcRuYe6DC+QoDQIetrjfg2adT7+2F3M8C7m7LZ2ZQDCLx6gMnZe0l2+FhQPpwxueVYSf24687/44aPH8ToYRFWVRWWzNvMjZc/xJbxOo1WCJeu8fWpE/nWjCkoQiClpDhzFVuraqKMJ4RVxn5w6nTmfbwJvy8IeuwLOC85iTnDhvDUijUx+wKmyXmjhvHOlu209WDc22FJyd66+oO2gfBs99IJo7l0wuhDtj3WIXoZ6z4EcoF/CyFUwmtpL0gp3zrYAYc0vlLK0w7VJg72A10DR/mRbccdpJR8vGF3zHTQtGxWbdxHKhpt3ULZpmWzZXtYHMbnD/HI4wv4YMEWDMNCUUSMAQ0caGNcXg4vvLyyw/D2BkKEa8AdTACnN7AjoYbaKSAMcNYKMGW83DIciWXc+cDdpOb6aRicROOadAoDrVz07fmstAdi06l/rKs2thDcMH4h/RyNWFJBFRa1ZhJb/XlkJLbRqLeASGD1xyMo2ZbHiEl7UXWLHWuLKGnIhNNheGI93xuymrGp1TRKjQ9a89gVSsREZWXbILxKALdi0Gy58CohCpwN2BL+uWUGG+vyMSKrmSU1mWQntpCVFJ3AIQQUDK1l54Zs/JYeDhwDCnakbpygf1INt475EEVIHKpFwNRATeXk/N+T6khjwNAcdm3eH7cqScAfNnhlmypQax2Ys1NoDYZ4fMlKJJJbZk5DCMG/rr6ERxYt47UNWwiYFoUpyQx2JFL7QSmvvPgqAcvCPdFL24BYDeTBGenMHFTE82s2YHYzsB6HzuzigQgBL6ztcRYMhCtXdBVM745dNXUsLy0n1e3ilOJBuPTjnDAlOVpshw3AYVFHPq9v7g3gGSHEHwgvuA0BVnxO5/rCYOsCI94UUBEU5odpRD+6+yW27qjAiBTItKzYXzoYMnnz3XWs31Qes+9gUFUl7sN+uJAqVM0CvVkhZW9YfS2QGVZRc1e10+MknsQA9VVJVJXp6A4Dh24x+tIdLGorpnz7WUwbvLuDedAORYFKI4VCVwOKtNjQVkCNmYiFSlpmG+OS9rLlvVGAoK4yhU/eity/mk3xuXu4cuxOpqVV0l83SVUlmUCRvov/NPZnQyAcl2yzXbSZThRFUuyuAGBdTREb6/KjKk/YKKwsGcBZozaidBun5oCZI7azaO0I1GQLpMRnhas8g+QbIxbi0jp/a5dmoogWGnzvkeq4lp/88Up+dM1jNDX4QEoC/lDMoqawwV0ZQgnY2C4Fv2Hyj6VruGn6FDRFwa3r3HHqDO44NVwZZcG8DTx4+wuYoc6Xe+aK8IujqwFWTMnF40YydUAhgzLS2FFd2+E9O1SVfslJzB4ygLXlB1APkqqsCoHH4eCKSWNj7xEp+fGbH/LO5u1IJJqioCrz+fdVlzAiNytuf8cLjstKFkKIC4UQ5cA04G0hxPsAUsrNwAvAFuA94ObjlekghGDm6IExYuqaqjB74mAmTxqAwxH9DtN1lSsumcKO3VXs2FXZYXh7gpTg8xtkZiQetF13JHidn0mRrDtUEzKWCVxVCkIKhC3CBSR1wiWKgMSUNgJtDoxQ2JgZIZ2Az4GxKIUkhx8LJcJtjUV7GnCj5ekwvO1wOC3yz98XrskWaSd0iyu++wFzT17GwNQqqiSsDGmUGOFrdSg2cxP3U9mUSH2bh0Crjm+ji/F6CSlaWDNhWdXAmJI/7ahri58q63SbqE0ai2c+y1cLt3V4/f1qGln96BDm/WEs+9ZkdhhVWwbY3/oGAFl5KTzx/h3c88jV3HLPBTGZal2+DNRg5+wmZFm0BWNZG48sWsZ9d78YZXghvKibvrYVEbLAlghTktUoOLl4IMv27uOayeP5yvjRZCV6yUzw8NVJY3nuusvQFIWLxoyIW65dAKkeN+eNHsar37iSNE+sZ/3ulh28u2U7AdMkaFq0hQyaA0Fuev71uEyK4wnHZXqxlPJV4NUe9t0H3Hck/R8ruPPyU9iyr4rmtgC+oIHHqZOc4OaHX5lNgtPBn/46jw8/2oJtS7Kzkvj+LaczeGAW8z7e0qsZjculc/KMoXg9Tu6+7zVChzDWEJ4q33LDKfzxr/OO/AIhojfcXX1NYDsIp+b6nNh2d01IhYqSDMaMK2H3/AHY31IgMfouVbHId4RjiHVGAlac933G+AacGUH0NTq+RjeusU1kF9bj1Dp5xDaww1Tpp9noApLUEJvLCmmzHIBkfL8SdpjZJNslCCEPPpWUxFDPpA0NdQmEbJULF1/AAcODhULmQh+Ja2CbmQ9SsHNxHoOnH+C0762P1JprL2Mkw3zsKYPwtwV54Mcvxj+1ACOx83v0OnTWLNjOgtfXIATMuXASWnEyjy9ZSXZTDzHkgCR9bSu2UyWpweaKq2cy84+PEzTDus6GbfG9k6dz3dQJALQEgoRMk0GZ6fz0zNn88r2P0JSw5CkC/nrZXCb3EGpYsqeUJ1esZUVpedyFvpZgkC2V1YzKjaMmdLzgC3p3HOcBm/8OMpK9vP6L65i3dgcfrNpBeU0TWSkJrNt9gFPGDeaHt53F924+nWDIxOtxdFDv+hdmxF0ga/+tBeB26QwfmsvsGcPQVIWbbziFP/9tXtzwRFeoqsK2nZX88Ltnct8Db2MYVq9DEG6XjmHamF1XxXvQjVU1m6ETS9i3KRcz1kEDQN+t4mgS7H1qIIOu240QEkW3URWbbEcT2Xo4gUITFgqS7qVApYTEAh+njtqMJmxClhI3LVkAlabKJxWDea9yAH5LJT+ljoL0evwhB+/vGk1jfy8F7nr6p9eyrTEPs9sLQwhJekJb2ADbIFSwDZCWYPumAqRTsjeQDAro9RZpq4ORCtHhl4YZ0Nj1SR6jztxHv5F+tMaTueU7D7Fn2wHcHifnXDGVwSP74XDoBPydX5gkHN6pm5DQQWdz6RrDqjX+/MwrHW03rizBUZyMf2SYfqi0xqnuDGRXgRkKcfblk/lb3Tbq/dEUxAc/Wsy8bbtYf6AC07JRFIWzRgzhF2efxunDhrB07z6cmsaJAwvDTIg4+OfS1fxp4ZK4RrcdCuKwyhkdc5BfXNihz/j2Eqqi8Pqnm9m4twJ/yGR3RR3rdh9g2ZRSfvLV09B1FV2PftAHD8yiX0EqJSV1nWwICKcMJygU98vkmoumMn3akI7wwblnjeXhx+ZjHeJ1bJo27364ie9881QK8tN47a21VNe0sHbjPgKBg69oq6rCtMkDWbBoe8e2BCNAq8OBlNHX4HQaXHD1Jyx4eSLrFhdjdakzJhSbwiGV7NsSZhH6D3hI2WjSf1Y5plRJ11vxKsEODzPX0cTOQCxxxpIKdusEahwNNGOQoAbJVRrjihL9asuJLK4ciN8OZ28eaEolLaGNorQ6+qU2sK8+DVUFxQM5yY1UNKZ0MCEQcEL/vVHxXmlDcJ9O2Z9yaD41ASvV6lhlTNhrxPWKzKBK6cp+DBmWwO+uOUCgLZLe2xbkjf8soXhMfsxhAgglqnj6J2HrkJOUwEVFQ3jnZx9EGemAP0RwSx2O3GTqR3vIXNESVZNPc2oUnzoIf66DYSMLGNA/m+Ab+2LGGDQtVpV1rnFbts27m3dQ2+rj31dfwvRBRSzeXcpHO/YwfVBRlEC6LSUPL1zKI58cNEELCK9vHNdeL/R5vsc6lmwpYWNJJf4udCJ/yOCtZVv46ikTGJCTFve4P//2q8y96VFkY/hBtlyCQJqKy+vgvh9fwMuvrOK3D76LP2AwekQ/vnX97B6J9t0RDJlYlo2uqVx75UmkpXr5aNE2fvPgOwQPwoDQNIVPl3VLUW5UcEmTYBLYlooQNppqceGZn6AokpnnrWP/nizqqpKxTQVVt3F5Qgjp7qjNduKZG5hy8hY0PX5mmGrbJNUHqU9xRwyrRCJoC+jsbyynMBmq7QwS1QA5jia6PxWmrbKksn/E8AIIbCnYvD+fgtQGNNUmL6UpvEfAxKJ9NGbWUN2ShEM1yUtpjNF4EArYhgK1KllrGzkwOyEsgSkkuRmNoOnIbiWQVE0wIGMuy/8mCPk3RP8mAYOta0sx47BWPK2SX55+JuNPHAzA04/MJxiIM52wJUnVFrXD3CiWJG19G0pIIjVB67hE5mc04/dbLF5Xi1gn4iU5xYUlJWvLDvDk8jU8sODTDgU0y7b5/QVnckZEAe13Hy7kmVUbDtYVDlVFUQR/uOjsuHHk4wWfR5JFb9FnfHuJJZtL8AfjeZSCVdvLejS+KYlu/v77q7n90TeobW5DCEG6U+c315/DQ3+Zz8o1JYQiBn3D5nJu/8kL5GQlcaCy6aDjEUIwoCidC698pMMIjx7Rj3vuPJ/7772U/7ywLFIXzowi/zudGk6HTmOTP6o/aSg4mi2yZ+2nsSKZ/mlVTBixk4QEP5YtcLhMvvbDdyjfmY2sSKMgy8eo4nO48YdBwAAhmXxqfMMLEAxpvPnhiegFAbxpbZEqEuEstWR3gOSCA1TaKYCgyfJQHsxggKu6I0ChAGMcBlMzKplfXdTtu7Cp93nJSmxBVyy6JkunePykePyEc0hjFZItW7A/KZnKk93kLmrjzOl7eVcZSXpiC4Wza9j3al7MtaiqxlkXnMG9tzzVY6hHUUSclG5J8ejOXKOEZDe6QyPU7UXpcGjkZCXTptu0DPbQNtiDUyoMy89iQ0UVViRc1M5oOBxhJUUR/H7+JzEZcj947T0mFOTh1nWe7VYFozsKU5O5eNxILhgzgpykw1skPhYhjgJj6LOgz/j2EikJbnRViblpVUWQnHDwgoJD+mXw+r3XsbeyHtOyGZyXQUVVY5ThbUfIMBk6JJf6hjYMw8KyJaoqsCyJrqsYhoXDoaFpCqVldR2pygDrN5Vz5z0v8+gfr2bs6ALafEHu+OkL7NxdjaapWKbFrJOKWb5qb9xxSluQM7iW7OG1lC3I598vnYktBTYCM8VmeHEpXzlhKReMKYt4ro9yytQLef+TBBIHNKI7D8Y3FgRDDtKKajHp5imJWKM4welnlNOgWQo0IFUJy0D+etRiLl6TgFCgujmJoKkjEegRRTRNsRniOsD2QL9ufcaew5Zg2Qp76rMIjdVwhEwuGlVCZnoj2/35OJNM8m6r4cCfImWBJGALrvjxNHLy08gpSKNkR1VMZls8rxfCKcZle2oYNjacyTnr7DH884H34nxTgifuvoYlB8qZv2M3yS4Xp+QUcMcr72LpdlyRCpemEbIs7B6KZLYjaFpocbMkJe9u2cHU/gVoikqQ+MbXpWv85vwzmFQYN2H1+MNR4vl+FvQZ317ivGkj+Nf7K+MYX4WZowcd8nghRFShzbLyenRNjTG+pmnT2NTG3/50Dc+/soK9pbWMGJrLGaeOYtnKPezcU8XQITns3lPNwk93RB1rWTZ7Smso2VdLfl4qDzz0Abt2V6NpCkbIZPLEAfzwu2dx+09fYP3GstgxqhLNa7Lu9RG01XmQMvyQCkBrUNm0u4iKukzOveyZyIJYgFu+tocDY5OxUuoJSRUX8Q2wbSuYphqX7RAPxc4W3Aq4uz0ZyXqAmf1302g5UfIlmw/kUdWcTIrbh8AmWfVR6Gyg0kilyeqklDmEk5AMT/HbbWV9m4e1+/oTNHVwQO1EDytCg0jQTYZ5ndSFwDvOz6C/ltG20Q0WpI2F8aMKeOgXr7Fq0Y4Yw+t06SSneampaIzh+RqGRXpWZ82/lLQEZpw5mnmvdWalCSG49d4LSUn1cnbqUIZrSfzqu09zf9XHpBgmCW5B1fRkQmmdNDpNUXjiyot4df0WmvwBspO8vLR2MwEz+rdQhGB4dibbqmJ1OUzbxh8yyEtOxLTjG15FCO6cM+vLY3gj+DxoZL1Bn/HtJXLTkvjtDefwk3+8C4SnkG6nzp++PReX4/C/xsL8dAwz9ibXNIXiwTn0L0znR7edFbVv6JDOxarv/OCZuFNeTVWprWvl/fmbWbx0Z5i2FqGurV5Xyt+f/IRvfG0Gd/zkeYJdvGZFt8mbXYOvyY2v0d1heDsgQW1VafU4mVcygLMHhWPGn7Q1o2eHNSa3B3IZ5SmP0lqQEgJBjefmz8SV68cjgrRJJwefLEvabJVkNTbMowiwhIIeYUOMzDtAcWYlmrDwKCHGessQQIGjniZ/p/ENyXDSQ7Bcp+ovGVgtKq6RAcxRariiBiDdEme/sM9XF6qiPcFCcUkST/CFz6+4qFxqseD1NTHpxELAJdfPYNzUwfz0hn8S7LLwqesqoycNIDM3pWPb6sU7+OT9jdEXKOCZvyxg9jljCfhC/PBrj9HaHGjfhd4qyZ3fyL4L0pG6gqYoTB9UxKTCfh1GUUpJutfLo4uXY9kS07Zxaio3TZ/C7MH9ueJfL2B1M8y6ojJryAASnE4umzCaF9dswt+ljUNV+edVF3/pDC/Q5/keD5g5eiAL7r+JjXsr0DWVkUU5KPFqcdmS/yxYzdPz1tDsCzCyfw63XzKL4YWdq8J5uSlMntifFaujQw8OXeOSuRMPOZaJ44rYtrMiKuwAYBgmgwdmcfevX++itxtGMGTyzryVnHDOi1z8rT3Mf3k8NRWJJCerXHnZyQSG72LFzu1oikL3ZSBBmODvM3R2N6YBuwGN5b5kjEgxyUojhZYGJwVaPRnuVpqCbra15BDQnOSeWIkQRAwv9FQlQ2DjEgaL29K5IOkAji7MBEMKtgaSCXRhZKiKTZ63gYGuGhLVQIfWsCZiPXAhwJFlorglwVKN1k+9DFjVwu7rkjETBDOLd6B0iYhIW3ZERBRUVKFyReGNvPzwmo6U4a5weZxMmjGUYWMLue1XF/GXX72JETSwLJuJ04u543dfiWr/xn+WEuzWj7QltZVNlOysYteW/TG/L4RjlEn7QrQOdpPscvLj02d1u07Bt2dM4Zop49lb10BWgpesLjXcLhk/kpfXbSYQoZC5dI2Lx41kWHa4cuedc2aR6nHzr2VraA4EKc7K4KdnnvzlNLz0LbgdN9A1lQlDes59B/jDywt5ZfHGjmoXa3bu5xt/eJH/3PnVqIW5e+48n8f/tYi33ttAIBhmO3z3W3PIykzqqesOXHjeBF5/Zx3Nlr9DX9jl0rnovPGkJHvw+2NX0RNTWznnmsXU+BsoKDa49q5w6EHg4o29pSxaOgRhpqIbsWZRApYTPLrBwJQGQAXhxcAFXcR39vnSWdk8gP2NafhCTiYU7iU/tbFLmFJ09OgUIYKyk7mgYOMQJiM8+2myNT7xZTDTW4spBaqQ7A0l8ExT/5jrcikGSVo0z7UilBrXvgtdkjS7Bf82F9gCEYK0FQHEXINEV3QfQgE7CHZJEqdOncH0nFPJcuXyXCi+PoIQYEZmGbPPGceMM0ZTtb+BxGRP3Iy35iZf3H4UVdDWEmDnxv2E4tAGhQWq38aSkjbD4Ip/vcAr37iS7KToIplehyMuDeynZ5zMnGFDeGPjVgDOHz2cKV2SLFRF4dszpvLtGVORUvaaTXFcQtKD+v3njz7je5TR4gvw0qINhLqFFIKGyT/eXcEvrzuzY5tD17j5hlO4+YaDy/fFQ3KSmycevpb/PL+UJSt2k5To5isXTuLUWcMBGDE0j01b23mektMvW87oabtQNTtmliUJMCV7De+WhlkE7hwFV2U41Ti8PwIFkhySOYMMcF9MuXI+beafAQj5NfYuL6CuJBUhJAOG1NGQ1UZ2UktcEXMBzPBUMcNbi4JgV8jLhqCbJL2Z7b5c6i0vW6TOgtZccrQAjbaDessZ04+KTabeWQVDSrAQ1JiJcSMbQgGli26wsCCxxGBgXlm0mLyEwG4HwVIHwV1OrLYCsq4PC4Wfct44tm8si/FaAYaO6dSTUjWVvKKM2EEAoZDJwIgYj9kto9G2JUNG9uOvv3oj7rEA/vTwoxswTAzT4v8WfML9F5zVY/uuEEIwtX/BIUXT29t+2dEX8/2SoKymCYemxhhf25Zs2Vd1VM+Vlurl1ptO49abYoXnvvvt07j1B88QMixGnLCDkVP29EgDA/BoQbISm0l0+Wn2ujCr02lf8G5//Fwtgvuv/yqunDsBeHPnfdhYWKZg3asjCbbpYVFgoHJrFt6qNkT/+F7FJUn7mOSu6wgrjHE1M9zVzOKAjs92EpI6AhjjauRETy2qsFnjT2NRWzYGSkd6sEDiFCaWDNPWArbO6raijioW3WEHBC1Lo7UdXEENh1+Cg7CQfFCw/3dZBPY6w5lwluA/y+Yx58KJpKQlcOrcCXz01jq2bywn4Auh6ICQDL3NYqtvLWMcJ/T4Pdu2zYqPt3H/j14Ivyi63CdCETgcGt/6yfk4XTrlJbU99hPI6Hx0LSn5eGd8Bks8hCyLgGGQ6HT+TxjXg6GP5/slQm56UozhhbCh6Mp2OBzYtuTVTzfywsL1+IIGp4wbzNfPnEyyN5bi1hiq4+Xyf7OlZR2j7lZwVBQxPG03joPQwIKWwrLWwRGxcZv68mS2K6nYVrfUXGDh2t1MHhKmSpX5ww987Z40jIDWYXgBpKXga/DQVJFARn5TFD0qWQlxgqcOvctdrwjQJGQr0GK7AMHVKXsY4WzCGSnAmaFVMNbVyB/rhmFH+jPR+LS1GLcSQtoQwEG0y9uZzC1D4NvqpHVldAjAYcG+7xfimd5I1rX11L2cgn+3E4zO6wnZJn/62Svc88jXCPhD5Bams2NnCUkntKCnmyTNbqUtw+Kp0kc4LTCXM3IujDqHry3Io/e9yUdvrY1LRVNUwcyzxnDhNdMpHhUOASQlu6mNE3aQKkgt2mj2lCLcFSHT5NcfLOSV9ZuxbElWopd7zjqF2UOOw3LvRwtSfmFhhyOXxOpDFFIT3Jw+aWiMzqlT17j+rM9WYuXe/3zIAy8tZOf+WvbXNvHcR2u58jdP4+uWHRW0Ajyw/adsbFqNKQ0MGSSQu4ed7rSD3F8qW/39MFDRVRtFATsU32u0bElNUz17mv7J9vo/k+cIkyRbarzY8croSLCbtEgttM4B9NN9mHEU0FQR5vM2+jwkmjYjnY0dhhfAISSZWoBRrsZuRwr8tpMAPbMo0tUWxrj34fxEomo2Qu0cU8AXwgzZBJakUf9iGk0LE6IMb/u1rFy0nYA/xA+u+hvzXluD57Rasq6rI/2SJvSM8As3ZAf5sPJV/FZ0PPfub/6Lj99e3yMH2OnUmXhScYfhBbj46zNxuqOV2YQuaB3iiXqZOTWNr4wfFbffrvjxmx/y6votBE0L07Y50NTCd19+m/X7Kw557JcZh1FAs+c+hCgQQnwkhNgSKSr83UOdt8/4fg742VWnccnMMbgdGkIIirJTefBbcxlWcPi6p/trm3hv1baoUvWGZVPf4uOt5Vui2q5pWELA9iO7VAS0pInPdtBoxS7iCVSKEr9ClZEeVSI9ObcFacch8jsU0vo9y/b6h9jd9DiDnWsY49mHJ8WPEqc0u1BgWPZ+ZiVuJVdvRMUCbILSRosTaLMkLKwcyCe7iqHZhdWd7ga4FJshjpaY7T1DIG3Bht8NZOFPx5A/uo6r/r4grHzWzVCHAiZyaR6yrYd0WQkrF22jorwe07DwjA6gOGKbqULjgL9Tb2HPtgp2bd7fY6ULANO0aOm2ADf36hM594qpOJwangQnukNjxpljSD+9Px5dx+vQcWkaU/sXcNOMKQf9Fup9ft7fujOG+xs0TB5d/KWT2j48yF5+Dg4TuF1KOQKYCtwcKSTcI/rCDp8DdFXl+5fM4raLZmJaFo4jUPvfVFIZoX5FG7dAyGTFtjK+Mmtcx7ZyfwkhO0h3SFQCMh1FhLBlAIGGIjQmZP2RTM909PJrMLrILTu9BvljKti/MafDo3XoAmdKIweydOqaBjLAWUORs45M3WLk8BJKV+Vjm+GUYQCEje42GDtwD7oqGeMtx5ZQZSRTYyRSazrI1EJ0nT0HLY0n9o7BslWqAt6I8Y2+7pAtaOhSD66nqsRR129CsNRJW52XpfsS2PZRPrYV/yC/L8TJ54zj43fWY3dTlktIdvO7O57HitTGM2s15IAQots7wpIWyXpqx9/7S2oPqbssFIXx08KaD/U1Laz6ZDuapnL5N0/mim+dQsW+erJyk0lK9SKlZN3+CsoamhiWnUlxVvxFva6obGoJr0V0SxuWQEldwyGP/zLjaMR8pZQVQEXk/y1CiK2E61Zu6emYPuP7OUJRBA7lyL7irJSEuNs1VaFfRnLUtlxXQSSTK9oAq0JlWvY9eNhOrX8pHj2fwqTLSdD7AzA6eRJrGz9FdvEE+59QTnJOCxVbsrBCOhmDasgeWodQISR1dgZyMKXCYHcNRQk1jJ27lZ0LB9BcnYAAUgqaKJ5ZghQKYGNLwYrWAbRaLixUHq5L4IqUUoY6mrFthdqgmx9tnMHethQAPq4pwG+peFQjWt1MwPpA53X3Zr3IDgrsSITGDGo0lifgSQ3iq48VDe8/JJvrf3A261fsoaXRF6W70FTfFtW24Z0kvOP8iC7sCRWVAs8AMpydFK+iIdlR8p3d4XI7mHX2GPoX5/Dm00t5/PfvoKphwRz7HsmP/u9ypp3a6UQJIRifn8f4/FjdiZ5QeJBy72P6xSvR+D8CSXjK1TtkCCFWdfn7sUgNyigIIfoTLil0UFm4PuN7jGPcoDwykr3sr22KUjvTVIVLZ46Jajsp7STeqXgRwwohI/MkFZVURwbDkiagiEn0T74y6hhbmgxzV7CxycKQKp1TcUFqQROpBc3Eg41CSTCTga5aJIKMtCaKL11MwHBQayaAKrAl7PWnM9BVS0UomSbLTXukyyd1nmgYzLolQ7D8OhW6CytRdpzekCpXLD+Xv074kEJPC6qwMSWsDWmMT9jDFl8eB4z4YkbtaPeKFZdkwB/2U/aLXELlDoyARv6oVvbGMb57t4eTQf7+zu1cd/r9hIKtPfYf2Omi6u/pZF1bj1DB4VYZ4C3mugHR4b7CQVmMnTKI9ct3dxpzEU7XTUzx4HCGH8M1n+7k7/e/gxEy6brM9rs7nuOpj+7suTpGL5DgdHDtlAk8uWJtVLl3p67xrekHD1l82XEYnm+tlHLSQfsSIgF4GbhNShn/4YmgL+Z7jEMIwePfu5RRA3JxaCouh0ZmspcHvzWX/MyUqLYu1cPtQ39FceIoBAqqUBmbMoVbh9yD0n1uHMHOhr/QEPgAVVrELlZ1i4kGNWqqk2lu8nQs4LXZOqqwOTFxJ0PdFYxJ3MfJqVtRTZOKxhSe2jSdVdX92RvMpPvtZhoKVQ3J1PgTUIJKTFxtT1sKZ396EX84MISPfS4+Duo0RRIuRngO4BRx0o+xSVXbSFT9kbguKDoobknON8PULU1X6Jc+PWYxC8KpufNeX4OvLUhbSyBmf3e0fJrA7psKGL7+XIo+PIfRO8/HYcca9Z8+dBVnfWUy3iQXDqfGkJH5aLpKc0MbNRVNzHttDfd8619xPWShCJZ9tPWQYzkUvnfySdw5ZxYFKckkOB1MH1TEc9deTv/01EMf/GVGO+PhUJ9DQAihEza8T0spXzlU+z7P9zhAZkoC/7zjMmqb2vCHDPIzknvkZ6Y7s/j24B9jSxvBobVeS5ufwZYBjIPcClLCjm35lO7NQVFspBS4PUEmT9mK3+MkTW9pL/jb4UZMSizh1U2TkAie3TGNc8asjw0RdPlbBAUiJJAO2WGjVcUiM6GFKsXL280jmOApIdMR9kQlkK03sS/UGe/M0RsY6TnQ4fGGbJU1bf1ps10IBVwDg0y9fgtbXh/OgOJcVny8LeZaQ0GT2oomdF0NZ3e5bNREC7Negx7ixFiCd/+yGdOw+Mizhef+toAHnvkWHm84KaS+poX/u/MFNq4MU/NyC9KoqWiICmlYlt09vN35/dsyRnbys0AIweUTx3D5xDGHbvw/hKMR8xXhB+0JYKuU8g+9OabP+B5HyEiOX/ixK0J2iEU177GqfjGa0JiWfgrTMk6J6/lKKTFlOI7pUYK02G7iUbWqKlLZV5KNbSvYdrif1hYXa1YVkze7gUy9k31gSIXqUDJ+W2Noxn621ebjdoSwIx5rV2iaTXpGM7U1SQgU9FoVy2tje21czhBD+1VQmFbf8QJZ5yvkVH0LZWsyWfafoTRUJKAVmGR8pZHMoU2M8uwPnyNyCapiMylhLwubh4WvS0D+WdVMmdvCIPMGXng8DqPD42D05IG4k3QG39GGObQKbJAW1D6XStP8+Knf7VlqAV+I/SV1vPTEIr526xxs2+aHX3uMyrL6jpJSZXtiVcUOBtuWTJ419LCO6UMvcfQkJU8CrgY2CiHWRbb9WEr5Tk8H9BnfLxEsafHQzl9Q4S/HiMgnVu3/D9tbN/L1Ad+LaS+EIMkxlObQNoa5D7CyLb40ZsneHCyrO/1KobnZS3lLGrmOJvIcjTSYHla39gfARjAkrwaPx2RDeX6PGmajxu5lxZLhBIMaUgq0ACS7/Jw2bjXDvRUkqgGCtsbuYBYHQslsWFTE0j+OwAyGb11js075fU5GP1qKSIx+ioQATdqkaW3UmwmAYLeZQz9vGXrWcibNKGbV4h0dacIOp0Z+/wymnTKcF8ufQIyq7ai8DJB5ZQNGg4ZvzcFjr0bI5OO31vG1W+ewaVUJ9TXNcWv5xYMnwYlt2QQDJkKA7tC48pbTotTQ+nD0IADR+wW3HiGlXMzh6dr3Gd8vA8pqGvEHDXyevVQFDnQYXoCQDLKlaR3lvhLyPf1jjs1PupXV1T8iVWtjlLuMLf78LgUuI1lkRnzeqxASw9ApCaSTozeytq0oqiy8okC/1AZ8hk6Dz02a1xcTenC5DGacvIG62iR8PidJST6K0qs5IXFvh6fsUQ2Guw+gYbLk72M6DG87ZEhBVAiUOIv2UoDeReGszXZi2gFqA0u568E/8d6LK3j3hRUYIYvs/BT2bKvkkhn3UPjnvaBFG0zFJXH0Cx3S+EI4rryibhFv2a+Q88t6mpe5aXg7GbsnDjHgdOtc/4OzKByUzeL3NqI7VE4+bzwDh+Ue8nztsEyLUNDE7Y3VwehDfIg+YZ0+HC7Kaxr5/qNvUlbTiKoIpGIycJaTtMLohSKJZE/b9ijj22TU8489f6TcX4IiihGYTEzwc3Vqf96qrqDODHuDAsl5/Xfx0pYRGHb07aIoEm+Cn1bbRXUoATtO1poioDirOtxXD36BEJCR2bkwPMRdFRuiEJLBrhoWNMcukgHsWZRL4bjamOQNBUmD2RmuUbFR0PBo/VBVhXMun8o5l0/lsd++xTvPryAYMNAyTGxTEo8l6Fsfu5jWHU6XTtEtbTxb8ji200TPgdSzDRKn+Si9Mw8ZjA0B6Q6NuVedyFmXTkYIwaiJ/Q95nq4IBgz+9pu3mPf6GizTJrcgje/8/ALGTjm00P//NL7AShZ9bIfjFJZtc+ODL7Gnoo6gYeILGvj9kq3zBuNvjvZ6VKGSpKd0/C2l5JGdv2afbzemNAjZIYK2zcqWRPKSvsNpudfiUMJ9DHc2c+PYNWS4/Tgj4uaKsHFpBmdP3ISigESwxV8QxRPuCiF6x8dtR6Ian2WgCIknMzaJBKBKTaTNcmB1eQGYUlASyCDUIVspSVT9KIpGmvusjioUrc1+3n5ueYf4uVmvIs3YAUsb7EDPj4ymqzjdOkUTk6lM24atdHrcigO0ZIukGbHUNVVTuea207nu+2d+ZqGb3//gOea/vgYjaGJbNvtLarnnW/+mZEflZ+rvfwe9ZDp8Dt5xn/E9TrFqRznNvgB2t5tC2oKKLdFpzJrQGZU0oePvfb7dNBh12ER7iZY0WVT7AdPST+acrNNRsMnVfGS6/bx+yQt8Z+JKpuSVM3fIdp45/1VO7t+upCUw0CJFMeOjJeBka0U2u6sz8YXie6/t8Nlxcnbbr2V4KKzA0wVqukH6FU2saB3Edn8O9aaHaiOR9W1F7Ap2jUUImi0Pq1r6cf+OB/j55lvY2ryO/aW1aHqXcIAtqHk6FTvYaQilBTIoorZ1xxU3ncyvn7ieWuUAMg45QXFJvGP8sTuO0PWqqWxi5aIdMYwII2jy0hOLjqjv/wUcDW2Hz4IjCjsIIe4HzgNChEsbXCelbIzsuwu4njCB5lYp5ftHNtQ+dEV9c3whbmkr2D4vDsWJlJIURzrfGPB9NKXT4DUbjShxvFQbm4ZQDUIIhnqTUIBqy4UhFRIdIa4fu57rx64HIGArrG4u7NVYt1Vms7Mqp4MCtqUijzH5ZRSl18dtvyuQzXhvaVTowbQFWxYU0PhJUrjyZQTCLcm+IZx5Z6NQFsqgLNRzuq2NQo3pAQwajXqe2PMg12fehdGtYkTzwkSsJpW0CxrRMiwCO53UvZSC3RT/kREKNNa14m8LYjercZdepAmhmtjjVVXpYDNIKVm/fA/LFmzBm+Di1Lnje9QEbkdVeT0OhxajHWHbktLdR1fG9EuJ4zTm+yFwl5TSFEL8DrgL+FFEUOJyYCSQB8wTQhRLKXvOsezDYWHMwNyOChZd4Xbo3DjtYqYUp6AIlUxnTsxUttA7EDOOa6YLB0MTR2PaJvPrd2Ei2BxIwZeooYtQB5fXkhCUChv88cn5XfUWmvwudlXlYEdEctrv8w3lBWQnNePSY8dRZySyoSWfYq0KtzOEEdBYv6CQ5U8Mg1AX71qRuIf7SRhz6GSInmBKgxW+BYyb2i0DDTC3JVN7fwr+ttiqIDHXbMNbzy7jw9fWYIQ0UhpVhG5GxY2lKWj6MJqq5nTrnH/lNAoGZmHbNr/9/rOsXLSDgD+Eqim89M9FfOfnF3La3An0hPyBmTGFWAFUTWHYmN69IP9nIY8O2+Gz4IiMr5Tygy5/LgMuifx/LvCclDII7BVC7AImA0uP5Hx96ES/jGTOmzaCd5ZvxR958By6Sm56ImeeMAznQcR8kvU0Tkw/lWX1H3UI8ahCI1FPYlzKVO7ffifVgQpAYFqC7y44mbbdKXhUkwsmbGHYiAO83FKI0UOYwY7kSQgB+xtTouKw7RBIKpuSKUqvC//dpYnZorB9ST5LXh2FCAqsDoPbrR9b4FvvQZogPuOd3PixhxefKkMXOoZhdYzD4dIZOqaArWtKe92XlGGeL0D5fTnk3laNs9AAO6wvUfloBmaVjtvj4KTTR+F065xy3nhGjC8CYMXC7az8JGx4ASzTxjJtHrrnVaadMgJvYqx+M4SrIJ9x8SQ+fHV1R9xaCHA4dS65fuZn+2L+l/AlEFP/OvB85P/9CBvjdpRHtsVACHEjcCNAYWHfW/pw8OMrTmX84H688PF62oIhTp9YzFdPmXBQw9uOi/K/RpF3EAtr3sVv+RmTfAKnZp/Hguq3qA1WYWMjbdj41jBaaz0dwuq/fz+dlE1NjDxjV499W7bAFqCrB7+rJfEX4rQkm+ST20ia2Ub5fTlYew9Cm5LgwIXB4Xu/vi0uqv+VjgyBRXSqctBvsGH5nhjFst7CrNcouzsPLc1EcdmEKnSQgoHDc7nz/y6nYGCsvOjCt9d3GO+uUDWVdUt3cdLpPWv2fuun55FbkMarT35KW7OfkRP7840fnk12v//x1OFe4Jilmgkh5gHxZI9+IqV8PdLmJ4T1LJ8+3AFEVIEeA5g0adIX9A46PiGE4OzJwzl78vAe29i2pLHVT4LbESVtKYRgUtp0JqVNj2q/pmFJR0iioTyZ1jpPVEUL21Rp3J9MS7WXxKxola926KqktDaN/LQG0uwgzgaB4QG7iw2VCHKTm3ocd3udtdybayi5I7/jqOicZCgeVcCVg+dSFTiAW/Oyq3krG5tXogoNW9rYPeXsAvVvJSFDPS+gKV6L7BtqqXg4K3x3Hx6HHggb4XY43Trfv++SuIYXwnSz9urLXSEgekEw3lgVhYuum8FF18047DH+z+NYNb5SytgCYV0ghLgWOBc4VcqOq9gPdK3Olx/Z1of/It5atoUHX15EWyCEEIKLpo/mtotnoKs9P8iq6NzXVJEYt0KFtAXNlQkkZ/ljGBM1LQmsKysk4Ncpn18EbSpeEa6DZqWbaKNaaA26GJZ7IG68tzu0DAst1cRs0Ohq/BwuDV3X+P59l1CU2infOCvzTFrNZjY1rWF361bWNiyLSjrpCrMuus/uSLugCe94P4W/qKD6yVSCe5xIQxz0mIPBm+BiwNCe5RvnXDiRRe9tiC3MKWD8iYM/0zn7cAhIoHfJh0cdR0Q1E0KcCfwQOF9K2XX5/Q3gciGEUwgxABgC/I/L5f938emmvfz62fk0tPoJmRZBw+TVTzfywIsLD3rctPRTUCPvZIfXQFHjqGypkqzkZLKd0ZGkZr+L5XsG4gs58ezWsVs0pKWAGa6E7GhUKPK1cuaoTQzIiM90iD2ZRHYTtFEUwSnnj+efH/yAosGxpdETtCSmps/m0oKv41RdiB6MZeLoYNxEio79U9tQdHANCFF4TxUDHipHHJwlFz30cIVPnG4dt9fBT/90JYrS8yM3+oQBXPi1k3A4NZyucGzY5XHws4euxuE8jBP3odcQSITs3edo40h5vg8DicCHQoh1QohHAaSUm4EXCKu4vwfc3Md0+O/isXeWRZUegnD1i9eXbMYfipVibMfsrLPwaOGMsKzBdXGcPImiSPIG+jFkCKXLLbSrOiuc5WaB3iQ6Ss+3wzZVKrdkd8R5D8VdlzYESx1YzdHet21L9mytOKS+rUNx8r3iexmUMKzDAAsETsWFJnSmXlFEQqKnxyoT3UMSWpKNZ5Qf1N65SqqmUDAwk6knD+eRV29leGRh7WC45rYz+Ntb3+PGO8/hlp9fwNOLfsy4qX1Zap8rbLt3n6OMI2U79DgXklLeB9x3JP334bPjQF18HWchoLHVjzstvielCo0Cz0C2NK9Fd5mMOns72+YNxowU1XS4DYbN2UmN5Y+RQGwJupAoByWkW90KUx40oUtC5WPxOa47NpbzwSurOP2ig2pbs2VBFZseSaSuZiiKImhrCeD0aJx2yThuuO18rnjNx/N/+4iF726gpdGP7PI2aPookbQLG/Gtd9O0KFxRJHGiH99mD71xJUzDomx3DdX7G1n+0VZ+/tdrGDtlELu3HuAfD7zHjo3lpGYmcsVNJ3PyueM6jsvJT+Psy/63Bc7/a/gCww592g5fUowoymbxxr0xLBpNVQ4pTTkp9SQ2N21ACIvknFYmX7kOX4MboUgciQF6mjCle9to8rmRqoLthJgsYSFJLehcZOtR6wGFHGc/FEtjd23PVu6Re1/nhJlDSc1IjLv/l995iiXzYkto+VsM3n9mLfX7ffz0T1fx7Z/N5ds/m8vWtaW899JKmht95PfPYNSU/vz9X89TuSLQocfg3+TuleHtinb61323PcNvnvg6d1z1NwKRuG5rs58/3f0K9TUtXNy3WPaF4ItiO/SlFx+nKK9p5L6n53H5r57irifeZntZddT+m88/Cacj+t3qcmh8+7wTD7rgBjAudSqpWhGm1Xl7eFL9OJMCVDan9FjyalBmNZoqEQLaBlhIRXaUMxKqhe40GTC5/BBXJriq8Fuc2+8yhC4p+nUF3kltxCNjKoqIK4gOYdpWPMPbjlDQZOXC7VTt7yweOXx8Edd893Smnz6KoWMLcbuc1KySUUI40hSfmRdqGhaP/uYtgoFuFYT9Bk8/PC9uokQf/gv4grQd+jzf4xC7D9Ryze+fI2iYWLZk14E6Fm7Yw4M3nc+U4eG4YnF+Jv+44zIeem0xm0uqyEpJ4IazpzBnYvEh+1eFyp0j7uGaBX8mJPbhNxXK6tMIGjrFOZU4tfjzNLfDYFbxdurqT2C3w8QzxcFQfzqmrxVf8layhleiu0xUVJyqG01o+K02DGkgEKhoXF54A9tbN7GucRkhO4ieA7m31NCyzEvVo5kx5+zpmXjusY8PeZ26rrFvd3UHF/bFvy/kqYc+xLZkr/V3Dxdle2qiQhvtkEBtZRN5hemfy3n70BOOnmEVQvyDMPOrWkrZMyk7gj7jexzij698gj9odDhgtpQEQia/fnYBr997XUe7YQVZPPKdiz7TOdyagydPuY0Xdq7jkc1vkuz2M6CgjMzEngtKAqS64c6ZpzA4IZp7vKR2AfOrXsdv+RmWOJq5+VehC53FtR+ypXkdqXo6s7LORhUKz5f9PYoepjggcYqPxveDBLskXNi2ZMrJw+KOo6UxvvZFVxiGSb/+4Zjy9g1lPP3I/BiNh8+CjJwkWhp9MR6urqvkD8iMqYIMYFs2KenxK1X34XPE4VUvPhT+RZiE8GRvGvcZ3+MQa3ftjzvzPVDXRFsghNfVsyrY4cClaXxt+CRmFabw4I57kIdYmXAIJ4MShjPIG20Q39j/LItq3sOU4RfGhqZVpDoyOa/f5ZyecyGn51zY0fbDytew4uhOCF3iHe8juM8BQiKE4OIfTOwx3jv+xMHMe21Nj2NVVMHYqYM6PM0PX11NKNgzC+Rw4GsLMnnWMFYs2o4RMiPJE4Kf/OlKLMvmF99+siMODGH931PPH99R860P/10crZivlHJRpGx8r9BnfI9DJHlc+OIYCk1VcBwiE+qzoMg7mCuLbuK5fY9jys7zKqhkOnNxq24kkqnps5mSPjtKyKfCX8aimveiPFlDhlhY8y4npE0nx50fdS6X6olkp0UnRkgT1GSL1DOb0VIsEqa0UVmwDLgg7pivuuU0ls7fgq81EH9WKWHOBZ1iNQFf6KiF9TxeF3c9+FW2byhj3bLdJKV4mHHmGBKTw0Lst/3qIh777du0NvtRFIUzLpnEDT885+icvA+Hj2M1w60Pxx6uOm0CD7/+aRSP16mrnDd15CEX0z4rJqVOpzZYxfyqN1CFhilNBiUM4+sDbsOl9sy33dS0BisOPcCWFpua18QY3/EpU3l9f5wsdSmofyUFGVIo+u0B9AyLykD8xbu66mb+8qs38LUFe3yubFvywSurmXFmuJLv9DNGsejdDRjGkYUdnC6dcy+fihCCYWMLGTY2Vq9k9jnjmHnWGFqa/Hi8TnRH32P4hUESJVF6CGQIIVZ1+fuxiDzCZ0Lfr34c4vLZ49lf28TLn2zEoamETIsZowZy+6WzPrdzCiE4K/cSZmedTWWgnGQ9lTRH7AJYd2iKjiIU7G4GWAgFLY4UWYKexPUDv88/9/4Rf2swHF4RUPHnTKwmDVRJ/RvJZF9fR6KWHHO8aVh87/K/UFfdjDzEQ9Xa3ClsPnn2MMafOJgVC7fHbasoAvsQ/Wm6yuTZw7jk+kNTxhRFITn10NWo+/B547AW3GqllAcnlh8G+ozvMQopwyyGtkCQ4YXZUUpliiL4wVdO5sZzplFa1UBueiKZyf+dxRq36mGA99CMiXaMS5nC2wee63FfPAxPGst16j388rFHCAYM/FudyPbkDEvg3+bEoTijYsXt+PC11TQ1+LB7sYgyMlInLRQy2bmpnCtvmcO0U0fw5EMf0lATvbBo2zKu6A2E+cqDhudx1x+uOKTweR+OQfSFHfrQjrKaRm595DWqG1rDHpeU/OSKUzl7SjSDINnrYszA3le2/SKQ6kjnsoIbeL7scYRQEAhsaXFZ4Q2kOHqmVWVnp9O6zoUR6n6LSpzZNmfmXMQ450n86e5XWfjOOizTJjnNS23VoT1eCBvM0ScM4I3/LOHffwrLUtu2JDnVy72PXsuDP36JPduj65+1P6MOpxYluu5NdPPNH5/bZ3iPR0jgKNEKhRDPArMJhyfKgXuklE/02D4e5/CLwqRJk+SqVasO3fBLDNuWnPezf1DZ0Bz1QnbpGv/8wWUMLYgvR3iso81sYXPTWgBGJo/Hq8VnKXTFvbc8xarFOzC6GDqHS+NXf7+WURMGcuslD1OyswrzMOO0iioQQqDrWodweVdoutpjn26vE92hxqQiuzwO/v7u7aRnJcU9rg9HH0KI1UcaBkh2ZssT867sVdv3Sh484vN1RV+G2zGG9XsO0NTmj5kJhSyLFxdt+Ex9mpbNgnW7ePj1T3nt0034Aocui3O04dUSmZw+k8npM3tleAF++PvLOGnOKHSHisOpkZLu5Y7fXMroiYPYuHIv5SW1vTK8iiJQVQVVU9A0NZxEYdpxDS9w0D4D/hChgBGTKGGZNu+92Cfcd1yiL8OtDwBNbYG45cNtW1LTFF+8/GBo8Qf5+v3PU1HfjC9o4Hbo/OnVT/jnHZfRPyftaAz5c4PL4+A7P7+AQcNyWLdsN0WDsxk8MsyOKN1ZhWX2brrYr38Gd/3hCkp3VvH7Hz1/6AMOBinjGmcjZLK/pO7I+u7Dfx+Hx3Y4qugzvscYxgzIxTBjH263Q2Pm6AGH3d/f3lrKvpoGjIih8ocMAobB3f9+nyd/dMURj/fzRFNDG9+5+CGaG30E/Qbrl+3m7eeX84u/XkO//hlomoLRCye+oqyeH17zOLYVLo10pDB7MPoDhx/b8fc+9IA+YZ0+AKQlebj2jBNwd+F+OnWNvPRkzpky4rD7e3/V9g7D2w4pYVtZNS2+z17197+BZ/+6gIba1o7KDqZpE/QbPHDXS4ydOpCktN5RtUzDwtca6DHMcDg42HOqKp+twkUfvmD0hR360I6bzp3GqP45PPfxOlp8AU6bMIRLZozF9RnI+PFCGF12HsEoP38smbc57hS/qaGN7evLaaqPpoMJAUlpXpobfDGMh95Qz3oDTVMx48xMVF35oorg9uFIICVYX0ydhz7je4xi+qgBTB/VuzCDZdss2rCHpVtKSUvycP60keSlh1fdz5kynGcXrCXUxWAoQjCqfw6J7mNbS8DtiT8+adnMf3MtZijWo/e1BFBVBdM+8gdK0xSEomCZFrYtcbkdjJzYn40r90RRzQBURWHK7J4LmfbhGEYfz7cPnwUhw+SmP73M9vIa/EEDXVV58oNV/O6Gc5gxeiA3nj2VVdvL2FNZj2FaODQVj8vBr64784se+iFx3pVT+fv970YVlFRVhWHjCinfUxPXA9UdOv36Z7B3RwXmESqUZeam8NM/X8m819cSChicNGcU46YN4m+/eYv3XlpJKGACEodT56Jrp3copPXhOEOf8e3DZ8HrSzazray6Q+fBsCwMC376z/eYd/83cTt1/v3DK1i5fR/bymrIS09i1piBUWXkj1WcfdkUtm8oZ9G7G1A1FSklmTnJ3PnAFbzyz0/YsrY0JixhGia3/eoiHv/d22xZU4qmqxghE8u0D5ke3A6hCNIyErn3b9eSPyCTG4flRe2/6cfnMfOsMXz89noURXDyeeMYOrqgh976cGxD9rEd+vDZ8M6KrTGFMiGs8bultIqxA/NQFMGU4UUdQuvHCxRF4fbfXMpXv30qOzeVk5mTzLBxhQghmPu1k3j3xRVRxtfh1Jg0YygDh+bym398g+oDjdTXNFM4OJvHfvMW778cP4EnOc2LN9GFogoGj+jHKeeNZ8JJQ3osrAkwYnwRI3pRELMPxzgkyKNBgfkM6DO+xzmcPXiwUkoc2uejcPbfRm5BGrkF0ZzkzJxkHnj6Jv7yqzfYsqYUl8fBmZecwNduO72jTVZeCll5KQB8++651Nc0s3LRjo79iiq47ZcXMefCo5a01IfjEZ9T1ZJDoc/4Hue4eMYYNu6tjCkHn+hxMew4TUXuLfoX5/D7J2/sVVuHQ+Pev11HY10bKxdtw5voYvy0wbj7BMz/tyHl51IWvjfoM77HOU6bMITl2/bx9vKtCBFedddUhT99e+7BaWb/o0hJ9zLnwolf9DD6cCyhb8GtD58FQgh+euVpXHXqBNbs2k+y18WMUQOOiwW1PvThWIDs83z7cCTon5N2zGs19KEPxx4+n+y13uCI0ouFEL8UQmwQQqwTQnwghMiLbBdCiD8LIXZF9k84VF996EMf+vBfR7uwTm8+RxlHqu1wv5RyjJRyHPAWcHdk+1nAkMjnRuCvR3iePvShD3046pCAtKxefY42jsj4Simbu/zphY709rnAkzKMZUCKEKJP8qkPfejDsQUpQdq9+xwCQogzhRDbIzP+Ow/V/ohjvkKI+4CvAU3AyZHN/YCyLs3KI9sqjvR8fehDH/pwNNGbslOHghBCBR4B5hC2dyuFEG9IKbf0dMwhPV8hxDwhxKY4n7kAUsqfSCkLgKeBWz7DoG8UQqwSQqyqqak53MP70Ic+9OHIcHQ838nALinlHillCHiOcASgRxzS85VSntbLS3gaeAe4B9gPdE12z49si9f/Y8BjAEKIGiFEaS/P1xMygNoj7OPzwrE6tmN1XNA3ts+KY3VsR3NcR5zf3ULD+/PkS71VRHIJIbrmqD8WsV8Qf7Yfvzx3BEcUdhBCDJFS7oz8ORfYFvn/G8AtQojnIgNoklIeMuQgpcw8kvFExrTqaBa5O5o4Vsd2rI4L+sb2WXGsju1YG5eU8guT9zvSmO9vhRBDARsoBW6KbH8HOBvYBfiA647wPH3oQx/6cCyj17P9dhyR8ZVSXtzDdgncfCR996EPfejDcYSVwBAhxADCRvdy4KsHO+DLmOH22KGbfGE4Vsd2rI4L+sb2WXGsju1YHdcRQUppCiFuAd4HVOAfUsrNBztGyC8ota4PfehDH/6X0Ve9uA996EMfvgD0Gd8+9KEPffgC8KUxvseqyI8Q4n4hxLbIuV8VQqR02XdXZFzbhRBn/DfHFTn/pUKIzUIIWwgxqdu+L3RskTEcVrrm5zyWfwghqoUQm7psSxNCfCiE2Bn5N/ULGFeBEOIjIcSWyG/53WNobC4hxAohxPrI2H4R2T5ACLE88rs+L4Rw/LfHdkxASvml+ABJXf5/K/Bo5P9nA+/+f3tnD1JlFAbg50VNAluKkKihBKkcgiTCIBoKoiT6gQYhyKiprSkEod2GtsClwSGK/iCb+sNoyoYyEy6W0tBgOoRQBFLxNpz35sclU8p7zrnyPnDg3PMJPtzz3fee7/y8FxCgAxiO7HUQqLd6H9Bn9TbgDdAIbAEmgbrIbtuBrcAzYFehPQe3Ovu/LcAq82lLeH/tA9qBsULbZaDH6j3lvo3stQFot/oa4J31Xw5uAjRZvQEYts/gLaDL2vuB86n6NWVZMSNfzTTJj6o+UtXyL1y+IOz/K3vdVNU5Vf1A2BO9O5aXuZVUdfwPl5K78Q/HNauJqj4HPlc0HwMGrD4AHI/pBKCqU6r6yupfgBLhtFUObqqqX+1lgxUF9gN3UrrlwIoJvhCS/IjIR+AU8+ktF0ryk4KzhFE45OVVSQ5uOTgsRrPOn9z8BDSnlBGRzcBOwggzCzcRqROREWAGeEx4mpktDEhy7Nco1FTwrXaSn2p52d/0Aj/MLRpLcXP+Hw3P0Mn2bYpIE3AXuFDxFJjUTVV/asj3vYnwNLMthUeO1NQhC61ykp9qeYnIGeAIcMA+CMTwWorbAkRxqwGHxZgWkQ2qOmVTWTMpJESkgRB4r6vqvZzcyqjqrIgMAXsIU3/1NvrNsV+jUFMj378hIq2Fl5VJfk7brocOlpjkZxm9DgEXgaOq+q1waRDoEpFGO5LYCryM5bUIObj9Pq5pq+Fd5pUTg0C31buB+7EFRESAa0BJVa9k5ra+vLtHRFYTct2WgCHgZEq3LEi94rdchfDNPwaMAg+AjTq/4nqVMNf0lsKqfiSvCcLc5YiV/sK1XvMaBw4neM9OEObc5oBp4GEububQSVi9nwR6E99fNwg/BvDd3rNzwDrgKfAeeAKsTeC1lzClMFq4xzozcdsBvDa3MeCStbcQvswngNtAY8q+TVX8eLHjOE4CVsy0g+M4Ti3hwddxHCcBHnwdx3ES4MHXcRwnAR58HcdxEuDB13EcJwEefB3HcRLwCwNVfpByxD1PAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.decomposition import PCA\n", "pca = PCA(n_components=2, svd_solver=\"randomized\")\n", "proj = pca.fit_transform(digits.data)\n", "\n", "plt.scatter(proj[:, 0], proj[:, 1], c=dig_label)\n", "plt.colorbar()\n", "plt.savefig(\"fig-res-pca_visualize.pdf\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "PCA的一个缺点是它可能会丢失数据中一些有趣的相互关系。如果想看到非线性的降维与映射\n", "我们可以使用几种流形模块中的方法。在这里,我们将使用[Isomap](https://blog.csdn.net/VictoriaW/article/details/78497316)(串联\n", "等距映射)是一种基于图论的流形降维方法。" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.manifold import Isomap\n", "iso = Isomap(n_neighbors=5, n_components=2)\n", "proj = iso.fit_transform(digits.data)\n", "\n", "plt.scatter(proj[:, 0], proj[:, 1], c=digits.target)\n", "plt.colorbar()\n", "plt.savefig(\"fig-res-isomap_visualize.pdf\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.3 示例程序" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(1797, 64)\n", "accuracy train = 0.995825, accuracy_test = 0.961111\n", "score_train = 0.995825, score_test = 0.961111\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/bushuhui/anaconda3/envs/dl/lib/python3.7/site-packages/sklearn/linear_model/_logistic.py:765: ConvergenceWarning: lbfgs failed to converge (status=1):\n", "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n", "\n", "Increase the number of iterations (max_iter) or scale the data as shown in:\n", " https://scikit-learn.org/stable/modules/preprocessing.html\n", "Please also refer to the documentation for alternative solver options:\n", " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n", " extra_warning_msg=_LOGISTIC_SOLVER_CONVERGENCE_MSG)\n" ] } ], "source": [ "from sklearn.datasets import load_digits\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.metrics import accuracy_score\n", "from sklearn.manifold import Isomap\n", "\n", "import matplotlib.pyplot as plt \n", "\n", "# 加载示例数据\n", "digits, dig_label = load_digits(return_X_y=True)\n", "print(digits.shape)\n", "\n", "# 进行特征降维\n", "feature_trans = True\n", "if feature_trans:\n", " iso = Isomap(n_neighbors=5, n_components=8)\n", " digits = iso.fit_transform(digits)\n", "\n", "# 计算训练/测试数据个数\n", "N = len(digits)\n", "N_train = int(N*0.8)\n", "N_test = N - N_train\n", "\n", "# 分割训练/测试数据集\n", "x_train = digits[:N_train, :]\n", "y_train = dig_label[:N_train]\n", "x_test = digits[N_train:, :]\n", "y_test = dig_label[N_train:]\n", "\n", "# 进行逻辑回归分类\n", "lr = LogisticRegression()\n", "lr.fit(x_train,y_train)\n", "\n", "pred_train = lr.predict(x_train)\n", "pred_test = lr.predict(x_test)\n", "\n", "# 计算测试、训练精度\n", "acc_train = accuracy_score(y_train, pred_train)\n", "acc_test = accuracy_score(y_test, pred_test)\n", "print(\"accuracy train = %f, accuracy_test = %f\" % (acc_train, acc_test))\n", "\n", "score_train = lr.score(x_train, y_train)\n", "score_test = lr.score(x_test, y_test)\n", "print(\"score_train = %f, score_test = %f\" % (score_train, score_test))\n", "\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.metrics import confusion_matrix\n", "\n", "# plot confusion matrix\n", "cm = confusion_matrix(y_test,pred_test)\n", "\n", "plt.matshow(cm)\n", "plt.title(u'Confusion Matrix')\n", "plt.colorbar()\n", "plt.ylabel(u'Groundtruth')\n", "plt.xlabel(u'Predict')\n", "plt.savefig(\"fig-res-sklean_isomap_confusion_matrix.pdf\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 5. 深入思考\n", "\n", "1. 如何得到错误分类数据的下标?\n", "2. 如何根据下标,将这些错误的数据可视化出来?\n", "3. 如何扩展2分类到多分类?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## References\n", "\n", "### 逻辑回归\n", "* [逻辑回归模型(Logistic Regression, LR)基础](https://www.cnblogs.com/sparkwen/p/3441197.html)\n", "* [逻辑回归(Logistic Regression)](http://www.cnblogs.com/BYRans/p/4713624.html)\n", "\n", "### PCA\n", "* [PCA的数学原理](http://blog.codinglabs.org/articles/pca-tutorial.html)\n", "* [主成分分析(PCA)原理详解](https://zhuanlan.zhihu.com/p/37777074)\n", "\n", "### Isomap\n", "* [浅谈流形学习之Isomap算法](https://blog.csdn.net/WEILING123/article/details/108069490)\n", "* [降维方法之ISOMAP](https://zhuanlan.zhihu.com/p/433392764)\n", "\n", "### t-SNE\n", "* [t-SNE 原理及Python实例](https://zhuanlan.zhihu.com/p/148170862)\n", "* [t-SNE:最好的降维方法之一](https://zhuanlan.zhihu.com/p/64664346)\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.4" } }, "nbformat": 4, "nbformat_minor": 2 }