diff --git a/broken/powder_calibration/D_estimate_demo_fix.ipynb b/broken/powder_calibration/D_estimate_demo_fix.ipynb deleted file mode 100644 index d2bfb5dd..00000000 --- a/broken/powder_calibration/D_estimate_demo_fix.ipynb +++ /dev/null @@ -1,277 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:50ee62b15b046daa556a97ea51d5b1bf458ac1d3ce55ed2df1c856dafb6699de" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "code", - "collapsed": false, - "input": [ - "import matplotlib\n", - "%matplotlib inline\n", - "import matplotlib.pyplot as plt\n", - "from matplotlib.patches import Circle\n", - "from matplotlib.colors import LogNorm\n", - "from copy import copy" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 2 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "import skbeam\n", - "from skbeam.core.image import find_ring_center_acorr_1D\n", - "from skbeam.core.utils import bin_1D, radial_grid, bin_edges_to_centers\n", - "from skbeam.core.calibration import estimate_d_blind, refine_center\n", - "import numpy as np\n", - "from pims.api import TiffStack #from pims.tiff_stack import TiffStack_tifffile as TiffStack\n", - "import os.path\n", - "pixel_size = (.2, .2)" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 3 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Define some helpful functions" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "def estimate_d(img, name, wavelength, pixel_size):\n", - " # find the\n", - " res = find_ring_center_acorr_1D(img)\n", - " res2 = refine_center(img, res, pixel_size, 25, 5, thresh=0.1, window_size=5)\n", - " bins, sums, counts = img_to_relative_xyi(img, res2, radial_grid)\n", - "\n", - " mask = counts > 10\n", - " bin_centers = bin_edges_to_centers(bins)[mask]\n", - " ring_averages = sums[mask] / counts[mask]\n", - "\n", - " d_mean, d_std = estimate_d_blind(name,wavelength, bin_centers,\n", - " ring_averages, 5, 7, thresh=0.03)\n", - " return d_mean, d_std, res2\n", - "\n", - "\n", - "def show_rings_on_image(ax, image, ring_radius, center):\n", - " vmin, vmax = np.percentile(image, [80, 100])\n", - " my_cmap = copy(matplotlib.cm.get_cmap('gray'))\n", - " my_cmap.set_bad('k')\n", - " im = ax.imshow(image, cmap=my_cmap, interpolation='none', norm=LogNorm(), vmin=vmin, vmax=vmax)\n", - " for r in ring_radius:\n", - " c = Circle(center[::-1], r , facecolor='none', edgecolor='r', lw=2, linestyle='dashed')\n", - " ax.add_patch(c)\n", - " ax.axhline(center[0], color='r')\n", - " ax.axvline(center[1], color='r')\n", - "\n", - " ax.set_ylim([center[0] - ring_radius[-1], center[0] + ring_radius[-1]])\n", - " ax.set_xlim([center[1] - ring_radius[-1], center[1] + ring_radius[-1]])" - ], - "language": "python", - "metadata": {}, - "outputs": [], - "prompt_number": 4 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Setup data for Si standard sample" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "si_fname = 'Si_STD_d204-00002.tif'\n", - "si_name = 'Si'\n", - "si_wavelength = 0.1839\n", - "si_data = TiffStack(si_fname)\n", - "plt.imshow(si_data[0],interpolation='none')\n", - "plt.show()" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "display_data", - "png": "iVBORw0KGgoAAAANSUhEUgAAARAAAAEACAYAAAB73CmOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvXuUZNlV3vndjKiIjMjKyqxHV6M2EiN5GktGDGIBlmxk\nI4MtXjY2DMjISMNTCIPGMiMbGYyhZQ9gZhADBoMxtoVHPM1DLGHDII0xwtiWPMI8JGgNsmlPSxTu\nUmd1VmdmZEZU3Iz5Y5/f2d+9mXhU1UyT7lVnrVqZFXnj3nPP2Wefvb/97X2a1Wqlu+1uu9vutjtp\na7/fHbjb7ra77b/edleB3G132912x+2uArnb7ra77Y7bXQVyt91td9sdt7sK5G672+62O253Fcjd\ndrfdbXfcnlQF0jTNpzRN866maX6jaZrXPpnPvtvutrvt9741TxYPpGmasaT3SHqhpEck/VtJX7pa\nrX75SenA3Xa33W2/5+3JtECeL+nXV6vVb69Wq6WkH5H06U/i8++2u+1u+z1uT6YC+VBJ77P/v798\ndrfdbXfbf6XtyVQgdznzd9vd9hRrwyfxWe+X9HT7/9PVtUjUNM1dJXO33W2/T221WjW3+50nU4H8\nX5Ke2zTNH5B0XdJLJL2yf9F3rT5fh5pqpIVmmmioVksNNNWhFhrV3wdaSpIWGmukuVoNtdBI29rV\nTFNJ0ljzet+lBpKkVkNNNdNcI7Ua1vsM1WqgVm25TpJGWpRPB5roUHs6X+67kCTNNdKm9rXQqH53\noFYjzes70I9/+sD/rRc/8HyNtKjXxn1nGmuhPW3W96BP9HesueYad95poLbznnONO+/CNSPNtdBY\nM0011azzbK7pN67hu3ONNNWhZppoqsPSr4Gmmun7HnifXvLAH9JIc+1ps87XUK3mGmuseb3fpvZq\nn32sGQfel3lmLHy8ebelBhproZmmdUz8O96Y8z1taqBWY81rH/07/FyUsX7TA+/WZz/wnDpeg/Kb\nJB1qornGmmpW5URSZ4x4N5r3le+2Gmimae0XcjfTpNP/vkzQz5inxYk5lNSRy0l5/6kO9VMP/Kr+\n7AMfVa9ZaqDXNt956j3+v9qT5sKsVqsjSX9J0s9K+lVJP7Farf59/7rDImAzTargTHVYJ2JTe5JU\nBi/0H0I30Uy72tZASw201Fzj+q/VsA78XKNy31n9fKlB/XxZJmWhUf1sT+c1VKtWw/rZUK0W5XcX\nLv5Pm2mqhcYnFutArRYaa0+b9Z24L++GcoiFuOzcw5UAC2CqQy2LsLcaaE+bddG2GmihUf3epCgU\n/xdKbFCu9f4MdFG79T6DoiD4/VDTurhRxqF6QmFuak/zouxHZVboeyzAoRYam9DHXLkyjM/yGZJ0\nRY/W9x1rcWKhsdnMNNWm9up48v2xLX7GcFSUns9TKuNRGbtDbWu3ygnKYKrDOp/cd17eaaqZJkW5\nxLPi79varfLab/RzVxc7MsHvKC/mNcZvqZkmHZlkLnlmyMWk87c7aU8qD2S1Wv3MarV67mq1+sOr\n1eqbTruGxTvWog78uAh1TFYIWSzKUR2gkRZ110cYUSQ0313aIuab2uvscggqE8Bn7CrTslPONaqT\nhxCNyqLwyUJQfJH2/4/A9i2geE5aFq2G2tNmVXYjzas1NSxKBKHw8eIdeRd+soO1GlQFdWiWSn8R\nIeD5DssTfe6/IwsOZRPzlxZRX6kxptt6rGMV8hnvNdNUo6pcU1aG5R/KBIuAZ7GQ6RO7P40+0p+x\nKVQUGIs05CnkYE+b9bqpZpppUvq40FBt/fthmZ+hTlp+bI572qzySB98DlFQyJuP+0CtdnVRm9qr\nnzCGyPBQt6rMj8o2eaftzDJREQZ20UGZhFExP90cZ0Lje0thfktp7mFtICyYsbvaNlN4UdySvdoP\nFA2mHot1XMxMBH6iWbWe3AXgmc950T2SwpIZVWsiFQN95/3429jusam9sosuyqI4rDuv9/di2Rml\nEEq3kvpjzE+UAxZDuEgTYSH4oonnxAL7wy+6UseaZ/Zdk75LwfXMZ3e847sLjU9YSIdlse9psyyQ\n9MBRGLzLXKM6TiwiLDHeeVuPVXlpNawKCyvpI190sVo37s5ua7dawH33hms3ta+x5lVh5LsvNNe4\nWiJLDaqrHtZzW6ykUf0O1x5qqlbD6u6xSfYVuI8NvVoq3dYPe9GHVVlfmFt4J+1JI5J9MK1pmtW3\nrb60Tog3hiGtjFAijxUFgL/eNefTWpBUB8396GGZ8JntDHwu5Y7oO2EX7+j6nyimQ001qUorFcWi\nKCj3vXlW7vDLKgCHmuiydurkxwJJTML7Gc/o9tUFf1N7ekzb1azn+fTV++z3wnJj93a/HcXqc0A/\nuYeUltuy7PCuRPguitytl1iMe5pp0sG7HB/LZZzzIiUG4IvR577vVnJ9WHXj+hljk25MviN95Gff\n8mIMHHNBFsCHUKTIJ+OwqT1zb1NuDsvf+i4PshfX5xjzng4L8BwpXOyvab7tjkDUM2eBpH89qv93\nDTsqOw1CPC475mExadO3jmvSHx0W4RyWfXRQf8fMdb/4v9S3gVqdL7tmf3flGbljdoFNJt7xBUxp\n3AJJxcJaalu7nfdviyA6WIdwYDH4mDmQHMAdIGgChygfVx7cN12LeTXLl0rFMtGsKOFYWH23xN0F\nFgufMR7Zv+6c83zmECuSxYR7wLg7aIhKYj7Hdu3A5oLxcTCURdi3EFFePr6uNOi7W3xhhR1Wd4E+\n+BhMNdNUh3VzA2zF7WGcwdL4ve31E9lLqzmspLlGHeXBu49srdxpO3MKRFKNkMTv46rhT2u+67iS\nWGhsYOJQmN++oDa1p6HaGuEZlB1iXnZVb+wwGUXpAriHmpzYfdIqGJYdL9+BnQ4sIHzcwCUcjORa\nSVXxSap9Htmu5ej/aRYcOAeLXEofn+eCh2REIHfcqQ474zcs/R3Yz3kR8MCy5vUnQsouyrgMq1WT\nILePD2OfEZNBVXS+cLf1WL2Wz0NZj8oCmtYxjOvS+kh8ZFndE5eR1vqLnKBAicyBb2CVoixjI5nU\nb6DEkTUpZDyUxbAq2KUGVSb68wiudVk7VabcbXRskLGb6lAA5MzpXnGKn4gLc+YUCD49gzfVrA6S\n7+gjLYrmnlWfFVxkXH5PU3NZF4gvaho7N4PpC5dF6s3dAxdYJgjt3t8hpK6bIqmGNvHrN7VXfX+e\ny67vURZcBxeAfl/6fXYhRWnkLtd2rIT+d4fCN4/93EPLjJXjCVPz29n92WF9XpZlUblyZ1dPsHBR\n9uhpVd6A1iPNNSlzPdJCk2JJuNuKPEkZUUIxpDWVlgwKBWsAa6dVRupCYUy1qf36/8SUAlz196F1\nLbRhZ+EDlsbvi/r+jJkrgLlG2tV2x6phzsFIkCHkdGHzOyhK5TQldTvtzCkQ91cT+snFBJAU1447\n1kr403MRumVgcHMcsIrdY7P+nahGv00KCDcpO/6hJlWhoemZJFwXFtnAlBECziJDOBFQJnZeJnpm\nFs20Lp80exGcbT1WhRtEHaGcFIyIPgJo+nhuak/bJTyLlcb/AXBZwEsRrelyPPiuz5ukExYR99rU\nnkUE2joe/e9PyubQX4iMC7LAgmBRh+t0eMJqZQy4B5bbWPMKpqNUsAJwpxk3rIeB2qK4Rp37M9fn\ni9I5bfPBQpvWhb6smx9tXhQQ8uxBACxs5sgtuu544wouq4z4de7y3Wk7cwpEwoVJHgL+LabhQqMO\ntoGFQVjPIxjwPgArk+AUgjMzgcNCmRge0vd3Q3AOO5+f5l7h/zvyH9eOK0iHgDDJhNb6mAf8A3Yu\nFp27UvTDzW92/3H5vnNnJNVFguJ1/zmFMpVG+OnR/3FVdYQ5h4JDQXRgT5uaaFbnk7Aq80nDOnC3\n0aNoyATz6bs9ypXPglORGIdjIoz/SIsKaoKlbWu3gNOxUPsurJRRsnGxfHhGWEGHdY4YA+fU0A9C\n6w78dp/R6lFdqf93N8fdRyw+OC3OUYGfRF/c0pHSbSV48JSyQPDXfOLBCNIlaOuikJJ85ovDm4fo\nJNUF4f9wCbAy4nsnEf1A5NM6cIXiOAvcAHYZNz9dOJdFgCGPJTaRu+GOrtSdGyVG/wIcm9edDpcO\nsA1lFbv+rPaPnavVsC5gxz4c7EvcYFRBXd+5IEKNbeG4xYTlgTuB6wKuMa9jP67mOgpJYvEsqpqa\n1DGF/xELG8IYc/GYtkUUpQ8uO+HO5STkaylC9cyFY1NcOy6KCN4I7tN+tYhyPt2t6GNlAKxce0WP\n1r4kGzflBiVK/5hHLFC3il2OkR1wKSy/vst6O+3MKRAGFg3JIvWXhKDDAHENgiNl6MyRZ48g9KME\nUpfc44vGlUyGik+GcBF6cAXo3QvbJSSdWERSUptzx4Ete1i5HL5z04eL2q1jg3CgUBPLSdwIRcrY\n9Hf0/lyAc2BiO1DoOAW7NjR+XLCM9mTo13EmH3Pen10exYZSDBcP9zD5D7BgwWl8nCEY8n59mjjW\nUVyfFHdkL62vk9YkmBKNcT9vJC7GMfgb6VYhnzwfS2Be53cp5wMxbk5RQM7SZoxrwx2blznIkDwy\nP1TbGRNc1jtpZ1KBdBVCNxIhyXa2vBpA1UNuQ5sQQmO+gEBYEOy+2erPTpDNcxTy+W4VsBO48sLU\nJFLku4e7MkkDz5yZ/tggcLhsYCuYq5MC1PXD1VhZ2adudIP++FiPy3vw95mmmmtUow/gI4wtO6Er\nhn7oclnHaFH7Aybk3+tTwlnQ7j7QB8e8Tpu/tBiXHXKdW0FYOpKKwp5UBRrPmdf56z/HlapbdfTf\nAW5+euSM9/fwPj/ZlEIBJYA9tXluNayKFMV/Wk4O8ukRrd8twvnBtDOnQPqD7Jq17zO6uZZJWstq\ncnrEg/DhQG0FUvGHwULw8dmdna5Of5ggzGL6xTX4ojAL03RdVnwGZUE7zd92F2lUXBS+AxuV6xBa\nduAYm4w2OcDJe3F9msVt5SvwfylBZNpUs7rbM3a+WMApJI84tXWnRSlgoTiZyQlcPItx8zwX536w\n+0Lpx0Lhc8YIk/2wLFKUHDwWxtXn5HP/9ZslxY7uyo17IZ+4tLCMeU8Wa39eYZaiWFjQY821rV1N\ndFhxOMDWTe3pUJNOH7HEiU66xeguNfLj7jhh3dNytG6nnTkFMj9FG4I++57qhLFEs9t6DwfhfNdn\nsUmqIWLX5uy4jtaf7M+g7Apk56ZAeagY05BFh29N6FJS9bXdR+0rSicvYXXkPcmlSSXLokShuMvg\npKyBWm1qv/4N98Tfk92pC3CmdTRX8kix4vq8gr71yDu75ZZux7yjHDe1X/kcPDu5MLNq2fn84grx\n/gNl3o/3nc/5GRZHZnz/wMd/1onoCBuUy+D5AqRuar8SGvtuIVYhIdV0VVpb0JkYt6fzHXlGObad\neUjaANgT6yPlZthJscgNd1Ktnb5FdTvtzCkQN5dZqJh/4Akg/Agai4K4QDeclTky6fsn6OgWiO8Y\nCwPuZiV0m+5J9NHNxeh7ciMwEd1lgoUKjZlGXN+b++YAyeyWmZeTESfexSMeLDTffQih+nV95dXa\n9xKczdyN7nzN67uBCfj7dpmmmb3r4wi46u+e8zASnIlxWXwOcDp+QRQFYNOtK7fifBGGEhzVaA59\nQRFxb1dKnrVNPwgfs/Ewr/3ICTJEoOC0cWdMnKKwMLlyRYJiQQkubIx5V9wUf++xyYr38XbbmVMg\n6FrpJJsSs4u2q23LHnUz/fS6Gjkx42rPMKF9Qo3nNozVjXwwQZii0KAJtfV37VQEseARRkfaaUy8\nhyAHykSwmaaVOAXmg4XhAuKWTT+ln7/Tf5Kq+LuTqwZaVlAwxjatJUnV7YHYRdg8+poMzPD3Z50x\n2dV2x010y8s5Cih97usLaFu7HYvOLRqsPaJDvrDmtb/phvo4Saq8HG/JXp5VZTLVYSfBDSWKrLG4\nffwZ9+hrKjZcHDYfLMiT1PeZ+o21k65Rhtg94OAy0rd2b7edOQWCj8ruONOko9UxywiZuUkLDyF+\nT1MaPx2BdV+aSURD+w4pdfNBfMfo+vpxT3bjSW9y+/Unknqe4UWIT25a+6JyQZfSavFFyf2dACVh\ndXQXb+5Qw2qRMA44JYSz9wufw98dBcs1A7V1B4dTQxTE+94vSBRmf2Y1uwvGHLAQPVrgCp2xZC7i\nPcZVGXQZs8tOP7A8drWtbT1WXVmUuEdkHEBFsYX7lNEO5G+midWm6S5S5pmQuFtFA7UdV5K/oghd\nZtk8WCswfpM5280+d+UMg9eJh3fSzpwCYbhjIHM3cPMufmZ83P/PPbx4CwxUZ0C6vw6T0YW4X1fD\nFUn2aVh3NykFFTOYZ2HGIyheIOnkPU83KR27SXM+09YB7YisuPvE+zo+wy6FMGNZTIppDZsSjMD9\naCjUYCC+CLgvkRZXMP2drq+k3ZzPZMW2LrZDTauV17cWJFkoN5Wzk+48vQG3aFYASFLgu+7bvIbO\n3RJxi8fDyi6HFBvKnJ2uIuk/j0Zdk64b3w33O18F90xSHRPc8Ui4DOvcQ8IByE6ry/NE2plTIO4u\n8H9Q8yx0kzkXmf26rCEviXTtbq0D/8yzEx2kkxKlPkkYy4gKghf/zwI2rYYV9MpgridgpVnuwuOM\nQMxepzo7N6IPGuPnggWdJEhl9MN5JGAmDt7FQs4EO38Gz8WlISuW+6EEII1Jib+4W8ruflrqgFtg\n/D+4LZP6vUlhmrjVwXX8n3GDV+Lj4psFoVmexe4N29ndHMByJ5iBj8DNcBB40ZGpUDJYbrvarhJB\nGyhAbU/8g2gYFmWyl1OBhSIMhZVwK8ozozJJX39M23UsfNzupJ05BdLf6ZlwdoHMs5jVnYPdBC2L\nBYA2p3mI0ndnrAL+BkrdZ/OxC+NeMEEoFG/0xxc7AuPKqs8ZgdMBcQyl5FGUdLWW1aoYKmjcp6Wt\n53jl4olnJcdjokNTDOOqLMfF1HW27Wlz1Xe1PH/EvyMFbgEgLqnjHsX4juq/QXkvPuGZWJeS6hj0\nsSTGAUvRQ7tsQpDemGNP4HN2sOMFvBNWLOMU750kf1euPt/8XPTkU4pIGHfA0sRdJaQN7wb3k1we\n8BcHXEnzyHSPRaUBIOP9qNnttDOnQGaadHxdBBSTjwQq320mmtW/e8EUxx2cGo4AuuC4pbGn8/V6\nBFmibGLWmkS7O5Xew8un1RXBWkFhsV87dsP9PJWenQichff3n32cpL/D+XjilviizXFOerYzUXlH\nvs9iRsH7sza1bzt7mtxSRs3AU9I9itlxjk13fLvRE65hDACe49kJFvs1Hk5HKQGCugJ0uoDv1iEf\nXYIbLk1aCAleI0MwdF0FnbcolSvjkTITl40JZZa0/a5lnZnKyU8JV7mb3oF8+ab5RNqZUyAAWr4Y\noDBjwiOInjOBvzdXJtrhCnjxFSYXsLBv6tMHPu9bIZOi8fsT3q+Twc4hncyDwAJh56W5YPjO4L5r\nHzBNToIXB053gp9eIsAVJtfT74xMzavb2J2fLtuX8TlvUSP4NW4pOZ61aS4Q4d5M9qO6WRZjpo/g\nL8wfzyMKxPMcd/FFjSKAN5LYRNbK5d4hP9TkTdYwcubyQrQkM5XT+uKe5Me4kjrUtGNRuixkjZjk\nDmVE5rBuJkSDyEdyli19HCgtKcBTLzXZJ7vdTjtzCgSzKpOgllWIUAgsUCpKOfZAzsnYFjU+IwLn\nCkU6GUbznXthbhMKwXdlN13T+oB5GX061NSEclzNRxoCheJD4VA42CtLOQfCIwJOTEqh8TIE0/pm\nzkx0IYeMdb5Yc7hmHtFgPGNsEkB1KwEAFYuAyEA8J8xw0t37c+A5J55ST+M+58tCwZVJF6utz2+V\nmcTpcma4GqwF/KI/H8hSWnTDeg8igQDYaZUmyzfHOsfblYUrjRj/SYel6q6TzzfZ0/4ZSqLvtjvO\n5OxkKevr9K3U22lnToGMTXk4KYyXBGlGEdBcUyPw7BhSFygNMzCJNOxm7NRxTVvdI/4f/esmejld\nHmoxE++AmxSTyaK6qN26c6EAnUGK4iSr1RmQCD74BOPWZ7K6IgRb8fHiZ1bkagu4140uAeDyrq6A\n+V4Xowjy344uV2sA0hV/8z6QLQyXxl2DfjIY75VJjcsT70mUC2uNefGSlq68UGo8Iz/PndvJYxe1\nK5LZpGSZMt/p9iyNOp/8IEDqPOLB817S+kveS37Pky5nht/4huSV3JhLLC367EeJnMb+/mDbk3mw\n1AfVCEt6Q0hxUdy0B8RMM29hpjilDHMxg2MQjfEd2PkIEIT62ZZUEMPiYNek9777Yw5nlCO5HSg6\nV0yOZ7DT0edliUKw2KL0XteyoKVrsN/hFHiCFrknvhO6Ge7WAH1ztifWEXRyBJ95GWjQcbkIqMJY\nZVEReo3QMMBgWmDp0s3r9Yw9Ic1JiZh5TQ6+R1i6VVYhYww8EtbPT/L0Aa6Hq/OYtiVlWUkAexQA\nFgkUcxRR3131kDIysVTWtXVwM5m3bQXXu9bNQIPi/g/L+PlJATwD5ZrA8+DEerudduYsEMxGb2hv\nJomENyl9cvIXmAjMZhYik8eJYhDQ+tp3pomW6pJ8+r4iiqGfxcuzeB6CtKifZR2SXV2sCxBeQ38i\nEUzfFV3Q2cHyEKFl3dkQFFwFdmRPMtwt9TJYXHGvab3WGbtSl5AFlyDp8llIyLkFLByUfSy4VAY8\nE7czQ7OZ28EcO47iCnxh8+vsznAvztcxJ8/ltIXsJLtcoIuKF/h3UHouA8gF908cKgmH7pYQxnW5\nAtMiZA1YzlyygYDpZNRlVJRyl8rvjfdn7qTTC2HdbjtzCmSuLDDL4BNWdDQf8NRrIuSCCIUScfxF\nney2Tu6yWiBevIiFNy1p0/iwfU6ClOFXKSutk6uCG0aODQLi0RYWBT5r4jDdco1uWfFcBHZHlzvv\nxw4I6p9l8Jade2OVQQPn3dg1M4ck8Sf6HJ+39fueCwLe4RwNxpqjJLyMJO8JEBj/J5ltVp55WK5P\nt5H3cReWBTYtmaxYXplA2eXcxHcyotRqWN0of46TrbDsmAe+S2Ia+AfYiytcFiuuD8lzbjl6/hOf\nc3yHzwGK3ZWtu9SuPByEZowf1eWOa+59uN125hSIh0FREqnh8VWpjp3RiXRxSJlfVETaKe9J1V5U\n3oPX1GSB89N9ba8d6qYvYBTRon5r5cdCehg03hF3wieSXabrq2eEAGYtprvzC1C27j5IyQVJRH7R\nWbiObTiXBEXbb6QGMP64OnAVuA/9HtviRFGwaOlr5PjkgVlYhH3m52kYDGa6u20envXwuWNCXRwo\nozLuvjJePg4efUMJojx5Z3gZzI9bLH7oFK5EWAooiDz7h3fkWVl2Yl43KnAXB34d2/GoTmYhjzoK\n6nbbmVMgUlahlrrZmA4IQbSBZOPYg3SyLMChJp3FstBI+8VC8TJ9Up82nosw/Eso4d0sS7CXUHJZ\n44FqWste/1AekqoAOFEuEf0uEu/mLkKNdeUlAvjpSnauUT2NbaAIj7uZjPlLyNMXPMoVKycsttjF\ndrVdFw3AMO8ME5T3Z4f3nBjeEXwFq4VF5VRxMJrL2hH+P/M7MeVABirKJs+BjQPRmVMHrz1EPqpy\nlsxOn2/uh6uUXJBRtaK9ohr3ZP77G4bf29mwKBWUAHLi0b9+QSfmwPlEeZZMFpxCsT6liGTOu5CS\nGRq/ZxFZiTBql3kZymBYFydWR5rl7Yn7+o7lu4VfT2NRMFEOutK37gJO5dL3OT0hr6tQFvpT7/7F\nioFIyUCNPmaozgWSd0nAc6zDIlxYbg6qIXTs9FgTDlTDu2iVoVo3e8e9sXIMamhjmkzfLvDtDcuD\n0wedIOZzjIIhEuWV5RkTXKp0HeLeXhAbZcX8dTeu5Bj1iXAoNhQTi7Bv0bCw+Q7sVJR3v86vJzT2\nxzmtqMwyznFLd8RLVfD+nuZPAwh+oi7MmT3a8rRjIZOW2yVYSY6qJxuUXTQjKjlZ4QLsdz5Ltwnw\nNDEQoi+OFfQn2l2gXV3shEeZTHalPW12hH5ugu73xcrg/66E+kcu9lmHbkpnWDw5CIwDpDdP7vIx\nJmrj13DfxHe6yhElgmvJ3HgoNq0pFFyOe8z5oIP/OCYEmN6XA5TPQEvta1Pni/Lpc3+4v7e+YqOf\nfO5HgPoY+X0AMLe12yFEhvwk9uJj6PgegLunVmCNddm0bUeuwV9c9mk+VlP1T7ULGXht851PjaMt\n3U937emmvfupFP6R1LnOqe6+0yGkp4WKfQGS6ix1Kz8BTiIMxOOlPFrwUNNyXkuXscp5IEsNqm/u\nxB8v2uN/89wQL2Owryw0jaXh/2JMwvo6/F0WEDupRzjcPUP4EFDHf1j0ngjYF3IWYHJKFtWkxgLz\nwkjOfnUQlN8ZJ6IRvsGwuWC+k02M8uvXROmnAbilg6vAdwDyU0F1WcWZE5PYGxE2cDb+7vMwULBU\nPWUCEJ6+uoyAbWW/YOCmxc0pQvBuXJngJjpQ/ERcmDPIA8kDlNlJ+jkVnhPg7EIPDWbc3DU9p6UF\n38P9Zq513953CucqEObzaAUKxuutsssibMmIhYqfkROn1bP4cMe6ltGwgpUcut1XRI4HsdBGxU1x\nU7svyIwhfBciWRPNdLFEbDC96TdjjZXldohbBrw7P53Tg5sARwRQObk8SV1HJjwCkQFPGMmZDMi7\noWDjHbuFokZSB6wE6HTXxYHKibrJgWFJdQ/yduDacS/myS27be12LDy35lyRYDGDCdKwZvN4kLRQ\nfP0wH/1jHJ6IC3PmLBB8RapZSd1B9B2H3dH9bUQJANLL6Hl6fiiKw7L75ueelJcAanIdWMDE7MEQ\n8Knph1sfoCZL6z+N3X2gBCd5ZywMJ8TxjoSAnbnpOEm6TkthpmbdzQSIM+fC68ymQE1soUqq0SSu\ny3/JCO2HjYd2Dc8lY7XrxuQ4ZG2VJLclmJiHkUPWQhGhSBg3LyPgTGPHG7B0XdGDTyAPgME8z+eY\n+2OBAmKm3KS1C24DBWGgPFLU6QJ+BAShaU9YdOo9uJVvTB7FZBzp22XtdLC1p1RNVCmRaPcfD01D\nEypzvoA2qgoxAAAgAElEQVRPgPM7fMEuleLuC5b6ErncsgYD/7zuyFJZjs/9yS4vYXji90PlAVIc\nbJSkoJMV0TxHB8Hjfp5YiBJ1zkZcl5R6FgSKmR2dAjRYBix2P+/FsRFUZ18ZMi9Ya1I38c7xCz7P\nUgyDjptFDhSkN69l4gsIxZiLsJsSwOJnVtMl7iZSOnGQ/7O4JdkcjTtjgXWUlli6ZJLqaXcoavrt\nRDWfK/55SD6V5kmOCM939w73mGd5tIa/X9PT6vpwi/RO2hlVIF02o5ukA+XpY32W6XbJL8n7tB3E\n2uuBQLaSsj5nDmjmqDC4TAa4CzUVLuvRek8m3zMd3WryOD4mtFsQeX2a7PyTujVWWVgUMpLSNOV4\nR0+LT5OaChipePtlEX0sUda8L/9PLkFX+Og/75in3mWeTBa5SasPDIZFT99wv/qbCsoPmejjO4yH\n4zuecEeYlDEBKwKgpe2W4jsoAZI9cWty0ZO9nNnaNLcWcNEZO7fc+uOY3+kW9HbF1pWdtDjYOFzR\n4/pA6kO5PMXCuPOO8nCN7xmf5KNIGdYE2GQBxv1OFtiJxXVYNTif+WRgcbCzSgm2uXvifYVy75+x\naFBAvruDc/i1npuC8gGQw/JwenRiF4vaLxSsJxWmJTOq4+bvvii4hJTuBN+LqhVZn6KfRkBfYETy\n3cyRyVA3VlO/JMK2djthTe7br0HaDX12D/FG4aXs9OvbLu2dwwKguBHfx11hA+kmV45r1APrKK3Z\nYR1fRntPm1X2sNwckxiq7VhdTnrLTQ6biaMYulgL78kYelkJlKEXbuJa8Jcngn9IZ1CBeHIYGppa\nlq4MEuFOkM2BU0llSjJBztuezlcl47wKF1jqLSTWkIAmiyR3+G4kg/dgwXjadb9Kmfv3rd0TwSR6\nw4hI3V1jaMLKrk0UaaBl3bl99wLkhZzkSpLQKWNL5In3cRp6KINFfY7zKbBCmAP4JkMbM4+WkUfi\nZRvJBMZ9RejhQzB/Xt7QSxtkxK5bBS4Oi5p03h1mqfN43G1JSzKe8pmDV3esPJcF6obgIuKCYBmM\nNK9uEvN8Wv6Kh/S9yBUWnVuO4VZT+mFcLVxPCTlNzp+IEjlzCoSWCUKZ/AX+wG7ADuC7pWtwGIcM\ntLsHfO4mt3/GzpMLcymIa6FYDusi5P6Qn9ySyBoegTHgs8fOfr6a2X1lInVZsH2OR1pI8Z0IG+c5\nORSrIaMYhciCxBXBAvLIRP9IxD4I2k92ZIx8x3WFhNXgmdY5J8P6XMDzhSkBWJ40LBdXNsgD16fy\nSzA10xDaouz2qzXhCnxui0zKg8PTDZ7X+7+p/faaxuAYmpMdPWOWurUDtTXS5c/K+e4WYXZ3y08K\npH4LV7pLg5XuG6dbrv5+TySd/8wpEBYuhxKBLnep43nC/KgsZqd7O5oPQAlohFnoSUquyZk4J2gh\n6NxbghKdNG/8Sn5yX48OoYB8cQQekaQhpz+z03q/eFdM/rRcMvwHFdpriYw012PlHB3PLYl+zDvj\nmzTyEHxOXuu7Zo4PeS1Rvz9HPVB2Eg6IFMLrlsNlO5WeCBdjhRJHITHuWEkoFiwUB5TdAuReNELv\nWBKuCKSwYlGqrswSI8tiUMx3hqAHFdDHsvHktpkpHz5jweO4+GcOorqScQAVZZ2KkpD7sGNNwQeJ\ng7ifQun8hLcwxU57Ofw3TG3f1fm7o9aYfVLXzPTjBB1rkfLQaPoE2OWT5fjDQMtqTTiblWdiujqx\nra/5J8Vdir9l8R6Ej1KB8flEmOZZmS0XGaY7u9RQUcTosnaqIKfCHdeSeywkgNg+m9YB7rHSP8f/\nTotlWefEMRl2765FEIsgLKZZ9dWXZY4yenNY5n5Sx4MxdlxGUscaYr79J43x6WJZJwsN52JONyrd\nZ+Zq0rGWXAkx1iiW0xLeXGZaDWrVNSJnsbFN7D6Zyg8HxOWbzcqVruNGM007Mncn7cwpEKmLWndN\nvGTbESVwDQoLD4vC06NPw0FoThWPn8u6wzjw5QzAk0zWLGOHi4D14j45i2Fbu7qinfo8d1c8ApRs\n2OwjAk65At/x6Yck63sqMicRtRro7YP/p2PJcN1uyZWgpCFsyezDXA7C5aJK16JVsncZLz+zhOcB\nIKJUklGalcP53S0JlDhKy98LGXKOkMsJyq5f3tFd3HiP/boIQ9Yy8pKJnfP6jli6YEXMFcWbvDlo\njWXm8k6yZ1hwaaViiaZsw46eVuyF/2N97OiyybeXvRyeUJa3086cAukXx4GtKWUFc3YrUP+c+m4G\nrZS7gJuDDp4mcBmCsG87F/U7EDx2bpSCfx/chF3fM2M98xQl8oju7SxmaNL44YTb2OU4ZnGg5D7w\nDlI30QvEH/fOd8WpZvXQppEW+rj2WbXv7PwLjWqRZEK4l7XTYXdKWXqBxeQsS5TAXKPqNrkPTqm/\nnOdxdRulDF362LEQ0+8fViXQTw1wLIn3gEk8lCsLlvmoQyhkw+EAdcaO3dzHlGiKb0BegT3kelpd\nZt/8vHW5Qxm98n/unrubRr88ugInhXfiGTBi+2vkTtqZo7L3eQDgIEQj2HndSmEAoEJLqhraB0/q\nglD+d8xBWHoeEsSNYHdKgCyp9lCTnYpPgwWKUPBufp6q/z/6Niz+dy7SuDYn3vkT8c55VKa/M+g9\nIGY3zTtdjXFx2zKUTAnDwzoHKCX6A5bEYnTmJ8/m+yx85jUiIIfqm9Ds6A4S90lXyUPp1raAKeo4\nhssHUSasKB//vgsB78KrvFOsSMooFLU5cPQ2y/aS+S/dw9MDL1l2ZMEXOpsddT+cv9JnpErdvCPu\nyYaK7LlS71sdTykLhHYak1PyJLlxnTiwEhacm6Hobj+hnMnwXRbA0DGKdFe69Swkr+RO/D/L4jkj\n1ndKqVtEhjNu4h3xacc1aoP1EXU8duu7JSAcoW2sMnex+goHlyD6HmY4VgCU+ayTOq/9k1TroGAt\n4EocaloPNPJDt+J5eTiWR1/I/AVUdkV3WpTAffrkm6SVISUxj7FgZ86I0KEtMsDEvhIaVXcmFfuo\nM1/Mn5PNmD9cNQd4HZsi5cGJf2BbrlxQLFidWISezuEy6AqRPnctTi+A5MS3LIbUd61up505BdIF\nLOeieIoLFuaZlGdySF4mLxLnMIMxHSc6rL6g05qZBBoAqjM00eaJE6QQ9PvO31EecEm67+mCMK/3\nZvE6P4KGmY4iZNdxZivlFbk+7z81AYLfEYv5qq4LajmLw/14Sh+yAHm/iVk83fqliW3gMlBvBAEm\nu3VP523n9RKAnm+SuTVuujtNG3lxbAY154sKV9WVrZclwKL0kgfuVrkMZp7OstNnV3p97A32MJY0\n4+24DQC0kwpRKgGanq/V9FBKvCOjhNXsiteVHaC/1K3ofrvtDCqQQTWFIcN4GLVPtpHSGoDWzoB6\nhCAqnU50uQKXWCaHFWiiOTHJmYl9qwjTk3vBD/FdlXfa1H61ehBYkp6oHyF1zcmx5uUIAczWrKeR\nu24qMHAZdr3rulfkmACUOi4QzyCK1aWDuwsAHwdT2P1pCYZjWkvUlXV3ynNP6D+hz0zTTxeuf3K8\nK9vrureOfYapM9W/T9Gmf1gdQ3WtMd+NfQNDrlCUbsUMBFCfmNygLNx5sWa6hLboS4Sq4e7sdhSl\nlw7wkLy7VYwXZEa3KDyCyfPcnUbBZ83hoBE8pVyYgU0SSLInkrEjgVE4OQtfH2UixaDv6Ern3vi/\nCIpnfkqqrpFzJQCp/L6+4/ZdBtwqxyXi7zm5FPk5bQwcPHVhpv+Aks4K9TAeyPy2dq08QTecB5h2\nWLCIvtXji2xTexq3ftD0omOyT8tuz3PgT1xpU2EPlS6gM2oJbRJSdbeOsXBc5Gm6Vp8NNoOCzFyV\n7sHSJB/6O3I/J4qlhZmYAi6eYylgYezy7OrMiVfZ592YT8oQwsVAcSQmMxL8J6qt57rI6GI/twvA\nmygM747i5B18g4Mpe6ftCSmQpmn+U9M0v9Y0zS83TfPvymeXmqZ5a/n8Z5um2bbrv7ppmt9omuZd\nTdO8+LR7nkSclx1hYAfp52O0OmnyS4Ti9jr3pi1McfiOG5+lr5q8iSCKZdjTQb55p09uyksyRTCv\n/6TcjbG6cDVOo5/nyHTdOd4h3jcWOYVvcgfPPJy4/359T6IvXT+97YxJ4g1Zd5T3wdLz+8FB2Bt0\nj25E+VMXFdyCcaCv9MVN8KES+CTKkenxObeY5O5ehmx4OczD+t3Tzv+BhDXSvGJl9Ae+h+NxAJNO\nhMOC4t28HgsWLQvas30hAUrquImJXdCPqbD6kqE9qn8D5GWjzUhXJvD5pnIn7YlaICtJL1qtVh+9\nWq3+SPnsdZL++Wq1+u8k/Uz5v5qm+RhJnyXpIyV9iqTvaZrmBIPFBd53Zx9whJV0emji0klE2aMW\n/cXmpqU/j+Ixbg5jxoO6c18vEMTCQ0U42EXW7n6hlyMsPCt3w7aTNOgLA2FgcXmZvH6m5nmLSJFB\njDkOJkFfWeyAkxD0EOwr8x0NtNRsAHMygTnCy60i5IlC8HffbPe0Pd8V+ML2fLea6UROsJ7cQuDt\nvWwfjYXlYXWsHLcqGD9cTOSni4VkqUGPzAAU7xel22/kmjAvKPes8j+sSiQzp3MDdLzMAXvu5QrF\nLRA2lr7b6xFClxUaJD0POZ/2XrfTfi9cmH4dxU+T9Mby+/dL+vTy+6dL+uHVatWuVqvflvTrkv5I\n77s2UMO6qH2gpdxhnKDjVgTkHQ9JMvBSsvjSaumCX0QIfKdB6/txhv0dDs1P39wCgRTEwkaw8Fc9\n38Z3/TS1k1lII9fFc4UAJ1sNOqUG4E/4DuyWBu4GvzMPl2/e1Hxc3Jw263tM57N6D/p1Wg7NdD7T\ncjDQfJx8ldk4BHh7vqvNtpsPMtZCF9tdYdUx5gtF+YLruldZQIjd/bA+m3clwsJnfgbOTBPtabMe\nL+rkvS7nKJUqVhIWgJ9X4xaBL04spGWZi6y83yW3ed4MrrPLTp8M2OcfeTjYXUyXx8RRhp3rT3Oh\nb6f9XlgguCuvKp/ds1qtdiRptVo9Kulq+fwPSHq/fff9kj70v3RzcBAHUL36VNbq7Pp1rQbF7FxW\n/zHOTiGFPIvM9Iv0SHnCHO6S746AWuxQrkQ8O7U7SYmbnMy47NZlaNVNWfeFwaJMkzYiQ17g2S0W\nz+eRumeSYIGQNyNJ88G4c70kXd+6FCBsu6flICny83G3OHKOy6jeY6SF2uFAw7at/xYaa9yWMR8O\n6j1HWmj74GaM8yAIZChI8qK2taurekRgN/3d0zECFEk/4oDS4P4Ase6OYM1NdCjKCHYXdPc5rtSd\nh0GDe+PWG8mQcFhpWIpgWKfNo1sjHN3p1m/2L0s0TDXTY9qumzCyx7V32p4okewFq9XqetM090j6\nP5qmec8TvJ/e8sA7tNKaGh3rw1/0IfpvXvRhIiLDgk/Bndfdr+6MZfelqCwcivCZ/fTzrC3Komf3\nzYWeC7ufPJeRn5ykuVQVHJNJ9KW/uIiMIHCE4dIEbeuOyC7iIT++BxDrlb35CemL+6NAcVucXLTZ\nxrstB4OqYKcHRxospbZIyXIjlMHo6JZ2N7bq81GzvnhqLs4gLJcLO7d0sLWmzeWeBstjzTfGmg3K\nkZbzhXbHU+1ubGnazjQbnDyUCtPbw+o8i/HKcclF9Kgu18XFGEp5MBcNWUliYMiaVybjngDEbDRO\nzGLOSDPo11rNvJ7AJQIITcuSeW81rFYr8yfbLP0cZ6J6PItxIBgAwdFJmu/9+d/Rf/j539ZKa79/\nCmS1Wl0vPz/QNM2PSfo4SR9omubKarV6tCiW6+Xy90t6un39QyW9r3/PT3rgj1UuQ2AbaQV47kPy\nC6ZVWEH5nTzlx1S6lcKulMcdDKsb5GGwodq6SDLktqjPdCB1WGwChJ7JROAmJQzKYuM5FMVdlqzQ\nLBMw0KG65fYkkHT2j2FVmGnULuvOuafzFayUIjErWbpDTduZ9gabHUsKxTIeLjTbKBGZ+ULDNqyD\n5UbBFNq59gabVUlL0o6u1KzahUbhoixbfeDq+VDU84VmG+t1/CRpPk4FMRtkgR3u4ZEb8B8WHLlQ\nbuZ7+NWjPfzNCXhOosIqScJa8mn2lfVmCaunJRBy54sVGfHI4Gk5Xu5muMWBu+vn2+BCubXJZsBn\n9AG2tqcXJMA71/0vepo+6kVbwkV8y+ve2V+KH1S7YxemaZpp0zTT8vuGAhj9dUk/Lell5bKXlf+r\n/PwLTdMMm6b5UEnPlfTv+vf1kGO/+jkKg4XDwEh+KNHEvj+pk8fk9wvLeOiT5sSl+E76pB5C64cA\nuWe8x2H1on0HBPlPdDzzcjwr1EHI/r0RSh8zwrVYGRzejPJBADs8k3au5WDQsT78fffGwRcYz8MV\nGSxbTQ+OOt8dqNWVdqcCv+Au47bkpyxbjY6OtXmwX7+7efNIw7b46kUx8R4sEseo6FMweWadPhKt\ncjq6fydBVawAaPejOi78i3nN0Dgq2l0IBzJZwEtlzla/D+5e0wfujywCmsZ9stwjG02kHGQ5Csao\nX18FPIq+I1sAuBDfHKjuh3Vvtz0RC+ReST/ZNM1K0lQBkL65aZpflPQjTdN8kaT/LOklkrRarX6p\naZo3Sfo1SceSXrlarW6dduNMec4QHxWu0KSZybgQFZ/4rkRUott8MgmbQhLziffkOQc0URzkcfg1\naYJ2J8SFj52hH7nhHuweTnxqrX+hrDKR7op26o7pfIiodqVqRrMb0pfpfKbZeKrR0S1pPfrpv0+P\nbqodrpXPj9UOA69oh2UHPjjSYv2cpgdHGg8XGiyPtbm+p9HRLS3Wz2k5GGh0dEvLjQBP5+P4Tjtc\n02B5HOO0bLV585ZmG2vaG2xGlGZ5rNnGeme+PD8IE/0ksJwlGxxzygU778xtWz4D1LxYyhp6/k08\nP7lIuLVdKzYVhisUvuMEtwwItNVd7R494QWqu8eg+k+CBOBh/jn/x3IiStfPtuZ57h7faTuTJ9O5\n/89i88GBTefkIdfEfb9YwnQdWRhz2nmO5EWLEx9xligTi4nvGMzJ9P48E0ZKunRXUIZVORDF4Bne\nV6fEuxC4qS6lZZK++rT2EQCu1bBaD578Np4vNDo61mI9FEdaHMd67NJ6sRriufOC+c021jU9ONLe\nxvn6Xrg5Hq3Z2DnWweW47/TgWPNxfnexfk6T/VtarK9pNp5q3M4rbiKpcy8UiJvxIRNJfEORZvZt\nvDt4AkpGUlUabmEiBy4juMxYnH23wpWCW4deKd7n1YFXLA5qs7qF4AqrT0dgcznNesAlxiL3fnhy\nHTjcnjb1mua7nxon07lbEv8PP9JJWhzGM9eommeupUc9ZeI5BURPvAE2ZcJXHnHgixZw0C0UdgLn\nUXQtnZMJWU7dpi8XtXvCZkrA7bAuCMxX3hEOhedW0EgbdyUhSbPBVJs3jzRtZxrPi5W3PNawVbUQ\nJvu3SpREungjXI/mKP6NC1yC67F9c1/j+UIXbxxp8+YtTQ+OtHmwr+2b+xodHUtDaWPnWKOj46p8\n6Mtk/5b2ttY1WB5rOp9pdHSr9newzKjNQiNdbHdrUiTjEON4WJUH2I+HL/s7OL9D4Eu5w3FIvG2s\neaWcU5WfeeUadw/9GZmDcrJkpYPlUAawiiRV9iuRxHS0unVh4OHAiUImos5dKg9woot1M8zaOk+k\nnTkFQvNwp2t0FnG/DoZfR/w+/t4No+JOTDXTobKyFX9HeAAVcackVYugH0J0bMJrdWBmny9hSPoB\nGo+FwGfpKy9rhIDvAVS2Jpz46AhOZOwWxdJmzQ+ybvfGm7Vfe1vrGh3dCvdjvqfBUnr0UtS+2NgJ\nZTLZv6VzB9LSZOxoS5ptrBV3pNVi/ZwOz5/T6OhYs401zTZCpAZlWtqhdLQRv587kNYPVJ9B27wZ\nCmp0dFz/vhwMKl+E90Ch5Onyy/o7bVfb9ndqz2bdFcaQ0XNg0+u4wj9yBeGks0lRWqBcNDYityLo\nax+HY1GDX0RlsUld3G49U6uEz8H4oDngWrNR4gDDifGi3rwrgP0TUSJnrh5IksYAvaaS8kCpWTG7\nnEzWJ4sBSPr/cR9a5Qn1kwLKkSuzUGZZck8HmZymzGQuixg7MYjm+I00N1cj65x6P93lQhB3dVG4\nWQO1ncWxqb1ilSw71g/Kow/mbc931Q4HFauYbazXsKwUlsS5uXRweU2jo2Odm0u3NkIJjOeShtL6\nTUnDY2kZ123ejO8GzpEWhpTfazxDfxnuy2B5pPUD6WArnjWeh2JarKdC2dsKPGSwbLW9vx9Kr1gB\n2/PYSffG3TDrpvZFyB13ZlA3oFGVHxlmhoyAdUAUG2ipHV2RW8VOvsMlogo+YeYu3sLhU8O6YN0F\nYW7gGE2KfZKnJk7rs0KmRlWh4PJ6PlYkT046Ss0jhrMiSbxrv6TC7bYzp0DcX+yfW+Hp1078OlS3\nJmrcp5+AllWiqMh1qKl2dKUDiuazyKfANI4Yepdef3odBZ9wN7MR0qGyshXvTBSAPBLu48qDa7ye\nx6COmI1T4VFM25keG2zXvsMGXW4MCuZxqy7cwLWlc3NVLGSxLm3cPNa5A2m1LummQmKGkubFipjH\n7+uFNrM+kLQhqZV0IVweHUgK2oiONqRL7zvSakNaDeP+t8ahZKYH0YdmGdcR/ZGkxfqaWg21ebCv\nxcZY8/FI43m3QLUUx3VIuQF5wSVcPbcakKGJ+scepHUKIEqtEbgh3dBq1hih6BA4nXNFTpOYwESo\nA7Ooi9zdHlymTe13Io19Nx2F2C8O7QxkgHferV8Z7XbamXNh3DXhdy9SI2WCHGYogwRJzEOfLkhM\nNorAU9w9tAru4BRtlmki9YnWY97ybNwk+hy5DpOONQM70XcYfG23QjAxsT44cJuGBYZScWtMKsV0\n2hCl8Xyh6cGRLt44qrv+cpCuQztc062xdO7xWNgb14qCeLxYERvSrUvlwUVJrLYkXZA0lFZXFYqi\nlTRWgK6tqvLQDWn9fZIGUrMTz16VVznYWtNjl9Y1H8fv46LIcLPASAKwjfmcjQt+1HZBbicFeh6J\nZ+l6JXRo8lzn6e64mV6oqL9ROcYVuEQoMT+VT0rQFnlJ3kiSFLP+TcwZcuHvFZZzpg14X6jwBt0B\nIiEJf1isnmrhh5vdbjtzCiQXw7Ca/P1oCWeHsIylbnlCdgb/LIUoFjaKIoCxTMF3MCyug0q+tGu6\nRCOEte08Kc/DpeHzdus1LOr7IWBeuJnM3EzeO1nLktyOpQaazmdV2QyWrTYP9it/gx1+b+ucFutr\napaqkRUdSBsPH+vc79Sbh5JYSrpUfh5I524oLJG5pF4aRVPwCw3i+uZI0lG5lr+V76wuS+cekpqb\nobCmB8e6dD2Yrxs74Qrtba1rPA/FtruxFaFkJfYxbiPCRNRmu9ROQelT54TaHHkGz0ncDJ6EpJoS\n70lx7NaZjNc9VrWbSjCsvI3Mf1kaHuWV+cfVKuJZ/cjjrLP5dTHAVlmfl1ozbhljFdGq8tW0YopP\nqYJCzpjzBg3Gc2McqIqfJ/1aFrRnWXJN+ITTjtnnYT6v/UE0AySerMnoM/jEybqnWAyZpNWtlM79\npaSeO4OQ7yN8kp8Zs6hYyVSHujLf0d54U9N2pmHbBgi5DKZn/IznTfZjV2eRn3tIoSDWFQt8oOqm\n6EHF4m/LT9beMv41/I3v8f+2fP+mUnlcKNc9Xr53NZ6z2ijK5kYArY/fey7e8+CogrKb8+CZbM73\nKvlssIw52Zzv6bHBtloNtafzFadwbOSKdmrqQL9MgAPZPh9YpJ7ywPUDLTuHcrnchbscm1yWmxhW\nxUdDaWEVueV4qEzHB2jlWc4R6rq8ka0OF4V3gtWdlehz0zoL2bj/v7QErfIAqf7CqxGH4ooAYHnR\n3z4A6oCYVx5jd+KcjATT+sh8CiYC5yi/1K3t6WxayiTCmiV/wd0ax17a8kyEnTNdcoy6eTMojzD7\nW125sa/F+loNt9LOHUjr1yXNC7axpbA2jiSRAnSgWPxXy++PlGuG9k/lO1JaJXw+Lv+eoVAsD0u6\nplQmg7yugqzl/hfeeyvAWoUrNTo6riSzjZvH1ZIiUW93vF18+/NV2foun25gV36GPdlg3tjpfYxp\nzm5FYWVVs4zGSeFSQ3IEg/OUA8cw0nWedRRNYiexmXnleP6OQmgVGEnSBDjoe1nVEBFIcDG34u+k\nnTkF0o+3S2ktZKQjK5XnQA7qwpRCU2fiXLoWHrajYV0sNdCuLnb+loAZZRbzzJAwH/MMWCkEbt8U\nipuirrgc1QcURiEB8ro7JnUPKOK9UDrwKgitjo6Otbd1Tu1woM2bt9QOI4S6fi1CsVpKGgYWsdpS\nWg64KFLiGTuSzisURHFl9Ei5ZkMdZaCB0hKZ208smrZ854ZCoZSft7hPefbB5bUI6c7Tzdq8eaSj\nYq2Mjm5psn9L80GGda+0O7q3fUTUX3Vil6f3M3++6The4XPDppIJg/P6HcY/lXxiLZIqOIn8SknX\nZ34d6ASzSYRtWRc/R4YkxhbPcIVCn9xd4340cD1k8CnHAyHEBPWbSkpSHvzcf2kWb0Q5JvV3/uYu\nhVsLALG+KCFmSd0q1hwX4AJG5TFXYunKZB4NKD2trwRwn1A2FLBhZyPcO65Ki3qv8yCDaaHZeFrM\n/GMNlq0Oz4cbMDq6pWYZ4dSjDUnrJRS7pVjwrdRcU2IaLHQW/1WFFYH1QdfXlUqHNlcohBtSKT0b\nbSzpvnIflb8Ny/fH0Zdz7y7/L27UxvXjAFiLhTKeh+XUDtd04751tcM1HZ4/F1EZjavlNR+EhQAg\nDe7F7jtSHjzOpgPe4bLkETwS03IDSEt0VKzUvPa89nS+4muS6gFiKYdZESzmPjY+FnY6LZldTcIn\neBjhXDYb+o6ydG4TfWaTAmdBKT6RduYUiEdQvN6plEcpen0O9LRnQ3oGZ3dxQwwaV7OWmgwoDS8Y\nRGYF/XUAACAASURBVH8itySLAGE1+E7kz0JAMlQ2qf6ynxuDdeEHHIdwZ4SGttSg5rZMdajNeQhO\nDdnOZ5qPR1qsZ77J5s1bWr+hCJPeDMWxKqQuHSjcCpSGg5yXlC7NNUU+9YPl+gKQsvC1lPS4UvFs\nlO8TedlR5FxfL/c7KtdsKBUKbviWOi7Rkmep4DfzAFuDuxKKcm/jvDbnUatkd2Or1ho5LJsQB43D\nyeBvPl+4DmAIufuDo3VlxGUKK5TPCMVybZ5Vm2UMAevBPcDqTuMS+TNbDeqpAlgyh5USlun9XI8r\nzvthdTgP6Ym2M6dAJBWWaBTroZiMH87D4HhbKCti9VP6M7yZhYQAIZ24JuXB1ITyHODMvJSBCVpS\ny3OCukSzoVrtlLoUHAblLEqQc8/GpU8OcvkxCLvj7dgZ2xCk2TjYppH0tqYLO0HwunWhfHkYeAdg\nZVUcUoCb95XPrivciAcVi/c+hRVyVbHosV6kUDpDpQuzYfflX6t0a7BWrkt6b7nXzfjO6jmlX9fL\nPTZKxOfx+Mr6zXJ/SReuxbuhKOfjkTZvHunyzfB/INKNFaUkyTNhbrweCwvXi0OxOzPmzsXJ/KVl\nxRNcBlEKWLYezeseIzGvuIeTz6Ru5CTPW07rFsUhZUb5WJnnkzT8LuuETZHsqCdqfUhnUIEQ5uwn\niPmkMsCg7fiOccp6AqjkoRA9kSLHAAHwqmO4BQ5iRn9islAeWTc1T1mjTzANCe/xvYymZPUtTEq3\npOg393JfXMpjMjfbUHK1Ivo8QpojzbV585Y2rgU5SwpimKSImDxcsAZcD9yYx8tn71YoinsVVgSR\nFzCMLYWLcVMZZfktxaLfUVgoD5V/Q6Wy2ZJ0WRndITSM1fJQcaPGkp5Z7l0US9WnjwdnpDnKz8jJ\n2bx5pN2t81qsr0W9ksGgykOfQ4TV6XgW7o0XXZZUrRe4NtyHOScy6G4yhYJQSrjksyKHbBz0y8tA\n0hfkzlMa+tEdNh7HyJCjpMUn0RAoIAFjJys+xZiofZ6F1AVOadCSB+KQ7bn2dL4jBJNSUGhoLoln\n3brZ6AvYfzqhCMwD5eOck37/trVb3ZXWnomLA+U6+tmtLu9ZvnlecPx7dHBZ986vV1p6O4yFc/HG\nkZqDAEUrv2MpnVvGZ808OBe6r/xtrlj8KBLcm6PyGTjItfL5fQqF8UsKZbChKJF9pHSDhgpFspT0\nrPKdgcLiuKywdu4tn83Lz6cHL6R5p6T7VQFezcuz71OGj01im6V0z/V9rYZRf2SwPC4EtlYaqCbW\nsclwbAT7MuDntnar/EhJJfBsb9mmwDzCDfE5Bs+CEIYMQ0QjXuMbD5uMu0leLBymNHhaq4Eul1IO\nuOttURUwnvuBBq7zLPOQ7fmJKOLttDNngRC6zGSmZJ9KpEgn1gCpDLaeuzHnq/+ZZQE8/OUTnL5i\nntXqp7k5qOuRHrdCHHshs5LJSb91WSfvagllANT1/dcE8LoFkO87+M+1nmgQrQa6dP1Ij11a1y3o\n4wrcY7WuiLYspVtPK4OMUiDyAdmLaMyD5e//QtKPlutQBPdKenb5//3l+nvLNVeVVsR9CitD5W9b\nCqviW8u9/3X5W3FzmutKbARFNC/3kqTfKphI4ZW0w8B2jjaCUxKRpqC7k9vDePqB7SRCDpT1YJ2V\njGww5wNFBitz4QWvlgK/SOWBXBBeZcPB4nG3wk8H4G+edQ4Q6wAv/3Z0uT6zZlubu4tly/difSw7\nFhilHn63lIwPpp3ZeiDO5fe8F7ceAqTsHqLt2hahoaH5XQtzTfJEluofRizFhBKWg7zjOIeTl/ju\n1KyevqmIgErdBK3oA4dPZ8IUWIqb0lKQraCk04ZtKI9bl6Rz71Us8Oio9LC0+sjiMiwVVsGBwgW5\nrljcQ0kfU77zS0r84yGFErmqCOteUJLIkF13Uw4kvUfS08pz3qmM6owVyunjJf1O+Uk7KtfvlJ8q\nFhSWTiGo3Xp6edejCE0PlqrRJylC2rNxuA8e6iQkP1CG3HOnn9S5A7R2+cqs1u5xkcgQ2JtT2tl4\n+nOfBZQTs+vXu3GsLxJB8zgOP+4C2fAarDwrpr4r74wB/f8fm3/01KgHEqG1MAFdefTDrZmmPKkL\nrJ/AFhgI+SaZsMZgoqSGZcESwvWdAdyCIyI4L7br9x7W3YYaE6fxTdx3TUCuG+VBqfTNyqFaXT64\n0bHKhm2rdhgp9OcKX+LcgdT8lgKEnEurZykW85Fi935W2e23FIvxQQWn420Kq+E55YHXJb1DYW0Q\nVXm2AgN5X7kf2InzQ64pIzfvUVofQ0kfW37uKADT+xTK7WMkvbl8B6Umu+9O8FVqezj6dO4glAec\nkcX6WuWGLAdRkhG6O5ZpHrkZy4xDo7wSPngIIDeYFLLJYidaE3KbxaHYxFRfo3uAmZSV6uK7To5M\nWcDd4VlSsl2dBdu1atKK4XoaoWjAfGT9iURjzpwCSSbosONmAHSy6DxPAR8XgIkJ7JqpI2VdySxn\nCOjlmnqucU1y4xkSeQfjuiv0w7ewTeEaSEzwXJQy5DPCaYC0hPjcdUO5AIbtbFwKpaFhFO0pqfTT\ng+Nac0MHki6Heb8aFmWBVUGDGXqgsCo2FO7II+XfsxWWwjMVSuBA0i8qFMpYUc12XV2XY6mwSM7H\n83VV0vPL5z9X7nugwEKKW6Vnls/fK+mTyr3fVPpLBEjlnhtKK+d+STcKIa7NLN76cz6rZvreYFOb\n87AswJP8eATqi4BL+RkzWAjMZSZtZjqFlK4D8+T1aFAy/U2wS1fon6Y4r4C5h5eJ1tFvNiPuh/Ly\n+h+8p0eRcK0ppPVEojFnToFAFe5OyrJGYfr5C94ci0BZPFq2M8dNGMhMcSZvYCJCu0yIlHR63J9/\npT8hiWjJYZ1ILI9FUUDgLjNNdVmPCh8c64ldDevJd6JN7Wuz3avhxprFWc5R8cI883GEORuwg2GA\npc2RQlk8s3x+VbH7X1NYHACn8DjuLf9giD6oVBYfrbBg3qRQCDft377Cenhf+X2pUEz/QlFK+5kK\nJbBUuCo/Wr73UPn8PoUSmSuOJRtK+ocKl2eoZK5ulOsKwW39Zrxf894Yi+UgrJL5eKRxOxfVzWfj\nabES57rS7gjmMVwRj07kphBykrkn3QggzRnEca9R3dCQOyeEcR0Jcfzdq4159m43ByddXf65i+Xl\nBbB22HjZ+P5L6+dO2plTIN482QdOiMQp9OO6GN2/9fAUO0rWrlwWgy9Rar8WzQ05h3vPlYl8kvTH\n9QtVuWD19MNiAGBd1P5QF7Vb3SEEil0qw7fBaHxssF3vmYVohtq8eaQbV9c121jT0VZQ1FeFGbqC\no7FUhlrhYrxDoTg2FIrhhkKpXFDS0x9UuhCtYrHvS/plxWJ+mcLlgJk6LtdfVro6ME9fIOkzJf2K\nQpHMJb1KoSRgpj6oUCT3l++9t/Tjc8ozrinrkCzLd4riOtoqYemnx7tQDGnz5lGluEMsA9t4ZHCv\nWQHJNM7IX9ca8OhaMpQzczePYph0uBmEU7k3PJS0Ebq5Wc4uZcEjr1im7j6hQvpKhGr8BA4cM/Pg\nhHR6ZPN225lTICxYQEMSl6Tu2Z/s4v0YtisTmh8FgFuDOwGRxxe9JFvo6SM+qsua6FCk+3toVeoi\n3+6zYkVJlNifd8zPpd2LO2ZC1qzwPuaazme653pU5rp0PdLz129kJEIXAjzVbykXN8lwv6JY3B+r\nUBwHigX6sPLknstKywAi2ScqrIQtSW9XRE8eL995p6Tvk/SNkl6tsBq+X6Gk4Ia8pfz7+PK81yuU\n0jVJP6Ekqr1N6bbcq3CdiBT9qKTfjD7fulD6uKESgSp9XyqKHF2PcoxXbsTh4YNlLFCidGAdfqgU\nc3lee3XDScxkpozItJ0SE5JMRhLP6Ne2ZR69TITnRSGPS/suoGwGBea1Jq6DujwvyWOJw0B79zye\nVIjDGhp+IgrkzPFAPHKytIXUr5HAtR4Hd7+SQXF/1YsYe/VrJjYjKcvqz4LDkHoNX2BSBM35Gw7O\neSVsMJBwRVJh4NpgRnu5Qt59T5uaDsJNunhwpMcvn9N4vtDRRqkvOo7M2tVWUSLXFbs5JLCHFIDn\nsxQKgLwWQM8txaJ9h8ISkRIsfYPqrr/zZdLl1yosl8vxXD1doZCIjvATDsmRpBeXPrxW0tcplMZn\nlGteqnCJPqHcd65QdM9Whm/nCiUmSTelc+uq4eNlGYNbG9K5YV7fHEVJACqaUf19YUd3sjgPNe2E\n+x0r8ZynR3VFuKDJKZkXBTAX7uyhuoeDhUWRh5yHzI00MbfEQXfkhFeHj5L1gLMuCN9P4JXEzEHl\nSMU6yXXDZ77BPaUwkDxCIbQmfhuD4CFTD42iieGFgK47OcsXrpeQ6yfoZa7EsoK4sxJjYQLIgkRQ\n3AyO4sbzqjw4wpD/YzmRoOcRIt7LSynONNH2wU3NNqKQ8WB5nMlx8wjXNjuKHf+qQnkcKRbuLysW\n3G8pXIwLCiVzvfwf5ugFhdJ4rqQfUizktyiIYvdJl9+sUBq/Ur5L4tzD6ibPLRUWwrJ8/isKBfD3\ny/NeKv3SF5Zr/pbCnbmqwFUeUgCv55V8FELEgK8PKiwgqO4KvOdoI/6tSqW0zZu3tHHzWJP9yAea\n7N+qGEV/vMGsFhp3Cld7qUs/FlKSruhRkSW7LMpDSuKib2icz5tn9bad+qluxZIXdZqlwmFlnn6x\n0Ki6LQ7qo9yw5KWwlpB1+Ey+Pu6knTkF4uFLP/jaORnxWSqDmSZ1QDa1X/EFrIkEQ2PwPWRHPJ3P\nMAH7DQwGTd93XbJg7lKuCMBO/P9JQEonyC2lTYX5TQr6xXZXuxtbGiyP1Q4HWi+V0tcPpKNLhXV6\nQ2EZYF1cUyzqz1CGTLfK51sKpfLTSivkGQo34qcUSuN+Sd+gcFMIu64rLI5x+QzGKpZLyVup1seF\ncq+Ncv2BpDdJH/Oz5XsvVii2H1UokqcrlMg/VNLm36m0aB5UWCaEfKXq1qzfKAWcj+L/zU6URjw3\nlw6urlU58t3bzfrEtKbV3ejL3BU9Whej8zqk7rktRGGQBawaNpJ0V4cnvsu8YxlgtaA4gs4+7WAm\nbpW4W9234J1aAF7SP2vodtuZUyBS0oT5He3dZ/LhyxLXRiMzIGAmaGx2E6fA4/OSO+Dl7xfF8vAQ\nXPqVoODzCpY6sk0s3yeIdyIC45aPx/tdEKbtTJP9qMS1WD+nC4/c0hEcj2EsnOaatLq/PHipjIg8\nQ4kjvFux69+rUBQ7CiXxCYpoyTcqFudLlcphLul5Sj7GTWntJd+mb39JEy4PWbrvVmAjDyuwi3dK\nq+9v1Py5/1lvfbky9f9AAcBeL9c+o/TheeWZf0/BQ/lEZS4M1Pbnl+tvKIDZf13erdRw1aAoj43g\ng6wuZ3h7Ph5pd+t8PV+GfKd720dqqNwViSsNB9sfK0RCLzmZXJ7u+byO3WVEBtd4WWUJWSO87OU1\n3UJKa3dYFYYrDZ7LeTD0IUQirGOUkq8vAP07bWdOgbg2zCpSQ3t5sI1DeeSDRe3hsFZ5JohPLr6s\nA1CE+RIw8/J1xM8nVfjOa6+aqxmGHVbk3Qvweg4CP0nS8nTtfiRgrpFGR7e0uxWMRijahHCbA8VC\nv5rlCvUeJSfjpjJEKoWF8nZlwtwPKXbz50n6ZsXCfkSxUIvSWHvJ10tvlPQvpOYXVvpn+kq9+utW\n4epAX99SKCKsnOdKzWestPqGr9WLm5XW3nQsvVc6fk2j9/81hbIgs3ddYXVcju9VRuyl0u/vUVpO\nDyp5Jy9WWC7vKe92EBGYcwdRjHk5iDEZz6O6+3Q+03Iw0NWbN6p7KEXRn8iZSWukb3ngakAYBASn\nwpwfyI1semV2ZC2jbV3MgbAvz4WXwiKfalaVnD/Hizmj+LLKGgplWpWGM7o9QvOUqolK4/AlKpR5\neUFJNRdAIu092afgEXw+VFstBPgfffYeaLhnymY9y0GN+kAZ3tdmBweJfizr7uS0d6kLVjlHwH8S\nmkYJ3XvwgTgCspxlO55LN+6Ls1IOttakI+nW1SCNrd9QuAOEPc8rFveD5SXvU+aWPNc+f75iAePK\nlEzYv/tZjfQeafWiByIc+0Jp9WcbfdpXrLT2t/6evusVTVgMJNpRBuARafX1jb7+5Y1+8Wul1QON\njv/smvRMae1zVnrGXzyWbkjNSx6N510vfdpRKLItBbD6/Qpy2X2KSA+U+7crSWVfobCeHonvbTxc\njqZ4PKyQ9fdF1zZ2wvULUFV1w3h0cFlXFRXMgqeTRX36kTwP+UrdBRr/T46Hh1qxkKWTbo8rg3Bv\nR5Xk5fIJcxqZysJISVHwPmHV4rbANnVrSkrrqp8RfDvtzCkQj4s7c2+uBL2c/+H+KwoDsw8hwGXx\n3R6qvNdiSEWQ30MpuDB52K8fevVJcgvDyXHE+VsFldrrVEK1HqityWEQo/a2zunS9SMdbK3FmSyc\n+AbI+JC6pLEbCoVwVcHluKAMwR5Ieo2yCFDhdbz15Y300+E56JK0+vONfuYbGx1/TVPzYY6vfoW+\n/HWr+P5zlPyP+yR9pNS8eqXXvWalF/7p8vyl9PZXNNr5R9LxR69FP5pz0nul5uX/KnNthgqL6FsU\n5z5dU7grzy6/f2y538+Va69L+hJ7n63CTj0KK+TW00pYu41wbjscaGfjkq7Mdyr2xQZB6v5Uh9rW\nrijQw67uVfeRmz7BEJ4F1/U5JZlftayWiAcDAFtPC/eOFEds7pd+wmeKDOFJp78oBC9URekB3Hxc\nmkj6fIpZIK3iSAeS2kjDzpyCbl3I03YG/x06+MljGLrV3RlcfoeteNrpXSDplB0Eo+EZV/VIJYXB\npHWFmD7poLBWyQAOYRi3c+2OA10fz+NYxwuP3ErlcaAELSnQ8wKl8iCvBB7IvZJ+WGGl4HrgSjxd\nWvvkb5PeJf22JH2G9KnfsNL3/o1GGkqf+jkrrX3dKpTE5yjcnfskvVPaean03X9ReuvLpR9/iaS/\npLBEnq1Y3PdL2pJe8HUrXX6xIsz6V39Tq+/YClfpaS+UHpR+7c+Ud7lfoSz+lBIQfoYyU/j55f5g\nOw8qgNrCA5HKkRHzSKw7uio9ft+5mr080UztMKw7n2/mDNKXExCXGtQjM1Hy3oi0gYH5OSu56VH/\nI8FyAFbari5WOe9SDLrlMfuyTgQINIfNj2Q+6p3EM7Zt3QyLG/aUskCWNdQmpbKgOXgkJc7BZLjp\n6d9LTZ8V0gm1YiV4zYTMWMyQMeEvsBOOM+wCZ11rxhUaLgpC4XU7JVXBnepQ80EKy+goTHBOuNdB\nuC4iAnNNgUFQOf2aqlkvlc9+QgFcfrIitCoF/vBuST8lrT7k1dJzpC/4lpW+91XxnVe8dBXf/Yy4\n/IGXK1yIglO849ule84d68v/+kov/j9X+uzPXmnt3HFgE4SKv1P67lcoIiwvlXRZWr34wyVJzav+\npVZf30hb0kevvkdvfMlaPeqB95RXele554vt7+sKN2Zd1Z3iZDtS/C+8NwowB/nuSLNBHHfB3JDS\nvqMrdT5QHmS35rnI47oBIQ9gdURHUCaAqwvl8Q5Ys1AUsqrdXJSAcJyCTQauCJaI1FUcWK64Pu6u\ng/EQgUTuwVlOI759sO3MKRAPv/bDYVGa7nxNaaZta7cyRD3jleZlAhlU8BSvAzFR1C/FB2WwpSxN\nKPmBUsNOP9D0p0VWeBYKkbKNtDRhu5YOZ8Be2Lml0dGxNnaO9fizzmnYlmS5a4pd+0ElpnBd4VpQ\ntPht5d+rFaHb55Zrv0yR3v+zjVbf1OgbXtVIl6VXfJpCcXya9BtfqFA475Ne975DrX6picX6TOn5\nb5COf3BNqz/YaPVQo9ULGx1/05r0BQrMYin923+3pq9443Es7rcrFNkXxPNXz/+T0lL6ga+U2je8\nUv9D80MRPXpYYWVQ/2OsPHICVi3lEwFxH4l3W39fiU5dj0TC6cGxVlcDE5HiXN5WA+1unRdJj5Sv\nZh6YS1cUKUt5Hen0jmnhUrhssAFxYBXWQL98ppS4BJgftUqyGvzwRKa20wFwz+O5YfnmUZjDE257\n/0jX221nToGQ/8LL+qJlIHKBdmPv3XJwbV2oAFv9OLiDT+AmWVchz3whC3ipQVUqfQCUn/jLgG6P\nabsqHIoEOZ7D7uP9YRykqPt5bh5A6bmSLHfh4YjGNO9SLLZ3KRZTOexJL1Bm2b5DwaV4vcLNuU9S\nK33vJ0sPPNRInyA1L1lJO9LfeOkq7vMl0ptfIemm9BHft4qFfL+0+sGJmuevtPbxx9r+rN/RO7+o\nkX5WsehvKKyFt0m/+pWNPvmVP6m1v/IB/dG/dqzjnbV47rq09pYAUf/JyxV5MRvS5/0hafV6afWP\n/0JYG78kDV7yjzPjFxo+RLmhgpiGW/O8eCe9LMajKTT9x+8/p+Yozv6dHhzrYCvyZEaKqMz04Kjj\nTvTDsCz8aYm2uWy53BBhyUhJ91AzP7Aq8blloQ5MOlaAFwFCEaAwPDvYsbeJ4Wbcx6n4aTXNKy43\nsJ9PpJ05BcKujJklqWMxSFmgdqRFpwZqYiNZmg78BN4FYVTYpRHGyyS9jK1HqDf83v0ahaH5BIKx\npLLjVHgmKWt44PM6FsJ07mmzpKKHyTpu59rd2NLRRuZ83Li6nufTYmlcVlghQwWg+RPqnt3yNYpF\nWKqF/chnNXql9vXA96701i9ULMB1Bb7xrXHfP/fWlXQkrY4aqZVe+6WvCwtC0v/+0Wu6+QUfov+w\nUgCiKK5SLey3V43mx+s6fv490rq0+tFGr/ri/0W6JB1/85p0Tfoi7cX1b5f0eqnZsj5/ovSe5ou0\n9sk/FErpOQolRa7O/Qol+W6FZfJ2hTIhe7iwYi88cktHW2GFPHrpfD0ofKA4hGu2sV7rhfQjY17V\n3yMdvtiRE0+OdJwiDyib13sS0Uv3Yk+E+vvWLBYOsu/Zu0k36Fo5yNysWEG4RH2OEs/wd76TduYU\nCNW+0JogxwCUWX06Ft5hD0GmiBDNdwivDEV4K/Mc0iRNfGUoaM9+r1GxMCTViYrfp9Vq6puZFLXp\nYy4I71QzXdaj2htvVuEYHd3S9kFUGh8sgyR16aGjqML1LsVCeki5eK4pOR/PLT8/1q65V/rxT270\nuc891vEbz+vHX9HoT//9ct0laedzJF2VVq9vtPpPEcb97C99o3RB+l/X/roWP9dIV6WXfYO0+thG\nn/stqyxnSMbss6VPe8Oxfv7vfEooJEkP/JtGf3Ttq6S59NaveqE0lto3bOr49Y10v7T26d8kfZWy\n+PI/ke7/Dum7mpfq8b+oUE5PL/28Ud7x+YqI07MUiudIiYO8OfpzqyTczcdRM/Vga02P33tO04Oo\n+XioqZaDXERwgeBbuPWAO+DziksBuZDM7H5KP9ceKg9Y39ReDfGHrGVlMRZ2ViUbFxwm5dPpA8gS\nCmtUZM0LGNGovAY14om2M6dA0JrpyqRJieuAtp9rVMKgi6rBAZYGinJ1DppmJqwnvGXegJRuhtce\ncT8xCWjE2Be2w2TdVD+ouW8muyJK5cjpdJN6LEE7jOl5ZOOecF8kHV0t5Quhcl9QLLzzimjFMxQg\n41uU/I7Lku6T3vxJ0mdvH2v12kbf+/JG//03r7Lq+bulK9+ykj5Dar5ipR/8kj8v3Sf9+DNeJt2Q\njt841ujVK+m6dOWr3qePeM07tfqeJiyDa8pK6tel1d9r9Clf8yat/Xycv/u6v3Osz3tdPOZTmq+W\nDqS3fP4f19qXrKJeq16l4y9sakRIf1na+SvSl/2AdOHzFQqBDfR5kr6zfCYFpvM8SUPp1vPjXVev\nUigTaxceuaX5eFSPu8hzVIaiFCAcnCw4vKgL2D+bFCsENwFXA1l0LMtdW37Oq8SOa2UyXCU2IEhf\nzoRO3GJSf3fLg/6AAaIsnH/iWeHBO+niibfbzlxN1O9afX79P2Qu18xkQjq13atZuynYxxWkzML1\n+0mq95KSiwIe4v4oaLdn4vJ7H2Td1mNVENhV+uUQsWSGarXZ7mk+CATl6s0baofSYv2cJvsh9PWI\nhoeVZQKXikV8SQGUXlWlk1d2qaSHPkl6XI0+6g0r/cwXSp/6vcoCPVtS8/dXWv2VRnqb9PYfbvTY\naqVPfbUCu9iR1t54rH/znwd6wRevpDdLx5fWNPiWVs3XrnTtVwe692nSb/yO9NzPP9ZHveHt+rW1\n/1bHf+Ye6cOltW99p5rVPWq/4cMkSatflppW+oWfXNOf+JvHwVz9kJVW/6zJXJvHFdGVT1Aoj6cr\nK7N/pDIB8KcVLs5YqTTINH5O1E1tC+X/6FKM52DZauPmsW5cXa9JbcxBfD1BcOZ+U3va1cVqHe7q\nYrU8iKw4DuELmyhh3GPb3OTWNq6s0+Hyz/PoD/IZWb+hMAgq9JUKG5kfv9qXQ1jRr2m++45qop45\nBfIdqy+ui1dSfUFIMU4G+90aE+kKhMmWVMOvrkCkrsLBMnFl1H+uA2oeeiNc1gXe8nAiBIkEvNN2\nrOl8po3rxzq4GgDgfBwWyejoWOfepFhoOwpF8pBioT+sWFy/WT7nnBeAyLHCMnmpks15IH3rlzX6\nn35wpbXPe7eOv/q5av7BSqsHmlAc42O1/2ig5nkrffqP/Jj+t8Hn6MO/vIR3IamRN0MRI6IlQ+lf\nfmujf97+LX3Ln/mbWt1s9Av/ZqVPeCD+1sxWWo0avf8B6UN/QGp+Y6XVViN9mFKJSFp9e6PmT68C\n9+BMXSJPn1Weu648DsKOqLg1ziMumpthwUlEY4a6cmNf87F0beNDYtx1WHdlEusOS46UF9ZGjrAa\nKUbFXFMNDRcbK2dT+7quq1WJ+GaCnCFrfcXGQd1OLXDA1kteINvObOZ+9A2F1Wp4x0WVz5wC+Qer\nl53QxgwIPzMmntWs+5PA4vRjJL2aOoIhqWpqz7btWxVOWuuXH3RAVFINAXOmKs/gEMJM987auDPm\nJAAAIABJREFUnF6LZHpwpNlGbKfj+UIb14612pIevXRe97xnP7NhKT94VWFxPFOxI5M1Cy7wFQo3\n5kuU5KyhpBvSz3xZo0/9wZWe9rn/Ub/zt/9gUMhfKemnpN98W6MPf/FK9/zzh/WBv/qMPIXuprT2\nD/6jpP+gL2vfrT82eI0+c6PRjx5I19pX6/zg2/WVq29U+8qvzuMcWmmtPdbxYE1rP3is47+0Jj1N\nWn1fo+YLVhp8bav2uwdq/v1Kq49okgD3LkWk6I0r6Ye/Vau3v4ZBl/6cpG8r7/NT5T13JD1DWj1Y\nojEvjOMsFutraoclTf/mLc021iI9oJ1rNghCIIqCc2Lc8kRuqMWbbuhcO7pSox2Laq1sdzYb34D6\nDFVJHVcGZUM9mJHm2tdmibYsO9dKUejqinZ6Mp3Wefahe7oBG9qjuqzXNt/51FAg37H6YklZkcmz\nWfsmWXw26rgaJy2EkyXss8pUHgfoAgGO4d/1Yxz6obwskhwTflmPdkJuWFDsYv1+bWq/CkyrSPga\nttLeVhxRQPFkSWrepgBIIVlR0PhhhdJ4t6L6VwnjPvIC6Wn6OR3/00+MnJLnqNYlbf7VSquvbfTl\nr3y9vutvvKYm36197cM6/svP0Ae+a033fN5xLOa5tPZ3f0wft7ysd/zNP5l1Oh6U1t70bdL/y925\nh9dRVvv/MzM72Ul20qRJaSXSatEqV0HAAyqeoihqVfAGCFIFD3BAlIug3AQKchcQylVEwAOKIKCA\nIKAIHEBB4VjlpvZIocVIS9MmTXaSneyZ+f2x3u+8797g7xzr8/s9fZjnyZNk79kzs2fed71rfdd3\nfRcH8ic6mbcPFm60AROQPRYTPZkRLcQ+8wjEp2dk34u5+Fr48hlYmDUTkhOvJv3BF4jac7KTIqJz\ngCMhWvoQ+W3vMYLaTu7734sR3KTiLmOpvr0p5DO9antleQY1WLNVG13DE4x02++0BCOVThLqDd5F\nWPAWLgTaJ3z+zSGPxoPo5iGPJMTD9FtGJczywStbmIS/mxewtOEcSXFdmhuD9BWgrWAALZIjdL12\nDMhl+ecbblSIdQiVFrDUHMbIIIQ6kJq8zQ9KxqjZ8DQWOPmyZ7DB4wWPGrUXwhqY0LqrL2vz+1od\nZrGKBOud28eguaBpSvvoFIPd3bxuYJgpl8Ztk/DwMGYIhIU8iWUj7nPvCUdQ24YUbj8Wdv93YAE8\ntge8sy0juzomuikjf7ulVpkD8fsysu/GxL/KyD4Q23F+CR9/7Af85Ox9YQnkp0VwAkTzc+/NhApn\nNcgfjDj8p2dz8ReOhTkw75Q/sPR9bys8o3svi9jtKznJ8ynpOxP+ckzMm87LjLeyO3AuPPYU7HiL\n7c8a4AV3Az+CGYsEOADDeiQoXcXCGxmUu4DDrPiwdSIrPJGu4SnW9rZ5Iz48wUD3RsHE9qGJnlkH\n40XlrUKWcCFS5lDKdwpZLJtjfzdnDdfS0wB+hmMx7GLnhYUaC/LUO8jeayTDhTiIvkMIzmrc1ii/\ndkKYC/ODC3ewOYwBaSc0NvfpCDIvzZWUYZWuQhJNcJ2jHBgRFVnp+GELCd9pvZGAE/IExBrUwAw9\nGPCIvbgnk5SZyUpTX3cgaoGq18YK9bFaGdqWGSjY8jdsYi/HsI8lWCZiKWZYXFuEn+0CC3iJ/CaL\n7wtjI6Vz18h69bERMy7KiUoZ+e9iku1S0hcSKEG2VUz8uNXeRFFGvpFL3EnjYwKvmi6dVfFU7MHx\noeN/zN1f/gRU4KazPsZeh99hUgEnVsnOqZBcuor0jJlEv8vJ+yN4B4XuaZGifgF4DyQLHyTdfb6F\nK8vc9x7Giy3PtO9OBQOXXV3Q1GYWxnRUM8YqZkwABru7i2dXTq0NhLKAzfiGvNiw4ZfGmULT5tDF\nU+I7ivEk/EvPP2wyFYY44VhVVzwtrqNuTIZb+DmFQfq/eT6FhiQlWW8QdYNL44bFaZrIzQQuNXCC\nxp62et+O41tMKpQIU2l1fIm+9lcqLSR+CbDScUKsJZSW03WFq4Yk8lQjI7JZWAMT9o8ZSywmn7Vm\n2K7BdZ8f6W6hzRXMtSzFN4lqw9KZ3Zh7fwOeyl61TEv+ndfxwF6YypfL2MRH/id0Q7w0Izrm98w4\nP2fFlyLypTHxlVea8ahDTkS8LOOYs75hhLCNYt9P93HzVr5z9n7E12YcfuHZxN+9k3yLiHi7zIza\nMqAGd3/9E9ANZ551FHudegfJLSm0QXZVhR9f/CHSr82EYcjfH5EsfpIP7fdjywyty7nxk1jY8ibg\nLkjPm1+kbdkR80IW4wvspFyW4ht4u0xMZSCzPjlYod1Qdyd9w3avx2hnJOkq2MZa6UPxZTFItZAo\nTBA/JEUtJF+ZEWlejDQOw/EStnUI+SBjDswNhYVCHVdt+px95pUVtmFRnjymJDjP+mwbnAdyZb4f\nQAFIaeKHANOrSduDXwUa8YlagaYrbBD5x9zKkQKVBooVxxsEr/UhqUHff8NLLobeiVYoubIC1sDc\nSIF0Ii6FBVBh+DJrzTADvb20MslGS0Yt1lezaa3QysCIWPas/T+4K8xIc/JbI98i8gpYcW/E7B/k\nxJ9dTrZojs+m3ACV+1+mevpGUIdrL9ib/Y+/kYXnXMl15x5s3sVy+Pm1ER+Mfky25cd902thMQJZ\nXYPthS9cyXWbHGwKY66d5a2L4JPHQ/SHnPxNVu0bfyzju+8tccDlma+y/SFwOD6FW8X0XXeCwU9B\n3214DZI5mCE9zH3uM/iWFQBLYc2ebZRrAdBeSqglflVOKVFOawwk/cX48RkPwzN8wzNbfOQVCLiU\ncQj7s2hsNlZ5GyahZ65jhl6KjFN4PiUQ9LnJYo6MFx6TmsubIRwtzqvjhSGRDBrAkdGVrxUPRA2r\n6wXeIAspt+zVUrgif2lrdi8BVLos4lgz9Rg8HT7EPlTCbdKHncEAKzec065DKVyPfre77IvcUcsi\n2UMPQzNVik62xSSkRHXoq66hZ9iMR64yfOENEi8exMDTOgWlve9LkF8R8cQn3XtlYDeY3Z9DDbIv\nzuFnp1hhXFTJSY5OzXgkcMdi2P+8G1n0zYjrTju4mLyHXPMtPrBtTvauj/PYU5D8Z8rFvziQeOeM\n+Pc/If5QxtxfP8ObH3qSn62A67Y7GMrwnR9E5pFU4ZOLoOOrq8nfEREtftro7dfHHPCujPxjEcyF\n6NgHzOMoQ/REzvAnKZi0PAJ9n4XoIzcbmLoDFrYdYt+bA91+kgBwhrb3jxMuHe5kE5IONloxWnT6\nC1P8qlLVuBDpSmNHrUiBQgpTnkuC6cSE9U6hN2DH6yyeuephbOw1C/5IB1VVwCo09VISMliqBA63\nkBxp5/ZJiTCh8M9sG1xbByHeegBKWYnC3kj2enVDIpl7hRGy1kqtNjP7ml3BEHwSABaGP6/GCTGC\nkGekgtde1WBrDrcAutIRRhJ7f6jSXXy2qzrKyzM7mbFm1HrfPpIRKd4Hr861LQaeJtiqW8LkA6+L\niK/J2X4B5gE8CPkNEdElOVFrTrYk5sNX5MSHnk/+xYj4srPhdIgXjpFVOojGc/KzIwuXboV4fkb2\nwZjbl0QckT/NstdvQbpZAu+ELw9fBZsA3wO+j3kNM+Fv/9XDX+IhDnpfTnJ3Sro8gU/C2HdncMLJ\nJ5HXtiRZl5L2Jyz49i3c9bVPQQL5FbvAUkj2/Q35TRH8KwXX5PfnRmxzZ07+zk/beVSpewQWwj2K\nddFbDvkOEM2zplvRs1DfGHpXTUAVhuYmZpCDTY28EtKC8CXQfYSuIiStOc9D2IJWfAGTQIGR6Llr\nPIZMaBOS8rojvuguLYxLyMZu9m60+I07Vq3OZdfQSkiOlIHTWJTHEy6067P9jx5IFEVXR1G0Moqi\nJ4PXeqMo+nkURX+IouieKIp6gveOj6LomSiKnoyiaLfg9e2jKPpdFEVPR1F00d87n74Y+C8tS6ub\n7HMf/sv/N28q/lZj5HDToJCVV4GeZOSaXcywwXYI0jYfM8RLZNXDkEjn9K0iGhsD6TUr5Ksxfc2E\nNYWuufqLsjVLoo4xTLvx7vk8bKXdHJ/SBL5zCJTW/NSIWIdhNPe7IFlRtwn6hYhvPYIZnfxzxJdd\nRLboOFgF2REdXL4oIu+M7Hj3Qvz0ErLHYjgEpgPLNt/CJu4K+xlcCstWwDMrYNkyWDcIUzWYMX2I\n90TXk10Zk26RcMozsQkaVeHME7/B4LmQvpRAFe466VMk59e56uzP2ni5IOfFaCcLcR7OOHcPYEfY\n5rYchuFbh2Dh21LMu/kShgP1YX18h12ri6Wuxaf6zDiAtac2xMrebtMGoY568ojKLozMh5eTDZ4H\n+BIHT4m3Ghovn9koieibPtWL0DksbehhbUN2MeQwNWN7Io+Jkdq8AL7a4qpx53V+Gwvy1mf734Qw\n1wAfanrtVODOPM/fBvzM/U8URdtj3MCt3We+HUVRS3CcL+R5viXwhiiKPvFqJ/NK5lbIprhNE1wT\nO7xprUwyl+cxgKm1cOlUGAVewV29PMCnU+XGeUPg21mqmVQzUS1Mrem6w6rL8D31OA03eUe1RLG1\nM35lcznHKjHl2qT1f53ADEWvY1KKXaoWlJIknAmU4aCPQXbeR3hiIaYvWgbOgOw7CfkFERwNX7kk\nhz9CdvRG/C4/EoD4xQx2gkP/NS8wj8W/isg+sC3xWRmcBu/ZKi8yLn9YCg8MwMUpvInT2ZLT+R4R\nl9fgF8Pw/DBUO/Zj4M0Z0Xk5p26XwX9TUO/79gY2hfiCG6AC+TsjDjzq+zAI+ZURG1+cwSpIJxK+\n9h3M4/gj8CAMERMvvNCMaAWvpzoX89LejeEpfRjGs8QYqXmbVTQn9YxWatRopWt4wj1Xr+FRcguO\nwpOwz4/etyrsdlRIF4bEIRan4jb1p1VhnPYDn7L148+HIwrlVeCn8Erhvj9/I3BbajAqpWKchaFR\nM/fkH93+RwOS5/lDwNqmlxdgWt1g3MWPuL8/Avwwz/M0z/O/Ak8DO0ZRNAeI8zz/3at8pmHzMmtj\nBUagia9Nrpws6gidQZznY9FQjTocGOpM7kFVr6ruXUvvwYSl0KHvY2pkXnIg1HIAgXC1YgD51LKt\nVLaidRagLRipqcwkHdWMpJ6xbpbZ33wO0GZVuQXvQsI7v8QmSeremw/Mg+37KUhl1X1NLCg+LyP6\nlgHn7zrvPt517n1sc7IVtWUzYqKHctMhrUD8XMbhH85J7k9Z8oG4KNn/wyq4ZRVsy/m8mH2KU6Mz\nODkb4Qfpbzgw6+U4JlnANdwB/KYKvRV46kMR8eMpJBB9d7EBoG+BeJuM7Ph9DJd5bwKPwLXH7w3D\ncOqXIP5SRvRBB/Q73GfRt+HU6zKyrx5Z1LxQx1pGpJgYcw0DeXsxYHmpFSGOVWJKaWptMbHK6JHu\ntkK6MmQ2t7tsn1/IWgtjoh7KId8HKMatAFiNllCVTBKJfiykxVhsFl6GxtocSUdofIlnEiYOxlzV\nbzgWBZrK02o0Lv8PQ5i/s22U5/kgQJ7nq/F49+uBF4P9XsSi49dj6462v7rXX7F5wVlfp6Iv3IxZ\ntDtLrPSVUq4KSXQs/a1Nlb0Ck2SxQxAqZCUCBXgbAq4yZGpLGeqReEr8K5siK5724kOTSKO1qzpa\nGKy2YdfKQUhVxYkKqRtcN77x0yBmTJZDfMw1luK9EJtEJ0DnOzMLX46JuO0lU3Q/N9qVRxa/H6bB\nz4/fGTaFvN0kBvklZP8dw1LYb+LbvG1HO+djK+DnwNXZzUwb34eF+94MR5zAqaedzb5n3cbsE1bT\nNbqW7Gtf4Gju5wEiHqnCDIADIlgGS/IjbDS0Qfb9GLrh3NOAMuTfinhXchN0wm7E5JkBvclB/2E+\n7HxYdAUWfr3B3ZdhfO0P+MpdGdRuYCdocSncWlIu2mDIs1QPYo1BPSsV0mlfLRgCNuvOW5C3OkYH\no3S9apo1lNHUeJAkps+31AvAVGljrymTFl5KI0g/Xhi85o6L6kog/E2ekbKc+i7ru21wIGqp+HLl\nInUV1gSERUuj+C5x2hrTvZ5aHHoKISU+zOnr8x4sa6YhN5LIwjSyCeJ6ISPFuO0ulSvWa9hDJARy\ni3RhWwul1DIweZsr6V+VEQksFHlrAHPbl2Aeh8r7bwDY1fdWcZTz/BlXer8n7P4JY5DufBjwsxx2\ngD2Gf0L1vo2IdrXwJf7Zb8k++g7ilzOyD8cwDC8OwH8Bx5yVW6D6ZuBL8Lp3P8dcnmc1fSz90zaM\nXDKTeCzjLBKO507OZgFvBmq3xixfF7PN/Iz4kxnZk7FlUZ6EjaIY2jKe+FfY4XDDOd55YUY+HEEZ\nsh8uZPFnPsfhR+P5HddiwfMa9z1vCO7Jbni+jFTjn4V004RyWiMtxajuCEwyoZxM0lMbYqjcwwhl\nRulqWKmVXQsVvrT59GhKH4NBmlbV3OXCOITetX02FCzynir4vi4aVx2MMUB/EcYABYhqSQbPri7R\nSH0IeSWG+7yy48A/uq2vAXk5iqIZeZ6vjqJoI/zwfREv/QLmZaz4O6+Hnkqx3bLomeLvN+/Sz3a7\nKIUWKpJ5lfQQkBRNWGXO2ppL+DWBNSBC6jn4HiBhE2VzLSeD89ULIxdiJeHKE/aC8Qh6vQBlZWCE\npwzRQ1cySkKdandaEMlwWiAMY6vrLAwgbcMmx7bY6jsXbvwx/JY5xgupYeHIgfZefn5EtDCHfrj+\ngIj99ncVrnUY+9YMou1y8koEAxA9tzX8G/DYoIUGmNt4R3oL7G3n7D7uJbYvP04/fwNga57k7W9d\nwvPHvpHfnD+f429MYQ0cd+jZvJnjaBmGR9OPMGfLO4i+lluoMRc+9R/Xc/OShVCFHb5oSmjchVUN\nu/YN2UUx0T7BQ00gJiN7ynrOsALf0nMUzxHZ1u1foxCZVoOuMoYxVfviYjLXyn6idRbl9xTZklDZ\nP6zmlufr+SHjjNBJK82d7OTt+jpwG5Med/NZyMYaGLWN8CF6I+aRYm1CQkGtMIUbeuF/fuAl/vTA\nKiIy6rSwvtv6hjB3YQqUuN93Ba/vHUVRKYqiTbBM/W/yPF8BZFEUvd3t99ngMw3bRxe9nY8uejsf\nXrQD2+1iiHcYnoSisAKbdAM7GXEsz9Yglq0VQKyFNuUiDoVGWbfwZoN3Oe01dUavFZZfrqAM18ZO\nFlzHlIiu8I7GjE6dmYXmoG1lJl37xTJpKWGyraWoIC1StCoWw/1WD9l+oGr2ZPsdMZTJLrwQUY4v\nybj9ROMKPZR/i0e/F1kosByowDZn/rrAOdLPtPH4LyOyTYxYxjr4BXD3rz8BJWg7cg1blJ9hOkMM\n0scTbM9/8yZ6GOI9PETvkX+F30FWj4E34vpg05n8lBf/CFPDpYKEdmuyGdGeDudwOq7xVoHxXAXR\ngQ6bSSmYpvnOkbFQRaTbCS8uPYBnptYpUra1pExaimmrwlDZh6mWhm0vQgR5u0AxnpSZ0VjwuEUr\nUvJXNm2SUHqiXoTMGhtiU4eeQg9rkYZvOOG9irr3eMNwXpu8Z4XJusZQElTh8Vt2eR0LFm3Hbot2\n5IOL3sH6bv+bNO4NwK+At0ZRtCKKogOAU4CPRFH0B+DDwMkAeZ4/geH+fwDuBv49z3OVkh4AXB1F\n0dPA8jzPb32184UgqOjBArCU1w5FeTQhZXmVMdGqnlIquCR6aJJz8wQe23960JldgyUETT1a0VqE\nR5OYKlqdBLVlaABFncK7Yl2BtDJkeq2UujR10kFXbYT2UWtF0DU8ZSuq6jvU90UNrZ36uRpdvx5g\ndws3cs3akv1ss+uj7MHLUINn2ILd0+ctTfr9k6ECS972LqOsP27l9Ns/ixXpAX8YgK9zP/n1EewM\nb+t+koSUWx7Zj7sO+BTn8lXue8fHuPKJI1jJLBYkd8Em8LrDlgF7czBn81dgxyRnDvcQ9+cWakxA\n9tF3+B4vWDYoPTkx47YKMxLSL5GA0iBwIZz7V/f9pAt7r/u9yu6Hwr7je0+BbifaPWGVua1MMlWh\nqIvpYpSu2kjhIYTVrHqeoXq7VVKPFJ5tM2gfAvfKmOg9UeBFMhQoL/DfV92WCg83xGZCGkOYIdSc\n6XPCsGETM431EIcRlri+2/8mC7NPnuf9eZ635nk+O8/za/I8X5Pn+QfyPH9bnue75Xk+FOx/Zp7n\nW+R5vlWe5/cErz+R5/nb8zzfMs/zw//e+bz1rNPHYAEo6cvL44BGjYXmh6YHok0AV+jBhP1rhVzL\n8MjBVMPtkJmowSNQVcMmdGctR++NhnqRSttB+0jhzGjV1kw7qWeFiPJYJW4UywEPEpbxaux99ve8\nbqDbsArSyHsrCWzPE7h3SPOElXe80d778SJz9+cDE/DIbwwHecdbHij0P2YBXLuLgbZbUVQZ379z\nxAXXHMrzzOXy336eH+0QM0ifgdCbwaoT3gAfh29wHADtbfDD7BLrgufaM0Sb5r5jXgk+s+pqoqOc\nR/IkJH+91AzINHcPHGB8HgnHcbrt5743W7t9RvGq7VVocc+mlKZ2b6seiExLvr1pWkoIVfU1+TSe\nlPYX30NjTECnFpVw4RH2JfC+OTwJOUKmcNYepFrtJySAqTRCqdxwLsirkZ5J8yaDYl6xbzC1vtsG\nR2UPN48ZeBl7Pejm1g4hPVhUdVlWD2L51g0WenQUq0NYEq2cuZeq83L/oSaq3tNjltYl+FaEWl08\n18TjLHbdXcVxANpHp1zoEjPe2UJHNSsEeYoQBny3+xK+MrYGLa6p9hqA3twrppfg6qcOAz4ACWzC\ni55cdRKFghcVK6KjH367+y52XjWomuHO1QZv5Hl6GGKXY/zzGqGLT5+Q08cg2/I7299d3xQRckU/\nmNq6UofCOyq4LL2whj7rbOe+Z877/XcODSk5MN2MnH7kra1zf1eAfleQWbEQps31nGlnjFJqqfGQ\nIOZrXkrMYmUxsbscRV0qeQphgSA89q0eNJ4EboYZOLXCTEmK1GprgbX53tDg+SkhUKvQOUwa2L6e\nRR1mdkJ1M+/JeBLk+m4bnAFR2tX3GPXdvOQ5hH1WgMKw2OfTwjXUgxKzVCrsIYYBXqRWMofe3bP9\nG2Ph5vaCNtDkhYCPn8NVQ+dR5ihsyB16VCPdbbROTBXYx0h3iwcARWN3amKATZZgoXlmBVCGN0JR\neSqNDh4BWAcleEv0Jzgbm5RPfd9rhwA7/wvmDbwjL3CWKYCPLrUDu852M1hNdF5eXHuJlOjWnFnC\ndp6H6OM5/HCQb3BmUeU/vWUNTMCHd7Trz59zrNd++173nrwHT3x9CzNe28Jo5a2NcoWOWHcMy/kG\nh9l+EpDudL9FLEjtmHUSqFmJgAxQkZlLKZpre5V239hMY0WaIGH9krxYLXKqJNfWiJe1FuF5mN2T\nMfItTSYbgH8too39oL0HASBtVj2LMDNZCo6tueNJa43iRP/otsEZkJKLyWQIwjRnKLyiNgnhAwr7\nwYha3AyWiiMSpuDksuqBhd5C+NPOeDFgwrgxVIsHCsBW3yd80Lp+naOQLEjTAhuZbGuhdWKKpO4G\ngfAOieQoK9OGTRwojMs4wIOwdWId2pDITh34EyyhB2pwxl9P4oIb7P30o5+DCYh/udx6125r6utP\nLIoMYHVksFN4K9Hjhl08xo7MZgXz87s5+j2XcVT0GY7+2GXs8+zV9DPAs2wBT8FRbz8TeIDvcTzT\ngGeqEUPlTrJVkYUb3ZD85Hd2fU4oOrsx5h1POFJHP3QcgjeYbRhYCtCzCV92ymeUsEyU88AEKjMN\nqEBGUty3vGStQctpjcgtwOWaK6IMmk1JrStcpZs1SUMBqxBs1f/h6q/FUH+HE9eD7GOF0Qo9ZWVo\n7LrGGXU1Y7oGMNBeiQTwC6wqwEMulTojKhGxvtsGZ0C0ycqqa72saihnGPbgCOM+WVd1MleLQIUx\nwkLGCqvcWsS3qppV+bZCljC21TlksOrBQ2jGVwQAK5/fyQjtwSCR69o6MUVKiY50jHqSUHb2rXVi\nyvANAajgJ8ww1ohJnkli8+X7d0DfkcA0V529HKjBy4tjtvmadZq7enaFow+3v6MdDIM4Mb/cJnE/\nxCdm7LBjTnZnDAl0dMP7ycn2Nkzm97ftxDNswdb8gfMf+iKn5Xfy9TtOYAceZwWzueWFvaEHvpd9\nnlP4NHOBWd2w3YUR0+ZC5DSOqMEl6YXkd0W+sngBZAfEPsu0FeTXRQaQVrHQqwLRp3Omfc19/7mY\nZ7QDZmxEcUcZmAinxsBId4tJGSZdULdamdXlPnvOrpVGmMGYDFZtgeVhBnCIHlQi0ehdps4L9to0\n8gxCw6PfYUmDwmLV6WishL9X01eELwqzRukqxmlY7KfQSx51PfjcP9MfZoM1IKEbqGxJs+cQxn3m\nTo4WVlxpXS8PoCCoTh+rCzcxvIF64OJ3mDcyXjzM5k0W3Wok1ER5PFi5GmsNFPeGFHgFWCOVTr+f\n060wMNWYmkiisILveSupv6UUcf+8BbCQX5rYzocdEHkHcAPMuDS3rEoNDliUedWuEsS/zDht07Mt\nHOqG9LgEuqG0wq2+vZbGPfvUiOiiDO6Ge+/cg7v4CMt4Y2GEf8H7uXTwMFjSwn5f/A6DLb2cyim8\nESgl8NIR3dDvOt65MOOLH7qWiBy64ZbL7PwstOtUl7m5jz7D7VfhhZSAoetj46gsw+jsqhmacDdy\nljWXslDOgOFyzUr5NX7yNuOBKLOXlnyWzJ6P9HQbw4JQIkJVtc2au7ZYtRcLkN4LjYfGb6MURakp\nxCi56/X9i9QL2oc0jWGRRrvImOH1hdKG/+y2wRkQhRHeO7AbKU2G5s2nbL1LqYcqHCUsxbciqenF\nDQ6PKbarwCyh5+qN6sEuL2pk4VStqK8Rl0DXItcz7EQWqrF3ME5XbYRy6upjJqYYKztUvm5GhG5r\nT0AZcrnmW+Hp7E+43wlwBORMmNfiQNaxxyG+q2buyeMYg3MOcCusvLLLmJ7fjYmOzg0DU67XAAAg\nAElEQVQnKWFlt6sg2ysmHra056KZsD05ef5N2DWHIXjuoi255M6vcfojZ3L+Y1/nZ7d9kr6+1ey9\n+7VcHx8E/IJrOJV1QLL212zUs5ZsSUS8vX0vngPmQ/ybpyCBXafK5NcYnf7pQyLiRbbf8miI3d+N\nV6Svw7SLacy8SLh5PoUSWSkFlju8Y1MrVuxIxxiqdFNOa6zu7Sw0QpQNCye8jL4yF9LUkMcqSoC8\nEo1hPzYmG5qdNWf/QoqA6ARlB8Brknsukq/pkpBQeNxyMBcgCI+dlxTiJF6RrP7aCmGU91bhka8F\n8HUj2kzgpwsV1gmHkCehuDJEtr3eSLkwDL4H7khxDTr+qymXaQWRIpUv/a4FzI60GAwC5EKkX9cM\nMFbuYCTpMi5I3QaWYvORSidMuBqYNuz1OVhetYqRq/QaWNf7CxfY32cBS6HjEhigDWZBdMo40ePP\nQcl61v4m/xfLWHwXGIAtL3nc5ATfl7P7f90I74Y5z/zJztUP7++FhziOi/aMYb+fw1HLyL4SQw9w\nBkSDOS9tvSk3xu8HbuQy9qAXaAemT86mZTb8aigvMkBxZM22s9O3Mm5Gd42fvvA+ALbmzkKEObvu\nncY2+hEsOgi7ZrXxFGC6Az4rVcYIaM6IJtTJK9ZYqpaU6RseLhp2hVWwIS6xmj463ZgIyxRCrRB9\nLiR9CRTVeFS2JKQgqLYqzPDpWP79erEwhRwQVRGLwj7GqzeWCmtdOhijh6FiYdVi1tyC9R/dNjgD\nok2TPmTzhThEuIX/hyxUqTQpdBHxx4RvJchsRXCes9EoIafet82gmRB4hSQhUzY0IQLBlJYLXeEx\nRyMqvkc9dc2fU6bKMNLdVlwnVWDQeSJKWc7F3Pzd3f/CSlz16SNPYQI7m8PrbsphELL3dZCfs6nF\n/nfmfOz4+0wOcCbk34anz9zBOMJ9cPvBe/PAzTvy/Hs3510v3ge9EPXBzjPhswncxW6cn29K/Oer\nYauH4Y7byf/tVnjqci5jNvfyGeYD2wGfze5j8A2bEO+UsfO+2CR/zjrcxRecD8OQnPkgHSfAxxbd\nZ17RFQvIDo6thH+QItW7aB+4dmFEfO6FdpzlWNjyCBbiPIIXnU4wTVQSamW7xx21Mdc2ow1VTHek\nBtx31SxL0s4YMxhsMAbNinderNg3vFadVljspucdKryHxW3hMbWv8BexmbWYKlvTxWgRmsvT0LlC\nXKTZOCm5IJ5JmD1cn22DMyBy2UT/Ff7g61i8JU9IA60EnwoNXUV5LI1p1kbQSKCqNgFj+pyMl44r\n6rrc1nasY5m0HhQe6Zq0aoSGTsLKoUpZWkqo9lmR13inFdUB5qavANZAyzp8T5gBbKIM23s8C6yC\nh78Niw+Bnb+P1ZtMALdDvNeviU7O4R5IDngQXg/JuZcSTZjMYfRvdpz4Rhcbz4N/3fi33P0g/Oqd\nu9Jz199YttTO2TcL5ldgL+D3HMD9vId72YP7+TR/5ou8H4MlXiTi9bdF/Oqtu/LoQES2NDYcZhrE\n374LlkF2+NFQg7PTm5h1/PMmJfCF+8kvtH650QGTXHuk+567AfvBFziL7EJXzu/uDYPuHkxgodpb\nKFp3tjJJUoeOakZlOGOku8VlviYp1yapJ64NZdlW5NFgZZZhAJXUq+p6ssiaSI9Dq71S/RorzQCo\nJCPCcFYhMvgMigSbQ2q8arjCavXmMdcso6hxr5BMoH7zYvyPbhucARHFF9RIarIIC+y1RlnDcLUP\nlaZlFEK3TniELK8sdai8LWMhILS5Vkal03JLJbUPPgUNvr2DcjlhGwBR7ptbWlqZuUvJDU/ROjFF\nuTbJRAWbFL1Y1kVaIEswI/IkpsJVBkZh5wvhzbhm1Q9SENHSue+CmTDzvheob7YLDEMW7Uf+kQiu\nALrhhnP3IDu3TDzHVNDiAzPiKCZ57FKG5m/MpvH9xC8+CtOgowKbzIa39cO/VGCXbivQfX0F3twL\n/efH/AqITsxZvDTihQgDdyvwxa+cT3beAn5+/c5mMJ5P+epJl7Ly4DdCP2Sffy/JkamFWg+0sv+d\nwCr4/R6Wrcm+c5wVyiXumCdgFcI197vbGksxx14rQoNKXDB5u4an2GjVKGNlD2rrOUrXNFyYwowg\neKBfSvvCJDQGNeZkbOSdlJzHoqrzMLOnsevDdhs/KtWXVxtqjWhTwV+I+2k+hXom/zcP/h/dNjgD\nIgBSAJUmsW5quenGhalVeR3CLsL2Cl7xWu6bd+9Ur6LzC2/pKuJfr8eqEKlZRk48kiGmF8eBEBT2\neiJ+QJj7rPfKqUfFR7pbaKvihIWw5bwfX/dRwVbjpVgIU8VWXKd9seAES80uvQgTHDoQohNyuARW\nXfsGor1yWAz5xd3E92Qc8/w3oA77nH4b2fyY7NGY5MQUemG3b2ak8w9j+W9i8ve8l+zNOxH/6WY+\n+9JVxCtOJx44jzuqUB6+jvujmM4zMpI1LxNfmLFobs74oxGHvztn78/m0Aaf/up1XHbc0WQ3Rnzg\n+IehCk/eViI/zJpr/2yhqbVnldiqdq9zN2UVbHNYDv8J8UEXFqxYAC7BDOi78XVD7jPCSoa6O0lL\nCRO9xkiNJiwk1GotzGE1fQ1EQBkSZdbMI2lvIDiCx0JCdTBT5m8vPBN5Mhq7Oq8+L0NVc2O2WWBI\nIlRa/PQ7JDdqkxC0FkxfFVwrQvt/VtJwg2vrcFn++eJ/odAhAq6wptkI6EEKaB2hkxkMFhmZsDS/\nkdZr4UXYcLi5G5j21earbUcJu6SHaTEd99VSe+HWx2AxcNoZM0JTPWOs0sb0NRPUE2uIVFnlKO3D\nGMdB7Q/WYJ7JU1hm5pfAtvDETrADT5PfuqUZl17gUhi+L6L79pzo7py8xyYqrtvd9LMHWHtKvymX\n/Tkl2zzhTUc9yV9O2rrImMR/yOBFyLpderlO0YeGMgbuOr7FA8/uyAPxYyz6OJYpAaKDxsl/0E72\n+5h44wymwZyT/sQLb92M6LC8aNB9zrERx96U64YXrSKYB/Eed5HdusC8jxUYFqSm4ZIB0P1x13fS\nJ47nuNo5jJU76BkeZbItLrw9oGjstTKZ1ZDG1dgI61e0IPWw1oWx/vXmTXyR0CMIx1OoxyEvV5Nd\nOJyNLa8Qb2PFe7TCXMJspM7dzjhhNzxxnPS99Jn17Uy3wXkgIu5IjUlunC9iapRiC2++B6Zai160\noUK6eB/NxUOhwQgp5iGByHfDM3c1rAgODU2I0whYU1g05gairkktNwXcqYwfjJlaK5vxAEeGWkqh\nj4G0Lx7El66fiRmRQdj+Yciv2BISuH6h2+8c6D4n56oPmv5ocsoLRNNymA3R4sWsPaXfVMjqkPUl\ntH5umL+ctzX5Pm5cbQrZx2OyvWLyesSmDz3N5J8j4mW/5NMv/QfRivt56YmI+FMZObDLwsdY9FUK\nTY7BU9vJL2/n5uMi4k0sRLpoUcTyr7/V2K8liI95mXi7jGOvyYlW5fxsL8zjegrjsyyD7MIFZhDn\nYCnbGzBRieWY8XgWy8w4Ulw+H6ZopbIqY6MVZjxMuHqyEBRKSBlJuoqJZeGl75crj1j7ipxo73k1\nfk9p9zIQIZco5JesdccOPZiwHCJUJlMGsd1lU5pbODQbj/B/eTJ+gZWusJqzrT8fZIPzQC7O/62w\nqmFVrG5EKOCjLcGDo6HEvR60Wgk2p4XBqzMJpG2mnof76+G0u1hTxkPubtgEy4vnjjWsKLoOrXIJ\ndWbVVrk4PKEjHWMs6aCnOkxSNx5DPbFOatOem/Jl7SWMQ9GHTZzNMQMjUeES3PJ2+DQvkT/wuqKB\nNY/hFb20Sl8FHAFfOfAMLjjyRLL3Wm9cgG99E45aBPwWkp+uJT15ekPtDQP41OmouzaJPW+MqZtd\nlZHtHMNsGL0spvOL1iozvvwuskMXEL8nJXshIT4lIzs19nU//fhQZAmwGcT7LiebN8fkGpdhBsSl\nmFmOb7Td797vBdbAqTt+jS+zmI7qBCOVzqJt6FCluwAsp6dDrE16GjwJPWeFOaqXUgYmbJWgRScE\nNXsYYtQJDI27im+Nl3qDwfCN3jXem8mL4bEVDjcbEm0ejC039CkKF9VQO+SE6MLXhgcCjQrnoveK\nawEUrl0SGAK7EZ0NseA47Q0TW0BVWGMjA6BaGyHV3nPwjFGlafWgVbkbtivUdfkQq1FmIBycRUVu\n2ZoLicaekDLZ1sJkW2wtCbQNY4ZgAJvEbdgEk1LZk1hrg6X286k7Ib/idbAUbtwLc+83g5UHQXTA\n7TDPeBvsA6yBCy49kfdfeDvxzzMLUdrgqK/AzYtikp9eTXrqdPL7IrY+6TcWOqSYF9CPGYt+LLya\nCUzAX76ysXkM+8TEP7yNl74ZmfFI4dZLPkz25QXsevEdZC8kcCtkp8dUTzPw9+fHRdwoYphkHJdC\nduoc00atYHjHQsy4PI55Hs+6/R/BjMddUN02tkWnZpmYSVppnTBsSan9GbVBVieyfBRjA3y3Qj1T\nLQyh2JSyG8IU2hkv0sBAQ1ZPNHKVTrQ3sVNDnMSOX0KyD+FYarxW/16jF+KlADTmBOJq/P0zzaU2\nOA/ksvzzAZDp1cRCrMB7KI15bj9JPVdDZf2K93TTfA6/sUF3KAOglSL0NJorecNVQw8sBK680ExC\nH6sJMZHmjFLhPqcjtE5YWX9ST6mVWwtXu+1eLCRYhjceMzEXXw225YWk8OKuMJvnyG/bFP4Tm+ib\n2/7xtzKyb8Ycv9/JnHXIaZZerUB8T0b2lpi4NyNbHhdVsq//1lJeiiukZ/QXcgK3LI74WbaYq+88\nDO6Bqy9J2P/f8oLc1XbkWib7u8kOMyFnVsEtt0V86ss58Q9SskOTQqIgHkvJtkmIOnPyH0TW6+Vk\niB+5lOwHhzF5aETr/rmBx0uwbIt0P9QrR/dD2FAK1ZkxZ5ZP5IwV36A609ZM3dOhSncxhsLWksIa\nQh1bPc9wEdBnQg3fVxIOO18x5kJv2MtG+JBDxwq9W42jZi5UsycSHgs8kK8QRmUHXq+1lWOjS14b\nHogeBEgVzGhYI3QWVlygpR4w0HDDhC2o5Fk3K2zPACrX98fS8aQZUg+ObzUuPk0mtN3LFjZqQAwx\nvYhhy26VC+nOumZlmLpqlvHpq65hLOlgpNJZdKzrHTDjMdnWYpO/TKFzQT82gaZhE/RRbDV2laeb\n/Bby3TY1/GAzzEiU7O9scQzXwFnXnsaFV/y7ff5ZyD4Yc//5MdmDMZM/jMhKMZTgr8fNIz2iH56C\nk08/jhsXR+yZP8lVH/ky2Q9jsv+K+UI+QvTdCxg4fToMwMQZ0814VCHb3IbbZhlGajs2MYNXho+d\nfhPZmxPiL/yWfDCC/TFjsBCy2w4j3vcvfHcYyzh1u9/zMcO5BEtDL8MMhzgyP7LzJPWMmDpT08xw\nVIazIpTRQqRFQuGnpCv1rLWF+FnY/kMA56ib7DqWcA2/mChdWy8IhhrrmvjiNoFqcSYJm1AJQA3H\nbUhHD7MzNs49FyoM98VD+WeK6TY4D+TC/OAGL6GdcQbpKzySZhAVTM6wWcwltNjeQ7CBoBVEVl71\nDfIIwgxMcw9ReTXa9DDD62rOFHma82RxbRLHDbERiSyrwTZY6lHtLdNSwrTBKcs4uDYLJHhhoUEs\nlbsc3/JhrnvvcSy8OB/jTKiatwQv7g2bfB/iFRnZREz848wm/Ro4/Gtns/iA42AA4t1TsusS2Jmi\n6K6oBBYuI3lF/b0Esj1j4jsymA3xEynZZxKoQPLZUdKrO4m/vpzs+3OI0tyK7MLKY4Uj6nGzCuPC\nbI7hOXu6fZQRkoyhu7apmdBSgxNnnsSi4W8w2Wb3sZ54T6GjNsbKsvjwoSaub2lq/78SP1B9icSG\nNA6bx2jYpD1sOiUR5mZaQajJGobIzZ5vQtqArchjas42hrhN6Nlr7L6Gmms3gqNy/7R5hp6fxGH5\ntH77lg6ijzWmVAXGSv8jNB6+f6now/VipQg1V6XAHiLuMhalIFxqvnbFyjV8v5pJynSlI5RS00VN\nSzDY3U1XdZR6Yrqd7aNTVLtjy7SAueqz8KLKKzAM4HHgaMzVd1J/K0+E+/eK4Wi4cQ9she4GnjTj\nccW+kM2Oye+IjH9x0PVQh8WXHgdz4fB7zib7UQKbQ3zB+Zx+9tH87fgebj8Xm+BLgYfh2osi8k9E\nPHrJNgx/zzQ/4nMz5t7/DMyDbL8E1kF+aUT6mU7DSC6fQ/LeUfKVkVc/q0J+ZOQbhs+mUCxjvvvO\ne2J9gZ8F/owZswHME3kUNPenypASF8ajlpTNSDuOxkhZEziUF7RQRpiWJ255jV0Rs9TsKTQ2YXNt\nleU3ZzuET4RpWC0oOncNazGiKt6wiBMoCI0WmtiYFwNbvYZsv47AiDUao39m2+AMCHgFJbl/chVV\nABda+LD2RISdxhvtFdhTkgadVG0i3ECjspP9bwk8kdpCVSho1F5tBqOkRSJjFHYG02fBVrYhehhL\nOlyvVrc6pXa8we5uWqqWiWmdyLx34RpJUcEmza7YBNvT/TxCoVg26054kozoczl73wrxQSfbxNsB\nSOGQCyF6LCc6KYf9YZP0X4xGPmHp1cUXHQfvg3xZRPaLozl502+y8aFD7H4EnuS2E+x/RE50fc67\nNv4dd4x90s5/ICz75hZGl7/Y8JEbntsDPgbMh+ipnPTwTjuGPSh+fkBEdEZudTrXYUakhIG2nwTu\nwWdbdsBCs7nu/82Bt0B1bkyLm7PtjFMrtzJtYIqe4VHGkg7KNU8W1EIgMWKB3yH/IvQmw/ERhjUe\nmys1ZPPkHXh931rD58A3ltf12BhqL1jVYkEDRWaouYXJmPNnFdZ4I+fT0F5lrV4shuu7bXAGRBRf\nPYiwBaV5Au2F5xCmwcBwCk8xH2+IQeV+ihJcx5dVhzRzfx1+kotlKrqyj0O9clXqVgtdl9B1iRyp\nbHqI6cVAUi2MrisMhQYrJgCYlmK6aiNU+2K6hqcopbBuTotNGimyq8BuEPNClmDGZI7b5wl7/fCH\n4aGJiGhxTnbTaSw6Bp/WnQP5sxH5KRE8Div+4y3kN0TEx6Q28Y9aDcsgWpDD45AdFHtmbAUfQlTs\nWNlRMft94xab+I9DfOyvoQSfH7gcqrDvuT8p+tyuuCQyg5cCw/D7hREf+EFOfEDK5XdEcBoWIq3E\nMk3nY/uvwQhqz7pzP+XuwXX2/1i5g6kytPzNQoiO6gQvz+40rdl0rKCw675LqV+8He8lpsXk88rp\njaGxFhhVXis08ZhHY+jttXC9J9NcmVsqxrFPD4NnsIZ1VKomDxuCgxkaiTnr+iTBKWX28Jz/6LYB\nGhCBn7WGiaeaGIUVctHCbIwo5s03xDcD8iFMszhz2JdURkNFfQLBJgmLphpbZobAL6gS2CuxKw2o\nY2qVgEbae1d1FIFlJmuY0VHNWF3uI6pStGSkBDwIU9vi+8N2Y4alhnkmg5iLP5/CS9n5Yag+HhF9\nIWfRPXDdmdZIijpwBPx1iTWbijpzoiNy0itKMAB7pT8tuBbRsauJH8oMmK1gRmIaFlINArdCfEfG\n4lNcCDIXzsp/AMC1l30RpkG0NC+6yG1yK74I7kHY5js58b43A3dz6H2OneqK4goP40H32jBeuayM\nD216YcYaI40xDTKsF8xGA6OF7ilQlA94DRc9pVaG6KGjaYUPq1w1TqRUptBZXrGwBuEjQ/RQdotF\nyPewx+nbUXoyYrnBU3k1/E8LX8gRafYqBNR7ULVWGCyV+K/vtsEZECmByRPRjRWbLmQDwivZqKLt\naqKHaS8PaHltjg7Gi1qYUPNB51fZdLPaUzjgGsOkUoNXBF4KL8RAFM6EXffG6WCw0lsYlMk23zGs\ng3HyCrRVYdrAFBMzgXnQ8gRmAJa7HQexidmHeSB1bAXfDJtgA9BxI1w/GhF9KWfhbbkV4lVhbG/Y\n5CY7zOp9XIe6h3LYDG68eX8r+X8q4kv5d+F5DJdwjajAjkGbO/fr4IL8GQM9t4Zjr7oYyhD15NAJ\n8VVXmsH5GobXiFeyM2THRkBOdudHLE27zH2nNe4cA5hXtSt2jM3d994UM0QVUyKrJ1AZyFyFc8a6\nvhamKi48qad0VUdZm/QUE0t4Roqyf+OM0f6q2TvDK9qLyd28OIHPFoqVrDA85AaFP9pPEoT22VfS\n41uDsaPP+h4v5oWrelcs7jBj5KkFpcIbWt9tgzMgIatPOXGt+GEWZoTOBiOiv9sZL0INpeLCFSNs\n/BMyDGu0NljuMFUb0o+VZgvBrEmXV5eBClPL+h5h7w/F06POcHn1bVeu7ZobqQXj2t42ZqwZpVY2\nQWAZknweFn5sjhdaruKp3BOYRzIXONHttwxYAZ+9E15+LjIa+BuAbrhCTNLHoe8/gHlw2/cdsHkn\nxM9mRDvkXHz9sWTHxoZFiDI+CzNYs4H9Idsl5vmrNjcjVM8L1uvy/cwjSG/9d2PAViFediXMh3MO\njWAQ4j1zspv2tGtZ577DID7jtArLJE24613qft9k3zVvs8xLyzrIu500JDHto1MMdneTUGek3FXI\nSMqTHHV1La1MOrDcPMchpqNKWoXQAlSBhgpdPWNtaoQG3jvVQqWitrR4XanVsIl347j32EhHEXqH\nRiTMzkjOU5s8eaWRQSUeryFN1FAVLMHL5nsvpFEHIQSVNGFldHSjwopDZVX0eXkSITirmFXIdTM4\nqt6nYVf0cNA0M1U9il8qUn4hGUj0aPFJauVWutIRRiqdDFW66V01wVglNj3PSkw0YJmFWhmbwEux\nyVvCjEU3ZiiUWt3HvX4alv4dBdpgxoNY6DENok8+zVeuA6rw8KXumE/B7rdiHsUW8OtvGx2dCchv\niIg+VyV6c060JCcaz4l2zYl2yIkOvrloP8k8uOzIyI4xE2bflFvoMwjxvecbP+SKg4kWZhz7Rmv0\nzV5YaLQK7+XgvtdMbJ/l+OLCmvv+O8HEPLtH6/pamJpmf7et8d5ARzpGR3WCrtpIsXgoZBCBUNXc\noSZIK9Ko8QpgGk8yLsLBmsdBmG3z+/vP+crbVnwywI9Tzx/x46ox4+gzPhICt75G7QUDW5s83tCI\nvKYwEKWudAPlyim9pa2L0YabKkzCCo/ai9sYFjzpRnUwXvzfxUjDCtKYkrXjhmBtCHyFXJEQi9H1\naj99B/WZ0fcEioctb0uDunViinJqSlnr+qxHbjRhwGDeDy2rKBpD049hAhJc3hwzDGWKSluOxFfr\n7ooBkjWsUfbmcAZbwp0wdgzsfBOwAqa+ia381wC9sONt2CSuQLRrTr59hds+GvHDqyKuOyoi2vwa\nXtolIt/+02awysAOcOh33EO7FlgF8Q03m+G46WjiL10Eg3A/iZHBBvE8knn4Lnx9eMD2UbyMY919\nr6rtnzhjM23lFGnJ0t8vze7m2Oq5jHe2FK0y0pItGiINei2OQCGOtIGdqtf8yl9vCFdDcauQ7Gjj\nzWN4zRRyYy9b6KPGU+AzPOFnQiA1LUZogOkUKM4kzRKgzdu4Syz8M1mYDY5IJiq7woSQgCNWZ0jB\n1cNsFvkR12KULnoYIqQYy4UU01Wb8vKv5uE0Dxb14g2rcUXU0RZea7hi/d8K92SEJLY8Vu4ojl+u\nTVIZzFjTb6X+Y5XYOtcB0XLM65iNhQtbYyu4JuMgZmgewadEe92+KYWGKKdAOhqRbJ7DYcAaiL50\nCvmCU2EBlj4eBN7ujqMsUIqFGLpFg1h18CGY13AXxHedTnbd1y1sOeRKssMOZvGlEYfflJuBEI9j\nKyw7tBkWGi3Fh2pKTe+AJ449COxqoV2ksKZiXlpLDaha5kplAaU0ZW3SU4SNPuXptVHDSRViV35R\n8Dwjsae1aIRapeGm8eH39dmVZg9G0puShGgOkUboLAxEs2ciQyiBoRCfk9HpYYiQ0v6aKecPVwJj\nc/pMiFz8yWLVLgWfC+tffAhi4rdmj5UqVV5dINmYK7oTVwN8Pl+eSmgcmok4iiv1vq45xF5kBFSF\nKeA1BLGS4BEP0cNIuavAWiYpk9QzJhzRqp5AZXlWZGVyFbWpAdNyiloQahi4uQ6bhPJULsI6uakt\nxEzgO5AcmLPyV8B1EH8pIz/vVBNv7ob80Yj4jhtYdw6ei6Km1+vcee+B64+MiFZ92/4vAXtCds7X\niR7OHei6DraFw+/MfbHcBBZi7YUZs1lYFmmAwggxgTWWEtv0VmBbmJoG0bDhH1Sg2h3TssqMiOEg\n9qymr5lgJOl6RXZFAlIjdLl2IF4GQp5D6PFKKUyb7wTge8UIppTmrrzoUB4xVD0LFxlptYZhOPik\ngRYfGauQuqCtOSWs40gQWkpqr6kQxgOPpWKSvZr4im5IGCIAwYRrDSZ4reEhCRxTE2Oh1SGgJaCz\nOaUmj2ISr1Xpr13izZNFWCMyj1YaKaWpq3uYhQlXIhmwgvZeGymaHnUNTzDZFjM1E9qWOpk+rOq0\nqJEBMyYqrFOXtmexVXy220+r+yyMR1ECNoVZPwUWwt0kcCmwAqKFOckf/5vsiH2Ydj422UVZ108f\nsBPsd05Ovue/E/8kIz7kMhiAW46FvBpZHc6dx3gKvmQFpG1yBmawHsbroK5w17wzBYbDDe7/mQaY\nTsw0D2RdX4sJMDljKyNbK7cyVolfASzqeY84b1VNs+UlyMsUKOlD0skA+PQTXHUmIfDZ7vYJldwB\npjPUMOlDHRrxNEQJ0CIZEt5kREboZNLhHjIw4VwJvRClhsVFeU1lYcJUqrZQm1SrvGpNrN3kaLFv\nyAPRJFTOO+xSp9VeK4AGR5EJcYIyuibDY8oN1GMZprATerOIUKiTKndUg00kHz3IDsYLkFjtJEpp\nSkc6Rq3cylC5h7QUFwplaQmm5kLl2Yx6YvKHzMN7HUqxzsXCi1UY/lHHJu8+WLhQw1omvBubyM9h\nE3QN7HZdDufYfvl+ETm/ZdlF2ERfA6wG7rUWEfl9kVdIr8L1PwKGbiQ774uwFYxX/lcAACAASURB\nVHzqNqwIDjyeUcau2YG2hVxjzb0uucZ+DPMYxozdPe67zKaom0nqlr5N6inr+lvIS8beHau0Fb12\nhso9iAPUHlDGRfwLMQGNxXABkNGQ2q3X3vXZPYUNGluiIzQzT5XWbV4ERVxMqNPJSHFMpWiH6CkK\nSzXORSoTNqgxrWI84SnC9BLqBaky1AT+R7cNDgMJi+lC2q8eanPpslbsEK8IV/BGoLNerP5y4eRZ\n6EbaRPZFdqEmiMC0VxN21vnAZ5JU1KTXQ5Eh+16+t4gkAMQXAF8qPiMdDLqp1SjXJqmVW+ldOsG6\nTVuswK4OE90uvVuCaABjpDo1sALjAC8RKObmAve3U29nH2wiD2Js0R3xwkHqkG031XfHmxkcV4xU\n/f2Ue38m5v28G/MOlrjPqsq2goUsy4EDMG9JFcfPuXNujoGxu7m/h2Gi3wDlqYoXYGpZBS/P66Rn\neJSh7k42Ghjl5f7OBgKfnl9oxOVhhqC9wuWQTySAtUytCEnCcThETxEehECnsDkwz2AtjViMvFbt\nGyYOQh0bXbuwkJBCMEJXgaGYMp8vCtR4996xHfPo6PLXBgaiVVr1J+FDBI8+15oepgyL3EW9F9ay\nhFW3dswyPawtzu05IeViwIQFdeGmawgHnepkhKuEFZHyRoTU+8K9yeJc+v5yKbUajiRdRehVrk1a\nBqE6wdRMyzZUu2NILZyhHqR3Z2MZC7BJKsBT5e7b41tCDGMTci9sYj8IXI9NdvAkrb/hMyPyZFSV\nK69HYsclfPOnTTHPYVcMXK1iQOkCjDn6sDv+u4EDMSNSxxuPZe4YS4BPwIR64MpoSlwZMx4T/dBV\nHaWUQs/wKOtmtRTPUCQxsEyE9QnyC4B5Gh4DCUHMMMsWGobQ6xWV3Tgjvk+tnqlnu3pCod1Or58a\nYn7gjUd4neBL9EMuSNgMTXyVkIiZFAaz9Irj/aPbBmdABBqFqzD4PrT6svrfP9D2AkQafQU24WNA\ngay+eK5ccDD0vlYp39TY1w6IeKPfoUekVUv7h7G2jJy+zxgdhUyB3EnF3uEDbfBSqhOMlTuoJwkj\nlU5a1tmq21HNqM6MDUh1/V+nyo7mvjUGdnZiOMIKfI1MCnwQMzbL8M2tpbXRja9uPRCbwPOwSd2J\nVyCbhg8xXJqXOuat7Ix5PkdgxuQRzGD0YVmeWzHjo2PfgQdNN8fjKq5DHfPsHG0Drm1DFSYqZjRb\naq4TXWBM1va2Fbqyk5SZVX25YSI2coQaMyGqHQk3PUeBqApJhVfZuBkvQHp5Byqf9/q7nr8R1rmE\npC6FzKEer3A/+z5exUzfIcQ6tMBJj6ZZDsOXY6y/ASn9z7v8/99Cmi146q02PRxfhJSgWhUIm/SE\neIQoxx4kBW+gUlKmM1S4f6HRUNxox26sfdE5ZQCU2lNsq3BJOf4ZrC4MljwbeSHNupiKjjWwByu9\nzBxe4ybEJNWZlsZVOndtbxu9wxNEA1Dqd20wZ2Nex0osLSotVdWOaKXfDY9LSBbwE8F+R+O9mV7M\n27gPy4wotBFo+24sdKphHsMghrH04RXUh93nd8KMxQp37Pdhxuhxd+7N3X67Yh4M+FAJy7C0OXU0\nKbSt27yF1okpRiqdlNMatXJrMXFHKp0YZd1XZ4dpf7vvvlxCz19jRwuMly/0LSdDlS+NDY3VWqDp\noWN54prvwlhrWPheSfRqrvwNPaO/x/kIF08dX55QqOm6PtsGZ0CUIgtpvz6d63tbgAdMw9g09Aj0\nugZJWHYfCqtolfB5/I4GbyHkgHhRIE8jlptYo5VZDmioQTAU7Ht1MRIAbqnL5PhqYKvKrRfH0mDt\nYrT4PdkWUxm2ug7bMlonnPH44wTVufZ+VHdYiPCJPswDeA7zCp7FJnP4ngSMxRO5y72/NWYEdsAM\nknrPHohpkioDo8+LV1LD8BPw+iM3YEaiG/Ny1rifHfE1NQPuvRXuuLtiRkU8k+B8kf52eMvUbCPh\npaWYruooQ5XuwMWvo2bpKoWQGFUrNYaYXlDJFc6GE1Suf+ghhxKHYRgDOGDeh7OawAodwk3jqDlj\noivX9YdjWYYvNB4aS8JASg4o9iF3KTheo9eyPtsGF8KELmQo5KP39LqlnzoLWnG4Ogh1Di10KNUf\nFuUpFBJuIhdVE1qrUBi6yLswY+NBOYUb4TUnzrNRnYKsfRg2WfjlC+qgUSRJ33GMdobKPayZ2UY9\nMVWtmuuh21F1xmMgY6ICL8/sNFKVOB9gBmNnzBhItUxAKpghmYfHROZhRqOMr6O5HZvgVXeMASxE\neZaizqbAQx7FAE99vhfY3312pfvcXHxfGyjkALjWXVcbRXc5wAxgSpGizUv2f14xHKSU4rRks0IS\nQZ6eVcOGC4wPHYSPaUEKSYMyGMK5JA8hcmIjaK8M3WRxHBVmjrl0bJhelTFRtaxoC6IW6LzjrnDP\nyxumrnbHh/XC38Crmum8ftnyBYOaC//MtkF6IGHcqdVdtrjZkusGSzRF2EZosUHFcmW3fyNjNGQE\n6gGqtWVIOFI8GQJnenhhPNrociasdQM3PF+oeAYUA1GrCniALCWhKx0pKkcnKdNTHS5qYwBGKpZp\noGIZibbhUaYqrpeupP2WGeEsChou0YsZjgFswkqU2G6avS5ZxHl49qmK6IaxST87eIhSFZuPeQ6r\n3E83ZmgcjkEb3kiI+v4jDIPZ351TmZxpGFFtnhmKaNiOEQ0b/yMtWRg30m2M06FKN+JvlGuTrC73\nmQfHK0mI4bPScwcKntAkZcbd+FL4Iqa0DIY9V1/QKZlB9YQJN5HENLEBeljLENMbxr4+J+BdC1fI\nfg6vMyEtyJF+nnjCWkqpIWSRAXtNFdOBX32lp9EIcHYURgV8/4zwJmgtCFdxPQRrgu09nFClKaQR\nq+ReNS964ELlw3PJa9E1C7AKvRxtWrU8hlIuVjQZB1BjoVYG6aOVSdYmlvdXnc9IpZORbgtjSql1\nnK/2xUyVgRKsm9VixqMM9EGLwwiiCXwdichkw5jnIGGgJe5in8MX6fVik3gpHlgVEUy/9TXVeuJZ\n9/oOmNFQdmhFsI9Eoe91r+/j9pFma+LOqe+SuhS1K9ev9sckdaisMuPRPjrFULmn8NhKqW+YLXaz\nwNPUjRsRsMLnEYLmYRgjox5myhTO+t4x7W4cjTLo2mSGconC2ARyaqzKu9E40WdCNTQJNitzFxZs\njrkyfs2FsCNeKN2p0v7wu63vtsHyQBSXejXrUuFChmKxchtD7n8zWBWmeQ3UfGWrTIU8Ye8ZrRCh\nhyK9ydDqK5RpRsR99WZHkFJLCjFl7SuRmWblKmgEu8ZodytfuUjpghWMjXe20DU8xVglpnUio2UN\nBQ4xMdMyM5EwBhG11I5S6VgJGAsbAQtn5LGIMRo2fLIHYZsWRYVMNXx4NAczOiKOgYVDruUl2+Jx\nFGVSnJdR4Cn6jVHXwQxj3mbGpJRaT+F6khTenc96+Gco914LwSStBRYS1p+EtSXaT4uVZUfaC8wh\nxMP0XAVYhrhGc3sRLRh2uxpDp7C9gwxMYzrXe9g6b8hjebWOc/p8c5/e9RVV3iBDGI9flIrJQ3Bj\nNAGFOTTGq97tDz0DbeFDCYvgSviuccJhmsMpMfd0bbomCd4KqDICkReG0fsaRGvpKVYhsIcaDswu\nV4sxyAw6nFutTM544KlMlp26fGmMpJ4WK/B4ZwswRUsVpnot5UkFP+lrmHcgFqoaVFWxFOuTmDex\nFKON74T3HpZheIXzbFBBWxmb8OvcOVa690WTl+ThHfgQ54P4jI7qYVwhHCvd55ymaxFKDdr7aa9l\nX9bNamHa8ino9ZT1UpqihTXMiITksBBcb0Xat77taDiWbNy0v2KcacGSpEOR6XEEQo0tMyblBoOj\niR9qwcjQhKleTw1opCLIaOk7hteqMRmGLTKMQOFNh31s1nfb4EKY5v63YVETEKRFvQsqQo636kZT\nHnOqHbrRytPLo2nWjmzWnQzdOw28cnDzQcCVb1JscXYjOKeMil8tSgwxPfCfksLYhLIE4hoILNMA\n8qukfbZ1Ysqqduspk20mnDPZFjPRDS1rDP/IHTWdKkz0YsZjHd5bSP3f+c5YeLMAwzEEloKv7HXd\n7wovYw0+Q6L/l7nXBjGDVcO4H3Pcj4yHjJDdYE9dr9u5VSBH3TCcvM/R1svQNTxFtT8uKOu1pFyw\ndhX7A8WCIdr6KF0NIaMqbFXaH445uyw/VpSJUfjiFxSQlkdIPdBzDfG5ULxKBDKvbdPoOYShhsKW\n0NNWUWaYifTXXWswjMooeq+q/IpF9h/ZNjgPRLGlvAybgLYlpEVbBfAZFIUH0rAUUh0CoL4B8qRL\na3kgVjc55JeoHearpbhC4Dbko6gQSy5ql6tjsIE4ST8DhCQlPWxdfyhelLgh3+HEm1VNrHsjRL6c\n1hiqdBciwR21MVpqMNnmGJrdrq/uyikYhamNoc31jJ3a2Nz+KFz9Sy41qnCnG8vcqMWmwFQV6JXx\n/WlSzEuRqJHSvSFbFcyrKeHJbBP4Xrg6pzrLbepwm5m+PH+i4in7K3vtuyf11JXr2yG0is9IB1mb\n9BTeXQfjRa9khYJhGBDiY7NYWbBUwwUhTPU3ewLN48TzipIinNUiFIKeIfai91RioXM0n1Mer7bQ\nqGhR0hb+LTA2vMb13TY4A6KwQXUgIaFLKLkPD8oN4YEs67hjpfq40Ot/SKQozIAIEwldUvMi0uJ/\nEMA21jBQxgLATKuaVqTVzAj2a5Q8DNHwUMbRrscPCilLhfUOuk+TtDKSdNLFqOssbzUySWWCpJ4x\nVYbJtphpK6eY6IZEWZmSk/1bhQ9devETV8YhJG7V8CX0yo4odJkTPMAq3qNQpkcU+kpwLHk+be48\nMmDLMQNVcddShnX9LUwbmDJtjzK0uese6TZ19VpSpmtilKQOI+Uywh86GC+8ERWfKWXenC7XPQ23\n1Q4ADV/3Qsk1VMIftrK02+VbSIalExaetAYGpI7K/TX2wusIW6/qeYcYyyStDYukLaBjxedksMIF\nzz5bpwurhFHr1vXdNrgQxtPCbWKGUnDhDRDgGXIw2gOCUGilG8ujyw2DRvlwoSDhg3o1aULxQKQT\nYdWPpQJ51+fShmutF9cfejQCZLWfqnFnMFhcfeo8GxlByR+qkXho9PQ9RiqdTLa1UEotO7FuVgtt\nVfM2pqYBvQ5QTc2QiBI+JUDVtXmgSqNgctU+Uyw7MiYBMxSxWeU2SpoQt1/qjr0pvvLWgbi5VNed\nVzLhWLRdw1Pk2g8Dhdf1tRTq6gl1JttainYN4l9M0loYjj4GiyJHvaZMl1TwNPY0ZrRqq9pa+446\nerm8gtALsVvQqEzni0INKzFvdW0xwcFXnHuqgi8CLUJVGjV7w54wIQ7i2c1+wQQavpO+b5g9Wp9t\ngzMgApPU2TwEmMDL3wtX0KTUZJPQiiaVbmyoIGXn8ZWvIu3ogdaDh6VzQCPvw1fcdharks++SO7f\nq2z7tHOp4aGZt2UkIRuopSC8qTV8LhRF0kDRoJYb3FU1aYOxpIORbtMFbR+dgpqBjKXUCTN32wSN\nqhC5TIlWeNZQgJe5woqZ2KRPMIBzFK9JCmZcZDRq+DClhLFMVZ1bpij3Z6n9PeHSttEE0GakMLqN\nzyLDFLn9ppztL4xH3RG1knLxE8pFKn0fikb5KtlS8XxUfGar80jDc9ff4oSoR3II0ofhhIxCiMv5\nit9SUfME0Mfqwkto9nbCOeF1T73Gr9TXNZbCnrr6nMaOiIvCC8XK/Wd7425wIQx4XVQ9HFl7MetC\n0RXw9HJZfUkbjgceRRhaAK4J8ngR86rxTqiPqoka1tmEEnMh/6S5BkLhVpiaNQNVKjJH8lbEO9Fg\n853D0mKAiNwmFF+rooq5dA+Eh9SSQNy3LSYtZUXNSLXfUr1lB2Cqf2xB9pIYc8kZF4U08hjkebiM\nSd7tJr/wDIUr8k7WUWRP6HMXJbykBG0r8OppdTwNH8c0xVfbWoaJQtKgVvbeXqiBK2axuBZ6X/iF\n7m343MHLDgpbaxYf9lmXV6ZvhV/IQKlc3uNgPhWs5y+GtBYA34WgUQzZe6QlBumjj8EGT1djojkM\nFq5ir4VFgl5WIgyZ/9Htf/RAoii6OoqilVEUPRm8tiiKohejKPqd+/lw8N7xURQ9E0XRk1EU7Ra8\nvr3b9+koii76e+cLFaNDKrtvzmSTzMhaEnfxZfXhDzTGteOOoSdZN206ZkewuoceTPMxQ40GpVg1\nYEJXUoNHKLyyR6qJse816bymWuFxaVUMwVwJy4zQichAui/h90xIqSXu/tVT0pIpcY1UOpmo2Cpe\nGc5oqdpEnep15e/qO1t2vwWsgu/1olRwtws3XFo4ehbzWgIg1t1Yn13Rawk+TJKgUNkZiLJdD8PG\n65DyvNi2k22Wpm4fnSL9P+2dXYxl2Vme31X71DlVp6rcNdPNjMEDmCQEKdggYxEnIZEG5c/EuSGW\n4AKkCBIJKUQJJFIichFMLrhMAgglvggoiSNACuCbmCQkSitAJCDWgM0YEQIm9thkxt3usqu6Tp9T\nZ9fOxVrP+t61q+anq+XpM04tqVWnz8/ea6+f7+f93u9bE9yHKNCEUMVSoEU9l75WWnfrtU2nhyMU\nm5eqdWt1tdwh30EoMf45RLpbHjncUFzuqVZ6QkclfLwSYV9+SxSSNYo1hMUZgi2UTFYui1rlzoUG\nz5W/G2UpUMI+Tldpr8WF+UlJ7x69N0j6p8MwvKP8+wUpCwnl00LeXn7z/pTStl3nu4dh+FpJX5lS\n+tbLbhbVzGd1Y3lz85S/ELpcGgOkegn+fUtmkwJfwf0I8OqiRMZ8zKh5lBg40qEI22Leej8i3BsH\nTnkmcJwzMqmLid8AcqE1T8wE5pqxYdpSeSvNahWu2TKfQM9BVQ/2cjX3YVIsj6Ldqbeaf1T+3ihu\nDJZJCQWn+6pciypcWLMUcqbWyJ5acpoUfI+SeEdS3PYyh2ml7G7NlrmC+nKWk+SOb+zo+MaOunVb\nac7Xgc9jr05f/Ssv1PWxb9W3nFGM4MbtJJIHXgI/w11Kt2ZQLgibsCLX4pRDLIBxTowTwvK8L6uN\n6/VyndxGQxCuRmuW/nIvKQ40w9pCqLmwedj2qi7MMAy/lFJ66yUfXcZae4+knx6GoZf0qZTS85Le\nlVL6hKStYRieK9/7QPnuz48vELyP3ar9g24+ayYiu+xtNaZwNSLUG4Pulkq4IpifkQEcRwAGjbi3\niZjWPnnVKCyYiOevmkUitcQhKc6yWRTTFy3qZQqk4LBwH+cWZExlXkFBSjwCLi67mWb9Ut261+ne\njiZ9PjZzOZNWhQ7/pk+fZYB1XXJNVCqcfTYLi+GGlCCLgWUUIVCZrqPM2NKJiMJYtTKuXSZJKvfr\n1uGmcLBWt+7rIVDzZRHIE8L3k2yl9b3udG2+S759r9//pjdLikRFdz2Zd9bU2O3cLYxNrMGTZj20\nRa4QUmtbT7g1Y5TB8TSEkeNlCBgHTR1YdyWFFU5+Ti5leHBB+UpR5c6p+o8rG/d7U0q/nVL6QEqJ\nQndvkfSCfecFSc+U9z9p73+qvH+hIeUx82it1G1zWBgA3+xeum6/lMzlOkwWJujUhBITvtS0CcPy\n3SiJ6GBdxmsczM392a8oPECWFMQhrksoLVL4cWVa/5aFxW/RvAiTQP5zJayFcvGhWb/UuusyT+T+\ng1qh/HRvp/Inhr28cc9KvsywU0DMB3UIcpGip1SFwlBCrTsvSekltWQyZUtiuFncHdL2S/h256WS\nQVuOX3iwp1rvtVv32j05U7dWLSRdffvZVN36XMsuqsa59sbi5F8kYUYEY644eD2sv3X9BWMebmEU\nyvbK57x29xYymodiHStxJUPm9oGtz7jfUrgy/j4uM2vZ+3NXt+radyYsuA6Hb1Mwmms8DhD1x5XP\nOZOk90n6UUnfeeVeWPuF9/1PSdKWBn31s1+qtz0bRTiJdiCpvT6po+b5u6s6uZj9HvpaFYkdfJMo\nY4cfip8YeTZhdkbqd0RSvFivlBchNGJwDzRTS3Jblf5kjgsWxkSBa0ixiRBimNAUB6b5b1ea6bgL\nvgBFdvpJlynfypuyn+TXi/1t9ZOs+fu9LXU3ztWtszuxDWs0P1yN3lQLA37HmxRRFZLgCt4BKKqd\njG/Myv7IB0Lle20v87EM3fpc/aRTt+4rPX3S97XGR4086biSxXADfazy32hEvZyL4zVl/PTAuRa1\ncpy3EFFd5V94tTlcg3FZidD40xqCR4l4rgvzzu8RlC4UpQgYODkycME82CTScf9DHemjtz+rj92+\nq6Tzer+rtCsJkGEY7vA6pfR+Sf+t/PcFtYndzyhbHpe975ZKbX/1fe8wc22t0xKdCPr5spp8sPq8\nzD6bx0O4TLRzLqaK6I5jFZ5oxyIMND60Vnte6aT+v1fXEMru6qbilLKYUJ80IjZ3dLNyQbK/emzP\nGGa15zJ4BCb3P3zhiS0o7iOpSTZbdyFIcBmkvLFPy+qA/TlTcW08ka58F2GwnBXLRbnc4vYkhMaa\n/JRJFhizZRYy/Y38+vjGTunLmaYPznV0Y1/z5Wk9XGulmfqOEHkWHHdFqnq4JXOdNoxlF+oQzBAU\nNIQJxasQLEvNdFN3q6DI479q1hXCxotfSYGt5TUXc846XRelE4SzWU3K5Bn5DQRKJzY6wZD31kUY\nZStZlenqBbpONdfbn5Xe+uxX1vv8lx/6dV2lXcmFSSk5HPZeSc+X1x+S9O0ppUlK6RnljItfG4bh\nk5LOU0rvKN/7jvLdC42NiKAIrCIveEwxLIdxzgHmKf4psXJHsr1hSTiF2SU2lodEKj3p35wb0hYz\nwspx0M4T6dAiEYbN9z7WgYV24/QyFiX9dDMblw2XBXcJZuNBf1w3lZv28/sPshWiieb3H2jZzXI+\nzd6OTvd2ap2Rbl1Cv8ob/vjGdi7gXP7frXNkBMHA37Pilqx28hm1RFEmff7X2RTcv5nT8e89uaOD\nzz3Q7kkApb2y28Uz+3m28fzB1GQs0LKOhy0KYD0O0+fPg1rOMQ+Z6JXBTzAV5vRY+2We4j0EvIdM\nAUIRLvQRoR6CPU4f8EOtwj1qhUkovUW9N33J5MYISWO5tAemrStF313iq7RXtUBSSj+lnFJ1K6X0\nSUk/KOmbU0pfp1y17/9I+huSNAzDh1NKPy/pI5LOJX3PMAyote+S9BMppamk/zoMw89ddj/HFQAX\nYVkubGH4BnOTDuGxr+MmZMf7OfMyBswFltRGS8anl/E+1o1bBkwoAd98ra7yTcbagz45BwFt1tbF\npPgRSYPLhhfi32OR5GDdro67/ca1yVp3V9qLqm79ZEuArVIp3FxKApDVmwXFlg4+d6Z1l1+vdjod\nfO5Mb7p7Vi0Syi3ev5GL+0zunyut89GbwyRbJxnXCIFEZGW2XGmxH6n4IfTXLYajRVMQx4s/vaSn\ntF8sibFZjovLgekhTPJ8LxQg5VyLBnD1MHA+EjI2LKCrn73MWPthZAh7J5th6bj14OzUWKdteUsp\nao6MreH8XhxZwnrl86BFBNnyUaIwG1kPxAcD94Iog2MEtEiZntYJGJ9LiwDxa/t1vZAL1/ScCV5z\nLZrjMs4PAY2nfodbKlg5Upi2TCj4SKWlW1jXU9G5h1PYoTA7yBY1XKPSmd933p9WVif1RSTVM2Sn\nD86qxUB0hLojkmoCX7c+r0Jo+uCsuCQlwnP3TJ+/mSuFUTUMQXFw/0THe/s6uH+iu3tP1nHGZJek\nWb/MzFod6On+xZrfwpyOj4wch0W5FliUbzDcG1IZPCeFUCjujVscWAfH2i/rYFWBayxkr13DM93V\nrdoH7uX1ecdJb75miABJcSKdr1daG+mLc23Ga9ZzeL5ozoWRIoSbw5RtDY6oTZmtgyg4FIOGKSi1\n/qpvfidirYqxiklHI+9EirTnMWaC24BG9zNnnFsQyHqkU4/TsOkbuRySGuExrgeBebtQJB56aQF4\nKmt1pRLbtAoN7sdG7jXRi7Onyul3+T0XHsc3MlnktJvrdG9L/aTLbNZ+qb3PZVenW/cVR8lWzFk+\nJa7krcDn4J5wU3p1FRgFj5n0vWb9UrN+qeMuqP25rONSJBlGklx2dSiFwDj9jL6tzgE5RawZ3B+q\nfrH2sPpwoaF8YynA9eFQJ7fyiNB5xTkwO5/PiAJmBcCmd64I6xO31hUiwsxLBLDmccOI0AVvOsiZ\nhL993V2lbZwA6ZSLEI9DajT3+TxEJ7U1I/EZPYTWXmfSLBJnFrorQGMiEUitlo9Qm9OZs4uyLyJB\n4yQ+NrwU6f3+LP7szl3wwrknBfiDvet1Stbq9GX9p+s4IZTudDc11bJyKthIt/qcxAdv5Hhvv6GO\nd+teB8tjdcUtoX32qR1zY7Z1d+/JfJTCTlgsvSbZitjb12y5qsctrLsIpR8sj7Xscr7PaTfXcXdQ\n68Dy/KTjgxdR4s/xDsck3qufrZttpVzU2uvhRs4T2FcQAcHhpMCufE4m9n+PwPj88RvcVDCYQ93T\nqQkuwvzgfFzXrQ4HS+mDM1Jf0tOaqk3Qc76LN08QfZS2cQJECl7F2GoIdyGIY2hWFoELChcgki5I\nXKwcLAUEii8IpDlhYClowIBsuDCE6A50XAsZRb2HOG3dOSRe7TtrFD9Vj4Sty0vTwU+IZ406m7QX\nu6cFr0QKQbTQXEezw6YWhiQd3v+cenW61x3WxLzjGzslnHreCIbjGzvFXVnpaO+GTmfzDMhqlXNV\nupmmD85158n9KqQ6revhWL0mmi1XmvTZ8ljO2mrpLjRphFYxy9HwnvDo5MN8z17whRAIuVDy3MD2\n2HSsJYS6z8c4RcLXBOA7a84PX8eKuGfgJZgXv4/+rqtQJcP8MoHBX2gAnIaX+R4LPaGjSy3iLMCO\nRCmMR2kbJ0B88XfqmwQh33RYG2QgxkT2dfIQH0zoWItwilwWELmSVHtOopXeTAAAIABJREFUbiS+\nSQE8kfjWqZe7MPPCx8DcRQhGhrBbRVHOkIgOGmlZNGUQ0ya1L34d+oWQ47l5D4vKzzBxujf/XDie\n7u2oU0byIZpN+r5UO9tWr4mOu4OarHe8t69ufZ6L+mit+fK0Wjan2s0Aab/U/P6D4jq1Ban7Safj\n7kDH3YGoSSqpAsReKNgtLzYC12EdoOEdMwNvICrBDMGlkVTB0QDnIw/F86LgbaC0xs2tVvJdmGfH\npII0GMWcJTX5ULx3oBOBuTggirLw6u5YZoRuWRvBql5X0BkAdww4P0zbOAHipfrComhzFtDybD78\nQC+q7Ka8WyWeVUvcndwHGgKLFH98YkfMyTOghQXTNYLCw3/uv/IPBH2u00o2QwiNzU4/+U7Ki5Jw\nMI3KW3d0UxDovM8UA5bCFcrP3FegkufpNdHxLG/u5WyqZTfTfHmqw+VRxieWVkSn8EkyzpGzZCdF\nOHHQU2aPRmUvSZUVe9CDWcXZrTOtdKij6s8DVDJ2roUZ86j0lQFL7kXOERsQsB3rpC+bDHoAwhyi\nFpYN/ccKWpd7ooh4Lk+VGNfM7eongcHwLNTdbd3vdaP4sG5xTV1B8Ft3r9gzhzoSBMwYt0c72nLj\nBIhHHdqoQR7swBOm4viE8WJymq5bIe4Occ3dEvHgfk4jj5ybaXVXLtM+cRRimKFQleNefdU4ZNZ6\nhXgpGJIumABgWcBQ2sfgqtdIiXN/Q8t5RiaLn3t6H9HguTBTjPmkL5ptNtfx7CALm1kWqHf3nqwu\ny70uKPdYEbg3YBAIgF5dvcZpF6Q+hNJS0yogF3VD580G9sEmyN+fVYuFZx1bfNJFpcLmj9IOq6qp\nAUw91MrYEgL2Ohy4Egtbg5RQ9DIOgKbwNmaC6zGy0NRdcDPBhEJ4hZvuvBh37cDmsDy4HiHmq7aN\nEyBohqlpZp9oNIWk5sE9pZ7fsDk85doBsLAUJnVR8V1Cay7BEU5B+IqFy3VhAhKnR9q71oichbn1\nP3I7/GxWFoILQYSbL0SyLtmYHp1aaVY5MYQzeZ/NKOXFj5VDZXkA5tNuXl97BIvnXs6ibgkbNzg8\nOaJy0B/r6f7FS81wtLkLZtLN2VQHOrY0gUklh9H3cXb1ZdncbgXyNzhAQTfn3hQY8vnslcmCvg6h\nru/qVPeMBRv3nVTBzpwBeEYRq2WdP0lV0WSLbL/2nfXrpDEa856r1eX6MQibmZa6Wardef7NZRjb\na20bWVBoXLTHQVS3DFgwUMWPtV83U6d1LXJMCMwXjd8HajvNXYJxnN0LtngZAQBS6pnk/saZMFgC\nOZQId6OrApEQ3u7Iohi7MS5EorJW7iP8AkxpNrvzUBAC+VmyOZvR+5aMRAgbl8j5LAgKZwpP+l6z\nrmVWutDDwvBxnRVbhIgaAq8XJQraxphTHNn7C38GK65XHImwULiPrkS86M54jGkQAcdYgbs21HoJ\nBRfh/lx86LShBPCsa+VDwnimvCYDFI9SnFG1H8GDEHJQ1aNL8FN8PvIzZxzEweJHaRtngUjtAkSr\nIhgQDj5wmNw0JK+nZbvQkLIwGtfVQGsCpjmxxye/s19IUSXdCUQRxQmt4gxHtCcT7/gJbRzPB7dh\nIROBuleAZvd9W3cqP3OwJrMbSJk/x5mwzIhAhHCMaEJwD+Ie97rgmURK+dSAvt3GtZwoqP88o7sa\ny9H80scX9fSFDe+bCasymJ9twRx32dDAHnJdlE2NsNm/lPqeN3nkzlzMZnVhxZxjNSC4PSri7rVb\nedyP37gFguIMwtlFYeBgs9PhnV/yKNm4GydAfBCl/KBuarH42LTu47rP535e+IdeJWxWNlSQvIie\n+Jkz48xZJ3NJEsl8eZO02AstIi1RYjEsmHVxHaLwEVgMGscXWxyKFVXMsok9FwWfPR+GcCVjIbU1\nOyEXcV9cQEKBYysIAhf5JXd1q14XzXqq+QVwV4o6JlhJcC5caPqBW2PBRaQLKwiSnLuYDipSnNhd\nJt8s43HBYsju0W7tGwpg17Aj+kfRoTxPrRXH2mtxt74ZgzbcvFZNGlTQ+ccA7Gr012vkoByYD8ad\nvmExLgpMACnvqm0DBUgsZoAqBgefNE5yC14IgVDCdmMcgUl0ye5AH81dpJDcAX65xpBUbJ04AhPm\nYq+uLnAmkGvmUnUnVavmiY2wK6FX18YIOwlAbLdiDJyF45uHaAUaXgqh6sKVMcrPEnU5EQK++DMA\nGvwJnpnrubBloYK90CeuhwVGLpBHBiTpSE9UwdICniGUXNhA+2f+uA6Wlrt+jIlbmC0DebeOp4+f\nh5PhBhGq5XrVZdNuI9T45xXCJuqrFcPa8gJVnq/CPCO8fSzYC+TJcG1nxPpRD5TVdMvoqm3jMBB8\n9/w6kGVfFHHyuPt/oSk9REe+An7p2A/GrHOMRIqaDlIkVLkkxxRuIx756kRXwkTOfYuT0+NeLtB6\nBfMQQeVJheNrcV+PPDjZyZH+rvxmav3HqmGMZ8VfZ2y8LgkgH8Ka/masJubqWPvVhQOTYawCDM0L\n3XOY2FSZubvUTS2rZgejIrTb1krx4z76qlSkEJTMPfgI68up41h2hPRdYHl+Fb9zbI4kTe+DZ4A7\n5gLXiD76AVeMwdEIhPWo1FjQjq087oFQ8/wgF1wArf0jioCNEyBujuVJas28vOH7CjziP+fBiVBr\nRALiTFNnuIJXjNmFDjq2aPluXURu8jG5fpKdF+Zd18UTJqZrFvdRsT4QFmhxns1p1dyvU3AmWvN5\n0lhhIbhmVZMGoNyeaIZlBjDoJwOSDYvAiU0Xbh+bJly2WX22rHX3myxrp1wjULMmXlQrRYr6Jm51\nXJZGgELgmRwwZCNxH6w+J1X5eGE1ePGhEKJLkQuDtYarinXEdcacIeY/9z/myevKjIVDHp8oJzEu\nsLVQ1Bfh+FMqvjvgHePXrs2rtI1zYTyVmTAc07RQe8qWD56Hs6ZlUhEC1Ofwmgye8u1AnQQIizsE\noBjALqxGhAEWAwxGzFEcnlldKLkttFtdDMJzfmYIz4L57+4M5ieCzbkFoWXbnAq3aFi4LjwjfyQ2\nJ6Fm2qo+RXtqHhvQiwufFiCSZ0CI8Ht3+aJEZBYxJyW/J6+FEP7MZ8Z2TqslEQB0bArfZHk9tC7h\nOGt6zGrNHKOTRgh5iUx3iWENs4ZmWjZguVsvWD5znepQR4K4xrxLgbG5q8KYez9D0AQnCAoBz4wA\ny31e13US+2RZ+3zVtnEChEWJb8myY3Hi1yE43N1xUo/72w5m+etOGcmG/OM8gjifY10WxWkVXgG2\ntYsODYQGC1Az0r9Pi+ZF0BzopGI2uZL8ab03fVvbovFsW4oQ+UZHCy8UlcyokQmYCxi5VlCzqQtB\nX4lSscHcMuAv2syPiQxXKn/PT9Vj3jizBUsH0PdAxzUJkWfxPCPftDTPsSFRjjHzsg9hleZrIZjY\npBR+creEv2xQCF9YoQCWL5erxH19s9N/+uolGhxQxkU9KCmTjB999LQOGpZVWwMmrNYxzwZB7vT7\nh20b6MK0XAJMQ39wr5+AeY8/Sy6JFBqMQXfBQe0HN+PQpvj13o8oIbiqmy4PfBtRwAUClUdDSo6y\nR5hTiiK/fjxmmNz52i/pKQHSeojYM3/b32UB42eeIDjcusANcDcqDtiaNK/pW36Wi+zeXl0VUAge\nHK1OcTA6woP5dRDvjm5WjMgxnKUJJ5qH6XPfY+OMyz04N2ac8dqpN+ypxTb4rdfucC0eCiVcXzS6\nh4whdjl+5vhNjP+quZ4n9DHu2eVb1pkOYbisYz4O6eIuX2ZtfFGFcccT6Gakm29MKgxAl+ZzLapv\nioQdL3SvowBwOFcu248pDwtxrkUlg8W2DrCVBY8pz0IJ3CMYrVLezCSNIYwc1GURnZTFcyyvahaH\nbgHUtvkt82qFQFOOvIiJ7uhmNenRpoxRCOSwJg51rxl7KXAKLK+xJca4QlnnMzAPL+e40qziRnAS\nsNwcu2KzocnzucKBd9FvrsXGY4OxSTzMuShkdfpGv+kvmI6kajHw/G5ROPERy5OsYb5D6D6A3EiS\ndMwmQrRtNfcoOxBWt9RGULDIcf+xnh0od7yD+XJ85mHbxgkQNo/7gGMSGNKUUJlnUUpxrIHUxvj5\ne9GlYfLnhTjU+sRHOiybdH7huoclZdrPE0FLnZYMXybfJwrB5/dxDcpv3OLBAnFq9/jZsHqCC7Gq\nfjaCc1KsARo4ChiFs2s85Z3NtipuEW4mfRu7Jr5YGesxixS2MEI2wrpRmNjNdPCEu+WMTMez6Ke7\nGXwHC9K/mwPhFLwOijuvCa9yTV+LjL+nELjQA48AbPbmwjjmNPApOCiurOgXgqmz+3h5iDFTFeGL\n0CFsTD84D/iqbeMEiNRqgbAC8JXHtScnFxaLhyedKehmoORAVJjlLGYpzl3hswCiJg1mQDx/bCnF\nAdxhhqJzIloTloxrbbgIbpFFREblNy4oJ81CckEJfZ1n8KxUxoeNGmSw3fo5gm1edDbRFNLvsVw8\nqxRLiWejryTrMUYoCvrOfHj6ewiyyP8JYDbmBzeF/wdO01Xh1Cqhi4c10X9Abe7NmEZG67JGWyQV\nu6MNb/vzMyZ5HDPe5pgHyoK+LYuAc2FOzkwenxBkXpaC/wf4DJaVVx7fxUJ9OSbta20bKUCQjG7i\ntsdBBgWdSWPASNtm8ghrSWPB1Nt1WnApTNUQPOHXQlXfLZMOQLgw37aNCjnpiv6P+S4IxrHlwT+0\nmQuTheb6Q31ZuWdwG3gGrKFYpOu6CfN38rgEv2JWNyEgL0IS8/uubjVuVoQro0K9W1r4/hHufKJ+\n5mPOMzEOME2PdaAX9VTjyvqmY45xCRgjGLUOQk+11ElJfGNbLrTbCGuiQcw3Qm9ZAEoHQL2/EPDI\nfWEuHAtjrTDGYQUHFIn1wbpw7MctMQR91HcJrhCChnvt2vPGvFCFb9K8/7Bt4wQIpho8gbELIgUY\n6Sg7YGImWYUmcK6Fk3v4vLfF5WxRxyQoYBQhxMBQEGy4BLE5I7TIgopiQ/lebM7AH6bN/REkbMJ8\njSgdcKgjfak+LdLHEVBs7CMdiggS2tjxJYQQ4xiWWFTjwm0L/CV+7wKAjZvHJrCosbYMnk4QAdHI\nRIYYa1yiW7pbx4V+4rqMQUiYyIFPrOpzYzki7EjXx/Lju05Sc/yAMWRdgh/w3JwPc1e35FFAAOwQ\nKFkx4T74fJPfAuMV6zrGdlHXzMz64dEtlIm7VPkZ2hIGbsFdtW2cANktMNRuAfk4dQ0ADtNUciZk\nlu4v2enNQXLqLggGN1mlODeE/BhyYtgMbMTY+rMGYcf8ZxK5Z1gYgX6zCN13dXfLNxyaWMoC8qTg\nMCtlvgT1MU41r0IKgG9VNKck3Sn5KpjxYZHlO2Lhgfx7ESXGMiy6ZcV8PBpExMY3NG4LAjwn/1HU\nKIO9Xg0NxQHWQu0Qxp9NCteETenCjzEGdPW5cF+f/iDSqfvhLFE2OrT1cbgWDITxRKi6AmMMg3U7\nq/f1vozXp//Gmcu0EHKhEMfh2zFLl7WOVcs6f5S2cQLEOQXL4lezafL70zqR8Bo4OY5wpvvskho/\n3rEBrudtHK7kt84diO+2VHH6IbV5J7ggZNS6NQEJLqjuucJa5LYs6rWndWMHe5boENEFFpEDmIe6\nV4WcM3iP9ISIHMFSxepgjACnIXwBzkXeybSZn4iiBD193BCyYDFgKLBBeWYfb4QT4zmxz/2sGF9H\n3J91BANUcqws3DTnmpyaYAMUHoPeuLP0w8+tDeJbXqtHOqzjxBq9o5u1j+6ujtdefoaI1oEBUSDI\nFQ6/ddq940CA3zTA36u2jeOBYGEQbeBhD4pmcIkJQBhH+bUsSSmkcoiNFjTDBMTC8UXv4Tm+DfdC\nilyK+HxdTUxM5sDng/3pPi/gp2svXl9WD4REPBpcD/gXbCQWmJve93Qo+AxsQKIivmg701pOXHMw\nEFdMihq1mOOMUbh+kZ7AmHvuR67XOa04EqHpMWMUwUc/PcelPWRrXd0t8A3Wg0f2XKlkXpBjF6f1\n2XkOv/6u2nN7YNjmtRfHo66Ktcb6OrCxYB59LHC7EXTBDQpcKvK6AvfCTcPiwzJ3DCbP1UJhKbel\nPK/SNs4CwQTHp4/wYpyiLkkwAHnPF7cLEvxGP47QJb37syEsWkAS4YAWxHdd23epQeJ++piV2Wld\nKkK1YTPo6YB1bkK76elcAcd0/FwYF5DcG0EixbknTpByYepJhzw744gb0ZvFwCbqi07HKuS3aOpx\njoeDd3d0qwGhiYSFpYlAvUjNx7qYKJPBvHxBp3Wt6kUhpzwmoc3JtQkXIywUsJm1PbODnr3y8QwI\nt7wOFtWdpSwC6wMBCN7jbtfFfeA1evsqnMn9Qjg49sS4tnlbs2q1+ZpEuPlcX6VtnADhwSBBEU3I\nm6XdeEGcmVVhw0RRD0NqcyoczZc4eDnOsvXPIptzWa9NxAGwjYUXQijColJYPmw2x06wjkDN3fel\nXbaRx59B33favf9uVjScF4+BbAdOgYXhrl0GCeNsYbQti3ucW8HveGYIY/wW7CTfi2JK02pxMG/x\nrFEV34Ug90TTU2V8Wqy9EKJBs8+vo4CRA/TTZqOFJRD8mRAYzDMha8D+mO91I1gQehGCnVQsa3wt\nMB4n4LkyyPye4K6gVD08LQU4y9oFU8R1QkmOlc1V2gYKkLbegxSLMlgUWbpTIBYMQIp6mFgBmLpM\nsvuJPvFeM0JqCxsBnDpAiHR3opMLH4RIWDqeTDevZr6TwwAGmVQHB30T8x7fY+FjbXhEyBmrhCEJ\nyZLPgXsF3uGu3kSc/xr3d14LVhxj5RvTTXcaQhmcA4DWi/Fg6a0KjrJWlH28bK0QVnaXk8/pj4dq\nmW/WlHMmWENsSgRC1OjI/cxuY8s6lXIdkwyUPlGFxxM11WBSLKvsooBrIUgQhL6pHSClDytFkW9f\nPw7YrtSSy1CyWHZed+RR2sYJEA9Z0bLkbAlk5FXAWgQHYDGgtWDmYWb6pswS/6RZAFg0LDgpyhLy\nmubckKBpxfbzBe/RBgQX1pJrcqfYw2FxTcH5JfR/rHURVB6x6tWVSEabZxQhz0j4GtdGpe+8B2EK\nIc1Ghx9Bv3AJKVKEu8Spg1K4Eggpxo1iN7iLzu7kb7gBAYw6toTQGkde8ryFdUrUJdIj4mxeB2oR\nrIwF1pzT+sP1JHSen+9OPV4iAFAA6V6RLX5SrCiE9WXRFx8HnjlwvnXBkw7q2GBZhZKa13FyUPeq\nbeMEiDMV/YBkXxwsdrTSUjO9pKeFn9zbRLYgZ5jIEH7cxOaefA45x3MwaM5XkCJ6NAZtAfBwnfwa\nbDovXhTFd0IIBfiaNakDrZKqwFsViwJaPZYPfSEUzG+cfMTn9MEtNRdMDjK79nZQdlr7EGe5AN56\n3Q2PcHkImM3KbzMz1o+6mDX9IGsZzSxFEuY4EuT3ow+5dOPMXKW+hvWdLexuns8PwhTAMgQD62td\nxxK3ztMLXO14wiFjwRp15ed5Vm3woK2yh5LJVkh7mJWPx1XbxgkQyU3fXu7L8bfdcJGejgSmoVkw\nuxmoADlD2GT2QQsoYjW07M0A0vCpAUElz6SNit1YGEGias+P4boIl+VIK3gdVJiF5EwADlM5/EiH\ntd9ugcBgQTDioADc0i/CwY7JjMOFPKcXJR4nDjrpbKIo8QdNnvexXjwZDrOciAIcjCByxdEbPl8o\nAt8wWEMBhAYH5jL3lX9+5i4AunNrnKXstHdAXfAOJ7LlAj+UsgwQXMqV2Dr1pfp9gLzgW2BEzAH9\ngKPiWCAWnwsuZ13jPnKPR3FlNk6AeL4HCwvJD9glRXYkLEs2IJYB18JSYZOPpa0vvjGY1Cmqcl9W\nO3W/mKFSW2yZYkFwLaTQqvTLwTkXlGh1d10iwzaiFGhPXDTqiXC9/L04euDEBKgzUun30sY82K6B\nAwVF3vsVaengH+AHYC29WjIV/3D70PyZHxMZx5DMAEl93GPDtNGo9oyYsBYYJxdyPtYIJeeSwBtB\nWeC2OU7Wrp/AShDcHJeKYguOU+AfQa8P5YVwWivWZh6HhY0fkZZVFZg8U75HMI95Xh9HwHDW61Xb\nBgqQ2MxeHs9Dtgwy1ghgF6FUWnwe8f42vTk2hYd1JecLcKZMq+28whXNJ4NCwRyG5BwNX+j+f0n1\nKEcAUa6HgBzjOFkDRdm/Tm1GKX8JZ3pfeT764sJ7zCyVIjoU6fgtcIcmdmxnbWPuPB7Pw0BbE/EB\nzI00hLaSGPNBwxLB0uMfFlc8c7gK/D+A8TgREICVymoeyuVzwM61Ot3U3SoUEbDO8oQMGdGyXndK\nNvFC82Zu3HXEhePZFtpt+gv3iefyfQAU4FnqTifIJLap4C5dtW2cAGEQeB2Sf1IXuZvWfMZiJH+A\nDE8HQINctqzaiYbGCk5Da5nEPXfLtWa1Px6qA9RCC+P3R6nDrqDyAbt6fkQUEg6MBwvKIxWd+hrS\nG2eW7mqhfWOuorWdnDRm4HINrDw3f6WITIQl0p5F4gmMuCqeyCeFy0IbV+qC4NSWIwiXyMlcUy2r\nRnXBMg7Th+k/a4QvlgfRiE5rPa0Xyz0jTM2RmlFtPrR9V1bdXd2U5ytxfYmDqU7r3AZvKI5U9bnx\neXTlgcXGdcNlngjuE+MIZjTVspwZNKYCxCl5j5oPs3ECRGrT6D1vgNCZnxPjJiRx8ggBBk2XiUdr\nSKFppMigdcIT2jz3KW+6Qx0JEtCuOD+FWiDruojWRVBILV8CfguuDTwCr6LmNHgHEEEx2Ah8dxz9\nIPyZhdd+I2B41jEDMYTmpG4A0vZpnJrnyW9gFGTluqnOHEnhNjjRjAxjrIVO61pEaVlcABfouC3k\nJ60001i4g6lEKgAh9nARHT+JRMJJY4kyTp0iGhJCFus3KxO4G+N6IG7txPxEBI0qaK1VFAWpSW8Y\nC1pJppiCsk4qhQvkp/WSnJTHWDhY/6t6l67aNk6AoIU4FEmKQUVyumbEQqF2qhdAhlAD0JWvz3VC\na7l14OCYL859HddiQ5iLaA5yXIIdmTf5vcLHQBv7RoZo5NhLp7We0FFNJETYTHUxwYvXbpnw75VC\ngWjuHIGhQFBbCxRrTPIze2NhogkBsBG0bFKOcszXm8k1KM/KPNMcdGSeEAIoDCIrXgYRZcF4ONtU\nalPbeT8EVlgmCD632mgRyVrX8Woxr1kVhggmFApu2FRL7ast/O3WEuuG1zMbh/xsywtgetQ2yRZ1\nS1KMAk33CrDO/JDXRB/epV/VVdvGCRCaYxJOfkI7ubnspDJfHEye1PIB8v/z5qJC+jic5RuSBYGG\nRUD4b/Dm2VzocohsoaWwaNrFSvIXZj/XjVT2SbMoImLT5pi4BvXn4DvQvRHOUUWsxU18E/DbsamL\n1eG5Ijy/uzcuNGizAh56hOXi9/M9IcaRbMgzESamobl5bujcfl+v0+Jrwk39Y7MMGGtyXXDPPGIG\nCQyhSUa3M1i9IBJjPCYgjgtf+bNCYY+59gzusBpZ/zH362qd8NtOUWnO18pV2kYKECQkOIAfo+BA\nqGe+oqncPHUzzROxxieac10n/7BMPJIhedn94AMEVyMsJq8URs1SphrBSB/9mnyPxcUC9iQ+GgAa\n/Qpexe4FwRLfd5dk0ZjRgHw8AwstfzeiCwCOYxwJLOpUc90sgk8KDZ7nNnChMTcGYeIbxU17rJzA\ntAITGW/s/BsnkU0qkoRbyMYbJ2O2R4RAzFrU63BtokV+Ro8LPB9L3F3WVC/IfS1B0tcOhaucMRwh\n9oiMIcAI8V8WifQoJYpuvA+u0jZOgLDpcTkQBu6zO7lGapPdMPVo40xEqdWmcD/G/upJifuPfVRP\nE5ciWuNnj7DRmSQXHJigXNuZltgfvbrmGbPPOq8mLAj7rOA6wXuYVdzCE99iLFZVcOUcjN3iJu3X\ncWV8stbcrULKtanXV+F3zq+QpLslVT2EDvT2ReOmMBaeXBZZqlHaz10y5iPqccyqYMMqcjC6U5TF\nDIZquCRYquNyiygHNjLPhzJzwcjYZYxs0YyXlC3UF61eDc/gNUni/mFdIjRcifEenBNq5rhlSfjY\nxxiLLReRWlRu1KOk82+cAIHkMt7QLCAkuaRmIbtPjd9LPgoSl0XQug67FTNA+2Mycm2pzXMJVmbm\nTIy5IJTwc5MSrYe1wrXdagkMI7SSYzYsKNw2nhOLIyqTtTVa/TncDYmNeFLH18HCbAktiqsR/nWQ\n6br6Pc8z6dVVfz/o/oG3xHPF76k8D4jaWjZeF7YtvsP1D3Wkm7pTrZQg6AU4PS6PEJYuB5zPmzGD\nBcscOJ8EjlIrqFqsDWF1rP0K8I+Be/4Sucv/jwxvxtAVDu+RwpHvcVDDtysTqBAIfW2BgZEKMnbv\nH6ZtnAAZh1x9gWI2OhOV5rRzNjATg8bAAvHKZeHuzBvgyrWgL3w/lJhQcfR9Vq2FXnG8QFfvHwcU\njSMj3gATY4Hla6KhaAgMvoOffFq0EhaPu0yhk9m4+5Vf4KZ3rhTaUuZ7dSXha7++5t7MXZSiDPcA\na4l5XGlaBcyxWXrc192d4JdEv8HEiFJhfZ4UciEJek6cc/fKLSJcREhwLmBZNygGhAfZzSg0uC7t\neuzrdw5L/k92kxcVN3EBstS00thRPOyB7JosKg6IK+ouG+H3ZbHmPMzrJMYorNRW1btq2zgBwoMS\nJ3dt5KY+/qzXaHALxDGKTsHxkIIq75sfcNRNPrQslcMRCuABUltb1CMxoPKkqnNdFqnnTEjO8IzN\nGEzL/IxscIhJpMdDMIsxDI2SK6mH5uMfqfxR8exE0Pm5vwO9UTuUlPLTaj3lQsuRfn6s/cb9Q4Dx\nPkSw3I9lk8vi12nnZlY3F8/lPry7qrn/4c75OnKMZT6aR7d+pbBUJzYvRFpCqLIZ29KMNKwXt9Jw\nJVtOzEpfqk+LCI8LEv/rnCGnB3gjeufuWqyNUAYA+752HrZtnAAwFH9xAAARlElEQVSRwn+TCHct\n6+ZFC0lRkQzcwwcCgYDGanGRVck9aAu7wCHh2iwmrzKGFRQ+/WndFI6iswAcuHRs5J5lx/picXYm\n14lx6ZvFi98rBaDofjCaDvcDze3Nj4ZwX/kyPMQ1ZmR4drqpO+rUN8V7vCEgsOpcsO9qUa/t1p4L\nOycEMkL0Mdi57TES+T4ZJ8DF8PKNnXKYHa3OszNOLgy4p2t88BR3DceuCesTcN7dN6+ihrUB/4nE\nQ9YK4+2ExVibpPjPqhUU5Ry8anxUuWPNkTPzRZdM59EVB5Uk4v6BG7j0dyKPA2uE4TDoTwuIxPtx\nrfCXPbFOCtJam42a+4a7EJW4QgDSQtPNqibh+kRieI12oC8hgCJLltg/98ubPBYWVbr47cT+utbi\nfYhyzu4kvB3m/n4VSH4/BCr5HwhB+oIl5YLCAUvfcGwYP70Oay3cl1kdLx93Uh18fgjxcyIcc4XF\n4dG9bjQ2gJvOAvVQs7Oi9w1LGNd+uaub9bo8v4OjYGPuVrHWx6FZj645ADrO5QGDcUKbWzPMCYTB\nq7aNFCAsRo/x04hq8L3xpEtQpNfVOsFsHIdrQcyRzACvkZAU2trDnaE90SyzZhIQEkyo5yXQMMl9\ng4f9EeFTt6qICJCuj1bhaAY/0Q1KOIssFxU6qffmeoB7PBtHe7rlJcHUbU+sZxFjxTBeZJZ6tjDt\ntKArd3Szanquw3jh4nEf76+viZwQ1pK8HC9hU3X2OzYtQKKvH1wtv6ePPaHQEHQR5TixPCBXcLs6\n1aGOqnU2XqsoC9IPuLrzagjLOms33O2o4+u8J57Dz+EhP8etO3dvrtI2ToAgoX2RRgivDR/6psW9\nYbNEvL6vUj7/Jor0BN19WsFWKdBvJrxX11gkY5/SLRO0M1hJmzDWXbgukQE3L8f3QFtQscpBXNwn\nxsCZkAhSogyEa/H9Af/I2+G+RGWghnvY1U1vT+yK8pHz+lqKA5Bofug136cfHi4GEITN624Zv3cu\nB+OK5YZl5GvAiVM+js4qvezgazg4CLbIeZnUz7n+mBtzUoBe+umFk1gnzA2V2yMM3xYLoo8x5nGc\nalh9bY6Vu1qhnoLF+iiZuNKrCJCU0penlP57SumjKaXfSSn9g/L+kymlX0wpfSSl9J9SSof2mx9I\nKX2s/OYv2fvvTCk9l1J6PqX0I6903/FG9cmhAfIxKTTCW5isTrZiEXgoFamNrz22ajCb4Sr4/bEC\nxglcmP1sEqqBef/DPI9Si16NzF0rhB6gJolbLBZPDvSMUyIMmO7OcOVs2XHkYVkWs4csEXQ5UXFV\nKeW5f+tq0cFRQSC59ge7IQ19rOHX5fmJUNE8zZ3SjU6EahMM25PWwm1siwfzF/PesSuEQriZoYhg\nHnuSIOvGqQFeqAqsARzKSzHQZ3e9PWOXNc9nY/ZxHh/WwfoCvcFxMe9TWHYhjK/aXs0CWUn6W8Mw\nvF3SOyX9zZTS10v6IUn/YRiGr5P0C+X/Sim9U9Jfk/R2Se+W9P6U0na51k9K+u5hGL5W0lemlL71\nshu6dPbNEGHI0OiR9xAAkhQl/wm3STHQmIRsOshn7mdK4YdmgtGJMLOR3i7F6esrhWc9zbtXV9P2\nCSt60h8hZa7jSDmbwZmvbM4xfZqkL8ZIio1wqKO6cW7qruA5OE0eje4Ff1zQSe3hS4DGNIhejI8L\nRTKNc4gzb9ecZHhYrQDmEFcgQMegkfs8OQaCUItIVayrADMjd4lxdk0fGFO4SMwrc+/1Z4NLE6Uf\n3OVtLdBJxWF4RsBhVr1zNPzZEBiemLjSrCFfRqX+fC3wKsBoMDJXpldpryhAhmF4cRiG3yqvTyR9\nRNJbJP0VSf+2fO0Dkt5TXr9H0k8Pw9APw/ApSc9LeldK6SskbQ3D8Nwlv7nQ0LJtrYo2vEqYl43j\nERoHD90VkkKzIESiSlf7fSY1g3D71V2QVMsC0lcWBIuJa5CLEZnA6zrRCENJlSWZf7PbRIY8t2Ms\nlFj8vGZDZKuIM2bz4oikw6VyWiBuS5xt4oAi18R6OihMC382LDwiB9kyWjSWGved2D8H99i0naKw\nspvaTtsOkHhdrwY/iHVC/ZZMTKMuRhx3EUWFVhVLGAu+MXfCC1v5dzqtSwRqXYTcwj4PCwPB526w\np/5jcXL9A51U3MObuzaUIaCxD+B34D67As7PMquvmYPXpSJZSumtkr5R0i9L+pJhGO5K0jAMd6TK\nzHqLpBfsZy9Ieqa8/0l7/1Pl/QvtopZoT5XzjYQUd43JX/dhpdbPRQAhqPDt3Vf2Ng7PslicuTi2\nnLBQXCsAtkYmZoSRoUt7ZEjyug9RjNeZqpCmpkWzhDadNWPVpgZEpS2ug/9N2JGaoICU2Vrbr6Ap\nlg3gNELxqIRGo0r5Yb2HzwebNnCMiZwt7H3FQoO34PkoEtW3Wu4FuIOXFkCAYg3ghDpm5s2v7+zj\nrNHDJXGLAyWSKfs5bOzrxIWSkxg91cGfcSy42AuQ05hrcsZYMx4Jo2+MjYfDPRHyKu01CZCU0r6k\nfy/p7w7D8Pkr3+01NI9LsxlcG42Fy1gru5/P5mKBRuGVrgKEDqLi0nTqm8U8jjA44Eho0wUIoTHy\nFHzynGjGe1OtdEe35GxVQpXkK9CfF/W07uqW3Y3yeRHKjLEJk9c1tYci+T9aEm6Ak7Q4bkLSSOsF\n65awL+PuIcWxIEdY5O9GASnqigBUejIkY5L7OG3G0N0E9+t9QzJnYFoeBsb68RApY+FcDyl4Sa5A\n3Dqmpil9cJe2JddN6oomTO0YDOPrVcf82Y90WJ8BAe+FpMd7w2vnsKbz3Eaa/1Xaqx5tWTCMn5X0\n74Zh+GB5+zMppVvDMNxJKX2JpJfK+y9I+nL7+TPKlsdl77ulUtvt9/1Kfbi3PXtTf+TZZ4R55pL8\nSIc61FEF9jDF2hBlnDYnqcj8VTXZpawp0KxSe2wDhB6nuOOzH2tfs4IljIE7l+geEmYT5wUbzFZC\ndEwmG8lza3jNguoVURneRxMhlKjGNVVQ/adaNYKNcaXvneKwJIQ15rCkOjpjEJBrxYZaV5xqobme\n0kuFHB/ckSyAD8pRD5P6zBDHJFy6cA2CETxtMIMI0S/qmDmeE+UB40wh3gcXi3tQPjMYzj5GbEQX\nDp5T5axbFx6ei4Nb1tu9ERRZocG2dqUQJDZc9UlZ86yHNvoYBZZ5HvbI/779Gf3+7RfUq9OWhsu2\n4mtqaRhe/scppSTpX0u6OwzD99v7Pybp94Zh+Ocppe+X9FXDMPydAqL+S0l/WtKbld2drx6G4Syl\n9BFJf30YhudSSh+U9G+GYfi50f2GHx6+T4e6V01oL2abBzHMMp9YNieLnwZYCq15qogiMIksajSB\nh1VJgHIhMnapaLlaWiSm0c+VpvrE7Y/ra559s6SIFjhAxvtShD5jscVC89AhGwesZdwcxJSy2esR\nFN4fF5t2nGEM4rFRGcffuf1/9dZnv6KCgYw138f8x2dns7hbAGcGRZG3RR5z/y30fYSBkwZ5fqI5\nDsQyPrnMwB3d1a26kcZ99nn4ndsv6o89+5b6f85tyeutrTMyFiquUMZCzq0WH/Ngwkbx59j8EWEa\nr0EEos/r2PrA+pakP7j9CX3Ns29u+vL307/QMAzpwiJ6lfZqLsw3SfpOSd9cQrDPpZTeLekHJb2n\nCIVvkfSPJWkYhg9L+nllsPU/SvqeYRjOyrW+S9JPpJSel/SJsfCgeQEYtKn7xSwyKQoec9gR4SrA\nUTadlxkkHMuiWFfN2YbTaO4uMXGnJSbApKNpcmQDh2dZ39/XsZ6//Vn1ikiPcwmC3xJhOl5jppIk\n5sVisLK8xD/4ijM3pciPcCyIttSsnB0b4+0uUfj4k+pOocF/4/ZxBbQR+O468pxuHY5Dpbz/Z/Q/\nqlZ24pekxiXit1IcdBXrJ1sBTjprAfGDejiXj6WnwXPt37j9+brOxgWgol/7VSg7vhBuUHs+sjN7\nEYiRJBenyfH5mDmMe+11RNz1Aifju7lPsyp4Z1rpd2//YVXMXO+q7RVdmGEYflkvL2T+4sv85ocl\n/fAl739Y0jterUNYFT4JfsatN8zvqSRKulDAmM8pFkPqNjkcruWXtnik2IgQedi8eTNO629Xylml\n8EFWmumkLqDdgiWcaKG5zpXk9PNwJ+LsWa7nvBUny3lEBQ2MGc+GQNDlaI/Kc4X/LUX0JshcuzrS\nYbOoAh8IdN83h2s5hI5zXbJfvlutkGNN9YSdqtepr/lALPpxbc5TzXWoe3aP7OLxF3DVeQ9uibl7\nQAa3pxAc6bAkCa6rwMvCIs+/m/bMVVAHpsJlGuNyx9q/YD16Ri7rLlt+FzNinVDHfLvLyFk+7qb4\nXDCubmG4BY3r6FbuVdurYiCvd9vR27UjabuaymfqtaUzTXWolTqdS5J6bWlbZzrTdhU0U53Vz/Lf\nrhrmT+qBztVpqi2dak+HuquldsrvIBQ9kCStNVWvLR1K2taZ9iSdq9Oeep2r01b5O9FK5+rUaVv7\nOtdO+X2+xpbWRSCca0vb+pS29A3ljrmva23phpZ6oJmW2tGbdKZzdZrrviRpXu671pae1EL3tatz\nddrWqZIyvWarLIAdnReNdaYdnWlSPl9rS0nnmpTv7ohwdm4rbWuuB9rXuc61VZ7rTJB3zrWlQefa\n0XndoGeaaKdYHFv6vHp9o/a1VFe+M9GZzrWlHXXaKqPclXfRR1s615bm6vRA21rrTFs617bW5fMD\nHWtbU23pXGeaaape0ram5ZtrbWuiLU3LmG2p157WOitPtlWeh9/MJZ1qTzt6oInO9KSyUNlSr4nO\nNdGZHlQr4azM62d0oD9ef9eV2cvj+EArbdd7s258bbJOzrStPZ3qQfk96yivsfMyB/freux0ri31\nOtO2Op2r15Y6neuBdrRVxNCp9nSjkM7OtK2ZHmipHZ1pqu2yT1bl2b1PxzrQjn5XN/XW2gf21FXa\nK2Igr3dLKW1OZ67bdfv/rF0FA9koAXLdrtt1e2O1jUumu27X7bq9cdq1ALlu1+26XbltjABJKb27\nZPB+LKX0Dx93fx62pZT+oGQnP5dS+rXy3kNnLT/ullL6iZTSiymlj9p7X9Ds69ervcyzvS+l9ILR\nFL7FPntDPNvjypqXJA3D8Nj/SZpJ+rhyzsxE0q9Lesfj7tdDPsPHJT05eu/HJH1fef19kn6kvH5n\necauPPPHJU0f9zOUvv055XD7R6/4HNvls48wh5I+KOlbN/TZflDS37vku2+YZ5P0tKS3ldf7kv6X\npK9/PeZtUyyQd0l6fhiGTw3DsJb0M3qFbN0NbmMU+2Gylv/k69PFV27DMPySVMgX0b6g2devV3uZ\nZ5Muzpv0Bnq24TFlzUub48KQM0Mji/eN1AZJmIt/u7z3sFnLm9q+YNnXG9K+N6X02ymlD6SUnizv\nvSGf7fXKmqdtigD5Yogl/6lhGL5B0p+X9F0ppb/wuDt03V5T+3FJf1TSn5D0e5J+9PF25+rt9cya\np22KABln6365Wkm48W0YhpfK388oT+I3qmQtS9JrzFre1Pawz/Gas68fdxuG4c5QmqT3K8+b9AZ7\ntlfKmi+ff0HmbVMEyK9LeltK6S1lIL5NuVTiG6KllOYppXl5vadczvF5SR9STkZU+fuh8vpDkr49\npTRJKT0j6W2Sfu317fVDtYd6jmEYPinpPKVE7tN32G82qqWUnrL/vld53qQ30LOVrPl/JeljwzD8\nM/voCz9vjxsZNyT5WyT9lqSPSfqBx92fh+z7V0n6TUm/oYyA/5Py/pOSflEZ1PrPkg7tN/+oPOtv\nSfrLj/sZrF8/JenTyvVwP6mcRf3Qz6GM9D+nvCF/9HE/18s823crg4y/Kem3lTPI3/JGezZJf1bS\neVl/z5V/73495u2ayn7drtt1u3LbFBfmul236/YGbNcC5Lpdt+t25XYtQK7bdbtuV27XAuS6Xbfr\nduV2LUCu23W7bldu1wLkul2363bldi1Artt1u25XbtcC5Lpdt+t25fb/ANz/Q3FMUVsUAAAAAElF\nTkSuQmCC\n", - "text": [ - "" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Setup data for LaB6 calibration standard" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lab6_fname = 'LaB6_d500-0p72959-2Kx2K_pix200.tif'\n", - "lab6_name = 'LaB6'\n", - "lab6_wavelength = .72959\n", - "lab6_data = TiffStack(lab6_fname)\n", - "plt.imshow(lab6_data[0],interpolation='none')\n", - "plt.show()" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "metadata": {}, - "output_type": "display_data", - "png": "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\nJYFI5axkM9Zc8eaxNaQTDlopIms5WytqbsoR5jWuh3gJS3kqHJV0Y7WjW91o1aa3A1jWynhTx3U+\nEM8vo595TlA9wus8eh9psohmT6J43nRvdYVyvPpUazRbWV56Fs38aHK1+fL8S/J/CTtdUzA18nvE\nv+5lE2F4nZ60RmnjLTqsYlPRL7zNc6PMVogFeovetAm1EAwdgXRpF0twj+JBtHliETH7aWwsNIY6\nItE2ZodWYSvrZzo9z1SIRviUBuSNVFZuKs6jHMbabRtKo6Zt6PpPy7VL7G1eonx7fpu69R2ebyS1\np0fL9rQFj3RS92yaHqnbBW72ZHprZsrvxewqLcLSde3VvQ6n24heKNhEa7YTCjL12y97L2WtmWiC\ngf6JZ/ucCaMJ41rOLd23LKqnqOR/lzabOJlZRguGrlvWrtPdMX9KGfgnPtXJkr9tLGP93ZeHpkwU\nT9Ak3ORBq3knn3TJSJOZ7QCRfyEqk4eUplS3oCu1w1ZrFZ5pYn9HG/lS8STNvhnQd+xaMrakoCFb\nIKK68EhHy5J7R/Fg5d1rB2m/DNWZyJTWqolDZEqci99zhRtnUAztNK5glLnk7tzUiGmRmvrVOJsv\ncwOvSYZpku44M+ye/4i3jReZGx7J2Hv2+hyu53rOGSiO7nheWMmPBx3Xm/rU5ajTNjyZXp4GiRsR\nl7cTN0XqqfdxTH4/92VHA+l3WgevHel7dW32ZDZVFpBp/0iv3P4yhN4nIHrP9plpXIuLv9FjSm/k\nTzUwOeaw3GnS2oiEt+SxEBMDYDdjrP7RhysjkG4gdX4PL13b6K7lXCafLi9ksp9gqI5mscNW58kz\nDzShezMs+r82cVIqszf1660UjeLKbIz9or1nQqXII2V26DI+lB1RCWNh3633rt/7Txsq98samX8i\nn/y/g5Pmy1T9YoHoq95qVq2d7A2GkkB0gSd/oaeReM7Tntrpf/ryXo4rwmg0ccICTG2ZLt0TFdDC\nIwe536HF9PPeU5LrNVj9W2xW3ZBltJhVaxm0n6NNl6nnv4c1Z/VJJLVIrUleIB7JvTUbdY5USc+m\nmXKkdoN8Wuip4Dk1KyNyUvmxpop9f57j9HWLNrCLxRUZOoz+HWmb0Fv+XueL8FZPQ9nhLz6PXpnT\ng+TaT28o5WFvMJQEYplRzi0VWIa2sCqlV1HSKe09qfx1KybQdqhl7MhZqkkAen6UNed9uJSvusbi\n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\n", - "text": [ - "" - ] - } - ], - "prompt_number": 11 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Calibrate Si data" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "calib_si = estimate_d(si_data[0], si_name, si_wavelength, pixel_size)\n", - "print(\"D: {} \u00b1 {}\".format(calib_si[0], calib_si[1]))\n", - "print(\"center: {}\".format(calib_si[2]))" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "ename": "ValueError", - "evalue": "zero-size array to reduction operation minimum which has no identity", - "output_type": "pyerr", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mcalib_si\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mestimate_d\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0msi_data\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msi_name\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msi_wavelength\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpixel_size\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 2\u001b[0m \u001b[1;32mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"D: {} \u00b1 {}\"\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcalib_si\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcalib_si\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"center: {}\"\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcalib_si\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m\u001b[0m in \u001b[0;36mestimate_d\u001b[1;34m(img, name, wavelength, pixel_size)\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;31m# find the\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[0mres\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mfind_ring_center_acorr_1D\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[0mres2\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mrefine_center\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mres\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpixel_size\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m25\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m5\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mthresh\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m0.1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mwindow_size\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m5\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[0mbins\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msums\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcounts\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mimg_to_relative_xyi\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mres2\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mradial_grid\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/scikit-beam/skbeam/core/calibration.pyc\u001b[0m in \u001b[0;36mrefine_center\u001b[1;34m(image, calibrated_center, pixel_size, phi_steps, max_peaks, thresh, window_size, nx, min_x, max_x)\u001b[0m\n\u001b[0;32m 191\u001b[0m \u001b[0mmask\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mphi\u001b[0m \u001b[1;33m<=\u001b[0m \u001b[0mphi_end\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m*\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mphi\u001b[0m \u001b[1;33m>\u001b[0m \u001b[0mphi_start\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 192\u001b[0m out.append(bin_1D(r[mask], I[mask],\n\u001b[1;32m--> 193\u001b[1;33m nx=nx, min_x=min_x, max_x=max_x))\n\u001b[0m\u001b[0;32m 194\u001b[0m \u001b[0mout\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mlist\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mout\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 195\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/scikit-beam/skbeam/core/utils.pyc\u001b[0m in \u001b[0;36mbin_1D\u001b[1;34m(x, y, nx, min_x, max_x)\u001b[0m\n\u001b[0;32m 580\u001b[0m \u001b[1;31m# handle default values\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 581\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mmin_x\u001b[0m \u001b[1;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 582\u001b[1;33m \u001b[0mmin_x\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 583\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mmax_x\u001b[0m \u001b[1;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 584\u001b[0m \u001b[0mmax_x\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmax\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/sklearn/lib/python2.7/site-packages/numpy/core/fromnumeric.pyc\u001b[0m in \u001b[0;36mamin\u001b[1;34m(a, axis, out, keepdims)\u001b[0m\n\u001b[0;32m 2352\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2353\u001b[0m return _methods._amin(a, axis=axis,\n\u001b[1;32m-> 2354\u001b[1;33m out=out, keepdims=keepdims)\n\u001b[0m\u001b[0;32m 2355\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2356\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/sklearn/lib/python2.7/site-packages/numpy/core/_methods.pyc\u001b[0m in \u001b[0;36m_amin\u001b[1;34m(a, axis, out, keepdims)\u001b[0m\n\u001b[0;32m 27\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 28\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0m_amin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkeepdims\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 29\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mumr_minimum\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkeepdims\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 30\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 31\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0m_sum\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdtype\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkeepdims\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;31mValueError\u001b[0m: zero-size array to reduction operation minimum which has no identity" - ] - } - ], - "prompt_number": 12 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "cal_si = skbeam.core.calibration.calibration_standards['Si']\n", - "si_rings = calib_si[0] * np.tan(cal_si.convert_2theta(si_wavelength)) / .2\n", - "fig, ax = plt.subplots()\n", - "show_rings_on_image(ax, si_data[0], si_rings, calib_si[2])\n", - "plt.show()" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "ename": "NameError", - "evalue": "name 'calib_si' is not defined", - "output_type": "pyerr", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0mcal_si\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mskbeam\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcore\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcalibration\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcalibration_standards\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;34m'Si'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0msi_rings\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mcalib_si\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m \u001b[1;33m*\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtan\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcal_si\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mconvert_2theta\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0msi_wavelength\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m/\u001b[0m \u001b[1;36m.2\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 3\u001b[0m \u001b[0mfig\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0max\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mplt\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msubplots\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[0mshow_rings_on_image\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0max\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msi_data\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msi_rings\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcalib_si\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[0mplt\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mshow\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;31mNameError\u001b[0m: name 'calib_si' is not defined" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Calibrate using Lab 6 data" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "calib_lab6 = estimate_d(lab6_data[0], lab6_name, lab6_wavelength, pixel_size)\n", - "print(\"D: {} \u00b1 {}\".format(calib_lab6[0], calib_lab6[1]))\n", - "print(\"center: {}\".format(calib_lab6[2]))" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "ename": "ValueError", - "evalue": "zero-size array to reduction operation minimum which has no identity", - "output_type": "pyerr", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mcalib_lab6\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mestimate_d\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlab6_data\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlab6_name\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlab6_wavelength\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpixel_size\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 2\u001b[0m \u001b[1;32mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"D: {} \u00b1 {}\"\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcalib_lab6\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcalib_lab6\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"center: {}\"\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcalib_lab6\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m\u001b[0m in \u001b[0;36mestimate_d\u001b[1;34m(img, name, wavelength, pixel_size)\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;31m# find the\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[0mres\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mfind_ring_center_acorr_1D\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[0mres2\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mrefine_center\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mres\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mpixel_size\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m25\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m5\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mthresh\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m0.1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mwindow_size\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m5\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[0mbins\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msums\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcounts\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mimg_to_relative_xyi\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mres2\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mradial_grid\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/scikit-beam/skbeam/core/calibration.pyc\u001b[0m in \u001b[0;36mrefine_center\u001b[1;34m(image, calibrated_center, pixel_size, phi_steps, max_peaks, thresh, window_size, nx, min_x, max_x)\u001b[0m\n\u001b[0;32m 191\u001b[0m \u001b[0mmask\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mphi\u001b[0m \u001b[1;33m<=\u001b[0m \u001b[0mphi_end\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m*\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mphi\u001b[0m \u001b[1;33m>\u001b[0m \u001b[0mphi_start\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 192\u001b[0m out.append(bin_1D(r[mask], I[mask],\n\u001b[1;32m--> 193\u001b[1;33m nx=nx, min_x=min_x, max_x=max_x))\n\u001b[0m\u001b[0;32m 194\u001b[0m \u001b[0mout\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mlist\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mout\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 195\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/scikit-beam/skbeam/core/utils.pyc\u001b[0m in \u001b[0;36mbin_1D\u001b[1;34m(x, y, nx, min_x, max_x)\u001b[0m\n\u001b[0;32m 580\u001b[0m \u001b[1;31m# handle default values\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 581\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mmin_x\u001b[0m \u001b[1;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 582\u001b[1;33m \u001b[0mmin_x\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 583\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mmax_x\u001b[0m \u001b[1;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 584\u001b[0m \u001b[0mmax_x\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmax\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/sklearn/lib/python2.7/site-packages/numpy/core/fromnumeric.pyc\u001b[0m in \u001b[0;36mamin\u001b[1;34m(a, axis, out, keepdims)\u001b[0m\n\u001b[0;32m 2352\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2353\u001b[0m return _methods._amin(a, axis=axis,\n\u001b[1;32m-> 2354\u001b[1;33m out=out, keepdims=keepdims)\n\u001b[0m\u001b[0;32m 2355\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2356\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m/reg/neh/home3/yoon82/sklearn/lib/python2.7/site-packages/numpy/core/_methods.pyc\u001b[0m in \u001b[0;36m_amin\u001b[1;34m(a, axis, out, keepdims)\u001b[0m\n\u001b[0;32m 27\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 28\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0m_amin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkeepdims\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 29\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mumr_minimum\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkeepdims\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 30\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 31\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0m_sum\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdtype\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mNone\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkeepdims\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mFalse\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;31mValueError\u001b[0m: zero-size array to reduction operation minimum which has no identity" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "cal_lab6 = nsls2.calibration.calibration_standards['LaB6']\\n\",\n", - "lab6_rings = calib_lab6[0] * np.tan(cal_lab6.convert_2theta(lab6_wavelength)) / .2\\n\",\n", - "fig, ax = plt.subplots()\\n\",\n", - "show_rings_on_image(ax, lab6_data[0], lab6_rings, calib_lab6[2])\\n\",\n", - "ax.set_xlim([0, lab6_data.frame_shape[0]])\\n\",\n", - "ax.set_ylim([0, lab6_data.frame_shape[1]])\\n\",\n", - "plt.show()" - ], - "language": "python", - "metadata": {}, - "outputs": [] - } - ], - "metadata": {} - } - ] -} \ No newline at end of file diff --git a/demos/center_powder_rings/assembledImage.npy b/demos/center_powder_rings/assembledImage.npy new file mode 100644 index 00000000..597937bf Binary files /dev/null and b/demos/center_powder_rings/assembledImage.npy differ diff --git a/demos/center_powder_rings/center_powder_rings.ipynb b/demos/center_powder_rings/center_powder_rings.ipynb new file mode 100644 index 00000000..f5bca22a --- /dev/null +++ b/demos/center_powder_rings/center_powder_rings.ipynb @@ -0,0 +1,3381 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import scipy.spatial.distance as sd\n", + "%matplotlib notebook" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/yoon82/anaconda/lib/python3.5/site-packages/ipykernel/__main__.py:2: RuntimeWarning: divide by zero encountered in log\n", + " from ipykernel import kernelapp as app\n" + ] + }, + { + "data": { + "application/javascript": [ + "/* Put everything inside the global mpl namespace */\n", + "window.mpl = {};\n", + "\n", + "mpl.get_websocket_type = function() {\n", + " if (typeof(WebSocket) !== 'undefined') {\n", + " return WebSocket;\n", + " } else if (typeof(MozWebSocket) !== 'undefined') {\n", + " return MozWebSocket;\n", + " } else {\n", + " alert('Your browser does not have WebSocket support.' +\n", + " 'Please try Chrome, Safari or Firefox ≥ 6. ' +\n", + " 'Firefox 4 and 5 are also supported but you ' +\n", + " 'have to enable WebSockets in about:config.');\n", + " };\n", + "}\n", + "\n", + "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n", + " this.id = figure_id;\n", + "\n", + " this.ws = websocket;\n", + "\n", + " this.supports_binary = (this.ws.binaryType != undefined);\n", + "\n", + " if (!this.supports_binary) {\n", + " var warnings = document.getElementById(\"mpl-warnings\");\n", + " if (warnings) {\n", + " warnings.style.display = 'block';\n", + " warnings.textContent = (\n", + " \"This browser does not support binary websocket messages. \" +\n", + " \"Performance may be slow.\");\n", + " }\n", + " }\n", + "\n", + " this.imageObj = new Image();\n", + "\n", + " this.context = undefined;\n", + " this.message = undefined;\n", + " this.canvas = undefined;\n", + " this.rubberband_canvas = undefined;\n", + " this.rubberband_context = undefined;\n", + " this.format_dropdown = undefined;\n", + "\n", + " this.image_mode = 'full';\n", + "\n", + " this.root = $('
');\n", + " this._root_extra_style(this.root)\n", + " this.root.attr('style', 'display: inline-block');\n", + "\n", + " $(parent_element).append(this.root);\n", + "\n", + " this._init_header(this);\n", + " this._init_canvas(this);\n", + " this._init_toolbar(this);\n", + "\n", + " var fig = this;\n", + "\n", + " this.waiting = false;\n", + "\n", + " this.ws.onopen = function () {\n", + " fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n", + " fig.send_message(\"send_image_mode\", {});\n", + " fig.send_message(\"refresh\", {});\n", + " }\n", + "\n", + " this.imageObj.onload = function() {\n", + " if (fig.image_mode == 'full') {\n", + " // Full images could contain transparency (where diff images\n", + " // almost always do), so we need to clear the canvas so that\n", + " // there is no ghosting.\n", + " fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n", + " }\n", + " fig.context.drawImage(fig.imageObj, 0, 0);\n", + " };\n", + "\n", + " this.imageObj.onunload = function() {\n", + " this.ws.close();\n", + " }\n", + "\n", + " this.ws.onmessage = this._make_on_message_function(this);\n", + "\n", + " this.ondownload = ondownload;\n", + "}\n", + "\n", + "mpl.figure.prototype._init_header = function() {\n", + " var titlebar = $(\n", + " '
');\n", + " var titletext = $(\n", + " '
');\n", + " titlebar.append(titletext)\n", + " this.root.append(titlebar);\n", + " this.header = titletext[0];\n", + "}\n", + "\n", + "\n", + "\n", + "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n", + "\n", + "}\n", + "\n", + "\n", + "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n", + "\n", + "}\n", + "\n", + "mpl.figure.prototype._init_canvas = function() {\n", + " var fig = this;\n", + "\n", + " var canvas_div = $('
');\n", + "\n", + " canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n", + "\n", + " function canvas_keyboard_event(event) {\n", + " return fig.key_event(event, event['data']);\n", + " }\n", + "\n", + " canvas_div.keydown('key_press', canvas_keyboard_event);\n", + " canvas_div.keyup('key_release', canvas_keyboard_event);\n", + " this.canvas_div = canvas_div\n", + " this._canvas_extra_style(canvas_div)\n", + " this.root.append(canvas_div);\n", + "\n", + " var canvas = $('');\n", + " canvas.addClass('mpl-canvas');\n", + " canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n", + "\n", + " this.canvas = canvas[0];\n", + " this.context = canvas[0].getContext(\"2d\");\n", + "\n", + " var rubberband = $('');\n", + " rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n", + "\n", + " var pass_mouse_events = true;\n", + "\n", + " canvas_div.resizable({\n", + " start: function(event, ui) {\n", + " pass_mouse_events = false;\n", + " },\n", + " resize: function(event, ui) {\n", + " fig.request_resize(ui.size.width, ui.size.height);\n", + " },\n", + " stop: function(event, ui) {\n", + " pass_mouse_events = true;\n", + " fig.request_resize(ui.size.width, ui.size.height);\n", + " },\n", + " });\n", + "\n", + " function mouse_event_fn(event) {\n", + " if (pass_mouse_events)\n", + " return fig.mouse_event(event, event['data']);\n", + " }\n", + "\n", + " rubberband.mousedown('button_press', mouse_event_fn);\n", + " rubberband.mouseup('button_release', mouse_event_fn);\n", + " // Throttle sequential mouse events to 1 every 20ms.\n", + " rubberband.mousemove('motion_notify', mouse_event_fn);\n", + "\n", + " rubberband.mouseenter('figure_enter', mouse_event_fn);\n", + " rubberband.mouseleave('figure_leave', mouse_event_fn);\n", + "\n", + " canvas_div.on(\"wheel\", function (event) {\n", + " event = event.originalEvent;\n", + " event['data'] = 'scroll'\n", + " if (event.deltaY < 0) {\n", + " event.step = 1;\n", + " } else {\n", + " event.step = -1;\n", + " }\n", + " mouse_event_fn(event);\n", + " });\n", + "\n", + " canvas_div.append(canvas);\n", + " canvas_div.append(rubberband);\n", + "\n", + " this.rubberband = rubberband;\n", + " this.rubberband_canvas = rubberband[0];\n", + " this.rubberband_context = rubberband[0].getContext(\"2d\");\n", + " this.rubberband_context.strokeStyle = \"#000000\";\n", + "\n", + " this._resize_canvas = function(width, height) {\n", + " // Keep the size of the canvas, canvas container, and rubber band\n", + " // canvas in synch.\n", + " canvas_div.css('width', width)\n", + " canvas_div.css('height', height)\n", + "\n", + " canvas.attr('width', width);\n", + " canvas.attr('height', height);\n", + "\n", + " rubberband.attr('width', width);\n", + " rubberband.attr('height', height);\n", + " }\n", + "\n", + " // Set the figure to an initial 600x600px, this will subsequently be updated\n", + " // upon first draw.\n", + " this._resize_canvas(600, 600);\n", + "\n", + " // Disable right mouse context menu.\n", + " $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n", + " return false;\n", + " });\n", + "\n", + " function set_focus () {\n", + " canvas.focus();\n", + " canvas_div.focus();\n", + " }\n", + "\n", + " window.setTimeout(set_focus, 100);\n", + "}\n", + "\n", + "mpl.figure.prototype._init_toolbar = function() {\n", + " var fig = this;\n", + "\n", + " var nav_element = $('
')\n", + " nav_element.attr('style', 'width: 100%');\n", + " this.root.append(nav_element);\n", + "\n", + " // Define a callback function for later on.\n", + " function toolbar_event(event) {\n", + " return fig.toolbar_button_onclick(event['data']);\n", + " }\n", + " function toolbar_mouse_event(event) {\n", + " return fig.toolbar_button_onmouseover(event['data']);\n", + " }\n", + "\n", + " for(var toolbar_ind in mpl.toolbar_items) {\n", + " var name = mpl.toolbar_items[toolbar_ind][0];\n", + " var tooltip = mpl.toolbar_items[toolbar_ind][1];\n", + " var image = mpl.toolbar_items[toolbar_ind][2];\n", + " var method_name = mpl.toolbar_items[toolbar_ind][3];\n", + "\n", + " if (!name) {\n", + " // put a spacer in here.\n", + " continue;\n", + " }\n", + " var button = $('');\n", + " button.click(method_name, toolbar_event);\n", + " button.mouseover(tooltip, toolbar_mouse_event);\n", + " nav_element.append(button);\n", + " }\n", + "\n", + " // Add the status bar.\n", + " var status_bar = $('');\n", + " nav_element.append(status_bar);\n", + " this.message = status_bar[0];\n", + "\n", + " // Add the close button to the window.\n", + " var buttongrp = $('
');\n", + " var button = $('');\n", + " button.click(function (evt) { fig.handle_close(fig, {}); } );\n", + " button.mouseover('Stop Interaction', toolbar_mouse_event);\n", + " buttongrp.append(button);\n", + " var titlebar = this.root.find($('.ui-dialog-titlebar'));\n", + " titlebar.prepend(buttongrp);\n", + "}\n", + "\n", + "mpl.figure.prototype._root_extra_style = function(el){\n", + " var fig = this\n", + " el.on(\"remove\", function(){\n", + "\tfig.close_ws(fig, {});\n", + " });\n", + "}\n", + "\n", + "mpl.figure.prototype._canvas_extra_style = function(el){\n", + " // this is important to make the div 'focusable\n", + " el.attr('tabindex', 0)\n", + " // reach out to IPython and tell the keyboard manager to turn it's self\n", + " // off when our div gets focus\n", + "\n", + " // location in version 3\n", + " if (IPython.notebook.keyboard_manager) {\n", + " IPython.notebook.keyboard_manager.register_events(el);\n", + " }\n", + " else {\n", + " // location in version 2\n", + " IPython.keyboard_manager.register_events(el);\n", + " }\n", + "\n", + "}\n", + "\n", + "mpl.figure.prototype._key_event_extra = function(event, name) {\n", + " var manager = IPython.notebook.keyboard_manager;\n", + " if (!manager)\n", + " manager = IPython.keyboard_manager;\n", + "\n", + " // Check for shift+enter\n", + " if (event.shiftKey && event.which == 13) {\n", + " this.canvas_div.blur();\n", + " event.shiftKey = false;\n", + " // Send a \"J\" for go to next cell\n", + " event.which = 74;\n", + " event.keyCode = 74;\n", + " manager.command_mode();\n", + " manager.handle_keydown(event);\n", + " }\n", + "}\n", + "\n", + "mpl.figure.prototype.handle_save = function(fig, msg) {\n", + " fig.ondownload(fig, null);\n", + "}\n", + "\n", + "\n", + "mpl.find_output_cell = function(html_output) {\n", + " // Return the cell and output element which can be found *uniquely* in the notebook.\n", + " // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n", + " // IPython event is triggered only after the cells have been serialised, which for\n", + " // our purposes (turning an active figure into a static one), is too late.\n", + " var cells = IPython.notebook.get_cells();\n", + " var ncells = cells.length;\n", + " for (var i=0; i= 3 moved mimebundle to data attribute of output\n", + " data = data.data;\n", + " }\n", + " if (data['text/html'] == html_output) {\n", + " return [cell, data, j];\n", + " }\n", + " }\n", + " }\n", + " }\n", + "}\n", + "\n", + "// Register the function which deals with the matplotlib target/channel.\n", + "// The kernel may be null if the page has been refreshed.\n", + "if (IPython.notebook.kernel != null) {\n", + " IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n", + "}\n" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fig, ax = plt.subplots(figsize=(10,10))\n", + "ax.plot(searchArray,score,'.-')\n", + "ax.plot(centre,score[np.argmin(score)],'ro')\n", + "plt.title('Difference between detector halves vs center pixel')\n", + "plt.xlabel('center pixel number')\n", + "plt.ylabel('difference score')" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "application/javascript": [ + "/* Put everything inside the global mpl namespace */\n", + "window.mpl = {};\n", + "\n", + "mpl.get_websocket_type = function() {\n", + " if (typeof(WebSocket) !== 'undefined') {\n", + " return WebSocket;\n", + " } else if (typeof(MozWebSocket) !== 'undefined') {\n", + " return MozWebSocket;\n", + " } else {\n", + " alert('Your browser does not have WebSocket support.' +\n", + " 'Please try Chrome, Safari or Firefox ≥ 6. ' +\n", + " 'Firefox 4 and 5 are also supported but you ' +\n", + " 'have to enable WebSockets in about:config.');\n", + " };\n", + "}\n", + "\n", + "mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n", + " this.id = figure_id;\n", + "\n", + " this.ws = websocket;\n", + "\n", + " this.supports_binary = (this.ws.binaryType != undefined);\n", + "\n", + " if (!this.supports_binary) {\n", + " var warnings = document.getElementById(\"mpl-warnings\");\n", + " if (warnings) {\n", + " warnings.style.display = 'block';\n", + " warnings.textContent = (\n", + " \"This browser does not support binary websocket messages. \" +\n", + " \"Performance may be slow.\");\n", + " }\n", + " }\n", + "\n", + " this.imageObj = new Image();\n", + "\n", + " this.context = undefined;\n", + " this.message = undefined;\n", + " this.canvas = undefined;\n", + " this.rubberband_canvas = undefined;\n", + " this.rubberband_context = undefined;\n", + " this.format_dropdown = undefined;\n", + "\n", + " this.image_mode = 'full';\n", + "\n", + " this.root = $('
');\n", + " this._root_extra_style(this.root)\n", + " this.root.attr('style', 'display: inline-block');\n", + "\n", + " $(parent_element).append(this.root);\n", + "\n", + " this._init_header(this);\n", + " this._init_canvas(this);\n", + " this._init_toolbar(this);\n", + "\n", + " var fig = this;\n", + "\n", + " this.waiting = false;\n", + "\n", + " this.ws.onopen = function () {\n", + " fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n", + " fig.send_message(\"send_image_mode\", {});\n", + " fig.send_message(\"refresh\", {});\n", + " }\n", + "\n", + " this.imageObj.onload = function() {\n", + " if (fig.image_mode == 'full') {\n", + " // Full images could contain transparency (where diff images\n", + " // almost always do), so we need to clear the canvas so that\n", + " // there is no ghosting.\n", + " fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n", + " }\n", + " fig.context.drawImage(fig.imageObj, 0, 0);\n", + " };\n", + "\n", + " this.imageObj.onunload = function() {\n", + " this.ws.close();\n", + " }\n", + "\n", + " this.ws.onmessage = this._make_on_message_function(this);\n", + "\n", + " this.ondownload = ondownload;\n", + "}\n", + "\n", + "mpl.figure.prototype._init_header = function() {\n", + " var titlebar = $(\n", + " '
');\n", + " var titletext = $(\n", + " '
');\n", + " titlebar.append(titletext)\n", + " this.root.append(titlebar);\n", + " this.header = titletext[0];\n", + "}\n", + "\n", + "\n", + "\n", + "mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n", + "\n", + "}\n", + "\n", + "\n", + "mpl.figure.prototype._root_extra_style = function(canvas_div) {\n", + "\n", + "}\n", + "\n", + "mpl.figure.prototype._init_canvas = function() {\n", + " var fig = this;\n", + "\n", + " var canvas_div = $('
');\n", + "\n", + " canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n", + "\n", + " function canvas_keyboard_event(event) {\n", + " return fig.key_event(event, event['data']);\n", + " }\n", + "\n", + " canvas_div.keydown('key_press', canvas_keyboard_event);\n", + " canvas_div.keyup('key_release', canvas_keyboard_event);\n", + " this.canvas_div = canvas_div\n", + " this._canvas_extra_style(canvas_div)\n", + " this.root.append(canvas_div);\n", + "\n", + " var canvas = $('');\n", + " canvas.addClass('mpl-canvas');\n", + " canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n", + "\n", + " this.canvas = canvas[0];\n", + " this.context = canvas[0].getContext(\"2d\");\n", + "\n", + " var rubberband = $('');\n", + " rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n", + "\n", + " var pass_mouse_events = true;\n", + "\n", + " canvas_div.resizable({\n", + " start: function(event, ui) {\n", + " pass_mouse_events = false;\n", + " },\n", + " resize: function(event, ui) {\n", + " fig.request_resize(ui.size.width, ui.size.height);\n", + " },\n", + " stop: function(event, ui) {\n", + " pass_mouse_events = true;\n", + " fig.request_resize(ui.size.width, ui.size.height);\n", + " },\n", + " });\n", + "\n", + " function mouse_event_fn(event) {\n", + " if (pass_mouse_events)\n", + " return fig.mouse_event(event, event['data']);\n", + " }\n", + "\n", + " rubberband.mousedown('button_press', mouse_event_fn);\n", + " rubberband.mouseup('button_release', mouse_event_fn);\n", + " // Throttle sequential mouse events to 1 every 20ms.\n", + " rubberband.mousemove('motion_notify', mouse_event_fn);\n", + "\n", + " rubberband.mouseenter('figure_enter', mouse_event_fn);\n", + " rubberband.mouseleave('figure_leave', mouse_event_fn);\n", + "\n", + " canvas_div.on(\"wheel\", function (event) {\n", + " event = event.originalEvent;\n", + " event['data'] = 'scroll'\n", + " if (event.deltaY < 0) {\n", + " event.step = 1;\n", + " } else {\n", + " event.step = -1;\n", + " }\n", + " mouse_event_fn(event);\n", + " });\n", + "\n", + " canvas_div.append(canvas);\n", + " canvas_div.append(rubberband);\n", + "\n", + " this.rubberband = rubberband;\n", + " this.rubberband_canvas = rubberband[0];\n", + " this.rubberband_context = rubberband[0].getContext(\"2d\");\n", + " this.rubberband_context.strokeStyle = \"#000000\";\n", + "\n", + " this._resize_canvas = function(width, height) {\n", + " // Keep the size of the canvas, canvas container, and rubber band\n", + " // canvas in synch.\n", + " canvas_div.css('width', width)\n", + " canvas_div.css('height', height)\n", + "\n", + " canvas.attr('width', width);\n", + " canvas.attr('height', height);\n", + "\n", + " rubberband.attr('width', width);\n", + " rubberband.attr('height', height);\n", + " }\n", + "\n", + " // Set the figure to an initial 600x600px, this will subsequently be updated\n", + " // upon first draw.\n", + " this._resize_canvas(600, 600);\n", + "\n", + " // Disable right mouse context menu.\n", + " $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n", + " return false;\n", + " });\n", + "\n", + " function set_focus () {\n", + " canvas.focus();\n", + " canvas_div.focus();\n", + " }\n", + "\n", + " window.setTimeout(set_focus, 100);\n", + "}\n", + "\n", + "mpl.figure.prototype._init_toolbar = function() {\n", + " var fig = this;\n", + "\n", + " var nav_element = $('
')\n", + " nav_element.attr('style', 'width: 100%');\n", + " this.root.append(nav_element);\n", + "\n", + " // Define a callback function for later on.\n", + " function toolbar_event(event) {\n", + " return fig.toolbar_button_onclick(event['data']);\n", + " }\n", + " function toolbar_mouse_event(event) {\n", + " return fig.toolbar_button_onmouseover(event['data']);\n", + " }\n", + "\n", + " for(var toolbar_ind in mpl.toolbar_items) {\n", + " var name = mpl.toolbar_items[toolbar_ind][0];\n", + " var tooltip = mpl.toolbar_items[toolbar_ind][1];\n", + " var image = mpl.toolbar_items[toolbar_ind][2];\n", + " var method_name = mpl.toolbar_items[toolbar_ind][3];\n", + "\n", + " if (!name) {\n", + " // put a spacer in here.\n", + " continue;\n", + " }\n", + " var button = $('');\n", + " button.click(method_name, toolbar_event);\n", + " button.mouseover(tooltip, toolbar_mouse_event);\n", + " nav_element.append(button);\n", + " }\n", + "\n", + " // Add the status bar.\n", + " var status_bar = $('');\n", + " nav_element.append(status_bar);\n", + " this.message = status_bar[0];\n", + "\n", + " // Add the close button to the window.\n", + " var buttongrp = $('
');\n", + " var button = $('');\n", + " button.click(function (evt) { fig.handle_close(fig, {}); } );\n", + " button.mouseover('Stop Interaction', toolbar_mouse_event);\n", + " buttongrp.append(button);\n", + " var titlebar = this.root.find($('.ui-dialog-titlebar'));\n", + " titlebar.prepend(buttongrp);\n", + "}\n", + "\n", + "mpl.figure.prototype._root_extra_style = function(el){\n", + " var fig = this\n", + " el.on(\"remove\", function(){\n", + "\tfig.close_ws(fig, {});\n", + " });\n", + "}\n", + "\n", + "mpl.figure.prototype._canvas_extra_style = function(el){\n", + " // this is important to make the div 'focusable\n", + " el.attr('tabindex', 0)\n", + " // reach out to IPython and tell the keyboard manager to turn it's self\n", + " // off when our div gets focus\n", + "\n", + " // location in version 3\n", + " if (IPython.notebook.keyboard_manager) {\n", + " IPython.notebook.keyboard_manager.register_events(el);\n", + " }\n", + " else {\n", + " // location in version 2\n", + " IPython.keyboard_manager.register_events(el);\n", + " }\n", + "\n", + "}\n", + "\n", + "mpl.figure.prototype._key_event_extra = function(event, name) {\n", + " var manager = IPython.notebook.keyboard_manager;\n", + " if (!manager)\n", + " manager = IPython.keyboard_manager;\n", + "\n", + " // Check for shift+enter\n", + " if (event.shiftKey && event.which == 13) {\n", + " this.canvas_div.blur();\n", + " event.shiftKey = false;\n", + " // Send a \"J\" for go to next cell\n", + " event.which = 74;\n", + " event.keyCode = 74;\n", + " manager.command_mode();\n", + " manager.handle_keydown(event);\n", + " }\n", + "}\n", + "\n", + "mpl.figure.prototype.handle_save = function(fig, msg) {\n", + " fig.ondownload(fig, null);\n", + "}\n", + "\n", + "\n", + "mpl.find_output_cell = function(html_output) {\n", + " // Return the cell and output element which can be found *uniquely* in the notebook.\n", + " // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n", + " // IPython event is triggered only after the cells have been serialised, which for\n", + " // our purposes (turning an active figure into a static one), is too late.\n", + " var cells = IPython.notebook.get_cells();\n", + " var ncells = cells.length;\n", + " for (var i=0; i= 3 moved mimebundle to data attribute of output\n", + " data = data.data;\n", + " }\n", + " if (data['text/html'] == html_output) {\n", + " return [cell, data, j];\n", + " }\n", + " }\n", + " }\n", + " }\n", + "}\n", + "\n", + "// Register the function which deals with the matplotlib target/channel.\n", + "// The kernel may be null if the page has been refreshed.\n", + "if (IPython.notebook.kernel != null) {\n", + " IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n", + "}\n" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "" + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fig = plt.figure(figsize=(8.4,8.5))\n", + "ax1 = plt.subplot(111)\n", + "(o_y, o_x) = (centreRow,centreCol)\n", + "im1 = ax1.imshow(assembledImg, interpolation='none',vmax=4.5)\n", + "rings = np.array([1,108,114,175,225,600,750]) # user-defined rings\n", + "for rad in rings:\n", + " circle = plt.Circle((o_x, o_y), radius=rad, color='g', fill=False)\n", + " ax1.add_artist(circle)\n", + "ax1.set_xlabel(\"pixels\")\n", + "ax1.set_ylabel(\"pixels\")\n", + "ax1.set_title(\"Powder rings\")" + ] + }, + { + "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.5.1" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +}