Skip to content

Instantly share code, notes, and snippets.

@onidzelskyi
Created March 13, 2019 14:29
Show Gist options
  • Save onidzelskyi/3845c8d635a66351083b6d68ea0dcfdd to your computer and use it in GitHub Desktop.
Save onidzelskyi/3845c8d635a66351083b6d68ea0dcfdd to your computer and use it in GitHub Desktop.
Remove background from image with python
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Remove background from image\n",
"\n",
"original [link](https://www.kaggle.com/vfdev5/data-visualization)\n",
"\n",
"This demo shows simple approach to remove background from image\n",
"To solve this problem\n",
"\n",
"* create mask\n",
"* apply mask to remove background\n",
"\n",
"We use \n",
"\n",
"* [OpenCV](https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_tutorials.html)\n",
"* [NumPy](http://www.numpy.org/)\n",
"\n",
"Fisrt, import modules"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import cv2\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Example 1 Simple binary 2D array\n",
"\n",
"Let's consider a simple two dimensional ten by ten array of zeros and ones.\n",
"Then, describe background removal algorithm using by this array"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132b84f6160>"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Create sample array 10 by 10 from zeroes \n",
"# It's important dtype=np.uint8\n",
"X = np.zeros((10, 10), dtype=np.uint8)\n",
"\n",
"# Fill two rectangles with ones\n",
"X[2:5, 2:5] = 1\n",
"X[6:8, 6:8] = 1\n",
" \n",
"# Finally, show binary image \n",
"plt.imshow(X)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We've got an image with two rectangles on it\n",
"Show pixel distribution to ensure it uses only zeros and ones"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<BarContainer object of 10 artists>"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"H = np.histogram(X)\n",
"plt.bar(H[1][:-1], H[0], width=.1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As we can see from plot above, our image contains only 0 and 1.\n",
"\n",
"### Detect contours\n",
"\n",
"Next, let's find contours on image.\n",
"\n",
"You can read more about contours in [OpenCV documentation](https://docs.opencv.org/3.0.0/d4/d73/tutorial_py_contours_begin.html)"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[array([[[6, 6]],\n",
" \n",
" [[6, 7]],\n",
" \n",
" [[7, 7]],\n",
" \n",
" [[7, 6]]], dtype=int32), array([[[2, 2]],\n",
" \n",
" [[2, 4]],\n",
" \n",
" [[4, 4]],\n",
" \n",
" [[4, 2]]], dtype=int32)]"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"_, contours, hierarchy = cv2.findContours(X, # Source image\n",
" cv2.RETR_TREE,\n",
" cv2.CHAIN_APPROX_SIMPLE # only coordinates of corners \n",
" )\n",
"\n",
"# Show contours\n",
"contours"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Detected contours are presented by its corner' coordinates. You can easily match those coordinates with actual rectangles corners.\n",
"\n",
"### Mask\n",
"\n",
"Next step is, create mask from detected contours"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132b9f75e48>"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Firstly, define empty mask with the shape of the original image\n",
"mask = np.zeros(shape=(X.shape[:2]), dtype=np.uint8)\n",
"\n",
"# For each contour draw closed line and fill inner area of the contour with 1\n",
"cv2.drawContours(mask, contours, -1, (1,1, 0), cv2.FILLED) \n",
"\n",
"# Finally, visualise mask \n",
"plt.imshow(mask)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Cut of background from image by applying mask\n",
"\n",
"After all, we subtract mask from image using by bitwise operator AND"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132b9fc8f60>"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAPgAAAD8CAYAAABaQGkdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAACZhJREFUeJzt3d+r3wUdx/Hnq21ubRUFdbNNUkEq\nEdI4lCV04QI1I2+6MFCom92UvwjCuukfiKiLCIbVTZIXy4sIUSPtopvhcQ50HgXR0jnDddEPhLZJ\n7y7OCZa58/1s5/Pxc8675wOEfb9+dnwxztPP5/s9n3OWqkJST++Ze4Ck6Ri41JiBS40ZuNSYgUuN\nGbjUmIFLjRm41JiBS41tn+KDXpKdtYs9U3xoScA/eZMzdTqLjpsk8F3s4TM5MMWHlgQcqd8NOs5L\ndKkxA5caM3CpMQOXGjNwqTEDlxobFHiSm5K8kOTFJPdNPUrSOBYGnmQb8GPgZuAq4KtJrpp6mKSN\nG3IG/zTwYlW9VFVngAeBW6edJWkMQwLfB7x6zuMTa8/9lyQHkywnWT7L6bH2SdqAIYG/0/2u//Oj\nWKvqUFUtVdXSDnZufJmkDRsS+Ang0nMe7wdOTjNH0piGBP4kcGWSy5NcAtwG/HraWZLGsPC7yarq\nrSTfBB4FtgE/q6rjky+TtGGDvl20qh4GHp54i6SReSeb1JiBS40ZuNSYgUuNGbjUmIFLjRm41JiB\nS40ZuNSYgUuNGbjUmIFLjRm41JiBS40ZuNSYgUuNGbjUmIFLjRm41JiBS40ZuNSYgUuNGbjUmIFL\njRm41JiBS40ZuNTYoL+brLtHTx6be8Lsbtx7zdwTNAHP4FJjBi41ZuBSYwYuNWbgUmMGLjW2MPAk\nlyZ5IslKkuNJ7n43hknauCFfB38L+FZVHU3yfuCpJL+tqucm3iZpgxaewavq9ao6uvbrfwArwL6p\nh0nauAt6DZ7kMuBa4MgUYySNa/CtqkneB/wKuKeq/v4O//4gcBBgF7tHGyjp4g06gyfZwWrcD1TV\nQ+90TFUdqqqlqlrawc4xN0q6SEPeRQ/wU2Clqn4w/SRJYxlyBr8euAO4IcmxtX++OPEuSSNY+Bq8\nqv4A5F3YImlk3skmNWbgUmMGLjVm4FJjBi41ZuBSYwYuNWbgUmMGLjVm4FJjBi41ZuBSYwYuNWbg\nUmMGLjVm4FJjBi41ZuBSYwYuNWbgUmMGLjVm4FJjBi41ZuBSYwYuNWbgUmMGLjVm4FJjBi41ZuBS\nYwYuNWbgUmMGLjVm4FJjBi41NjjwJNuSPJ3kN1MOkjSeCzmD3w2sTDVE0vgGBZ5kP3ALcP+0cySN\naegZ/IfAt4F/ne+AJAeTLCdZPsvpUcZJ2piFgSf5EvBGVT213nFVdaiqlqpqaQc7Rxso6eINOYNf\nD3w5yR+BB4Ebkvxi0lWSRrEw8Kr6TlXtr6rLgNuAx6vq9smXSdowvw4uNbb9Qg6uqt8Dv59kiaTR\neQaXGjNwqTEDlxozcKkxA5cau6B30bu6ce81c0+QJuEZXGrMwKXGDFxqzMClxgxcaszApcYMXGrM\nwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzJ+qqkk9evLY\n3BMG6/jTdT2DS40ZuNSYgUuNGbjUmIFLjRm41NigwJN8MMnhJM8nWUny2amHSdq4oV8H/xHwSFV9\nJcklwO4JN0kaycLAk3wA+DzwNYCqOgOcmXaWpDEMuUS/AjgF/DzJ00nuT7Jn4l2SRjAk8O3Ap4Cf\nVNW1wJvAfW8/KMnBJMtJls9yeuSZki7GkMBPACeq6sja48OsBv9fqupQVS1V1dIOdo65UdJFWhh4\nVf0ZeDXJx9aeOgA8N+kqSaMY+i76ncADa++gvwR8fbpJksYyKPCqOgYsTbxF0si8k01qzMClxgxc\naszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxq\nzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcamzoXz4oXZQb914z94T/a57BpcYMXGrMwKXGDFxq\nzMClxgxcaszApcYGBZ7k3iTHkzyb5JdJdk09TNLGLQw8yT7gLmCpqq4GtgG3TT1M0sYNvUTfDrw3\nyXZgN3ByukmSxrIw8Kp6Dfg+8ArwOvC3qnrs7cclOZhkOcnyWU6Pv1TSBRtyif4h4FbgcmAvsCfJ\n7W8/rqoOVdVSVS3tYOf4SyVdsCGX6F8AXq6qU1V1FngI+Ny0sySNYUjgrwDXJdmdJMABYGXaWZLG\nMOQ1+BHgMHAUeGbt9xyaeJekEQz6fvCq+h7wvYm3SBqZd7JJjRm41JiBS40ZuNSYgUuNGbjUmIFL\njRm41JiBS40ZuNSYgUuNGbjUmIFLjRm41JiBS40ZuNSYgUuNGbjUmIFLjRm41JiBS40ZuNSYgUuN\nGbjUmIFLjRm41JiBS42lqsb/oMkp4E8DDv0w8JfRB0xnK+3dSltha+3dDFs/WlUfWXTQJIEPlWS5\nqpZmG3CBttLerbQVttberbTVS3SpMQOXGps78EMz//cv1Fbau5W2wtbau2W2zvoaXNK05j6DS5rQ\nbIEnuSnJC0leTHLfXDsWSXJpkieSrCQ5nuTuuTcNkWRbkqeT/GbuLetJ8sEkh5M8v/Zn/Nm5N60n\nyb1rnwfPJvllkl1zb1rPLIEn2Qb8GLgZuAr4apKr5tgywFvAt6rqE8B1wDc28dZz3Q2szD1igB8B\nj1TVx4FPsok3J9kH3AUsVdXVwDbgtnlXrW+uM/ingRer6qWqOgM8CNw605Z1VdXrVXV07df/YPUT\ncN+8q9aXZD9wC3D/3FvWk+QDwOeBnwJU1Zmq+uu8qxbaDrw3yXZgN3By5j3rmivwfcCr5zw+wSaP\nBiDJZcC1wJF5lyz0Q+DbwL/mHrLAFcAp4OdrLyfuT7Jn7lHnU1WvAd8HXgFeB/5WVY/Nu2p9cwWe\nd3huU7+dn+R9wK+Ae6rq73PvOZ8kXwLeqKqn5t4ywHbgU8BPqupa4E1gM78f8yFWrzQvB/YCe5Lc\nPu+q9c0V+Ang0nMe72cTX+ok2cFq3A9U1UNz71ngeuDLSf7I6kufG5L8Yt5J53UCOFFV/7kiOsxq\n8JvVF4CXq+pUVZ0FHgI+N/Omdc0V+JPAlUkuT3IJq29U/HqmLetKElZfI65U1Q/m3rNIVX2nqvZX\n1WWs/rk+XlWb8ixTVX8GXk3ysbWnDgDPzThpkVeA65LsXvu8OMAmflMQVi+R3nVV9VaSbwKPsvpO\n5M+q6vgcWwa4HrgDeCbJsbXnvltVD8+4qZM7gQfW/kf/EvD1mfecV1UdSXIYOMrqV1eeZpPf1ead\nbFJj3skmNWbgUmMGLjVm4FJjBi41ZuBSYwYuNWbgUmP/BmG1A6kYozt1AAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"img_masked = cv2.bitwise_and(X, X, mask=mask)\n",
"plt.imshow(img_masked)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Show results"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Image shape: (10, 10) | image type: uint8 | mask shape: (10, 10) | mask type: uint8\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132ba077c18>"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 1440x1440 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(20, 20))\n",
"\n",
"print(\"Image shape: {} | image type: {} | mask shape: {} | mask type: {}\".format(X.shape, X.dtype, mask.shape, mask.dtype) )\n",
"\n",
"plt.subplot(131)\n",
"plt.imshow(X)\n",
"plt.subplot(132)\n",
"plt.imshow(mask)\n",
"plt.subplot(133)\n",
"plt.imshow(img_masked)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Example 2. simple 3D array represented RGB image\n",
"\n",
"Before applying this method to the real images, let's show how it works on simple 3D rgb images"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132ba2ba240>"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAPgAAAD8CAYAAABaQGkdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAACaNJREFUeJzt3U2IXQcdhvHnNfGSpCoKcWNSbAVR\niyAtg6QtuGhd+IXduKhQQTfZ+FFFKK2LFroW0YUIodWNxS5iF6UUP0BdCG1wmhY0HYVStY2tNF34\nQSlcS/8uZoRYm7knmXN6Zv4+Pyjk3pxMX8I8OefeOZOkqpDU05vmHiBpOgYuNWbgUmMGLjVm4FJj\nBi41ZuBSYwYuNWbgUmP7p/igi8WiDh48OMWHlgS8/PLLLJfLrDpuksAPHjzIsWPHpvjQkoBHH310\n0HFeokuNGbjUmIFLjRm41JiBS40ZuNTYoMCTfCzJH5I8leT2qUdJGsfKwJPsA74LfBy4Cvhskqum\nHiZp54acwT8MPFVVT1fVErgfuGnaWZLGMCTwI8Cz5z0+u/Xcf0lyPMl6kvXlcjnWPkk7MCTw17vf\n9X/+KtaqOlFVa1W1tlgsdr5M0o4NCfwscPl5j48Cz00zR9KYhgT+G+C9Sa5MsgBuBh6cdpakMaz8\nbrKqeiXJl4CfAvuA71fVmcmXSdqxQd8uWlUPAw9PvEXSyLyTTWrMwKXGDFxqzMClxgxcaszApcYM\nXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxc\naszApcYMXGrMwKXGDFxqbNC/Tdbdi9fePfeE2R1+5M65J2gCnsGlxgxcaszApcYMXGrMwKXGDFxq\nbGXgSS5P8sskG0nOJLn1jRgmaeeGfB38FeDrVXU6yVuBx5L8vKqenHibpB1aeQavquer6vTWj/8J\nbABHph4maecu6jV4kiuAq4FTU4yRNK7Bt6omeQvwY+CrVfWP1/n548BxgAMHDow2UNKlG3QGT/Jm\nNuO+r6oeeL1jqupEVa1V1dpisRhzo6RLNORd9AD3AhtV9a3pJ0kay5Az+PXA54Abkjyx9d8nJt4l\naQQrX4NX1a+BvAFbJI3MO9mkxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxq\nzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrM\nwKXGDFxqzMClxgxcaszApcYMXGrMwKXGBgeeZF+Sx5M8NOUgSeO5mDP4rcDGVEMkjW9Q4EmOAp8E\n7pl2jqQxDT2Dfxu4DXj1QgckOZ5kPcn6crkcZZyknVkZeJJPAS9U1WPbHVdVJ6pqrarWFovFaAMl\nXbohZ/DrgU8n+RNwP3BDkh9OukrSKFYGXlV3VNXRqroCuBn4RVXdMvkySTvm18GlxvZfzMFV9Svg\nV5MskTQ6z+BSYwYuNWbgUmMGLjVm4FJjF/UueleHH7lz7gnSJDyDS40ZuNSYgUuNGbjUmIFLjRm4\n1JiBS40ZuNSYgUuNGbjUmIFLjRm41JiBS40ZuNSYgUuNGbjUmIFLjRm41JiBS40ZuNSYgUuN+beq\nalJ3X/vi3BMGu/ORw3NPGJ1ncKkxA5caM3CpMQOXGjNwqTEDlxobFHiStyc5meT3STaSXDv1MEk7\nN/Tr4N8BflJVn0myAA5NuEnSSFYGnuRtwEeAzwNU1RJYTjtL0hiGXKK/BzgH/CDJ40nuSXLZxLsk\njWBI4PuBa4DvVdXVwEvA7a89KMnxJOtJ1pdLT/DSbjAk8LPA2ao6tfX4JJvB/5eqOlFVa1W1tlgs\nxtwo6RKtDLyq/go8m+R9W0/dCDw56SpJoxj6LvqXgfu23kF/GvjCdJMkjWVQ4FX1BLA28RZJI/NO\nNqkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNw\nqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpsaH/+KB0Se585PDcE/6veQaXGjNw\nqTEDlxozcKkxA5caM3CpMQOXGhsUeJKvJTmT5HdJfpTkwNTDJO3cysCTHAG+AqxV1QeBfcDNUw+T\ntHNDL9H3AweT7AcOAc9NN0nSWFYGXlV/Ab4JPAM8D/y9qn722uOSHE+ynmR9uVyOv1TSRRtyif4O\n4CbgSuBdwGVJbnntcVV1oqrWqmptsViMv1TSRRtyif5R4I9Vda6q/gU8AFw37SxJYxgS+DPAsSSH\nkgS4EdiYdpakMQx5DX4KOAmcBn679WtOTLxL0ggGfT94Vd0F3DXxFkkj8042qTEDlxozcKkxA5ca\nM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxoz\ncKkxA5caM3CpMQOXGjNwqTEDlxozcKmxVNX4HzQ5B/x5wKGHgRdHHzCdvbR3L22FvbV3N2x9d1W9\nc9VBkwQ+VJL1qlqbbcBF2kt799JW2Ft799JWL9GlxgxcamzuwE/M/P+/WHtp717aCntr757ZOutr\ncEnTmvsMLmlCswWe5GNJ/pDkqSS3z7VjlSSXJ/llko0kZ5LcOvemIZLsS/J4kofm3rKdJG9PcjLJ\n77d+j6+de9N2knxt6/Pgd0l+lOTA3Ju2M0vgSfYB3wU+DlwFfDbJVXNsGeAV4OtV9QHgGPDFXbz1\nfLcCG3OPGOA7wE+q6v3Ah9jFm5McAb4CrFXVB4F9wM3zrtreXGfwDwNPVdXTVbUE7gdummnLtqrq\n+ao6vfXjf7L5CXhk3lXbS3IU+CRwz9xbtpPkbcBHgHsBqmpZVX+bd9VK+4GDSfYDh4DnZt6zrbkC\nPwI8e97js+zyaACSXAFcDZyad8lK3wZuA16de8gK7wHOAT/YejlxT5LL5h51IVX1F+CbwDPA88Df\nq+pn867a3lyB53We29Vv5yd5C/Bj4KtV9Y+591xIkk8BL1TVY3NvGWA/cA3wvaq6GngJ2M3vx7yD\nzSvNK4F3AZcluWXeVdubK/CzwOXnPT7KLr7USfJmNuO+r6oemHvPCtcDn07yJzZf+tyQ5IfzTrqg\ns8DZqvrPFdFJNoPfrT4K/LGqzlXVv4AHgOtm3rStuQL/DfDeJFcmWbD5RsWDM23ZVpKw+Rpxo6q+\nNfeeVarqjqo6WlVXsPn7+ouq2pVnmar6K/BskvdtPXUj8OSMk1Z5BjiW5NDW58WN7OI3BWHzEukN\nV1WvJPkS8FM234n8flWdmWPLANcDnwN+m+SJree+UVUPz7ipky8D9239Qf808IWZ91xQVZ1KchI4\nzeZXVx5nl9/V5p1sUmPeySY1ZuBSYwYuNWbgUmMGLjVm4FJjBi41ZuBSY/8GCekKTdz0TScAAAAA\nSUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Create sample array 10 by 10 from zeroes \n",
"# It's important dtype=np.uint8\n",
"X = np.full((10, 10, 3), 70, dtype=np.uint8)\n",
"\n",
"# Fill two rectangles with ones\n",
"X[2:5, 2:5, :] = [50, 127, 200]\n",
"X[6:8, 6:8, :] = [200, 127, 50]\n",
" \n",
"# Finally, show binary image \n",
"plt.imshow(X)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Plot pixel value distribution\n",
"\n",
"As shown in plot below, our sample binary image consists from 0 and 1."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<BarContainer object of 10 artists>"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"H = np.histogram(X)\n",
"plt.bar(H[1][:-1], H[0], width=10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Find contours"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[array([[[6, 6]],\n",
" \n",
" [[6, 7]],\n",
" \n",
" [[7, 7]],\n",
" \n",
" [[7, 6]]], dtype=int32), array([[[2, 2]],\n",
" \n",
" [[2, 4]],\n",
" \n",
" [[4, 4]],\n",
" \n",
" [[4, 2]]], dtype=int32)]"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"gray = (cv2.cvtColor(X, cv2.COLOR_BGR2GRAY)).astype(np.uint8)\n",
"ret,thresh = cv2.threshold(gray,\n",
" int(X[:, :, 0].mean()),\n",
" int(X[:, :, 1].mean()),\n",
" 0)\n",
"_, contours, hierarchy = cv2.findContours(thresh, # Source image\n",
" cv2.RETR_TREE,\n",
" cv2.CHAIN_APPROX_SIMPLE # only coordinates of corners \n",
" )\n",
"\n",
"# Show contours\n",
"contours"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Plot mask"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132ba380048>"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"mask = np.zeros(shape=(X.shape[:2]), dtype=np.uint8)\n",
"\n",
"cv2.drawContours(mask, contours, -1, (1,1, 0), cv2.FILLED) \n",
"\n",
"plt.imshow(mask)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Subtract background"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132ba3cf0b8>"
]
},
"execution_count": 31,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAPgAAAD8CAYAAABaQGkdAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAACV5JREFUeJzt3U2oZgUdx/Hvr7mJzZQUtGpGGoWw\nIgjlIpNCC8fAXtBNCwWD3MymUiMIbSPuRWoRwkVr06CLyUVI9ALVokWD11HQ8WaIlV5fyBa90GYS\n/y3uE4zm3OfM3HM89/77fkCY5/HMMz+G+/Wc5+V6U1VI6uk9cw+QNB0DlxozcKkxA5caM3CpMQOX\nGjNwqTEDlxozcKmxlSkeNIkfj5MmVlVZdoxncKkxA5caM3CpMQOXGjNwqTEDlxozcKmxQYEnuSHJ\nc0meT3LX1KMkjSPL/pdNSfYBfwA+B2wCjwO3VNWz2/weP+giTWysD7pcDTxfVS9U1RngEeCmnY6T\nNL0hgR8EXjrr9ubivrdIcizJepL1scZJ2pkhn0V/p8uA/7kEr6o1YA28RJd2iyFn8E3g0rNuHwJe\nmWaOpDENCfxx4GNJLktyEXAz8JNpZ0kaw9JL9Kp6I8nXgZ8D+4AfVNXpyZdJ2rGlb5Nd0IP6HFya\nnN8PLv2fM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNw\nqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGhvy88Hbu+qe3809YXan7j0y\n9wRNwDO41JiBS40ZuNSYgUuNGbjUmIFLjS0NPMmlSX6dZCPJ6SR3vBvDJO3ckPfB3wC+VVWnknwA\neCLJL6vq2Ym3SdqhpWfwqnq1qk4tfv1PYAM4OPUwSTt3Xs/BkxwGrgROTjFG0rgGf1Q1yfuBHwN3\nVtU/3uHfHwOOjbhN0g4NCjzJe9mK+3hVPfpOx1TVGrC2OL5GWyjpgg15FT3AQ8BGVd0//SRJYxny\nHPxa4CvAdUmeWvzzhYl3SRrB0kv0qvotkHdhi6SR+Uk2qTEDlxozcKkxA5caM3CpMQOXGjNwqTED\nlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOX\nGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpscGBJ9mX5Mkkj005SNJ4zucM\nfgewMdUQSeMbFHiSQ8AXgQennSNpTEPP4N8Fvg28ea4DkhxLsp5kfZRlknZsaeBJvgT8paqe2O64\nqlqrqtWqWh1tnaQdGXIGvxa4McmfgEeA65L8aNJVkkaxNPCquruqDlXVYeBm4FdVdevkyyTtmO+D\nS42tnM/BVfUb4DeTLJE0Os/gUmMGLjVm4FJjBi41ZuBSY6mq8R80Gf9BJb1FVWXZMZ7BpcYMXGrM\nwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszA\npcYMXGrMwKXGzutnk0nn63f3XDX3hMGO3Htq7gmj8wwuNWbgUmMGLjVm4FJjBi41ZuBSY4MCT/LB\nJCeS/D7JRpLPTD1M0s4NfR/8e8DPqurLSS4C9k+4SdJIlgae5BLgs8BXAarqDHBm2lmSxjDkEv1y\n4HXgh0meTPJgkgMT75I0giGBrwBXAQ9U1ZXAv4C73n5QkmNJ1pOsj7xR0gUaEvgmsFlVJxe3T7AV\n/FtU1VpVrVbV6pgDJV24pYFX1WvAS0muWNx1FHh20lWSRjH0VfRvAMcXr6C/ANw23SRJYxkUeFU9\nBXjpLe0xfpJNaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYM\nXGrMwKXGDFxqzMClxgxcaszApcYMXGrMwKXGDFxqzMClxgxcaszApcYMXGosVTX+gybjP6ikt6iq\nLDvGM7jUmIFLjRm41JiBS40ZuNSYgUuNGbjU2KDAk3wzyekkzyR5OMnFUw+TtHNLA09yELgdWK2q\nTwH7gJunHiZp54Zeoq8A70uyAuwHXplukqSxLA28ql4G7gNeBF4F/l5Vv3j7cUmOJVlPsj7+TEkX\nYsgl+oeAm4DLgI8AB5Lc+vbjqmqtqlaranX8mZIuxJBL9OuBP1bV61X1b+BR4JppZ0kaw5DAXwSO\nJNmfJMBRYGPaWZLGMOQ5+EngBHAKeHrxe9Ym3iVpBH4/uLRH+f3g0v85A5caM3CpMQOXGjNwqTED\nlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOXGjNwqTEDlxozcKkxA5caM3CpMQOX\nGjNwqTEDlxozcKkxA5caM3CpsZWJHvevwJ8HHPfhxbF7xV7au5e2wt7auxu2fnTIQZP88MGhkqxX\n1epsA87TXtq7l7bC3tq7l7Z6iS41ZuBSY3MHvjbzn3++9tLevbQV9tbePbN11ufgkqY19xlc0oRm\nCzzJDUmeS/J8krvm2rFMkkuT/DrJRpLTSe6Ye9MQSfYleTLJY3Nv2U6SDyY5keT3i7/jz8y9aTtJ\nvrn4OngmycNJLp5703ZmCTzJPuD7wOeBTwK3JPnkHFsGeAP4VlV9AjgCfG0Xbz3bHcDG3CMG+B7w\ns6r6OPBpdvHmJAeB24HVqvoUsA+4ed5V25vrDH418HxVvVBVZ4BHgJtm2rKtqnq1qk4tfv1Ptr4A\nD867antJDgFfBB6ce8t2klwCfBZ4CKCqzlTV3+ZdtdQK8L4kK8B+4JWZ92xrrsAPAi+ddXuTXR4N\nQJLDwJXAyXmXLPVd4NvAm3MPWeJy4HXgh4unEw8mOTD3qHOpqpeB+4AXgVeBv1fVL+Zdtb25As87\n3LerX85P8n7gx8CdVfWPufecS5IvAX+pqifm3jLACnAV8EBVXQn8C9jNr8d8iK0rzcuAjwAHktw6\n76rtzRX4JnDpWbcPsYsvdZK8l624j1fVo3PvWeJa4MYkf2Lrqc91SX4076Rz2gQ2q+q/V0Qn2Ap+\nt7oe+GNVvV5V/wYeBa6ZedO25gr8ceBjSS5LchFbL1T8ZKYt20oStp4jblTV/XPvWaaq7q6qQ1V1\nmK2/119V1a48y1TVa8BLSa5Y3HUUeHbGScu8CBxJsn/xdXGUXfyiIEz33WTbqqo3knwd+Dlbr0T+\noKpOz7FlgGuBrwBPJ3lqcd93quqnM27q5BvA8cV/6F8Abpt5zzlV1ckkJ4BTbL278iS7/FNtfpJN\nasxPskmNGbjUmIFLjRm41JiBS40ZuNSYgUuNGbjU2H8ARaIFqplu8awAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"img_masked = cv2.bitwise_and(X, X, mask=mask)\n",
"plt.imshow(img_masked)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Show results"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Image shape: (10, 10, 3) | image type: uint8 | mask shape: (10, 10) | mask type: uint8\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132ba474cc0>"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABHsAAAFrCAYAAABBv4XSAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAE+9JREFUeJzt3U+I5HeZx/HPs+l0ZiauKMRL/rCJ\nIO4GYZMwuBMDHowQXUUve4igsF5yWTWKILqHhHgW0YMIQ9SLQQ9jDiJi3EU9LCTBOAloHIUQNRkT\nMYFdDSJ2gt89dPfYGYfqajNVv6qnXy8QMm07PPzomY+8U9VdY4wAAAAA0MPfTX0AAAAAABeP2AMA\nAADQiNgDAAAA0IjYAwAAANCI2AMAAADQiNgDAAAA0IjYAwAAANCI2AMAAADQiNgDAAAA0IjYAwAA\nANDIxiJ+083NzXH06NFF/NYAa+2Pf/xjtra2auo7prRZl40juXzqMwBW0gv53+fHGK+b+o4pVdWY\n+gaAFTbXTiwk9hw9ejQnTpxYxG8NsNYeeuihqU+Y3JFcnn+pW6c+A2Al/fc49aupbwBgpc21E97G\nBQAAANCI2AMAAADQiNgDAAAA0IjYAwAAANCI2AMAAADQiNgDAAAA0IjYAwAAANCI2AMAAADQiNgD\nAAAA0IjYAwAAANDIXLGnqt5RVT+vqieq6pOLPgqA9WInAJjFTgAs176xp6ouSfKFJO9Mcn2S91XV\n9Ys+DID1YCcAmMVOACzfPK/seXOSJ8YYT44xtpJ8Pcl7F3sWAGvETgAwi50AWLJ5Ys9VSZ7e8+uz\nOx8DgMROADCbnQBYso05Pqcu8LHxV59UdUeSO5LkyJEjr/AsANbIvjvxso3IsWXcBMDqONBOAPDK\nzfPKnrNJrtnz66uTPHP+J40xTo4xjo8xjm9ubl6s+wBYffvuxN6NuDSXLfU4ACZ3oJ1Y6mUATc0T\ne36Y5A1VdV1VbSa5Pck3F3sWAGvETgAwi50AWLJ938Y1xnipqj6U5IEklyT58hjj8YVfBsBasBMA\nzGInAJZvnu/ZkzHGt5N8e8G3ALCm7AQAs9gJgOWa521cAAAAAKwJsQcAAACgEbEHAAAAoBGxBwAA\nAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAA\noBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACg\nEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKAR\nsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGx\nBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgkY2p\nD+js+Zs/PfUJJLniwbumPgHgrzzwzGNTn0CS2668YeoTAC7oprsfmvoEkpy+58TUJ8DfxCt7AAAA\nABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAA\nGhF7AAAAABoRewAAAAAaEXsAAAAAGtk39lTVNVX1/ao6U1WPV9WdyzgMgPVgJwCYxU4ALN/GHJ/z\nUpKPjzFOV9XfJ/lRVf3XGOOnC74NgPVgJwCYxU4ALNm+r+wZYzw7xji9888vJDmT5KpFHwbAerAT\nAMxiJwCW70Dfs6eqrk1yY5KHF3EMAOvNTgAwi50AWI553saVJKmqVyX5RpKPjjF+f4H//o4kdyTJ\nkSNHLtqBAKyHWTvxso3IsQmuA2Bq8+4EAK/cXK/sqapLs/0X831jjPsv9DljjJNjjONjjOObm5sX\n80YAVtx+O7F3Iy7NZcs/EIBJHWQnln8dQD/z/DSuSvKlJGfGGJ9d/EkArBM7AcAsdgJg+eZ5Zc8t\nST6Q5G1V9djOf/51wXcBsD7sBACz2AmAJdv3e/aMMf4nSS3hFgDWkJ0AYBY7AbB8B/ppXAAAAACs\nNrEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKAR\nsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGx\nBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEH\nAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcA\nAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAA\nAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAA\noBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoJG5Y09VXVJVj1bVtxZ5\nEADryU4AMIudAFieg7yy584kZxZ1CABrz04AMIudAFiSuWJPVV2d5F1J7l3sOQCsIzsBwCx2AmC5\n5n1lz+eSfCLJnxd4CwDry04AMIudAFiifWNPVb07yW/HGD/a5/PuqKpHquqRra2ti3YgAKttnp3Y\nuxEv5k9LvA6AqR10J5Z4GkBb87yy55Yk76mqXyb5epK3VdVXz/+kMcbJMcbxMcbxzc3Ni3wmACts\n353YuxGX5rIpbgRgOgfaiSkOBOhm39gzxvjUGOPqMca1SW5P8r0xxvsXfhkAa8FOADCLnQBYvoP8\nNC4AAAAAVtzGQT55jPGDJD9YyCUArD07AcAsdgJgObyyBwAAAKARsQcAAACgEbEHAAAAoBGxBwAA\nAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgEbEHAAAAoBGxBwAAAKARsQcAAACgkY2pD+js\nigfvmvoEAFbUbVfeMPUJAKyw0/ecmPoEYI15ZQ8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IP\nAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjYg8A\nAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAA\nAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAA\nQCNiDwAAAEAjYg8AAABAI2IPAAAAQCMbUx8Ah8Gnb35+6hNWwl0PXjH1CQAr54FnHpv6hJVw25U3\nTH0CwEp66O6bpj5hJZy45/TUJ6wVr+wBAAAAaETsAQAAAGhE7AEAAABoROwBAAAAaETsAQAAAGhE\n7AEAAABoROwBAAAAaETsAQAAAGhE7AEAAABoROwBAAAAaETsAQAAAGhE7AEAAABoZK7YU1WvqapT\nVfWzqjpTVTcv+jAA1oedAGAWOwGwXBtzft7nk3xnjPFvVbWZ5NgCbwJg/dgJAGaxEwBLtG/sqapX\nJ3lrkn9PkjHGVpKtxZ4FwLqwEwDMYicAlm+et3G9PslzSb5SVY9W1b1VdfmC7wJgfdgJAGaxEwBL\nNk/s2UhyU5IvjjFuTPKHJJ88/5Oq6o6qeqSqHtnaEuoBDpF9d2LvRryYP01xIwDTOdBOTHEgQDfz\nxJ6zSc6OMR7e+fWpbP9l/TJjjJNjjONjjOObm5sX80YAVtu+O7F3Iy7NZUs/EIBJHWgnln4dQEP7\nxp4xxm+SPF1Vb9z50K1JfrrQqwBYG3YCgFnsBMDyzfvTuD6c5L6d75z/ZJIPLu4kANaQnQBgFjsB\nsERzxZ4xxmNJvKQSgAuyEwDMYicAlmue79kDAAAAwJoQewAAAAAaEXsAAAAAGhF7AAAAABoRewAA\nAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAA\nABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAA\nGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAa\nEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoR\newAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAa2Zj6ADgM7nrw\niqlPAGBF3XblDVOfAMAKO3HP6alPYA15ZQ8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAA\nQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjYg8AAABAI2IPAAAAQCNiDwAAAEAjc8WeqvpY\nVT1eVT+pqq9V1ZFFHwbA+rATAMxiJwCWa9/YU1VXJflIkuNjjDcluSTJ7Ys+DID1YCcAmMVOACzf\nvG/j2khytKo2khxL8sziTgJgDdkJAGaxEwBLtG/sGWP8OslnkjyV5NkkvxtjfHfRhwGwHuwEALPY\nCYDlm+dtXK9N8t4k1yW5MsnlVfX+C3zeHVX1SFU9srW1dfEvBWAlzbMTezfixfxpijMBmMhBd2KK\nGwG6medtXG9P8osxxnNjjBeT3J/kLed/0hjj5Bjj+Bjj+Obm5sW+E4DVte9O7N2IS3PZJEcCMJkD\n7cQkFwI0M0/seSrJiao6VlWV5NYkZxZ7FgBrxE4AMIudAFiyeb5nz8NJTiU5neTHO/+bkwu+C4A1\nYScAmMVOACzfxjyfNMa4O8ndC74FgDVlJwCYxU4ALNe8P3odAAAAgDUg9gAAAAA0IvYAAAAANCL2\nAAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYA\nAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAA\nAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAA\nADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAA\nNCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0IvYAAAAANCL2AAAAADQi9gAAAAA0\nUmOMi/+bVj2X5Fev4Le4IsnzF+mcdeY5eAa7PIdtHZ7DP4wxXjf1EVO6CBuR9PhauBg8B89gl+fQ\n5xnYCTtxsXgG2zyHbZ5Dn2cw104sJPa8UlX1yBjj+NR3TM1z8Ax2eQ7bPAd2+VrY5jl4Brs8B8+A\nl/P14Bns8hy2eQ6H7xl4GxcAAABAI2IPAAAAQCOrGntOTn3AivAcPINdnsM2z4Fdvha2eQ6ewS7P\nwTPg5Xw9eAa7PIdtnsMhewYr+T17AAAAAPjbrOorewAAAAD4G6xU7Kmqd1TVz6vqiar65NT3TKGq\nrqmq71fVmap6vKrunPqmKVXVJVX1aFV9a+pbplBVr6mqU1X1s52viZunvmkKVfWxnT8PP6mqr1XV\nkalvYhp2wk7sddg3IrETu+wEu+yEndjLTtiJXYdxJ1Ym9lTVJUm+kOSdSa5P8r6qun7aqybxUpKP\njzH+KcmJJP9xSJ/DrjuTnJn6iAl9Psl3xhj/mOSfcwifRVVdleQjSY6PMd6U5JIkt097FVOwE+fY\nib847BuR2Ak7wTl24hw78Rd2wk4c2p1YmdiT5M1JnhhjPDnG2Ery9STvnfimpRtjPDvGOL3zzy9k\n+w/jVdNeNY2qujrJu5LcO/UtU6iqVyd5a5IvJckYY2uM8X/TXjWZjSRHq2ojybEkz0x8D9OwE7ET\nuw77RiR24jx2gsROJLETu+yEnTjPoduJVYo9VyV5es+vz+YQ/qW0V1Vdm+TGJA9Pe8lkPpfkE0n+\nPPUhE3l9kueSfGXn5af3VtXlUx+1bGOMXyf5TJKnkjyb5HdjjO9OexUTsRPnOeQ7cdg3IrETSewE\nL2MnzmMn7ETsxKHdiVWKPXWBjx3aHxVWVa9K8o0kHx1j/H7qe5atqt6d5LdjjB9NfcuENpLclOSL\nY4wbk/whyaF773lVvTbb/1buuiRXJrm8qt4/7VVMxE7scZh3wkacYydiJ3gZO7GHnbATsRNJDu9O\nrFLsOZvkmj2/vjqH4KVVF1JVl2b7L+b7xhj3T33PRG5J8p6q+mW2X4L7tqr66rQnLd3ZJGfHGLv/\nJuZUtv+yPmzenuQXY4znxhgvJrk/yVsmvolp2IkddsJG7LAT2+wEu+zEDjthJ3bYiW2HcidWKfb8\nMMkbquq6qtrM9jdM+ubENy1dVVW231N5Zozx2anvmcoY41NjjKvHGNdm+2vhe2OM9vV1rzHGb5I8\nXVVv3PnQrUl+OuFJU3kqyYmqOrbz5+PWHMJvLEcSO5HETiQ2YpedOMdOsMtOxE4kdmKXnTjnUO7E\nxtQH7BpjvFRVH0ryQLa/O/aXxxiPT3zWFG5J8oEkP66qx3Y+9p9jjG9PeBPT+XCS+3b+D8uTST44\n8T1LN8Z4uKpOJTmd7Z8u8WiSk9NexRTsxDl2gr3shJ1gh504x06wl504pDtRYxzat7ECAAAAtLNK\nb+MCAAAA4BUSewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAaEXsAAAAAGhF7AAAAABoRewAAAAAa\n+X/ldeBdKhJSewAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 1440x1440 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(20, 20))\n",
"\n",
"print(\"Image shape: {} | image type: {} | mask shape: {} | mask type: {}\".format(X.shape, X.dtype, mask.shape, mask.dtype) )\n",
"\n",
"plt.subplot(131)\n",
"plt.imshow(X)\n",
"plt.subplot(132)\n",
"plt.imshow(mask)\n",
"plt.subplot(133)\n",
"plt.imshow(img_masked)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Example 3. Real image\n",
"\n",
"This example shows approach for real image"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Read image \n",
"image = cv2.imread('kick.jpeg').astype(np.uint8)\n",
"\n",
"# Get contours\n",
"gray = (cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)).astype(np.uint8)\n",
"ret,thresh = cv2.threshold(gray,\n",
" int(image[:, :, 0].mean()),\n",
" int(image[:, :, 1].mean()),\n",
" 0)\n",
"_, contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)\n",
"\n",
"# Create mask\n",
"mask = np.zeros(shape=(gray.shape), dtype=np.uint8)\n",
"cv2.drawContours(mask, contours, -1, (1,0,0), cv2.FILLED) \n",
"mask = (~(mask == 1) * 1).astype(np.uint8)\n",
"\n",
"# cut off background\n",
"img_masked = cv2.bitwise_and(image, image, mask=mask)"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Image shape: (10, 10, 3) | image type: uint8 | mask shape: (561, 990) | mask type: uint8\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x132b8285630>"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABIcAAADdCAYAAAAhKxIZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzsvXm8XVV5//9eezjjnW8SkhCCQMIo\nyGhpv45FqCAWWweE1+urtvWHtlAtWMX2WytWRRxAyrdqZ0Fb9auWUgUtCFIRlEBUpgCBxARyM92b\nmzudeQ/r98fNPuy7s89477lD8rxfr/PKzd57rfWstfc++6zPfp5nKa01giAIgiAIgiAIgiAIwuGJ\nsdAGCIIgCIIgCIIgCIIgCAuHiEOCIAiCIAiCIAiCIAiHMSIOCYIgCIIgCIIgCIIgHMaIOCQIgiAI\ngiAIgiAIgnAYI+KQIAiCIAiCIAiCIAjCYYyIQ4IgCIIgCIIgCIIgCIcxHRGHlFJvVEptVkptUUp9\ntBNtCIIgCEsXeU4IgiAI9ZDnhCAIwvyitNZzW6FSJvAccD4wBDwKXKa1fnpOGxIEQRCWJPKcEARB\nEOohzwlBEIT5pxOeQ68Etmitf621rgDfAi7pQDuCIAjC0kSeE4IgCEI95DkhCIIwz3RCHDoS2BH6\n/9CBbYIgCIIA8pwQBEEQ6iPPCUEQhHnG6kCdKmbbQbFrSqkrgCsA0un0WUcffXQHTJkdSsV1ZX7r\na7VM3PFa67r1zGc/G9kyX3YcKrQbFqqUaqtsUCYY27kOS422U2tfYH87/WjX5mbLzfWY7N69m/Hx\n8UPtYm75OWFinpWhp9N2CYIgLDlK5Kno8mH/nADO6qhFgiAISxitdcPnRCfEoSHgqND/1wC7ogdp\nrf8R+EeAk046Sd92221tN9gpEUAp1dTkM9x+nC2GYcRuD+pvdV+9Y+LKBJNo0zTr2h/XD8MwWu5/\nI3HIMA52WIvbNhvCY9PsZH2hxaTZiDXtlNda1yxTb3tY4PN9v2H9cddEXLlwm77vx9oQrtP3/er5\nDR8b3hbdHq23Vj89z6trX1z99fo2G971rnfNaX2LhJafEz1qQP+GOm9+rBMEQVhCbND3LbQJnaDl\n54RSqjNvrARBEA4TOiEOPQqsV0odA+wE3glc3oF2FjXRyXCrHg6NxKFWBJu4/zdTJtjWirjSSByK\na2euPC3iRKpWBJ84caxTnjGdppHdcR5c4f/PlcDRjkgXtWWxsNSviUWGPCcEQRCEeshzQhAEYZ6Z\nc3FIa+0qpa4C7gZM4F+11pvmso1mvFlmS6OJYHjyGtgTDbmpVyb4f3hb2Msi3H4zE2XDMGpO6GsJ\nJfUm7WHvjFo21/ICitocHZd2hKvZeBY1K6QthCBRy8slvD8g6gUT3V+rXED4XAbXbK3ywXiHy8Qd\na5rmQd5EQblo39oRDRuJo62IWHFeTGEPofD2cL+ibYav//D+YMxqXatz7VG0lJmP54QgCIKwdJHn\nhCAIwvzTCc8htNY/AH7QiboXI8FEOJgUxok+zRAu3w7h8uEJatwkez69H8K2tONFMpftx7FYvFTi\n7Kx1HbUzfrWEvGbLtNJmUG62NjfbTpg4wQbixZl63lL17A3usXbuc2Gaw+05IQiCILSGPCcEQRDm\nl46IQ0uNWnlR4mg2P1DgVRNMOKNeNnFeILVEjHB+lYBgYhput5EXSHTyGvboiLZdq0/Rv33fn1F/\nLQ+laLtxtsaNSdy+cJ9qUa+uVpgP4ajV8LegTPSaiMvrU6/eOJEuuCYaCVXh46PXiud5dUMUG3kE\n1Tom6mEV9SAMjg/uuWj5OO+6aD9r5TqKI7hvwjbV8w6SsDRBEARBEARBEBYrIg7NA43CuhoRJ7qE\n62w2LKpRCFIjL4hGeXya2d/IlrnaH7bnUKFWCGIczYYjtjI+zR7bynnuBLPx5mn2fhQEQRAEQRAE\nQTiUEHFoHmgn50+YwJOjk+JQM6FwS1UcOlQm87W8cerRauLyuTg2PObzKQ7FtdmJJNiHyvUkCIIg\nCIIgCIIQsOTEoVqJe2dDo7wlceEpceE0cXaG8wBF7Q621QsnC4ecBWFCjbxFwuE1QRtxnkfRv8Pb\nwsvexyXijdoX3l6L+ZxUh22dK4EiLpdNu+JDs+Ua5b2pty/a93BYV71y0Ws1KNMooXLcNRW9j+Lq\nD0LkwvWbptlUiFe0zbiwsXCYWlzfwuVbCbML74/WH/47OuZhmxvlQRIEQRAEQRAEQZgPlpw4NF80\n8nJpxYumnhdOvfabKd+KB02nJ531Jv/hf2dTfyeYTb3tlp2tx89ctdOoXLt2tNPubL3FmhEna12b\nrdCsnc2MnQhBgiAIgiAIgiAsBkQcqkEtcSjqNdOMeNNpcajZSWi74TbN0oo41E77S10cakWU6IQ4\n1I6X01yKQ7MNcevEmLUzPvU894L9jRJv16tLwtYEQRAEQRAEQZhvFq04VM8jp5P1B7Sygllc3Uqp\nGaFg0dCUsIASF3oTJgjxipaPlo0SDmlrdGyj/kTtq+VNFbQTZ2u9+ht5dDRzLloVaubCm6qZUL96\n26NhT1FqiZSNRIW4PFVxfY4LqwqHQTUao7gQrXBIYlDW87zYftVbmSyun4E94VUA6/Uv3EaczVHC\n4YJRG1q959oNgZ1NWUEQBEEQBEEQhHZYdOJQO7lcFhPtCA5xy8g3c9xc1Nls+XAdc+3BEyc4xYka\nnaLeuDbKs1Mvp1S7bdba3079cXmSatXZzj0XCKCBSNZO+YC4sQ6LSmHRqV5dzZ6zZo5th0DwCxMW\ntARBEARBEARBEBYbi0Ycmq13S636onU2O4Gt5SETeASF6w57LET3hb2G6nlxRCfucTZrrasT5PBE\nM86zIWgzLKzUGpO4hLu19tcLZWvGGyduLKLtRW1t5FFTywOrHtGxqmdvM/VE/25FCIh6w8BMcadZ\nYaEdcWa291tgV5wgEm6j3jUTEPWYMQwj9roM7oPomMSNUTRhdNBOrTaboVEoWpz3FYBlWTM8nuq1\nGb6POimMCoIgCIIgCIIgwCIShzpJK5Or2YSRtRIKFy7TTsLpOFFitv1sVpBpJOQ0srkTnkdzedxs\ny8x3W7Oh3TZrhX1F9zdqay49BDs95s32SRAEQRAEQRAEYalx2IlDzXqCtOpJ0EgUqZU7ZbGIQ/XC\nusL743LENBKHauVumSuaFR1EHJq7NpeiODTba2Ih+iQIgiAIgiAIgjAfLFlxaLaTurhtpmnWDMGK\nih61Qslq2ReuN1pPNHF0nK3hUKxadUe3tbL6UjQsKC5XTb0kwVF7a+0P7AonYg630Q5xdsWFasXZ\n2el8RrMlfB7bDY+sR9y5iobHhccpHLJYy6a45NNxdoSTtbd6HsLH1wsbq9fXWvvrCZ/NlA+OjV5/\n4eOWwrUnCIIgCIIgCMLhw5IVh+aTqBdPLaFnoZmtLZ0Ov5tLlpKts6Weh1mYTnistCKOzLb+ThPn\nFdjIA2q29YcRMUgQBEEQBEEQhMWKiENNEA0BWwriULtLaHfi2E7QSjjPQts6W+LEoWa94eai7bi/\nO1F/p8OxaolDcd58c1V/mEaJ3wVBEARBEARBEBaKJSkO1VsZqVniJr213uyHV4wK9rcSBlWrTHTS\n3ygUrV64TFi4CvcnbvW0ZsLSAsKrQoXLtyMkxU3Am62r1XMeN+Zh+5tZWW0x0UzfG4X3zabd6LUY\nXaUsukJXQDR8MLovzu56tkTbD5/PVsIog/rC10fcvRgNFQt/BwT7oyFi4T6H/46Ky+E2RSQSBEEQ\nBEEQBGEhWZLi0FwQFQ06STsiRFiEaWVZ9DjicgbF5edppXzc/mbLR8s0O/6NyrR7TmeT76jTtHLu\n4/rfqWu7Xs6hVq71ONGvmZxB4WuxXl9rCZO1ruVwHqTo/mgupWj9wd+zvV8FQRAEQRAEQRDmm8NO\nHGoU+hGe2BmGMePNfzhhdbRMXF6iOC+bRkJMXB2maTbVp6Bfga3hbfVsakRcot24/Y1ElnZDd1r1\ndppLW1oZp/B10IhWvVya2d7MeWrWS2UuQgzD3j21bIgmDA/fn+Fk2HFePtH6wu1Ez0W9UK9o+XC7\n4Taj4lu0zloJqcPeTdHvikZC0lLxbBMEQRAEQRAEYWlz2IlDjWg0maxVpp441Gna8dhYjCx1+5cS\nS2WsWxHHAhrdu4363sr+Vj2zGgnDgiAIgiAIgiAIC4GIQxE6IQ41qmu2YU2Hujgk+VjmnkbXymIZ\n8/kUh5pduWw2HnCt7l8s50EQBEEQBEEQhEObJSEORcWTaFLYRjRzbDTUI2gzGhYSV1ctL6FwWEm9\nNuPCspoJi4q2GdjdrtgUVy4ugW54LOZCkIqGC0XDbZoNEWtGXArbHw0nandyHoQfzZXIF91WL6Fz\nK/ltmsmLE20rLqdQ+O+wfa2IJtFzHoRyhbeZplnTllr9CyfKjtsfrqfe9RIn7MatNhY9P/USp4fP\nV3Sco30VBEEQBEEQBEGYT5aEODTfzGaS345YMluBJZi0zlcY21ww29Ce+aIZO5diAuKFGN/ZtjlX\nNs8mLKxWfYHw02xybUEQBEEQBEEQhMWEiEMxRN/+txM6MpfhJs2ymFfditLJvC5zSSM763mKLGba\nueZm28/ZntO5uiY6IQ7VSjAt4pAgCIIgCIIgCEuBRSsO1ZvANRsmVo9oSEdcSFijvwMCr51o+SA8\nJRqCFfb0ibM7uj1utbHo8dF2ai3rXSsErhbRcJdo2VphWa0sce77FhguyvTRvgm+gWn4B5WvRavX\nQ3Q848aq3jmaaXtrIY6tUi8EqlaYY726gn7VW/Y9rv1G++uFxMUd2454GhdiV+++jS5ZX+s81wrb\ni45vXBhf9J6qJxYG2+PGLBzKGrVdEARBEARBEASh0yxacajTxOW5aTdEKCrQ1Npfq81m87PEiSzN\n1hFXTyeJy59Uy0bLcEF5KK0ADfi0My2u5TnVaKLdyL522mxE3FLurbS12EPZAiGl3TxE4TLNnpeo\niBTeFm6/kXDZrjDTrNdg3HkUDyNBEARBEARBEBaShjNbpdS/KqWGlVJPhbYNKKV+pJR6/sC//Qe2\nK6XULUqpLUqpJ5RSZ7ZqUDt5c6Jv76Pl4zxAggTCYWEgnHw6TL2JZtQjqNb+2Uz+oh4QccJSLc+N\noH/1chLFeaAEYxNONhwex6gN9WyM9iPqlWNYPpZlgTbR+iVPLt/3q3lclFIzPLxaEfTCtjf7qZXQ\nuN511g6t2BSmWftq9atR/c3eR7UEkbAXW61P1HsvWm/0mmrU12B7OPdPnH3hbbXOY/R6D98HwT7T\nNA+6J6K2BWXD13GjcV6KqHl+TgiCIAhLC3lOCIIgLH6acXu4FXhjZNtHgfu01uuB+w78H+BCYP2B\nzxXAV+bGzNkxW6Emrlx0khv9tEMr4kC0f/XabNTfWpPa2djd6LjwBL6CouQZeCpN2bMpawPXdQGm\nRaMDeJ6HZVkztjXTv3p21jqn8zVpb0bQWUgBwTTN6meu7YsKKGFmm1NoNmO20OWXKLeyxJ8TgiAI\nQke5FXlOCIIgLGoaikNa6weA/ZHNlwC3Hfj7NuAtoe1f09M8DPQppVbNlbHtIuJQvCdMdP9CiUMl\nT7N7eJJbv/5tvv6N/6BQ1mQyGdLpNMlkspqPJZFIUC6X8Tyvpf7Vs1PEofqEr+m5tC/qyRYnDrUb\nOrfQ4s5Cn7OF4FB4TgiCIAidQ54TwnxwxR/9I+f99vUcufqChTZFEJYk7eYcOkJrvRtAa71bKbXi\nwPYjgR2h44YObNtdr7J2JlKNEuXWa6tVW8IT2OiENhoqEg6ZCh8biEhxdkTLR+sM19Gs+BI9rl3P\nomhC6no0Os5XGgsfU4PS4GFiJrLsenoPH7rm/5IvaLY8/xMeuv9uPD9PuVzmoosu4pJLLmHNmjVM\nTEyQTqepVCoN247rUyOxodkkzTX714aYMRshsZlV9Wpdc3G2xl0vtfoft7/Z6y0gzv6w4FpP8KuX\nPyjYXuveDO9vZsyCOgJBMzx24dDLVvp+mDCnzwlBuHvXY7Hbf2f16fNsiSAIc4Q8J4Q544MfuJVN\nm3bzwgvbWHVkP8nkcSgDstkspVKJ3//93+eGG25YaDMFYVEz1wmp42aSsTMlpdQVTLuKsnLlypYb\nmstl2xvVFXiuRPO1BIQng3F5WYJcRp1aar5WwupF572gDXwFhvJwlMZXBi/uGOKP//hv8bwkhuly\nxKpunnxiA1opuru7+fKXv8xdd93F5ZdfzmWXXUY+nz8orCyYrEdXe4rSzvi3MtHv1PmNI87jppHQ\nEb1OG9Vdq85w+bkUQgKhJbxyV1iIiRNa51OUCZJsz+d5PkRp6zmRItNJm4RFTi1hKLxPRCJBOGRo\n6zkhHN7c9YMneHFoK+vW97N392YG+20c38T3ffr6+rj33ns599xzefjhhxfaVEFYtLQ7y9kbuHce\n+Hf4wPYh4KjQcWuAXXEVaK3/UWt9ttb67P7+/pYan4vJWdi7JpwkOS5hb1xi2mhy5eATHB9OBG3b\nNpZlVfdFE9mG+xQuH66zUQhPXMLpRqE5UVuj9dVblruWrXE2v2SQAVrhojDsFFMF+NKX/h07uYod\nO19g775nKZX3Ypl+NYQsmUyyc+dOrr/+ej7xiU9g2zZaayzLqiYxNgwjNg/RXIRlLdYQobhQrzji\nxqDWOW3Uz3rJoYPrOjgntTzwwvdUtGw0SXycLXHlo9saJbEOt1vrmm1GPAu3U+s+Dd/rtWyO9jtq\n3xJmTp8TNsmOGissXuoJQ9Hjmj1WEIRFwZw+JzpqqbCoWXfy2zliVT/Hre9hYvIZEqlSdR7keR6l\nUgnDMCgUCpx+urxIEIRatDvz+B7w7gN/vxv4r9D2d6lpzgUmAnfRQ41OiAat1LlYRYs4ZghxSqGV\niSLD567/F+74jw0UCi+y8sgKqO0k7CKmaeE4Do7j4LouiUSC7u5uvvOd7/A3f/M3uK5LsVjE8zwS\niQS2bR+Uh+hwYbZ5rg5F4kSaVu6pVupvRKPwvEOcw/45IcyedsQeEYgEYckgzwlh1rzizP8Pv7Kc\nTZt+SMXdTCq7j1TKoVz08LyXPqVSiWQySSKR4OSTT15oswVhUdLMUvbfBH4OnKCUGlJK/RFwA3C+\nUup54PwD/wf4AfBrYAvwT8CfdMTqRcBiEocC76fFStVGQ6MM0Jj88Ac/5Ve/2MaRR5zGc1vuZ2zi\nSezUOHbCpVhyq4KH7/sUCgUqlQrZbJY77riDq6++mvHxcVzXpVAoAOA4zgL3cmEQcehgRByaf+Q5\nISw2RCAShMWFPCeETvC6i97P2qPWsaynj+7sGPiToBVFx6CsrKqXveM4eJ7H1NQU5XKZTCbD2WeL\ns5kgRGmYc0hrfVmNXefFHKuBK2drVD2aFUKaCbmpVaZeu0G4RzR5bvi48N/hHCXRnDi1JrC1EiPH\nbQ/CeOpRr95WCPetYV3KA6bDyAxl4routuFT0Qb7Jlyu+8zNrOo/EbdUYvmAxrQAnaToTHsWWdrD\nMAwcx8GyLMrlMlpr0uk0nueRyWRIpVLAtDCUTqfRWuN53owcUfUSFi915roPYaGpHTEjsCfIzRP8\nHSdeBfvrJZbXWlcTojcrgIXbi/YjLkQrLN6E/64nusaVifYlrk9x92G0rrgxWAostueEcGggAo8g\nHDrIc0LoBBsffpIjV+XwHY9kwkThgjbQaLSamVrD87zqb8G9e/eyY8eOuCoF4bBmrhNSd4ROv3UP\n6m+3negEsNV6GpUJ72/Fu6HRtlbraqX89PbpT/BlrJIav5zgrv+6h6Ht+yhObMJ1iiQtf9qFTRto\nTeyXeZC7pVgs8sUvfpGuri6mpqb4+7//e3bt2sV5553H+eefTyqVqrbnui6maVaFiLiJ+uFKo/7P\nRhwKl2+lnlaODYSURoLMbGlFUIwTfwIbw8JPI/vqCWaCIDRHODm1JKwWBEE49DjjjHeTLzhoPUG+\nvJuuhIehpjOXa63QkRzmwXxibGyM8847j1tvvRWAG2+8ka985Sv09PRQLpd517vexbXXXjv/HRKE\nRcCSyHbaiRCuWu20Wy5OwGnF5mYm6+2GndWqo96nXtvN2BLe77ouAI622PjoZj798Vs47aQzWb48\niZ0eIZHQmAoMrTAAI+bLPHAJfcMb3sDAwACJRIK//Mu/5Ktf/SoPPfQQX/7yl3nTm97Ec889RyqV\nwnVdLMuqLj8endi3MhaL9bPY+tGJ8a1FIy+/RuWbpZW64o4JtkUFn2b7O1f9EISlxlx5DYXrkYTV\ngiAIhwbvu+rzDO+d4vjj1oGewE6Mo8zpFBNKT0dVBL//g6gCrTWu65JKpVi/fn21ru9973v09fVR\nqVTYtGkT3/jGN7jwwgsXpF+CsNAsCXGonbwqrU42lTrYC0Gp+BWNYOaS9XErmEXtj9oRXSGplgdE\n3CpGzawgFm43bEd4bKK21yJ6TLR83PhEQ3s8z6NcSvK5G/6BTKaPTNpmZHgrppFHGZVpUeiAOKS0\nX/0yD4ShIKzsqKOOwvd9xsbGePzxxxkYGEBrzdvf/nYSiQQXX3wx3/72t0kmk0xNTVVXiavXp8Pl\nE70+6tFKvfXuq3D4WKNrLW5/8DAPbA+OC+6D6Kp/wf7w8QHNfAdE78dom/VEsOj/o/WE7W72+6zV\n7z1BOBTolIATeA6JQCQIgrC0+fnPngFLs/n5X1EqjNGVtDBNH6V98H2U/9LL5mBOobWmVCpRKpWo\nVCrVuoaHh8nlcti2zdlnn83RRx/Njh07OPPMMxeqe4KwYCwJcWihaUVkarXOWhP1uWyr0zSyM5VK\nYVkWzzxVJJdTlLwCW7c/TjIJtlIow0drH98D35spDPi+j+u6uK5LpVJhz5491ZCxQqHA1NQUyWSS\nm2++GcdxOPbYY/ngBz/Itddee9Dy6sLSI26Z98XKUrlfBeFwRbyIBEEQDg20bzO6f4Sp4j56ejJo\nFwx1IE2FB0prjANpKoL5RKVSwbZttNY8/vjj1bqCF82Bh9Fzzz3Hueeey8qVK1m9evXCdFAQFohF\nO+NqVxyJ89KJ1hVOVBwINOF2ol4wwIzE0q2Gw9RKhFvPsyPqgRP2TAjb0ciLKLw/XG+z9pumedD2\nOM8orXV1jJRSVKwShtuNWbZJWho9leaBDY8zMjqCpfdj+sNYRhGNi+vYeBpcHFzt4aNm1Kn1dGJi\n13X5xS9+QaVSYfny5axcuZJEIsHY2BgA27ZtY3BwkEsvvZS77rqL97///UxNTeH7PkopTNOseiJF\nx2kpfKKEPc/iPo2ujbg6o4JluL44L51a7YSv0Thb4+oPt1+rT83cg82cW3jJ663ePRFnUz2vwUZt\nBp5U9c5J3DgLgtAZRCASBEFYWhy1/j0M79vF+pf10Z0s4HtTeMqhVLIoez6u4VHRHo5vHJRewvM8\nLMviySefrNb30EMP4brTKyVXKhXS6TQPPPAAJ510Eq973es46aSTuOaaaxaqu4IwryxacWi21JtU\nA1WPkqXkVVJvUt2o3Gwmm82WD6/iZnpZNC46WSHvl/jX7/4/Pn/D51Fa0dvbi2nNFN7C4lsgCoU/\nruuilOLFF1/k3nvvBeALX/gC+/btI5vNorWmv7+fZ599lqGhIa688kqef/55Lr74Yu677z4sy6JS\nqVQFIqE+7dwbje6pVq7Zesy2nmbFt7kgTmgSBKE2cy3W1EtCLWFmgiAIS4vXX/AhJvbtZ6CnD6dS\nwk5ML1ePnvmSP3h56ft+1SPIsqxqeJnrunzoQx+qljnmmGMolUpVISmdTrNhwwa+8Y1v8I53vIPb\nb79d8hAJhwWHrTjUSt6PxUK7k9r5EoeUUlXPCFvbYJVxbZPJQi/f/PbTDGS7MNCUSpMk7APeW9o8\nqD9RYSho27IsTNPklltuYdeuXRx//PFcccUV7N+/v+omCjA0NMRb3vIWvvSlL7F161Y++tGP8s1v\nflPCzFqgnXuj0T3VCVFnruqZD3Gok+0IwqHAXIo0zdYlApEgCMLSwZk6i6PWLKdSGqNU2Y9S00mo\nPf+lF8yBABT+2zAMKpUKljW9ULdpmvzbv/0bn/zkJwG49957OeGEE3Bdtxp1MD4+zpVXXsknPvEJ\ntm/fzujoKKeeeurCdFwQ5olFJw61M4GKTkrDLoTRiWq4/nrhG3EhIvVCQmrVH97eyP64eqLlwscF\nini9EJt2vY2C48PjGE3OHU2qHfRZa42mgEcRr5jhwR9OkdK/QVc3FAt70OTwKALg+S+F5wQePUG7\nSk2HgjmOg2EYVbHoscce40/+5E+oVCpce+21/OEf/iH79+8HpgWksbExLrvsMlzX5f777+eiiy7i\n+uuv58YbbySfzwNg23bDvs/HRL7ROQmHL7VKM3l6aoVbBcSFTTV7zcVdu9FrvXq91AhVjLM1CHVs\ndM9EQ0yjx0bHp5EgFuyLJuNuJEKH26s1ztH/R79/BEFonUZL2Ef3Sx4iQRCExcsV//uHZFI9OM5u\nJgsvYCXyeBSmf5O59ox5SfCvaZokk0mAaiQCTP/+TKfTfOUrX6nWf+edd7Ju3Tq01ti2jeu6/PjH\nP+Ytb3kLAI888ghHH3205CESDmkWnTjUDp14O99pL4fZijed8ESYS48KhQG+iV+E2/75GxS8HUzm\nf41n7sNMTotDrq/xXDtWTDBNk0QiURUBgi9z0zTJZrNs3LiR9773vfi+z4c+9CE+8IEPVN1BlVLs\n27ePq6++GqUUn/70p/njP/5jbr31Vq666iomJydxHAfTNGe4njY6J534LHY6ZXejetq5D+qdx7m0\nqRlBbzbtL6XrQxDmik6JMq0IROJFJAiCsHi59/7v8vBz/8T+qe1092uwi2hdxvU1vraqqxyHQ8mU\nmn65H7xYBHAcp5quIpvNsnbtWm688UYA7rrrLtatW8f+/fsxDAPbtnnyySf54Ac/CEwLSBdccAEn\nnHACf/7nf75gYyEInULEoSbqnIvy9cShINTpUBKH3LKJbab51re+x8Zf3cPGZ79OvrSPVMYDs4zW\n00vTa3965bHgCz34ALiue5CAE3hvmabJo48+ypVXXolSimuvvZa3v/3t1S973/cZHR3l3e9+Nw8/\n/DBnnnkm1113HXv27OH888+h3bK+AAAgAElEQVTnmWeeoVgs4jhObP8bjYmIQ3NTb7v74+yrt22u\nbGqm/tm0H/5XEIS5oVmBKHyMCESCIAiLhxPPeh+OlaQ7MUbWymO6ZUw3je+m8F0H08wftJgNQAUH\nzzfwvSRK22hczO4Clq1IqAyu65L3XD75hS/xZ1dPC0D33HMP11x1NftGJ8h6JimV4I7vfZ8PfOSD\nXPyOC7j11lvZvHkzv3pkI+e9/vULOSyCMOeoxZBz5+STT9Zf//rXZ1VHOBlyQK0JWr1wMqVUta64\n3DRBeFUz9Ye9GeJsCq+a1swKRe16LURXZYorE9hQb3+4/hl9wgLDBXyUMlHaxDIchnMZfvO3rqLb\nXkGhsgHlPUcikQCYkU8oupIAgKs9FCamtnA9BwwX1y6QNvrBMXFNh5KryOcMjl3bww/v+DZrjjyK\nJ556hot+93dZnemhhEcJzdpjjuYVp53C6SecyoUXXsh///fd/P0//QN/+qdX8Y5L30bFmfZMMgyj\nmrjatu15Wz59rnJftVNH9NpsJrSq2XYaHRsIfdEV+WrZFxeWFrU/GvoZFxZXy864sLFWbAmu4+Ae\nCa7vaEheuHxcWF14RQ2lFJdffjmbNm067BWjHjWgf0Odt9BmCB1gvoSYsDhUq83oMfUSWgvCYmGD\nvo9Jvf+wf04opRZ+UiN0hPNf/y0Mz+KJrV8lk3q2usBM+HdU3HxCaw3qwG8uZeJ7Ci/TRWGyjKU8\nPOXgOF2sGDiFyfxm3vSms7jtH24F4J3vvpyN9z2AmbXJ9PRQnKzw7OZneM+7/je3fu2leetvvvJc\nfv7Iw/M9JILQMlrrhs+JQ8JzSFhoQhNyrQADx0px+zc3cvrRv8dxK8+llLewrOkVBQJvnSCPUPhL\nvbpymVagK7jkQHn4FZt88WWM5/rJ+WnylQTJxImcfdq7GJ8a5G1/9H5+snEja449geuuv56eFYPk\n3UmUXeHFrds4IrmWu3703+SKeYqVIm9605u47av/zhc+ewvJZBLf90mlUtV/BUEQhEOLOA+hescE\n/xcvIkEQhIXjbW/7OwpjBuVSDtN0SCQS1cTSwUu56Mu36seffjHneB6ua+C6KZypszn7tD/kZS97\nA6nEyVz42g/zm6dcxf866/186z9+yavP/yOuufpf+NZt32DL0BDZngHGcqMkMpqXrz+Rx556umrb\numOPJZnI8Duvv3hBxkYQ5prDQhyKJnet5REQeA3BzES5Ya+GoI6wJ064fLjOuPIBYW+dOJviqOX9\nE/ZWCLcdtSnafpyHUVRxD4e7hduPK2+aNoayMUkwmivyL//yTUZGdrJjzy8w7ckZMb9hz6HoGGk9\nvSSl6xmUyialio3jpjlmxTu45IKPceyRF0DlOF53zhUst1/P6cdfznPPGLzt9z7LG1/3MTY/rvn4\nx7/IuuPPolCu4Ftlvv7dL7H5+Re44aabedXrX8eNX/wi27e/wA+/fzdXXXUV5XK5GqO8FFYzi7tm\nZhvCFr1P4sqE75FmbGzWI66VOuPuq0ZePeGyYaJ1NDOmYcL9i34nhO+VOM/GsN3h7WHPREE41Jlv\n4SUQe+p5BcXZJAKRIAjCwvCje+5h574f88vn/wXP2IHrujiOU/1dFqxIFvbghgOL3RgKx8mSG+/C\n0ytRiUFOWfc6+tLrGNsFhXGTZx7bygvP7+Jn//Mkpl5LZfzlPP5wkuWDl3HO6W8iaa/B8FczNqUp\nJVxK5QRnn/tqAFatWc3+/aNs27qFFStW8OEPf3ghh0oQZs1hIQ41muA1K5Q0U3+9SW4rE/XwsXHL\nr8f1p17/mm2rWftmVnAgHMcH7Rn4Hvzs/u2MDA/z6z3f57ndX8NOjlRDtoJxClYNiLqCaq0p41Eq\nZijnV9HXezqklpPP59n63FaGtg2hXIe7//vbPLflpzzwk//G9VKccfI7Oe7IS/jP/3qEyy5/L88+\nNU5P8ixK5ZXkSFPIm/z0wY309vdz8ZsvJJ2y2L9/lP/5n//hzW9+My+88EJ1dYKFoJG40/b56aCt\nc1VPK/1rpUzcPdJsfa0Iq+32tRFzFXIoCMLBtCr4iEAkCIIw/yzrW47dvZX04Ga6k5UZglD4E45A\nCLbl3RKFQoYTjrmI49edz3hB8cgz/8YDj36NsdyT2NkX2b7vv3h65z8yVv4prrGXkdEiu4YLTPiT\n/PqFLUyNZlm38m10qfNJqHOplCz27J0C4KcPPEipNEkyZTIwMMDtt9/O+973vgUeMUFoHxGHWPzi\nULMeDY3610xbs5r0a4X2oVL2eOrBHF12FwNHjDO4ej9JozzD5TO8bH30i1xrTVG7JBIrefVvXM6K\nZaczWdLsyd/DI8/+O475HCq7haL9INsm/o2i+TBlcxuPbXqcR558jD35beQrE2TsNaxb+RaOyFzC\nEd1vwvczTE5UuOmLN/Nn1/wp+eIEFSeH4zhMTk7y3ve+l+3bt1Mqldrr/ywRcah5UWY2ZcJE84Mt\nNnGoGc8rQViqLGaxpZZn0WK2WRAE4VDj7W/5dzAnyU/spNfsBl7yxA4nngZwUBglm5Q2yFdK7K2Y\nVLTiqCPPYMXA6bz4wl7c1D56sjkmcltYeeQAlZJLydkDmS14xl6YmsQr/4x05mcsTzqkk0W2bsux\nc/RErOxFOP5JHHfaG0har+T0V10AgG/0Q7+DV6pwxMAytjzzLF+44TMLNGKCMDsWnTh0UKxom2/N\ngwlVK8lz4xKZNVs2rFoDWDr4KGxtYfs22pjOzuNpja802vTwjHLsRDEuxCe8rVZy3nCi22ZEsKBc\nrWOjLppxeFqDb+GrMm6mzObdu3lo48PkvV2UcvtIOb1obVePD4eT+b6Pg8Is26SVQa5cYczrJWEf\nQTqzmr17p3hu69Oo9ARJ5WDpMkesWE1p0qKYK2Anx3G8Kbx9Bfzyz3GcH2Dn95G2ywztzrNlZ5aC\nPp69+y1e+eo3sXLwtXz/Bz/BTKc44cRzoa8MjkfaSpAfn+DGz95AV1d6Rj6kdibncddxrU8w3q3Q\njjgRd800EkXiRMpo+bj+xgl+cX2udZ/XEkSjNkV/GEQJ748br/A9G0erYXFx91HQTq2y0f3tXhOC\nIMwPIhAJgiDMDz959D8YmdyKkazgui6++9JiPtHfm+Dhm0Uc08Xzejh6+Wt4+VGXs3f/Xn72zG2M\nF59lhX0842N7SVk+hakR8Ev0ZJMkFPT1mSRTRUYnnuWpzT9m38QmSqUSyVSOcuVJKqWnGNnxGFue\n/ilrlqVIeA6f/fyneeNrX4PtlkllMoyOjbF/Ypzv3Xnnwg6cILSJtdAGRJmrCVEgkIRXBOtU+3EC\njq9AKVBKg3LB8DG8RMhAA8M/YJvl1Ki5dTvq2dcplFIobeD7BsrL8P++/jV+/vj3SSbHSDJGlzJR\nvo0yXxILgnAyAEUFx3LxtY1treHEtZfglky27nqQ0dJ/0t3Vy/Hpc9j64r2YpsmuHZtJ2S49XV2Y\ntia90qBScPCdIcZyJTzfwSxqfD1ELv8Turt72bv9YX4wPsKKrvV0LUvwib/4BBQMMoDu6aFQLGIn\nLJ546qkZfQtEonbEm8XGbG1qRiRptkw7okmzhNucz5CsZm2uNSbhHzv1jhOEQ4GlILAsBRsFQRAO\nVX73zX/BQ488S19fH74/iWma+K4GXnqxGEQiAKBdSsoBL8Ng3xmcvOr3eXrz0xTLDqRfpMfuZU3m\nZPLjv8L3KkyMTZFNmti2wjTBNsHDBe3haQefMhQSlMqb2b17lP6eZXil3eTyNr968QkGVmu+dtuP\n8HMKlTVRQDKdJpXJsH9ifKGGTRBmxZIQh9qZ4AUrY7Vads7EIa1eEofwwdCY2gU0KH9aHCKB1gZz\nNX1tFDrWyYmyMgBfkZ+ssP35EdauOBVl7aRS8bGsAq7jTIedRTysALSvKGsDvAzLul/Oyq5X8tTe\nDZQrPj55Kp6LaRxJOuHjeRVs0yRhK0xDYypFxfExTcBwSNoOpg26lMSr7Gbf/jsp5DKkbZdE73Ly\neZs92wGVZmL3ftLLBnGKRVKpFBqfQnk6pMxxHGzbro7bfIiMnRYyZiuaNCrfqjhUz4alKg41G4Ya\nR1gcWizhg4IgCIIgCAtBfrLC6esuZM/IBnLuGIY5iacL+I6FUqq6nH3gSV4q2lS8fgZXHEuxkGLP\n0ItMuJvoSmdxnSOZGN3LrtKjGNolk7WxLTAV+J6P8hSWl8HwfQxToVFoZeBmDPrTDo67nfzUC1h2\nEsc+hbXHv4bN257lrDNPY9IbwerpwizupFwu43keb3zjG3nqyU0LPYSC0DKLVhyqNcmqFTIVlA22\nu66LZVmYpsmWLVvI5/P09fWxfPlyuru7qVQqaK2xbbsqVAQradWyKTrpjIbhaK2nVW3fBzOIiTWn\nPZiUhasdfBzsJCjl4TguBsnpZdtj6owKTrVW0QrGpN5Y1ZrMh21vdzKqlIHrVrASBp7nse3X2zl2\n9WvYubdMyd2Gtnx8owRuEpj2xglWGfB9n8mcSVfXqaw9+mS2bN7BU/kfMeJsYuWKAbxiipHdz7HT\neRTD8Mh0p7BMH4WH9kC7CsNJT/fVBNNUaN/DsRQZyyHl5alUJvDMBGP5Izlx9W+w79db8cz1DKwu\nMaUfpqt3N4ODg5x44glc9KYL8YFyuUwymayOe1wIWK1wvHZpVdRotMJXvXCpufLcCV9Dwb8z3uLU\noJFwG1wb0TEJh03CS2MQCI7Ra71WuGRc++G6atkcrSvu2PB5idsftjMcHicIwtKg1ipngiAculx/\n/fXcfffdlEol0uk069at45//+Z8X2qxDmmee3UTfABScYTDLOG4Zz9UoDk5n4Hketn0Mp510KVai\nl0d+8Z+86H6PsjHJ2uXHUp5aznBhlIK/C9O2MQym52UalG+gfYWPB+jpl/YKwEJbYGFgqQRFpSkY\n4I87kOrjiP6z2bnd5YiBI9m87acctczh6WemBaFHHnkEgBtuuIGPfvSjCzOAgtAGi04cCictDmhn\nwp1MJhkdHeULX/gC27Ztq04ou7u7OeOMM3jlK1/JOeec03LIUFQQipYNlkJ3cbDtJOlED56j2LNr\nFE9nGFjeh1IOri5QqrikEkkMKi33b1GhDVAuyZRi154XeWHHVnbsGwO1m2RyHE9X0K5NMFK+78+Y\nQHf3nMhpx/8hY/tzlIpPs9+4BxcTz/WoVMqkuhQ6UcTwbSpeBcdzsAwDw58+xlcOygCjem4MtKlI\n6CRgQ1Ixbvj0WRn8nMGawVOY2FNkeZ/FnuEdrB5weOc738lll70T13MYmxjjsndcziWXXMKVV145\nY4n7aD6euFw5QmeIu+fiPLrC19Zcii6NxCNh6VIrfEhEACFM9HqolbRaEIRDi7/+67/mpptuYtWq\nVdUXnBs3buQVr3gFSine+ta38rGPfazjdlz/6S/x84cexVQrMZMV/uP2mzre5kLieCV25R/GtsbI\nJKfA0yg/AeolUSj8ws9KLCehj2fHtr04lQLl7Cbc/ACbx34B2qErY2Anp18oF8tFTHM6SsA0TLSr\nKZNDGWAf+L2vMAELS6fABMsw8JVDuuwzuXuYRGY5ueIkOV0iY3mMT05y4Zt/lx9+/3sAfO7mz/O5\nT32W9evX8/zzzy/sYApCk6jFMNE5+eST9de//vWWytTymnBdl0QiQW9vL3/2Z3/G008/TTabxbZt\nHMchkUhUV6c65ZRTeM973sNJJ51U/WIJXBTDqxiF3/Ab5vS/pmHhexqtFbZdBK1Am2ht4ysbK+Wx\nZ8cwt3zhq2wfGuOpzS+QtV/N8hVZktlJ3nbZb3Pxm19FMmnh+sNkUi4UevCUgd89QrLYO8OroFFi\n3Hr7w5PaaJ3hyXWj8mFmXDc6hWn6VLwp/uP2B/jIB77C4JH9TBaeoDtbhrLCdXy0yqNUNxVtUKRM\nsWBg6kHS/is44bTjGdm9j6Ftj9PVO4arxyiV87h+mWxXCtNWGI5PIpHAdd0Z7qSO42CaZlW8CYs4\nYXdT1xsgZa/F8I9iMjdGtm8/41PPMtALgwMr+M/b78B1Xf7y//wFv/jFLzAMg1e+8pV86lOf4qij\njqJ4IPzMdV1s267WH4xdcK2Exa9276/Z3pfNJGtup51aCaSDNgNmhA2GHuBh4jyDovvD5eM8coJ6\nw32NS+4c/TtIYBhnfziRdtS+qE1BOaVeWlY12odwXUGfw3+HxzR6zgzD4NJLL2XTpk2HfYxZjxrQ\nv6HOm/N6m8kr02kB4HAUp5ZqPp/gnETtP5TPlbD42aDvY1LvP+yfE2o6l8Ocs379ekzTJJlMkkgk\nqi8MLcvCdV2mpqZYs2YN9957byea56ILL+NnP/0ZmBlcP8MxKy9h2cputm7fiLKnuPSy3+Vzn35v\nR9peSE449jKsdIp94xtR7CNjZvB9jeMVMFUKF/CsJFbiWHqyJ7BnaBgr66ErDm5hmN7ePHtHhzAM\nhZVQ2AkDwwLbV9i2PZ3gOuLNrbXGsqZ9J8K/58OL1Pi6m4rThW2uplQuYKdGSSZzmOb0/nPOOovC\nVI4NjzzMqlWrUEoxPj7Oa1/7Wlqd7wrCXKK1bvicOOTEIYBsNsu9997LzTffjGmapFIpbNt+KR9Q\n6IugUqlwySWX8Pa3v51UKoXv+1iWddDENSoOBcu2g4HlmWjbwcEnkepmaGicu7/3c2699R+oVMYx\n7CSOk+KI7t+mdyDDVGk3w/u284pXnMQV73sv5567Gq3GUaUk6CR+uoClZ4aVRXOQRCfa0fGodWy9\nOhuVr3Wsr01MpUmkDL7xrR9x8w134KsEQ3sexDT3kTYyaB8cihjaxHE1Kt1Lb///ojv7CrZteYiC\n2kslP0bWdhnsddkzPIxlm9hJA8OcDhmztMKyLDzPmzGxDx7U4cl9WByqJie3esgXFKYawNcumGMk\nEiU0FrZpkkomMLWHwiORSgNUQw+vvvpqLrnkEhKJBKZpVgWp4CESiAP1wvjmkmbCvaLix1wIRc3m\n8YqKMnFCSz2vq7D9tcoH/7YjDtUTuWrtC28LHxMWe+qJQ2EbaolD0XaVUiIOHWAhxaGAuRYAmm37\nUBQelqo4VI9D8TwJSwMRh6bphDj0qle9ij179pBKpUgmk9WXqsFv0SCdhNaaUqnE5Zdfzsc//vE5\nafvyP7iBbU+U2Prrh/GM50mkTMbHfLKcyKo1R+AbLpP5HCiTV5x2JnfeeWiFL73hNdfiuCme2Xon\nhhohgT3tuaVcjIqP73no1BqOfNm7yU2tZ2jX31Mxt+C5++k1DZJmiULZRBlgWmCYgPIx/ZkLzgS/\n5Xp7e0kkEuRyOcrlMoZhVF8Ch18Go2w8rbFTaYqlAvgV3EoZlTqS1asGmBzdQ8LwSBiKdHcPvu9T\nKBRIp9M4jsNFF13ETTe95PX1kY98BIDPfe5z8z7GwuFFM+LQolvKfrYYhsGGDRv4u7/7O2A6vCyc\nnNpxnKqQUCqVSCQSfOc73+ETn/gEY2NjJBIJyuXyDO+TcCiZ67q4rjvDS0BrjW+YlHSKn23cyUc+\n8q98/7s7qJTW4Js+hp3HcUbZvfsBJiefoJDfiWmaPProZq77+P/ltq9+l3SyG1QRjCKWk5rRpzgR\nJ2xTnFAWDX+LKxPtX6vlgw9mBWVAqVRh/boTphM5axvTsDCN6ZxOhqVxMdG+ImPZ2HqAwd7XsGf3\neiq+g1a7sNM7Ma1hirm9pDIJ7KSBaRoY5ks2BF/OQZ8Dj6GVK1fS09NTFYKinh2+76PdAtlMnmTX\nC7g8i/b24RYLmKkjWLX2eCanXnIn9X0fx3EoFAr4vs91113Heeedx7333otSiquuuorXvOY1vPrV\nr+a6664jl8tV7XNdt6lrtR7hsY77tFNPO/tbsa8V+5tpM+y916p9zdhfq/5W+tRofyt9ns15Ftqj\nVYFiLgWNVuq6e9djh6SYcqgRPU/B/+X8CcLS5OKLL2ZsbIxMJjPDY7xQKOC6bjX58OTkJACpVIp/\n+qd/4n3ve9+s2z7jt67iVxumGB9V+PSA7aOsIr090DX4Ann3cXYOP0pXn8ee4Z08+NBDrD3m1bNu\ndzGxYeNDPPrYT7DTLnbawzcKaLNI0S3jWRZmcgDD7CeV6mciV6I7naY7q7D8CSbH9uAUXWxbY5ka\nhYepwDqQCxZeSk1gGAa2bbN9+3YqlQorV66smYdWa43p26xcNoD2RvEq+6jkivSmltM/sIaBgRVg\nKpYtW0YqmaZUKpHP5+nq6qq+RP7ud7/LmWeeCcA555zDHXfcwQMPPMAJJ5wwr+MrCHEcMuJQoABX\nKhW+9KUvYZom6XR6hqeJUopkMln9Qg/EItM0eeyxx/jwhz9cfTsQJKwOe4GEQ0ICgcm2bdzEOI5h\ncfePHuPPr/5bdm3XTOanqLhFlFEGCmTTPullO5h0Hmd47Ff0L9M4epIdO7fx2Rtv4dZ/vZ3e5X0Y\nmRJGwql+IdUK+WomZChKsx4RNT2EIt4ZM8J9tMJzfXzt8vhTj/L8C7/CSBXRVh7fzFH2JnDxsdJ9\nlPVyHHqp+FO4/ot0pwy6kwbKKVCYmMTzTSzLwzR80C6GBpODw+YCl95t27ZRKBRYt24dXV1dNfvq\nOyb9PQOYfgUqZZyCT8ZaTtLqZmoqRyabpqenh2QiVT3HPT09lEolbNsmn8/zoQ99iPe85z088sgj\nTE1N4TgO3/3ud7nmmmsYGhoikUhgWVb1umrnPEXtj/s08k6KO4/RayruPM61IBG2I2p/lLAo0shD\nqZHgFZSd6z41EoTg4HPXyN4wi8GT83Ch3cn6XEzyRSg4tKklBsl5F4Slw/XXX89TTz2F4zjkcrnq\ny2Xf98lms9U5xtTUVHXeELx0vvvuu/mDP/iDttr9m8/8M6ec9X727XEo5vYyVvoFFW8LCdMBr4xl\nlnGtERxjLyoxgWaSdcetJJXyGZ80WX/sJXM8EgtHyR3nqGMHcfQUjp9HGZpcLke2awWDK86B5G/i\nWWt54qnvk9v/74wOP4k3NYJZ0WSSPWCnMZQ3/UGD70Pod7lSqrrYj2EYlEolli1bxjnnnEMmk6nm\nHA3Ou2VZ03Me22JiYgo/r1AlG0OnKDnQm0rw+MYNJG2F6zkkU110d3fT19dHpVKpzi3T6TSTk5Mc\nffTRFAoFDMNgZGSEwcFB1q5dywUXXMBf/dVfLeTQC4cxh4Q4FEzCuru7+exnP8vQ0BDj4+MMDw8z\nOjpKqVSiWCxW3fq6urrI5/Mzwm6UUkxMTHDVVVcxMjJSVYyjoTnBZDNY5cwwDHbvLPKnV1zPV79y\nL5ZOMlV8ipz7EA6bwS3ilUtoimCW8VWRdEZRyI9y3NpV9GcTJFPH8uW/vZ+/vfEOXG1RMZz5HsLZ\n4Zugpz140l0Wyi5z6ukn4HhFTNPEIIFbMhnsP47lK36b/pWXku09g8d/+R0qk7exd+/DOLnd2K4m\nm+5BJywM5WOga36ZB+KN1ppsNsuJJ57IcccdR6Uyndw7yCkTnCPLshhcM8jw6DClSY+k6sKy04wV\nJxjMJhjauhnPKzGVm8T1FIlEgr6+vmobwXVQKpV49NFHMQyDcrmM4zgsX76ce++9l9/7vd/jggsu\n4CMf+Qi+75PP52u+eRAEYeGY7SR9NsLSbNoWD5Slj3gSCcLS4Ktf/SqFQoG9e/cyPDzM9u3b2bJl\nC1NTU7z1rW8lnU5jGAaZTAbP80gmk5TLZRKJBKlUinvuuYdrrrmmpTbf9uYPcMsN/4XtrGR8bCfj\nlYeoGI9ipYcwvBKmDz4VymWFU1Z0JXsY3b0Pw4EeK0Nf32kc0fN6jl3z1g6NyvyyfGUPywdXUiq4\nGH4Wr5Qka60ioVdjm2czsOxtdHefSXHyaXqTD2ImX0Dp/aRtAzNh4SYqoHT14/v+gXyx8fOJU045\nhVNPPZVdu3YxMTHxUlqKA59KpUIikeDI9f1Mlsex7QTd2T66BrvYX9jLxJ4hDF3CKeYYHR1lZN84\nU1NT+L5PT08PfX19OI6D7/sUi0VWrFhR7Wt/fz979uyhWCyyd+9e7r77bk488cSFGnrhMKahOKSU\nOkopdb9S6hml1Cal1AcPbB9QSv1IKfX8gX/7D2xXSqlblFJblFJPKKXO7HQnbNvGtm3uv/9+NmzY\nQC6XY2Jiglwux969e9myZQu+7/P5z3+ec845h/HxcbLZLDAtLE1NTVUTk42Pj/Oxj32MVCo1I49N\nQKAiB66Id911F3/2vs/yyP8MYVQGGNr5PGVjE2WeIpkaJWFqEqaNYWrKJQPXMUknuxkfmaI0XsT0\nTAYHTub4Nb/DTZ/5f9xw/ZfxsDs9ZHOLNsE3SSQSHLV2NUeuXY5b0RRzLuU8lHMmGXs5+VGbUn4V\nrnMqjrMKU4+SNTdhpYYxzQJJ20KbPhWrBPh1v8zDSv/RRx9NKpXil7/8JblcrrrfNM2qiJNIJLCy\nLiUvTyqVIp3K0DPQRcEdZ+evn8c2XJRfIZfLsX9sisnJSQqFQlUkCvIKGYZBKpWqilKmabJlyxaK\nxWI1KeE999zDpz71KZLJpIQHCYcFS+E50SzN5o1ZKiFpwuJFzqNwOLGUnhMXXHABIyMjjIyMUKlU\ncF0Xx3EolUrs2rWLcrnMq1/96uqLZ9/3mZycRKnplBXlcplsNtt08uFPfOr/cuoZF/HE88O45Bge\nfoCUuQVD7cX2fCwNvrLxsKZ/cxsuHjkctQ8jMc5UbjuGMcmKwdOoOEezb6qL7MrTOjxKneekdWvY\nuukxHMrsmSyQ8xPYPbBvfCu5qTFyEyXGxvfhqzKTUxNYysM0sqiEjWW7JDwOLBh04APT+YcOvLid\nEQEB7N+/nx/+8Ids2LDhoPQiAaZpsvO5IZx8hZLnkOpNYWiHgWyKsdw2urtSWGaSVDKNlfSr+YtK\npRLpdJr+/n56enro6emhWCxWc+Pm8/lq9EqxWEQpRVdXF6997WvnfdyFw5tmPIdc4ENa65OAc4Er\nlVInAx8F7tNarwfuOzyF73AAACAASURBVPB/gAuB9Qc+VwBfmXOrIwQunzfddBNjY2NMTk5WcwMF\nHh/PP/88H/7whxkZGSGXy1WFhlwuRzKZrOaXSaVSbN26lb/6q7+qrkwQqMqWZWEbFqlkmlzZ5apr\nPs7/ue5L5JWNaw+zY+cd9HfvwNY5El4Sw7dwfAPHN/A9BVRw3XHK7h5SXeOMTz6HZY6xYuAYhscM\nyK7m1m/8iH/+8v24ThbMCrYFbjlFxYgPwwn+DYfShMNbwiEv0RCb8LbwMUHZZpMPG4YLdomK69GX\nyXD2K05k8+MPom2XkUmXZN/LSPR0M1HaQ7E8iuGP4Pov4BlTjOeLpK0ESmfBtrBtTdq1UFgojOmP\nmk4EHv4yD1Ys8zyPqakpHnzwQX79619j23b1DUBgezo9vWzl0LNDUIaiW6FneQ8mLkf09pF3dzO4\nrA9TJUmnMiTSUCwWKZVKFAoFLMuit7eXbDZbFZsCOyYmJhgfHyeTyVSvxVQqxd13311dTa1TtJOT\nJ3rOw0TfpLQqarVbbjZ1RkPI2qkfaodzxYW6RRNGB+XD91ujkLiwveFzEr5Hl1iI2aJ/TgQ0mpC3\nmguomWM6IQKIsCAIwhJjyTwnHn/8ccrlMslk8qDwe9d1+eQnP8lnPvMZ9uzZU41EMAyDRCJR/R1a\nKpXo7+9n9erVddt6w0W/x+duupnhkRFcdwzP2EvO3YarJjE8a0b7VTs8C1PbmNoilTQpFPdT8fZj\nqxdIZYdIdfscc8xrOeOVn56nEesM513wKsruC1QKDoM9J/OKl7+DfP4UdPJ4xnN7KRbvplz4byxj\nLyRUdfGh6Lwm/In+ngvmDI7jVFORBHPIIIdoIAAuW7YMrTX5fJ5kMkl3d3fVEyiTydDT00MikSCT\nyWBZVjXXkOM4jI+PUywWsW2bdDpNPp+nUChQqVTYt28fO3fuJJPJoNR09ELgjBCNYBGETtNwNqW1\n3q21/uWBv6eAZ4AjgUuA2w4cdhvwlgN/XwJ8TU/zMNCnlFo155bPtJHh4WH27t2L67rVVcfCEznf\n93niiSe48847GRkZYdeuXdWJfxA2FOQiymQy3Hnnndx3333VetLp9LQgYXdz3/88zBvOfzP33f8T\nEqkE+dwuSIygU7vxzUmUZ8baaakMlspgGgkSCRusMgV3hOHdP8FKP4uRmOLkl1/M7bcP8+E/vwHL\nHmSqnEMnSmj/4NXIomJPrUl/x9EK8DFtjac8XvPb52BnxylOVHj5SRexeuX55Apn0bP8Veyf2M3I\n8LcYGfp3FHswDyQMj4oWcV/m4VCx4Msy8O4KkoQH+4Iv/yBvkOd55PN5lFIMDg6yf/9+xsbGcF2X\nwcFBHMfhiCOOIJvNks/nWbZsGZZlkcvlyOVyuK5bXbK0UCgwMTHBzp07GR4epquri0qlMp2IWykq\nlUo1rGwxER1P8WhixvXWLHM5fuEfMEv5nCyF58RC0GkBZykLRLKylyAcXiyl50Q+n8cwjOqqtMEn\n+B0YTODz+Tyjo6PVcKNyuUyxWASmV9J1XZdkMsmll14a287ql53KU5u2kkqnKZanGB3dgrL3kcxO\nYCSK+K5x0O9hwzCwSGD6NiYWCp+ePotccTfbt/6AoZEf4Hl7KRe7sazTWbXyovkYso7wlx/9AN39\nNtnkIKefdB7PbMpx1NrfZ82qiygU8kzt/xGqsJFswkeTqfnSO/zbFw7OgRlEIwSL0cS9fA/mifv2\n7auuZBbsCxKTW5ZVvRaSySS9vb1VwcjzPHK5XFUkMgyDfD5fnUuERS3bnl6Vrb+/n5/+9KcLNv7C\n4UlLr9qVUi8DzgA2AEdorXfD9Bc+EAROHgnsCBUbOrAtWtcVSqmNSqmNY2Nj4e0HqbrRt/fRCZRl\nWVW1PpvNHhQOprWu7g+SiRUKBQqFAkopHGc6x09XVxeWZVEsFhkcHOSWW26pfskHXxZfvPnLXPHH\nH2Bw2Uqy2TTjU8OMj2/FNMewkjksy0Vpq9puuE+GVijfAFehfZdE0kMbU4xP/II9+35EpTLEnh2T\nmPZR3H3fr/jiTd8ilVpGImWg3ZmiR1B/XILfqChWKwFwzDlperIa51HheS6u63DJWy6mq7eP5X1H\nk7GX8cyzuzhqzevpS5+D0ppC7lGWpUdZ3tWN66WrQk9UuAi3H31rEt4enL/gyzv8SSaT5PN59u/f\nTyaTobu7m0qlQjqdxjRNent7q3HEk5OTFItF+vv7MU0T13Wr18r4+Hj1C3/37t3s2bOHqampamx5\nV1cXmUyG3t5efuu3fosf//jHdHV1xa4K1+5nttQav2Y9xFoRUcIP5UbnsB7hJPDNEIR7tjpezfQ/\n7u1drf2B7XH9r3dOw+7NS1Uo6tRzwqHcSbPbplbi4fkSbpayQHS4IwKZcLjSqefEXNk3MDBQXcY8\n/Mz2PI9EIlH93RjMGUZGRti9e3dVNAqWLM/n85TLZe67776Dlrc/6mWnkZuYopjP41ZylMtjGGoK\nCwdcH1ObWObBL0Z930dpH6U1eBrf8fC9MtkuE6y9FAtPYel9UJqkUBrCM3tYu/ZtczU0884bzv8D\nVi0/mQd/fj9jha2USgWMkoV2J1HmPvq7M2QT3RjKjP3tGR63Wr/jgn3Bb87gZXOQjDqbzTIwMMDU\n1BTlcpkjjjiCTCZDoVCgXC5TqVTo6uoikUjQ29v7/7P35mGWleW592/Na89Vu6q6qgfobpB5EMQo\n0WDIMQSSmOiXaAxGwSQYY/wOMcdMyrmMidHjUa/j+TSGGGOMiYooGHI8DqgYRFABmWloxqbnmve8\n99pr/P6ofl5WbXYNPdLd7Pu66qqqvdf4rrXe9T73ez/3o3xvRVlUqVQYGhpSE8iGYbB27Vocx8H3\nfVzXJZvNMjExwfDwsJoQP5zZBwMMsBRWTQ5pmpYHbgTelSRJfblF+3z2nMgrSZJ/TJLkpUmSvHR4\neLjf/lYdFCZJwsTEBJs2bSIIAlVuMr0dYYMB9dA3m0327NmDpi1UMQNUKlEURczMzPDf//t/Vwzw\nddddx7/8y7+QdTLs3r4dy4iIwxq22cWME8zAQY8tdG3xwyydi0aIlkRoyUJnrmsxlplgGPOQ7GLI\n8Si5HTqdh4itIv/yme/z0Q9ch6ll0bVnU2j6BeirSWM5UKyaqEgMbNNlZGiUt175IdaMncFDW39I\nO3yYRmM7ZtSk1d6BmfUwnRxoFpa7MBMjrH1vmy3VMfbr4HvbYHh4mEKhoNIMi8UisDAjVK1WF5GI\n4+PjBEFAp9NRSiDf9ymVSiRJgmEYBEFAsVjkzDPPpFgsks/ncRyH0dFRlTtcqVT45je/yc0337zo\nZXS0BvpHUrHSb19L7f9gjulAt7na7/eHOO333fGMw/mesHAO1WEecvSWL38+938sYUCODDDACw+H\n8z1xqI7xiiuuUCbT2j5liajDhXyQirSiJqrX68hkd7pgSjabxXEc/uEf/kFt/+yzzyYKuxhohJ02\nRB3yboRtBei+iekV0YMs9MQTaryrBcRJ2DMGjrHcGMf2cMI6ifcUU1Nfx0t0Noy/jPUjr+NYxHDp\nIqo1A6dQIVfeRrf9MK3GXYT6NshGtDBpxR5mtrFkfLTcJGg/8i29jpA0jcaCH2mpVMJ13UVpZWvW\nrKHdbqsMBUktm56eZvfu3RSLRTKZjBIlzM3N8cgjj+A4Dqeffrr6XtbTNE1lKbzqVa863E08wACL\nsCpySNM0i4WO/ItJknxt38dT2j55577f0/s+3wWckFp9A7Bnfw9sf4LWTqdDt9vl6quvVqUlpSO3\nbRvDMBTBI2lkwgx7nsfs7Czz8/N0u12lJrEsi2KxyG233canPvUpOp0OX/7ylxkbHSLnOgReh6jb\nJJ/RsI0YAgO9W4TABX1xfuiz5xKgEaHFCQY6RAlJFKHZMXrSIWrMML/3XprtHxAmcNpJr+SLn/0e\nf/+JfybjLqiRhNVOYyXlx8EG/ysGxVoC6FimQ+BBdS5ky8Mhu3Y3yZWaDE1MUq/ey+6dN6PZOyGf\n0Ew0OnEbO99Q5N1S++yHpcgh+RHFz9TUFL7vMzY2pjpeqTAxMTGB53kqVUy+m5ubY2pqirGxMaVE\nkRfD008/Tb1eZ82aNYrhl2si5NLatWv5wAc+wIMPPnjU5wsPyKH9//5AyaEj1c7PF56P98SB4HAR\nEs83QfN87/9AcCwe86HEC/38B3jh4Vh5T/zt3/4tl19+OUEQKE9J0zTVeE/iDPHClKyEZrPJrl27\naDQaFItFpQwxDINsNsupp57KxRdfTL1ex04MbD3CsUNMLURLEqLIIDFiQr1DmLSBZ8f9MrbVdZ0Y\nDXSDGIiShDCOCeOEOEqINAfP6NDytrG25GF4Oq5bJNDHOO3M3zoSzXdI8dBPH6LS1PDj03C0M5nf\n8wgzlevIWZPYsYUOmLqGEbl910+TeRJvLKXqB9SYXSwvyuWyMhyHhSJInU6HarXKzMyMykSwLItS\nqaQyTuSaOY6DZVnMzs6Sz+cJwxDbthFhxMzMDLlcTtlaTE9P0263sSyLbrdLpVLh7W9/++Fs4gEG\nWITVVCvTgM8CjyZJ8r9SX/0f4Mp9f18J/Efq8yu0BVwI1EQuuhr0pl3Iw9VLgKQ/cxwH13V52cte\nxnvf+16SJMF1XZWzKb9le72deRRFzM/PMzMzo1jj+fl5MpkMxWKRr3zlK7z61a/G933a1TpRt43r\nRBh6DBEEsQFmTGg2iLQ2JIvT32S/YWIQ6waRruEnEQEJQQJJpBPqGcIshNo8a7I6TqARGz5JdojP\nffE2bvz3HzNkrkGPEnTDR9cMYjQSM1D76HPt+qZppTvBldJp0oqepdax9ZCMaxPE83SDkI/8zY1s\nf+JewiQD+isw/AtoVHYQareTM2u4vo2NhqWb0Mmt6vhX05nLi1M66CiKlFxT13Xq9brK95WSo7qu\nK+ZffIskb7herzM9PY3jOMpETtRC09PTqjxlu91mcnKSMAyxLItGo4Fpmrz//e9Xg4L0S13ujdWm\ncq3mOvW2yUrpX70pj+m2XmqbqyVH+h1/v/uw95yWIo/SxyrHnu4P+t3n6XPsd0z9zn+lc+7Xdv3a\nrN/+VrPcsYwj/Z44WByvBNGxhEFbLWDQDgO8UHCsvSc++9nP8opXvEIF82I4LYohiSdknJx+18/P\nz/Poo48yOTnJOeecQ5IseKPOz8/z2GOPUa1WqdUrhFGw5HhKPpOYZTXjRl031XF2fY8oCiGZYbZ1\nDwEzaFqesy/49UPfWIcJQyM/z48f/FfytsUpa36W0fx62sZOZRPSm3XQD/szZhUEQaAqzgE0Gguq\npPHxccrlMpqmkc1mVWZBvV5X2Sma9mxamoz7u92uUp7JPSIFbCzLUlYnvu+jaQueQ4ZhkMlkcF2X\nO+64g7/92789sEYcYID9xGqUQ68E3gL8F03T7t/38yvAh4FLNE17Arhk3/8A3wSeBp4EPgP80aE/\n7MUQNVCr1eLSSy/l6quvVsZw8vAKwSDsrjykErhLxbI9e/YwNzfHhz/8YUZHR4njmGq1yt69e/ep\nizyiOFxU4jCN3kBbJInLQTpzwzCIk4gg9AiCnWyb/g4N/xkcc5yr/9tfcvOPb8EuZ/CTCGILM8hg\n+9nD1ayrhh4XaLS6BJ0xrr32e3zyS/+Tx3b/O44ecfLwSxnNn4Cf2XHYO3MpN+q6Lp7nUa/XMQxD\nETqA6oiFkU+SRJlNB0Gg7hXXdXFdl4mJCeI4ZmhoiFKppNRFIyMjilTyfZ+RkRGVb5zL5bAsix07\ndnDllVeqkpi+7xMEgap2cTQrigYYYD9x1L8nDgeOtrSoAdFwbGJw3QZ4geCYe09873vf4+qrr6ZU\nKqFpmgrWhYCR9CLTNHEcB9u2VUwihtTf+MY32LlzJ61Wi7e85S28+MUvXshmcC10AwxjaXIoHUdI\nVazlCCKVFkWEZRkMjxTJuV12Tt9BQI2MsZlHHpnll3/99w9nsx0SXPJf/oEoB6Y7QxTNYYYetdoU\nkT2/ZAzWDwcSTwAUCgUMw2B+fp4wDCmVSsRxzMzMDLVajVqtRj6fByCXy2GaJp7nLYgBwvA5NiCa\nptFsNjEMA9M0MU2TarWKpmkMDQ0RhiGdTkfFrTLhLOmJ119/Pb/6q7+6X+cwwAAHAm01ioTDjTPP\nPDP5t3/7N/V/r+ohHUT389wR82Dbtmk2m0xMTLBjxw7e9773sWXLFuI4xrIsVZJQOglRjkgbiHLE\n930+/OEPc/nll9Ptdtm9ezc33XQTX/va1wi6CVEcAjEJz3bSclxCDEm+sew7bTIrnb3qrLR9ShIM\n/K7Ouef8DNufrDEb7YBwI6euvYQn9/4YU5vlS1/9e0550RpymoOlBeimhxfZfZUi/Yiq9Hf9lu+F\nkGdLfQ8QxSGeYfG/3/9Tbv7mg2yZ/RpaZytacCInrruAPTOP0GELeT1YtkNPn0NaCZJW8yxlBCwv\nTJFpzs3NEUURw8PDyjhQZgIknzeTySjfIUkdk+OTz4VQTJKEfD5Pq9VS1chKpRLtdlu9NIRkkhdK\nFEW4rku9Xucd73gHr3nNa2g2mzQaDSzLYt26dfTz2+q9JiulDS613oGQT8vtS65b2qtppeNa6vjT\nxn/pz3rR++yvpi16l5O/08ecNrpeTpW41LH0W1a+X+mcez/r1yZpr603vvGNbNmy5fiVHa0SRa2c\nvFx79SHf7sEG5mmC6GgJ8o820qoXR0s7HW042q/bAEcv7kxuoZ7Mv+DfE5qmHbag5l3vehe33347\nTzzxxCIvovQY1Pd99f6WisibNm3iscceU9t5wxvewB133EEYRM+OTbRnxyt9zkn9lnLrjuOoMbMU\nzNE0DU3fN/5LNNrtmA3rN9OadfBMj2q1wDmnXcpsZRuNyjS/cMnZfPm6aw5Xcx0ULnzZx3H19fzo\n0X+G9i7yxQxu3qBWnULXIkytoUy/e5Xf8jsdAwn6jT3TRXEkFkiShNHRUarVqlL9SPpYHMc0Gg0c\nx1Hxp/wtY7+0kbnEGt1ul0wmQzabxfM85WXkeR6u69LpdJSwQWKRQqGgfIharZaKc0qlErt378Z1\nXdrtNps2beKGG244QldngGMZSZKs+J446sih9IMt6A2ger/vTX0SosYwDLZv3853vvMdbrzxRmBB\nGpjJZFTnoOs6nU5HlabsdrtKZfLtb3+bcrkMLHTm1WqVrucvdOZLaK7k+KSzkWOTVDdRjaTPQdd1\nNB0SdNqdkHx2hE4tS3Z4hPmKwRmnvYJqZQZHM8Ge468/+HYufOnp5HJdQm2WsLMgcZR86N4UpqWI\no9V81ksOyTKe51EoFOh2u3SJ+H/f/WG2/qREOX8it9/3efSwhlvokpgVvE4DV8+haQudqZx/7373\npzOXNpbPZLakWCwyNzeHruvk83nVkSdJQqfTUbm/URQtKlOaJlOSJGFoaIhut0uj0VBVyDzPo9Pp\nYBgG3W4XTdOo1+sMDQ2p/GAZMBQKBQqFAu12e9Hxtdtt9UKbmZnhiiuu4M/+7M8YGxtTL4rVKKt6\nz381WA2pstyy/cihlba/HFGSvq+WIrKWIoeW2v9yRM9ShNbBkENp48Klznmpv3uPJU0Ipfc1IIcW\ncLjIIcGBEhZHIzkERyfRcDS1z7GGo/F6DnD0YEAOLeBwkkNpvPe97+W73/2uql4laUcyXi0Wi9Tr\ndZIkoVarLXq/Dw0NLRQ+Cbok8eKxd2/sI2OBOI7xPI8LLriAkZERfvKTn5DP5xf526ixs5YQA2Go\n43cTfC/PKZt/ke1796Bl27jJKCeOnMSDW2/lwotexPe+85kj0WT7gfM594JfA7/D9md+ytDwGC1/\nG43m45RyJkZoEWhh3+q0/eKJlSYhJS4TUkcmeH3fZ3p6mlwuRyaToVQqUavV8DxPZSA4jqNK3Eu8\nkY774jgmk8nQbDaJooihoSE8z1MTyL7vq3GhFMFptVoUCgW1TcMwGB4eVsco111S2qIoolarEccx\nv/Ebv8FHPvKRw3x9BjiWsRpyaL9K2R9JpF3j+0HIj37ER5q9PfHEE/nDP/xDvvnNb/L5z3+ed73r\nXfzyL/8y5513nipFKAG54ziUy2WSJKHZbHL77bczOjrKo48+ytTU1AKpoceLDacTbdGxSGAoRmad\nTof3vOc9fPazn2VsbEyRUP1UPVEc4jg29UYF32iyvvwSTNPkgW3X0+rsJgxaPPboFv7oD/+Yb33j\nx3RaJSJvLZqmqXxo0zQXVWs71BBSxbZtRWb817f/b7746R8z1XiKh7ZdR8assW7TZqI4oV2rU3Ri\ncubCi1NSt1ZCb9WApciAOI5VhzoyMqKUPJImlsvlCMOQZrOpZlrEoFxIibTiQ36azSa1Wg1N0ygW\nizSbTfVCaDabqnRlJpNRqjXXdalUKrTbber1OnNzc6rjdhyHfD6vKpvJi+VrX/sab37zm3n44YcP\n+bXaX6Tv46WerecT/YjDft/vzzqH+5jSWEn1lO5DDkQCPcDB4dJ156mf/cGhIjwOZN/L4WgjYo62\n4znWMGi/AQY4evChD32Iu+++m61bt7Jt2zZmZ2eZnp7mL//yL3njG9+IbdsUCgUymQy5XI6f//mf\nB+Dqq68GFuwwAKUYAp4TT6iPk4RCocBFF13ED3/4Q2666SYmJyepVCoq1kgroaMoIgwXyJM4iXCH\nNXLuBK1OjbbxKC1vF1NzTxDS5IEHHuDXf+XdR6zdVsJpm9/MBee9nq1P/5QnJr+NYcxCNmJ2to7L\nCHZsYZhVFeesZjJ1JdV5EARKLaRpC9WroyiiUqmQz+dV1eJWq6WUSrZtL1IIWZa1iMgTMlAyHkzT\nVLYTkqKYz+fVmM+2bUU+jY2NYRgGrVZLTajPzc3RbDaxbVtZZtTrdUUKSabCt771LT70oQ8doqsx\nwAsVR51yaCWklTDpTiH9uTxswroGQaCIAfG8EX8aWFDB7Nixg5tvvpkHHniAPXv20Ol0iOOYhx56\niKuuuoof/ehHqjOApVnpNNlgGAZXXHEFH/zgBwH4z//8T6688kplhC3bEZIjTYR5scUp69/Alqef\nhOIuWnMeZ294MdNTHZK4yPoNE/z2b/8ib7j8v1Aq78Ux84TRvhQ5Xaer+Viaha5pJImHbnbRgrza\n/krKoVgPMTDREgM90UGLMbIz+EkJo+viJAb4Bn/+15/i+pvnGTZHePipL1IqzxDMWZTHCtSqs0Rx\nm4wbo+shUaz33VdaQbXc9+n2FaZf2r9YLKoyk8VikVwup3K0RTEkHb504pK+I/dLmiTszQtOkkSp\niEQGalkW2WyWubk5xsfH1QyObdtKYSQvANnWrl27lNGcpKOVSiXGx8f5yle+ou6F1RpK7w8OZJ30\nPbmScqjfvg6lcuhAP+9N+1rq+1712GqUQ+nZwH7b7Jc2ll6vXwptb1rZb/3Wbw2UQxx+5dBq0S9I\nv3TdeUdtetrRoDgZEBuHDkfD9Rzg6MNAObSAI6UcWi1OPfVUgiBg7969eJ7HaaedRqPRUGNIeG4h\nnjRkHCEEQRonnHACtm0r82PZTu94p9M1mBh5JfPNBE+bJ+wGnLn2bDxfZ/feScxMl4m1Bg/cd+Ph\nb5BlUCydxZnnvJfadIUn91xPtrQDby7GMDVsS8O0EvSki67FRKmr3G+8vL/xhEA8fmRyeGhoCIB8\nPk+9XqfRaKiy9bquq5QxIWgknhBj6UwmQ7VaxTRNJiYmSJJEmVdHUaRMrMV+JF1AZ2RkhGazSbvd\nVt5W4qOq6zrPPPMMmqZRq9UoFosMDQ2Ry+WwbZs777zzkF2XAY4vHNPKoYOFBHqmaSqPmTAM8TxP\n5XrKg21ZFmeddRZ//ud/zrXXXsvZZ59NsVgkiiJuu+02HnroIYrFIsCi0pVLKRXSncP555+vTOTG\nx8fV/qQDF5lgL/QIKvWtlIs5CpxKuXgazWbC+MQG9IzH1l238ZFr/4Jr/ubPgHFaQYQXNYnxSYIu\ndpxgRKD5Onrogp/br/bTk33Emx4TGyFoMd1GCb2TRYttdu+Z4c1/9E4+/W/XsrF8LvVZDy2GOOnS\niWaZntmOZga47r5bLFmsiDgU6hRd15Uip9ls0ul0VAcpUk6BpMAJQy+zNr2pRu12W826SM7x8PAw\nhmFQLBbxPI9Go6Fe2NKBdzodlWLmeR6+76tzazabAIpUqlar7NmzB8/zqNVqNJtNpqam6HQ6yrB6\ngKMPyymTVqvyWYpUHuDYwaFW+Mg2Dxdu3nP/80rODIihAQYY4IWKxx9/HIByucyrX/1qlZaUVvyk\nFcNpiN/mUnYDvWlJSylkHBLawcMYWodTRi9hovxy7nr4O+yYfwRjqMlUZQvVWouzT33L4WuIZfDe\nv/j/0OxTcIdHMDoGOROibhOSLrrZIJMNMewuYdjalzJ3aGIIgYzNxVNIbCKGh4eV0XS9Xqfb7VIq\nlfB9H3hWoCDXzrZtYIF0yuVyKtbMZrOMjo7SbreVYbWsKxPHmUxGxa2e55EkiSrik8vlnrXx6Hbx\nPI9KpYLneUxPT7N+/XqKxaLarhzHAAMcKI7rKFQqBfQ6/EueZpIkqlShKFFyuRx/9Vd/pczH/vRP\n/5QwDJmfn3+Of8lyLH8cx9i2zf33368Mxr7whS/QarXodruLJIx9O/M4pta+H787x8nlixgtnMvT\ntbt4dO9PiLNN2n6FIecktt3t8Pa3f5Rbbr2fbCGHZcXYuoFjRFhGgKYtdGJxbO5f4+1T+cRaRKxF\nhHpEN8hCoLPz6Sn+4L/+T278vw9gWeuZn95GsdjG0NoEXoNsLiJfSDDNLlHSVZ15r/R1pTSb5SDX\nVKoDiDrIdV3V/pLiVSwWlTGgKHbgWXJJrpvrump7QgZVKhWmpqZoNBo0Gg21bpIkSo0UBIEypJO8\nYmH42+02SZLQbrepVCoA1Ot1Nm7cSKlUYnR0FF3XaTQaTE1N4TiOUiANcHThYMmhXmJoQA4d2ziU\nSp/0+oeLTHk+Xk90sgAAIABJREFUSJoBMTTAAAO80HHeeefh+z533323UpfAYiNkIYhgscpYSCSA\n3/u93wPgr//6r8nlcosmmSXG6admNvSYTncnfnsaPAPHGMIeGsG0xshm1pIbWoNXsymb57Jx01WM\nrHvlYW8TwR9d+R5u+I9HOeXUNxE3TuHBp7/Ak5Nfw85WiDoehUwG0+hiEGCZ+8ZMSf+4q5+fo7SR\n/C1IxyKO47Bu3Tq63S6dTodWq4XruuTzeZV9ICSdXKtsNotpmotK1oufqeu6RFG04Cu1T0Hk+z62\nbS/KQJEJYfExlSwFwzDIZrNUKhWq1SqFQkERiqZpMj8/j+d5bNy4UX2XyWRUBsXk5KRKXxxggAPB\nMUEOpYOplcoX9koq051uWvEjHagoimT5brfL6Ogo559/vnKkD8NQqVCE0El35PK5dM7CBEtZ9e3b\nt/P617+ef/zHf1TrpT110seifswQTWsSBVPMV3ZCHJHTz2PD0C8xmnsJ5bH1zDdm2bt3L3fc8RSX\nv/GP+dhH/gWvY2NbeULNoBN5+LRIjA6mFSzqDIW1ltQs+V88eYg0tH23RxAnNDsQF03ufuBHvPWt\nf8Dj22xOPeV3MDpnsG32yzw5/RUsdwozAld3MPUQgxBLmugQdOZyfLCgBNq4caOqQOZ5Ho7jUCwW\nlUmdMOhiEOe6riIF020uldCiKCKTyahccd/3cV2XYrGI67rKyBzAcRw1A5Del+/7eJ5HNptdRDzu\n3buXIAhYu3YtExMTKu0siiJFGL75zW/mk5/8pLon0zMjSw0ixABvNTieyIl+s0W9pG2/e2c5T5/e\ne7Lfc74ceknPfsSnfJaubNi7/eVS2wY4vnG4yZQjqSIaEEOHB4N2HWCAYwtr164lk8mosanEB/0m\nS9M/UmlXSIN//ud/BuB//I//oRQsS405FilrnBjHLIA2z2z7NiJ2sj7zOk4q/g754OVYbo4p7z5+\n+tT1BIHDWOksTjrpV/jg3xxeo+pff+3lfOm6/8CPTyCXORvDK+MnD9BJ7sO1GziajRkZmJGOmegY\nyKT1c8d6+zum7Z3oNwxDkTX5fF6RbhITmaZJuVym2+0+p82FOJJKcu12W8WD4jkVRRGdTod2u43v\n+6pYjUxK9yX1UiRRs9lU943neXS7Xer1OqOjoxQKBVqtFtVqFcMwyGQy/OAHP+Ccc845NBdqgBcc\njgly6EhA3OYl5atUKi3KB5ZAPm0g3e/HMAw8zyMIAnzf5xd+4Rf4+te/zu23306hUFikYurtzNMd\nXGTH2NowGjUa3EaoP8n6sZczlvlZotpGgsCgFe1ipvMwmuZw4fm/zmf+7mZ+47Xv4DOf/wrbtpu0\nu2OY1ggJJnqiKyLKsqxFpmrp/Usnl8T7ZjAw8bsGplHg3268h7e+9b/x6JYd+PEYYTSMGZmE4S6i\nZDuO1V0ghhLQQwMjNtC0Q9eZpyu9hWHI7OwstVoNgOHhYaXQkbQuYFGJ+XSbS1uImbT46Hiet4hc\najQa1Go1Wq0W9Xodz/MU4dMPhmGQy+WUdFjTNGUqlySJmpFwHIdut0ur1VIvH9/3+fSnP83v//7v\ns23bNqU0EiWRqM0k5U3OQ8jGAY4PHC8E3gCrx5H2kTkSJNQAhw/Pd6rgAAMMsHrMzs4qWwMZZxuG\nocaRS8UTMt71fV+Ndf/iL/5CKVPS1Xj7TbbKT1f3ibwCjtOlqf+IZ/bcRqN0J3FhL90IjGCEl5/z\n60xkX4ppaJRzm5jb4/D+93+Ks865hN95y7WHvE1e8qsf5Qffe5KsM047MNk7P0kYTpM0Tcw4wdYM\nXMNEM3y0wESLTYzEVBPNBxtPCCEzNDREJpNhz549KqvDMAzGx8cVYSTtKUVoemPA9HXUNG3RJLXj\nOGq9tF9u2mIkLUBIQ+IQy7IUYdVoNLBtW6mSRO0khYLSBteFQoFTTjmFSy655GAv1wAvMOxnrtHx\nCzGrFhZ4cnKSbrer1EZCMPR61Mjf8iMmc7qu43keZ555JjfccINSmojZWRqyzXSA7xtd6JSxnQ7t\n5AF2bNtJZtM2nEJCc97ESkb5mbNfTjg1xCNzD7D7mYRWzeWuu55k5+QnKf7TnZz3kpO46OdO5+Uv\nOYkzTt6MZnXVTIR0UmLaDSgCTNMW3PpjLSCIQ+bmWnzmHz7HV/5zkvacQ8YskJgO7bBGrM+htTLY\nBR8THcswSPDRAptETzB0iIlA619xrLctV7pGSZKwdu1agiBQFeREarl+/Xra7TbValVVKWu1WuRy\nuUWzL+m0QnlRFwoFKpUKmqaRzWZpt9to2uIKBKIOEoY/m82ql7dcR1lWSlyGYajSzLLZLLVaDdd1\nVRqcvBBM06Tb7VIsFtm6dSuve93rOP/88/nc5z5Hu93m1ltvZXZ2lgsuuIDzzz9ftaWmaZimuSht\ncoBjG/1S1wY4/nGkg/30/g4VOTUgLI4spL0HJtUDDHD0Ys+ePUqh3s87KD3JlyYeRF1sGAZr1qxh\n165dPP7444ocku97K5v1/lixQ8gcpmbihDahtouwVqTlfIe5RoVOJ2G7oVHaPIr3zE4e6+wkLq/D\n9AvMTD7KT35wB5tP/n2q3TovPm8jt/7fjx1QO/zhH/0Lk9N7+c73vs+We+6nNPEKvE6NnH4fLjZV\no0UhX0fXFybmA22fjYOZqvIMGCxWXPUrnLLU5Hu6AI2oeTRNIwgCVZUsm83ieZ7ydJLqxlIBudvt\nqn2k9yXpY5Zl0Wq1GB8fZ35+XqWNwUJ2ikxOF4tFNZGt6/oi9VA6TgmCANu2abfblMtl5ZEk1hji\nUySxqqTDSXxUrVY599xzufTSS7n77rt59NFHabfbrFu3jscee+yAruUAxzeOOnJoqdzQ/Vlf0nBW\nSguRziXdWcRxjOu6PP300wDP6czTKWFpMkCOWwikKIo49dRTGRsb495771UstZAxS6Wkyf92kiHS\n5yAxsP08o4Um3bkG9fAbtLseYehw14MVSuU12OYsnl6jcNK5uN0TaVR/zPz8nezevYevfvUuRsY0\nTj/L5KyzXsTZZ1zAqSeeRa7gMLEpQ65sEQUOZlcnDFtoBjz5+DT3PTXNgz95hvt++jA79jzOjj3P\nkJhn8aJNv0xlbhvdmf+DHnj4TSgMVxVx4xMAGonpP6cz7z3f5a6/tHX6RzrRqakp1WGWy2V0XSeX\ny1GtVmm328r9X16qkgecTiWT9rYsi263q7yCNm/ezPbt2zFNE8dxlARUKp8Vi0VM0yQIgueQMfJ/\n2tfI8zxlUi2l7aV6nsxSCBlnWZZSnRWLRR5++GF+6Zd+ifvuu0+VwfQ8j4svvphrrrmGs846S80+\nCYnV74V4qJBOiZLrtz+EX+89v9RnB4uD3eZSx97vcxmUyXWU5dIDlF5Cud+59+4/PdgYYIDDjV5S\nZ3/IhgEh9PxjqWswII0GGOD5xxNPPKFig34VSpf6X8YK7XabK664gk9+8pPceeedz/EtEs+b9ESz\nxCgCiUtEVeI1nmK+uwPbsMgNTRB2Omx/cAeBu51i8SSGSqfQadbw6jtpR3diJ+dy1mmvYfLpbdjD\n56PrHmtHN3PO6RfSbNXx4hledPo45TXrKRpraTbn2brtER57chdDwdkkkcGOJ+vcfs8tWIUKSeNC\nxteewN7OPeyauosknCTr5Mnvi49WGrulq+auNOZLfy/j5DiOGRsbIwgC6vX6orFbNpvFMAxmZmZw\nHEfFb5IeJvGHFLaR/Yp1hQgLxIy60+lQKBRUXCDrCtkkMUvvMYsfkfgUZTKZRT66sOBhms1mlV9p\nqVSi2WziOA62bat4xLZtvvvd79JsNkmShHx+oXr10NAQl112GV/+8peXbe8BXlg4asihtCwv/ftg\ntncggVU2m+XWW29l9+7dquR8b2fejxRIB4DCNv/2b/82W7du5bHHHlv0gEvnlN52mhxKM9zSARqG\nQdafwqvsQQfGRk4j667jme1tGtoOyqUzsfQJ6i3otExsa4qMfQKnbj6PhjfHLd/9Abfe+mNOXP9T\nNq0/l3q9zuPbfkq+rHHSSecy6m7iiacfY8/cbmLD4qTsSwmCgHWbxtm15wfY+SY5/QxshnDsvczV\nt6MbU5RGswul7leBNKHQO9OxHNJk0po1a5Q5tFQdS+cEt9ttcrmc2p9lWYpUEgNreXGKlNO2bUXY\nTE5OKgNx0zSVwXUYhmSzWXWsIgftd5zicRTHMUNDQ2r/vQy/vHCKxSK1Wk1VSpB1TdOk0+mwefPm\nRbnQ99xzD29729v413/9V84999xF7bu/bXug6H1el/p+qZd8+qXeS6ikkV53talzB5piJ23Xqwrc\nX6S3sZpBzgADHG0YED7HB27ec/+AIBpggOcR7373u/n85z+vxqn9VD5ppMf/gLK7+OQnPwlApVJR\nnpiyzbQnZXryM709IYeSZMHzyDFjNKNNNw6Jkzynnf6LbNsWsGumwpriqeSKL6KS7GSqqbHWPY1m\nBLff8++MjG0gr/0MibOFyT1tqnNPkckWaXlt7r33TjJamby+gTDxMQo6wxMvoTa/k5nqHHtrRbyW\nhd/wWLvBplrbiR/OkEQzFEsBjt6CyHgOsdUPvecn6Dc2Tf8tk5uizJGy8rZtKyKo0+moSWHLsmi3\n2ziOo2IysRwRgiddyGZ6epokSRgZGSEMQ5WWVqlUlGpIytFrmkan01HZJmnlkMR+YmgtKWrpz4QU\nFBVRLpej0+nQ6XQwTZNGo7EobgFUOpuYbAtp9L73vY+/+Zu/WbbNB3jh4KghhwSHyj9lf9UDEpwm\nScI3vvGNJcvVS8eaNpOWgL7VahFFEdlsFoATTzyRr371q7RaLUUSpDvzXiVLeh99OzjLJta6+JHP\nbLvKqWvH2OyO8uijddYWT6dQOAHTSJjWbNaYp+PrNg88+AMyxTWcvukXCaz7eerxGZ7e+gAT605i\nZOR8KtUdbPnJDopWSGLojJdPpTC8hqce+z6NrseUt4mRwinUGhrmml3MzD/FfOURdK1K3tYwiYD9\nI+F6iYDllF1CokjVL/HpMQxDVQrL5/NEUUSlUlEdda1WY2RkRG2jd2Ylk8kopVilUsE0TYrFIsPD\nwzQaDcXaN5tN1XELYSNEkpyLMPNxHKv0QUAtJ8ct1cvg2Y5/eHiYer2uiMIwDJX81HEcGo2GUjjF\ncYzv+wRBwO7du3n/+9/PDTfcoO6r9CzGwT5H/Z6ZQ6lI6iVNVkOirHZ26GDImKUkyYLeNk2rqXol\nxv1UQwMcPzhUBMql684bkDEDHDYMCKIBBnj+cPPNN6sJ3n5elTJuE/NjeDbOOOecc7j33nvV+OFV\nr3oVW7duVYQRLLalSKdapccj6f3KWDawHOJEJ4gNwijk6amnWHfyOZjaGczv3oul78CyqnTDKeZ8\nnQ1jv4oVryGO2lij28nlhnmiXqfZhuLwWtbkCkzN6MRMM7ZhhKY3S81rMTk1Q2X+box8FtM6izNO\nfiWzM2Va/ndpNzokfpViNsGObUw/Q2T5qxpf9lNny//9lk3Hcp1OB9d1lY9oPp9nbGyMTqdDHMdk\nMplFBIzYRIhiS65VeqK/VCpRr9cXlZ1XaX2p9U3TVNkMkpmSvm4ST+i6juu6KsNAKp3JpLYU4hFS\nK0kSSqUS09PTlEolNE2j3W4v2p54m7ZaLYIgUOmJuVyOz33ucyu2+QAvHAwMqXtQq9W46667FJkg\nQV9vsCipZq7rKoPnCy+8kI9//OOccMIJuK7LxRdfzBe/+EXK5bLKW5Uc0jTk/5V8YwJNJ0hMkiRD\nksQ8uf1uEncXGyfG2bXtTmZm7iTyt+G197C9+TBDxVO54NS3sWH4fKZb9xEHNcrDBTafehYT60/F\n71hUZz2MbBdndA7PeYinJ7/Plq3/SSfZjl6YAcdn3fhpjBU20mh8i1rtFmxzO8VchJtYGL5zGK7C\n4gBbJJRDQ0Oqw3Uch/HxcdWhy7XI5XKYpsnw8PAisz549iUs2xQZZi6XY2RkRJWInJubW1QtzDRN\nstms+j+dwpWGLCvfZ7NZlc4mVQaEQBLVk5BQxWKRTqdDtVpVVc+q1aryLdq1axeTk5PqJV8qlbjj\njjvYvn27mvU43OhHlh7rOB7PaYCjH4NgfYABBhjg+Mf09PSiybt0pWJBehwiccKuXbv41re+xR/8\nwR/wspe9DICtW7cqsiGtEkpDxs29++iFofvYWkJeM7GjFs35u3j6yS8SxA9iuPeyc/I/mN57F0VL\nw7TXoJvDnH7a+axbO8bU5CPs2rmFE08Y5WdfcSHj42uZna4R+zEnbvoVHttZ5/Ht25mv+DjxiZSN\nM4i9DKXiKK1OB91uUJ28gyw7KWWrZJwOlhGAHi55vAeD3jZxXZeJiQk1sZ/P56nVanQ6HWq1mrpm\nlmWpqnJiJZHOgBAyRwrhCHHU6XQYHh5W1ZI9z2N+fl5VKRaySBRi/a6V2JBIcaNcLofnebRaLTVJ\nbFkWruuqrJS9e/eqojdyPHIOMkHdbDaZnJxkenoaWEgrk+yJAQYQHHXKoecb3/nOd2i1WliWpR6q\nfooJYYuFwR8eHuaf/umfGBsbo1Ao8NhjjympocgNe/2JBOmOa7l0OEfvoMU6mqYTx038YAvbnngA\nSyuQH4uZnJnBskcYcjLE2pk02yH53CymWaO1o07obSeTPRXL0Zmbn6der7N2Yh0nbPxlnnrqduYa\nFUr5zawvXki7eg9T3tMUR8aZnNqNZu4lqm6jmCmDHmIYLTTdREs09lc5tBr0ykDTnjuiuJmfn6fb\nXTDZrlQqyjROOkf5Ln3NZBYgDEMajYaSivq+r8zoZDlR+eRyOZXvm/Ya6vdSDoKAbrdLGIaMjo6q\ndDC5VySNTcil2dlZgiBQHfPQ0BCatlA1TWYahOWXGYShoSFlHv7pT3+aq6++elElhMOFw+EP9Hzj\neDynAQ4/DkbpI8TQQDE0wJHCQD00wABHHldddRVf//rXFxlIp1UiMvksGQgSb6xbt469e/cC8IEP\nfEBtT2wT0v5Bvarl9O/0xNdzvgsXlEaakWAkIQYdjKRJtbOLBBPHjZgYOY9G5aXMNXawt/WfzGp3\n0sHGC9bhdcYJwhYzM/+I70M+dwFnnP3/0JjLc/qGIo88UqRcPhknt5k1zlqS2R9TMmrMeVtodSZZ\nUx4BYkCDKE8QRcSJj5EY6tgPFdLtIf9PTk4qv09JyarVamSzWTUJnVYJiblzLznkuu6iMfvY2BiV\nSoXdu3ersb5kk5imSaFQoN1u47quqhqdrmQnSiiZUNY0Ddd1qVarSnEEC36mw8PDqtCOCBYymQzT\n09N0u10mJiYwTZPZ2VlKpRK1Wg1d1xkdHVWqqUwmQ7FYpFgssnbtWl796lfzsY8dmOH4AMcPjhpy\naDmGWx6WpQK5tKzwQDoUedjiOObHP/6xkvPJgyv7SHfmkjcqctGhoSFOOOEE2u02l19+Oe12m0cf\nfZR6va5UHWlPmH6dea+KoVedEoegaQmaEZMkESbg2AZtv8Z8K6FQLDI6PELUOYn51jPMTd9GNbkT\n7CGswulkjPMgnmHPrq+jYWLZZ3DC5otpzUesHT4R3Q8oD51MYA4zNHwS1em9mMFTROFe/M48pWJ5\n35GYJNEQURwTJ7HyHFouPaz3mu0vLMuiXq8rCaQYrAGqEpnruui6rogWIdvk+sryQg6Jqkd8iarV\nqqpeIC9zUfeIwkikmWniSVh/MbfWdZ1CocDc3JzKV5YXQD6fXzSDJGqkRqOhUuQApQaq1+sUCgWy\n2SyVSkXljGezWUzT5Prrr+fee+/lj//4j7ngggsYGRkhjmNFlIkBuvyW9kibti93zfr5Kh0JEmUp\naXA6Xav32ex3zCsdaz9V4HLLrpR2NsAA+4NBwD7AkcKAIBpggCOLH/7wh2qs2mq1lpz8TZc4D8OQ\narX6nGU++tGP8vGPf1wpSlbyfeydFO2NJ5ZaL2Nb+FGInnSozD9DPrOesVxMc2Y3kMV1NnDOppdg\nx2X8cAc7d3+fjN0l8LfRbNyDH5SpzD7NySfbZAohlfp26v7DNLqPsG1HFz2JwOjQO6m83ORmOjY6\n2HhC13VVBr7RaFAul4njmHq9DkCz2VS+peJlKkbS6X0GQaBIPalIPDo6SrVaVVkMzWZTqX0qlQrj\n4+Oq6IzEjxIDSLEasY+QTAnJNJDYJEmSRdWz0xPesh35vNVq4XkexWIRXddpNpsUCgVc12VoaEgV\nwZHYynVdvvGNb/Dyl7+ck08+mS996UsH1MYDHPs4asih5dBPudNLFvXrPFYLeSibzSb333+/8pbp\nVZ70riOeNUmSsHPnTu6//35OPvlkRSrddNNNKi84XV2gn3KoN6BNK5ZW8o5xTA3TAK81zfZqh5w7\nAU4V3W5CZGPqMFE+HTMYIyJDUH+aWK8RBY9QryZ0vSGa9WcYHcuhGRFeeyetzsN48Vb2znjYuoVh\ndYDFqUvSsfXDwVyPfttKSypFydNqtRTjLvnDrusqo+e0BBSg1Wqpv4XxX79+PdPT0ypvV1Q8vu/j\neR5r164FUKmDcj9Ihy6duaSp2bat0spyuZw6JpkpEEWSeBaJKkrup2q1qlRMuq4r5ZGmaUxMTOC6\nLnNzc8ow2zRNduzYwTXXXEMURVxyySVcc801jIyMqJdXmsjsTZc83pUzvffeofAzG2CAQ4mBemiA\nI4X0vTYgigYY4PBCsgbSZE6/8bCMVUUF8rKXvYynnnpq0TJbtmxRJIWMQ3snxmRb/eKJfvsUpJd3\n9BjHMvCjJq3WU7Sbe9D0EJIG3TBE86sYmo1lrCfRprA0jyiaJQ6nmNk7Sb2lYyRNGq2EOM6QUMSy\nZ3Hz8+h6iBnaoHlAbtHxyER7vzFaOpboVQH1nstKkPG6XJP0JHC32yWXy6lxslyXdGaHQCajJVPA\ntm0ajYZK35qenlZWEkmSMDQ0BKDS2NIZBWnyzrIsVbZeStfX6/VFxXWkXL0cc7rYjrSj2FoUi0WV\nFpfNZtXf6fOX85bsjFqtxpNPPsnpp5/Ob/7mb/LBD34QgHe84x1ce+21q27rAY5dHHfkkPy9P52F\n7/u4rsv999+vmGAx+V2K2JDOVtJ53vOe93DeeecplUomk+Hhhx9WJctF8tevM+89t6VUCUt15ra+\nr0ylFdPt1gnDNvgWaFUwQzpBk9nJCMMeQ9cqGFYFnQq+P8X07knqbR/HDNn2TEBCFo0C2ZxHvtBE\nSxLMQANdI+o5HmnzlTrzdCWFfueyEuI4VkZxUvFL2lAUMkEQUCgU1N/99iGES71eVyqwZ555RhFF\nkhMsRFCpVKLRaCi1j8h4pTMXAsq2bbLZrMorXrduHb7v4/u+yvWNoohSqaSIIyFshDTUdZ1sNksY\nhoyNjam85Ww2qzp5z/MU6STqJkCRT7qu8+1vf5uHHnqITZs28fjjjzM7O8vGjRu58sored3rXodp\nmvi+3zcN7Xgnh47H8xvg2MIgIB/gaEE/UnJwfw4wwKHB+973Pj7zmc8sUnD3ju3lb4k3Op0O55xz\nDtddd91ztlepVBb9nyZJ0mrq3grIvftMj4nSY8B03JSEEToJOddE09porWFi20fLRXTD3XSiLi3N\nxtRDYqcKgY9jGARtD8sM0AhxLYcoaoBWxdR0EjMhiS2MJItuOvhJtGSss1Ts1VuFrbctej/vbS85\nXzF4FmJEVDZSKj5dCVnS/uR/IWTEIFoqDY+Pj1Or1XAch1wuh+/7VCoVDMOg0WhQKpUIw5B2u71I\n2Z8mBeX4xQtpeHhYpaWly9dLKpvYXQB9FU7dblepigCVPdDtdnFdl3w+T6vVolQqAc8W0YGFFMZM\nJsM3v/lNNmzYQLfb5brrriOXyzE+Ps473/lO3v3ud/dt6wGOfRwThtTysKfVDul0nnQHuFpiqHeb\nQRDwox/9SJl4pdUWaci2RdnTaDS47LLLuOqqq1TwLg9wPp9XlavSnWCaxBLliDDX6X30Q7rTTL8U\nkiQhCQIMrUsmE+ImNiYWtqVhuvPE1oO0+A5t7ibQ9xDTwjZijLjFULFNLuszMmoyXA4pl5u4Flho\nWJGDFmUwyT+HvEqfkxAc6R/pVGU5SeMSNUu/65feZvq34ziqQ2w2mzSbTRqNBrDwYk2bT6fLTVqW\npYgd8QuSlK3h4WFGR0dxXRfXdRkeHiafz2NZFkmyUC1CfIZEvSNqHFlG9un7PlEUsWHDBvWil/vI\ndV3lZyTEjBxbulKB5C1LKUpJHet2uzQaDTULMDk5SS6XU+0oxnS6ruM4DtVqle9///ts2bKF+fl5\nHnzwQd71rnfxa7/2azz11FO4rqtMvHufnd52X81zdCjUYfuL3md9qf2nBxPp37337pE+/n7Hl8Zy\nqrwBnl8MlD4DHK+4ec/9g/t7gAEOAe6+++5FwfZyyOVyuK7LyMgIt956a99lTjvttOcQIr1p9kuN\nx3qVN8uN7SLNwDBdHCuHpi2kKRnZFgkROjks08F26+jaXnSttrAvzQJdBwNMXUfHJk4M0CN0swP6\nvqnl2CCKNYJkddXIeieZ06Xe+xl797ZLbzwhKXniBSTxl4gChDAS24kwDFWsJ+P9MAxxXZcwDJmf\nn1dFiXbt2qW8TPfu3atsIDqdDsViEcuyVHzRa+mQLnIjWRGyLyENm82mSjmzbVvFQ0IspRVOcj5S\ntSyOY/L5vIrLZJK40WioSep2u00YhtTrddVG4nm0Zs0aZVztui6NRoNPfOITvO1tb1vxOg5wbGIQ\nfbDQMYvSB571pllpHU3TePGLX8yHPvQhpUZJK2VOP/30RQHeUp1ZP6Q7tpXW8WPohhpJYqElFpqm\nY5bm0OwYyKPHWQxCcppGRnew9DxxnCPWDWILktDCDyyC0CaKIdF9MHzQEmItJiAm0PavikC/GYt+\nn/W2S/pcpZOTFC/pzAuFglLaCMOfXj4tsex2u/i+TzabJUkWDKAty6JQKLB7925mZmZoNBpUKhVm\nZmYUEZP77gCfAAAgAElEQVTP50mSROUcp1/C8kIRxZF0rsPDwwRBoI6n2WwCKCIml8upNENJXZNj\nFpmnSE/lhSjLyKzTzMyMYvHl3pB8YZEvR1HEyMgIGzZsUCUvdV3niSee4PLLL+eOO+4gk8kse08d\nj+lX6Zk1+RlggCOFgSpjgGMFA4JogAEODrt371YTgCuh0WjQ6XR4/PHHl1zmIx/5yKJxWb8YYakY\nIz0xuxI5hK7TjRISTCzDJQogzk6iOQG+r+G3TGLPIBOUMLsFEi9PHGf3xRMRceQQhhnCyFkgiGAh\nntBDYj0i0AMibeXKWOlzSStfBEsRYf3IISHFZCzt+z7FYnFR+0lKVaFQUDGgbF/iDNm/jP+l6hhA\nsVgkjmMKhQLDw8MqTpBy8pImJhPCck4SLwDK60jTNDKZjFL2SEEeSUlLxzlp0io90dnpdPA8T3md\niidqushNtVpVMYLrutRqNUUUSUEeTVswP8/n8wwNDS0ipW655Rbe8IY3rHgtBzj28IKNjtKO8yIp\nnJmZUbI7eSDSUkR4tuNpNpsEQcDnPvc5LMtSJcUlTajRaLB582bVCacJj97OXMiBtIdRv1mB9Ppp\n6NpCaUTN1DFsk0TTCCILzTCJEzEfNgkCjcAPiQIfQ99XOS3WiRKU2iaJdcLAJIp1kihDnBjodkDC\nYjlnWmWS7nh7X079Uv+Wm9Xol1csqhhJ82q324pZlxKPlmUtWl9KO0pna9u2MpUW/yIpd18ul5VX\nkWxLmHwxjpPcYLkf5DpIVTSpIhDHsTKcE/mpSEPb7fai2QrpYNPbF+moqIvkPKRamXT4YjxXrVax\nbZtut0u9XlfqI3kpFAoFHMdRaiTP87jqqqvYvn07pmkuSsETMkwILFFdpasmwNLGgYdSRbTa7eyv\n6me5e201+zoUSO+7VwmYJq9We1wDHP1YjhgakEYDHI0YEEQDDHDgmJ2dXTSukrGypCeJ0jsIAoaG\nhvi5n/s5te6f/Mmf9N2mkBO98UQaElOk44mllEV9lfthjE5CGHUJEh/Ngrg7CkkG3Yyx3IRE0/A1\nn1DvoFttTKOLliQQmCSEGGYA+JBoRKFFFFokYR5iE9OM0RNtxXhiOVX7cuh3rmlrC1HtCFEisVw6\nQ6B3/CnWFmmFjggChJQRv9BOp8Pc3JxaZ+3atSTJQvpXry8QoFLbZD+tVotyuUy5XKZarWIYhvJb\nFdWSKH/SBJOcmxBgUlRJfIoqlYpaTzIfZNtCfknMlCSJ2men01GxiUzUC7Hk+z733HMPV1xxxYrX\nZYBjCy9YcijdQbfbbebn55mdnQVQD1f6R4J4IY1yuRzvfOc7Wbt2LR//+Md5z3veo9RE4iQvZddX\nwlLpLsuhl4hJzwgstb6crxAT+xvM9+t0l1r3UBIF8mKt1WqKnXccR3Vg6ZeHQPKIRckj6X2GYdDp\ndIiiiJmZGeI4ptFoKPXN3NwchUKBVquF4ziKQBGSSq5/GIYql9fzPHK5HMPDw2o2ARZSD2Ub8pms\nnz5OUUU5jqNykB3Hod1uq1S49PppSWomk1HtIMciBuuO4zA9Pa0UTFEUMT8/TxAEvPa1r+V973sf\nDzzwAFNTU4oEkheJzGZIW6VfPMejqmiAAQ43Bik7AxxrGNyzAwxwYJA0JRmv9ZsUksC8Wq3y7//+\n7wCce+653Hnnnc/Z3sc+9rH9yjo40PFaerJ3uXiiNy0/fV6rndiTn/T6Ky17sJCqXY1GQ1lHiG1F\nJpPpO2Eolbxs2yafz9PpdDj55JMZGxtTMV8+nyebzeI4jspUcF1XkSziWdqbGieq/2w2qwrsNJtN\n5ubm1CSwrCMetkIuCdkkkHaUSW2pmhaGobKiSGc7pNPH5ubmyGQylEolRYQVCgUVW0ZRxOTkJJ7n\nkc/nlRrJsiwef/xxTjnlFC666CLe9KY3HfQ1GuD5xwuWHIJnc1BzuRxbt25V+ZTLpUMJ818qlXjb\n297G7bffzrXXXsvU1BTValU9nJlMhmeeeWbVx9EvR3Y59Pr79LLt/bCamYTl8HyRQ3EcK3Y/PQOT\nyWQYGhpSxEXvOtJxGoZBs9lkfHycXC6nZKDlcplcLodpmmSzWaVOEg8jUfGk83ilDWGBQBFZpud5\n7Nq1i3a7vehlkMlk6HQ6ilwSkkeg67qSaUpamOM4VCqVRb5N8iPbiKJI5TQPDw8rw0PHcWg0Gmrg\nIWqlbDZLqVRSecO2bfOlL32J3/3d3+Wyyy7j7/7u75iensZxHG688UYuvfRSPvGJTyyqjJau1DbA\nAAOsDispgwbB9wBHO5YiiQb37gADPBfvfOc71eSwEAIyRk+rymXsOj8/D8Dv/M7vqMIovbjvvvuU\nMXK6dHkv0ooc+b+fimapFLWlJqvT5E96UjqdJdCPIEqTVWmPzV7lkCyfnpBPl2tPL3+wqupMJkMm\nk2HNmjX4vr/IDkK2LaSIxHxSZEYMpWu1Gnv27FHLCuFUrVZpNBrUajWVxVAul9V4Pu1zK+N6URxV\nKhWGhoYol8tKlZSuspzNZlUbpLMl5NhFFSTV0GSyWLxLZXtC/ogVRhzHqhDPtm3b6Ha7ZDIZarUa\n09PTyvZi48aNymxbsgySJGF6elqlpd15552ce+65XH311QCceeaZFItFyuUyl1122UFdtwGOHI6J\namX7g96OsRdpOWW6M7vxxhuVakKQDs5lHVGs3Hjjjfz93/89n//859E0jTe+8Y0Ui0W1j263y9e/\n/nU0TVMP7GqPuVcJI8cqMsDe4+/thHvTVWT59Hrp9uhXtapXDtvLTqc799484N6Xhax/oESRpmk4\njoNlWapCl5g+w7OV4yRlCxbSyMRXZ25ujnXr1uG6LtPT0yr3ttVqqXLzUuYxCAK1nuw3Tc6Ikkhe\nVkK0AItkwkmSkM1mVfl6eRmkXzbyv+/7OI5Ds9lkbGyMarVKoVBQFdpEdipVEOR+lCpmk5OTJElC\nPp9nbm5OpZF1u13WrVun1pd7UdM0Go2GSiV0HIdrr72WD37wg8qULpfLcd9993HNNdewbt06rr76\nat7xjneodpBrvj9y34NFv2f7SKZepe/nlc47vWwvej9LD9rS6xyKQdAAhxb7Gwxfuu68QQA9wHGD\nlQiiQYrkAAMsEDky2ZckySJfGcuylDVAEAT87M/+LDfddBMXX3wxt912G47jcN999z1nm1u2bFEB\nu0xk9xJE6fHCcuOk5dREaXIova1eQqd3H/32uxx6J+D77V/imHSMkVbeHAhEWaNpGvV6nUKhgO/7\nSqEv4/V0ZTPTNBkZGVHG0GvWrCGbzTI1NYVlWTSbzUVkiZhQy1hR9ifxlFQMcxxHWUpYlsXY2Bid\nTodGo7Go1H0YhmoSWGJQsYSAZ2NV8TjKZDK0Wi2Gh4dptVoq5pFYKa0kSsfB6cwSyUgYGxtTKWWl\nUonh4WHleSokkexPYptMJsNXvvIVMpkMe/bsUYqlhx9+mHXr1vHKV76Sr371qwd1HQc4vHjBSQDS\nZIqQCfPz8+zevRvHcfqqXaSzKBQKXHbZZdxyyy0AXHvttUq58da3vlXNEEjA/ZrXvGaRzC+d95ou\nNylIM+79zJmXQnrZdAeeXn85WWa/SmNL7Sc9C9Bv/9LG6RmCg4Uw6M1mU5mzSRUxIfTSxy0vZN/3\nmZ2dVWZwtVpN5Rnruo5t28zPzytZqChzJM0LoFar4XkeruuqimTFYlF5AImZW7PZpN1ukyQJ7Xab\nKIrIZrPUarVFqWHSiUuHn5aGShWx8fFxldcr5yW+RpLmJedsmiau6+I4DjMzM2o/QlyJgkiIIdmf\ntBOgyCnXddW2hTCzbZsgCPjoRz/KLbfcop6R3pmmQ6EQO1awP9Lpo3H7AxwZ9AuUB8HzAMczBkTo\nAAMsmFGng+402u22IgKmpqa46aabAHjggQfodDqcf/75fbd5//3302w2KRQKalwHz/XsEaQnj3vH\nayuRQ0spidLxRL9qzr37XW4c03s8SymWpP1WOu7VQmKVNGFjWZZSEKXPEVAESrPZpFKpkM1mmZmZ\nYceOHVSrVWVJEYYhs7OzyuxZVP7dbld5CkmBHNm2tE+n01kkTpBjkolq+T9dPS197OKXJFkQnU6H\n4eFhTNOkXC4rM2vbthUBJl6l6baXCW7LsqjX64vaXvbTbDYVKSkerWnhhNh4SGqdnLvv+9TrdTzP\n4wc/+AEf/vCHD/paDnD4cNySQ70yxN6ZfJH7aZrGfffdx44dOxRpkDYchmeDNd/3ueiii7jrrru4\n/vrrGR0d5cILL+Qzn/mMUgbJA1Kv13nTm95Et9sll8stSv0SpDvF3uNLK396lQRLdfDp9WWbsmyv\nkqjfi2M5LKfESiuD5GXYWx1hfwPd3peTdGqZTEYRLGmZJCyQHd1uV80yCJG0bt064Fn/nFqtRrPZ\npNlsqraZmJhQ+bVCEMn9EIYhtVpNEU5CnFiWpVIJ0+RKEAQUCgWlHpK8c2H6pZNPK8qEgIqiiL17\n96oqZVLFolQqKf+i9EtZzKxFVSVqokKhoPKnJb9Y8oSlUxezbpltKJVKbNy4kfHxcdauXasM9CqV\nCqVSiQ984APKTys9c7TUIGGl69v7PK50HxzIvXM40EuKLae8W2mA1A+9qsCBeujYg5BAq1FVDAij\nAY4nDAiiAV7oqFQqi9QY6XhCxoP1ep3Xv/71vOlNb+KKK64gl8vx7ne/mxtuuGHJ7b7yla+kUqko\n35h04YrVxhPAc8b+q40n5O/eMc/BxhO96/dmGvROgB9MPAEL10DXdXzfp9VqLTp/qdLV7XZVJoFt\n2/i+TyaToVwuUywW1VhcfENlvJ/JZBgfH1cxiviCShpZEASLqoKlfVOFOJSxvsQzovJJF8tZaoI+\nDEOy2SyaptFqtajVaszNzQELcUa9XieXyymyKD2el9hJ1ED5fF6dt5ybFMsR4+pOp6MmpKU6n+/7\n5PN5zjjjDDZv3syGDRtwXVcVuRkaGuILX/jCfl3DAY4sVkwr0zTNBW4DnH3L35AkyV9pmrYZ+DJQ\nBu4F3pIkia9pmgP8K3ABMAe8MUmSZw7T8R8wpJMwDIOHHnpIMauCdOcjwbXv+1x99dVK+fGqV72K\nT33qU4yNjalgXwJlXdd50YtexG233cZrX/taxUrLg70/ndv+yDT7BaaHavur3f+hwFKyVUm5KhQK\nixz7RaYrqVfSYYusUfJzJe1LrkMmk6Fery9KuxIljlTokg5X/hayKq1aEiWRYfz/7L1pjGVndTb6\n7DPP86m5uqpH2z3YboMNihkcM4VY8AV0wyBFuUkQ/CBRMB9DDHECRAlgIcEVCCnD/SADJKAQyE0C\niWMSwpCgQFrG2ODGYLfb7qqurqpTZ56HfX9UP6vWeb1PDd3V7nb3XlKpqs7Zw7v3fvd613rWs9by\nIplMDnUF4Hzg/WEkIhqNSu5vPp+XVLNEIoFyuYxQKASPxyNdyFj7R98XfUwAsliVy+WhyEcoFEIo\nFBrqeMBrZb4xgR/mITNKEI1Gsba2hlarhYcffhjPe97zhha0SwnEuPLckKt1ndCyE6fX3HYrAMhN\nP3PFFVeudrkW1olf//Vfx/333+/Ydp1/M1j4n//5n/LdwsIC3ve+92167K9+9at4/etfj69//esI\nBoNDpRS2K1vZ+xwfMFwvaLudYa9Ef0J3KaPQps5kMmI3s/sxA7l8huwAHI1GcerUKQSDQSlOTd+g\n1Wohl8sJeygSiUhGAu12r9f7DICLoAo/12ATi2CzBiqDyfQnNEjEFvfMBAgGg2i1WvD7/UgkEpJu\nRlDIyR/lschO4jh1Shr9BY49EonA7/ejXq+LX8QgdbPZlDq+BOFs20a1WkU2m92VZ+vKpZHtaJU2\ngDtt274JwM0AfsGyrBcCuA/AJ2zbPgigCOAt57d/C4CibdsHAHzi/HZXnDCVqNvt4kc/+pGwKPT3\nGsnmy8jaMG984xvxmc98BqlUSih1Z8+ele4DdNgPHz6Mv/7rv8Z1113nqKC2O9bN9nGijW7FyNjJ\n8bcru8nYcGJc8J6S3glAiq8RLALWGUNUhLorHYEaIt+kVPJ8TNFiGhgRdU3HZLSAYCCVLItPM+2K\nx+TiQCVLoInFtRnBYCt6soU8Hg/K5TKazaag9axvpO8NaxJxzBxLIpGQQteBQAD1eh3FYlEiBYwo\nML+Zn7NbGhcZAlbMdX7/+9+Pe++9Fz/+8Y+HlL0LDl3zclWuE7sh22UGuQwiV64WcbucuTJCrvp1\n4uTJk9IWnGLabLQRmaqzsLCw7eN/+ctfxnvf+14J5u3U9tquve/kT2wHiNpNf2I3xcmfsCwL5XIZ\n1Wp1iEmTTCYRi8UkUwGApGml02mpaVqpVKTjV7fbxdLSkgRxCczojAo+ezMDANgoJk1/kswc+ne0\nz1kEXNfEZc0ksovY1SwWi0nQOxAIoFaryTZkntHm1813WAOJJTkYeCerqtFooFAoCIOtWCyiUqnA\n5/Oh2WxKmhznZ6VSkX14/cFgELfeeite8pKX4B3veMeuPmtXLl62fNPtdamd/9d//scGcCcA8h//\nAsAvnf/7f53/H+e/f5m1W1DyLkuv10OlUpGUMpNiBwxTKKk8PvzhD+OjH/2oIL5PP/00PvrRj+Ln\nf/7n8Uu/9Ev4/Oc/L90H2u02jh07hgceeADvfve7peYLFYbuAmWCPIAz/dMpXYW/NbqvEWr94puy\nmXOvO5zpY3NMZKxoOqg+7qgcYR2N2AzY0rRWAKJs+X+r1UIymRT6ZyqVArDeiYxdyWKxGNrtNiKR\nCAaDgSgvgiQEb8j80WwcfkfAhH9TuWsGmm3bQsFkFzR2FtP1nNhi0uv1Sl4vt+O1Ev2nAdDv96Vd\nPQEgPgtGOSzLkpQysn5YtJB1hwg8kaGUSCTg8XjQbDblOIPBAE8//bREQBgh8Xg8WFlZwRe/+EX8\n2q/9Gl75ylfi7rvvxn/8x3/I+2NGFbhAbEUj3mmRwc3m7KgIl35f+Bx1BGe3xAnYHPW9+U7zmi4m\nJfNyyNW8TlyMmIAPneZRjrMLELlyNclW892Va0uuhXXi7NmzsG1bbEBgo2U5HXGv14tms4m9e/di\nZWXlGcd40YtehHg8jpmZGbzyla98xvf33nsvisWi2G+0z7V/QdmJP0Ex/Qn6EAQ3rkR/QttQ2/Un\ndJ1SpphFo1HpSEb2TzKZlDqgZNlzf3YOpr2v28vrrse6s5u+lxy37sTMMdnnmTn0XWi7a5+UAXIC\nXeFwGNVqFfV6HfV6HdVqVToX27aNcDgsz8J8Hgww8xparRYSiYR0XZ6cnJTnFAwGpbX9YDDA5OSk\nsK94XZzv5XIZpVJJ0uIikQharRba7TbOnTuHBx54AFNTU7jtttvwzne+0/EZu/Lsyra6lVmW5QVw\nAsABAJ8G8DiAkm3bvfObnAEwff7vaQBPA4Bt2z3LssoAsgBWjWO+DcDbAGBiYuLiruIChC8D2RME\naYjMmqBFo9HAy1/+crzzne/E8ePH0Wg00Ol08Ad/8Af48pe/jNXVVYRCITz22GO4++67cdNNN+H9\n738/XvWqV0l9m3e/+93I5XK499575bgsKsyXlLTDrdY/reRMgOhCEfeLXXP1+bVCHiUaXLmQcxEt\nZ7cughG2baNcLkua32AwQKfTwVNPPSXKUd83bsP0Qa18zXNu5vTzWprNpiwk7HamGUyDwXpreY5v\nbGwM1WpVCm3Xauu2EwvXcQHgvjyeBjgIhLFIIXOGz507B8uykEgk5Pqq1SoGgwHi8TgWFxfh8XiQ\nTCZRLpeFFTU7O4tms4lSqSSLuM6HJn30O9/5jij266+/HnfeeSf27t2LPXv2IJVKSfoa77dOddNF\n+XTu/HNdTMPsWpFLvU6EELnUl7Br4gQKmcLPzG2d6hW54spzXdyuZq4Al36duNxSKpWQSqWGWONk\naZCV4fV6sba2hm9+85tD+956661YWFjAE088gVAohFarhRMnTmBqagqve93r8OlPf3po+8ceewzP\ne97z8OSTT8Lr9UrZBNqFTv6Ek02i/Qnuo1OXnICjrfyFrVhGW9lGummPCeY4ycX6E7T7z507B2Cd\nHUPblKUdWKeIZUJo19KH03atZuWMOqcG65y+HwwGqNVqAjKSocSgKwCpcUrmkc/nQyKRQL1el7qj\nwLBvAEB8CA3U8Xkz0EvQiv7tmTNn4PV6xZ9gaQwG3QmukaXE2lrJZBKTk5NYW1uTmkS60DazOZrN\nJh544AEcOHAA4XAYhw4dwsGDB93i1ZdBtgUO2bbdB3CzZVkpAF8BcIPTZud/O2mMZ8x827b/FMCf\nAsDhw4efdQ+KL9fp06dRKBQwMzMj6TPaaQXWEdyPfOQjePOb3ywFkN/xjnfgX/7lX4Y6TnH7eDyO\nH/3oR3jb296GO+64Ay9+8Yvxq7/6q6jVanjLW96CarWKP/qjP0I0GkW5XB56SXXLS8pWylyPdzPU\nfitlvl1Aaqv9twsOEXW/ENHAiW5DTwVP1BqA5ATrXFsqSB110V0KRinrzZQ55w7ZMyziRiAxEAgM\nsXjICmI7TCLwTHfrdruSGkaKKrCu3ElJ1a3lLcsaoqMyJY0gFa+b41teXka320UulxOlPRgMUCgU\nRMFPTEyg1+uh0WhITjM7OxDkIhj3ta99DV/72teECZXNZnH99ddj7969eMMb3oBDhw6h3W5LKp2O\nvlxNIIo2Bq7wIOeuyqVeJxJW5oqfJNsBhUzZDCRyASJXrkZxmXPXrlzqdcKyrMu2Tnz84x/Hhz70\noaF6QGSIA0AymUQikcDDDz88tN/09DQajYYE83TjD9p4X/jCFzA2NobbbrsN//RP/yT7njhxAseP\nHxcWB1kduqvtKHsWGPYhTCaRkz9hsm/M73daA0mPx7StdYBeA2wm2wV4Zot7fRzTDjPHTNtddz3W\nYIn20Whv6zQx7e9odpU+t2Zc8Xqcrlfvy/3IzKe/A0D8A6/Xi3q9jlarhbGxMbTbbSkV0el0JC2M\nfgCPodlHmuXj8/mkSY3H40G9XkcoFEKj0UA0GkWlUpF0SF5bOByW4tperxe1Wk18g3A4LPWH6FfU\n63W5hwTcyMpiFkiz2cTXv/51/Nu//Rvi8Ti8Xi+y2SySySRe85rX4EMf+tCO5pcrO5NtgUMU27ZL\nlmX9B4AXAkhZluU7j/bPAFg8v9kZALMAzliW5QOQBLC2e0PeHSEF8OTJk8jlckOpQlQyLDj89re/\nHW95y1vQ7Xbxwx/+EG9961tRKpWQyWSkjSGBDtu2xflvNBr4+te/jvvvvx+FQgHveMc7UCqVcPfd\ndyOZTOKee+5BMBgUGp7OH3YCIDZT5vzb/AwYRuD5vS6WN0rJm2JGH7ZS5hqN1p9R4fL+OjFHnCIV\n5vj4rDwez1BbT03p5Lm4v24DqQtNO9FqncAuc5xcCDhn+JtAT6VSgdfrRSSyznrw+XzI5/MolUpo\ntVqYnp5GJBJBpVIRIKdWqyEcDsu8ACDGBsEZRocsy5J0yHa7LUWnbdsWIIapZFwsqJBZk6ler4sR\nMxgMkM/n0Wg0pJsCwU9GR5iP7PP5UCqVEAwGUa/XEYvFsLi4KPe9XC7jzJkzAIBPfepTmJ+fx/79\n+3HXXXfhta99raQD0ogaFWHZqWwVJdNz8lKAN7vBwNute3E55GpaJygXAtLsdB8nkMgFiFy5lsRl\nF107cjWuEz/5yU+QyWTQaDQE3KETT2bE448/Ltvfd999uO+++8QWI3Odti1/M7PAsiycOHECr3nN\na/CP//iPcpwHH3wQx48fx7lz51Cv18X2I5Ci/YXtMuC13b7ZdgCGGqVs15/QIJKZPqb/5v/ajjdF\nA0Ma4OGYnGx78zxktPBazOs3/6ctTntYp42ZAJlOz9P3yby/2jcxfbhWq4V6vS5pZLTFY7EYSqWS\nlJ5gd2xznARkWPrCPp9poeeJvp/sasxANbNcGOQm4MTSFUwZY0kMDWRxPnLMfEY6Y4b1ijjWeDyO\narUqgXO+S+VyGZ/85CeRTqcBrKdg6nfBld2RLSFey7Ly5xF+WJYVBvByAI8C+AaA/+v8Zv83gP/v\n/N//cP5/nP/+3+0rkBZA9sLPfvYzqe1CsIAo7S//8i/jrrvuwrve9S602228//3vx5vf/GbpgsUi\nZmR06PShQCAAYIPh8uEPfxjvfve7UalU0Gq18KY3vQm///u/L0WCCSwBG2CJViQa1TYVj6YzOm1r\nvvjcx1wouN2oH92eftQ2pjI3P6OYilHX9NHXxM9GsafMsejjEhjStX74Y14Hj2V+ru8Tj8ff5j3V\n95PpV6FQSBZ+y7LQbDZRq9XQ7XYxOTmJXq+HM2fOYG1tDdVqVcBGpn7pWkS6PpVuY0pwitTOWq0m\naWjVahWpVArtdlvqKzEtTANCulaQZa13UguFQqLMOa+4OPA+scVmMBhEIpHA2NgYxsbGMD4+jlQq\nhWg0img0ilQqhUqlghMnTuCee+7B7bffjk9/+tPSOW03ZdScc+XSydW6TuxEdDrYxQA6O+105oor\nV6O4tYquPrna1wkGw2h/MbMgFovh1KlTWFxclG1vuOEGfOpTn0IulwOwASDQsQ4Gg2Lrm92Uv/GN\nb+CWW24ZOveDDz6Ifr+PO+64Q4oXA5CgtxYNVpggkbaJgWcWpjbZRWQ6mXb0Vv5Er9eTn1HnMMGZ\nUf6AHgvHw9qcDArzR4M4en/djcvJlzCvW6ff6fQxJ9CNx9RjcvoxQSTa6AAEQCFQxPSycrmMWq2G\nmZkZxGIxlMtlVCoV2PZ6V7But4tqtSosHgZvac/rtEEd7O73+2i321heXpaxlMtlxONxeDzrTXT4\nuQY3eT94r9h1mc106IPRL2NmRLfblawHdkCLRqPwer1IpVLSBbrb7SKZTCKfzyOTyeCxxx7D7Ows\n7rzzzmfcd1cuXLbD/5sE8A3Lsn4I4PsAHrBt+58A/A6A/21Z1s+wngP8f85v/38AZM9//r8B3LMb\nA/8tvIgAACAASURBVB2VyrPZ9sAzUWa+eExBKpVKaDabQ4qcyP8b3vAG/Omf/ikWFxfx5je/GZ/7\n3OeGlIvf7x8CIQCIgjELBsfjcXzuc5/DHXfcgc9//vPw+Xx429vehi9/+cv4+Mc/LpXx+dKYKPNm\nVE2CGE5AjUbbNYDEMbKqfKfTGQJnNDCiQTMTsHFiYDgxNzZbWDg2jslcnJyUOUEvXUBan5fHMEEv\nrZz1sUwhKGICRuZYeG6d76wVLdH5Wq0mnew6nQ56vZ4Uyc7n84jH4zIHqBDT6bTQMPkMNNinC12z\ne0Imk0EqlZJubfqek2HE66GiZpFv0kLZhpLRL15nu91Gu91GsVhEs9kEAEmZ4ziI7OtFqdFoyLPw\n+XyIx+Po9/v4xCc+gTvvvBO/+7u/i1OnTg3NTT13zHk1Sg+MisZcTrnSxnMJ5YpYJy6HvGrq5l2v\nE+QEELkgkSvXorhFra8quarXiXK5PNQ5lixvMigoR44ckTo2rMlIoT1MW1WXPqDvkkgkcObMGaTT\nafzWb/2W7Hvu3DkcP34cPp8PL33pS5FKpZ5hl27GGtLbcSwAhoKs/FyDOrStaeuZ9rrpk2wV1NVj\nMe3zUeCRPhfvlw7o8njaLzKvmfuYPor2J/Q1m9eq/RAzSK39JjP47DR2fRzt/9J3YJoYg9EMLMdi\nMQSDQbH5Q6EQAoEAUqmUZMzwOBReNzuUARCAJh6PSzFr/pBhRYCMcz4YDEqWAX1KjqnVaqHT6aDd\nbksDnMFgIOlrlmWhUCig0WhIiZderyc1ezudjtQ34vvBsXg8Hjz22GOYm5vDq1/96lFT25UdiHUl\nOC2HDx+2/+qv/mrTbUw0ddT3TkrPpBhyInY6HfzKr/wKyuXyUGrQ2NgYPvKRj+C2227Dd7/7Xbz3\nve/FwsICksmkKES2HNSMGhOIADbYHmx3SGf7L/7iL/C85z0PoVAIJ0+ehMfjwaFDh/C+970Pn/nM\nZxypfqMADSeU31SqWtkBGFp0TCXE69CfmfPEfAbmfTcVvEbGnRYArXj1uLa7oOkxaAW8Wb61BnZM\n0fdzs3FwX33fRi0QAIQlo+cR96dCZLcAbssFwFTm9XpdokzlchmZTAadTgetVgsejwelUgnhcFgK\nXhOc4Zj1faJBwogXaZ1cFBj90kZBt9tFq9VCPB7HYDCQFMnV1VWJGJBNx9+875qNxNag99xzD177\n2tcObTPqmZnPivfcpOOOEr3Ym/uNMjrM90IbHPzciU2mt9VRGqftdeSG8oY3vAGPPPLItVO8aIQk\nrIz9Autll+Xc26mRcimc11GAkOsou3KtiguSOst/2/+Gir12za8T1mWsOXT48GEJnNFp/rmf+zl8\n6Uvrjdje85734LOf/SwCgYD4ELZtDzUY0Slkpj/BYB5ZG9FoFLVaDb/927+ND3zgA88Yz2/+5m/i\nb//2bx0zCEwbnOKUAaC/G5VCpm1tjp+AEr83m/1QNvNVzLHq/53KEWzlTzj5R05iBhvNaxy17cX4\nEyajy/QnzMAzmT+0sdmYhnOLHcuYxdDv96VItbYxyd4hW431gQBI+3r6E7lcTros078lSMSAur7P\nsVgMa2triMfjaLVakvoWCoVkvgOQfePxOHq9ntRJXV1dRbvdliwKXXtVkwvISIrH42i327jrrrue\nUcDdlXWxbXvLdWJHNYeuJqGiWltbE6c1EAig0WjgTW96E+644w58+9vfxhvf+EYkEgmZsHRqifZr\n59oEQcg+IQjg8Xik8vzrX/96vPWtb8UHP/hBHD16FM1mE/fddx/+7u/+biTQopWS6ThrNJy/yQih\n8iBIpRWPzmvmcTh+dq4yWyyaY3GSUQ68k+O9FejjdP1aRgExo5x8pzGNGsdm+/K3qewpZs0lAIKW\nJxIJQd8ZAWCHgUqlglAohEgkIki5ef/7/b7U7Ol0OkilUpIXzDpD7ADAAtdmi02i7voaTKS/2Wyi\n3W4jn8+j2+2i3W6j3+8jnU4/o4ua1+tFKBTC+Pg4yuWy1IFikTrd4pL3x+fzoVgsIhgM4gMf+ADy\n+TxuvvlmoaBeCeC1K65sJZcKrHGqQ+QCQ65cy3L/4g9cgMiVK1IKhQLC4TA8Ho+wN26++WZ86Utf\nwu/93u/hYx/7GHK5nKT80xln/U1tk47yJ9gchM6/3+/HJz/5SbziFa/AAw88IGN50YtehL/8y78U\nJ5/iZE9roMDJn2EnXZ/PJwx41p7hsTS7nWPVwU7WoCEQ5lT3lH+btp9TsHnUtWzHn9ABPVMupz+h\nA5Z87iYpguPX2QrRaBStVktsegBS2oJ1gWKxmICKOrMFWC9/kkwmxf+IRqNot9viLxYKBUQiEXi9\nXgkYa8CRAI0uwwGskyOWlpYQj8fRbDZRqVQwGAwQjUYluNzr9ZDL5SSjguUveO0TExOoVCpSLoPB\nb3OeeDweqevV6/Xw1a9+1fFeu7I9eU4wh5wcbqdtRrFLtBLS2xQKBbz+9a+X+kCRSAS9Xg+RSATT\n09M4ceKEnFOzLXgcDQ5pwMVkJZjjoxMeDodx9913o9Pp4G/+5m+wsrIi4+SLxnNqdFhHAKgwIpGI\nONSscxMKhWDbG1XodVt3rQAZCaADT7RZgwG8Bt4LnpcAkkaKNbrNfTZjTGylzClbIf3bAazM8QEb\nxfRGHUsr663Gx23NhU8vSLwn/IydJQjGMLWRCpLj430GIIXkWADOsiyEw2FUKhV0u100m030+31k\ns9mh69DUXoKCGihMpVLyNxX1YDCQvHimYHJO7Nu3D6urq6jVarJYETB66qmnBHjlHCSDSEdv2IYz\nmUzida97HT74wQ8CgBgS7F7AqAHppDweiwI6MYucnhn3JbPsUjCHnAw8fr8Vc8g8vsscWpcrkTnk\niiuuXB5xAaJhcZlD63I5mUMTExNiHzM4yyAZwSBgo+YpwRUnfwIYrrND21LbLNqn8Hg8uOWWW3Du\n3Dn89Kc/FWeeKTjcXhcE1iltbE1OICgQCIg9p7tzAUC9XhfAp9FoIBQKDTVF4Xj6/b44/Wy2Qued\n121ZG63g+ZkT24fjpx+zlT+xVTB7N/0JE0gz93eyJbcS7U84pdaZdidZOgRQmLoVCoWkri4byZjP\nnnMiFApJCiT/ZroaWT0cix4T9yeZgP5DJBJBKBQSxhCPnc/nMRgMUKvVEAqFxM+cmpqSekn0TQhC\nLiwsANhoRGT6yJzTZEZ5PB689KUvFdaeKxtiX43Moc1QWS1bKYbBYICf/OQnQ8W+iLwWi0UsLS1J\nTSEqRU58fVztUGrHzkn4PV/4druNT3ziE6hUKggGg6KE2SacCoAvCRVyJBKRluUEtAgelUoltNtt\naW9IqiGLB3Ox8vv9iEQiOHfuHEKhEEKhEAqFgiDM/J4vYKfTQaVSQbvdlsrxWkk4UTs1CLMdEHKr\nZ7abQKZm9VzMOUfNQzMtj3/zeAR+mDrG52TbtoB8HJ+ed7yXnJtcaCORiDx3sxsAFxFdz4qft9tt\nJBIJyfvlcw6FQrJ4UBnrxZCRhaeeekpAHBaq5uKdTCZRLpeFIcWFifRR2x5OTVtYWMBnP/tZnDx5\nUphThw8fxq233oqbb74ZsVgMnU5n6BqdQDxGTviczWe5XR3iiiuuuOLKlSlu4XZXrjSh7aZtL/oG\nkUhkyK7Tdoq2EYHR3buA4SChBie63S7+53/+R2odaTYPj8PjdrtdBAIBxONxSfFhrRh2vqLP0ev1\nkEqlxA9goWCWviDg5PP5pHyB3+/H2tqa+DS1Wg3JZFK6bLFGTrPZRL1el/qWBKRM8Id2nA7kbQe8\n2UxGMYfMZ7Id0dtqFhaF49eMHafjjwKsnPwrk5hA+73dbsO2bcRiMUlx1N2GmWGgAS3Wu2XnYtYp\noq/IgCxtb9OfADbqUDF9zev1IhwOo1aryXk4T8g+IqDIVDBd/JrfMfidSCSknimD4eyURnCJdVEJ\nhv37v/87brvtNvh8PpTLZeTzedx444345Cc/ue1ne63KcxIc2s5Lux2g4cyZM5KnyJcsEAgIVRPA\nUHt5J1aC03fm+XT+q1YMtm1LC3BS+Ej7I8On31/vnJZIJDA1NSV5mtVqdah1+WCwXiA7n88PvTzN\nZhOtVgu5XE46YCWTSZRKJfR6PYyPjwtrJZvNygusUdjTp08jkUhgfn5ewCGfz4fl5WVBeRkJ0dds\nKvitlLVWqk5K8kKBGifR7BAunvqc/HsrhtNW4JDezpwjlmWhWq1KGhcLwFHRaSquZn7xJxaLYXl5\nWZ55IpEQxlCn00EikUAikZD5YEangPXoAOmakUgEnU4HsVhMFoButysRKIKC+h51Oh1EIhFh8VQq\nFfmMxfBCoZCARPF4HD6fD9lsFh6PR1LeKpUKvF4v9u/fDwB4/PHH0el0cOLECfzZn/0Z0uk0Dhw4\ngFe/+tW4/fbbMT09LWNpNptSAE8zrczn4IJDrlyIuKwhV1y58kW/py5Q5MqzLb/zO7+DL37xi+KA\nE6DRnWV1oJlAga7BY/5QaP8Bw2lX3EYzgRgMpkPPn263K41Oksmk2HehUAiNRgO1Wg1jY2OIRCLC\nPMnlcqjVaqjX6xLIZA2bxcVFeDzr7c4rlQpKpRLy+TwKhQI8Ho+USQgGg5iZmREAq1AoSPcpjicS\niaBWq+HcuXMSBOe9MdniWzH9nfwwpzpAuyFOPqB+Jk7ju5Dja39EzwPzHHzutL8BSDBYj0kz+Pk/\nsG5L5/N5NBoNYf/Qp8hkMgL2MRBN/4lsJQKBAGRe8DnymOFwGOFwGL1eT2z2RqMBv9+PQCAg85TH\nZPA5kUhIk52VlRX0ej1Eo1HE43EkEgnxmQeDgbD1Dh48KE10bNtGoVDAN77xDRw8eBA+nw9Hjhxx\nmUUj5DkDDpnOrfmZue12gITl5eWhQlpUQlQ+GqHWL6JTeompzDX1U4s+FoEpgkAARAlaloV8Po9Y\nLCbjYT5oPB4X4GdlZQWZTAaDwQDFYlEiFkRlWUSYCoPRimQyKZ0F2u22nIPUV4I/oVAIs7OzAkCV\ny2XJYR4bG8Pk5CQajQbW1takGDILKPM6tgJ6RoFql0L0/Tef21Ysop0cX4uej3oOacOBXb68Xq8s\nqvV6XZQhjQo9dhaKa7VayGQyopQJ7LBuUDgcFvSdzB2CUIwacA6Gw2EBR7kA6BQsviu2bUu+PBdt\nznk+f2B9nvn9foTDYQSDQclVJyuJEavx8XEpovfII4/IcfiONBoNnDhxAt/61rcQCARw6NAhPP/5\nz8fLXvYyjI+PY2JiQiIWjBzoBVDTT0c9m1HPc7M5sZ0I1k5lJ4CqK6644oorw+Kyilx5tqVSqQg7\nQ7M6NJijswd02tBW7Ho6+qOYJ7TtmMrG9B0yOEKhEKanpxEIBKTTFZnjBHgCgQCWlpaQTCYFIGK5\ngHQ6LYFqMjrGx8fFqZ+ZmUGj0YDX68XExISAGLRvq9UqyuUyQqEQpqamUCqVxNblvWs2m5iamoLH\n40GlUkGlUhG/g8fRtVZ3M1jsJDuxvXYr4DjqnGb64ahtbduWUhMsPcGgMdP/dJMY+iAAhBVGUJCg\nEFk4rDfFtDQAUtOIQdnBYCB+Qb/fFzIDfU1+Xq/X5b0gkMr3gP5Bu90WJpPX65X6wJFIBLlcTlhD\nDLID6yAgGXH9fh8rKyvyXtIn0CVaHnroIVx33XXweDzIZrO46aab3CLW5+WKA4ecGBtO3496ibZ6\nSTUNs1QqDRXT0ii+VuZU4mYBLqfzOI1Ln5OiWTLBYFCYF8lkEslkEsBGDaBarYZYLIZUKoVgMIhi\nsSgvCAsWU/kXi0WhZ+rIQbfblSJgrARPJU+F3+12MTY2JoqA3dnIZKnX60gkEhKlYJGyZDIphZAZ\nQWAEQyvzrVg4W+UAbyU7oYmatX9M2e7CMOqcGgzaTJlT0WqjgaliZPPU63WZj6TkBgIBoUkyL1gz\n4FiwEICkYukC6ZqVRkCQVF+/349GoyGpZrlcTuanrr8FYCjH2LI28sHJgOM8JBjElDWyokhT5fV4\nvV6JGvEdIWjLedrv97G4uIi///u/x5e+9CWpsXXrrbdifn4ez3/+83Ho0CFJo+RiaQI9msk3Skw2\n3G7Ibh3HFVdcccWVrcWJ/ecCRq7sprDdtvZRnGwO2s9Mx9K2iGmP0FYgmx8Y3blXp/4zjY2gD5kU\nuvaQbdtIJBIoFovodDrIZDKYmZkRtgY7oTHYqP0eMkTIHNHFkFmvqNlsiu1F9hBLDKTTabTbbSlQ\nHI/HhaHOa5uZmUG/30exWJRMB80a0vd2J6z+7cpOwKdRz4+yXZtvq3OOCmaP+t62baytraHX6yEc\nDiMej6NcLss85HwNBoOoVCpIJBLw+XxYXV0FsD6nyS4jU6fdbktAud1uSykHAklkfqVSKWHIsTh2\nu91GMpmEZVmSiRAOh2VuEWgiyEVCA7Mber2elDehb8GsC/oe3W5XfA76Gex0prNZdEkZACgWi3jg\ngQdw4403wrZtAdae//zn42Mf+9i2nt/VJFccOEQwZjO2iUml449TVy29nc6zJII5GAwk35IKkOMw\nx8UJzDHq8wPDqK4GH3TdF93Wm2NlChAVZqvVEvYDQZpCoYCVlRXMzMxgdnYWjUYD5XJZcknp4Mfj\ncSkkzTHSgddFe8kaIROE9WKorPlCcZtQKCTH44uaSqWk2Byd8FQqhVQqhVqtJuCbbjOo7435zLdS\nthcaKeCzHDWnnIA+DdaYzDG97agFyulYTsLK+4yMcIEnEMSc716vh1gsBmCjKHQgEECpVMLU1BQs\ny5Ln0m63RYlraimwkWvOz/r9vkRvqtWqFH/jgs6idkxb7HQ6slCwHhWRf0Yr9OJB5U1AiOmHnF/A\neqtMgjeapaTZXYxycU7QWGKUod/v45vf/Ca+8Y1v4E/+5E/g8XiQyWRwww034OjRo3jBC16A6elp\nhMNhRCIRiZyZxdo1k5Dj0DRebqPz/k2dsJWMmtNadzmxDl1xxRVXXNkdcQEjV3ZTaFPTrgE2gsBm\nejt9j638CScbQ9uztOF4LNpY8XhcagIxG4LOOAOOBJCmp6dRr9dRrVbFpmq1WlIegM62rmPJQKHJ\nkCIznWOmbUY/AIAEMmmj8fter4dCoYBEIoFUKiXgVCKRQDKZRLVaRaFQEECDdhn9C31/nXyHy+lP\nOG2zE39Cf7aZXaifE+cK/eJut4tisSh+aDQaHQrksqyI1+tFLpeTOdJoNKQNvQY0dc1Z3lv6Bx6P\nB/V6HQAE0NFj5FzWoKeex7xWXkM0Gh2qYwRgyN938t3NILZm63EcfH94v+hPsIxGs9nEV77yFRw8\neBCWtV5rNRqNXhMMoysOHHq2xOv1olAoIBgMimOqFa8WXTiO4uTU6RQqrfgBCHpKJdhsNgWZZL7k\n0tISwuGwdIyq1+viaBPRJwDAcxAE0oXC+EMkl8CPZvHoF0K3rNfXxBeKnQYCgYC0XOcLRkWh03aq\n1SpCoRDm5ubQ7XZx5syZoU4NXGAoTuydrdg8O4kKbHdbfXwnhprTAnOx0Qmdwshja5aPrthP4CUa\njUpUhgw4FpMjFZSsMS70VMLhcFjSxZh2pucJ5xPHEY1GZcFgsTlSSzVoVa/XEYlE5Bykk/K94vk1\nm4nRLAIy5nPQQKvTszIXYc5vv98Pv9+PYrGIEydO4Hvf+x7++I//WJh51113HaampnD48GEcP34c\n+XxeFhxePxcibeiY10IgT1NqXXHFFVdceW6KCxi5cqGytLQk/gSAZwScKUz5Mm1L/fcof0Lb2UzJ\noZ0ejUaRSqUEFGo0GmI7MrWMTjlbh1cqlSH7RQdyu92u2DgAhM1OFoa24XUwnLaRzrggOEFnnClP\n2q4iu2gwGGBhYQH1el1qVHq9XuTzeezZswdnzpzBysrKELNc+zajbHdTrlZ/QhMmtI3MZ8Q5SSJA\nLpdDsViU2rMED3W3agJDLLiusxjoD8RiMdRqNdlOB3oZICa7jv4Da01p/5XHYTYL9yVISb9DZyzw\nXhKg1ACevg+bZXo4EQJ4T8loYwOdf/3Xf8Xs7KwEuWOxGPbv34/rr78ef/iHf3hRz/BKkWsWHOr1\nekN5kPpFNScQJ6FmvIx6yXXkX6P9RNGpyNPpNKLRqDA9/H4/JicnpShbPB5HPp9HKBTC2bNnpegu\nQQKCOlS6+uXyeDyiwMke0S8QHX9TYZK2SWXL49Kp52KhwR2/3y+pZlQs7EqwurqKer2O+fl51Ot1\nLC8vSwFik/1lyuVW5qPOz/vnFB3YKhIx6pyaKacVH1PO9EJMwKbZbCKRSKDf76NcLstCTISf7KBS\nqSS0TdYfAiDMNIJ+BPXi8TgajQYikQhisRiq1arkKjMd0TQaWq2WAJUcu1O7UhoGvI96bpn33kmZ\nO1GuNSuP2zjVVaISr1ar+O53vzsEjiYSCWSzWRw7dgxHjx7F9ddfL/n5+j3W7xCfh/m9K6644oor\nV4+4gJEr2xE6j1sFimifmIwhipM/YdacNO3xTCaDUCgkdlwwGEQ6nRYGEJn90WgU586dE+CItYV0\nNgPtfmCjADLHTFCH16tBLNOO02ASx8pj0WbS6f601VKplATDec5UKoVKpYKnnnoKc3NzyGazWFpa\nEma9E0voSgKHtH1qjnM3/QneY/qcOrDPQLR+ZkwJZL0npmPR52W9IvqUZHbRn2XmCn2OwWAgJIBa\nrYZUKiVpbJa1XkeUhavpm5qpmAStaLczm0YzgnQAnZ8Bww2keDz+aIDMZG5xWzKvTHaeZiXxnYhG\no3IP6/U6vve97+H73/8+5ufnYVkWxsfHMT8/j/n5eXz0ox/d8bO83HLFgUPaAXMS7Tia+2z2Mmm0\nE4AUah51rM3Op9F8rcA5obVCp/Imk4O1g+j4c9tqtSqFwJheVqvV0Gw2xSEnKmoqFGBDKWglxB86\n7BoQ4v5czEyKKLfhdZAyyBdDX3OxWAQAQZEJgrEIMcc0MTGBRqMhxedYPIzX5vSybjYXthKn/U0k\nWV+nFr24a9qkua35v3lOpwVg1PZ6Huu5xWMRWCmXy+h2u4LuswBcuVxGPB4HAAHqNP2XQArnRKvV\nklxxIuKcq4PBAKVSaYg1pBW3rtFF4JKsGxou+h7p+QVsMKb0Nk5KXP/N7Zzuuf6bxhDPpxcyj8cj\nETQel8W/FxcXcf/996Pb7SIejyOTyeDw4cO47rrrcOzYMezbt0+MG130mgXdNZPoQsRcvEbNGVdc\nccUVVy6fuICRK6YwLYtghZNv4GR3buZPaBtAM5lpz4yPjyMajUpr8FgsJulDrVYL+XweiURCHGwy\nznk8gka06bQzrNPWaO9xW72ddpwJCPF7nYJklv0gQEaAgcclmMBguO6ONTc3h16vh1KphGQyiXQ6\njWKxiLW1NUkLMoE3ym75ExTev+34EzrYqVPidtufcNoHwJC9TtCIwdFarSb3vdVqScMhNjFi0JeZ\nCjqrgb5Cv99Ho9GQLtrA+vNdWVmRzBU2zLEsS3yGWq32DL+ZYx1Vr1Zfo+kbOG1nBnB1QNnsYmeS\nKMznZ9u2FHQnGMt9CJryOMViEcvLy/jv//5v7N+/XwLRU1NTOHr0KD7ykY84Pr8rRa44cIgyauLv\nVnS+VqtJK0YqHg2eaGW+k3MSEOI+VOhsBRiNRiWlhkBPIBDAxMQEut0uGo2GOM7aqdUV5qmgCQxQ\nQRMEIiLv8/nEEQY2cjoJkJElxPvKduC2bYuC5z7cXld757EIBNH5JlNlbW0NjUYD2WxWFEsqlUIk\nEkG1WsXKyoq8oDt1qJ3mx2aAIp/Ndp+lVsb8fytHXR97lJLfrnBbzbShMi+Xy1IPigoa2Jh7VORc\nmFlUMBAIyELAea8NA+bZatow3wnOP84zzXRiVImGkY4gaSBRX4NW2Du9J/r+6s/0HOI4B4OBFMMz\n5785L3RKWalUQrlcxuLiIv75n/8ZXq8X2WwWBw8exI033ghgvWDiTTfdJNEVvs+uuOKKK65cW+IE\nGAEuaHStyNra2hCwQvtG2xs79Se0U6sd4lAohGw2O9TQg406UqkU9u/fj1qtJg1AgI0ak8FgUI5F\n1oZmU+hx6y5hBF/4vfaRyALRdpZmg2jbm/6RZhDpzAz6OGSk6PQ0FjseHx+HZVloNBpSmmNpaUlS\n13bqTzjZoaOO4RSodAISnI7lFPQbNSdGBUR10HPUPqZocMMEqlgSwrLWmT0EGtklmB2o6VOSJEBG\nGJ8l/UDNcNMgjwZj+J6MIl+YNa24jSZHaH/CvLZR98UE2ng+DdDqcejj6uuiL2SeT/v+vEbtY5fL\nZTSbTTzxxBM4ePAgEokE9u7di1AohKNHj+Kee+5xHP/lkGsWHIpGo1JZXRdeJpBjIorbFbNjQKfT\nQTQaRS6XE6Q0Go0iHA5LLiew0bVKs250ITgqeE3BM4EoKthQKCS0O05sHc3Qk5UvA6mkumUmP9MR\njXA4LOwgAEOt2DkmFjLL5XLCJioUClKoutfrYWxsDOl0GisrK1IzZyf3fCeKUSukzVB9p2PpAsV6\nsdhMmZt/8xnsVJlT+elFU9MtOVcYLQEg4I5lWaLUuT1FK2Wzdo7OE9bXrSNiek7oeaaRfh392kw2\nSxtzWkQpTnRsE/ShECTid+YCoaNbBMH0vrx3q6urWFtbww9/+EPYto3rrrsOp0+fxi/+4i8K1VZT\nUl1xxRVXXLm2haCRCxJd3cIOXWQXM5XKqYwCbSfTVnECCmiT0W6Lx+MIh8OwbRulUgnRaBQ+nw/h\ncBixWExqCTGVngE82r/NZlPORV9Hs4K0E0yGBP0RzSIiY5olB3g8ft/tdgUsoG2oU+6YhsRjWZaF\nUCgkdh+BB4JYoVAIqVQKrVYLp0+fRiaTEQAhEolgfn4e1WoVZ86cEaDDyRbbLqDjZJtqH2JU4Fjb\n7E6ifQF9PJ3VoNkrm/kS/J5zzAShtI9HH4Lfc47q7fT/ACSzBNjwbXksPS9NoGyUf+TE7DGv1ttc\nagAAIABJREFUm9tof0L71Pp+a6bPVra3vj96X31dWrS/ZYKb3I9j20wYdOb4OAa+i0888QRqtRqq\n1SruvffeK6Zm0cX1Dr8EspkTfaHpGuZxLMuS4r50dPXE0ii9flGpRJ0UBEWjpWwNn8vlBLDJZrMo\nFosoFosIh8OYmpqCz+dDqVQSNhEASY2hc08HV79gfr9/iKqpW31rxF/nEwPDdEheCxcPMyKgKaSM\nEPDYzEPlvs1mU/JJWd+F3QVyuRwsa70mzuTkJCxrPZ0nlUrJPWDxM/Peb1fMRdTpWY6KEOjnqhWb\nBvucxqUjH3pbipMy15EQ/Sz0eCl87nrB1c+Lz5j7mgqN//OH49Sfm4pV0zxNEMZ8RzRTyLzPJgij\nj2GCNdzH/NHbaHTfvAZzWz1GzRjiuPT9MMfFd0YbO6TKWpaFarUKv9+PmZkZrK2t4d5778WpU6fk\nndfnv1AZFRlyxRVXXHHluSejmEWuXB1CJrZ2OEc5ypStvtfbeTweTE1NSY1Pn8+HmZkZNJtNNJvN\nIduHHY+ZlqWDijxnMBiUkgS0SRmkpm9B4EdnHwCQDAEGB/W1BAIBBAIBhMPhZ6R4EWwgA0U3TtHp\nbmS205dh17RisYhut4tDhw5JkWK2MWeR6vn5eaTTaTQajSGbz8lG1bbjxYjpO4x6pk5+hvYltvrZ\n7Pw7HSfrOdFfG3WftO+jRW+j/Z+L+dnsnu6GjDqvk+9h+mgmIGb6yvo+6B/z+vr9vgT2q9UqlpeX\nMT09jec973nodrv4hV/4hV273ouRK5Y5dKmFCkGn4gBbK2sn+pl5XLI5WFuoUqkIA4E5hzwnEX4A\nUvBXF9vSaK9mavBcXIz4ApN9pCMCvB6mC2k2iHnNusCXicQSDKByBzbQVS5WGkjSLxQXpqWlJfj9\nfiSTSUldi0ajCAQCWF1dlfzWrYDAiwUKnfZ3Ur5OecsmZdbcV/+91SKxk3GSiRaLxYaAIKfzahBH\nf28CZKP+HiVOYJfTWDlHL1Z0BGYzlhHHxvuqFf5mi6vTZ3y+PAZz31mX6fDhw3jJS16ClZUVPPnk\nk9i/fz++8pWv4PDhw7jrrruG6i254oorrrjiCrAOELkMoqtTdNkFzabYChwCRrMPGBSMxWKIx+ND\nwUIGoyYmJuR/27YFZGFqDtk6DCxSmIWg7aNAIPAMm3MwGEh3Zfoq2uegb2MGGbWNSNCIYwcg7HeC\nUsBGQxaWAuDxaYuRlbW2tiYMeaZFpdNp6c4bj8cRCoVQqVSkribFyWa/0EwRyih7dKvtnGzTzYCg\ni/UnTH+g3+8jFos9I6gODAeJnex9E0AyA9vbCW5u5k/sJii01ZhG+Qb6ujgHdzpmJwCMoFMmk8EL\nX/hCzM7O4gc/+AHa7TaOHTuGqakpTE1NXVYW0RUHDjlRw0xKpql0TGfcacLyb4JBXq8X8Xhc2ujR\noXM6phZ9brJ29GetVgvZbFbokb1eT8CPWq0mLATuQ+SbReVYGZ4K3ev1CoW00WgIU0d3jOL/nU4H\nwWBQckF57zSQYDq9pI7qDlnmvecCxe5NPK9OKWI+MgvfEUDiNqSyplIpqVhfr9cRDofR6XTQ6XQw\nPT2Ner0ubCMAQ1EPLnwms0UDHk5KUr+Q5hwaJVspdhOoMNF1TRk2ASWdumQCaPqZcVvNAuPz1saA\nOWat0HdyHRcr5ntoRkc4TzSjh9euWUoc12bPyGmBdxIn2qsW8z6ZxtpgMECtVkMwGMTY2BhuueUW\njI+P46GHHkK5XMa+ffuwuLgIr9eLhx56CHNzc7jhhhvkfTKfj9ZHmiKrr8d8jq644oorrlwd4gJE\nV6dEo1FhFbNQL7B5vUonf0IHxPr9vpRnIJMmGAxKsxHbtqUQNm15snDYipxMIB5Tl0oAMFR3kp+x\nrASPZdq7Gqxx8rdMYIqf8Zrpa9BH0ulL/E3fg6U16K+Q2e3xeBCJRODz+VCv11GtVoWxZFmW1Hgt\nFouoVCqSIqezMGiP6ntuZpHs1J/YLGA8qjSFeT7TftYpSdp+5D0iIKhTspgtwmek99WgG5+lTuMy\nnzWvwQkcGvX/hcgocOlC/AlzrPoZb+f8TuLkT5j76HeF95zv0mCw3tU5lUrhlltuwdTUFAqFAu6/\n/36Zr48++iii0ehlDzJfMeDQbjtBWyGvVKScYFoxX+j5er0ecrmcFGemEiLgQ+Sf5wyFQlIAmkqc\noAgAAVsopGISVeexdKtKXgO/5wQzawfxf4IPVNTcn4qHCwvHqPOSqbBZyJhMJg0aaRCDDAwyopLJ\nJDwejxSxs6z1nOPJyUkBifi5Ttfj4sHxm4DWTufEKNQY2Byp17/1guiUzmW2WjSPz/s5GAxkXvDe\nApD7qDuHacDJFDOti2PUSnU3ZNT7shMlzHFqtpGTQWUuFuZno86zFZCk74mmP3N+5XI57N27F8Fg\nEMvLy3jyySfR6/UwMTGBRx99FPF4HPl8HkePHkWxWMTq6ipSqZQsttp4csUVV1xx5doVFxi6OoUg\nhnbEL8Sf0Dbe+Pi4HIOpVfQrdPFn27aldAVtKR1QZDC43W7L36FQSNrYM72MNg+DvfRrtD8DbNQL\nAoYDnAQqzOvX9i67LzPYTaGdTH9Cj4vnNjM+PB6PBJ5Zg4h1XNvtNur1OuLxOJLJJNbW1lAsFoWp\npGtM8tp3Am5s5U+YpIbNxAko0oAbx0YfkfeX/pgGdujPaeCIvq4ZOGbHLX38UdfkZI/vtm27ld++\nnf22Gzi+FP6EPo4mZnAO+3w+HDx4EJOTkygWi1hYWEAwGEQmk0G/38fJkydx8OBB5HI53HfffZuO\n5VLLNQEOOVHpbNtGLpfD2bNnhxTshQgBjEwmIywkVtWPx+NDwAFf1H5/vfWfpnV6vV4BdQjEsI0j\nlSqVNI9n5kYypUx/zm11NILnBTaYKnSIWZiayphMFX6vFQ8wnIZDsEnTFHUKGoEsjm8wGKBYLEoR\nbuZJJxIJxONxrK2tCUjEhUIvNDsBObZSPOY82Uw0qENlrKMkVOrBYFDqNHGeABDQjvdLK1jWbdLR\nFj4zMtI04OQk5v7m9e2WXOgxTWVuAl2bAXaAc0HqUefZTJmbbKV+vy/RMr7Ps7OzaDabOHv2LMbG\nxlAsFpHJZHDu3DnEYjHs27cPhw4dwtzcHMLhMGq1GhKJxFDxRVdcccUVV65tcYGhq1f27NmDn/3s\nZ0OpUxciZN5PTk5K0LjZbKJarWJsbEzYB91uF9FoVGxx7kegQAegGWz0+/3odDqSJkYbhY1MdJCM\nvgdT0vT+BFgIHukSFWaAzefzCZDFH27DEhw8Dj+j/drtdgVs0v4Ig/ssis3C27SL6eOFQiHZd3x8\nHIlEAouLi2i1WkOsKNrfu+FPONmm2w0201/i9WhATgeQ6W/w+eptNNjT7/eFUaXLihDIDAaDcv7N\n/AnOCQ1Cad91t2QzcGozcbrXpm1vBpwvhT+hgTf64blcDoPBAHv27EGr1UIsFsMTTzyBTqeD8fFx\nNBoNaf507NgxjI+PXxFt7q8YcGi7omv+OFX7pzhR86gACFbwxdAOuulMO1EKTWDGtter5VMBhsNh\nqVFCRadbi5Olw/NyDAQP+B2paMy95QttMoA0GqypnboDGI+t75emkzpNeIIQzFVmgTn9PVlAuv25\nRr41sqyVcDAYhGWtp+Ex4sFFyuv1Si2msbExpFIprKysoFgsilLUiwbHYoJgepyjhOflnOJvTcHV\n4+d18W9GQQjg2fZ63nYoFBIgh4rZBJEIRLRaLdRqNQQCATQaDSlWRqRZGxv6met77DRPd5MhRHGi\nazotEE4LrX42+hij6j+ZFFItTqDLKDqwBko1gEmDhOfiuzY1NYVWq4Xx8XGsra2hVCoBANLpNCqV\nCgDIs7v99tuRSqVw/PhxMVq0LtGLhb52HRHa6n674oorrrjy3BYXGLq6hc47gZSd+BP6c7/fj3g8\nDgASMKbt3Wg0EAgEEI1GJYhspjfpGkP62Jqdb9u22NpmOo4GF8hE0sJgMYX2Dv0a3ZSDNpdmMNEW\nYsdm3SHLdOxpW5st0HU6ke60XK/XpXarx+PB2tqadHCr1+vIZrM4dOgQCoUClpeXBSTSAXMz1cy0\n0zazqXXw2olZM6pECu8NwTeCZpFIBJFIBIFAALFYTO6zJgJEo1H0+33UajXkcjkhHgSDQTSbTSlX\nUqvVhuabTuvTdqqerxT6iLttj27mT+jPL9af0LJdf8K03U1/RDPt+J5o9hy7ko+NjUkH71arhWaz\nCb/fj1QqJUXTk8kkotEoPvOZz2zzzl16uWLAoc1oXbuJTBLAAIBEIjF0/p2i/ZwMyWQSgUBAEHUC\nHkwL4yQmi0SjsM1mcwjd1kwb27almrwWIu0apODLq9O6dPFp3kMCFARxyHTi36FQSKIQ5otLEIjf\nEegguk1AjC8Ox8gxUAnz+MBGqhxBFY6NABsXFQ0ScYHUdZR4j81FZpQ4gWFUKhpk0Gi9VjqcK1yI\nYrGYtBLVUYhyuYx2u414PI5qtYpWq4W5uTk0Gg2cOXMGe/fuRSgUkvpL6XRaCuyRelsqlSTyQ0Wu\nIwqaHUZxSiu71ECD0/FHLTZOcrHvvhMoac5FGjy8P4yWRSIRjI2NSU2wXq+Hc+fOodfrIZVKYXl5\nGbZtI5vNwrIsTE5OYm5uDjMzM0gkEti7dy+q1SpisRj6/T4qlYpcLwFi85q2c227qftcccUVV1x5\n9sUFhq5+mZiYwOOPPw4AzygRsZXo4GY6nZb0KAZKg8HgENOFmQW6GHSn0xGwgyUfaNfr2icEB7gf\n/QmdtgVs1MbUDXLIWqGYJTk0mMTz6owBbQeZmQcMZuvAKO0zk/FB241jpj9Bu5nHzmazAoiwjku1\nWkUkEsGBAwewtraGSqUifgr9D50W5+QHcdwmeGTauxpo4jXrDtnaLo1Go/D5fBgbG4Pf74ff70co\nFEK5XJZjlUoldLtdTE1NSUA6mUyiXq9jdXVVnkmxWEQ6nUYwGESlUsHc3ByCwaD4EqxfVa/Xh3xB\nPnMTsDSv/dkQJ99Bz8+tiog7AT47KYNhBpg1cKkzYzTBQHfqGxsbQ6PRQLFYlP2ID1iWhZWVFaTT\naXi9XqTTaRw7dgxf+MIXNr2mZ1OuGHCIL/MoFsFuCV+yfr+PqakpnDhxYoh5s13h5MhkMkNdutge\nkOlRTJUi0wXAEEWT4AwVI9lGwWBQFgHNeqBC4ous/9f0T7JrNAVRI8SafsooB/fXUQCCXrpYnflS\nWpYlhagjkYjcB63EqaD1veZCQKCnWq0iFAoBWKfWlstlZDIZNJtNhMNheDwe7NmzB4PBAKurq9IF\nTjOxtJLT4+NvgmNM69LPnLm8GqXWC0W320U8HpeaUrlcDvV6HYlEAsvLy2g0Gkgmk1hZWYFlWTh4\n8CDi8bg8k3Q6LcXzJiYmMD4+jmKxiLGxMWQyGVnsV1ZWMDk5iW63i8XFRUxPT0skqdfr4ezZs7JI\ncN6YC6iZqsY5eynFjCaZ93cruVhwyAkI4lg49wi4MnIVjUYRCoUE9Ox0OojH40LZrVQqOHv2LOLx\nODqdDsLhMLLZLFqtFvbs2YNer4ejR48iEAhgYmIC4XAYp0+fFpYf57ZeQHYKDrkAkSuuuOLKc1Nc\nYOjakImJiaHUqM0YIxTaCWxMEw6HhRFPW5X2iw4Ucz/a3rTV6dsweEtmjgYp+LfP5xNQRTNzKJpp\nrYEd+geaGWUyT8ggooNNH4n3RNtjursabVpuw781eMWMD12wl/eXaWZ8BgTJvF4visUiYrEYotEo\nIpEIVldXEQgEcP3116PRaKBcLqNQKEjGBs/Pe8rr1n6MaV/TxmM9J5YS8fv9whIheysWi0lQ2bZt\nhMNhnD17FrlcDufOnUOz2UQ0GkU2mxUAj8HJhYUF5PN5AMCPf/xj7N27F7Ozszhz5gwOHTqEm2++\nWYLS3CeVSuGpp55CLBZDOp1Gs9nEddddh9XVVaytrWFtbU2eL58rz8vPncCyCxUn8EeTJHRwV2/H\nz/TnJnvOyWY2/Z/tXIMZaOb8I4hGfz8QCCCZTCIUColv32q10Ov1EI/HJT3Ttm0pOxGJRJBMJjE1\nNYWzZ8/iPe95z85u4CWWKwYcomzlwJqUQu34a2TPRJo1o4RK8vrrr8c//MM/DNXP4bFGTRxSHDud\nDtLptIAmZMBQ8fC8jB5wsaDSIVCj01tYZb/X60nUQKOUHKcTxZHXRcBFK0WydXShO4IKOmWJL51W\nyCz2RtYQFT6ZT9oJ5iKnx6QRV3Pc+lno/FcAQsmr1Wqi5AiIBINBJBIJTE5OwrIsnD17VgrY6efI\n6wwEAgAwVI9JRy00GMZ73e+vt3gkpTcajUrkgcwwFrcLBoPIZrNot9tot9uYn59Hu93GI488glQq\nhXa7jVqthpmZGQwGA5w5cwbz8/Podrsol8vo99e7uS0sLODAgQMYGxvDqVOncPz4cWSzWZRKJXi9\nXjz88MMYHx/H+Pg4crkcQqEQHnvssaFODPqeavbQbij0Ucqcz9mk5XI7PodLrcy1EaEjOlqxDwYD\nAel0gUcA0lWQhkm5XEY8Hpe5YFkWarUabrzxRpw6dUryiJlC2G63sbS0JO8HGW4mo4vXvVNA2pXL\nI6+auhn3L/7gcg/DFVdcccWVK1Q+9rGPYWZm5hlAi2m3mCwUBjSj0SharZawgtrtttQuNNvAk5kU\nDoclqEvWEIEZ2rS0Z3gc2kJOYwM2bBTTt6BvwBpGPBf9DV06g8fWTjz9HB6bx9L2qb4fHo9HMi3o\nk2hWvxZtY+nOy7w3ZPe3Wi0pE0CWf6lUQrPZRDabxdTUFIrFotR4Yuoer0ffV45dP0sTvNOZG1NT\nUwgGg+J3xWIxVKtVLC8vY3Z2FpZl4cCBA+j1ejKOxcVFjI2NoVwuY2lpCZOTk5K2xOubnJyUe09G\n0dNPPy2ModXVVayuruKGG27Anj170Ol0MDs7i6eeegrABjngtttuw+rqKhYWFsTvo89nMrhM0MZJ\nLtTf0GQIE4TTv01Acqey3f10uRcAkulCX3hsbGzIzyRzjWw/gphMa2w0GojH44jH41hcXMR1113n\n2CnucssVBw49W2JZFmZnZ4W5ws8oJrhEYZG2dDqNcDiMRqMhikvncGpknZEAIs4a5OGk0tRLDVbp\nmjPmJKXoQmyaSaLHT4Rej8OJYQEMF5jmj2ai6KJyrDWknW/btoeAHgJko5SFU4SAkk6nxYHn/mRc\nsbBeMBhEPp9Ho9GAZVloNptyP2zbRqPREGCO16PbZfJ4iURC2gyS8cUif/V6XQAC5v9OTEyg2Wzi\n0UcfFfqq1+uV88/OzkrqYiQSQafTQaPRwAtf+EK5v+FwGMC64jh+/DiAdeWSy+VQrVaxsrIC27Yx\nOTmJPXv2IBaLYW5uDg8++CBisRj279+PTCaDpaUlFAoFnD17Vu6lZhSZLCIn2U6urtPfmmml0+9M\nRa6BzlGG02ay3fo8eh5p4DUYDEoUB4A8awBS1I9zNRwOo9PpCBOsWq3iyJEjePrpp1EsFjE5OYmp\nqSm5ttXVVfj9fokKEPDT9bxcccUVV1xxxZWrU5wcWWDYXjKDpKw54vV6hUUCQBxyAjHcj58z/cpk\nJ5HdQt9Ep3rpOimjanQCG+U3dI1Ms1QBsxJo4+ix6HGQ8aQdemADxCGg5Pf7pZQEx8jj6fqpTv6E\naZuaLG0GsoPBIHK5HDqdDqrVKmzbRj6fRywWQ7fbxcrKigQQWe+HrA+dnWGmnulgNwG7ZDIpAEIs\nFkOxWBRmOvdh4LlUKiGbzWJpaQm1Wk1YRRMTE3LuTCaDSCQigBtTw8bHxyXFjnZ/Op1GMplEr9fD\nkSNHBHQkqMUMkaWlJRw5cgTZbFZ81mPHjknw+/HHHxdGl2Z/bScLYSe2velPaOBH39tR21zsOTcT\nPncCfYPBAPF4XLJc+LvdboufwWZT9CnoO0ajUQwGA8kOGR8fR7PZ3HbH7WdTrrgR6clwMWKyJZwo\ngJOTkwLMhMNhceo1OqqdTII9iURClHoikUCr1YJt2wIAaPaC3+8fUszsCsDPtRKjktXtBTXjR0cC\neE0EOqhIqbR0ihnPrWmeWtFrBpEGrzQSrhlSHC/vo15wWDxbI6F6sRsFdJn1njTDiYsFoyjtdhvl\nchmRSAQ+n08YH9VqFfF4HL1eT1KFms0mxsfH0el0hhbbYDCIer0O27YRi8WwsrKCWCwGr9eLer0u\n9yCXyyEWi6HRaAjl1Ofz4fTp05iZmYHH48HRo0flHpA+2mw2h4DC1dVV+bvdbgvttFqtIhgMIhKJ\noF6vy8ITiUQwOTmJffv2oVqtSjrT6uoqlpaW0Ol0kEqlsLCwgJMnT2JiYgJ79uyR2jenTp2S4tax\nWGxoLmnAwolVN4rRogFD89lyPvL4+h12UthObLKdKHY9j/X4+D+VeTwelwU7EomgWq0KIMsifcFg\nEOVyWYAiXfCv0+ngwIEDeOKJJ1Aul+H1ejE9PY2HH34Y3W4XnU4HP/3pT3H8+HGcOnUKc3NzOHPm\nDFKplBg6jPLpiKKmY28mLrDkiiuuuOKKK1e+RKNRYQxrmx4Y7U8wA4F1JWkf6O5h9CfMTAKyOuhP\naLuaNqy24XV5CwJD2vbTwT2Oj/sSpNB2Hselz8ugJEEcHfjV4yL4pAOLerwMMutjARs2k+m3aH/C\ntCt1bVT6JvTjWNeTJTGSySQSiQRWVlbQ6XRQKpUkiEtwh2wQsoP8fj/q9bqcs1KpCOmALDACBMB6\nMPjJJ59EMpmUVDefz4dMJiN+aavVEj+Oz4ZzpN1ui3/E4Dl/QqGQZF00Gg3xMbLZLADI/7SNV1dX\n8YMf/AB79uxBLpdDu91Gs9nEysoKjhw5gkwmg5/97Gd4+umnhzJhNFh0qfwJ7dOa/oRJbnB67jsR\nc5zmeYCNOsXMFmApCjZY4rtN9p9Og2Rx8JmZGSwvL6NcLqNer2N2dhYPPvjgjsb6bMgVBw5thbo7\nfWZOAnP7UfvH43FMTk6Ks60L1erJrsXjWS8YRxCIdXLICtHFpTm5NTKuWRYaRNK0Ua346VyGQqGh\nOj4UvqQageexOVmpnDU4pH+oLLXy1gpcg1ta+ev6RJp1xHFRdI6wyWIxX3hNQ22326jX6/D7/ZLn\nSXZQLBYTxc7ICymQBI24aFDZWdZ6ChgZWlycwuEwJiYmBNntdDpYW1tDJpPBqVOnpP5MIBDA7Ows\n+v0+UqmULNLMUe50OgI2ZLNZDAYDGS/befIZl8tl+P1+qaXE+0ZjgQAbFwB+n81m0e12kUgkcOrU\nKWSzWYkSPProo+h0Ojh06BD27t2Ls2fP4ic/+QnK5bKkNzmlam2mwEfJZorX6X00f3aquHlcbVQ5\nAb6a0UYqsS5uGI1GBQQeDAaIRCLSEUSDNsFgUAyKUqmE8fFxBINBLC4uot1uY3x8HA8++CBuvfVW\nKQaYy+VQqVQwMzMjaaGdTkeiPS7Q44orrrhybcn9iz9w6w5dIzI+Pi5OtFkGwrTdgfWaLkxdt21b\nmPD9fn+ok692tLU/QaAHGC6aq0tK0MfQwJRuHqPHpct2cFuOX2ck6OvSaV8cnwYHgI30OZ3ORptI\nl9bQ7BcCZqbo1C3eV9OR18AX7brBYCBlQXRhb6/Xi1wuJ1khzWYTrVYLlUoFkUhkqK6sDq7SbiSg\nRVsyFAoJ48jn86HZbGJpaQn5fB7VahXpdBrZbBZjY2Pw+XyoVCrC2iF5gKygVqsl7CKWGyHwwKyN\nRqMhIEQ8Hhefh74fbeBCoSA1rRg4r9VqiEajuPnmm9Hv97G2toZCoYAbb7wRsVgMtVoNzWYTyWQS\n+Xwey8vLWFhYkPltzufd9CecsAD9jE122E7FyZ8wa4ORDEDCRjAYFN+W91cXeeex6H/U63VUKhXM\nz89jMBhIXSm/34/p6Wk89NBDOH36NObm5vC+973vimhhT9l2n2vLsryWZT1oWdY/nf9/r2VZ/21Z\n1k8ty/qiZVmB858Hz///s/Pfz+9kQE7ghZM4oYb681Hb6h+fz4fZ2dkh5guwUVjMrGEDrKc5EbXV\n+5F+ae6v82epxMjC4TGADeCESpQObSQSGWLi8KXQzCSNLnOCkx1BZJuUwlH3jwAGAFHKHL8uXM2x\na3aOPl632x0qlKwZGBp80sqcixDvEY9BQAXYoJJq8Mjn8yGbzUoVfgCi9JaXl+U4BPD4zAna8HrO\nnj2LTqeDU6dOSX2fRCIBr9eLyclJ7N27F1NTU8jlcqIsWSOJoB6jB+FweGiRYYcJvTg3m82h+97r\n9aS2EkGowWCAc+fOoVwuyzMj06jf72N2dha33XYbgsEgCoUCFhcXsWfPHkxOTsK2bfzXf/0Xzpw5\ng5e//OV41atehcnJyaFib07v207E6T0ddSz9jLVRsFOl7hQxMH9ITc5kMpJ3zg4CxWJRqLx8X9vt\nNiqVioCHBBzJNEun0wiFQgL+TExM4LHHHpNc+G9/+9vwer1YWFhAo9EQA4Egoc/nw6OPPiqtLLdD\nx30uy7O1TrjiiiuuPFfErVk2LFfrOrF3717HoCvXfnP9T6VSYvtpe5sOKYET+iLa19BADYESnXql\nnVjap6yzwzo6emwETWiD09Zm/VKWX+DxtC2vmSv8XLOZeH0m2ETfpdvtSodi2spO9ioAqe2p/R0n\n21Cn9ehaqQCkRqkGONgIiKBePp9HJpOR8g61Wg2FQkHqhK6traHRaKBer6NQKKDT6aBSqWBpaQn9\n/nonMMuykE6nsWfPHoTDYakVyv0WFxfFl2Mws9FooNfrIRqNyva9Xg/9/nrHtVgsJmAVr5HpTDr9\nLxgMCovI4/Gg2Ww+gwTBZ57L5bBnzx7s378fL3jBC1Cv11EqlbCysiLg5cLCAqanp/GKV7wCt99+\n+zPAT+DZ9Sf0879Yf4L/6/kzGAykYHg2mxU/nj4FM0z4nnIctVoN1WpVWF4ejweFQkGNtW6vAAAg\nAElEQVRSzSYmJlAul9Hr9TA/P4+FhQWcOnUKyWQS73rXu3Z0DZdStg0OAXgHgEfV//cB+IRt2wcB\nFAG85fznbwFQtG37AIBPnN9u2zLqAWvk3An80RNITygnlgrF6/Xi5ptvFmfficVCxccXKRQKSS0R\nFoQjSKMpnzwOUWWCNDwvj61zOAmgmM67mfLFfU3wyjyeZiGxTTy/14sN76mmL2rARteu0feUrCYA\nQ8pXH0MrDidnHsAQlZZKkD96cdBAGxHbWq0G215PxSP7IxKJIJ/Pw+/3Ix6PI5FIDI05Foshn89L\nqlE8HkcwGMQNN9wgNY4IJnm9XlSrVVkIeD85TmA45S4UCg0xUIggazSf56XCtm1bCl5zOy4qpCmT\ngcRaV2xzn0qlcOTIEenixkJ0R48exaFDh1AsFvGjH/0I+/btw8te9jLs27dPnhNBKJ2TvpmY74fT\n9+a7qOeluY2T0t/sR88FDYIC6+9qMplENpuVuRCNRgWoIyhEEJZzlvMPWKfb+nw+JJNJAECtVkOt\nVhNg8OTJkzJ/Hn/8cQHylpaWkE6nxUCo1WrSRhQAvvOd7+ArX/kKotGoRMU2u48XusBeIfKsrBOu\nuOKKK1eT3L/4g2sJRLoq14k///M/R6PRGPqMto/pT7CbMYOpBAQY1AIgoIpm89MuoD/B4sT8XLPQ\ntc9AIEZ/TqCJNWx0uhSAId+AgAptWl6PaaPR/iVDW187z6kBKp6Hx6d/QlvJrJ2pwTENbvE+0Q/Q\nLe1NAIH3y2zMww5jrCNTqVSQTCYFpJmZmUEul5M6p4FAAFNTU5ifn5ciw/l8Hj6fDzMzM/D7/QIE\n0NYmiOb1epFKpSTzpFarDaX9cTxkC/F5W5YlQBQBI2ZEsK4RG/q0Wi2pW0qfaG1tTYLp+XweHo8H\npVIJpVJJCAlTU1M4dOgQDh48iOXlZXQ6HclS+OEPfwjLsnDXXXfhpS99Kebm5obmH0HBrWzYrfwJ\nTYLQYgJCu+FP8Lj0L0OhEMbHx+UZ+3w+aVDEMjJ8dwk+tlotATmDwaCAmARle70eisUiMpkM9u3b\nh0cffRSrq6uYnZ3F2toams0mMpnMyPtF+Y3f+A28/e1v33K7i5VtgUOWZc0AuAvA/3v+fwvAnQC+\ndH6TvwDwS+f//l/n/8f5719mXQYvxwQgTLEsC41GA8eOHXsGS2hUvZRIJCJsAIJCun0kz2ui2XRI\nTXoolaCZT6zBH523a4I0bFWvx6x/iOLzZeX2VNB8EfgSaqVlAloAxMnW4yOLiowcLjp6HLoongam\nzGvlgqBZWLwGLmCjAAIuYERnec918Tgi6JqKqReyQqEgecOMvJBFohlivD62KgwEAsIWKRQKQidl\nmhvH4LSoci5oxhBTkiKRyNC98vv9Aj5xMeV2tm0jmUziFa94BQ4cOIDBYICzZ8/Csixcf/31CIfD\n0sbyla98Jfbv3y+F0Mxnod8f850x361RPxciW+1vPnfbtqVoNNt9hkIhoeASdGN6GN8ZGkGcv4wE\nhMNhVKtVFAoF+Hw+xONx1Go1PPnkk4jH4wiHwygUChgbG8PExAQef/xxZDIZ9Pt9rK6uCu02k8mg\nVqvBstY76X3rW99Cp9ORhYLzcSuQ7ULv4+WS5+I6sV1x00JcccUVVy5eruZ1AtiofUjblcFSYNif\nYLCIZRB0YI22Om1LCoOi2uam/aZZHLTfdYCVY6L9z4C0DkrT5tB+gWZp0G7V56MfRLtdg0+mc0+Q\nQ9ubZlBbB3IZeHUS0+bUTCFdh0gHP/X1mQF2zZQiG0vfe8ta71arU6osy0K5XMby8rIEiDlmskU0\nQ4o+A58x7wX9IvpLlmWhUqlI0WwGPFutlpAZyGrncVmziHV06a+w1AnPRTtZ+2wsvs1nxGubnJzE\n3Nwcjhw5gmg0iieffBLRaBT5fB5nz57FyZMnsX//frz4xS9GKpWCx7NeV1cHhDd7TwAMzbNRPxci\nW+2vfWdd5yqTySCdTssciUQiQ75eKBSS+U9gCMDQ3NfYQK1Ww2AwQCaTQTgcxokTJ9DpdDAxMYG1\ntTX4/X7s3bsXp0+f3lZh6u9///uYn5+/oHuyE9kuc+j/AfBeALzLWQAl27b51p4BMH3+72kATwPA\n+e/L57d/VmUrB4uKbXp6GvF4fKgekN5PKzZWcNcduoh280XX7R0BDG3LfNV2uy3gg0bwqZS0cgMw\npNxNsEGznExUlCg1i2bpyIJWllzEyGbRiw07dpFySaRUvwQa6ScgoxWtppzyepn2RqeZn+nFh9el\n7wGvn8+Gyoj3l0AAwTD90pvXzOPqdEC+1Hp7jpWgEllSBAqdgC3OgUqlgmKxKKyzwWAgTCTbtoWy\nubq6imKxiH6/L52yFhYWUK/XEQgEpO368vKypC/l83mUy2VJl4pEItKVYe/evbj99tuRyWRw4sQJ\nrK6u4qabbkIoFEK5XMbc3Bze9KY3CbhhAhY6fY9yJYFDXORYvI8AYalUkpRBLrC2bQvIx/sDQLqX\nMTrT7XZlgVtbWwMAzM3N4fHHH8fKygpSqRSSySQeeeQRxONx5HI5LC4uIpFIYHV1FY1GA+FwGJVK\nBcBGF75isYj5+XlJEXSKhuzkPlzB8pxbJ1xxxRVXrhS5RkDoq3qdYAoKWUBcx2n7ApD6h2xywjIK\ntE24Pe1eHkOXcaANoQEgfS5gow4jwRgNwuigNIPI9FHMY+qAs2bk8BwEHhh4o30GbDSXITClARna\nZAzAalCK945/07bWvoS+Xv5NW1Z3Z9b+BM/x/7P3psGanVe933/v/c7zGXs4Pai7Jcu2BstcLOMY\nR+ZeF6bAOIUrCVB8IKkkFBVw8LUtW7IBWcYjsk0RF7fqQt0PIaHqphJI4qIAQ91rcN2AcQyWbFmS\npZ6nM5/zzvP77nx4z+856906LbWGbqm796o6dc55h72f/QzrWeu//ms9+DC2L2lTGE6f7kxQ0Zbq\nwB+Rnl9yg/6wz2HLiQAGttttdbtdpVIplUolVyaEsYaEEAXAbI0n7GEb0K/X6y49jQwF5hr2MsW2\nqdMKCJJMJl3ZEPynTCaj48eP661vfatKpZIuXLig+fl53X///a6Mx7vf/W69613vckFxDmTh+S1j\nPhrov1Iw+qUw6Peary9kR0eBwEwmo/3797u/OVwI8Az/otVqqVarOVafHXfWD6w5TjVrNBqq1+uq\nVCouZS+bzWppaUlPPvmkut2ulpaWtLGx8aLP2e/39bGPfeyq+uSVyIuCQ57nvU/SWhiG/2Rf3uOj\n4VW8Z6/7K57nfcfzvO9sb29PvbcXasgCcQ3fg+VgwYoXExbn1taW3vCGN0xVkrdoM7+z2awymYxT\nKFQoJ2fTUjNRTpZtgpKzdE0AEeiDlrUDqs3zWwaMBVHoLxhGOMUWsOF+fBaGDTmoABmgoFb5M7lp\nD4uce1vFR1vthsR7tJ3x4j70XRTYskCAHWdqythxt5TGqCKlv2xEgXFlQRMJQFFwSsBeG6G0uxnD\n3kEJo8ylXZbV3Nyc5ufn3dywr1HcjBQo0HzuAT0RwBDKJ5TXVqulSqWifD4/temyWVCf6AMf+IBm\nZmb05JNPan19XYcPH9ba2pqefvpp/cRP/IR+5md+RkePHnUbSZQKfC2UedTwuRplbuc1NM8o+4ec\nbMYR8JFxtBtrq9Vy48amb0+V2N7eVrvd1sLCgrrdrs6cOeN0QK1Wc6ylkydPanFxUcvLy+p2u9rc\n3FShUHCFzXO5nEqlkqMBR+mstk9uQEBI0vXZJwbq7fGVWGKJJZbXv9xCKWNXlOuxT7wKzXzZ8qUv\nfUlzc3NaWlqaykiwdhQp/ZIcw5xgrw3K2TQwQB0KKGM/WXCHH2wiACfsnU6n44AbwJho1gCB1ait\nb7MQaIsFTQgiE1yVJvYppRQsiLJXBkCU2YPtbW1y7rOXvWj9RBj41t63148yRgBkLABni3njV1rb\nmOuHYehsR9ptwSnP857XDvqDbAA+0+l01Gq11Gq1nL1PDShOMrbFrklXK5VKUylOqVRK5XJ56oh1\naZL5Qq0cGE34DgSxqZmKb2PZb7Dqb7/9dh0/flztdls/+MEPVKlUdOTIEa2trSmTyejnfu7n9J73\nvMcBejbjwo6FnbMv5jdcbUD6Sj7EXp9n/nqep1KppGKxKGkSNG40Gg7gCsNQ9Xrd9Yddo/iZyWTS\nAZ2+76tUKmk8HqtarTp/czAYqNVqaXFxUb7v66mnnlIymVS5XFa329Xq6qoee+wxPfLIIy+oYyh7\nca3lak4re6ek93ue99OSMpJKmiD/Fc/zEjto/iFJl3c+f1HSYUkXPc9LSCpL2opeNAzDP5T0h5L0\n5je/+bp7REzaP/mTP1G/33f5pKCuAAQwS4IgULfbdfVjLC3R1jFBgfA5y/rhWjBI+v2+owNaoAex\n6URWqUnT9ZNsDSMQ60Qi4SbrXqwdyxBBeSHk7KKMLRiDkkQxwo6wbbKbCWwaafoEs6ijH93suE4U\nqOA7Fu2PbmD2Gnz/hZxurmsBI5QZG0ez2XQAIfein+kvS6e07ZTk5hNpTpY5BkrNfdrttgqFgkql\nkjzP09bWlqtvhSHRaDRcmiMgEwWtbZQFxlOxWHQ0xosXL6rf7+v48eOq1Wr61re+pXe+85266667\n9A//8A+O6WQptba/LTB5pX69GiroC4Ehe32f+UFEzvd9x7yyp4NZJF/aZZ9xDbvhM06MYaPRULFY\ndKfNra6uSpIOHDigjY0NjUYjHTp0SIlEQqdPn9YDDzygRqOh06dP6/jx4zp9+rTuu+8+nT59WqVS\nSSdPnpwCPwEIb0K55vtEyZt9zZCz2LGLJZZYXq689+B9L6hDbiH9cs33Cc/zXrN94vTp05qfn9fa\n2poOHz7s6mKOx2MXSCSY2Wq1FASBOp2OstmsA5IskACYYIPf0VN/bVkFshewOaIse/wJ/B/EOubW\n+eVeBM7swTl8FhvfBpltYNgyKgBTrM9jy0Dgn2B7RgOzfD76XjQYjw1un80CSRZg2+sUZ67F//bz\nXDPq11gygQX0eC4+AxhnU5QIzHNEOlkKktzn8DEAtHhuapTiQ9iT6mhbNpt14EcUnLFMH9qP3yDJ\nMcJ4D0BwcXHRZS985zvf0dLSkvbv368///M/1z333KOf+qmf0g9+8AM988wzU9e3czcqV/IHriZo\n+kKf2es9xrBSqbgsE0pL4HNXq1V3sh/jZP1nC6ySNQSomUgk1Gq1XFHrwWCg9fV1jcdjHTlyRJ43\nyWwoFAo6evSonnnmGX3pS1+aqsUVlS9+8Yv60z/90xfti1dDXhQcCsPwYUkPS5Lnee+W9NEwDH/J\n87z/Q9J/KenfS/plSf/Pzle+tvP/P+y8/x/D6xAOv9Jku5Kw8PP5vE6cOOHQQQp1HTx4UO12Wxsb\nG45d0Gg0HGgyMzOjer3uis7ikKOQrQLnfQsIWXop70tyi59FazcLQAuUDb9RANDZ2AgAB8rlsjtZ\nK6rgbL4xCgr0m7/JcQUd5ZmlXaaStAs08TqOOBsUNEPL7qEttshclPLK+LLZEGXZC6Dgc7a+k90w\nLFocHTM2OpvCxmug8N1uV5Km2sczcj/q14RhqO3tbVe/JpVKOcTf930HFGE4+L7vFAmf496k4LVa\nLVfQmjpH1LcpFAqSpE6n4+oJ2WMxAZ3m5ua0vLys73//+3rLW96ie+65x23qb3/723Xq1CmdPXt2\nCgylX/Zaa3YDtIr/agCiFxLmgr1uuVxWoVBwaXpEVVDgtVrN5fDbzY320Sb6kfXsebvFviniR9pg\ns9mUJM3PzyuVSum73/2u3vOe92hlZUXLy8uan5/X6uqq8vm8YxDt27dPJ0+edAXqOLlifX1dS0tL\nLxkYe73LjbJPxBJLLLFcbwH8udWPtb/Z94kgCBwLodPpODAol8tNnWpFsFmSs9VsIDbKpLAABran\nTc0iWIa9xg9MBmxdC4ZYBg/XBICw3weMyOVyjh1vARhrc9sgtA1WW7+CwCigg203/oxNMaMfeF7s\nS1vjJfpjg8nWjoyCPNHUL2uXXYltxLUYC+sL2LQ4mylibTr7vJx4xb2Gw6E72Zb2j8dj5XK5KZCG\nE8tgxktyB+sASHJSsi1JATCYSqXc/KS8QhAEzk7FN6ZN9Ic90p35Pj8/rwceeEAXL17UxsaGfuzH\nfky5XM4BpT/yIz+ikydPqlarTREZbJ9cL38iGhQulUrOR45mMtDfjJmt4wXIybxvt9su8wN/hJPi\nhsOhVlZW3KFD29vbzqeen5/X008/rdtuu035fF7nz5/X3NyVs2Y7nY5KpdIr6oerlathDl1JPi7p\n33ue9xlJ35X073Ze/3eS/lfP805qgvD/witr4kuT6MK+0vsMKgg+9M10Oq1yuayFhQW1Wi0Vi0XV\n63W1Wi1X/GswGGhjY8M5lgA74/HYoeIwgizFEcCHyWnrEVnGCsLnAXwsYglllHopfLdYLDr6oKVK\nAkpFn5+FQLFjCiYDWkU/2+l0VK/X3WKlbTblDTSVxWQjHkQJLMMnmgNs70k/2HQwNrmo2DG3G6Y9\nHYFrRNlJtNNSIaXdujGMGeAY9ZkGg4E6nc7UqWT2xIdCoeBqTPFsFjhj7KGD8j9INnWELAiIIiKF\nLVrMMJlMOlCo3W47KjAbf61WU6FQ0I//+I9rfX1djz/+uN7+9rer3+/r5MmTOnz4sI4dO6bHH3/c\nAVR2k7br6FoL98TogiE1Pz+varXqKLadTkepVMod58n4swlgAABCQsEllziZTDoQaGFhQaurqwqC\nQDMzM+6Eh3a7rXe84x06d+6cVlZWtG/fPo3HY126dElvectbdOHCBc3NzbkTLvL5vDY2NpTNZl06\nX7PZ1KFDh6ZqdF3vPr3O8rrcJ2KJJZZYrrfAILoSQHQLg0c3xT7R6XTcQSa2tk4ul5PnTep61ut1\n1et1d0S57/suYIifYIEZbBbrT1h7BtuQ71t72rL+bbkL7GCKHPM9gBt8iUqlMsWQweYHBIrahDZV\nygZ+SaWjD2BqE9CWdlkY0fIP9iAdfAZscRgy1pegrVcCeXDwJTn/YC+GUhScw2+wBab5PsJ1rN1q\n2UL2PV63ZQ2sL2Bfg3kzNzfnyoHAVrEBXJ6Zw3eYB2QtpNNpN374fLbGFIASAWv6DYbb9va2y07A\nFu/1eiqVSrr99tslSX/zN3+jY8eOaWZmRufPn5ckPfDAA3ruuef0zDPPTPnedu5cD+E+qVRKCwsL\najabjmHV6XSUz+ddHWF8LPwmC87a9UlfMG4AaM1mU77va2FhQVtbW27dLi0tqdfraWNjQ7fffrtK\npZLOnTunQqGgYrHo6p3uJWtra5KkRx55RI8++ug17auXBA6FYfi3kv525+/Tku7f4zNdSf/Vq9C2\nlyVXCw6Nx5Njvy9evOgUJPmsg8FAjUZDzWZzCukEQccpB8xA6UK3a7VaU5REW8mfBQ3QAgsG5WZR\ncsAMi8Jb5N0esUfKE0rLIsDRwmv82I0IwEaaKDQQU+7L36TyoJAshRFFJMmxkEajkQPfYBnxHRu1\nkKaP/LSF8aJA1ZUkis7b10CirXK3oEG07+krS6+1yDHRHpQFkRH6j8JujDtKNJ1OOyYQx9MTCQjD\n0FGPSRfzPM8VN6OIYa/XU6PRcAqLNvM/89RustLuEZPMl3a7rVKppHe9611aXl5Wr9fT0aNHtba2\npkuXLunOO+/Uk08+qXq9PrXxvtg4vJrCfCkWiwqCwDGwVldXXeoXG69lbjEmRERQ4JJcnSc2XWvM\nhGHoDLdEIqELFy5oYWFBuVxOzWZTKysrmp+fV7vd1tbWlu644w75vq+TJ0/q6NGjeuKJJ3T//ffr\n/Pnz8jxPm5ub6nQ6unDhgt7ylre4dQnoGAWHbgaA6EbYJ2KJJZZYrrfcwuDP8+Rm3Cc2NjacL0BA\nENsCe97a08lk0hWwtp+3zne321Wr1XK2chAEzonvdDrOWad0QbQuEPfH3gfMoGYNABJFkXHcbSFp\ny4aJ1jzFvgQAoohvlKWD4PvgD2GbSxMQrVgsTtlx+AIEWan3iK9B7Vd7ipsNpluQyfpbtGUvYEia\nTlsjU4H+kHZBL3yCaBDSXt8CIvhbAEAErrkeYBUgBUFy/EvmhrUfE4mEO6kZOxk/hTnCfTjQBkYb\n/gRt4/r4hDa7grlm5xVB242NDSWTSd13330aDod68skn3VHwf/mXf6m3vvWtOn78uC5duuT8Izsn\nroeQTVGpVNTpdDQ/P68wnNQePnjwoAPEpN0sEZhVgJTML5uyCWOLLA384+FwcmodRIH19XUNBgPN\nz88rn8/r1KlTro83Nzc1NzenZDKpD37wg/rqV7+qL37xi/r4xz/u2kQB8YsXL177vrrmd7hGYieT\npQ9aJ38vse9ROIriX5Kcs8gijzJaSJuSNIXsWycWhQDLiHQgSQ6RxGFFEVgFbhUc7CTakEgkVC6X\nXVqNJLfp1Ov1KWonqWSWKUPf0V4cVRxsgAwUIAwoW6fF9/0p8EmSAyR4nyPFwzDU3Nyc2+joD1sk\n2AJobJJcizGI1o2x9XCiAJCNLth5YXOVo7nDjC/RAPqazzNf0un0VFE8lA3AnaSpqEij0ZiK/LAx\nQhWFLkqBOHsaBW0E4GBztACbZSQxr9rtttbW1hSGoQOTKAyIooNSyndOnDih06dPu6PaG42GGo2G\n7r77bjWbTT399NNTaVo2MsQ82MtYeLlUUDsepVJJhULBUbQBb0Dmfd939E3bPzZSRPvs+repnlBo\nLXU3nU674n0Uuj537pxmZ2d16NAhra6uam1tTUtLS1MF3p966ilVKhXVajU1m01XZJC5TsQrysay\nzx1LLLHEEsvNKTFIdHPK7OysC4zm83kXAMbms7Ys7Bdrl2LPAHRwWAl2ISAJtSktiEA9UzIE8GOs\nfyPJ2U3ZbHaqBAJ2PvatTZcKw8mJTdHTs/gcoAtOMELqE4406TQ8h7VzgyBwgUhrT9IP9NPBgwen\nMhRg73MiLTa3LSyNv0T2h/Vbov4FslfmQtSOZEyl3aC2BU9scJZnsX0Gix1/Eda/zUDAh2MekaXA\neAEcFotFFYtFB6ARTCZQjG8DmNZut91c4J70YRiGrjh1s9nUxsaGA5NgmlHLlNpZzF/P8zQ7O6v7\n7rtPa2tr8n1f999/v+r1unK5nN72trfp6aef1tramvN/GQf6+9X2J+hbACHmAz7VzMyMzp49q3w+\nL8/zHKvPFmkHjIPoYOcpWID9H6DPZjHwf61WU7FYdNkPpP6dOnVKt912m9LptB577DE9+OCD+vKX\nv6yPfOQjkuQKh9v6vddKblhw6NUQqxClCRWv2Ww6Zo4kV1wNJWmdOvs36DpABHQ/FnE6nXYLCvQW\nRYlysHQ9ipGF4aRgcaVSmYoIgPaCUo7HY4cOFwoFly6DIgLwscCItJsKZ5Uo7aZGEAsBkIqFBijF\ngsExtwCdpZZCucvn81P5nfYUBa5DOhSpd5KcUkSxWhYUURgUCg6+ZRBZ+qld3NAK2VDod5sqZxlC\nNo3QIv4WzLNRBltQnNd5DVoj/ZXL5VQoFLS5uSlJbhxoExs9FF02GEthtsehYjig8AA8YDABMFEY\nLZ/P6/Lly45ieebMGc3NzenYsWM6d+6cy6e9HiAGba5UKg4863Q6yuVy6nQ66vV6U6mZdg5Y4IX5\navvMFpDjyErS+GCB0U++7+vixYvuFJLNzU2dP39ei4uLarVaWllZ0dLSkk6ePKnjx4/r8uXL8rzJ\naWfb29tuY2ZOxxJLLLHEcmsKwJD9HcvNIbBhrA2MjZJKpVSv1x0rn4CoZRLZ+qEADzAYsEPT6bT2\n798/xUZpt9sOLCJtiDqWnuc5u43TkbBrsFFJq7H+AAWMbZkCbHUkWqfFAlz0B45xKpVyjBVscwvw\nYB/xmrW/uSdpbQgBVXttngmfhyA9JThoM/1Pf9NufAQLGNkyGbTDfsfWXrV+oGUcYZNyTwvcUQAa\n25N74R9aQAsfkutZAK9arbrguWXG27qx+At8h3Hge7Dq8WklObuYekikpBHY5vmZ62fOnFEqlVKl\nUtHa2ppOnjypI0eOaH19XVtbW45RdOnSpRckc7xawqnPnBKNf53NZlUoFLS9vT116rO0W2Dcjp0l\nU1gCB+VGwBTwMagN1ev1VK/XlUgklM1mHQPo0KFD2tzc1DPPPKPjx487BhaH23z605928/2zn/2s\n/uqv/sr5/9dabnlwCOWC0qEI73A4dKkklqKI8oDyiAKKUuQAU5hssGGCIFClUtHMzIxTpjiPlpKG\nwkO5AFjxPooDIMfSOMMwdOiipSVGwRSr6JjsgDSgyJZVw2IgF7ZYLDrlwTNY+qntY5tbzD1RgFTS\nt8W2QXTtpgCqbZWbTRUDGY/WFOL79tlRxHYOcG1Lc7UsLha8Re15ZkkOvOO6yWRShULBbSSklcEs\nQkGxEQOyNZtNl3oGWAYIRJQHtN7SWhuNhpufMJzW1tbkeZ5LW6vX6w6UIkUSMK5cLqvX6+nYsWPa\n2NhwbYBCefToUS0vL7to2LUU6mkdOXLEUVBhETWbTTUaDafMB4OBisWiY8yxrlizbLyAmbCQ6G+b\ney9NjLZut+vGsVwuO/af502OvdzY2HAnylG4PpPJaHV1VTMzMzp16pRjMrXbbWfkXa9jKGOJJZZY\nYnl9ii1QHcvNIxZYaDQazl6EIUTgGNvDBrGoZRktYQBzgWtQYxS71aaZhWGomZkZ5/hjw9j6NbYE\nBL4PoAEBQ8/zHBBkD63BXpambWNbLsM6zLQB+833fQdCSbulDoIgcOxtgu4EvK0NTNFum15lD46x\nvg0nfEVLXwA+tdtt15c8l2X/8JpNE7MlOmg7z8o4Wv/QnmRla40SVI8yYchCsMAfvh9MIPoBQgF1\ng+r1ujsApVwuKwwnZSqazaby+byrX1qv1x3gh69LiQvSo/C38IUAMZvN5hS4RXFxVP0AACAASURB\nVM1ZAFF83nK57LJZfN/X3XffrXq9ruFwqMXFRa2urmo8Hmvfvn3a2Nhw88bOM/rSrpEoC2uv9Wc/\nTx+Px2NXeoWUPrI3Ll++PHXtaBkKroNPyBiRGknQHb8Z4KzZbLp+YW12Oh3NzMw4gsTJkyd14sQJ\nbWxsqN1ua2FhQe12W2fOnNHS0pK2tra0uLio3/iN31C9Xpck5x9ea7kpwCEGzi42i/riyOJsozw6\nnc7zvhs9ltwyE0gpAziRdtFFFjKFwOyJBEwalH40soDy4ThLFoed4La+TRAEjvLH85GqZdNobLvo\nD5SZ9PyTxtiMLHptkXwLhPBMCAqYRQDbBcWN8kTRoXwBjaxCsBESjm/n82w4/X7fUWstO0naTeuy\nG0aUzcS4M/aAL1E6LX1rNxkUPove5mbTl6Dutvg2rCI2exB7TiLDEECZo5C5F4qn0+lMsZkYe8tu\nok851azT6TjFzkkD7XbbnbhHDaJ2u63t7W0VCgUNBgOtrKxoZmZG6XRaFy9e1OHDh3Xq1Cm3FqIK\nnf+vVplf6Xuj0cila3HUpI2iAPhg4PC6nYsW4bf3B2wC8APUAyBk3VsKKEy8tbU13XnnnSqXy2o0\nGmq1WlpYWNDa2pqOHj2qWq02ZbwxHw4ePOjGg3kVTX206535cj0YWrHEEkssscQSyysT7AmYBJbp\nT6AtyuDHdiRLwbKPsM1Go5EKhcIUsIOtatN5JE3ZUti02Gv2cBLsVGxs2mbrhWKbABBgW0m7/oP1\nY6ytbdtn69dEAR9rL1sAKpFIqNFouHZzf74v7QalLQhAO5rNpmu7Be24Rrlcnkrtajab6nQ6arVa\nzka0vgyAimX/WNst6kPZfrF9QZ9BALAZCcwR7Hppl2FGUBeAUZIrGcF3GRt7ChqAIvPMFhhnzAHS\n8M/wOQE0IEmQkkbdJ7JBJKnRaLj+iha1pnQDhIJjx45pfX1dlUrFAVv4NdYXpI9f7G/E+naMLf0A\n8FIul52N3mg0HCBLO7kur0EGwP9lLvKMZDDg7wMCsm4B9hhbDqkhi6PX6ymTybjyE/v373fpZp7n\n6fz58+5QHPr84MGDV6WPXoncsOCQRVz3yhe9kuBgo5Bs+lEqlXIT3C56Jhx/A8BEF7ykqWPsYB9J\nuwobQCB6XQv8AFYwSbmXJJVKJQc0ATQw+S26bcEMnGCUTZRpw6RFYbHYLTsEZWXzKC2TKQqGQGNE\nGdnoRZTlZAEp6/BDAyXHk+9TRZ4ixZzA1Ww2NR6P1Wg03CZLJMTe1zKpGA+7wVqQiP6zIAfzyH7G\nbtiwg2zUB8ZPv99Xv9+fOhmu3+9ra2tLyeTk2Ml8Pu+AGtD9IAjUaDS0sbHh6LMAnL1ez+UWE1Vg\nXvCcNk3SblwAaaDc9jVJOnHihNrttgaDgY4cOaJer6cTJ06oXq/r7NmzUwwr5mj0b9tne61H5iTK\nnGgb483rUDMBtyS5SMVegBTz3s55lDlznTEHcGIOcj3mdq1W0+Liojqdjkv527dvn+r1usbjsSqV\nipaXlx2TKJPJ6Nlnn9X29raL8Gxtbenee+993jPHEkssscQSixTXI7qRhaCydeYlTdmRFkwA7MGO\nsgEjm3ZEZoIFNyzDBVvHBsctQ8LWLAL0GI1GjoliTyCz2RE8B/6JtVdgjdigFqAOwWlpN4AeTV3K\nZDJT9hc+AOwVbGdp9zh1fDb8OEnu8BA+C/CELWkDhAAWFojADoRxAwOGNL1ms+l8EZx8rmXHxj5v\nFFSLBirteNkgNe22tiFjaoFBW/8G38oWSialkLpS/X7fMV0AO/CbqNdpWV0EX7GHma82uE/AFAAI\ngARyBT4VzLler6dCoaB+v6/l5WVJk6LolUpFlUpFZ86cmWL/Iy8FHLLzjf7r9/uan593AeBqtapC\noeAO/4nOQ54hWv8VXxFh3Owp4PQB4DB9wFqmAHiz2XRMpmq16rJHAMnwJxYWFpz/88wzz7iMoOFw\nqK985Sv68Ic/vGcfvBpyw4JDUUZCNPpu04ikXfQWYIOJnUgknCM+Ozs7RaWzSDYTAYDFghs2vckq\nQhhGLCwcTRBolBeDD/gCDdHW90EpgGyiiKJCqhBKFFQynU471Nb2jS2ixQKgeC4gApuQBeEAkexn\n7GYH7dEyjLrdrls4Ng8ZBWtZI2xGltrHArObBou4XC6rUqm4k+RIEaxWq1P1m6Td0w3oa9KnLNXW\ntiG6qUMJZKMBXJN2gUoUkx0LNiKUumUfAcjY123BOSIDFJgG1QZQogYVc5o2ttttp5QZHwrYMU9h\nhYVh6Ciq29vbbrPJ5/O6dOmS1tfXtbS0pOXlZZXLZc3OzqpWq7nT1SQ5MNBGxejHF1rH0fcPHTqk\nWq0maRKRQLkThePZ2XiIVtj8bBvZYp3xOZ7dAlCkfnJN5gZzodVquf/tRk7NIYCqTqejRqPhioKz\ntg8dOuTqgkWNuageiyWWWGKJ5daTGBi6cSWVSrniyNjI2NawcRBbs9SCIPxv/QoE9ocFCLCfAS0s\nY4L/bYAZewimCK/xffwY6//Y2qu2tg/txtaygIz1mXD6bboSaWhc1/oipNjRb/Zz2GvYsNh8PDfB\nefqHfosyY6yPAZiGPweAlcvltLS05HyPVqulWq3mArC2zio+mWUY4evQF3Z87ZyRNPWsFlyjbQSZ\nAQew1+kDAC97vD3+BKAQ9j/PV6lUXC0pxpHgNIco8dnRaOQYN/bUMuoQWTYN44Mvxfue56lYLKrZ\nbKrX66lSqWhlZUXZbFZzc3PudF/mriVi2HF8MX8CvxFgdH5+XltbW86v57qUkOBvfHRLoGDMLPDJ\nM3HiHD4P485Yk01jS64QdG42m1NjT9mRjY0Nzc/Pu7UwGAy0trbmTpSDvHEtgSHpBgaHXqrASGFg\nzp49qz/7sz+TtHvK04ULF1wdkyAIHHKMcxdV5DjwCIMfZeiwCeDQo+Cj9EQmI9fifVt8DDAB1g95\nulyz3+87alsul3NKAkF5cL/oYh6Px5qZmZlagFybBQeYZhcYixmk2m5UbC4o/yg7it+W3UPf2tPW\nGANq61gaJ/3LiW2ZTEaFQkELCwsOUGA8W63WVKQEUM4eK4mCt8qccSRiIsnRDa3isHnQ9vm4H8CN\nLehN3xNpgk5sC32zWYPCc3+KBXIfIgdWCTYaDTfWzE2eBeXPPWxBbSikQRBofn5e29vb7sSCAwcO\nKJlMan193c0N0u5sNMn+jgrK3kYmqB8EkFoulx3AB9Jui3QTGaH9UeOGa9sxQ3nTD9Gi4Yw9Cp5i\n9USWksmkGo3G1OmEyWRStVpNvu+7KEin03H51/fcc4+jnMdy40hcFySWWGKJJZYXkp/8yZ/UysqK\nS1laX193zqetuRmtPWOBIFsuALsC+9YyhaRdEMcyJKLBaUAFy0LBNpV2S1pgF1rwxZ6WBTPdHi9v\nAQ5sKgsOwTzB6ZYm9hr1VrG/YPJY3wfAB5YL7A7LlsF3AqTAD7HlL+gn+g1fz6buce8owQCfgdep\n+bO0tOR8tTAMHXvf1jBqtVpThbfxJ6JpZTbYKe3Ws8EuhcVks1N4Npu5wZyx4449jR0PsMS843N8\nj2vbkincB58AX8GWMLFpVxzQQwCeeWR9k1qt5kCos2fPanZ2VmEYanZ2Vul0WufOnZvyCW0WxIv5\nE9b+57uclk2mBsAM/iWMKjvOrCWe2frDlgzB/OOzAHGkqkX9CeZXKpVywWbaVK/XNTs76/zJIAi0\nubmpRCKhM2fOuDlZLpenSBPXSm4ZcMg6jJL0xBNPaDweq1araTgcuuMXR6ORNjc3XVqYBU5Y1FzH\n5uCyUKk5ZJktdkFaRhL0OyajBRMsqs2C5DkAP2AmkXYFI4JUNvvcNsXMIu9RaiSbCMoXpSvt5mAW\ni8Wp61iGEIqShcbmYEEhWwSPPuJZAb5svjN9QP+WSiUHwPCbv7km0ZtareYUBkoIB1+apAEOh8Mp\nqinPGWUoRZUEgBLjbyMglolkgSerfEHjoXz6vu/GFRor/U1fk37GfKD2kp0jdmOHMsuzSnLIM3MW\nEMQyt9iUQNVhzACWjsdjra2taXZ21hWasxt+VIm/EDjEHAXomZ2d1Xg8duw++pz5AyBq56pdW6wR\nFLxl7vE80nQuOCw4y3SzbCgYefQN/UMfQgGlmPzq6qpja1nK85UiHrG8PiUGhmKJJZZYYnkheeih\nh3T+/HnHVG82m65WITUkCexZ8AL7BBse2wKHHZseFokNJEZrK+KASrvp9rZ8BHahPdCGH2weDiqx\nRXYtM57/ua4NMNsAuC3VwXdpq3XCuV4+n58q6otPQt0ggrkWAMN+w7bDd7KMeHvQSCaTcYfsAOIA\n2mSzWTcWAHkcTmSfi/o7FH7GHl5cXFQmk3GB41ar5Zj8tN2WAMEvtBkn9j0bQIQJRckIbH1b2BxG\nl83ckOROnKO+qCTNzMw4n6VarbqxZt7Qx/h9+DbS9HHyzGf6Fb/VEgn4vPWRAPUIMHe7XXd4ztLS\nkkqlkqrVqrt3NBPB/o4Kn2MOpNNpV5ybdYOvzfXJqGGMrY1vGXAW2GPOtdtt9360ODuftT4GPlQ6\nnXZ1XVl/+PPpdFrLy8s6evSoSqWSksmkvv3tb6tUKjnfkgyZaym3BDjE4DBJ+/2+Njc3NTc355QI\n4AKOLlQ5Jg21b7gek8UijlbJSnLIMJObCcl3rDKw32Vi+77vqJUoW4vGMkEpKEfbADFQGlDlLMIJ\nmm0BDFs7h/vRPyhSu0h4Hl73fV+lUknSLlOLz1pWhqWJgmxbAMJGUCxQxuJB2bNJZLNZV9MHRUPu\nLErS930HFNHHltY7MzOjffv2ubFrt9tOuUty4JFlM9GeKKptaz8BrqE0JLkNOorYS5pCyXl2mGCM\nA9e1dFMiEHbTod0IRgFjDEXRMrgsswxDBqXn+5Mc5nq97gqiN5tNzczMuLxbxhWxLLu9gBELpI7H\nu0XcbP65HS9rGO0F2tq5xrWjDDHbLjYtQCPmnt3IbQ6yjbyNRpMT4ubm5iRJR44cUaVS0cbGhhYX\nF93Yl0ol5XI5F0XkWW3kjfljdQE/scQSSyyxxBLL61NGo8kx2di3vV5vKriFP8F+zsm7ljmOjWN/\nLIjE9biftcEt294yZaTdICRsDewXeyiHvYdlwdtrW2ZP1K7FdrO2JcwNG1DEroIhbgPg1v+R5Bj8\nkqbuFbUlbZ0aTtJNJCYH/ADwcH9qLNF+Apo2wJ3L5TQ/Pz/F3qLUhmXM8H6329X6+vpUcJ80KfwF\nACfuRfFhnpc+xj60gCBBWvo+WlsWgM1mmOBTUdbEstQoVh1ltCD0eTTgzT2xo2EskdHBa3yPsbKH\nx/Aez0cdUdh29XpdxWJRrVZrqg4o8mL+hGW0EUgmiBuGoWsz98fX4HuWgcXnWB/MUYsD2HGyIF+n\n03HAbjRoTT/Y9YHP0mq1VCwWVS6XNT8/r9FopLNnz7r6uouLiyoUCqpUKlfURa+W3BLgkBXf97Wx\nseEUCCchUYfF5p9alA8k1TpsKEIcdRYKiwS00KaeWWUs7dIx7YJmAqH4bQFhi+CiLC3wwIYC8o5C\noxo9kxvlT50Vy5ihHhL3w2mGXWHRWwvkBMHkVCzYLyxsewoDmxLXt6d3JRIJtVotBzZRb4nUKtqI\no46iAgxCKedyOWWzWUd1BPwjmhIFriSpWq26xQ59dnFxcSqaw4kG9hhNm+JFf9gq9yjGer3uIj1s\nyrYOkU1poy9Q0oBciURCxWLRKTRbvI65iEK1ytzSFAGbeHbmC8rczlHGkDlD6lQymdT29ray2aw7\nUr5SqWhra2uKWhmVKBhiX6PvKLjOvQA5me+0mzVkT3qjz4jMWeCJe9G3zC2+x2ZJvzE36dt2u+36\nlfXCuEGTvnTpkp588klduHBB9Xpd+/btk+/7KhQKjoocSyyxxBJLLHtJXG/oxhRsU44Lx9bodDrK\n5XJTp9EGweTYdsoL2ACytful3bIMg8HApdNj39qAXjSbwdpKNnjJ56Xdk5msDcazSNNABP4PLH3u\nTzoVdRq73a6zh7DVbdkJ7lMoFFzbbJqdBcZGo0mNG+5l7XD6xQIrkp5XOsEWScYuJegpaepwEgKI\ngDE2KE9tTzJMLCBF2petdUm/WKCOdKtMJqPZ2dmpkiE8r2WjY6cTeLV+ka31Sv9xQjF1NS2Qgc/F\nHKAvyHDgvti4BO5hpEV9Xux8Sc7etkAR42yBN0ku+IvvRvB0fX3d1U5Np9Oam5vT+vr6VM2kqNg5\nhdjgMOmIfDZaTsKCssw/fFYb6LfBZgs+Wd/YgpakitnXIJjY7IxisegyDQB/gmBSmLrdbuvZZ59V\nv9/X6uqqer2eSqWSA3AffPDBF9RHr4bccuAQSmJubs4pDptuY4/tQ8mD2toJhUKBiYQSQeGxaMkz\nLhQKbhECGKEUYEGgrEGvUTAoRwAsi3hb0MeydFAcTHSbIkQ/cA2O14ZqadF8qHmzs7NaXl6eSkmy\n9E9S46BxosA9z3MUOBQI9+JZbAofx0tKuyiwPSXNso5s5ANUGGVoAQKiCFD0QGhpA4oRJQ7KT8qe\nHWvS9rguubU2LQvlbUEY+hylReSIeWfTxFAsNmIDSGJpu8wnQA42UBQ490S5M/42dxwFT6oaoFMU\nbAGgAXzCCMnlcup0Ospms8rn82o0Gnsqctqy12vMeSJcGBO01bKSpF1AyM5RSzGOFkXEUAMks9E3\nwFHbZ5a1w1gzRkRGAPok6dKlS2q1Wg5o9n1fCwsLmp+fd+N54sQJtxFZcDiWWGKJJZZYYrlxZW5u\nToVCQe12W2tray5ISU0TTxPHtNVqadBvazziNKSJDWgZ7VHGNHYutSVtTUyb5mWDzPgl1uYGiJB2\nsykAHSxLCFsSwW6V5OxG0s8WFhacfcox69RJ4dqUPZB2wS4KIeM72XsSUAMM4dh0AvX5fN7ZePgc\n9pAS/AnsN2y5qP9ggQPru/HM1ma0dYn4PEAPDBgbLCa9zGaMECRmzHhe2//UibVjbjMD8EVtoWTA\nHoA/TsKyDBj8Ict0scFo7H9rE1smEJ8HUMK+HgwGyufzUwF4fCXARMAg5qsFXgCO5ubmXBsBqUql\nkra2tp7nTzAGlhFlCQvMJ7IbyAygrAifs74PAX+bORP1zxlD5gzPZYHGaEoac4nxzmQyrm9tloYt\nwk2KHiBRr9fTwYMHVSwW3Xy8HnJTgEN2ciAWxLGLEzSvUCgom81qZmZGa2trDtCA+TIajpUIPPV7\nA4VjKfB3CkdrV4lbkMLWdrHpW8ViUdVq1RWmzWazUzQ8aVILhomM2JxYFr49Ct46rvb0L5xWFj7K\nslqt6ujRo0omk1PsnmQyqYsXL6rVaunIkSPuNYv6r62taW1tzeWq2ucHbW82mw7Q2tjYcJEU+1y1\nWk3dbleFQkGZTMYp8e3tbQdy8ZPJZKbANBa9ZcqwUNiwAPRY2LbIMOlmFtSxtZls/R0KXqOUbE0e\n6gPZiAtCvSkothgHts9otwVyGo3GFHsKEAbwiGuw8dA/fM4aC9JuRMhueIyTJEetjUZHomg685DN\ng74YDAYqFAouzQ5gEGAPKmuUYWaVOa/bdVAoFNy8YYOyKY7QsDEk2GxsRMQaQ3bN0xbmNW0humIB\nIN7nVMOoMgZos+mFrM0LFy6o3+/r/vvvV71el+/72r9/vw4ePOj6e6+5gx6LSlSvxXJ9hUh+XHso\nllhiiSWWveTBBx/UZz/7Wc3NzSmTyWh7e9vt/5NArafBoK8wHCmR8BUEExtbO1s+NoZljeNHYCfi\nwFerVW1sbKhQKLijwW1qzGAwcPYzdhC2h2Uu2JpFkqZOVsP2soWkbSHo4XCoUqnkgpyZTMaVtwAQ\nOnbsmLrdrg4fPuyyFWjL2bNndejQIWdXSrsAWb/f1/b2trMFG42GSqWS+v2+Go2GazOBSBg65XLZ\nMaxg2dOn3If+AOSwwIwFNrAb+T62PfYxTB2b6QCQl8lkVKlU3BgACAFwSbv1Wy3TxRIRaKMdD+7B\nfYrF4vNSAwGHbGYE4JUt+k3KGd+xZSqwpS0Awucsix9bmkCtJRZwb+Yvfcf3oyww/NxWq6VCoaDh\ncFIHeDQaqVqt7unjW7FBZu5tmXnR9DkC8PiM2OQEv61vYEE2/uYaFmOwfgCBbXxQm6Vj5xE+i83s\nsO27ePGifN/XbbfdppWVFfm+rze+8Y1XVkSvotwU4JDNPbSO517OVhAE2r9/vzzPc7QtgAkKem1s\nbCiXy7mFTwGzfr/vwCEYARYRj076UqmkXq+nubk5B6BYlgiLh0XHJAbVRLlbVJ1nZbLbNCI+B1IP\nQt1sNrW4uKhqteoWRK1Wc4ubowu3t7fdsedsMOfPn1elUlGn09GBAwdcKhPtBHSgOv/a2poymYxm\nZmbc69Tr8X1fd9xxh1ZXV1WtVh1Njmcnj3I4HDqqKnRVng3KrKU/snlagMUCdCgr+g9Ahf/ZMDhl\nbXZ21p3IRd4yOccWhbfMFMAbyzxiXgC2WMCJjR4mEjnVKBXQZMAZNnPylklJ47kACO2zc3+b+xtl\nSrG5AMQxf6O5sTYyxWY7Go20tramxcVFF8koFouuH2yUICqMmUXqGavBYOBolswNC/bCygqCwBV0\ntzRq7ms3bOaNVey2LShsNgoMB1uMjzG2JzHQ9nQ6rc3NTXW7Xd11113KZDKq1+vyPE/333//FHvs\nxQAfG92LJZZYYonl5pc4pezGlk9+8pPu74ce/riKKiiZSihITOy+RqOhtFIKEhPmfDK1W2jX/raO\nt2UDwXxZWFjQeDxWtVrV9va2C6rxWdgfBJStRDMMsANJt4K1Yf0OW0aBIrzz8/PuMBff99VsNh3D\nm7SylZUV9x3asrGx4U5bGo8nh5rAlMHGo+7raDQ5HKhSqcjzPHedTqfj/JCDBw+qWq2q1WpNlW6g\nP7D38ZOwr/dK4aMEBPYgIBhMGQtw4GfQh7Z2jCQHdDAmpVJJo9HIpRha/4CxstkWXIM5gT3L61Ew\nBJaPZRxh9yaTSc3MzLi0NZ4Dmx8bljGxQKC1oWmvTWmDkUb/2JRGW7eTTBnuy3PZv/GJmOfUImJc\nrtaf4FqAffi03MeWpmCtcRgRfpQNmLMO8at4dp4FcIfrW3/Clg5hPtFH+CP2cKkg2D1pe3l5WZL0\nzne+c4r48bnPfe4laqaXJzcFOLQXCMTrKDmcY46Cu/vuu92ELRQnR+p94xvfULvTUjaXUT4fyA88\n56Cn0kklktP0R5vKg+NqnWn+TqfTKhaL7vg6m5ojyVH3bMFciy4CLvA3C8EqTNBinFoQ5H6/74AY\n0uVYPCwK2k1/ra6uOoS32+066qTneVpeXnagDteg/ky9XlcYTk4Dq9Vq6vV6SqVSbpEPBgOtra05\nZbO9ve1OKUAxWSqeTRGDOmqVFOMOkGXph1FAwfarvY+0q4Qtes71iWAkk0lXxwighugBTDCUgWWv\n0G/0L/dtNpsundGytHgmq9yJXHie5wwBikvbfF57fD2K3wKNgGm006Ld9Dkbg02lBKRho7QA5MzM\njLsPYCSpYIwD97Fr1a5ZO78LhYLW1tZcLaPose9cD0YaSDzKljZLuwYXII7dWKL0avtdWEpcl/6x\nKXaWthwEk6LoZ8+e1ZEjR3THHXdofX1dYRhq//79etvb3ubGyvZzFMC2wNZe78fy2ol13GIWUSyx\nxBJLLFeSL3z+i5Kkj338I6pWt1zNmmq16k7WwjG3gr2HnWPrjdrgVyqV0tzcnJrNpmNPY/fYMg2I\nDUpZe1jarWlJ0ItANsx/SQ4ESKVSqtVqKhaLU/4EjGt8CoJoAEDYzNg12FSNRkOSHAA1GAxcYJg6\nj2Q7kEVAkL3b7ToHGoCKWka9Xs+lVvHsMM/JyLBOvWW4wJiybCdboBsfQpJz/K2dZv0JAAH8rI2N\nDddnOPuAOnyXa9t6rdjYPIvNRsC+3gtgssFrbGzLpCKLwvd9l67H9bGpaS/gEv4F6VoE2rGJrV/C\nPbHjbTok/qoFINPptFqtlrPtwzB05V7oU/wYO68tMSMMQzeXYbG1Wi1XjN2uCYBRMjGsjW7XnWWM\n2TFmDliWmc0OYF6BBVjfhACz9Ufx3YfDoba2tvSmN71JmUxGa2trGg6HuvPOO3W95KYAh/aSvRhE\noG/Q1kj1eOrp7yuRSOg97/mXCsNQTzzxhM6duyB5oeSFGgz7ChWq2+toPNpdXEwYrm3ZFxY4Ah0u\nlUoOFbULCCaRXUzWSbTUNJQ39YYkOZQ3lUppdXV1qrgdi5FFzOSF/cJC7ff7WllZcScrsfjn5+cl\naapYNO/BwAFZbzabruI87bJo7GAwcAsf5DYMQwdqoECiVDtYNCgFvmsRXgtuoRxRgBYUgNpnIyr2\nBAK7YCW5z1GDiLGxhfoKhYIDjSx1kb8ZbxS4jVjYtClLuYTySfv5jJ1XliGEgmPDyWazKpfLLnJg\n84btJgMlmT6w7J2osHHQbp4foCgIJvW7bATDRkHserDpdlx7NBppe3vbGQS2n6Xp0wDsc1gWF+vI\nAixRsYaRlb2AGLthYJQVCoWpdEff93X69Glls1nt379fly9fdiDoe9/7Xvm+71LwXkhiptCNIXGq\nWSyxxPJqSswaujnld7/4ZX3q0d9Stzs5IXk4GqhWqynUWONwNGXTYHdhg3qe5wANW5gXlgqlCywA\ngl9ga5paR1qSY31Lu2xoAmLYzAS9Njc35Xm76U6j0cg56wBX2O7WVxmNRtra2lKlUnGnQlM/FaYN\nx5W3223nPAPqkHUwNzfngBVbvwY7mMwPW68GWxfWvbUP6W+AJxu0xdegTdi0fMYeSGQDqdFMCtph\ngT4LLHie5wA02m2zIwjGWwLBzMyMpF1mCmwd7mXtdss2s8wcxpl+Y87ZAC7zBraPBZcgOuATWR+D\nucQ8ZQy4LuCO7TvmU5RQEa0BGgSTIs3UOZU0dX18KHt95n2/33dMNlhysE1VsQAAIABJREFUiPVP\nuB9jYP2JKFEjGmi2/kQ02LuXT8G6IdgOJkBNoV6vp9XVVR0+fFjJZFKXLl1ya+mxxx57vpK5RnJL\ngEMMHoMO22ZlZUUrKyuama2o3W5rYWFBly9f1rnzZzUehzp8eEm1Wk3ZbFqdTkepVELdzsBNaAtU\n2AgAA4zi4t7kwqKAmTwWZeSz0jSKKGkqdcoW0bLMFhQl37dtyuVyThGygLguG4pVDpLckYsUHe73\n+1MFi6k/A/BEBIJ2EhmwbBZ7nGar1XKb46SPd9kzKDtQfDYI2g6IA7BgN1kUM30HsJHL5abShcbj\nsfbt2+ciMJb9YsE7isFZlJxx5xktih1lw9ixtbReCyZKckw1q8SYb8wRxgjFzj2bzaabO5ZpZim2\nNhpgASfWCNRbIkZRBhSKEeOBujwWkLGUVNsvtB0QkL6w987lclOpZHZd2UiYjRLY57Xr3wK39j37\n95U2C8SuNww3Ugx933epmoVCQbOzs2q322o2m2o0GvrZn/1Z3XXXXVPRlysBU3u1M5ZYYoklllhi\nuXHl8vIlddrdHX8gpWRydocRUlCn3Z9ii2DvWAcVBgnAjHVksdcsS8Gm31iAACa6BQawY/g8thl2\nDyUDJDkwBdb2wsLCFFPCsulzudzUoR3j8eQYeQAv2DmkopHuZe3bQqHgMhdII+Pz0XIKAASUt4hm\nPdAGwDOuYRkd9Ck+G4ARgAX9gj0chqGr+wMLLAxDLSwsqF6vTwW5M5mMez+bzWowGLhUPK7LWOFj\nMW6AQda/8DzP1UwlyG8ZKowfvhtzKfrc+ASWEcMYAK7Z9y3AaO3xqP8VBagsqAPQxrU8z3PsJfpW\n2i3ObtdEtMwFfc918CsBgjhRGSaRDXpbXAB/yAbeua/1s6wPhVgfImq/7+VPkMWEn8p3er2elpeX\nFYahDh065PzoWq2mZrOpb37zm7qe8roBh6LAyMsV65Ta1yxrIZNKaTwcqNes6Xv//I86cvio3vPe\nn9b8/gPy9F0V0kk16i2tX740WajdrtKJhJKZ9BTYI00WZqtT13DgKxxLg76nQX+oMJnQYDxWStJ4\nB6AAcbUFlLlWlGUC4MH/0u7RjJbZgsAmij6zBVIAf1hYrv2t1lT1fJQ9Si2ZTKpQKKhcLrsFy4+t\nXm+R8vF47EADmwdMu8gjhYlRr9eVy+VccTk7JyQ5QC+Kho/HY2mwc29J415fSXkajXePf+d6Nq0q\nk8lMUVlRlNSf8n3/eUWyKTZHO1AeRDRoG5s3/d9sNt2mhLJDocAao6BfGIaOoYQSZ7yjSsoCUdH5\ngLK2kRM2CMsa4rMoZk7Es4rTRlyIlFjEPUpRZuzsUZhsCnZjsmvSAkWAQ3uxhGivvVc0MhNd+1zH\nbkaIHV+rJxgfu9mxHrjW+vq6y78nItbr9bSysqI77rhD73//+929bdF4Gz2xP9ZIs+2L5bWXr19+\nPI7uxxJLLK+6xHrl5pFHf+shPfI7X5h6bdjuqNtoTIACz1O/21HC89Qf9JVKB0pnEjt2+qRcw3Dc\n06A/0ngUqtPua9AfKshmNBoOJd9XaOq+YEtHA0u2joy0mwpFMBIAgBOlsFltGQRr41sAKwgCF8TE\nvoYdQoAYO44AovVtgiBQuVx2Nja2n80GkDTFxoFJA3hj7VhscwClSqWi1dVVZ29bkIN7AfbgG9kg\nZJ/gbBhqNBgolUhoOBq5zAmexR4WRNB/tPM5/C4OabHMEPyQcrnsDoeRdtkw+BPSro+D7Y8NDoBk\nA5X4Ndj+mUzGle2wIB4/1p+wAWgLPiJRQASb3aa12YwUSz6QdkFH5iJzAhCHTImo/27tZTv/rA9o\nfR17FL09sAh/xzKM7D3wTWw/8fwWfI3+RK9lP0sfWpCUIDO+Jv5fIpHQhQsX5HmeDh065EqorK2t\naWVlRR/4wAf0z//8z7qe8roBh6LI5CuV6ARDEqmUUpmMhn1Ptx0/ptX1Vd1z9906cuyoRmNPuUxB\nJ0+edfmVnudpZmbG1e8ZhrupPNlsVtlMzoEIQZDUeDSZlNutpvq9noaDobxwt+o5yjg6wawDTz8w\nqaxTb9+TptN7yM2F7WKfHRDEOtT0k2XZ2DxfW3sGiil/24UvaSp9yaLUNsc0uugQlGGj0XBONhES\nW3yY/qLuC//3NdZgvJtu5XmeFO5GXGgfBae73a6juAZB4EAiCpLTXlDpvYAhC9BYamb0OfksBblt\n+hsodhiG7ohSFD+vW3AEhpilDFvAwYKDln2DRCm5FpRAydpN134Hof/t2kKh2jlt5zHgCvPcAi9W\ncVrGG0rVbmjMf9prhf6xc5v7vxB4ZNsdLd6IQP2kL9LptJaXlzUajbRv3z6XJ0162b333qtPf/rT\nLhJmqbIvVWwUMJbXTmIHLpZYYnm1JdYrN5dEgSFJury8ctX+RDqdUjLwlMpN/IlScdqfGAwG8sJd\nhrbneQ6UifoT1t6/kj9hU4ikaeaSrfWDP8G1sYesnct98IeGw6ELPONPWEAAxr0FGKTdIHj0hCnu\ni+ONbWRZH/g/ZG5wypj1JwAN6CsLvNj+m/In/N0Cw9JuDSL8OdLhAOQAJTgwxbKXbADS2vcAT7BJ\nrsafsAfZWH8Cn4qDlHh9L38C25RsgJfqT1iQyd7DMoii30Gsr0AbsdXtnLZ+rg1IW7ufecD96A8A\nQGpg2bm6Vxu4LmsiCv68kD9hMzz28icAc2EFheEkC2N5eVnZbFaVSkVBMDlop9Fo6Ny5c7r33nv1\nla985XnXutbyugGHkOjAvVSxzqAVFloim1F/OJQ8ad+BA3rrj/4L3XH8hIbjsTwvoe1aQ8Ohr26v\nq2KxvJMfHKhWnzh/wx2l1O/3Va9NjlVMZ1JTFfeTyaQqlYrC8VjNWl1DQxOEfohCtiwd2mmVgkUi\nqfvDBMzn8yqXy67KO+lXVvnA9GCyRyMOPAu/pd10Lpu36XkT6h+1U+hfFqAFPSwzIlokGoVmFRBU\nVdoOpZE+sLWFaDfIs+d5Cj1PoSTP9zUKQw12EGKUhd3wEHJjWcQ8IwASoBGAENdBSdMmFKw0zUzC\nGEDxAjBYgMsebQmoRpoec6Tdbrt5QMSGon8ARdGN0m5wtvAcit8qXHsqht0MUM6WRRMFWiwIaNO8\nLMDE63ZeW0PAgj92rVrwzVJfLVBkr2E3ECt76QErtkiivS7XxKjxPE/z8/MajUa6cOGCksmkZmdn\nncEwGAy0vLysEydO6HOf+9yUMRDdfK4Eor0c8CiWWGKJJZYbT2Jg6NaQ2J+I/YnYn4j9iZfrT3z9\n619/IfVyzeR1Bw69WrIXe8Chfr6nfnegbntyclgY7JwMMJTOnL2oUAmVKpMiVvliSUEypVRmUoOl\n3+zL8xLK5ybV8lvNjrqdgbK5kVKphI6fOKZsLqNUvqDA93X6uZPq7Chgy6AIw9ApURBGKIrkj4L8\nJhKTI8zZKObn55VIJFzOKQuaivZ2ITBZUSBsOBZBJW+5VCpNIaPRa9kFbyc+yoWaRLaWDd+1mwxK\nzFImyRW2hZFRANLukY+SnALlOsOdiALfkT9dY4q+pl/ZgNj8UHKclMBmk81mNRpNjp+07eE4SouK\nw4IZDAbuVDxS4YimsHkgtqi1ZY6FYegYWxZhpi9sIULLsLEUWZSmzcnm/nZeREELK7ZdlqJs349+\nJxo9sONgN1Xei843uynZiI5lvFnFu5e8ELBsNwH7DBhUtp8xhvL5vPL5vNbX110Eglz28XiSlnn+\n/Hndd999+vznP+9y5aN1kGwf2d+xxBJLLLHcOhIDQ7eOxP5E7E/E/kTsT7wcf+Kv//qvr3jvay23\nBDjE/6lUSq2d/NNkMqmO76lQKskPEuqPRvICX29845uVyxbUHzVVq9U0MzPj0PLNzU1pNEGCfS+h\nZCKtML1TWLjbV7fb1erqqt5w5x0qFArKZbNa2n9Az/3wh/r2t7/tqICSpiaQPfYbxU19E5RMq9XS\noUOHXKHgVqulxk4eM8WmWdgWuaVGUhAEbtFLu/m8lpJJNAHFbxcF7UYZ2kWGIuN57GsgsNTT4blJ\nH4MqascMVNwixpwWBjUXemgYhhp62kXOFWo4Hsn3g+eh1OPxWM1m06HvPF+n01E6ndb29rZLBWq3\n264PbNE8FC0ovy0wRh/T/xSytgg5P4xFFFG3kQnes3ngc3NzbqNAWduUJ7uBsonxPm1ESVrlfiUQ\nw6YjWqqnVah7bfoWQbdzKLoB2D6JPrttQzQVjtf3kpei5O0zUbSu2+1OFeYbDAa6dOmSo0czFvl8\nXrVaTZcuXdLP//zP64Mf/KCjGFsa9l79an/HEkssscRya0gMDN1aEvsTsT8R+xOxP/FS/YmvfvWr\ne973esnrFhyKonGvxrVGo5GSoZT2Aynta2tjcnz7gf0HlUlnNBiNdfzEEXnplMbNsXLZvMKx1Gp2\nlUrklE331e2OFSpQrz/SYDBSGPoa+gMp9OTL18b6pm677TaFg6H66iqQp2w+r0wup3w+7xBi0HUU\nLpOGRUYeMQpMklr1LTVqvkaer+LsghYPLqlcmdV8qagg4StIeMpmsxqPR+p1QnnBUJlMWr1eX816\nR6lk1i1wZDAYyAsmEQWUVhiGyhSSLp8Wpdbr7BQhS+elMJxQYr2xht2OhsORBsOGcvkdJd3pajiW\nBqOxvCCQQl8ZL9xFpDfrrk5RPplVMhWo3x9oHI7UDXoKvYG8RKDAT0p+IMmX/EDp7CS6kSsUJU0U\nRC6bUDII5I09efLle55GGjh6nudNqvY3egNXhyidzLjoQa/fUac/WcCpYVpjSd1+Xx4RhR0qZjo9\nKc49Ho3V7k4UaiE5Gcd0kFTY31GOo9DRSlFyUaUMJRKxqD9FuW19IbsBQlsNgkD5fF6SXNSDDYcx\nxjCw90OpoiDtxka+tN38KRbH2LGm7HejG5ZV3DZKwAbA5kokBGOBooPUgYpuMtHNIPo3ESY+t5fu\n4DXaAlW2Vqu5InH9fl/NZlPZbNbVq+J7lUpFvV5PnU5Ho9FIn/rUp/S+971PtVptqlh3NBphNzyr\nl2y77Pt7fSaWWGKJJZYbT2JQ6NaU2J+I/YnYn4j9iav1Jy5fvvyaA0PS6xgcupYyHA41GPY1GAxU\nq9X0+OOP601vukvFUkXf/Obf6fTp0ypmA83MzKhUqiiZSGn58qqSibTGqd0TqkDh/XQgeSNpLPV6\nA505fVaJnWO5KVSbSqU07PeVz+cdpZOiYaDULA7yDwuFgra3t/Xcc88pnU6rWmsqkUrrx//zB3Ti\nDW/U4WPHlMvllU9Pcn2z2bSyuYwazbr8MK10NlCxVND83II67b6efe6Uq5jPYqrVagrHEzoqkYUw\nDDXSJM/16NGjOnDggP7iL/5CneZuhXp7ekHXH6pUKmlxcUHyJgu04E2OuswVSlrb2NT3n3xazWp1\ncu0dSmK/358UvGt3FGqkTFCQNLnmoO2p2W6p2upqq7qlcOwpkdrNZyXnNZlMyvcmKHYySCibTk8K\n9vkTxeMns5LnKVNM6cChyQkJ3W7XKcRkMukK40EJbbfbarUmKYdtc8R9f+d7FJrrddpq7aDBHMFO\nrvhgtHuMJcrNUlJRikRG7EkBvu9PbfDQe200wNJZKX7HaRDSrmIjqgFabtsh7Z6UF/0M64Q+pp3R\nnFq7IXE9q7B5TdJURIfnpJ1sQiD90GajhRDtffhtc4/5224we8lemwxj1Wq1pp6VnHDon+12W88+\n+6x++Zd/Wb/4i7+oSqXiTnmz/RcDO7G8HuRGc0q/fvnx17oJscTyqsqNtgZjefXkRvEnfvPjH32N\ne+qlySOf/VLsT8T+xE3lT3z5y19+aYvgGsotBw5BKUylk6rX6yqXy+oPenryye/p4NJRnTlzRu/4\nz96ulUsXJUmNZlszlawarZZ8P5AX7KCN47EC39dgNNJoOFYymVAiKY28UGtrGypWSo6yl81m1Wg0\nNNopWhbNLe12u24SUjyt0WioXq8rDENXUMyXr7nZec3Pz6uQz6qYTUvhUF6YUiadVLlcVL/f06DX\nVyadkEJPYThQPp/W4sKCLq9eVn/QkbxJsbXhsK9EylM49FUqVbS9vW3AocmCmpmpyPc93XffW/Qf\n/vo/aXFxUZ1OxymvarWq8kxes/mMxp2mRuOdY7/zRZXKRfmer0MHD6jVaunM6dDlVvK8nU5HxXxW\nhw4vaXauomRyR0kHeRXyRTVbHV1cvqynn35Ww2HPFbeT5IqpbVW31O/21O20tLK+OkG5w106ZCKR\nUCKRUHWzJkkOwU6lUpMCccMdpTv2NVaobCanmZ3CfNBoJ0oh1ObmprrdrsrFgoIgUKs7Oc2h1qxL\nktq9yUY9HoWORZJIJFyuL9EdW0wOtNnm/NqTw3gfhddut5VMJl0uMgoeJWmPL7VFA9kMQMOjn0MZ\notQtzTKZTDpqLCc/RGmgUUoowrzmepzexb0tqMLGZF+zFFB7TcbFPrukKaSfjSkqdgPt9/tuXkH1\nZOOxmy6b2vr6un7hF35Bv/qrv+oiL9B9LTAUZQ7FcvPIjQJgvBZO6dcvP/68++712pXk1W7zjTJW\nsdycEgNDt6787pd/X8+dPPW69ydeC2DoM1/8n/WbH/+fpl579HO/p0c+8a+v6vuPfvLVbfMnP/OV\n2J+I/YnXzJ94PQFD0lWCQ57nnZXUkDSSNAzD8Ec9z5uV9L9Luk3SWUn/dRiG295ES/2+pJ+W1Jb0\n34Rh+M+vpJEvJwIfdcqso/aDH/xA99x7t7LZrGr1qkbjCWr/nX/6/zQaD1Qo5nVg6ZDa7bb6vaHk\nBzp89DYN+kONFTpqXK/XU5DcKVzmSYEnDXfusbKyouXlZYVhqAMHDkwmjjRFbWOxgiRLcuizpcpR\nCb9YqKjZbOu73/knhcORsunUziYQKp1OqV4rqtVuqFqtKplIq1jKad+BeR05dFCdVlNPPP59RwtE\nOTQaDY37Lc3NzTmFkkgk5CUTGg376rSbajZqGvS7qm5uKZfOaHt72ymJ9fV1Bd2Ckr2WEglfieTO\nkfCptLqdtvr9gZLJtBK+p0a9qcBPqDvqOSXX7w0UZpMaD/uqV7cVaqzFxUVlSyMN/ZrSeen47ft0\n5sLT8selHZrrbg7sJE92JM8P1WzWdMftt+kt992jfGqCEBNFqVarunh+Vd/73vd08eJFdTodbW1t\naaPaVL3WVLfbUZCUxuFIYThSpVhQoVBQPp93jCrJUxgkVajknLLLFEpuQx4Oh66o33g4cBtGq9Wa\nAJI7f4fhpCI949/tdqcKkoVh6E41AMEmT9cWu/N9X/l8fuoEAjYvihHyPea/pRqzTlCEUEcpbGiV\nJJsGm5HdaNiEbE53VLlLuwoYxR7NB47OeZsbbI+yjBZitMi+bYO9tt0oo8eq8v10Ou02Ndppjaxe\nr6djx47pox/9qO655x6XKw5N1t6P9W11V7RfomI3qBtRXut9Ipbny0sBZV7sOtJLc3SjoMzVtuXV\najPycq8Vg0qxvBKJQaG95VbaJ24Uf+KjH3lQX/ryY6/4eT/7pd/TuN/Sb33iN1/0s9XNLUnSbz3y\nRedPXL5wUZ/57Uf0m59+9EW//8jnfk+PXiWQdDXy2d/88Mv63m98+BOxPxH7Ey/bn/i7v/s7/fCH\nP3xZc+9ainc1jsiOMv/RMAw3zGu/K2krDMMveJ73kKSZMAw/7nneT0v6oCbK/O2Sfj8Mw7e/0PXf\n/OY3h3/8x3/8Ch5jzzZP/c+ArK+v62tf+5p+5F+8VXfeeYdS6aSqtS21W131BkOtrm1pY2NLzUZH\nrWZnMpG7ffn+hDI2MBRG7uGFoTQO5WmsXqetRNKXlwxd3m2lUtHp06cV7nyXRUs7bZ4kPxZR7XQ6\nExBnlFKpmFMiGehNb7xdt99+QpI0lKd8IadEckI3rdWqWlhYVC6fVnmmqLf96P1amNuvRz/9+2q1\nWk6pdLtd9ft95bNjlUolt5hTqZT6w6GKxaLe+MY3qlwu65lnntFffO0/KpvNOqUAOrq4mNPc3IzG\n4UiFYk5BEGh+dp+O3HZcyXRGvX5fly5e1j/+p+8qn8/v5NumXS7m/GJehw4tqVQq6ehtR7SwOKdD\nS0cmC0mewtDTH//J/6ZEUHCK1aLo8gPJG6vdqimd8nX3XW/SvW++y53akEwkNRwNNfCS+t73fqhv\nfOMbKpVKSiaTGg6H6nVCDYZdjcZ9Nds1bW2vq9dqqtPpqL9zbOjGxoaSQX6SK72jiH3fVyG5e4JA\nLpdTJpPZyTuuaXZ21ikW0Gvf95XNZl0OLsg9Sj2ZTKrZbErSlHK1So1rJhIJtdttVzyQz1gqKEof\nhc4GwfxFkXENxjVK50QZ2qgC90ChOtaZmc9W2fIbhco12HAs6k+76Wtp1xCKAi5206Eddn3xfWjX\n5NwXi8Upw4q8fc/zdPDgQTUaE6D14sWLuuOOO3T//ffrV37lV1SpVFx7bbTEbhy2fVE9FN3kop+N\nUmt/6Zd+SU899dTrnoJ0rfeJkjcbvt37V9fuASLyYiDFzQIe7MXyebnXeCXfvdrvv9iYXA+n/GYZ\n+1iujbwWwNA/hv9B9XDrlt8nPM+7rtGVX/u1X9Mf/MEfXPH93/6dz9wU/sRHP/Tg1HN96MHffsn+\nxFe+OAGgHv3cZ16yP/E7n/7cVJ++mD/x0Mc+dsUx+fzv/Z4e/tevHrB0JXn4M1+I/YnYn7iiP/FH\nf/RH13T+XUnCMHzRfeKVpJX9F5LevfP3/yLpbyV9fOf1Pw4nvfQtz/MqnucdCMNw+RXc6xUJEyiT\nyWhl7aL6w7b+r//7/1SlUlE6ndbtt9+uffv2KZPJKJ8JNCgkNeiP3eDLmyCnqYQvryd54VipXHZ3\nAXkTVDWUlCnnJ7mNiVDZdFrddFrdTkftZtNRCqMUO8ROzCAIlM1mJ7moOyhrNjOZbOsbW7r8d/+o\n9a2u5Hnq9KqarZQVJHwdO3pU586cUpDKaf+BfSqW8jr73IoeeNe/0re++U9aX19XNptVsVhUOp3W\n5uamvERNCwsLSqdTymQnOa5BciyFA508eVLHj9+hk6cvyFdKhVxlwkxKZpVJBapWq+oMR2r3Rwo8\naTz0NOgNtDpe10ihMtmCcvmCLq8uq1avqtNtq91uu1zazc1NZc5mdPLUOR3YP69adUsHD+5XMZNV\nNl/UOPRUa3b0ta99Xelwkoubz+cdoh6GoYJsTqEfKpGSUqm+FhdTWt+YVzabdVGTRCKhVCLQxqWT\nCvodDRq+emGoUGMV8kUNvUAbG02lE2MdPbggP5xXGIwVeqHmFg/qvre+TZcub+p7331KiWBC6Wy1\n6xoP+mo2Wwrkqd/pa3tzU+1OV63hUKtnzmg8HkleqHQ6rWyQUzZTUjbnqTvoKpVJqJTLTGiYga8g\nkZHnB6qU59Qbh5pNTtIFg3ByHOko7KnXm6TWoeRGyfQE6R/11e921O921R901Wn5Ggx6yqbT0mio\nfrerYbiLrE+K2UnhDnLOBkJO7nA0kCbMV4VjKRGklUiM3JpgU0BZQu2kvyW5yICNVNj32GwkTR3L\naTcHe6QoG0qUHmrptHweQ4O28TnfnxyxikARHgwGjpWWTqd17tw5Xbx4Ub1eT+94xzv067/+67rn\nnnscRde2Obp5RKMddn3b31EGkX1urnMTyA2zT+wlURDgZmQD2Gd8JSybV8rQudrvv9jnrxa4ebH7\nXemZrnT9KMj13oP3xSDSLSY3o364TnLD7hP9YVvve/9PTfkTD3/8t9z75ZvEn/gffvVXVCzlNTez\nqE8+/PDL8ic+9smH9buf/fzL8ic+8dsPK5Mt6Lcf/uRV+RP/7X/33+sNdxzXww994nl987WvfV3v\nfvf7rsqf+DePvXBx4C984St66KHns44eefQxed7gef7EJz60y6r61Jf+jT710f9Rn3rs38b+xC3k\nT/z93/+9nnjiiRecV6+1XC04FEr66x1E/t+GYfiHkvahoMMwXPY8b3Hns0uSLpjvXtx57TVV5iyA\nYqGkw4eOaHNjSxfOX5ywAEah/v7//QeFYbhTNK6kdHZGmfQEnR0kAreIfM9TwAQZj6UwlO9LY+0g\nkKE0Hg2lRKDNzU0dOnRITz75pPL5/JQjaNkBlsJG7ibHBJILOh6PdfDAkhKJhI4eO6ZOb6BkIqnB\nzhF4uUJRtx05rGTC1798z3u0srahcTjUzExFiWSgp595Sov75nTi9tvchB2NRipXCkplujp27Jhy\n+axG48kxlkHgK5VKq1iakeclVMgX9aZ77nZ5z1Tm397e1uL+nA7s36/RoK/Al6SxFPhKJTMay9Py\n5RUNhyPdc99bXTX84XCobrer/c2m9u+fVaVcUr/XUjqdlB94evyJ78oPkqq1uhqOfc3MlpVSbgLK\ndPuqtzqO6jgMxxpppGa7qoX5nO598x16LvWs1tfXp/J85+cX9PWvf10XLqwrny+pUMgrU8hq0JlE\ncnq9rrzESKmMlA1S8lOTwtztZk8/et/b9O53/bjOnzqn8dBXIp/T3ExBqfQkb7TX7iocjZQKJij2\nSJMowTgcaTDsq9FoqNMZqdPuq1ptSi1frW5T3e22vPFOQbbxUOF4qHQyqTDIKpdJaTwaKZfcqWzv\njcz8CTUeDzROjOXJUyaVVyJIqVyqKJNKyfPS7sjU4U6hviA1oV9SuA9UH1oz9E97fKVCTwo9DYc9\nhZooXE4AsCAI13XfM3McZY5yzuVyLorB3Cf6Bc0TZR8Ek7VHET3WA3MIdJ92s2nYaMxoNFI6nVYq\nlXreEfMofArW+b6vU6dO6f7779eHPvQhJRIJ3XvvvY4G2mq1pk6CsPn+NqqA2M1mL8DoJpMbfp94\nMYmd/efLq+UQv576lra8lDZZMCn6+6XeN5YbR2JA6CXLTbVP7OVP/Oz7f9r5E6dPnbnp/AlJL9mf\n+NiHH3JtfCX+xEceelib1e2r9if2kpfiT7yQ/NoHP6i//9a3//92Yy9mAAAgAElEQVT2zj1Isqu+\n759zb9++/ZzHzr5XEiAZkIBKsMsVIA5VqTgpjBMS/+EUoRxw2Q7YARuwJARCICReAgRGdmwMiV2p\ncpwoAUdJXPyBcWGnilgpHDvYQAQSK2RJq9e+ZqZ7uvv2fZ38cft35nTv7O7sandmZ+f3qZqame7b\n95577jnn1+d7fr/f4U0/87Yz5hPHjh3bcD7xgY9+kI9+4CMA3HXr26vf7/nFC2pzH/7kx3U+scPm\nE0ePHgXgwQcfvKBnvV1sVhz6MWvt05MB+4+NMd87x7EbzXzOcPM0xrwNeBvAwYMHN1mM54cxhk6n\nQxRFvOY1r2E8HvP4449z9OhRer0ezWaTkydPkiQJq/3MbUO3sLBQCUZxTBBU7nthBIE1QIi163G+\nkmjr+OophsNhlddodfWM7f9mJ4izHUPUyiRJnAvd/HyXPXv2YE2INQG2NET1OuNsSL1eI4zqHDiw\nn2uuOcwLbngxp1dOkOVjFuaWeOR7P6DViWm0ItfAwyjkQHsvo/Q0vUGfcZFQjyO69Tnm2l3iepPu\n3CLPPXeKPC9pzy9y7NlnXWeam5ujmeecPnWaNMlYXOjSaTVpNlsw6SDWBDSbY8xynxe+5Id4+umn\nqdfrdLod5sMQ++yznDh5nCAo6XaqrTEHg0G1JWerTViL+d5Dj/Dil76UKGhPdXTnElhW21see+px\nbnzptVx3zQs59tQTNBoNnjz2eJXobTDA2DonTq4wGowZDU/z3PFTWAqy8ZgwiHjiyb+BMCOKDXNR\ng7gZsm//EouL+3nq6GMM+wOefPT7hKZerZbMdQhrC8SNiDyCYTIiSbKJMg0mgHocEUUh+/YtUWu0\nsTbCljWwASaCehCSFxlFPiZNRtgyZTgcsjbKSUcJKys9ijSjyEtsuO51ko7HFBQEedXuhoM1mo2I\ntX5CFI4wYRXfWuSWvCwJwxp2OFpXyUtLUItoTNxTO3NzbiB1hsVawqBKbD4ajSlt5twlYT2HjgzU\n8oXHD52SwTIIgmonifGYXq/ndmnw+4G4fYprdFEULmmbuA3L+SUm248P9ndyEHdlubYf8+xfc26u\nivE+fvw4WVZ9kXnVq17F6173Oo4cOQLgVsfk3PJbhCE/8Z6sNviCkH/sVc5ltRMNzv1FTbkwLsQr\n5kLOcbHl8D2CLkYkeT7CyqX29LlYb6znk9NJ2XpUGLooLqud2Gqu9vnErbfccsY93/nhj/DI957Y\n9HzitndNh3hdzHzitlurBNQfuPujmOU+/+7zn+Ydt9553vnELDff/gEKE2x6PvEnX/6q++y9993D\ne959Ox/5xIcwts63vvW9i5pPCLe89wNuPnH3h95zRlnPxp3vPdMb6mx84tc+o/OJbZ5PfOUrX9n0\n87pS2FTOoakPGHMXsAa8Ffj7E5X/EPA/rbUvNcZ8YfL3/ZPjH5bjznbO55tzyL+H2QRSkzIAk6zj\nATzwwANuaz9jDP1+n8FgwLPPPsvq6irLy8v0+sMpNdPPMi4xjo1GwzXkJEkA3O4AjXr1fr/fn1I1\npbFJuWWy6ccqyrXkuOFwSL1e5+DBgxw+dIQj113LwUPX8PDDj7Bv/36+89BDRLUAYyyddptDB/bT\nXVik1WnQ76+yfLrH4489xeGD17mOaIxhz549HD9+nMeeeIQ4jijKvAqz6nSYa3aI4wb1uM3jf/MU\nzXaHm17xyqnt+sqy5Jvf/CbjtWWgpNWoUwsNS0tL2EmdJ2nGqVMrNNsdfvhHX+2SWSdJwsrKCk8/\n/TRBkdBuN4jrAc1Gtetao9mlsLA2THnyqWdY2neQIwevdc+0MqyTWFhrCaOIP3vwf1Hmaxzev0ij\nHdDpdHjta1/L0tISWZbx4J99kz//xl8RR21KG5KXJXmRMt9u0Wl3eeLJx1ldO0FhxxTDMdZklEWG\nsTVe9MIbIK7z0He+TzauBplWu0kWVtcJgoIiS+m0GjSaMY04pl6PqMc1MHayGrPAeGxptRbpdKqd\n2bJkyDhNKPKEWmgJwyqFUq1WCWvjJCMvLfWoQV5Mb9tYeSytkiQJtszJ0oRkOCRNx4zHaXU8huX+\ngCIvqZn1bVNFkQ9rpXPFlPOWZUkcTrbojGJsCRBQ2mzKS0aQlYHxeOz6hJ8U0XfxTNPU9bU4jl1M\n8Kz7c71erxKWp6lbWZJ+Iv3GXyGTfiRtU+Lr/Z0M6vW6MwDiCZSmKd1ul4WFBV75yldy/fXX02w2\nXay3fAkT91aJkZa+Lv/LuCDPRf72DdKsSLSRF5G/UiK8+c1v3hE5h3wuh53YjpxDO53zCR6byRV0\noaLJ8xWd5HoXK9ZsJlzsfJ/Zzmfv3/+l5Gpoz1cSV5owtFNyDvlcDjthtjjn0O3vf9+On0984uMf\n41//8q+edT7xkburBNH3/Nonzzqf+MTH7+DW2+7e9HziC7/1qTPq8l/+ws2bnk/87uc/y0fu/Twf\nfM8v8aF7fvOC5xP3ffzcSbPf/Nabz5hPvPfmO6aO+Ve/+K5tm0986H0f4qOfuY8P3PLuC2uw5+Hj\nn/51nU9cwvnELRuIq9uN3UTOofOKQ8aYNhBYa/uTv/8Y+DDw48Apu55Abo+19jZjzD8Gfpn1BHK/\nYa39O+e6xlaKQ2EY8td//dd87WtfY2FhgTRNXUNYWVlxaqXscCXuZ36CqzRNqyRrk99JkrjM5fIT\nRZHb0g6Y+ryv+PsZ5f2OIh4IAIPBgEajQavd5NDBw8TNFnv27uWaI9exuGeJr//vb1BkYwwl2MoA\nYeuENUNpCyhDDh24lhtfepOLOY6iiFarxSOPPMLTzz5RuQsWGaXNKW2BKUrieoPV/oBGo83hIy9g\ncXGRp59+2n3enatWub7maUqApRYFFNZiCCks1OOYNC+Iag03cPhGKwpC8jzFkBOYgnockdtqBcVS\nI4xbDIcJjTBwhnMqXCewBLXKVTYkpUZGLbYsLS1x3XXXUZYlp0+f5qmnTzEapMzPHyCsxQRRSKMZ\nM9eI6PfWeOLJxwkjyzjvE5gQawooMppRi0bcJg/rmDKiHjWrNpIlpCUYY4nrASdOPMPK8gmiKCQK\nq50qqvw0lqgeVufIamSpodGsBhBTlCTjAWFgabVC2u2IuFEnqBsgotWeJ45bFNZQljWXlC5N0ypB\nYdarBt/J7nJhULWpOGyQ24DSRGQFlATUzfQuFnmeU+Y9RqPRlCtokiTYrHq/yKsEihBggvUYXXl2\n4rYsz0IUdRngAcbjMWW5bjSKomB1tUqwNxgMiOMYY4xz0ZQd5vwdEKRP+8KK9Ct5X173Y5HlPb9/\nyn2KgXjDG97Ay172MpcsUJDk574o5LunimupLw7JtqayfaW8LsZKjvENkV/+nSoObYWd2GpxCK6e\nCfWFCC2+YPR8Ek3vJK62+9ys2HUxQppybrZLNNoJ4tBW2ImtFoeg2jTiaphPfPD9t/HGn33bpuYT\n9322Eow++ckv8N73VmFRN9/84at6PvHpSULtO+/+0FUxn/jgbb8y1Y7v+tSnNpxPvO/m956z/d91\nz306n7jA+cStE0+47eBSiUPXA/9t8m8N+E/W2o8ZY5aALwLXAU8A/9xae9pUtfibwE9QbT35c9ba\nvzjXNbZSHILKDfRzn/ucUwYlNrDX6zEcDgmCgNXV1alM5WmaVpO6ALcCIFnhscbFTmZZRhzHjEaj\nqYY1q+77Lnd+VnXf60C8FeT9ZDyi2+2yd98BWp0uo+GYI9dew+nVAVk+JgpCwgAMJXnWIM1HBKEh\nCmNajXm6rQ7Ly8vOtXRubo7hcEhhcoLAMBytEdWryW1oUwITgomo11sMRgk11mM5JVGXMYa8zCny\nlFpoiMKJoZqor0EtYpxmYGqQV5NmX9mNoojRKKviscsUbEZYCyiIKEuoNdokSQFhjSapU3/9TpzY\njNJW9WbKMTYbUprxVF0HQYAlBlMjSQBrqNXrlJREZUZZQqvVYG20jAlzEguGjDJNaNfbHDl8Haf7\nKWliKXJLt9ul2WpQi2KarQbzcy0effS7lMWYosyJI8jyMWCxTNodIWHQYnHhMINhSp6VNGoBzz73\nDGtrpwmCjCAoMGFJZkcUZYAJIkpiknFKo7HAwsLCVNsaZqsANBsRzbhyq4yigHZjkWazyyiHA4eu\nI2q2CMYD0jSdatPJ6BRhGJJlGSsrK5w6dYrl5WU6cRVP2++tEQY1rDWYYHoHAYAkSQiCgPn5ebrd\nLqdOnaLf7zM/P+9con2XzTzPOXHiBDfccANRFPGCF7yAY8eO8YMf/MAJK/7Kl7Q1YMqlVN7zxwA/\nvEu2rvS3krzxxhvZv38/DzzwAAAveclLOHLkCC9/+cvd/ch55H8/gZ2sRPjeRL5XkP9/vV6fSoYu\nAlEURVPllL/9e9qh4tBltxMqDik7nSs5SfWF7hqnbI6tEot2iDh02e3EdohDb33rW3U+ofOJSzaf\n+Oid7+CXfuW2K3I+8Vv3ftS1+4986t/ofOISzSduO8fuepeaSyIObQWXUhyCdffJjZDkacePH+f+\n+++n1+vRbrfp9/sMh0PXCGTbQVEoZVInx8hWgtVgNHLXlEbgDzZSvlmXUol3FfVURCxphPL5brfr\nkiqfPHmSwWDA0tIS+/fvp9vtkptWdT0CDCHWQhisJ2KT8w5GIzeBtZP4zbIsaTSM6xiuI+XrE1lR\nRAkyl8xOVi6MMeR2MOVaaK0lDoxTgGU1JUunDYGor6XnJiiMy2m32KpDhe55iGrse2P4dSvv++FA\ntoxd8jOoQtPCMKQ0UKuFmLAkz6sk0niZ+OU6xnQrN1prCIOoihc3NaIoJAgK0vEQyLG2wJhBVdai\nIKxHlNaCafOiF17P0p799FYH1IKYPfs6fPOv/i9J0qMWFkR1CGsB+TglLy1ZWtJodGg022C6Vbsp\nxgQhrKwsU4z7pMm4WqHJM8q8cuWt1VpkY0tWFLS7bTISgrS+XheTAT0PBuRZxnicUORjKKv7bne7\nBGGD3sqQZmOOqN6iLBKKImOcrJGnCSa0jPKqbUS1Onv37qfX62FLaDU7jNMRRTnZecMWmDzjueee\nY35+nqWlJQ4fPszp06d57LHHplxR/X7su37K85WVMr/f+3H18kVIDJasxr3+9a/nwIEDRFHk+rS/\nvaffVmZXC6QsG3kRifAjcc+S5E6MkOykIeUSA+N/0fC/8Pl1ADtDHNoKtkMcAp0oK9uDLyRdyaKS\nsjkut0i0E8ShrWA7xCGAn//5n9f5hM4ntnw+8dE7b+Huj32eWhBzx+0/x9t++XadT+zg+cR73rP5\n3FMXi4pDGyA5c4Ig4OjRo/z+7/8+zWa1jaS4c0rmfN8dLQgC0jR1rm7ysOv1+pSrqO+O5runSWOQ\nvyUTOlSxi7Ido5TRNwKSkX3fvn00Gg0GgwHLy8ucOHGiGpDiDu1Wl2ajRRxXSe+i2noWdTlP4Smo\n0ojLsiQwhduqTwbgLBu7LflcfZrSuc8BLru/ZJ2X5GRBENCohW7AD4IqjjbNCzeYyyAdhiGmtFP1\nlOc5SbF+ziRJJuWM2LNnD91u1xkIyQsjz0jKJrHbYrhGoxFZat05/TCeogwq19Uyp9lsgrFk45Fz\n55VJf2Fj6lFVr7WwThRVW4EGFhpxSFgLSNMhRZYBVflMGFJYS2FL4mgBYwLm5xYJgwhDSH+0yigZ\nYMiBFGszLCU2Lygx2DIgMHVedMMPsXfvNQyHQ8AShHDs2DF6q89MMjZaDAVlXt13GdbJ84Abb/xb\n5GXJqdMnKbPiDCV7rf8cWEtZFpRF5cZbliWFBUyN/XsPAzVWVgesjdYIDaT5CGwGtiScfGewJcT1\nJlmWsW/ffoqimKj8I7J8zGC4Rj5aT4Z4/fXXU5Yljz76KP1+3xl2fyUhCAI36M4mXpztX747tfSj\n5eVlyrJk7969vOpVr2L//v1uFwQx+nJOf1VIXFnlPX8w98PK/FAyCTPzPYdmX/fFITmHP1bNikKC\nikMV2yUOgQpEys5BRaUrExWHtobtEocA3vCGN+h8QucTO2I+8bG7b+Njn/wdwHLHe9/KO979IZ1P\nXAHziZtvvnmzw81Fs2PEoZtuuukMcWhW+b1U+J0Y4Mknn+SLX/yiG8SWl5fdwDwej6cUSD/OMc+r\njp9l1S4EMqCLa+ds+WcbRZZlbpCK49jFSkqiZTne9ywIw5BGo8G+fftotVpEUcTa2hrLvSErKysE\nQUg6zhmsDcHYqZCXZrPpMreLt4MMtpjSqflyP2FQvSdJt6IootlskCSJm+gCLpFeFEWMx2N3v/XJ\nQFir1Wg0GtUKgS2m3POkE/mDu7VVDHBWFM7IfvWrX6UsS5LRmMOHD3PDDTeQ5zndbqV8X3fddfT7\nfZaXl11cpzwDWZUByEvr4lXlWSVJQmDW3W1brdbEVXbkjpV6C8Ia6biKmy3LidthFFIzAZaSej1k\n0KsSBkaTwaWwlmanTavdJgraNOLmZIUnoh7FFGHlGlsWY8o8I25MjCCWWj0mIKLR6JCXkzh1s76q\nMRqNsAwp8hwTWGqBITTVMxwHEEcLzM3vo9loEcURNstdPpyyLOn1evRWnqWcJGqnzMFWX2QwIbV6\ng4P7DxPVG1XdFZbRsEc2HjFM1rBFhrHppI5Siryq93Sc0euvkmUZw9EaQWDYt38vIVVSule84hUA\nfPvb366etbdqI0ZGvgTIoJ7nuWuzYowlTGs4HBKGIe12myRJ6HQ6blfCAwcOsHfvXlqtlju3P5D7\nRmGjQVvaaBzHzhPI3/5S2jjgdiMJgmqnPul74k3k90e/jfpl2QgVhyq2UxwCFYgURbkwtjL/kIpD\nFdspDgG88Y1v1PmEzid0PqHziU3PJ7Y6/9COFod8LqVQNKu8h2HI8vIyX/rSl3jiiSdIkoQwDN1A\nLuq3DOZSX2VZMjc3x8rKinMtlIa20aTPH5RlgBCFU5Tq+fl5py77DUyu6WdgbzQadDqdKrFcpzOl\n8NfCiFr9TGMy7K+5ThIE1TZ/SZIQRNXAKsp9u90mT6v7L4qCtbU1rLUuY7uo/6Kum2C6IwJkae6u\nI+ex4vY5iRUVd75iYjxlpSTLMooyd66vjz76aPX5EmfIRGmV7QJHo5EzXL6SL/VprSUr1wcEea8s\ny8rw1OrE9cZkNSekNCXNZpNWq0WWZbTbbWq1kDCcdOhaTFSrY2Kwk3YRBTVMaSerJtXqSWEta8Mh\neVmwemqNKIro9/uEYUiSJJzqV9swlkVGNh5RFgXWljQbEZaQWhhTq8WYIMKWkuwQDCGGgJIUY6pB\nNAoNtXDSvut1amGTWtQkKwuKMqUexFPulFW7TijynKLMoCwIqO6lsAYT1igLSNOcrCwoc0NepASm\npCxThoMeAZVRi2p1gqDylCkLWyUhNJaoXqPVrnYLaLc6HDx4kMFgwNGjRxkMBq4vSRv3+4q0W381\nR/pas9kkTVO3M8jc3Bw33HADc3Nz7Nu3j2636wZkcbeW9uZ76/ju1r7bpx/6JR4/0i/r9br70iVf\nVvxVoTCsdkgQoyseRHIut73nzNir4tC52W5xCFQgUhTl/GxHUmoVhyq2WxwCePvb367zCZ1P6HxC\n5xPnnE9shZfQRmxGHKptRUEuBn+idDm8iCSJmgxAP/VTP8XRo0f5+te/zmOPPTYVLyiDgzGGVqsF\nwOrqKmtray6hmQy057oXGZhlMBdXxl6v51wuxYXNb2C+6yngDMxoNAKg3owxVKp8EISUBbTasau3\n8bhy6Yw8w+DHJ5derpN6vc7Jk4Zhf+A6gu/i6scBy4AcRutb/gnGa1pS7qCwTi2VTmutJfXcZ6sB\n1mItJKNq5cCWsLrSo9lokaU5Rb0kS9fjiod2VCUCNMWU4QMYJ6m7fk7u7sOfqDfqliKTuGpDWVjq\n7ZZbCZDz2XJMHDcrl0ETEgY1iqhS/uMoollvUg9rtNtt0iJ3bqBRHNPqtFlcmiOOY/YdWJxsV1+D\nqFKQF+bmCCgZy0qKKcnyKlldWQY0Wm3StEdZwmiYYIuAfn+NLEtJRiNqUUiRjSsXVFOVrygNJQW1\nRslgOCQ0NTDVVqbJ5MuHiUoCDJacOK5RZCVBYLAFFDbDYmjPxZgwJBvktNqLjJM1sBnjZo2FPUus\nrq4yWBsiUVGVMl7tkjC/MDfZmhPGSc73v/99Tp065Yy/9DHfmMvAK1+irLXs3buXwWDgEtZJW+x0\nOtx0000cOnSIbreLMcbFAMvn/ZUC+azgr6rNJm+UlQQRfORLhKzISUiZxJrL8f5Kmt+XpTyb8RZS\nrkyutl2tFEV5/lxp29or28vnPvc5AN70pjfpfELnEzqf0PkEYRhuST6hS8UVKw6dbQL1fIUiaTDO\n3XCi5g8GA9rtNq997WvZt28fDz/88CS/C1OTPXH3lCz5gEuq5ruRSWMDnOeAqNi+K9tsA5NBxr9X\nF+PrGRUZTAHKwaTBejtR9Xs44yBubBIXLIqnnEtc7fyJq1xLOoP/+tQ9WkuelFOT4aqjpu5enCEI\nDblZ30UBLBgIJmWIoojSFlisU3iDIHBCXqMZE4QGjK3cFqnOZbP1XSDEqNqJYl2r1ahNjFbdRNjA\nTiewMyHYGiYoKaV9BKaKlc0z6rX11QNrIvJskljOWGxoMaXB5iXJeEwWVgP4qeUVV2/y3GH9eczW\na7vdptFosLq66lR4eU4iTIhLbbPZdO2mGddYnG9hTNt9+QDcNYbDoXPhldj3jb4USFsqy9LVuT8Q\nusG2U7KwsMCLX/waHnzwQexkB4EwDKsY8MmXGt/VOIqqbT1XV1ddQkZpW354le/JB5XBEQ+dKIpY\nXFykLEsGgwGdTodut8s111xDu92m0+m4viXn8fvRbOyvGAtf0JGBXELA5LpRFE1Weaq6l+fhb0nv\nt3O/b/h9Verc78/y3kYhZsLlEMaV54/mclGU3YuKQcpmuP/++3nnO9+p8wmdT+h8YhfOJ7ZyB7JL\nzRUrDl1OZFBOkoTxeMxwOGQ0GrG6uspwOGRubo6Xv/zlrK6ucvr0aZaXl1lbW5sSlqQhQDVYS6cQ\nfHdEUQ4lMZ2vakqekrKsBkRJpAXTLnFy7izL3PuCf23fdU06jnRiwXe5k0HNd5OT88vg7w/sMvj7\nE2Bf+ffDaKy19Pv9qR0NZu/Hv8/hcOiSfokLplxTDGYQVEnjhsPhVPnCMGRhYcHdZ5IkDAYDZyQW\nFhZI05TRaORUXRECJLZZ7sUN3hMDIc9b/hYD7Mec5nnuVlTkHqVscp5arUaSJFNigNT/qVOn3IAk\nO1e4FRJvQPUVa/8cEuIkx8tKThRFrs1LbLd8plaruZ0xZq8nqzj+bhIAKysrfPe733WJ2GbblhgB\nGSBlm0xpW9JvpM7czhWT+pd26HvaLC4ukmUZzWaTa6+91rk/A07V9905/cFaPH+kPNLfRAhqt9vO\nYMRxTLPZnDrO/2I1a4D8+/LHBh//2ItBPYuuPFQUUpTdgYpAysXymc98huFwyHg81vkEOp/Q+cTV\nO5+45ZZbzj8g7DB2rTgkjVc6pCj4on7KwLSwsEAcx/R6PTfQpGlKkiROMfZdIytXzGnVXBRKCUnx\nJ4t+5nS59vHjxwFYWlqaWmWQ5G3SaAXpHLMDdqPRoNvtuqR4/qAsP9LRZBCRTioKsQzSMkCJ6+is\nN5e/C0C9XqfZbNLr9Th27Bjz8/McOnTIJaOTsgiyu8LKygrLy8u0221arRaNRoNerwdAt9t14Ty9\nXo9+v+8GtiiKSJKE06dPOwMrRkxWCp555hlXL/K6DIq+x4c8gziOp5T5AwcOEMcxJ06ccPHI4hIs\nsasyCPsxyrCuNIvxiaJoym1WXE3F8PgDq28wAdfm5D25nhgT//rSduR+pW7kmp1Oh8FgMLXaI+Xw\n/5ZB2DcIoqrL1quSpM9vV+Px2Bk4t0PExAhK//HDs+Se5DrNZtMldk6SxHnu+Ll85Dh/FwhpK81m\n07WlOK62HW21Wk4YEiHI//IhdeGv1El9yGsbfRHx+7r/7FUcUhRFuXJRAUi5HOh8QucTOp+4euYT\nO9kL6GLYceLQrGvkZvFX+kUB9DtCFEXOBQ7W41qTJHFxifPz806tbzQaFEXhFGfpPJLp3NozXUXl\nfHmeu4508uRJFx9cFAWdTsepoI1Gw2291+v1OHnyJNZa5/omg2ySJKRpyvz8PM1mc0qFLorCDT5i\niNbW1sjznHa77QzBysoK1loWFxeZn7j3ibLsT5TFWM26FEodSN2Nx2OnNvd6PUajkXNjlEFNnmG9\nXmc0Gjllt1arsba25n4kHlp2ZBiNRu56RVG47P/+ACnuiHIPUi4xSmmauuctxtI3MpLkTeKwh8Oh\nW9GRwbfT6VCr1ej3+8zPz3PgwAGnNPtCgwyO/X7ftaUjR464gU7qUOp8dXXVebMIUtfiDiplnzXg\nswOyPD9rrbu23Ods3i1/FUfKL/UiRnjWIMlALs9B4t337dtHkiSsrq46EdZa63bF8He+kPYSBAFx\nHLt6lTpoNBrOuM/NzbG4uEgcxywsLLidBMQ1VL4wyUqOtAXp974o7Is+fh3PegD5/88a19lxyD+X\n/6XNXxGTZ+Qf76OC0JWNhpQpys5BxR9lO7j11lu56667AJ1P6HxC5xNX+nzijjvuuLiOfpWy48Qh\nXwG9GGTQbTabTjkejUY0m00GgwHNZpPl5eUzcopIw/ddIUXV9gc2abhpmjoXNV+Ukrhj6UwiSknZ\nZGtGqJLUyVaQMiAZY5wnhL+FYJIkbncCUfllQG02m261Qc4haryo03IucVOUelqP563KLAq73LMo\nuuI2CExNin11tygKBoOBu+ast4V03PF4PBVD7btdFkVBHMc0Gg1XxtmVD0HKsVFyPxkoRV2Xupfy\nyGAjinJZls4oSn2MRqMpN0v/GclAJSKkDPqnT58G4ODBg+6+5LpBEHDy5ElWVlY4fPjwlJD57LPP\nsrKy4twYl5aWnNru369fz3Lv/uqADMwiiooBlToV98o0TUxWNlwAAAzZSURBVF37m5urEt+trKww\nHA4xxrB//363CiKqvQz4YkT8+pFnKbt41Wo15ubm6Ha7zM/Ps7i4yNzcHAsLC+zZs8eJPd1u1w3m\nYgTkuuLuLEZGVpJ8A+eHffkrGPJ8pI1IG9xoxWwjwcg/vyCfk9+zx8u1/FWuix3HlO1FBSJF2V5U\n9FGudO666y7uuecenU/ofELnE9s0n3j/+9+/2e6qeOw4cUjwJ3CwvjX92SZbG634G2NcuMn8/DxQ\nKbqDwcDlJFpeXmY0Gjm1ejgc0u/3nQKdpqk71p+gihLqK+azYSri6dBoNKY8lmQAHI1GlGXpOrsM\nLqdOnXL/y2BgjHHl8D0U8jx3qwi+Cx8wpRb7g5Ffn76rq7wusaPSQefn5507nx+T2Wg0nNuen+tF\n1Go/6a/UgRgZ/zy+kfDL5/89+9zF8IpRKIrCGVa5HxnMxF1R6inLMkajEUmSuP9lNwhxkRXF369L\ncXW01rqVC3GvhcpddM+ePRRF4VxW/QRvQRAwHA5duJP/paHZbE4Z0sXFxannIm1H2uHa2poLrfJV\ne2mz4uIq9yxtTlZnjDHs2bOH8Xg8lZtHfsu55TmJ2CrPvN1uu8G61WoxNzdHs9mk0+m442Vwn32e\ngl/uWdda33BJu/CNqf+c/T4vwoz/hUM+44s2/vsbtT//uNk2Nzs2+e/PXvdsfytXPrOTUxWLtpat\nFgf0+V4eVORRrmZuv/32qf/vvfdenU9s4Xxiq8OB7r33Xp1PXIb5xJ133rmlz3G3Y66ECclNN91k\nf+/3fu+CPjNb7vOJQ7Oc7Tg/jlKOkU7pdxb5kQ4siedGoxGDwcD9L4OE7wong6AMdKKGigqbZRlp\nmtLr9Zyb6Xg8ngpV8X98j4fZ18RISPyvxFzKgCuqqz+w+mE59XqdTqfj4jXr9br7LR250WjQbDad\nC6q4VkouF1kt8Fc8RNDxn4M/0ZfjZyff/rH+67PPUwYkqdeNVhaE2evMvu5/XgY+meiLkZbVHTGM\n0j58l9hZkUIMhLQxuX8x4HIdiYX271dcOv16kPqWH3lfVhTkeQNutUC+fPihV9Im2+22a1PSL6Qd\n+e6lUv+SyE2eOUx77vhtXL7kiJGR/jtb/36bnhWQ/HP6z3f2mW30fDd6bdZjaKPPbKbN+M9kFl+s\n2uizG/GWt7yFhx56aNe7GM2ZPfZV5se3uxiXhKtRaNBJvqJsH9+wX6NnT+96O2GM2f5JzSXinnvu\nuermExq+oyjbi7X2vHZix3oOPV/ONhGTSS9MJ6IVlbzVarkBUo6TifNsXhGZVPuDrK+Y+6KGTCr9\nifRs3Kqo7r5Hgx9e478v1/UT7sJ6rLJfLn9i7ofqyMTeP0auJ/UkrrK+d8fsJF3cBcWYiQuiL9CI\nkOG7n866ePrC3ezzmxWHfLdcP9bWF2jkty9Eyet+TLdfBjmXL9b4Lquz5xFhTOpNnrF83t+2VD7n\nezhJm5k9twhAfj3MPlN5Jn4Z5Tp+2/HL6ycL9J+LnEu+IDQaDfflw3+efvJFv1355fTP7T+3WY8b\n/4vJRmFds6/51/LvabPi0MVwLgFJUc6GCimKoijKuZj1OlIURdkKdqw4NCsGbDQJFWbjKGeZ9U6R\nH18EEqFIJutn80jwhSVY91LxRZyN7kVEHF+I8MNZZLIvx8rrvkeFn4xs1jNGXvNFC0E+I+cVgWHW\nk2LW8yYMwykX1dl78z2v5H42CgGTMs3e/+z75/LI8Mvn/7+RoOQf59eJf20p8+w2n7PnkvuaLZ8v\nJs16k4iYBritMM8mdPgxybNCju9pNXt938NJErP5YhFMxzXP3r/vsiyI+ORfVz7jxyFvVE++YOjf\n/2zfm+1T5woT9Y+dDRmdfc2//rlEqPNdZ6P3hY1CyvzPz4pWiqIoiqIoiqIoVwo7Vhy6lJwvFM0X\nZ2Z3GpoNh9noXBuJEudDBJqNrrFR/hXAeZz4wtaFXPdCJq2z4UBnm1yf7fpnu9b5znUuznVOOL9I\nuNFnLqYccGbidKkv32XXL9PsPZ+tzmYFhs2Uz29L8jMbLuaXeaPyz+KLLRtxNqHoUosj5zvXhfY5\n+cxG7XBWvLvQ+1BhSFEURVEURVGUKxUVh9jYy2ajY2ZDvvz8OefiYsSO2ZCq2fKdK9xmI++czbAZ\nj43Z488mbvicTxyarX//vJsty/nOCdPix/nOea4kxJth9vz+s/J3YpBrzHq0nC1B84WKZ357Od81\nLwQ516zn0ex1N3q2F9rOzsX5znW2/rMRs+GQ5woZu1ih52KFT0VRFEVRFEVRlMvJFZGQ2hjTBx7e\n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\n",
"text/plain": [
"<Figure size 1440x1440 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(20, 20))\n",
"\n",
"print(\"Image shape: {} | image type: {} | mask shape: {} | mask type: {}\".format(X.shape, X.dtype, mask.shape, mask.dtype) )\n",
"\n",
"plt.subplot(131)\n",
"plt.imshow(image)\n",
"plt.subplot(132)\n",
"plt.imshow(mask)\n",
"plt.subplot(133)\n",
"plt.imshow(img_masked)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"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.6.6"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
@ridhani17
Copy link

remove

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment