├── index.md ├── modisDownload.py └── modisPreProcess.ipynb /index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Geospatial data analysis using python 3 | layout: default 4 | --- 5 | 6 | This is a list of tutorials about using python and the associated modules (gdal, rasterio, fiona, numpy, etc) for geospatial data analysis. 7 | 8 | # List of tutorials 9 | - [Calculating NDVI using rasterio](./NDVI_calc.html) 10 | - [Pre-process MODIS data with gdal](./modisPreProcess.html) -------------------------------------------------------------------------------- /modisDownload.py: -------------------------------------------------------------------------------- 1 | from osgeo import gdal 2 | from pymodis import downmodis 3 | import glob 4 | import numpy as np 5 | 6 | import matplotlib.pyplot as plt 7 | 8 | 9 | # Variables for data download 10 | dest = "/home/dutri001/sandbox/MODIS/" 11 | tiles = "h18v03" 12 | day = "2015.11.18" 13 | enddate = "2015.11.16" 14 | product = "MOD13A2.006" 15 | 16 | # Init download class, connect and download 17 | modis_down = downmodis.downModis(destinationFolder=dest, tiles=tiles, today=day, enddate=enddate, product=product) 18 | modis_down.connect() 19 | modis_down.downloadsAllDay() 20 | 21 | # List files with the hdf extension 22 | MODIS_file = glob.glob(dest + '*.hdf') 23 | 24 | # Get subdatasets of the first file of the MODIS_file list 25 | sds = gdal.Open(MODIS_file[0], gdal.GA_ReadOnly).GetSubDatasets() 26 | print sds[0][0] 27 | print sds[11][0] 28 | 29 | # Open vi, to get the metadata (geoTransform, dimensions, projection) 30 | vi = gdal.Open(sds[0][0]) 31 | ind = [1, 11] 32 | # vi_np = np.zeros((vi.RasterYSize, vi.RasterXSize, 2), np.int16) 33 | # Allocate zeros array of desired size 34 | vi_np_sub = np.zeros((200, 200, 2), np.int16) 35 | # Read data in array 36 | for i in range(len(ind)): 37 | src = gdal.Open(sds[ind[i]][0]) 38 | vi_np_sub[:,:,i] = src.ReadAsArray(400, 400, 200, 200) 39 | 40 | # Perform value replacement and drop QA layer 41 | vi_np_sub[vi_np_sub[:,:,1] > 1, 0] = -3000 42 | vi_np_out = vi_np_sub[:,:,0] 43 | # Drop second dimension of array 44 | 45 | 46 | print vi_np_sub.shape 47 | print vi.GetGeoTransform() 48 | 49 | plt.imshow(vi_np_out) 50 | plt.show() 51 | 52 | # Get Geotransforms of original dataset (vi.GetGeoTransform()) 53 | # Modify the list of geotransforms according to the array subset 54 | # Set modified GeoTransform to new dataset 55 | # See http://gis.stackexchange.com/questions/58517/python-gdal-save-array-as-raster-with-projection-from-other-file 56 | 57 | 58 | 59 | 60 | # driver = gdal.GetDriverByName('ENVI') 61 | # driver.Register() 62 | # outDataset = driver.Create('ERS1PRI_19920430_ENVI_subset', 50, 50, 1, gdal.GDT_Float32) 63 | 64 | 65 | # outBand = outDataset.GetRasterBand(1) 66 | # outBand.WriteArray(subset, 0, 0) 67 | # band = None 68 | # dataset = None 69 | # outDataset = None 70 | # subset = None 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | -------------------------------------------------------------------------------- /modisPreProcess.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": null, 6 | "metadata": { 7 | "collapsed": true 8 | }, 9 | "outputs": [], 10 | "source": [] 11 | }, 12 | { 13 | "cell_type": "markdown", 14 | "metadata": {}, 15 | "source": [ 16 | "# Preparing MODIS data\n", 17 | "\n", 18 | "We'll try to setup a workflow for dealing with MODIS data.\n", 19 | "\n", 20 | "The different steps of the workflow include:\n", 21 | "- Downloading the data (the entire MODIS archive is stored on a USGS FTP server which can be accessed anonymously by anyone; and there's a python library that can help us do that)\n", 22 | "- Reading the datasets: MODIS data come as HDF4, which adds a bit of complexity to reading the data (HDF4 is also the reason we are not using rasterio, which does not seem to play well with the HDF4 driver yet)\n", 23 | "- Crop the data (in case you do not want the full 1200x1200 km extent of a MODIS tile)\n", 24 | "- Filter cloud and bad quality data (MODIS always come with some quality assessment layers which provide pixel wise quality information on the data)." 25 | ] 26 | }, 27 | { 28 | "cell_type": "markdown", 29 | "metadata": {}, 30 | "source": [ 31 | "## Downloading the data\n", 32 | "\n", 33 | "We'll use the `pymodis` library to do that. We're downloading a NDVI time-series from the MODIS VI product at 1km resolution. The data comes in 1200x1200 km tiles, hdf format, sinusoidal projection, and 16 days composites.\n", 34 | "\n", 35 | "The entire download size should be about 200 Mb" 36 | ] 37 | }, 38 | { 39 | "cell_type": "code", 40 | "execution_count": 2, 41 | "metadata": { 42 | "collapsed": false 43 | }, 44 | "outputs": [ 45 | { 46 | "name": "stdout", 47 | "output_type": "stream", 48 | "text": [ 49 | "['data/MOD13A2.A2015161.h18v03.006.2015301071821.hdf', 'data/MOD13A2.A2015225.h18v03.006.2015305201536.hdf', 'data/MOD13A2.A2015177.h18v03.006.2015301215033.hdf', 'data/MOD13A2.A2015241.h18v03.006.2015305211851.hdf', 'data/MOD13A2.A2015129.h18v03.006.2015299152843.hdf', 'data/MOD13A2.A2015065.h18v03.006.2015298000808.hdf', 'data/MOD13A2.A2015081.h18v03.006.2015298184905.hdf', 'data/MOD13A2.A2015209.h18v03.006.2015304025821.hdf', 'data/MOD13A2.A2015305.h18v03.006.2015335131539.hdf', 'data/MOD13A2.A2015321.h18v03.006.2015343140626.hdf', 'data/MOD13A2.A2015033.h18v03.006.2015296122831.hdf', 'data/MOD13A2.A2015289.h18v03.006.2015317212129.hdf', 'data/MOD13A2.A2015193.h18v03.006.2015304005053.hdf', 'data/MOD13A2.A2015145.h18v03.006.2015301000016.hdf', 'data/MOD13A2.A2015257.h18v03.006.2015306150600.hdf', 'data/MOD13A2.A2015049.h18v03.006.2015297001558.hdf', 'data/MOD13A2.A2015113.h18v03.006.2015299024206.hdf', 'data/MOD13A2.A2015097.h18v03.006.2015299003940.hdf', 'data/MOD13A2.A2015001.h18v03.006.2015295101618.hdf', 'data/MOD13A2.A2015017.h18v03.006.2015295120613.hdf', 'data/MOD13A2.A2015273.h18v03.006.2015307052802.hdf']\n" 50 | ] 51 | } 52 | ], 53 | "source": [ 54 | "from pymodis import downmodis\n", 55 | "import glob\n", 56 | "\n", 57 | "# Variables for data download\n", 58 | "dest = \"data/\" # This directory must already exist BTW\n", 59 | "tiles = \"h18v03\" # That's the MODIS tile covering northern Europe\n", 60 | "day = \"2015.11.18\"\n", 61 | "enddate = \"2015.01.01\" # The download works backward, so that enddate is anterior to day=\n", 62 | "product = \"MOD13A2.006\"\n", 63 | "\n", 64 | "# Instantiate download class, connect and download\n", 65 | "modis_down = downmodis.downModis(destinationFolder=dest, tiles=tiles, today=day, enddate=enddate, product=product)\n", 66 | "modis_down.connect()\n", 67 | "modis_down.downloadsAllDay()\n", 68 | "\n", 69 | "# Check that the data has been downloaded\n", 70 | "MODIS_files = glob.glob(dest + '*.hdf')\n", 71 | "print MODIS_files" 72 | ] 73 | }, 74 | { 75 | "cell_type": "markdown", 76 | "metadata": {}, 77 | "source": [ 78 | "## Read the data into python\n", 79 | "\n", 80 | "Now that the data have been downloaded, we need to read them in python, so that we can work on the following steps of the preprocessing later on. In order to setup the workflow we'll start with a single file.\n", 81 | "\n", 82 | "### Explore the HDF4 architecture\n", 83 | "\n", 84 | "HDF4 data are composed of sub-datasets; they can be listed using the `GetSubDatasets()` function. In order to know a-priori what every subdataset is, refer to the [MODIS product table](https://lpdaac.usgs.gov/dataset_discovery/modis/modis_products_table); it's a very important reference to keep, I personally almost always keep that page open when working with MODIS data." 85 | ] 86 | }, 87 | { 88 | "cell_type": "code", 89 | "execution_count": 3, 90 | "metadata": { 91 | "collapsed": false 92 | }, 93 | "outputs": [ 94 | { 95 | "name": "stdout", 96 | "output_type": "stream", 97 | "text": [ 98 | "('HDF4_EOS:EOS_GRID:\"data/MOD13A2.A2015161.h18v03.006.2015301071821.hdf\":MODIS_Grid_16DAY_1km_VI:1 km 16 days NDVI', '[1200x1200] 1 km 16 days NDVI MODIS_Grid_16DAY_1km_VI (16-bit integer)')\n", 99 | "('HDF4_EOS:EOS_GRID:\"data/MOD13A2.A2015161.h18v03.006.2015301071821.hdf\":MODIS_Grid_16DAY_1km_VI:1 km 16 days pixel reliability', '[1200x1200] 1 km 16 days pixel reliability MODIS_Grid_16DAY_1km_VI (8-bit integer)')\n" 100 | ] 101 | } 102 | ], 103 | "source": [ 104 | "from osgeo import gdal\n", 105 | "import numpy as np\n", 106 | "\n", 107 | "# Get subdatasets of the first file of the MODIS_file list\n", 108 | "sds = gdal.Open(MODIS_files[0], gdal.GA_ReadOnly).GetSubDatasets()\n", 109 | "\n", 110 | "# Looking at the product description in the 'MODIS products table', we know that NDVI is the first SDS and there is a \n", 111 | "# pixel reliability layer in the 12th SDS. Let's see what they look like when opened with GDAL\n", 112 | "# Note, unlike getRasterBand() which starts counting from one, the output of GetSubDatasets() is simply a list of tupples\n", 113 | "# so normal python index applies here\n", 114 | "print sds[0]\n", 115 | "print sds[11]" 116 | ] 117 | }, 118 | { 119 | "cell_type": "code", 120 | "execution_count": 4, 121 | "metadata": { 122 | "collapsed": false 123 | }, 124 | "outputs": [], 125 | "source": [ 126 | "# Every subdataset is represented by a tupple; we only need the first element of that tupple to read the datasets with gdal.Open\n", 127 | "\n", 128 | "# Open NDVI dataset, we'll keep it and re-use it later for the dimension and projection information it contains\n", 129 | "vi = gdal.Open(sds[0][0])" 130 | ] 131 | }, 132 | { 133 | "cell_type": "markdown", 134 | "metadata": {}, 135 | "source": [ 136 | "### Read data as numpy arrays\n", 137 | "\n", 138 | "We'll do that using a loop to import both layers (NDVI and QA layer) in a single array, and allowing some subsetting (cropping) to be done.\n", 139 | "\n", 140 | "When filling an array from a gdal dataset using the `ReadAsArray()` function, there is an option to set an offset (x and y) and a size (x and y). The offset corresponds to the distance (in pixel) from the top left corner of the image from where the data starts being read. The size is the width and height of the chunck being read." 141 | ] 142 | }, 143 | { 144 | "cell_type": "code", 145 | "execution_count": 11, 146 | "metadata": { 147 | "collapsed": false 148 | }, 149 | "outputs": [ 150 | { 151 | "name": "stdout", 152 | "output_type": "stream", 153 | "text": [ 154 | "(500, 500)\n" 155 | ] 156 | } 157 | ], 158 | "source": [ 159 | "# Define offsets and width of data chunck we want to read as array\n", 160 | "width = 500\n", 161 | "height = 500\n", 162 | "xOff = 400\n", 163 | "yOff = 400\n", 164 | "\n", 165 | "# Read data in arrays\n", 166 | "# NDVI\n", 167 | "vi_src = gdal.Open(sds[0][0])\n", 168 | "vi_np = vi_src.ReadAsArray(xOff, yOff, width, height)\n", 169 | "\n", 170 | "# QA\n", 171 | "QA_src = gdal.Open(sds[11][0])\n", 172 | "QA_np = QA_src.ReadAsArray(xOff, yOff, width, height)\n", 173 | "\n", 174 | "\n", 175 | "# Let's take a quick look at the dimension of that first array\n", 176 | "print vi_np.shape" 177 | ] 178 | }, 179 | { 180 | "cell_type": "markdown", 181 | "metadata": {}, 182 | "source": [ 183 | "## Filter data\n", 184 | "\n", 185 | "This step is actually very easy since it only requires a bit of array arithmetic.\n", 186 | "\n", 187 | "From the [product description](https://lpdaac.usgs.gov/dataset_discovery/modis/modis_products_table/mod13a2) of the MODIS 1 km VI dataset, we know that a pixel reliability (SDS 12) of 0 correspond to good data, 1 corresponds to marginal data, and anything other than that should not be used (actually snow and ice is still a valid land observation, but of very little relevance when working with vegetation...).\n", 188 | "\n", 189 | "So let's do it. Invalid data are replaced by -3000, which is the noData fill value of the dataset." 190 | ] 191 | }, 192 | { 193 | "cell_type": "code", 194 | "execution_count": 12, 195 | "metadata": { 196 | "collapsed": false 197 | }, 198 | "outputs": [], 199 | "source": [ 200 | "# Perform value replacement and drop QA layer\n", 201 | "vi_np[np.logical_and(QA_np != 0, QA_np != 1)] = -3000\n", 202 | "# De-allocate QA array\n", 203 | "QA_np = None" 204 | ] 205 | }, 206 | { 207 | "cell_type": "markdown", 208 | "metadata": {}, 209 | "source": [ 210 | "Let's visualize the result" 211 | ] 212 | }, 213 | { 214 | "cell_type": "code", 215 | "execution_count": 13, 216 | "metadata": { 217 | "collapsed": false 218 | }, 219 | "outputs": [ 220 | { 221 | "data": { 222 | "image/png": "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\n3UHt6ND01EfHuJqHWJqnc1NCcpu/uf2/G69EYFwmvPrPLzjYKErZLhJR7M/Xpf5VlLd9WuyNI3gJ\nrOuv9u6Be3zsbQ9637s3D+8ppy/0oaMf8eBHL+EWMktwldAEykWC0T7Cs9EmSMoHPefdSHxLCJdH\nya0snjNO8Bi9ZFcKPiMhyv79unidSpsT24r1OvK1sbhLRgvPyrAQQuVUTYnXhudjJ/L3kZ4YNTJK\nG6KIsL1IV9M8nt4NrHuIJblSX5hzrGzmFe5XU2ipfWmC9OUwvv1zVjSeK/WjV94l7cSZCySrSCyn\n92G++LN9Xb9mhuTSv9UA5veO8pFVR9lmOld1nqu5ol+6PmnJWvpvY+lSdptF/VjW3M2TjzNzv3C1\nPn0TDdVsvIfkLlx+9NVK07nnrv2VDQe68n07uHJyJ1g9p5b92XZnNhQjcqdtw1v2oz9Ltp/+KyJg\n7oll4W7NDLNrTWQ9r7zuVQ3hC/BKZuznQql9Pr4oBMYMsXy/WHx9tsh2mF0856JX+Bn/ZzHhwVX2\nXNvq121XqU4MO3X7x/1qtysiWnMB5lGyUXg79hcE5l6il8fj+C4uEHzFGCHKrxYP984sqmkxeLsQ\n7YsxXPRmJOPaWkQGapPIdtxT8B8L4v/kcNRZ6Otk6AHyy8hcwvAj8TAUMpROJLE/yf1xGGXTWbbf\nJLU3fcmv/riTg3OnaS45y/rRpcoSLP/QdJfft/MrHqPcYlZ9+jsu3+1q02b2/d1jPLnzLN/81N4O\nrFz+io7v3rsqtsgZVE/k3Fl3+kr17S95/KXDu9PMnKms769ywu+PU5aitJLm0ojqzHRRmWZcVTS0\nrjmOSdtG5ayBDBax5D/43PR7XnDtk793vEyxFcFlV+xiXvk4Hb9tNG5bzGKgCj2MHUXrSnpLKT+B\nugqqZ1Mxid5ptIxi7OtUD+NOQYs9H+/AL4p//0I46OBYUX42I5TfZzMbRvASqH68zwcGH5Xv4dvv\nvtkv9/wvfeMqgoSsxfHYJ/qKulxoGuO5fdYUdoySfarEw75AuGX3FcKkke1SG5QfLATKOpHP8IwQ\nFN10T60KU6NX6JDVxfdqRLh4X3g/KhuKtRVKKCmLn+YyEvVCwzmcG646yLgffc7He4/yz12H6ekr\ncVr3u/znhl9qP+9c2y75V+sTHD78yoK2PnToI3pO+KbksCgcnMgpvMrt5wv5E9zWP+UVHbv+ujKZ\n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\nC4nVoTvxwogR9n7swyA5vtqMYWssXLcz69f/34/xuthhVrg282u178Yser8aWVfJdJLz3nzX7CPm\nmJykbtcYl3DFVe916uibSRXkV5Z655WfNzn9pOU3lvvMzfMdc+Bz9Kck/fZqLPnhXV/+e9eRW0x/\nZKuOVswOSb9EJ+1NuFh0qx4hVk1jH2szKyKOwwK8VM7V391FydT2YIVmMJjsC7mIPB7Fagob6dip\nSP4mchdTUppVXMKwA9BG9sMJHTPpHV0UE9qGc9eomERUPT3thsuuscAPFT7/YU9cdZsjPtvs9bb7\nTNJVSf4ZPv/Z/e1I0pPlpXnclX3gdX+/12I7jW5QJia9b5pP7xomHDPP9nel/fSU3Qz4UqNz7vme\nC2643kOTf+7IM557ze/ZH2H8G9jM30y0e898J626z/i3Nhv3wAbXj5ph6viE3S55IVKIhFDZeoTM\neDbNpW4Qqf2ErsUQ3CT4FUPJriN9NlvWVbhjwyTnXXu4pl2/GazPDkyj8ASJnfA8hSoS76bxS9R8\nmuwlFCooOlPwOGrJPxXs0E0vMnxv0TWLsas+4X+aL7HTJEp6UBHiO8lpXL14plM3nkg2/7qes2PK\nlpu73z5a7o05LMfULPffn/5vFZ/90uv6Pq/F3lk030mZF727ZqW1TWyZOcLJzxzvpd4at8261n4/\nqVezV6iRH777S+55doL+lKTf/qwtufjXhly4wsBR9GQoHiGYWgto7mbANFEB+d1Es954fvt9DBhE\nas++7Q/FuuBPJDtEhLELvsB5Hzjc5z/1iIGDumQ/RvoUEWVsEezRCkxj8PENthw9RGoO5tHWQ8VK\nwQHZWRDBZjH/Pew0hNQMZi79qEcrf6ZyRLfWx2jNUZ9j9xtpP4OWDlqz9D49yq0/eJfP//zVTQ77\ncGO5K2vaX/7/lGELfLfyDvus/KjV+b881uEfZePKmq16zw80XsPAU6m54jMKmYSWnr4JdO+Z47Dn\nT3X/0nH/55X9DqPf/oz9/AO32Cu70bQlWxU2kxyEj5P/GrnuUMNK1gqxnKRoNqsVg4zuxwDaX6R8\nihi1OFl0s96DA2i6joGn88TmkfZp3eCZyuFO+81xPjfxUSePWMBBgjbeKtrot1NYybINTB3TN0Yw\nS+KEON78QyR74n06DytW9vHPyp8yR9vtVAyjrZmiHjHVrSGk83p6GbcH2bWk38ULX5xm1pB3/9nz\nMr1uq69/f749PvaYmhtSeqekJGf26GwjX83e28+x5k3sMLqmzVGy5PfX0P2H/9LTMyb6zD73yc/B\n5xJWHTnSmLevl2omteRC/WXVfvuTdvgVVfxwhrUf2VmiIzQ1sy24huQwimrIbxWVjmJRSi3t+72y\n77HhlP8ae4lFv0HoZkzE/gz8HBZQ/tEgh+3xzCaL9r3MyR9fEHNKV+Ct+DJtCwXpazZlBbqLY3Em\nxouelBdoXo7Z2IeGGYNVDEgpPB2HlOilcjglM5GjqJYRBzLuo/R0UxhG72PsfOQSmybOcfCs1j96\nXt4+fpmFEy5z1PceU9ZByek5lYf2SA+iYXqtd1Z98E3tLE45aoGiU37/sYHJLrs+ucZn7r3Puvew\ndjHJTQWjPrhe23M0rqLpgr95ftHL1h9h/AvbvEvvNHvJ02ylUB8/yTEoovVpKpO0tFFVSaLv8Zdb\n2V8SEUWdKKeuFfyLTSJ9+Z2Cf5sQ3dmG00SFpEqkJF1CPHgkniZ3I6laOtdQOl5I9j2L9wlS2AMU\nZpHYTOF9rDx5lN9eP87HRzzCt2Kf+XEkXyTfxI4lVO8UYw6a15KtYGCK+u0kdxli6H4Nxk2/zpqP\n/r6i1+YjvmPojnZNfYPSB05i/ZOMmhkT1JPPX8KaP5wo/2axzUd/1zuLP+KJm0Lv5MGP3Gn3cYtU\nLuyw4YNDFJ/QILEr6aWkmqk8ldwDbMkwchH6I4x++2N237OlwZdIkmjs+7InooWyqTFxoPo9JHYR\nkepYtt7qlcax57BE6HyuE2DmACEAXCu0MIaJcugwsejTwnnsxNYLKvQOTcf+jiJ1Ak6l9P10d2IT\nuVKhE/o4hRISa+hZSWIpN206wcd2zOWj5DopFEjmcHxMDnvg1nc46ue3mHThCtW7R2VnUxPDv0rz\nsq3q7yu3Ytl7wXN3/9ThS8dZ9osrDBneTgfVlbQ2smM9zQm2LKL9bu679aY39Ht5zdbhZWcB+9z5\ntN45HRbNTxj5mwaDd2fjXOZvprWElluoX0nVHxdoe1XWH2H8i9vqn/zQ2AebaKV1TbGi/8gpacna\ncm+FoYPbKGPGA2dZdPZlXB/CtskkhRYSR4jqyGG4VEQQP8X5IjVZ1PcmK0Sk8S5B3uoRUcZa1NL9\njoTieQVuEVHH8ijHtj8XorrDZtO5gtIchgqg9HTc2bf/99P6XbIvUZqIAcZb68mMiAjDTA764F0e\nvvBIvbeRPoD8i6QOwF20bKMyQ31TDCQaeISQJNwPc2m7h3wbqVJSRRSfR+WVX9O+vOdWDQdVAAAg\nAElEQVQN/W7+Fhta3mbzod+VuPVCp82e70fbblZ+Oks/Q1uBPWaSnx3VpvwGNj7KkKHYSMMtNUYf\n0kg/6Nlvf85uOOMGKxfWuODxQ3/v8dOmz/etDz5s10s+aNNh37X9agb1LUDLhC7GLsJpLOp7/HZx\n1ewQziEtGKFb+/5/LxsvoO5DpPcRzmSbcCKLUELuQRrXMrhvIHR+t0iN2u9m5CmCt9GBU1h56GgT\nr15n++0MOon8rSRnoJhCY3TRbl9H5UQ2vMj4ofR2sLyR6jQj/wPtFBrILaN7CNu2UTuRsiG0z6W0\nLISKN3QydgL5aey26GzLV//p2ax/b6tJdTp1//m+uP5u6XaqT3rSiT/4ul8NvFn6AHJbaVlFx1ZG\nzSAxkTX3kh/CqlVMSDColuqt6HcY/fa32Dd++rzMPQ0+PvspqdZ88CyyIleZhgPEyID3i/SkHnm6\nZ2UUP9sToOgz4ir6IFrIDk5KteYlmgSOsZYbtkz3rqGLA8vYLrCQkXTMTSjdVLBpNXVVKCL9btG3\n0hp6GelWCjXMf5jxdaRGUF5Jy0oWbgytnpl7smM165sZP5LEZJbez4y30FNP+TQsoL0VQygfTvs8\nyseydgljplLYREvfZ68oYUbmbMvXvHkcRu70OVGRKo10rCVVYt+t33dE+mbfO/5uErReGnNh1rVT\ndWWNdSc1qi4OBuguR/P0HYFdewMxjBKRqb4gugG+3vd4De4VGfI9IrP9nV0g7itLRbbbb29S6/px\ni0+e9QTT8+EoygQ2USqurIE4hN6adFwJ5TiD4t16otlsOI4Sf7+AEynsnJCoFMDpGAzlxOMWvyya\nY43AO9ZQtqUgcWrM9Og9klQvHhYRSQ3pyZhN4fiEqSdFabf8k6inehCDKxk/PY4reTiDh9C2mZIU\nOx9KUTGtFw+y5XZWv0TxYEo76K0nszd2YUCStrUkxjFgLwZMJ32ION43gd1w5W0eyMzRex2ZXrra\nMIrKGV0WHnuWC78/T8Mv8RvKD2FZA59sP8GQ7zQqF9WjMiy8I/h3r9X+ksPowiHYVVBrDsH++Kxw\nGJNFtf6zfdtPx3/0/T4Sl/0V79Fv/yBbMa2GO0g9KBZ8DjuForgBuBk9FN2ZDem9qQJXWC/6QyYL\nvc4jRBn2aYoW5yKleAbXo47ESPIfFY5ipri/NQkMIU16LKXvprNTKH8tE9FJfWyf+F5ByVRSg0Va\nM4bNixg4gbI5Cbopfiz4G4NqUMXiB2IfgzdvV1KgO0vnVnZ0svVFWu5h2a1U70tpFTrpeiKOp/E6\nln380jf25P+VNuNjz9m7iEwxnV10dLLmdrIP0vOLgsz7W9WMEM17TzBhMLdddSOfomQA04dwbvLd\ndhpKx+uwEv+aXXT0/c6IYLJJzLf6Zd/jv8RxfX8fi2sFX3CNuIz2eu2H2W9vhF1T95tYvCuwL6aS\nvTOEeTd/jtyHUnHLaBOU7+fpfQp3C3DyBTwknMkhYmL7zwSPolbgHIvFOMWrBVBaKmLPQ9HE4/+x\nOyvJ3krpOJHaHCuOq4XcFeSLhBPqwvUUNjDsrQz5EYlFhRD9GUztBJKTApfYqW98Y/ftdBYzegBb\nNlGWZlueDTkGddD5HC0b4zN2dIiZIyUCtP0H214XlijPk82xYhtdBYp2Jpti8QbWttFUILkx8JyO\nqpSyGnyDbacw7q1sLeOi/PXWNTN61ms/pr/GYSTFpVEvCmCLRBW+vu/5eq9U5Yd7uQOAvr/7JYve\nrJYSzmC94FfUk55CzViGDST1Yu6VMukeyATZy0gspue0ZKQpgwT7c4a4PWwR8e+7MCz4F9aglHVf\nF4txLgrMfvpZBlBYQ89i0exGcEJ2omcdqQnCQa2hvSNKxJ0L6DxfDE+aQapCxLX7BJiZ70Utjb9l\n6GiadpAuJpdlpxlx9ysuDlr52l62b6SkhNRayo8nccbfH2M794AnDa7rcNqXV5t0+R6Ouem3UmkS\nCYYMonQQS16Ioc8lQ6LyM6CO5LE0ryOTysnnYlB0tkDLnQyZydBhjJ5N+rDXfox/jcPIi5RkpBCe\nP+T/PF/o+/lT9k84QfLfw777+OxYmCNFOrK3cBBjRESRE7J8W/seX0ahXXyje5G5Mh/pw1gROQwU\njmC+cCQpGq4hNZueM5MsYtQhoqpSI66k6zCFoiEU7y8cQJMYszg/wmpprCObJNeG6ZSeTenu5N8i\n5qiUYT2dc8mPJzmS/CYyiWjXH74zw2pp20L7UqbXUTGcIbOYNYEBYyjbh6uOnKXqv94gZ/HhQ//o\nw7+d8CtdD17sO713aTji237+0tVOP/FmX1p4iIEHUHkVuUqKO9lnP4a+ncmn0NrL48tZcBUDTu/D\nbBqomcngGirPpa2TXANb59Jyx2v/COlXsW0L7sDuIqoYKu4lw8QwPALf/t/Yysi+x/6IPfS//h7b\n99Nvf097btAwDiVXkZB6rKBwOIk7RTrRIkqhQ0W59HJyo0gdKG7PD4oI4ilxGzkaX6bp9nIDL2tn\nIfmHqZ2O7RR9K2/zXIZdz9YzGHyGKNm+JJioFSTeiqsoLCVxMkUTWPE0dVuouoL0r+lYyEsPMfhB\nRv6cg/Z92NzLD9L+g7Tyd2eVdoj0alk4jcGdrF3IiOGsbWB4hvRAHEzheBJfQjWp3fnhfx7vnF1f\n30nyJemslcd+W2J+r0EL5uj9dAVH9sifyE2nnui09mvlnytoOYbiKvI1JD9ecMbd1xtUOEbZzfgW\ngw5HPdt+y+AT8TSdBfaromQnPEFPjq4E1UlSU9j8NR5NMi/XF0wu+rOH+lfZXyqv1Ar8vFncQ+4W\nnMAjRIHsmwLwHND3ezp+13kwQhTlJvrDKKO/rPomsvG1TVZtG+jto5e79bJrg5z1dlwu0odO7IQh\nNG6qUHN6G1dhdwpDSVQIjc9ycQV83yv3gJsFLvEc3kr3B8hMIfEJcSupEQSv8QIonSxSoMV03UvJ\nSIGItWEvOh+nNM+GbkZeyNnHfce5DZcad/Ma7TdQWk1iXeT8k8/DW8idhjTJiaxfzvBBpGew/S4G\n7Rbl24MzH/DY/NGv+7ltPfOrKrojEmt6joH7C2p9FZ4iu4T0QTiE/M+CcOU/eSg7zrSvN6j7QnsM\nkOpk251kMwydzqNzw29PzrCjl9E743g6fk1qMsUvRVSSamXLNspSLNvCXrES3zAexkwBaib7fq7G\nt8XXfH3fR1+DdwunAp8Tl0gW5wgn83+t32G8Ce2Oo3/tbaNXxDfZI5S0MuKbnyCwipe4bP2ezprx\ndGAfR4k4syd+cgcnpZ7Lxy2t0ivSfRv6fs8Q9bVjcTPZF0jP7nufvUR8uo7CBLpOp/QoNt7EkHEU\nnYo8jfeT7GXAbjTOC/3NxFvwFM1Pk0qQL+tjga5gx1aqhtCepnM9VQPIPplRfGqPhhd4ODnRe3ac\n/Lqey8H7F5u4f5c7r/iKTJ7WNqqmsq6GwYuoORQjaL+O8vfiBhwj+muW0HRBteQVedU9rXHuV9F7\nIz3b2Z6hrIv6dqZNITkqUo5EhtphQeJKfYjCYnpXkalDOy88E9mgN5CHsRC7eaWs+u2+xxsFYXiy\n4Fr8b+mji0VUMdUfdxb99ve2U9/5V2129B3vlbj8Qh3fyESFowIH41MCJyjBVM768NPxgqFsO6ba\n9uTAuEIyJDYV5HchN08ksCvE5blzvKTnalHtWBr7z1eIaObDeIHlJ40iR+JSunJsu5naoX2jGovo\nfJiaUlY+g03UjMKIBA/StZ7KaVFCVaDnWTqbg/hVv0UIBBVoy/Kxxz/svU8e78FJk/3moNehfPC/\nbGcbLJv/ORNWrFGSpPho6k5j+Wom1VJ5FKtvwCMUddL8UByTF+hcnLT8Zwxc0OKpL8/yk++eGlPv\nF9KbpqguoonyQZSmIwVpfSkYuuVFbF0rQIKV3Ddjgt7twlmPZ9djX/tn62d69tsfWP5bcyQWCVre\ndDFO4EaBSN0oFvgCkUak+Wnr7j589HOSTYUgXsEOComYa2K1oJdnBXnrCJHuTBCRRYdIZ0ay6pyh\nxp+zJSKNDoGVjKDx3Ao1X2qLK3Y/QQxbz477qTpd3NrWx/Hm6iPSaC7Qm6U8zaizaLuBVAept1Jy\n44UKbxAcf4RFBtjqugt+qvBfUyzazIyPYR4rnqVkt5QhTTmbmmnezqy9efY5dn8vesg+SvpTKKLh\nvdWGfL4lbts3iyhvhChdf4HCVBLr2b6Esr3Ydh8rVThkVhsdtNeTHB3bFA8gGRMp+7tV++1vt2Gj\n2o0atkNteVBuhn7hvEgnRgp06um+nyZ8QKiKd4nFnueM2mclf12IOHNEaGzk15PYLiotVWJ/SbKr\neOlE6udSuFE4k5R47UOMv3+L7NtSAVz2iDh1CTWfalPYgJNp/ViRZd8eE9WSWgpXi6rO6dhO4kAy\nFRGhTNqJZAJL43dnHW/54N1vmLOAu81wnYN1Hzmd6dSkyd6AI5h0LHUnJhVfyridGTSQR59k91Pj\nHOQX0NLFhslDdH6J2re0WHPhUH4b5zz3LO6nuc+5JLbGZ87vINNJzRCmlrTJr6VnG5lyEvWUHBnl\n2ddq/Q7j39z+8ycrbXrnd6zb6fu2fu3bFsz9b/XHfYf55F7AM2zbo5pzBczdJYR0igWouSeWklsg\nKiatJNMk3yEcwRiUkO0rzaZPY9xs6j5P4lSRstQIHKQFF5BuyPFJEUUcJ6oxrchQeJzKvXpNOXAt\nT5EoJTEpmsvyP8Fwui+n4oSoIjR2kEthFMWHU1nJdeXvf0Nj6xHTq5y0eoLMfTndq9lxZIX0SXRe\ngmfJtPRGaaCNwXlmVGAhm+dR2IuiKurObVB6Pl1rGTl1S6SINSGMbDbVByYi0kJXI7lqjKR8V2oz\n1LdQ3xy/02Mp3Et+8Gv/bP+oefNfjuS43/7RduLhL9qvd01Q72qou3H7yzNJktvZ0cTA5d2BUVSI\n1GKTyJPnCUrfPtES71jRzTpEXOAbhIMpCg7F5itiWFBhGYk6sWhzgr/Rd6c0RjiPnUTx/nfdTBkS\nM/rukkeilOxUbCbZxOan6O2kbActzTz9FHvuQ2Un2XasofiDpMqp2NzmgRl7W/fUnxeI+H/H/tZe\ny1c650dL7PXSWo9+8X167/rD8Qb7161z/sHz/GbAr31ql4ft99V1PnLyFTLlpJNU53t4hMx0WlfS\n+DDFawOsLKoI0aCiDaxbR+WqaBbLtNO1hlw7JUXs2B5t/YlMlJZzLwS7MzWWdDu5Zkrb4vy1L2ZT\nN1XDGFJDajuJ79BxJRf3ok+n72+xfgyj30wbts3i436kUEuiVVD17uj7XSJqZWcJ1av96BmSlnk+\nG6XS7SJNORqnCGfxn+R/G/lyNk16WuyrsIbE4YIA1hmh8u9a3o0WwOiRIrooExhHou84GgQD6A5M\nZPudDDofrRSupbuHrl4qhkaLd3eSinJad1CeCq2LZIbMbhTms+MnlS7aeKTDmxdasOtM5x0y/eXz\n8eA5vzZ76UqZwwu2XkDtFFrOoXpNUuqiPxzrmD9/js7rKBtJ99ooY47ZWURMH6DwK3Kt5LsoytCw\nhXSB4qtLFH22S3Ga7nckpZJ5vf8VQO3AzzCvfE/73f50ONxVtDUyYBTZJtI7YyXr1jB0Mpky2lZQ\nsQu9Uyh6iva1tCQZWEJLPYPOJPNj9Le399trtcIH5gRbZn/BeehjYNogIot1AnR7XCzyawUgmhKL\neaYAQZtoP69Y2QHdshso2kVELLtiaQgAJ44WYjpJwe7J9/19kAD12tj2bUqGxzR4v+nbxzh6zifz\n/8jdRGqcSIm24S7aG0L6L1nJgkWMTAdFuvY4CreQ2hXDafwfak6mcBcNvdQNJbnwQpmSvK6pX5Ut\nI7WJ5noqB9DdxtYcY2YlJPYpaLg2qW7jK47jwxOfM2f0HYaPz/MA2Z1It9D8y1LVu3cyMhZa7xZa\nOhK2txeM2o3rbznZ+8/9ld672NbF0IMSErsVGMvGj0bvyMiRNG+kbne2PhtVoVQ1+W42rmBHnrGj\nows3OYK2baRrYhxDtonekihNW0LvgWQuQr/D6LfXahWZHq0f/3qAk7cKda3rBFbRIJg2D4jUoULc\n7dcJ/IEotI8VQGgpXmTzHQy7AC0UjiFxA9oFUWu6SDuuEanMsyIdaUMRubtIlARbs7CAthbKP0Gy\nSsx1fYD8bSTfQ8e3SBZY0sT44azdRE1JtHbnUowcRLaV9i4GvIuS+bGPwhYSeZzA507/oos+91XJ\nmwTQexCFHE9/n13qUEfhJIpe4kd1pzjnaxPAD59f5uOzXpk+P6i406YB39Ixnqqv0nA0mQJFRSHy\ns2NvEtexroXJk+jZQvlsHEB+OcmHaCphYB3eQdPXSHVRNJh8JSX7klrJ9nkMnB3fQRLdvaR76aml\n9Bu4kad/ye4nJCRXFLS30d5DXXR6/c3rvh/D6DfQk0uZXNdoZndDkIfahBMoE46hRFwtk8hvIbFF\nLKzftRe2iCrKCtGolmbTE9QmsInEi+SeIlkvooItfftfKy7fqr79l+CFwEQSs+h6IEDAohJaHyWZ\nJXU3FvSBpvfRvpxUhtppFBeoKaJnEJmiSAXKk2xuDy5HbR/+0vo4hfUUTaR335RDlzzCNwvasrSu\npmQZjY8yfHAwRAtb6LqTsl5Kc13mfvh4K477nAOff96ag0cpO2CwDY8UdOaKfHrIw6onk72U6sMp\nrYg0o3kjlevCcRWy9LYgR/cOUp8hsT2hZx3rlzB4JO23UHUUxXtQNJvU+ITUmjhHzUsoqY4u3dUf\nHWlweofkRnob2XpNRDjFHXSspmw6D51/qF0WrDZnE14DhtFfJfkXtYMmbnDKHgte1WvOufPIWMSN\nwglMF9yJUdhIx8NYQ3KWQOizoj+5RzSS7S7Ko4/TfkbGpFMTelaLyKGd1NlewSUOEynQ+L797CbS\njk0iFerGekpqkQoKetVwkiv6njtOKLHsR8VASmdQmiV1NCXldGyjro5hY2OkQkURw/Yj8Z5wRLpp\nGIDZFN2ek69PSU2gah9qz6cjTypH+flkuknuINdL41LGz11u4eWnqLqynef52bXXeLD1IkO/dLjh\nZa3KD6LzEQopCqeSL44msOIM8+opP6/EwN9UKCtlXZbKNKkbE1JlBZlWNs/dX08bXSVCUX0hj3xl\nL6kFBZKsydUZ/kkybyO5G+Pv36D7KRq3kjiE4QeT2kq+nKqhbL6bESfdr37Hq7uG/pj1pyT99gf2\n0B0/c9Di9UGEekpEGSsofJPEbl7R3GwRgjrtYrFvFM5hPM6h8A70kjhXEKuWiEa1auGUfhfJ3yIi\ni07Bp0gIicBnRXvkcgGKFve9775ivON2UW59Kaaub9rBoAksWkZRkpk10ZuxvYVBv/BKOvS04JKc\nyo5Eqa73dxoyi6e/P9Mep78oMbagcHscS6JUdFQtpZDE+1j6SaZO4tmVUQTapYrKD6CHa350glO+\nd2P045wmsJ6OqGIsbWT6rmxe1zcKckWfLum3RaXoShQo5BISxxbYTO/0lKLLcnG+3k7LD9jexfix\nAYJWHERhOYkdXqbv9zxI5r3kfkNbdVSRtjaQqWXUNvQTt/rtL1l5ptenlpfrfOoiReP/fEH+4KM/\nKHH+hRI/vFDiiQslHrjQM6cMN/4T53jmZ8Nd+KmDPbNjuPn/b2hc6OVe6QXZTscz+CyJPel8MmXN\n89U6nhZpyGxBCJtG7lJ6fieeMF50xrZ5Zdp7QaRDs0UEc7JoRPgdvXycyGyryeVoyLJ6GePKAoox\nmnUNgUW4D1UsOHs6KR77IRZR+WSnIdPwHENHLNQ9t6DxR7HPRCl2oXlzpBSJqRTGJAyv4fkVzChn\n53JK0mz+MXKcct2NgfEMFyXnUWJKW4JpdSSm0dhJ61BBcith0x61WoqL5ZsolFLYte+c3k3RVbk4\nF3vT80uasgyuCJr55hZatrNuOd3tojReweYMlsVc2+oBoVSWSVI77dU0p/9x68cw/k3sG++/35ef\n+Ln0LQWnzX3aJc+fzootf9Vra48ZQH2bKcXbzSjZ6tmG4RbsGGde61DvePo93lGz3LDWtkhTGiNv\nLirtwy2uKBhc2q1oqkhZHhWpzpI+BuZvSLaJSsnvBBMK5J+MWSTJowQfY7VIQfrKvt1HpKQ7C8GA\nJJzJYsp6SBbRXiCT6sM2RuB99E5JuXfCwXadvcjo4fgBiTa2LA+90OoshfcmebKgaSOZcRTKElJD\nKDmQNT+oU5TJqhiU1Xo/pWPJddC5M4MTfWMZbom2/kS1cISNLD97glEVTTGY+l0ULYgu0szZrLmV\n7p90qLw9p7AfhVWk98ZtGEj+GHrnCp3UKRRvJzMrJZMpGDGWXAuD3xbM2nx3NPMN2h0byI4Pslbv\nPPIF1OV9M8Qm/mYMo99h/BvYr6puckbLsxFPDqK6vsPZ77rHnRUX2Prk6j/72vlf/7Ev33ijY49a\n6ah3rDTyth0OLV3pwOeWOHH/5Y49r9HuV5zi5BELDSqNEmJhUQzOWdHGoMrQo5QR+MZkkXqsxDiS\nB4v0IiUWWA5b+pzFRLLXkmoUd+0Jgu+xg3SiEODqYrTRPb1E+fCs7Cqeb2NaRbA8i0oi10/dTmpI\nwdaZg0y4aW2ArNXopjdTKrEhG/qlk0Lyr6qSrkWkx1CYS3pPBixsl9mYtX0O2W4qTi8zYHMv2Zi+\n1n1fzH4tm8qOx8lkaJ/JsBub5JfRtYCioyjtY3XmF/XNgbotqWVUUsf/FAx4K2aRf4TelaTrSXXS\nfXKRTEte7hkypQXZ9RTvQ8/jdCyivI6Gy2pVPNyh+4vFiublpMpj8pkSqscFG/ZrMdCtn7jVb3/a\n2r9ykbJRucAQVvU9WETP4oyOkUmJd2Y8+daJpnRtUfTjVnXPdWh4LKdmJMX7UX8jdWeL8upmZOl6\njpKdBQ7QUqX6vE8aVb3DurO/z6Mh25/dm/RLfSrdo8UCv1cs1okCk2iM/ckLhzIa76EhX6P28saY\nQfIrsbKmooOuudEb0dVYLNGQ07Egq2csdcV0NrBqMzO+EphD4imBj6wVqc12QS57QpDE2ik81Rcd\n9IkW57fG7JPCbaihczOlg+naGgpg+UnYQGonjIrFnd0clYwNtzFsOO2DqK6m47aksovybKT+wmp1\nh7fYkafqcjxE7xjcm7TkrryBOzPqMHIbk1Ifz/MDup8Iglvmu1jNltMGap7WZOphOJj2H4TWRW+B\n1M5RSWrMBOtzQAWlR9Kxng2PM3YQxSF11Y9h9NuftrJf5aKd/BnxjY/AKDKJHgOGdKm+YocRuR3G\n3LHJ8I+1Su6bM2w3is/EGBLFokv1eS9rYhSNjmnp/oeqq3d45893sb6lKtqw15HoYeOvyW2mt1dg\nEAVRit2v7/dmEVH0ioVc1fce/0Xt1kbJc7Eq+iukvFzCLamI15ds6VY8MCt35SB1B+BjUUqdMYbs\nzyMlKtTR8ZTQ4WgUJK9qwbO4VpRnV+OycAwtc+lZSu5uOgoksjHC0QSU9DmWLSzbyIu3hkZFfiwd\nJRSeZdQXyR9M1xnVHvrZvsqm56mj7YRylbNaGEDmsQT3xCzYwg8penvezh8l/YnBrKDzgbxl+5Ob\nTvHOZCaKPpqVDH2qSfO6XUPZ/QYyI6nfRKqO1MyYcL/gkbcZUBJVmt65lLUxeU+Sr0xX/Jut32G8\nmexzh/vCpoITvjDw9d3vbJEC7C7urhNEiF+NZtZvYsYFKxVuJ3suXf8llFY2hAjLkA/27WO0AOPO\nDDJR+jisI9fNTd85Hkx78j8VfYhsEWOnoYPyclFNGS6ihMECixiLE8gN6NtvDpPofIjEkr5tmti8\nTACqhwhlx4MEs7QGO5Ms747P+dNgeT79w11tXEPbXfTeTVk1y34hIpntAidZROIj9A6gu5kdjWSy\ncQxrW2nYTMMlIzgzSFfZMSS6ab89xiqOmUkqz+bt1N9G2Rh2dNN6CS9+aid161ocfOK86IrdRMWW\ndmWzyXdQ/F8FHfPJ3h90ce1xPHUvbpU/PmHxmpmKbxkhVYYpdK7FwyQOom2nMvuc94KuKpp3RPSR\nnCwqVA2kh3HcJXeqT1F0TEJhkFdIcsWv/VLqdxj/AHvn57YofGOOp5641ZI7fuW9E/uksi++x0XD\nE2686H9NDr/uC6/9Dd8u7q6DA0RTJPQsqtHE8POT7EpiWOTMpSOCMGVVKHRbjBI2LRDA5Dy8Rdzx\nR5EaSraK7AlftXSXt1NKegKSpHcTVZFxoiS6l6hw5Gh+EN/qA9JKBT7RQ2tFX3PaT1HP8GPIPisY\nqK0iIvldFeVXDJzTFhFUJZtWMuWDLxhYRfGgmL+a/RTDx8apyM5JRHqzDGV0LI0BR8ksyb2j32RY\nZbSJjzxvYzSN7UlqOSXjWVHPmvVsfpbqIjoqKC4icyjVY1nezKADX4yg/7gQILZYKGo1BzO10Enb\nckpaKE7gxxjEzwfs6ROn7e1jHzlWx7kb43OOpbWl75wvpOKWDgZT9CJNayjsw5ADYiJc12eTtn1l\nIHsF07X39oLN544Mzsvy6Fp9rdaPYbyB9szPrtJ55DDDPrNO538k5R/L2+XrHwHTJ22zeEWtnUY0\neHHjkD+5jzu6HnF0yYF/8zGMG91sVf4HTCE7PiX91lxUHObT3UpxF04QnIpucWHvLiKSKtFb8mSw\nO5OzxGI/tG+7OsFReE5ELBv52Jnvkz59o2/NeEBRs4hMksK5HCZo4M+Iu/2OvvdcKSIVfSDdUYKD\ncThuJNvYt6B39fI0te776V5N1SdxNw13xDiCtq6k5jV5NUXkkowcyubVDJ9Ib4qSvdny3wzdjeU/\nHGtD0WiHHPGIQm/fnXpaHF9hXOhq9HybzNF03kNRX8k3PZqeVRSlWPxCEMXKa9mwjhFFMUdlxInC\nMdVQ/0WKU1SWkprOxksHG3HxVksPnGTKxSskrhTNfeN58TN1dnqyXv4+Gp/vE/juqu0AACAASURB\nVFEujUHU6UJ8J9lryB4cHcAdbQzZUxDZ+qIM7XFu25+mfKiI7JJsnceQ6Fbtp4a/WazkpCkG7Vei\n/dlWX7jjdivvq7Tf3e93+a939+NH93h5u62NZaCh9c8nlr++aMwfPFZWndPb/dcFhzede51xmplK\ncnDBcyfMMKi8RerKnPShPPGl3Yy8dHNULp4V1Ywx4mLfgAQN99G6nMpjRCXjNpHWrPPyOILuuaTb\nOLzwouOWnmzQxm32HrFV70tYQaJvVECiRhDBbhLpQbFgiq4hOUFELluEmvheNH+9RFljVqIbTXSv\novMGyooCkNWG1SFPl6mkJlNQ2MrWHupzMZC5PBkS/J19s0eWrWFYN7XpZu3vX6t0XB+YmSaxEPlI\nk1ZfHmlKyTDS5TSvpKIMDbStpruRwVUMOZNtJ9UacVeHzl4Ke/A/X3qv5MKUoQ9tkb4tIX0VmQPi\ns1Y83CExkNprGm3YRPUIAcwmqN3ULrEPC77NyLJwdoWNdHfG3NTEXhSSSdn7CjZNYPSFNF7B5vtI\nryZ7drHMTTnLXohUsdAR0V6ijUQ7F3eiv6z697VZP9rFh3+92YPv+4qu4aNUb91u4dU/ddE1B8i+\nuF37s63g+/mDXLdlp7+4v3FvS9h5+CY77bbDpES9Qx6d5gPpG1hH2QEZDZVj2NwGbvrSde5+aaqO\npr/uq/vU0CfU7dKu8DOyWYr2zam4tMPimyYb8tntRl63OVKUIuEsBomLd4mIDnZQPoHK0/ATcW/q\nJFcg2Soii6K46xpFcnvBF9OPeHvnaS6oP8zeu20yYlOjdDGJZhIHi3RiiaiUTKH5EnrLKe7GdPLz\nSAzCBEpuzL7MSZAnvTHIWAOqSNbG63839zW/MQYV9w6mpJHaIymroqyMZ5bF1LPKt5BfwdZWqpuo\nzlAxJjQpCgOSOpYVpGp44TF2OoPi9gBwE7uTWxuRQktXLJx7eybZeUyj9bdRd0+H8ppY2Ku/uo/T\n13zENx+9VPaZvNztMR2+bArdT9LVEM7NWVRvEinLkbiPRC8eYcjnSU+ldFEQryqqSRR4buswtRM6\n5BNpdRPzEg2UNjBwfDgUD+bYk9p1VA8jWRrEtR0LqXovc55Df1n172vvO2KBUVoo4eJbDnhVry0f\nV+Rze9xt6AcGOGzSs+5d8FYfeviXUVZ8kR3zSXVTPg41dLfw2e+d6ZLDhr7q4zxsyCr3nnp1gIMb\n8IiYyF6Fl+hZS2Z3UWLcRdzttwhgtEukEmtFJDBFpAgvCiJVhYhIpogQuFWAa0XCGTRxxsmXueJT\n9dqPn6NsrcjJDxLRzESBh1wiFkuLwCG2iIFKz+NDwoHNE/hHPZufDNXvdCPFh/S97yZRdRmKbXQt\npGQKEuRLg8hlKCtuZ/wUOhdR6Kby7XSeWKx0TTc/Z90KRoymbWNwKEoHUhhNbzvd3ypV+UIn19L5\n8WKld3fL3UXqWPJN7HiEzo6QxGv5+BhX7zjABQ3XyazrZT0tm6neTeAu7diVDVdHWlP3BTxO9zO0\nD6aqlfQ76do1I/XdHj3rKD9R4FDVfef9HWy8lapaKodgEdkO0m8VqUkzq55gZBW53UgvY9Xbpph6\n1TJew7p/7VzRf0O7+u6df+//4+8tdvZPrjByQNKW5ozu1go7DVtrWe00z79/Z0tLajywYU8/67zY\n/g/Pk/sfUhso5PnQnr8MRakEiigfS0eZAAFL6Hyawx5/2CX+41Uf530N4y399DhT37U6hiaPYtsh\nVdLDGXDFDkUrxcyLCYLG3CUqIcvFhX2Kl+eBbPj0ECMfb4j0YZhgbB7S93zftHVbkaQ7R/EkfvrC\nWfziLFs2jzV60Rod66NBrOiTwnl0Cyc0WuAgswSwmfYKUau5b9uXMIVho9BDcz5GHcq8MqtEeUw2\nU9QnJnNWYB9tN5Kcx8gMqRQls9l+H2XzKV7ezS7kttOVIVUTqdX2rTS3s9P+FO6j7PlObqD9P+j+\nSrfSXTmy9b3u3fprrS+hgwHFlEwgc8laF757rZ57IqprbqNqhMAXplDoCi3OZJLqEhxH7+yE4usK\nur5Son79QHUnblbyWI9CF0Xj+85xEd3b/j975x0dZ3Xm/8/7TteoW5IlWbLkXrGNuzHYmOoY0xIg\nQCAEyKYRIIQkkEYwJCSBhCWBhFRCIBBaIPRmbGzjinvvkqze+2jq+/7++N6R0nZPdrPZ3+Fs5hwf\nyaOZ+9773KdXG7/tYL0I2T0mArUNXK+a6vQ+Cf5LITAPRjebexwA50r4+kuzkbf3v//6F8P4B14L\nyut474xHSF7v4nPUaGV4BWQPCCEX5baw+PU1ygF4Hzm2wuApBxrNpK+XUeFDOdAOnhbImsZgyXdu\nGUwsj/639zjh1ipJ9R7geSho75GGUGb6Q2bD1p+exOzf7YHfmOc2IUL1IU/kXijb0qKJM08CX0ES\nfTMK15Wbz7cBxyBQjrSFyTBuRitjPnEN7qIVZGebffTpc5yKGMMB7QMXWaoZ5tlR814ncpbW6L3u\nKsgtBQ5D/SEYkYu0loTMC6ZD3WuQ2Qrshsx+Vbu2N0GoXS3thpfB+8dgzr8DLymXYvxciO2F8MkQ\nPgBlheC+B4ELgMfAnWsRDrmExwL74UnnSVgAba+Cx4bKTwpW0SQ8NOkSPjZqEyNX1VFwPuCB2D3Q\n9yZkh+UsnVaOtI114F0CeCHnxig5eY0yB4NgjYCj98HYQiAE/h0O1qvgLIWsuTor78pBi1emx8Dj\nMPZi3VHHCUV83DEenp3whKp9/4HXv3wYf+P1G/cQG066kMgzf92/Mf2aP7OO99p/jcdk2FlR9W8M\nBIAoZHzYFC8FkfQtQur7TKRunw5shOZ9kBmCgWrwRsHyIGKsVi8Huxvym7qIvbKE9jfaaOvM+C+d\n5cZ7NpHRYAqYxoB7IVjFaGZqBzANim5owT6iqEOq39QyfBhJ+xIk+RdC8iIbu95VFasPVZ42I9Ol\nFb3vBUrBnQ5WASz07+c3207mlpmbIAZuDVhlaD+mloSzkTnhQU7U8YhJRJCZNBtpPUFgNARtoFIJ\nVnknA/Ohb4fOk+wBTykE6sFrenE4w6DmIJSepj4UB/ZC4RRorYb89coODfqBe8H7BvSsV3/QvmaI\nJ6B/m6pNE5OAFCTn+HHnOWQtgegDYurDrgV3uYU1C3w3e5l0717yM2PEFgRo+lqCnDHSXDIywI5D\n8WIxbGsKUAfWTmj4FYSLwGoEJoH7AlhHNU82HNSAaSsA1oty0NrFggP15h5Ggm+2TVG9i1UAvTXS\nshIbwZfrYuXCii3Av/ph/IOvU075s/9ea02g9ZL1/+lXNpz0azwjgUKIvIHUZ1ClZS4ioG7Uy7IW\nSdCn0YjBOYhQfDB8CTBM/Ryssxn0MbheFU4RgEQUvnvDney//CcEl97+N/czZlIXM8b9dTFZwfLb\nSc1Qh+nUBrBeRj6J2yBRD867qn9IPgCBi8Ba5tVe69D8kEKUR7ERPPtcepIZ0ij6zDl9SLs4C4Vj\nXwI6RADEgVfhwU+8y/7NkyVNRyCfSSHKBVmEzJs6xJjmIg1jODAFfvlvV6s0fjtiun7gG8AR9bF0\nhwO94ImDf7T+bMVgbysc2C6irzkItUlo3gN2ACbNh84Hs5g+E1IBlcbzZbB+o7P0XlNMRom2n+FV\nAxx80k78ayCwMU79zS7NX4NIFPwzVOA18FkXdkBzdgEbnvgQscl+mm+NkO9HDHC6zmdNNPBbinJP\nUsAkKKkAYtC6S34Rq1Jt9grP0V3YQag5AG4rOF2CgfsQHD1rFO5u6P4JhDoc+u8Lc/SOSjraod+X\nhW8A2AeJp/8m6vyXXv93GcaPrueFA1tp++6Pafj01dy2ufHv/mrbvfdh5aKEqEII3G9JHb8CJSgZ\nSYQLLATrTBSOPI6YyE5EOBcgoitFEncqcuLVgZWBCDdbHadIAMNh4KTQX+2nIq+bo2f/iPW/epSS\n+8/6q797L74DVmtALx5UHv6Y1utrhow8heSYAv69San/86F5ZL60kGbgAMTrfbTPyafnp2jGyG5I\nnWPpbD7AgoF4QJWjnwEyIf5hiwvaduJ5NI61815pNyACakf9NlLmvTjSJDIheUjw+rf7Hldz4FsN\nzGaaz5+hPVolQBJCy4EMsD4KLIZZZVBRDsEMOBxVNCTULvhbMyFvXS9uEEJjZE44/w6dj6vuYsSu\nJux8KP43hVMzRkLWMjUSxq87609B+xOVNDseOublktgNqQ5wz4Hy55s4d+UqAmsTjLkOMgr0nUQX\n7HscUtm22gxGgacEg+heP9ZJ8E7HKIJZ0LVRMPZ+Bml5TdAxIZev/+hxrBHgmwnbikqwxkH2De0w\nE8J+4VLwlRjZM9opPxWyT/QSeTkECfCd/h/j9N/7+j/LMJb/7BtcdPmrDKvtpPSaz/L9eSV/1/e+\nM2o1ztciUAPuVGAYeL7timgiCKl95ufHUVQhAjwOTjGSxBej1ObnEJP4JCLSHJQU5UF+j7FIHfcA\n3ZD6DjAOtj78+z/bU/WsB2AhZLwcoyFwGuf1jP+rfa/+5QIh+0zgNmAM+KKQvQzcXRa8C813IO1n\nBRy+Egp/26FIxRIVcvmr4lTcVE9vG+DA/h+Ow1PuygfzBDhNFqFgDMogOcIDXvDnuVAFEx44ivvj\nr/DQ987nowcuwX0HJWi5iEkGkRN0PDhvWBz/XaV8HBeBWwpHF4ykf5ofJ2lJOkcRgzF5GHgFS3cp\nyvc4TxPQGjphSRlMvAwyp6FU7f3grAO7QrDPmKaK2LwcCE2Gxl3QfwjaH4HWXbnE77Kl5RwCwhD7\nvM2Ur8KIsxsZ5U+R/3AXobmQdYVpFnQMBr4Rw3soivsObE8CHeCrhykrwBN0NET0MXA3ACMhfsKC\nyXD29Cp8UfUBjf/QUvn+HHBzIX9ZF8kLwV1i0b0GZh1shG4IXe5g1YB3NCS+B56XkxTd34sdhlSR\nl8SDBrb/tQZsf/P1fzqsumfEQ2SuhIcmfIEf2sm/6zvfLX+H22e+R/xd6InAsK+CtQaF/zpRvsB4\n5KDLQ/4LLyLWDjS3YyKCfAQiRyBjBVLJq1BPzG+jYq/TkLq+ETkLS4BFkCq0GVP/M2ruVnMD96YV\nYkRPo2SqqbDmm/O4Zt5CamqzBvfe/9x9ZFRHlGX5HCK2xagYLAf4vtnrbJRYdQ4iyqWoAfA85Lwt\nQiO4l4L7A7AuBnbC0UfLGbuqVp+tB25QL0zCYL2Euo0PB26EvKvuoqsxxaGVD8G1ML6yHT6KmGMJ\nVC8tIdQfJ6+nh7r+EYQmdJFX3U+wJyENLYuh4Ue7ILUd7HMg9Rp405WwVeisEWVEuiHo9UPxOahK\ndRv0dEPO7dp/7CWwh0H3CRh2BXQ8AcNOA7cPrApIrZN/5PgeGHUug818eo+AfU+Y8K/6lQ6+ACiF\ndW1zOe3WLaRusbGSLvZTarHHCog9B4l3IXMRxEr8BE7EYRu8vxlmXiGthxC4qyE5DRJjIfkmBHuh\n9sp8xhztIFVmY73laCbMaIiUB8lYFdW9psw4gmxgDNRuhPKTTPXuvzI9/3uvh3vn8qOfzGXjCufv\n/k7emCj9DX5mFzURdKFrFYTGI8ddAyKkNO+pQCq28arzIURwk8zfxikOz07EKMYjbaQNSYQqYJ1Z\nK8Ggz8A+7lI6uoHn3lgOtHNn5hoVd/nM9xugcl09XzhzI5/66gF+cNJrvFk+h4GvTmLuzm3wAPTU\nQ/AW6H4Ggq8DWyDlhUQ7nHgN8sYB7dC2Gvw9YH/CnO8ls/cD2r+VgRhhAPIP9ojxOeAeASsbLAus\nenM+v77DG/C5z22huS+Dted+mvX74ly0+nL69gdou3QmWx/xE8xzeHL7TA7NncPP3lrI2In9jN1c\nA70QvRe8xYJlcoyFvVrM4uAj0NoOGU3Q54XeFk1Gr3q4hII/9OEvlGnBhboPqwGChYgB7lbdi2eU\nTBDrDgi+DIlZ6sYdOwK+DKAU8kbA/q9MoGBzB/YxCJwK/mQCqxXcsRbWEeA2qGivhwfA7nSxss39\ntkPyB8og9efofr1TUxIMMRhRCNYRaFtUQHhXhIQD/k9B3a1yvGYAhZ0DkAL7mAtesCYDJ8DnTYoh\ntegO7CDgVR5J3nygHFbsBP6VuPW/85o+sZnSjB4e+fRLFP+ij3iVPNV2EdiLELPIRTkUdUgraEDO\nvo+iITyLUceo0T4CnoQIaQD5K4oQ4Y9AyTlfQmrw75FzsBIIQuxqG1/CwTNWMHSXr5Ba3wOd3ZCX\nTmiyEDH7gCvh7I+9xIP7v8DEXx7XcJznNRUsuBgaXoZQHEIl4P8N2A8iAm8FroPECBvfDxz6rsnA\nH4vjjyelpo9CodH70SiCajS8eR0yG9L5B8MR09tkfs9AjPMd7S+x0MNjx6YxZ1mUPYFpXLXrQXj4\nj7C/nuDer/B0xYfpzczgfebywFe/Kvhuhq6fh8m9qZ++Vmh2IdYKYVf5DclCKHgYBjr9hJ6IQxg6\nz8olr7ZL5uJTED/Li397Uk7oYqAEUmPhpdHLSSVsLql9CR6H9l9kcfDgJBY+sEXwbAU+A3XfhNKZ\nyjp1q8C63Jz7eeT7+aSBTzMyByMo5LwD5bFsBXcjrCms5Jf7pvHzvJfwZ4M/BS0NEPKppV/pi158\nbyWhBdxsdSTrb4TsM4Aj0HUEcj9t7n0b0gyD5qeNTE3A+qV+/N1I/xevfzGM/8Kr9uZ/p8zbQ/x1\n00VqpDppZyxEHv4piMAPAEegeT8MvwwxjKloEnkQmKcqQ+s4usxNCKl6of8dCOWCvQzYCfvfg8kz\n0cWPh72PjOWWK0/jjWt+i/ciDdOZGG7jYH8BP7ngNa7f8L7yBiJajxPADbDFHUH8zDxG0MOo20+A\nZeZydCCTpAJFIqZrT7vvgkw/VORAXwQyzwLPl4Cb0UwPL1gtEP+8B/8DKdyPK4yaKADf+0AMBk63\nCR116FoGOYVg/QwxxDrk8MxHvp9NyCQaC+wA51KL7193M83ucFzL4ssrH2T3tCmUDatmdHctmZcM\niCl1ocI1P7AF+jqhrVrgNhnszLocmVg7AA9suns2U3+5n8xDEdztYF2I/AkxcJ9UDwkn5sWOOdiv\nOjj9FolPewgEk3IWd0DyXbBnQ2INNNfDyHMRE8kw5zgZEehWZJodBGc19MbBjUPu7eb865E2ORb5\na/YjofBhSN0N0fk+woEEqV+Z3J0SpMk+BdwCfRer/0XyNPAehltfuIcf/vRruCvBmqD9HDp5LNFd\nQaa/upfjV45mzF3H4f8iw3iwvZrP3/Fb3BY5uFY8vpgbbnqfwgu//D+0xT9/uRtXqPNTH5IQDUAQ\nOuvBlw+ZhcCV5v3pwFtIgkaQf2EFIg4PysfIRV2iPUjiHjJrz0DayC+R1rHV/P0SIAmfu/rbPFyQ\n+I/3edEK+U42IOk/Hg5/byQV153A3QrVeyqZOKea7hbI+ZDOQC0ynb4N/Aj5MS4we9qOKPAM1K07\nCE3zCin+dSucUMg4WQO+cyHyLZvQyy4NhYWUDm/BLQf7NmAurL5uPkuu2aSkr1sRgZyJ/DNrEKFU\no3GKpYj5XgTfPPtr3HXsHqyf6iwsQM67V7QfJ2hjv+dABrT8QXNDMs9Fod+jkNwHJ2pgdBGKtlQg\nU+9+RTSsLOh8J0zeL/qV2l4Fzk6L1G4X3xQ0Ef4AuGvA2QStW3Mofqkbfquclu23w6zLzB2lU9RD\nQAZsu3Mqs57dqwbER+DgJhg/UhPKGIaYzDxw3rb4XOZ5/Gz6K7T81qIo5MLHIRrw0vnlJMVTBBO3\nF9xGrW+b8ZOcDOyTX+uu793OnQ/cg7PBg2d3ChaBuwScGouqe13cD41j/ItH4IPbcWv0X781aqJ+\nlk5UJtR/8Fr2sZdYU1XBHw5PZvo3PsPGotH/NGYBwO0IsYsRUc8HJkPebMichBClDUH0GJon0QqM\ngWS9+k2kXkZhxP1IC8lCV9eIIicLEJPYZf4WMe/FoeO7wI/h0fLIf77PQmQWjEROwU74euDbBGrA\n1wkTJ1dDCnK+jPwJzchkGI2YXDnKhXgCaIdoHiQDUoOpA+6F4gdaSa2B3k8FqY+acYirIOOTDnVT\nhzOiowXrDbBvRw7TY7DkvE3wdeAhoARiWxDjHQvkSPK6Y8D6MvBZRNxVUJpsYMvwGdqjhRjpEwa+\nZWDVOyK8JigqgXgcEdJ+OL4N+lqhLwltXSh8XQt8BNrzMtXevwDyPtYv6f0OMAB2lktrLUReBR5W\nyDUZA8/F4Dm9WxrJWLCehFmTkA9qHzLJlkLfN/3QCLPu2guvQOLLHpigRLLtJ3RexgBnQlteBhcl\nL+e+6auhC7JiLgCpvfDI/pMpKYfIMSAqX0RfL1QfRtrjHMTQF0PLeQW86D+fn37k34juS8Gp0Pv1\nMNYB8NS6jD0NxrX8g2me/H/UMPq+HKZ7VpgnPB9neF8TZ9mrWDd+Ph+uewnfK0nIgeuDl/DIvVP+\nxx/uDbiMKe7g337awKfnvULmD+L0zMni0mE/YO2qCqJ3bfzrDU9agRNUbUIiAb48JMHTTr8WJIVP\noJDpSiR1RiHfxDqEyN1IkzgJqaV15jMW0kjakbQvRgxnwHy/CUhB9Dtecp94itiGLtj+55moD333\nNW54/X1FYYLgvi2n5JZnZjJ99nYGopA7XX+jGHW5ajXrbzXvDZjFzAR2pxb6WiD7NOSDCAFjwPkd\n2N8F3oVoxEvwgiRtJ+VQcHO3tKFi2Fw+i3mPbVPE4jRz1nVIU8gXHJLTwfs2dE7PITuzF89+Bw5C\n5E1IBCDnHthx7URO/sRB7fV01Be0EjFHwxxIIWdzAdIU2hAhj4TO56AjBmMWQ3w3+GcjRvwSQ71E\np4PzPthLkNa3T30t7BDER4B/ADgZoq9DZxUUhcEzDzpehvxS89wgsAgiy/1kvBAndYYNo12OeysY\n95lqWAyR+yFjEdJ0OhlqBnSW+X0UJL4Ivo9D/wnwnIBgHrBUHcG9B1GC3FbE5LvB7QL327C48SEu\nyD/Mrd/+MVa1Ijs9h1XHEj0KwSvA+gnwQTRJ3EuBOKytreCKwx+hki7IglSLGqFsOFz+P/5Q72uX\n89rM6zh9yxZ8R1K4ubDjaAkz5zRKTd0PJz4zjFfis7hh4YI/+65z5gpNG+9G4a4+JQDRjRiDDbEv\nWQR+4oroowxNAhtAzs5tiPC95mcASfN65CDtQIS6GNm3/WiATp5Jp25E0rRQfzvv6l/z2hUnBvf4\nkzNf43PO+1pvJLLtiyB5pY33hw7RDRA82yRc2dB1HIYNA+9nzZq7zJ4GkARLmTVOQY7XU83n9kLy\nJhvvVxy6D0GyC/KeB6fVxvuiI+nZhByLLcjsyAb3AFiZZr04QvpxiHnsN89+HmLNEPgoupMocg6m\nJ70vRObKb81+ZiHt4KvIMRyDgWs9hJ5JyWcU0rrJAyayEgHyoOGP+ZTe2EH8GfBXAFnqhOX41Hqv\nbg8kkpAXgFCGemtyGbjfgf6TIXMikAOdC2XONF5bQMnKNj1zKsqSbQLehv5vBgnfFsUtNz6T3QYX\nehBzT2fL2uasWWidJMSehcDnkWA6DNF3ITgWogchWAnHD8Hou6H9Zhh2t4H3+0iTmqg1U21gH4fo\nMMjYB3wQGcY/5MOwtEL6d8vVT9e8Z1ng7FtBa3kehV/plCo6CuVGZCDCSCEC/QLi1LcAH4XuI5Bz\nBliLvzX0DMC5dAVWNfQ2QdYopCEcQpd7GCFmsfYR2w2B6YgY9iGJV2SeW4+IrgRFSGzzeyXy1P8Q\n+Tu+hXIlFiICvBVSreAxoTlccI/BM8cu5PLsGQD8dOGrfNbaqvWPivA8U8C7DEU0EohIQwz2lxgs\nC9+IHK9JiNZCcIrZkwcIKqLizWPIJDvZ/L5dayQvAW8EmW6lwMfB+ZmFvdel6V0oNinwzIfUdeBZ\nYwD7rIHBteY+vqQGN6NGKgqQtxGV5QeRKl+AWvd9ERW/TQMeRTkRQcRU5wK7wbkH7Onm7p9ChFxv\n9n42YvT3Iwb5OfPdpw0cRgLrYdPqmcyfux23ADoOQN17k5j+hQM6ezG888NTOfPq92AZ8l39Apmu\n6QrTuyE+DfwPIU1itMGdZ6FjJeRfgBjg28D5UHVNCaN6GlnlW8gZF60XE21DGsh2wdZ9WwVuoeXQ\n+QLkTQZicP8DN/DFL/xE562DaLXwxecDqqGqZtAJ8E9nGB6EanU6FvkGtBXaCpchHgni9dchkrwJ\nWcZ/+fo7GYZNOBhj5shGfrf5DTwDSUZskrMtfraHU868npffeo7h93diR11u/O4P2XXFAdb+8FdK\nfMpDyFAFyc+C90tIso1AkJuEOPFMYA1Uzy6jclsdJGHbFyuYfc6tUNUOQJ4dpWPB99UYN2nqARah\ny1yJkNFrILQE+SpGQ/9bGpJDiflsAULUo2YvpmMVk5FWcRVC3MPIcVkGB1+AEadCVqX5/ixEfK9A\nMt9D26oQl9Vfytqxv5GZkYWYQg1S4X8LHU+Hyb+mX89MJ2edA9wCbiZY8xjUYBIng288Mh+OqtbC\njiIGY5gBtQjRn4XUt6AlZxiFTZ14Gx0xyUbBIVXvwTonhX275mJYRYKVOwysQ0hzSDcp3gMtq+GE\nA7OnAqPAqQN7nDnPdOhzwmQ80I/9WcTQOs1eokAr9G2EzHPAHWZhjXJxn0Xt90YK64ghzeQPKIt1\nM0NJd+8ixrEKMWkvOE+CfSM4Ky2s91ysD4FzOdiPgzPCDGEqFtzoNL+/q7OkIuCZCe1Phwl3xAne\nlZDZ+gOId4H7RXDugtBc6NsJ3hQc64ApY2HAB6Ey5CRegTSWt4A7kMD4IzJtm5BgWgbJpwVP7ydR\nGcI+IAJ9WyB8HsRfh6Dmq/7TGcYXEZpmIf/5vQj970WJxnlItkxGBdBzEFmuRBbrX2ZG/YcMw/7I\nRObVrOTFL79IYbJNdmsltI7KJaemH7+bkCqXAmbDN69Ywt3WagE0Fzkc63L2GgAAIABJREFUy1Dq\n9nkmbJhAKqCFiPwbSEp6EbDLUQr3RGQGjIKGkhLGHHua6KffAWDFsne5o3gNybfAu5ih8uup5oTP\nMDRfYzy6rGnIsec1z04y5K9o1x6ZYN4PIqayF0nItxFbroDOX0DuaLDGQ+3vofxG6F8L4TnmM1uR\n6dBi/h9maGhQDFgN89o+yabMX8m0mcFQtGcccrSafI2uDRo+nHGTWTePoY5cpm0eNeb7s3SWxEQL\nTyvYBS7ueFN41oqqSMNBMl+MwhGIvwf+cxAxjkVmxZmocna47rnvN1o786NARA1srKNI4lei4r27\nkRSvBUrNuqcg87AGYWE2wtAKxHizEDO/DhFTEtw21KT3JMCGRNCHL5mAFuhYkE3+d3p0T4uB30Nq\nEXj6INECvot1/7EXBLvAJ8xzOwyupfuDtCCi70Aa40SDj/WCXWoLDAyHYyuh0AM5Z0HItrEtR99f\nDKmzwfVYeG2Xp96exgU3HyTjO3E97ynhe2qBTUdjLsH3O8g6BVofgsKzoPstyLkMaAR3E9jNwD85\n07MM+DIKuKWt2QeRMt+P0Oh7yP/9SaT8rkUouwwp3nV/seadfyvT07Zd1v/gcb6VeIVwTmQo8rAJ\nwq9G4TVHjVr/CPTCusdG8tn3lxO96FzOiK4ScqUvo0Ql57QhU8ABqqDl5yoo8toICRsQUhQCS6H3\nMQiEIGtvHy1fm8iWFQphFgf6uLjnAK5Pk7E5AlwOyfMtUgMePJWukCOGiOtU5E1PO7aaEHPZj1hp\nBkP+jfEGansQ88ow38/X/0MXGrNrj0KGdtDkgZxASBVAzy5FxNhn1j3A4OCegzeO49z2fZCEvl3g\nvw9J3AZwNkLyKhvrbZdQPvjmmJtdjdTzPWZ9zLlnQ/+HffhXOjAHPAVQO2M4Oa39WFsRoymHuM9D\nqC+h758MnvlIs2v+k7XLEeJXA0vA97pFIGwwZyxUf3IEeY/2CoZ1Zs9NSDuygWngORdpTjsQE9uH\nGJ3XwKIOYWuhec+0UbWCyKexH3gFPHMcmT0bILQyprs7Hw1VDoDdAk4ueFuQH+stwd8Ogj0BGq4d\nRsuoQvL3dEtjOo601+HIbGpE/otM81zAroR18VEs+FwXWbPAfxZYb7qCy7XgnA8XnHclV4/eA3lQ\nem4/4UNx7KmuskOzUN8MGwa+4qP2/ErqTyth4zcXMbF5P10XFBM8JYqnzWHXaxP4+d3t8E/u6flr\npAj9qfvrbuCb5u/95v/fRxkE+xGKgLiCqXX8s9edf8owbrh7N6uue4zvZKykbGSD1O714DyOVPMq\n5HCsA6sW2Z8HoaKsm2+MWccZ+avEtqaBdQJJ7S0Mpmb33+vFv8aBDgjPB28mcBk4EQsriaTddlR5\nuglJ+QbIPLWH3/xkHAD1Pdl89eL1eNLh0HMg/97biCT9nJ6swR7hykgbjhhGG9KCYohBJJF2cwAR\n+RGkCtuImZnW+3Sa76T9Ci7y9u8CFqoVPjbS87ahczciJExHOCKIwNIalQcWfukI/g0pcMA/XWu6\na8G6VuXgngwXazO4FnSt1eQsxpnnp8/iAvcAvwV/gZgFC4FqyHx1AHuLS/fNQYIbknRck0nm1hju\nArDqUNJTndl7CmlUx1FE5XkkHCJK/iILMb7VkHVPL3YLYqBzUbRlnYkA9Wg952QLqx2YDB3XZxKK\nxAW/OgOHYchXsRsRYifSamqR5A+af30MEfVV5rzPmv15dOepHwMBaNoAWYvUWNj7kEX39UHw2pTf\n0CJ4HUd+sT1mjTLkx7rUvBc1OLAMRld1ifi7UQJcC0SqwbcJrAFYlneE0NQkzIBQYxz7uKtz7ULM\nMxuspZBxKEZrfgEj3CZO7thH8P4UWfv78E50oBuKv97OConuf1pq+HJUAXEDovBbEc9Nl1mlXx1I\nHj6I8vaeMO//CuX2Pf8X67qwmOIREc5bXsdVzY2c7iIiaEWS2YsuqR8xkK+jVOlJiMCDiLDfRgRa\ngHoLvIwayVYpBEoZksRdCLk3AlnQt814ugcMFD6O1Nl6hgyoj8CN19zHyuVdHHztP29OVjopTkNk\nBM6CG+kvCZOZ2yemZZt/6VTdoHlOmTnbFHPWEwyZCP2I6McgNu01+ypDjKcNMaEQQpy1iJhW6Wxk\nI80pXfNxPvIyvY4I9zpgGzh+C3uMq5vbADSDWwCWoxui0rwfY3AKefxXFv4qV8ZmAmk3w8xnHgG+\nCu2pbPLe6sXudHXeInCWWtirXBq/ByUXmXPnmDO0GQZwLRI3mHvuBR6FzlrI+6KBSdr5edDsrwoV\nxdUCv0OaSQBpE+nwawxSB5Qt6Z6Qacc2873DEPeCv9A82zLwLjDw74XId/1kbIhTc/pw6jLKWHjb\nNrXFW6qkwWSZh/bMTIa/1D3kmxqHNL7noOspyD3X3Ee9ub8w+uxnofsbGkydNdvc8SlIM3zL3KWJ\nyNBrzOw2ZM6FIHWmjbXEIenx0jQ8n5G/a6H6ihIqH26EDnh3F6zaAPYlwO7BJsD/NB/GPShFJm1l\nZyPin4MYSBOyvFebY6W7u3zP/HwDOSs2/8W6btPrYYb39g/lJgTQBfcB2zWNiiwIjEQElO7lMIyh\nmRZJZF8aSZ4o8eBrSIlQC7UOo5GKv5ehMmoPQvYipP9MBA5qEnYsoeE33tPNnuqA08CJ21ztfJ8/\nvjmCqyJP8ot3Zv3ZgQZu+g7B/qQkfcg8b6lZP4qQ7xWz10yIbIaMqUC7aSH/EXMbG5C33W/OuAv5\nZzIQ40l7hPYhxH4nvQGG8iROQogZRMjZDnV/GE7Zt5pxXwXnB4rH28uRgw5kntmCA3MR007XkpQA\nn4f2S8Jkt0Vwaz34f53U+sMgkh8kY29U/ohXzVrtiOgDSHtIjxR4GyF/Nwzc4ieUikMMkl8Cb5n5\nbq/Z/wTECMYBVdD30QzC6yJYFWa9cgOHFuNcLgU+Aa7fZIseRxi6Qx2/PUVItIWAayB1wsxBmY8Y\ndhw5ej3g1oF1GSLqCPRGIasJmTyuztJzW5iuTbmM3FYvPNuIjPJfInGaMDA8gHTvRvPePoZK9BOI\nkbjgdpqU7tOQibZZHdB9DYiJrEYzZPYiHH8E6gaGU1jcQuC3hjm/BnEbEnshfBPUXVNM2UNNcCZ0\njs8mf3wP/BN9GO8A/478F1sR6lyKrnU88ut/3hxvJbqOb+kojERK2W1/Y90777s2oYtbi3wSU2Hg\nGfDlAkXgHW5arKVVyulaPb5D06zpQlL29+hCXPCkXOk+O4EaiBwFXxwR67A/efq3wX0NUkfA8YM9\nE+KbIGZpTmV2BDztCCkPAnsgvtPlspq3+XrXH9j90AWs+pn/zw50S9kmMvKSIpID8ELbRCbtaZM2\nUYKuqApJkCbw5aCGO/vBm2vO2YYIPwcRV57Z+yrENEMIUYqR7nYQEelqBpvtANCpNGJrvxKvrDzI\nru6HqPIg7Hdh4Lj6YRDW5+lGmlqezst4hNB+83stZNQl8JSCp8kRYR0DcsGXSDLwW/CdgRjQLER8\nYYaYdNKcyWOe0Qy+HSnBuAvsEp2t+w0IdpnP1yJNyWh8/kACayFipHnIdIgItv4W0bHlkRpPLYoE\nrRXuuFvAPt/sywXqTZpzs8GlTyPmmATKDUUdMvv/kAmTexDjPgrUQWBLgowL+2kcX0hmuB+r09z1\nBrOvUeBuhradEG5Fw4a2I8qoNecagPZ9kDFJdSxkgHUykA/J4zCw0+DhUo/M3p1I0OVpv9kn+vG+\njUz3qcA+8JRpgpvthfB3+7DnA49DKDvGipeB/8UWfenMhO8hT8JhFChKaxT7UbxgP1KAP/cn3/nz\n1zNQNTVHiOcHSiB0CrjprL0BROQmRZiD4OwFbwHQohkUtCAkP0mTuXgRAdLMy4h7gULo+R1iaXuQ\nOXOvCMcThrZjwKvgX6hhOKMXgu8jSHp1gOuDntIwzlGoOwzuOPBPiv31eXoRMhwFlsLF5xyk+tJc\nIVgNdN2PoN2J8gDyUNerKCKoFoS84xiKnNiIAC+AvrchUY20itUoLn8uIvQvGpiV6dx0Ggl7iqaQ\nMxYR/SSUgh6AjEvM84aheom4WWuEYMb75u8WQ9GXtcjY3Knn9e405+mH0ItI77zE3N1eRBSX6Xns\nQQR5wMCohSGj9jUk1bshMwytVUqMI0f7dtvN53cAD0P/1xjyqKUToO6AnhqkVWQjrWYT6v61Bzzj\nEINJV5r2m+d3oGY+FyDx2GfWdTR1ngXAfkg+osSz+lVmX2fpfnxfcSi7rQV7G/JDPGNgWgapK5Rw\nl12MTLYWZOqEzD3OhM1PzSCS0H3b5SaqdwDYqHL7wC8sAjeDtzwFs6BrB7R/LlMJC5lmzaPQ9DbK\n4TkJel8C72Q0xnIC0u/zEfP9B1//FYaxBoEVpEmchdDwHIZyMEBmzFik6L/5H67WDqNO78Zt0Wq9\nVwGzwRqFVLcWBJAm5EXpkoSwTdKUvQCxqiCwVc1ysZEqawpzcj8D9EDWLIjvQcynCF1mC/S1Q/FV\nqH3aDoh2SXVlNfJpZIB1GmRX9OPPh8xGWP8Y3DD+QR5tPsBNsRDXpooEyB6N9GMvg+WSlfVdQtwo\n5H4YSd4y/d9NRzdCiKVON+cJMOhPoBQZhAOQeTF4g4ggzzbnOIqZqIOcrTGGNIUKc95aBjWIgUt8\nQppyRHAhc0M/MusWITafxVC0pw8xkzZzy+kszTMhayFS57N0626fwYiR5g7OQQV5GxER1SPG1mv+\n34LMtOPAs2BdDZ7vQeFysMrN51zT76HUnGkeVPcjU7HV4FIM2AM5I1HI+KB5/iRIjvLgXmuRzPHQ\ntU55HZyOiH4n6umRbj5sIhep7+tMvqmQ8nugUYOnLVejEBmPTMV0iHo+ooglBt4e/fP8BLjChFwt\nSK7x6Ll55jw7YerZO8lICgc5bGD+OCLyVthbPlXM+xE983e7r6crL1fM+yxwGrXX4kpwsy1YDxm7\nrcEO7uQCBeA0wOt38g+//r810LnzI0DApMqGITAWMYp9iPBjCKnMzE6WIEJ2jLodRQD2ICROu13b\nYLA1fZkeZjWB5yTgXHDOButMsEdDYCoi7kvBkwRfMdhTkaPsUT3frYKWV9RwtqsDvB4zQPeufXx8\n80o+0vsad05bg3sgSe0ByM8ze3KBseAOt+hclosvkcR+ycFdr4Qly0Ge/y5ECE1I9dyEkP0EQswj\nSHLNRxPN4+DcB9Zm8zlTz+KsR/0tfUg7eQ9pVWlCOwS+Tkcm0lHE7qdqj1QgTS8LOYbbwNkNpJR8\nZKe7d5+Esmzmm88v1H3wLtAK1jvmTFv0N3cPWFVIyoMQuBeFUS2z9w6GTJh0ebjpZp5OmXZ90Pgc\nZI0AEmDXQ0YpQ3k09WZ/55rzjgf3PplidrdLYruFr8wh6IW+4xAwTJyYeeZsxBiLgTwYaAX/WGAR\n2Ce5Yng1yKRoR1pTt/n/CIYiSM+ZtWpRk55OpHV6gOvBvs6VRpQuYhwD/mxpe8l3wXHATiGN6Qp9\nr3R1i8ycFt3P3Bd20L8oTE5bH+wG60Wz98lgXa7mwD3ZmYQeU/8PqoBPgeWF3MNwn5jiPzWs+s94\n3XnnFUh1XSfp7zFpx6lLbcWYvYiY0mXJu5GqfgQ14C1DksRCkqGfoRqGLEgcVyjWSgHl0HluDqH6\nGA2XFbKmZAFt4wsY+XqD9lADfVvBb5k9RYBCiNdCXx1kWBDvgYyw8jxa4lCcAf56YK2qGH3r1O0p\nN8+M8CsCjoEVgObKQjKPRPDYKYhAolvOLesoMhHCiNHlIImQtpVj0Pcr8F/EkMlwHKwxEA1Lunjm\n6n1rGlAKzkGw0lpGDCUNBRCzLUZMYK+ZY/qGWvUn2yR5PRUoevEmWEnBzq5kMJLBSeZOjPRmk4HX\nXHM36byXbNRXc695tkmko1Z/cy8D63HtJ3KHH19tChoh9baJbLWi6MVh8OSCNQKywsg8KFKDXGcv\nBE43NTZzBGv3HSAhxuk0gT0N2Ao9T0LoNKBZgqn1HQjPQ0TeaGA7HDoGQoSmJPEnkBb3tPAp1Q/2\nHBS1OA9pkRcDP0YaUgliWqdqH8QRUx3GkOnzKmIgxxhqrDwFGAl7lkyipLANuwppmg1IaM4AWiCy\nG6wGk3TVAznP9On7CfnhbL+Ky7ynQeopCK+P434LrH6zj19B9CYvmTGHuxQl+QAyjBRwMqRWgS8E\nfAjeuHsxr804F3eWi686SeaOiCTSWpQ69gKseWA+ldl1Qz0yTUIWYxiKthxR70WrDBFeJYRqYlAK\n2VsjTMiqouiVduJzvPgaU3Ac/OmU8VZ0sdng9MOJKsgOQMyrjLnsi8C3GfJCEIlBnw27n9eUrGAK\nht2C8b4hxlMEuXf34MlOCZGOgjfLmF4m7c1Zqzj6YN/OEmRiVKl1PjZyio6HSGcGvpEJvMuVMDXo\nXAwDHuh/A/wmrZkQysNIJzy1AjPUzo7dQNRM+gqB50okxY4Bx6H6GOTkGq1lNEPp6xfq77QiRhBC\nUjMK8XvA85654ZA5gwdpMqZrAWuk8ZGn7/s2psRoxqspDY3mOX0aGUkE3J0QzzFRlDhk9UFgIlgm\nC5hiYBhYB4HtYtJ2KfIFTILQTWa/HfoXLjJ/yxHeuVvAGg4hOyl4NqiZjlUMFMjcpFwjCex2xBhW\nGbgcRowsFzGNWebMewyc6hGuFiOzZ6q537h534K8pi48TzsMDnI6iphzNWrjuB3ee2QeFTvrh8ZR\nHgJimp7mxsB3PvCKwrMsBuv3QDv03hYicDSJd6ODfQqseAX4QDKMCmAX2Lno4tph7I4a5r+8jXK3\nkcznI0P5+dMQkL1QubpOXH0mUtkvR0wjnT3XgKTfZPOZVUj1fRFd4EjgCfAmU/jeSUmdOxkRZSZw\nGgz8EXwxcCwozNXcjoJvgrVNvofQcvAchshI6KiC0TlQPgryP49U4j+YZ/nN2umqVp9xao1gcGYJ\ntjHL3jPn6UMmxRzELM9gSNWdDb4WE12qZqiT9SWIAFKmDLsbIXAYffYyFOPyaA9Nn8olc0OU1Jc8\n2CtdaQilCLl3glsPeRlghc3+uxisfMQy50sxlGhWCJwEni26I+cZaXieDMTA/bDmkrlUNtWLIRQg\njWQCYppB8/M4Gk/QiRh9PSSrwDPZVJouAlpNzsap4L4C0VfAdxrSXirRsOdtDNXsFJj/p/NJIihq\nslMmZshnzNvh5myZwkVrBGLgzQaWFWA/jxh3o/YWedoUdp2P/AzLDJxnIiYY1bmS3wX7HWTCdSPG\n3G32NQ08qx167w4R2J2Ueb3frOkafDgOI+6vxz4djt49AntpnGA8pTvvh4FDKodnM6KHtGa3CFa8\nvpgz86qEL/WwQimUH0CGkS4A8zCUDVmD8ioeZ0iDGIUQay+ysZuh7qIRZD/Xq8v/PVK7tqCLTSDk\nG42IrArZ2yV6lrsNdblejVTGLahSst38dCB2hw//Gw6ejwN7wF8E7i6wl4I1C/gjHNoLdQ0wIVdF\nYVYETfV6H13WeKT1jDB7b2QoQrIdYnXgnYJi7vUM1nS4frAmoSqdClQr4DFrdiBtoc/8PmDOaiPH\nsGPW3gbeOYjo9pnzNyLp1QqZ9VF1o1po4+l0lVnjN/uskhMwGQc7ExHcdORLcc0zEuYuhiNCtZC2\n8Q5qSjsRPD3mXB3QvyLAuG+cECGlS/4rUSB+ioF9wqy9AZxZNjS7WI3KQrVmIZ+OyZWI/tzGu8PF\nOmxmbZQylD26x+yrHWlLPYhYehjqcjURrO+A702w00lWxxCzcAxsp5t1AsAhcN8zGqtPZ+QG8LwK\n1i0ID8vNXWTpzmJLfXhnOnBEpeVEoeXcPMJPRfX9kbC6YxThuyD4uyj+zqTWP93ApxGSxz3YOS6x\n2V78sxzYDPlrewm+nYJacFrAGg2+M3V8O437xSidfQ+csaQKLOheGMT9rIfv3J+CDyTDcBBwxyPJ\nkmIwJZw6hoqo0im0QfN+DLJ7e3WZLche7kEqpymG4hBCwIg+z8XIqz1O6iqLIfEkeAoRQlQjFXEj\nsB0S9zj4fcBwsDKEVP1dEDANUpLDPeQddRk5EqIt4CsD6yxItJp6iUokQUaD80uTmTcM+Vd6gZng\nnYgQdIM5Xw5QBt1jM4lP8OAhqfbx8xnyA6SdqT6EGOMZVHH7ySBS7sP7fAL/tUj6LDPwyzbPaDDr\ntQpmHo8rIhwFAxd78VkOHNSkNeLgyTTr1yJm7iBtL4KQOhsxonQB3gnkwxgDXAA9T4AnB4JbUvLp\n7ENMPZ1IB2J2e835Rpm/h12sDjlcrfmaI9p4H7hNEPw0+EIuVp951iQkkVuRcKg164xBUZAxBm+C\n5nmLEKPdBN0NmkOS2gaEjG9sGGI6NZDYCt2bIBQ0TKsIMf1LgPfBuggxl01IewjpzuPn2bglNt7H\nHJzrwfoDsBzCG6LCx07hyKjOLlpCheSt7KFnDXR8vYCs/gisg1Q2eJMutIHX74hWKsHZAT2dENwP\n1nJzz9vB/jgKO5eZzmUPAxPBKbF4uWECM0LN+EpTrHgI+EAyjHKUMrxTREkRQupcRPQ2uuiTEHH0\nIARtQSr0LERsSSTJ5iMk7kOXHmeo3dxPkdrcYdbaBp7FiIBNRShAfDM4JyCYLn13EYHUQyCKGNof\nwX7P5dARtX2PO5Cdo/14ShDz6UMM6ziqhhyOiK2HoVTvAvPPi2ziifp7cFqcwJEkdiXUXFBC7qt9\n2nMKSWPXnKEfOATdr5uJ4U0Jgk5CYeflBoZhFMFoQtEQEIHXMBQebdBz99wwgRULvsGSke8SbEhi\nt8qzTgglF23WXFCGMeh8JYIQuRCiS228ra6emw/JuTahxS72enP+6YipbEME3mxgYjSm2Ce9pFwP\n3qSDlY/Mt/fEiO0DkD0DgreCOxusauh/H+xtYJ9s9lRn7roMORjPg/gf1A+EKNI4exgyf2ogtAg4\nBnaFOaspGHQaofEI7O2BsbkK61rDGMpgLTTw7TT3spPBjFAWgAcXz3YHKwipMgt7L3LQewzsc5EJ\nMwM8FQ7BojjB5ZD1TkT43S5fRGqujb3HFa43GXxaCsFaSP3exu42iVxexAi3oFSADsS8d4Ptg4lu\nOxyHZJfN3W+48IFkGJXIfp+JCKwGGAD3IFinIBMiwmAqdbqNPguh55tB2k/KITxiAGsdYjb7UQhu\nO1jpmHolUs/SyWFjEIPJQJw534T+KoET4Gk2dnclkupfg5ZIPuH6ATGW2Qjxa6FwHLTXQPlSVHrn\nQRmrSxhMNOPf0YVGtTeGMZiXEW3x4j3u6L0JSGuYKphwHBgOuVbfUBl5wqyZb87SBcQgGDTrX4Yk\nTDqidBYkSiw8a/U58vQe2QzlQ/QjJroHSo60MW3cHn4x71oWzdioIr+bETM9ARmzwD1qIjvdDFaT\nckyw8u5yxXxiwCGwcYdyfIsQEfuQbyldXeuY92aCp8/FeyCle+xEpk2NgfmTKGKQC+y2sJ4CfydE\n96k9nafW4FA10jou1vp970HtWhhmG7xINyPqRAzrsMGzRhTG7AEKoGsbFBXDsBgEcvTZ3u0QqFJy\nWCCEGNQ4s6cW6I+qpAAb2IVmk9hgPyv4MQ+Znx9jqHrZgcBrce1nksG7E9DxKIS6wF7s6q7fRtGZ\no6jJ0khwbnJJ7FByF3vNnZdB/3kB/LtTgnGtgX0xsB7szS4rVN7+AWQYWeggB5EUSyGnVVpKlzNU\n+WlyAtJ1r4GGJFkvDKg/YS+SHlHkrCoHJwxWBUTmB/A9nxqaDF6nxCz7PCTd01GAFj17YKdpaFuH\nAD4WwusHhITpbMXDiOn0Q+69yMm1CRH5HO2BVnAmQf0lBXSdlkNOc5+IYwdCjtngLXekOuebvVfp\nfafUwoqBe9jSGIL3gUPg5JvQqRfF9o8YmJQjQt3NUHjWAzwlBoiNkHMCsB5SjSbc+CLSWMKCc6rV\n5vBVo7io+Q2eG7Mc5yMOxSvbRcD1OrPVgRjIpzWty/uqgW01Qvj1yLRaZ+CR9lM1C5Y06Sxs1fwQ\n79nmb8eBInB3gJVl9uzqfsjWusl3FUWx9qI9nZCvpbcKQnO0B6fWRJ9W6TO+BITC4F9sTIosA5tC\niD5hiC0fNdKpQ/6zcgjloKpeBzo6IONzEKiEvg2m29rpBs4zDC5YJsQeRlqvhZh/PxIIywwMu5DD\nfhyDfV7wobwMW9PQnEbI/DmDfVbdq1HuThUypUYILnYXePMZbNfIJ3UHXsvR9HcjhJwZlhoVTYTE\nPA93r/ygahjlCBkiDOX3p51nYfP7bsQ9092s0iElU9brtKMU6EZI1YFdpO9ZcWAC+N41UZDR+jwx\n85kGJFnTCVM9QK8J7w4wVPOQLoIy3uhBBFnMYK9I5pm9taLEoSp9xs2FnGcj5MQNszC5HYOmRQbK\nD7kyk5AVF6FFoKMih+DhGNGzvfgOOJIsCeV/cBRqvlBE7rZ+Ic4OczYXSeK0ibEcMaFMc84M7an1\nTfB4wDeJoc5cV4Fz3MITdSl7oxnf2iTNy4cxvW0f/blhus7IIlQRx/YaaTdccPO2G79ElTmXjcKL\njSiyMwlpY52Q2AmeUw0sl+kcVq1MCiZCfLIPb5EjtX8iOEFLvSq6EYOeKbMh8SJinhFw+qQxhPMg\nukuDkPv6wR8FeyE4h8CTDf4ys7dFyClbrbGK/m8jZpWJiP9Vgw/HkBN1vnApNBllAu+C0GID113o\n7COQsEnnqGwE8tV30wqbCOA8s14BEo5NyOG+DDGQ48KluregpwVCMVNnVAX0yRwiB6yVgiVdCuF7\nTBAgfpGP1FfBW+3SXpZHOD4g3DQtDizH0NIksMa63KU68g8gw5iDAFmCIgc96GBnIKQbiy5iFpLa\njUi160MEElYCE37AMYwgnyHbuBsR+BHoWQcBF0l0U4vCaKQx7IdoHXjHIKINSgtp321a67Wb74xC\njCHtwFxr3j8C7Ia2O7LJeCOmkYPXm8rIuNlvIWI0+1GJ/tuIGXXQxXxqAAAgAElEQVTBluUzIC9F\nbn2fpNzJCRIePyESuMUW1lFwL5RDzskEa7hFcH8c+oz/pxypujlI20iHUyMGFmnH36kQ9miGCgUM\nVtX2l4YIVCSUlDRC+8rqiJAb6SNSESSrKUrL4hxy3oxw5I4Khj3aLf9HDWLmR81z4uYOQURXiULF\nPnWpYoe5b1vntrMYrOXw7He0/xygHqwD8FbRGMZ0d+p+bcHQ0wP9e+UM9ReYRLOPgXcrdLUpv8I/\nBTX4uTqAvy2lKtE+RMynCjb2MHDWGdhlmvupNPeTRFRxEAko4ysb2Ar+0xly1JcC6yFxqRe3wsXe\nYPDuCrBeUxVs3ybwL0BaqCV4R7eDJ2pyPOIQeR5850DwMhg2Gnzp7NfJ2nPiFTXusWZA4qhyb4IH\nTXIaYD/vkDjfxvcbaLsqD/eghb8+gZVwFWatRFrgDpmTK7YCH0iGcTowGRo+NZzYQh8ZjVFGPXsz\nX5i/WVx3HUMRgRp0sRUIOQcYSiN2kKQPMNhJiSxwD5uISC8EMtGFXYs0gQkMMZUW8N6InIN+oAHs\nsyE8HV10O3JIDiAObyGpn/apjALGQ8YDMRFiQAjJCEQQaYdlOuvPa/a+G5gPu+ZMocKtI+sXA7hX\ngWeNRaApyeFRYyjs7VAhmRfYJzNr34SxlD7RKk1qqVlzr4HRQWAtJH4h6Tpo7tQgBM81e57C4OBn\nf2lSZ2llMLITfnMALoWM4zE8h1LkvD2AtQPye7sHi7msKvOddK6FzWBRl3MARTHSaeppzS3dJOEw\nCvu9qdR7y0WMOIjMmmoYvawTy8//a++8o+uq7nz/OefcrqteLMtNtuXewQUMtjEdAgQCIdSBEJIw\nhJcypJAyEzyTZLLey0xCMm8CIXUYwpAAIfSObQw24N4tF8mWZBWrt6tbz/vju889kMkra5KAeUt7\nLa0rXd17zj57//av/76/fP4Ac4FhCFdAsA/sSmNCNqPO9TkI3IgoegeEQlmSD0LAKxU4D2FYPKkM\nSGsM8lscBPcVhW/5EDIpvCTA1Shs70DwiEkU60UMeqfed9bmsMOik95nYOBRCMfAmQ+hv8IHJj4K\n2fUQ+iG0X1dKvHEEjkLwVOBlcJb5c+d2s6bDhrkcE/075wFpcHdC7lqH4HiXxEaIZ12sDojPGCDm\nJMlNtrFTrtauFDFrS0djzTa98F8c7x/DmA2UQeHjQ8SeG4FB+HzbmzAHcntQSncdIjRDeJntMNwh\nPEXrBJIIJqkG9Jlck4jBqkaE+hX8/IenEKM4CKlvBHE256TRPIg4cTliGl34XciOIanimSVJ8zof\nP8v0GFLHw0ii2cguPWT+7kYb14SIdzYijLdg5r8cpnCT/CTHPlJN6esDUA4VB3r0bEcQkdRaWGmo\naT6hOdagiMNtgAO/7pvHvOs6oBac45rz3x1czU3PX8H3m07nCxM3SfuJmXqFoHnOWvKYEixE9v8t\nwCbo/QxEAwi4twA1V15rnNJjzHptQ5pNhblm3PiFysz/is3nRsx62GY9x2rvrFXkC+eyb5oy93Pg\nV99ayMLSNjHDMeS1EbpEG9kWSKcg2QbhFtFA6j9QevVhlEqdlGSmCjH2vXBwB5SvNHNYZ+ZwsZnr\nccTc08ik2okYRBNYHl5IjaE1r/Q+gcyMKyCyA2IOjKQhFBKdccDQ336w24DnIX5gRBrgXMRMLkV/\nzzb0NRdpZ3VmnSJIULYi1LnTYPA7QcJPZQmVKZnQGgP22cA9YD3p6rknIvp+y9D1CKxROPsDyDAu\nRtJkLNAE1268ko82Xs1v3pzDysJjVPQOYWUN5w+joqMxEBpGmXkeZoQXqjI5F1YZSmJ6A22m5zx9\ngrzK6J4OTekaSh/oF5FfKa7duVZFaoEh3Y8TiNDbEQpIASLaZcjmnYyfHzKMGFhMzzSyIkigP6f/\n9yDpajAMaDXXOorQQyqAIijZM6jU63Z8iLkBpE4vBWsPYhLnmnlUIIdrC8wLdMDTkH3YpH4Xwone\nAs6tPcJ5k46wO1rF3OYONroTmRju03O/008QNb/3kncIR8Yh7WoTcAiybWBvRsxzA341ZMys8QmU\nnLUVv2iwwKx7G7gjZn9GzLPFIXOXhd0IdCJk8m6gHxaWt2lvveKuEGJstZDdBc5yCNVC+CryKdnZ\n7TDUDcM5CI4D52zEmGuRZlcD5bPxCxaP4ieN9Zk9bsOv5r0fgSBtgkyjKUycgxhgr6HBVcikeQ04\nS76mUDXSYgEWgvsx1I/Fc3YuwEdMmwgcATdrHLZvQe5siz3nT6Oqs1vfaYX02zDQBJEaYBGEE1lS\n84O4r+awdkPypiCBX+XgDLCKkbltISFpfEl0wprDwAeSYVQj6J0GYBiuCu3j7qJ1fGb524w5bwi7\nQo6j7p8VEC1I485VXJ45SH1tRA5SU95LTDkUVhbcOuQZngb8B7hekk1W97NaoLSxXwd4GBiQ3dzd\nAgWdBkvANZ83VbW8AKlvBXCaciJ4L4kqZuaTQ6rsTGAb/Mdv5zJ/c7vfT9VCdv4p+PCDxxEAjpey\nHoa+R8McqyimvD4B0+Hef17M4uRx4WIuRwTnAe2ga/3D4ys564mbuXvVOtUSDOh6cwpPsLahlk+t\nvYSVY48x9ceDvHZ4PKf+8FPcvXCdTK4F6JBUo0Mf1fxx8XFCvazSXuGQ2CFINkCgHGVB7gP3sDEt\nmpH2lUFahhcBm2gc1GGULxEABsE+hKR2g1mfSdoTt9uE3Cei9TaRmtwh1b8wG2ksnVqTxGsKbRYV\nQDYJ0U/jVztP1O+5o2Adgf5HIP088LSFk0OC60NIaxhGmkSD5pn5GTCkIrg8uno70gTm4WeVYua+\nHxhnzKVKYKHWJTvJwj6BslsHDb1MM/QyC6zXEdPqB6sfql7q9te+EBIXRLB7M6oT6gF+D85zOXIV\nykAOHs35uUr10PvdGJH70lrTDrMGg7BmP/BBZBjbb32ca/b/hzizF94rQZtxCjoYxyBakCZ9gYPz\nugsHYHgrBGNIbRsAUjB0SJiMViXqt/k8ZLMmfNiIgGXjiLGsRmribvx09ApgFhS4MNwG4V6wliDi\n7yEvOZ2ncu8G2G0mH2Hhchi8OUjoxRy0wPyx7dKe0vgYEIeQOXMcHRgvKS2MtIhZEOnPUp5N0H9d\nlPBXMyyecFzfjYF7DgK7DSDpNgQkYNW0o9y9YJ3WsFo/dzx8MReff5ClLS383eXrWVrYQsxOUvpi\ngn8/Pp8v176hgzgHMV0XHZgYUqVLgRb41b4FjGtsp2BITmbbOFUDIA3lDHDLwB5AB20OoqoSc92k\nWfcpwFLjW3oLP1Q9AO5DCCUriNTwmPHbDCJi30o+zd8aMXti4/uJ9kJ3O2TTEClXKNUq0PuMNWv7\nPMLyHAvhj0PoAnDeBPogc56Dvc5EgQYRAxgnOrEvMJEGE3mjw+zbW+a1zXzWFBYCMBGCXpTN0b3t\nEcSUGs31JyFhFAW+h7SUZj0jrYihRMkDSoe2ZghdhZjwMNLyxgtVy/I+24/MqFkQ6U/7kbIYwiYp\ngzXPAu8h4tafbTxecDk0QWaqo6jBbnz8hkfQQQ4Dz4J7ZlbEmYLYDeYCnvNzPAwPoMWpQtJxOThf\n1Of5AiLCXah+4g4UXjOIWp65QzsEuqFkOljX4xcwHYLMZpS3UKxrM4h8FtX4GY8WxO9JiziDsOCB\n2/LYDBQCe2GYoAitwsxhpflunXneKOSmQu4tiC5I6B6dZp5vgnUjVH7+Syz/zif0eVMn4z4DbIfc\nv6PDfgz+5YZnVCS2l7zGUHDT19jZXk3n5f9Dzx+Gnm/Brof0HSLAAcjYiCFPhZsu3kHlp5HkGosO\n6ASz/hmgB4bXm/Uv0Pd5AYHUOih8mELmy78ZR3SNnim300DYtcKJg/iI3nPxU/ZNEhudMLIL3DAS\nKHEzH7O+Y86A6rMgZLJ8M68gRl+BDugdQB8M1kVEa0cQ0lcfyieZhxh5MTI19yEGUgmcBkPfiMq8\nWY0O891mrU9o7alAJtMiQ09TRQe0mj0MgvsgPu5GP0qMuxu4FNw5lpi256C28NsnOkhDeAEKbv+a\nQr7XIfpfbPbkMPmkvvOevjEPpJ0qCsgf41VC/4nD+tMv8V8arnsTdMbKWX78WepPXSqR1YeI5nFE\nZF4NBPj+iEK0AePlYR88DIUXIYIvN0Cq5WjRdyHVNYUP0mpi7bkE2FF9L5MUPoQdQFJkHJIW/Sg0\ntVrX5gja7NPQYalGG1OK5h9Em7vUfC8DHfsKqDpvSAf3AgSL3IKQtF5HhFCK0M6HUCTnm/jEWwLZ\nJshFIbgQWA5uLVg7EDEehtZ1UH2poih06zkHeyG+wsxrt3murAqW7DS+VIzho35NQgf+GCL4RXD4\nH2ByMeoH0w3MNIVYK5AvZ4JZ19eRb6URv6PYG7p2bhfYOfwm0P2QalU38kQ/FJZprzMdUPA15Iw0\nzt60I38EmGd4FR1uLykthY8IdpZZt3pE2RMNTVWY/SpB0Zknze9TkH/GgyasRlpByDzLjyG7xMZd\naBH4WVb3L4DMVgjUag5D2yBaAvbVZo5ZpHXsM7Q3AyXf1cHg30O8DkVZlqLQPEAldF9USFliQILJ\nwCLwJhIaG5BjtBda74ex95q9b9e6MRU4BOlzHIJ7sjAALzw8lfPHHBbD84obLwBrJfAnnPv3z4dx\nM8ROT/DfDt0vrhtHhNoPl9/xMNcOfIOvv/kznOU5bWIYP7Q5CzgAVsSk6YIwDFJmQUzWJ+W6Zma/\nAWapRESxFAG29gCT5Uy1PHSiyeRxI4YfgOBsBE3vEWcVOjhH0OGw0KEb4t31EbXQt7CAE+1RfvXo\nApYvaNb/GiHTBg/tncekVB+RV7KSXLfClO9/jlumbuPxipnMvfSEJOleGAxALALpesXhrX4kfVK6\nf3S8KaSbg6TdEITmwatdtUzO9voQgKVgDQBl8KOupSw7tcXPtvVs4yKgDnKvKAGubKGiIzRArhSV\nlR8B6yNo314D3laXcN5Wuz8sdGCWI0Dd8/ATnM4EToXUbki0Q8Us5cAExqtCdvBltQ5kjJ4vc9j4\nSi7Br5SNm308DENNRquYQj4E73aDZQrB6FEjZrvf0FAbOtSbTQjUE0Kr8YvnirXunAZW2MU54Yo2\ndmtObhvYC6C7EcIHYetOiOyBaJmAfbq3QdQxNHVMtMlB0w+mCnJzLLY1LWBsZXu+hUN0S0rz2oYY\n4TmIkRea5zoIrIBCTwO/Ar96eYP2wRlwRYMdMHVRjzRXwwxTn7BxnnJZ8wrwQfRh3O3Z9RlECOOA\nQWi+soZxVivXBV6mbs9B7OOun6w1D9p/UkJ8ywiZAzDQDpHV5Lt70Yfa9Fn4/Tt6kU2cQBtyM7Lz\n2shD+HlNhd20YSRR4AikDhrfyCBSfT0n6SJgNXTdBbFyxIgSaLN2m+t1Q+REmoqhYZanm6UumnJ6\newGMu7+D0kVZEb/JEP3c+DcJ78tSNX+YWEGa2+/5EJfUHCR8LXAOOHOR1JoAg7+F0Cy9b4Ou3wQL\nn72N236zGfeXMPl4L1TBhVtv4IZZO8XgmoEhWFbTAi3Q0llIUUWK5FMQGIsYhiN/UPZVsMfpWVik\nPcj+zhTZjUMO3TO1JuHjwkQNjdezZMabiEoS2AbDOyDohck7lIIfOw8yDqS2Cu8iuBSiQ0CBgGzd\nIoESZbvA3oEOTzFSrZOQ+GSQ2M6cmEtEewgmpO7oWUZ2QtBCGZMR8g2kOl6EsrFIpa8xNDEGqfZj\nEYMCct02dr+rv58WndmtwCpVsQamQXUVcEiJZPYCJUiFQkbbrUc5IBFwr9W6DtqFZC8PUJbuwY1a\norlW4AE49NBEyh7rU8TmZbMfg/hCqQNpP78ydN4HnAG5w6gqOo3fYqLWXKMFnLQLGVjzMvBBZBjf\nHDRSezw6ZGcCJVD0mwGmHzvE9McOYRe7sovbyGMNxLePQIMOSeQidEir9F2ryFwvZD5v4vOWhxl5\nClK5Xcg+b0yQ8eggfdrkdnShmpB9EBqDtJVqoAHcjdJqaNLnYh9DUnk6YnoWfhfwUvLZpP+0+3SW\nR5q1ybcCgxALopBcNdr0/YhxvAQFBWmsLJw/4wjOZFeds2aZewzqmUMOkITmYBFFh5MyJ1bAbZM2\ns+lGmHA+ItTlcOMjV3D3besk7QrIRyjc3VBUnoIG03l9CZKs4zUvO23Wdlift0JgD0KmD9KlEAgj\n6RkHJkCoibz9bRfBmGe/yJcWvwFZCGbMvS9AqvhWrZEdhMCpiOG9jUy14+AegIgxIw4f0eG2AuTt\n8WO3VFPx637d72pkGibN+gzCSAsEJijj0nLMOk8x938FYknjLDyM1qUK8qjuy5AvAbDTrtbDK3JM\nI8YfgKNfrqJk/xD2TAjdAPalisAFxyNA64sRo/0VisQlgcsgvDVFWbpHRWp7wF1pYa3Vfcsm9Imp\n3os03SNaW25A5kqDmdstkLzWkkZ3KtTcfSdfrNvo+33+0Xzeq9map3mv+Q3wF+x89pcarrsMrDe/\nmX/jsy/38U91PyRwd04MpBy/Wc0xyIVNUk7YNHeZDbwJmVYITEZPEkHScCE6FGnEkbvJp5ATw+9K\n1WCuvwExhplIpb8ZLfou8/4YRExV5h6F6IBXmu97WBBt+HCBBcb+TpjPzgSehUwv2J+0YLOLfaqZ\nZxPa1BKzGI65n6lUrJ9bzvQaFYK5yEeTmWth1bp0Ti2h6cIYZX+TYMobPSx59JP8eNLTLC47zuZE\nDUue/CQAc4In2Fn2r9grULLX7ZDqgtBYc59JMLQVCuYAn4K+G0wT3znAc3Dugb/ipc/9m9aqxaz3\nKmR6eNABnUiqfcysXYt5Fi+X5Qp8Z7Ln/J2OEudK8TvDpeDQSzB5ITiF2resBZwwWtZq8gV1b181\njyUP7VIVZ1T+lYFOCaNEIVROh84tUDkLMaUkWsRG7VEeiHiG7stUZBZcj5iHRxvFyDSwkA9rJwof\nH9TeZqM2zps5YWVsAQYgew4438PPst2CfBc7DI2uBh6H4TsixL4xQqIRwofAfh26LoOue6Yw/R+P\nSMjEgTdh+FmIVcCuo1XMO7eD3NUKc7MXYbk8BP19UFxmurgfRoKyAYVsHwI+iD6MNS0+s/jep17g\n72sfwd7iauMOo808jLhsBBKNEDgTrFpwwpArVLm142FHpvGLfFxkkrQjqdKLD6s/xXw2iZxjReb3\nKvOZcZB6QpIJgDrofR4iZ2gerx+fwMRz+0VEH0WScgA1iZyNgFRmAWFw9iPH37kmYTUM9kfA6jAm\n0kz8wxSB/l1hwqVZmQ1TgX645/Ayvr/udP5q/g5oNep2pVKj7bUQd0aITshQ0zQA/RBfmubCn91A\ne2ucT++4FIDkN77FsvIWTvQWMNYaFI5GTQS3PYOTA9tI7ZCnifVBpFJ7MPx76D8AV3bvoODj6KBf\nhA7PHvPqIhCfV42Z9AywXyHq4AzEDD08Dg8wpwpJ7kNIOEwye34CEvsNYuIUyN1lYV0tMyC3xzhf\nC4WSnquzGHOiC+dlE+4uh8wuiE2CUACOt8phXJ+GwVaozAE5SDXC8TaI2gY39FzE+OJm3VvRAStC\nh60dX5PKIWdkKzr0rt7LnG/j9LmipaT21T6KNJ5x+P6zJLjTobOuXIVizRAsykCd6IOk9jg2D8r/\ntkc0vQeZ0zXGrGuCMVOGBPqTNnOfor2zD0J4svxCIzcGCERMnU4aOAhrjgAfRJMk34y5bhzP/OBe\nshNsnAYXCiF5QBgHVhxtUgEEQyh5qROwhbdpV5u4/BTEMz1YOg9tqxgxi49A1y3FxF5Kksug8t+j\nplfQCXTID5CHwcsel3liTQGyiu17zZYm2v2SPFUoitKtvp1uMdgfhlytUXWfR0Q2FRHDPkSAryLJ\newkknoFX+qZSN60HpkG4Netja7bAiz1TuG7ybiaN7aN2uFfPFAQSMFIdJLA9B69Dy/ml3PaLi/no\npL2s/P7HGUkFqJgwzMHVP+Lui9bhNLuMGzvAxZuvp7JgmNmFnVgvZ4idqSpQupD5ss+sW4fuwTUQ\nPArRSigwuKsUQfq34ASAFdB9XOnj3GD8FxuRVjJTpfQBS/uQW2ZU8tfQ4cmhDahH6nIPYhyDwAwo\nvAo4BxKFYYLrs2QeMgl1DrBaGaP2MXA25eRv2gaJJhhMQDgjf0pJHFwHxgSgPQ0VReCkNPd42HTZ\nOxMxsCKzxyvM/HuRIOgWbWWvA/snSFOYaV679ZmmuhrK7u1XVKYKRfk8Z3gdMrVayFfwui0W8WPD\nWoe1SFP5PhCBzOU2zgGXTD1kCsCp0Z67hZC8HwKeuduAGG4n0tI2aG2ssWAb+gxMz4kGS5DgGvOn\n15K8b3kY3nhm669xBlyGxgV566Z5pGcL1PXYTqTeXoQ2zktwMll4TkYOpPaXSrTJUxAR7gUaJRXz\n+AsulD/bp8KwKuB+cCeY5CMvW/MSdCAsSUn7JnR4dqENakZScK+ZgwGpZSo454PzaQRSYoO7B2kb\nZeazcWQG2NBZHlMSTVYH7YK5h0V4x8mDAtMLdMN5oSOQg1WxRt+H0QG0QuSHaR24OqjbcoIfdD0P\n9bDn2/8KwHP1dRQ9fhdMhdwLWost5fdx5ex9sFwFea5XQBZWOjJR87cX0u4FrgLrvyFNyBQDBqfr\n2d2fQ3wP9AfC+v8m/ErZHoiUItV9D0KdehZpgAXoXo7mn2/xuM1cv4B8wlPsJ0mwDP5pK6oeXY+Y\n2xjyKFqhCohXQnmBkqRiJSrlL/0wFFfBKaUQHIbO45AZBsdCSPRrtRd0med7Apk3c5CGG4ThO0PY\new2NVCHCMdgsnAVVXz5O327EZB80dHIB8k21ogStK/R87iSw466e32CjsAu4GlKftQg+LCEw/K0I\n9tdF19l+sPZDZBK+VnMFDB8K+o3Ix2ud81GW8ailWI+5/mRd608d76uGUVYxwv0zHoQIpEocJg20\n01sVp+BEitgXAjgdOS3GUeQrGERMxHjiqYP01SNEM8iv8BaS6Mch1G4kvQde8oq5xgGgXink/QMQ\nLkBEfQi1HHwaHxcSJCkq4I1HT2HC/2yVNIihrL0t+P04C1DarwW5y2DjKYuZ+MPjdB5TPxN2ANUQ\nOy2ta3tFbZ59vAsxhWLIbkL9ML3agwBimm3m76D5nilGohqcIYfephiJRod7Gk5jcqSXz1zxNvc9\nt5irntrHxfdfzxkLmyjtG2HZr27lk/dsVen8VCVTWW8jxuZhdViQ2wLub8FqgGwF2BOAKdD3JERm\nKWzoTIJwYVZmiGF2uaNGO7TAdU0Grpc6fyZK1BuH/EULzL5dTx4ZzV1rHJxGO+Ft891udAh3Iobc\niQTJPmhtgsJZYAXBulqOTieCitW65Ky2yiG2UkwdC1q+UEn6x8PElqHIyH5It4Iz2zzLuVrvoJUl\nG3CwUq7qeSDfAJxGCNwprFF+idpOzkbMphflp6TIdya2HsTvnLYWOh82TZlccMYYOpoP4W0ZEgsj\nhHoz2FNg748h1iUwIJ7ScwczOZp/A0WdomniumdmGmJw45AD10Xad+YD3GYAzqIwnORL57wBMQh3\nZHHHuGBZBOJZAnYujyMwdGcUe0MG96CJbBjwGbYYddiTzBGkAfSZGHgVOlg5dNCiQKkKzawm2Xp8\nGR3WJDJlPDi9NqQq28AKGP+TVgbuiBJuzyjx5wUkvU8HaxhJSeNYs7ogVj1EbCBJrBYGJhcQbk5r\no2O8G916OXrOK5EZc7bBivDqUwZh+BGTanyGeY7j8MDQfIpDSUpGRiAHn9hzKTf8zQ4G5oXp2hlj\n7X2/pOzoCLfPext2w/XBXZSmR+j5UDGrf7+RqhV6TmsGPiT/EGKWBsDF+jiCmlsC9pvQ+SrEWsCN\nQbAVHf6DZl3Tmmv2FLC3gjVXc7U88yaApHc3OjCbEcMrRlS4nnwyknUZZDdAqs+0FxgEjkH6GGp4\n1QnsgNRmIKuq1OFOKEhB0jUl7VPMPbsQQzdoW+4ByJVDugNKdw8TWQBWKWKUK6S5MqTnp9isxwbI\nLHVwrsqp+5zn3/DS3gOI2X0M2AmZIQfbcXEnGaF11HzGC/+uQ5pFOcTuRL6i4ijBX2S0BjO0TqEf\nZ/Kh+so16v/roeP/U/h0SFvMifdL62rQ/JmhSBa3ICFjcmg4AJwOax4APqgMI5e1+fopr+UzDu0B\nsNotAg05dpw1ne4FZVQmuhmeG8K52CX4Vg7aIT0A7AX7i+Zqrcg5NYA2EMhmYHCvNAj3EORsY399\nHobOCxOabRKmbKTWhpHX2lSG0oBs2jCCpc+hvhGTEAE1mDBaGIZPDxFsz4oZ7AWrBmLNSW1SBMLj\n02w6Np7x6f58IVS+8bIXKi1EpoqX9DSRPOxecJWZ4+XkiXTBqe2ULBnRYSyCK67cDweguCTJFan9\nEIcxK4Zku3rI6oUQbU1SNREdWtf8eElxoNqKRTb26y6Pp2Yy5WAnThjogNiFwAgEbwbqdfisyegw\nfNgkWR2GRJuBOrSQSjwVHZqlkH0Ocv1mL/rN8y8we7dQa00b2DEgCHYnMgVKdU+7Gvl5BmBkBOxe\n6OqF0onqPRuohGyfKZMvRZpczsyxX4LETqjbWyCqJLjsDrCXo0MfgEwGgQsfQ4IpA9Y9OewxkDno\nYJe52uvbELM9YvbQVObah11F9i5QeNlDZmcQMaMSYBF0n19EdEOS9uVlxJaO0N9fSLQwSeZ+k2hY\nizTaFw09bjM08BLMHX+CG7dcQWNxKauWH8Xe42q9t5h13K25vHnxqRSMSxBtHoHtH2AAHTiLonCS\nL3xmE06Jm3cqOtuViFO9pYvKUDfJkgDx15PUl0ym0umBnZBuVkIVUUT49cjsuAE14hkPdgWEK1Hx\nWR3KOPwspNMO0ZG0iNWzg8cANTDyGATqkJYxA6l409Am34s4eANCbboeOA4jHwpA3CLYpZTc3CmW\n4v5rkRRdBMmPhKjd2SPGaA4EJUiqBZEUCyLCLkCE/iKS2s7ys0sAABf1SURBVKWI0ALw6Qcu4dIV\n9ZJSBUARtD0ZJ16Xkpk2H0nF4/o9OxbsZuAYDH47SmhSRmbTR5BK3YkkVi9+dW4Y7IMufAhmdnXi\neJmQ48Adhlwa9fScDVufh5ppiFk/i3A2LAiWIo7gVb96zz0O7GKTDOZVBJei1okJRI29Zv07wGo0\n7xcDCbBnAhuUaWlVQOYopJJQGDXZnmOAVqWhJzZC0Cu+mgpuDtp2QeEk6D0IcYP+lUuiZ7wMaSWD\nYL+KtBIP/CdunOtbwK2xsEtc3eu3hu5ss44XAtXgNoH1CWmeqVkQ8FLuCyF3tUVyZojA9izRDUko\ngFhZguCLOaJPJaEG7OsQE5oNiSscgqWucC2qtfZ0QHhvllsnbGN/qJKl85vVy6ZVNEEPiilshfGl\nrUQrRrTWzbBGyW0fTIYxkg3w93+3FtbB8BkR9k6ZQsXePlrnVlBUO8QzM1YzK3mE/ulRikr7CEzO\nYT+iJj0tD4yhf24xRb8egB5ov72cE9eVUBoaxNqC7LeJSBJOsLAPAyFwNrvwU6DMlMN7zsbDEJiI\nr628hNTnV5DaPRmZEXvIt7ijDwI7cgSrsrL1r4JknUPgXhcuhr6/DRP+TJbAwaxfifgJaJ9bRjyb\ngF0waIUITsqS+w7YNwD3QPZ+I+Fmm2eYAeyES0vqFdKLQmJfgODuHPFVKb+LuzHhSr59F399zdtE\nt4qJsQI2fXkcoUuDhCtTYsqtiBHOMc8YQubOavy09zOQ6rwTJR51gj1XfgJ6oGYeItAtiAFX4Tsw\nP4QY41akEYzHx0V9xaxfGwLm+b15xn6zb60IjzKhZ3W3oH6xzcAtYH0IaIFgFsLVxuG8B+VHxLXO\nwXH4OBfLwHodCpdCrgeiIcSIe1GLiynoMP4eBn8BodOQ/2IzUvcPI5ySK8B+wdV9nkJhdS9Efzli\n/M3G//KIIjmB+7SuXRcWE3sxiVUPgZdNNKwNOGoSy5rBrbRkSs8GN25h9UHwUVfaXxcSMjtQrkeJ\nnnXJ3Bb5iLy9axHNcw2Kwjyq/6WuDuK8kGPNLuCDyjDA4u4t66RyZlzGOp04u3MUTh2iryTKTmc+\nM548ROSJJLm7s+qaPgvYC0X/NkTRzgFFDSyIb0lQemJQjqdefJyHU8BahqTvVrSw8zUJywDXkMF3\nrnpe/n5U+LMEScc0qqJcgDYijrL45iME6yZU27AgQiSWwa20iBzM6HBNQUQ1oNfApAyBrhw8ASEn\ni+Ui0JtXUSx9KTp8ZchXEkcHygsDzoYXW6YybXp3HsBmZHKYQHkWjsBdZ27AmaXCKecNFzbD1S0f\n5ePnbqega0TPtV/l8s8/X0fd8m5pFwlzr8vB7UVpzca2z/dJ3YHs4y5wb0DI1kNgWWZ+VWbdS/HL\n+MciCdej5xnZK23E8gr2xpvvnIEYxmKzBxOBauMPWYAO2cWIoW0yaxLAxws16FbD7RC8gby5lnoe\nHFMOb0WhoR4Kh8Ceh58PkgaahPPhNIN9CzpsXZC7FNJPmFDyON07twesjeCeDbmpNvZuV4yzDLIJ\nG/c0C7vGZXhuhGAgQ6w7CS3QfmMJ8aYR3W8V0hb3QPKTQQK5rBy8F4H1Mn6a9wB+qLsG9n5+KpU/\n7eFlZwpTWnpk4qL5E0ca2mRD17sRCtt3cjAN1rwFfHAZBuS+W8z4jyQocfpwHoPMaoeBjgJCbVlS\nU23SCy3KrAHCZyHi+h1+n5I2pC4PgNtnHGyeZ73L/DTh2+qtyPbMIcKfhMySRYhZjAPC0PiTMZQk\nh3SIPJXa83wXIxMB4AT0rIwTLUiJ8VgQeSVDepmDM5JThucEtNHV5BskB14z2azzEFNwzbybFVVI\nPgWBHnRgvNT3ciRF34DjMwrpr41S6/SIse0BJ5Fl6F8g89MwibPCxA6n2LRmAhMLhK4VTOc4reWY\nmF83Qu6eAHWZbj1PAmkVMfjOuhWsnHfMD/e2Aj82z5xCMf/ZYB2CXDO8tG4idRP7xFybUOf1bwVx\nHsoxuFs9RDhg1jsCdrcYjBXE789agKIm2/BRvDws0G4kKB41n1li9gIztxr85LtxEDyhtfQ66Dkz\nob0cQjuEdZo9CuFCA4ozgITFU5DdKaaQzci/wSDCV3kLdbQ7YPajCwaPwmC70XCecLWuRcg0G+ti\nb1YSV7AqI5pxtYfxp0c0T48uDgArITA2R24JggLcb2jdJp/92/SjCooPDMMyqHyrB/pgymCPtN7p\nkHsULBPV8Rpz02Lg+7ag7OUtsOYA8EFmGOsfG8uCCW3MXtxJ8+pKypIDdEwvJZxMU3voOLHhDOFQ\nWkTTBn/9t99m8305ziptlHoLkFD2XmAJ9D0cJdKQEWeuQwTlSSsvN/9WxNkttALTEBG+AJwGiWUh\nChMjeaxJpqHDdBqMXBAkMC6Xbz8QrUpJmpp8AMaB0+7qYP0jkoKtmiMHzVz2ICl6KTIxyvERxF4F\nJ4QwGTciyZpC2lEjcCcUvpaiNtvjd9OaIXs/tFrd0MN9adgEE1f0MbQ4Sqg+w8Jz2/Q8HsrWs9C+\nMc5AIkRhLCUGFoGfdJzK58s3CaujAJkqBei7W1FeTD80xYsoLk9iL4Ff/3Y2q65vJvsMQtAqhuQn\nbIIv5Bg+AX2tEL8RSckFYE1CBX2LEMPwHL1F+PgSIcRI9qG9H0aHp948w0zknF6HchzON3Ncaw5J\nMVLLq7Tn8VJwFgEtqpsJeficXup6kRioc4EicT2PqMI1EEYCpgkxvCxQCeE6iE2TqWSZilOGUS3R\nZmAVjNwnjBVeFu26t6CwrEHMYjainRnIhOkBt8pS1K0GmW61QBkUrxuW83iDodWF5nmXocrtqUij\nWADpa2DojBDdVaUU7hkm+2VTvAes2aIX/ovjfWcYAE88NY3Lpuxn7thWOGZR0jpIeG8a+wWXpxbM\n50drTuHnd3+Ta85cwVu7v8LqcY1wGez4ynSqv9alzlsWMAEivRk91WPAELTugMJFCIdiCG2+J5XS\niPsfRsQ8CYhBYe2IDvUxJOU8dK8EBLbkpJ1ciLSDPZBZaWPf70oN3I1MkGJ8VflspEKvQoevBmkX\nr0LP12JEX0lLbV+qaIx1BJlpUxFBBVH24H9HYeBKxAxno1BsOWJq+5ETOENe0oTWZ3zouBLzuSwQ\ngHhpivg3UrKbTwVWwqlXtOrax9E6HkFEOYzfKmEWFLcmdY+JsOqjzUJb30ge2i+4MAeT4cQvYUwN\ngg4cxO/xOmDW9wh+gVQheY2Rw7pfZgfYU5H2V2G+45Bv2JTcBIEPQ8u1ZRT9PAGHhasx0AyRQtFE\nvrWhiZY4i/Ucbpvxk8xH/owRXdeKQXSi8WntQwKm0bxmkFk0Q9ewjqDci11mz/H3LrANHn8SZs7V\nvD3fD43It+KY1w1mjg3SZthjaPUy5FidSd7H1PSlMRSuH4YvQLoRnA1mbbphqB5CG8HZpazhwuFh\n3FUW9q/JI8ut2QR8EIvP4JuctrCLVd8dz3ejd3Hjt+/j3+ttaGx+9wfXrPHRmz1zow0Rzwm0WC0G\nU7IOQcc/igjlMLhdkhycos9xO5CF/V+pYGZdp+zzJhR+PANJt4nIdl+MErkuQ3MYNpOq0rWzqyzV\nD/Sb+SQQMyk2c6tHjOBUROgTkQoaQ4Rj1FSmooM4HW2sV9DVb653E/z0kVO4dfJWEVkWMSvM84f0\n2f+xbzlfKldeCzH4RfNCPp7dLqfoPyAGZqo5GW/uU2/WphYGlkcofGxE10uCuwCy9TbOrJwIOYlf\n3DcAvAQ9a8EOQ/F1+D1uW6D9URjzWZT56DGCNvwGQO3mGhZiyl6txStI8yrT/5P/CuGlQCck9ipD\n1a7Bh6pbZdbxr1AuRxp42Kxjrblum77vRcNoROahF9I+Q2sxtBkBEweh2JiPnI6Yw2YkVKYiDW27\nuddMzSU1O8A1f/0RHlvwGzgdcptgx7/Dggqwv2f2v9Tst0mfz5bZOLtzYqIJFL16FQmjY0jI1Gj/\nuVdrd/wbZZRuGCTalyKXBtsDADpo6KUWbqu/hHsveMr3yXUgfI1q5dbwJ5z7/1cNoxG5uj6F8JTu\n1zLxBPC3aIufRModwFeBXwCfQSR5+N2X4+5bLi/miXMfYPGKt4iMJFn54Q185evPUWMNUHfdElaG\nX2b5QBPnB47ooLWiJKezUbw8qUpVexJ5qcAQOojVSIHxSooNUGxewu2CdWWTmO12gg2pay1hPGxF\nBz+L8gqGHOyQK2bVg2ziGPkWh+52i0RthFAio6Km5TaO7fqHcbq5t3GyUqV504ds8ixiKDbaVA90\nJoKkcBoxm0NwyvFWv6P9WYiRgAisACiGUz9zHKvEwp4vk2gRbbAIUi+hTuwg6TUHRYGaEAFbWrPw\nbqOdvYhs9/1gL3MFQ9ADtEB6vbnWLKAdojUQqdXa5zYqMkAHxB1z/YuAUmh4WhWU1mXku8OBWYsl\n6PBWIW3ucbMukyAwCx2ekBDHrBMwdBiC/ahvSRE6bDMNBXq4I+ea57RFO7ksnNgJBVMFqDOSgOBE\n8rUr7FNRY9aBgoByaYbqIdsAwQiiwSaz/x4Q8HSkTb4BzqQcH71oH9Y8Fyoh8WMoTkN0rtnnrcg0\n8SIeCbD3unr21eZarYgxLUYnrsPc703EHEegcFuC4OtZiIDVhszV+eaa39NnL5lX72fQToPctZBb\noHDzGlWr/sVNks8hUv4BYhbeTXcjS7EGlS+9hBTlbyI59ATi9/+C5IA37l5/RwNbLl/EmFA74Z+m\nic0bIfZkisW3tnBh5XNcOPMwZz98BHsJ9JcVsuEHSyhc2k/Bo0kxhk6wxwBZITWlW8GOg9WOFtGr\nybge2AhuhdFAuiATs+mvjzBhlgrJnFZ447IlTHjmuAhuEbAZbNvFa9Czdh/UXoTf1qBStm5oa0ZO\n2CZwml1t+hYkUVPmWl1ow4fId9YanBsmVJz12/WZxCoe03wphcE+CHUiSXcl0hSq0D0q8dGYzgN+\nD4GkqzqFDLAe1q6H2lLVVPAcIu4sIkIvJIqZYwYdhCR+GfcA0hg8QN95xvnXjpj2TMTQilHHsiAi\n1GLtj+dE5kxw3oDWfVByFKxa85mJSENoAc6AtU9C7ZlI2yo163YIqfgvIHzWzRCKAhWoD2vU7EfQ\nPMtY5Dx+RtexTH6JNQlCR7R96RFVqpJEmsZcYKvqjILDisoM3hQm3pMlGEcaWFKgPmHHPL/BdX21\nACausHGbLA5cOInSY33883PLWXFDE9HFSLh8GGlOQ9pH9w0z9wqgHrZdN4vCLcOEGtJ65rPNGszB\nb6/5Mn5PnDHm/n3AzaiB+U6kJU+Ar799Nuec2iBG44D1gs4G69+7PIzPI0aReMd7PzLvDyEN4ruI\nMdyKLLr16MhejOT6O22Nu79jZRk30kriAoe2CyooTQ0ysCLIsBUlWRBlaFaQwrYUvAbh2SmmbG+i\noDEpE+EEIu6LgbfBXgzO6ZC+0yJwBElmw0x4AyFuZckXGdl9LhOi/b5G0QrjC1tVTzEG6UQzEGGY\ndPFf7oWzqhEBRxFX9xKNYuhw7YaBdJhwY1YMogAd/gAiuuOIACogWJyVA6wBOe7C+A64YRi8NEJk\nRwb7dHyIwkuRBLoGvzTfK+Kq1v15CtzHIf0WPFAJZ10M/BzcUmOv70BMcSM6tBl04OqQZPbSnd+5\nfq9ojViPpP3l+EVOyxHxptDB8PI4XDOvMuBRCH8Mim62sTcpR4UXjQ/hCGJIG+CXh+CsnFmjmWbN\nVmrOyS5wnxVzH2yFcBiJqRxiuEn8Qr9WsE4xEYdtyCQ5TRGQxFZwYuBMhUMbFOkoTggbNlSLGNUI\nhAqzvsazV+sRqAG7CdKu8YPshl+9DGfnXOwHXSof7MXuhjkjHUTtLByD/d+eRMWX+/weLheBdZGZ\n+1RgD1QHugin5KgmiDQDAy+ZBxi+ELXPKEVJgXHy2cnZEw72AlciugHO+YcGMfyb8Xv9loI1Fta8\nALwH1aou0h42IxcPWkLaze/t5m/QUryTOTQjWfPuUQL2HJfeXBkVHX28FltG4fNpogMJyp/uI9jm\nkvhcBPdH+LgLw0iaTkQSdxmkfhvEvV3ZleHDLiM7zQw6kJp3NZLe5cBKSHwyogPuHTKTIWjVm3Rf\ng+15bH2xDsF6/M5Tb5trVqNN85KxjiBJcjYUzknqoBUg5nIZZK92lNG4BB3yrJHGYaTqLzUr9DpS\n9c+EeGBEdRQLzHUmm9cscB9yZIbwa1MG9cxuF1gfg9CnEDOxNOftdywgO8H281EuNWtksigBsfnd\niDlsRLpivXkWL9X6cuRAXQG0QfaXSJLZsP/CSbh3wMBvYPAl5GB9AlpNdamTysm3dEjztVYi7aYE\nJSMFgU3g7gV+DfyzrksjhEtMs+zTIT4dqfIpMz+At2D4Z9DwP8Gdi0TUITiyGzGxo5p/9HZTbetC\n3UKY+AndI36uuuYxGR3uo5oLP4H0S8AxcF4Dt0Op5e5z0Pg70WTu15AbMeszC4onJGExDN4VZPxw\ns9bvYrMfk8gLquNnleN+EazHXEZWBUVbOxGDetXQ1WqtHQZDZWRWWHt3rpnrdyDgZqEe+joKGbw6\n4tdE/RKoBfcHkLvJzkMY/inj/5VhnIG29iLkl1jxB//3Mh3+d+M//S/XDKlpFpO3Hqfw1QSn7N4O\n+yG2OcvghRFiA0kim0ZIJRwR0oPIwNmOpEkPkIDNxQtonFOtg/M7iCwy/z8dLfjv9TlagN9C9F9H\ndFCPknesUYwP7X45cBdM/KqRClOQLpU219kNubAlIt9prpFDDGUipJfbcjAlEYF0w2A8Ak8iPA8X\n3J8iTelByG40q9mFDliTvsMOZDYcMnN6ABHAEJLqLtq9MD5zqjPS6zxIX2NJswkBrXBKw3YcJ6cD\ndj3Qqa7qNCKmedBcqwwxxCuBfZBrRSZBhf7mbV2PfSiEPA0x3ziEq5JYd0LheIhPQypzBMb+3Nwj\niIi9E4mdC5EUTyGPlwPHeiDh1Z/0I+3LMfsUR1J0MdIAyxCDNT6W4AT5Obd8FjHQAZjyMXO/JsTo\njD/EKxQkjL60FEa6zX1vRvRUCpyqnAx3D+psNgN6OuDNZimXHTuhpQESHn6sZ46WQHxLmrZ4tcK+\nEaR732roaBhqbu7C+jQcewgiF6W1Xl8HvgxDB81ee1nGVSiaMitD9hytv7tYazS0IgTtUDx/ALfc\nIbvP8tuHPgbWz8B5wFR+vw/jm8CdaPmrzXumOBiAu8yPN55Dgbl3ju34TGb0Z/Rn9Oe9+1nLX3jE\nyNeAUoAU5/NRVsBXzPt3IR8GSJH1Um88Be/9Ct+OjtExOt7jMRkxgO3Iwv2qeb8M+TXqkQ+75B3f\n+RpSkvcj7KHRMTpGx+gYHaNjdIyOv+y4EGkeB/FNmvd7/By5LXe9470ylML0xzSor6L570fm2fsx\nJiBf+h6k+X3WvH+yzjuC4inbURzgH837J+t83zkcFKB90vx9ss+5Ebnkt6EgLZz8c/6jw0GmSi3y\nmW9H/ur3e6xAUaB3MgyvcgPE2P7QRxNEz3GI9wdMuRq//C6Oks5ncXLPO2ZeAyhoeSYn93y98Tf4\ncTo4+efcgF884I2Tfc5/dJyOoibe+MOIyvs5ank3w9iPn1tSjR8F+irv1oyeQ/mQ7/d4HEXnPwjz\njqEA7RxO/vmOR7661fgaxsk+5wZ8lAxv/Fnm/F5zknEoIu6NP57UdXKMPy0x7b0dtUhDepOTe942\nkmbt+ObUyTxfUMeQL6FsG2+c7HN2+XMnWpoR+LNO8/8+3Pf4fn+u4cWw/0//f79GHNXnfg6lN71z\nnGzzziEzqhgV5q/+I/M5meZ7CcqH3cY78RjePU62OYMSLb2KoxfxtQlv/Jfn/F5rGC3IWeeNCbyb\nu51Mo513J6Z1mN//8BnGm/fejxFEzOIBZJLAB2PefSjX9VRO7vkuR+AGDcBDqCzsAU7uOYOYBajq\n6neo+OBkn/MfHQGUyFWLErtOFqcn/GcfxsmemGYB/4ZU5neOk3XeFfie+Siq0jmHk3e+fzhW4fsw\nTuY5/3+XaHkR8ugfwk8Ce7/HQ6iWNIV8LB/n5E9MOxOp+B4S5jZ8HLCTcd7zUPnTdhTy+5J5/2Sd\n7x+OVfhRkpN5zqOJlqNjdIyO0TE6RsfoGB2jY3SMjtExOkbH6Bgdo2N0jI7RMTpGx+gYHaNjdIyO\n0TE6RsfoGB2jY3SMjtHx/9P4X/SJdTFQ9u65AAAAAElFTkSuQmCC\n", 223 | "text/plain": [ 224 | "" 225 | ] 226 | }, 227 | "metadata": {}, 228 | "output_type": "display_data" 229 | } 230 | ], 231 | "source": [ 232 | "import matplotlib.pyplot as plt\n", 233 | "%matplotlib inline\n", 234 | "\n", 235 | "plt.imshow(vi_np)\n", 236 | "plt.show()" 237 | ] 238 | }, 239 | { 240 | "cell_type": "markdown", 241 | "metadata": {}, 242 | "source": [ 243 | "## Write output to disk\n", 244 | "\n", 245 | "Because we modified the extent of the data, we need to be very careful when writing this output to disk. If we would simply use the positioning of the source dataset to define the position of our output dataset (this can be done using `CreateCopy()`), we would be ignoring the offset we used when reading the data into an array, and the resulting image would be misslocated. We therefore need to reflect that offset in the position of the image (called GeoTransforms).\n", 246 | "\n", 247 | "Let's write a function that modify the geoTreansform of a dataset based on an x and y offset." 248 | ] 249 | }, 250 | { 251 | "cell_type": "code", 252 | "execution_count": 55, 253 | "metadata": { 254 | "collapsed": true 255 | }, 256 | "outputs": [], 257 | "source": [ 258 | "# Geotransform is a tupple of 6, that contains offset and resolution of the dataset. See gdal doc for more details\n", 259 | "def updateGeoTransforms(srcGeo, xOff, yOff):\n", 260 | " \"\"\"\n", 261 | " Create a new geotransform list based on a source geoTransform and an offset\n", 262 | " Returns a list of 6\n", 263 | " :param srcGeo: The geoTransfor of the uncroped dataset retrieved using GetGeoTransform()\n", 264 | " :param xOff: x offset used for cropping\n", 265 | " :param yOff: y offset used for cropping\n", 266 | " \"\"\"\n", 267 | " out = [srcGeo[0] + xOff * srcGeo[1], srcGeo[1], srcGeo[2], srcGeo[3] + yOff * srcGeo[5], srcGeo[4], srcGeo[5]]\n", 268 | " return out" 269 | ] 270 | }, 271 | { 272 | "cell_type": "markdown", 273 | "metadata": {}, 274 | "source": [ 275 | "Let's now create a new dataset that will allow us to write the array to disk." 276 | ] 277 | }, 278 | { 279 | "cell_type": "code", 280 | "execution_count": 56, 281 | "metadata": { 282 | "collapsed": false 283 | }, 284 | "outputs": [ 285 | { 286 | "data": { 287 | "text/plain": [ 288 | "0" 289 | ] 290 | }, 291 | "execution_count": 56, 292 | "metadata": {}, 293 | "output_type": "execute_result" 294 | } 295 | ], 296 | "source": [ 297 | "import os\n", 298 | "\n", 299 | "# Get Geotransforms and projection of original dataset\n", 300 | "geoT = vi.GetGeoTransform()\n", 301 | "proj = vi.GetProjection()\n", 302 | "\n", 303 | "# Create new dataset to write array to\n", 304 | "outfile_name = os.path.join(dest, 'MODIS_NDVI.tif')\n", 305 | "driver = gdal.GetDriverByName('GTiff')\n", 306 | "# Create empty dataset using array dimentions\n", 307 | "dataset = driver.Create(outfile_name, width, height, 1, gdal.GDT_Int16)\n", 308 | "dataset.SetGeoTransform(updateGeoTransforms(geoT, xOff, yOff))\n", 309 | "dataset.SetProjection(proj)\n", 310 | "dataset.GetRasterBand(1).SetNoDataValue(-3000)\n", 311 | "dataset.GetRasterBand(1).WriteArray(vi_np)" 312 | ] 313 | }, 314 | { 315 | "cell_type": "code", 316 | "execution_count": null, 317 | "metadata": { 318 | "collapsed": true 319 | }, 320 | "outputs": [], 321 | "source": [ 322 | "# Close datasets and unallocate arrays\n", 323 | "dataset = None\n", 324 | "vi_np = None\n", 325 | "vi = None\n", 326 | "vi_src = None\n", 327 | "QA_src = None" 328 | ] 329 | }, 330 | { 331 | "cell_type": "markdown", 332 | "metadata": {}, 333 | "source": [ 334 | "## Process all the files\n", 335 | "\n", 336 | "Now that we have the workflow setup for a file, we can simply put it in a loop so that we can iterate over all files. So putting it all together, we get:" 337 | ] 338 | }, 339 | { 340 | "cell_type": "code", 341 | "execution_count": 57, 342 | "metadata": { 343 | "collapsed": true 344 | }, 345 | "outputs": [], 346 | "source": [ 347 | "import glob\n", 348 | "import os\n", 349 | "from osgeo import gdal\n", 350 | "import numpy as np\n", 351 | "\n", 352 | "# Set variables\n", 353 | "inDir = \"data/\" \n", 354 | "outDir = \"data/out\"\n", 355 | "width = 500\n", 356 | "height = 500\n", 357 | "xOff = 400\n", 358 | "yOff = 400\n", 359 | "\n", 360 | "# Create output directory if it doesn't already exist\n", 361 | "if not os.path.exists(outDir):\n", 362 | " os.makedirs(outDir)\n", 363 | "\n", 364 | "# Get file list\n", 365 | "MODIS_files = glob.glob(inDir + '*.hdf')\n", 366 | "\n", 367 | "# Define functions\n", 368 | "def updateGeoTransforms(srcGeo, xOff, yOff):\n", 369 | " \"\"\"\n", 370 | " Create a new geotransform list based on a source geoTransform and an offset\n", 371 | " Returns a list of 6\n", 372 | " :param srcGeo: The geoTransfor of the uncropped dataset retrieved using GetGeoTransform()\n", 373 | " :param xOff: x offset used for cropping\n", 374 | " :param yOff: y offset used for cropping\n", 375 | " \"\"\"\n", 376 | " out = [srcGeo[0] + xOff * srcGeo[1], srcGeo[1], srcGeo[2], srcGeo[3] + yOff * srcGeo[5], srcGeo[4], srcGeo[5]]\n", 377 | " return out\n", 378 | "\n", 379 | "def makeFileName(x, suffix, ext = \"tif\"):\n", 380 | " \"\"\"\n", 381 | " Generate a new file name by appending a suffix and changing the extension of an input file name \n", 382 | " :param x: string, input file name\n", 383 | " :param suffix: string, suffix to be placed just before file extension (e.g., 'NDVI')\n", 384 | " :param ext: string, extension. Don't put the period before the extension\n", 385 | " \"\"\"\n", 386 | " base = os.path.splitext(os.path.basename(x))[0]\n", 387 | " return base + '.' + suffix + '.' + ext\n", 388 | "\n", 389 | "# Run the loop\n", 390 | "for item in MODIS_files:\n", 391 | " # Get SDS\n", 392 | " sds = gdal.Open(item, gdal.GA_ReadOnly).GetSubDatasets()\n", 393 | " vi = gdal.Open(sds[0][0])\n", 394 | " \n", 395 | " # Allocate zero arrays of the desired size\n", 396 | " vi_np = np.zeros((width, height), np.int16)\n", 397 | " QA_np = np.zeros((width, height), np.int8)\n", 398 | "\n", 399 | " # Read data in arrays\n", 400 | " # NDVI\n", 401 | " vi_src = gdal.Open(sds[0][0])\n", 402 | " vi_np[:,:] = vi_src.ReadAsArray(xOff, yOff, width, height)\n", 403 | "\n", 404 | " # QA\n", 405 | " QA_src = gdal.Open(sds[11][0])\n", 406 | " QA_np[:,:] = QA_src.ReadAsArray(xOff, yOff, width, height)\n", 407 | " \n", 408 | " # Clean data\n", 409 | " vi_np[np.logical_and(QA_np != 0, QA_np != 1)] = -3000\n", 410 | " # De-allocate QA array\n", 411 | " QA_np = None\n", 412 | " \n", 413 | " # Get Geotransforms and projection of original dataset\n", 414 | " geoT = vi.GetGeoTransform()\n", 415 | " proj = vi.GetProjection()\n", 416 | "\n", 417 | " # Create new dataset to write array to\n", 418 | " outfile_name = os.path.join(outDir, makeFileName(item, 'NDVI', 'tif'))\n", 419 | " driver = gdal.GetDriverByName('GTiff')\n", 420 | " # Create empty dataset using array dimentions\n", 421 | " dataset = driver.Create(outfile_name, width, height, 1, gdal.GDT_Int16)\n", 422 | " dataset.SetGeoTransform(updateGeoTransforms(geoT, xOff, yOff))\n", 423 | " dataset.SetProjection(proj)\n", 424 | " dataset.GetRasterBand(1).SetNoDataValue(-3000)\n", 425 | " dataset.GetRasterBand(1).WriteArray(vi_np)\n" 426 | ] 427 | }, 428 | { 429 | "cell_type": "code", 430 | "execution_count": null, 431 | "metadata": { 432 | "collapsed": true 433 | }, 434 | "outputs": [], 435 | "source": [] 436 | } 437 | ], 438 | "metadata": { 439 | "kernelspec": { 440 | "display_name": "Python 2", 441 | "language": "python", 442 | "name": "python2" 443 | }, 444 | "language_info": { 445 | "codemirror_mode": { 446 | "name": "ipython", 447 | "version": 2 448 | }, 449 | "file_extension": ".py", 450 | "mimetype": "text/x-python", 451 | "name": "python", 452 | "nbconvert_exporter": "python", 453 | "pygments_lexer": "ipython2", 454 | "version": "2.7.6" 455 | } 456 | }, 457 | "nbformat": 4, 458 | "nbformat_minor": 0 459 | } 460 | --------------------------------------------------------------------------------