{ "cells": [ { "cell_type": "markdown", "id": "d7901b0f-a630-46eb-85aa-efc1e6a931a9", "metadata": {}, "source": [ "# CyberGIS-Compute: Geospatial Middleware for High-Performance Computing\n", "\n", "**Notebook Author:** Alexander Michels\n", "\n", "This is a short example notebook designed to demo the CyberGIS-Compute Python SDK UI with the Hello World notebook. We will walk through running a simple job and examine how that works." ] }, { "cell_type": "markdown", "id": "5966a57f-fcd0-4e1e-b757-b541add5db6c", "metadata": {}, "source": [ "## Using the CyberGIS-Compute SDK\n", "\n", "CyberGIS-Compute has a Software Development Kit (SDK) that allows users to interact with it. It is a [Python package in PyPi](https://pypi.org/project/cybergis-compute-client/) and can be installed on any computer with:\n", "\n", "> pip install cybergis-compute-client\n", "\n", "However, note that the SDK doesn't quite work everywhere because CyberGIS-Compute relies on authenication from JupyterHubs to ensure that unknown actors can't waste HPC resources. For now, always use CyberGIS-Compute from [CyberGISX](https://cybergisx.cigi.illinois.edu/), [CyberGIS-Jupyter for Water (CJW)](https://go.illinois.edu/cybergis-jupyter-water/), or the [I-GUIDE JupyterHub](jupyter.iguide.illinois.edu).\n", "\n", "To use the SDK, we first import the package:" ] }, { "cell_type": "code", "execution_count": 1, "id": "e27e338f-2c1e-4c86-956d-75aa94573523", "metadata": {}, "outputs": [], "source": [ "from cybergis_compute_client import CyberGISCompute" ] }, { "cell_type": "markdown", "id": "a98e3f22-7c63-462e-bf0e-54289be607ff", "metadata": {}, "source": [ "Then we want to establish a connection to the CyberGIS-Compute Core server that will submit our workflow to the High-Performance Computing (HPC) system. To do this with our SDK, you want to run the line below:" ] }, { "cell_type": "code", "execution_count": 2, "id": "ec5b2598-0337-443c-b816-e9fb18195516", "metadata": {}, "outputs": [], "source": [ "cybergis = CyberGISCompute(url=\"cgjobsup.cigi.illinois.edu\", isJupyter=True, protocol=\"HTTPS\", port=443, suffix=\"v2\")" ] }, { "attachments": { "a678f0e6-1c3c-446c-b47f-8eca1b157088.png": { "image/png": "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34pAfX09Kuu3gj3UfFBZQyX4G6ZHZf2GsIeaFamssfYDY6hIkB4EQAAEQAAEQGD0EejDe370FYZqfOZDhTAo7VO6NufMl9t3fh8aOW+smU5GZ8VAaxAAARAAARAAARAAARAAARAAARAYrQRcOSKP1vIwk5ZvfKUu+fFAn0fGjfP0W761cJXvqC0LFAcBEAABEAABEAABEAABEAABEAABELgCCIw56wnZ4+SezdX3bL4C2EIFEAABEAABEAABEAABEAABEAABEACBsUBgzK3cGQuVgjKAAAiAAAiAAAiAAAiAAAiAAAiAAAhcQQRgPbmCKgOqgAAIgAAIgAAIgAAIgAAIgAAIgAAIXIEEYD25AisFKoEACIAACIAACIAACIAACIAACIAACFxBBGA9uYIqA6qAAAiAAAiAAAiAAAiAAAiAAAiAAAhcgQT+68KFC1a1ampqIiMjr0AVoZIzAVJZzhdxBQRAAARAAARAAARAAARAAARAAARAYBgJ9NhJxuCZO8OI6YoVBTvXFVs1UAwEQAAEQAAEQAAEQAAEQAAEQGBsELB3XMDKnbFRpygFCIAACIAACIAACIAACIAACIAACIDASBGA9WSkyEIuCIAACIAACIAACIAACIAACIAACIDA2CAA68nYqEeUAgRAAARAAARAAARAAARAAARAAARAYKQIwHoyUmQhFwRAAARAAARAAARAAARAAARAAARAYGwQgPVkbNQjSgECIAACIAACIAACIAACIAACIAACIDBSBGA9GSmykAsCIAACIAACIAACIAACIAACIAACIDA2CMB6MjbqEaUAARAAARAAARAAARAAARAAARAAARAYKQKwnowUWcgFARAAARAAARAAARAAARAAARAAARAYGwRgPRkb9YhSgAAIgAAIgAAIgAAIgAAIgAAIgAAIjBQBWE9GiizkggAIgAAIgAAIgAAIgAAIgAAIgAAIjA0CsJ6MjXpEKUAABEAABEAABEAABEAABEAABEAABEaKAKwnI0UWckEABEAABEAABEAABEAABEAABEAABMYGAVhPxkY9ohQgAAIgAAIgAAIgAAIgAAIgAAIgAAIjRQDWk5EiC7kgAAIgAAIgAAIgAAIgAAIgAAIgAAJjgwCsJ2OjHlEKEAABEAABEAABEAABEAABEAABEACBkSIA68lIkYVcEAABEAABEAABEAABEAABEAABEACBsUEA1pOxUY8oBQiAAAiAAAiAAAiAAAiAAAiAAAiAwEgRgPVkpMhCLgiAAAiAAAiAAAiAAAiAAAiAAAiAwNggAOvJ2KhHlAIEQAAEQAAEQAAEQAAEQAAEQAAEQGCkCMB6MlJkIRcEQAAEQAAEQAAEQAAEQAAEQAAEQGBsEID1ZGzUI0oBAiAAAiAAAiAAAiAAAiAAAiAAAiAwUgRgPRkpspALAiAAAiAAAiAAAiAAAiAAAiAAAiAwNgjAejI26hGlAAEQAAEQAAEQAAEQAAEQAAEQAAEQGCkCsJ6MFFnIBQEQAAEQAAEQAAEQAAEQAAEQAAEQGBsEYD0ZG/WIUoAACIAACIAACIAACIAACIAACIAACIwUAVhPRoos5IIACIAACIAACIAACIAACIAACIAACIwNArCejI16RClAAARAAARAAARAAARAAARAAARAAARGigCsJyNFFnJBAARAAARAAARAAARAAARAAARAAATGBgFYT8ZGPaIUIAACIAACIAACIAACIAACIAACIAACI0UA1pORIgu5IAACIAACIAACIAACIAACIAACIAACY4MArCdjox5RChAAARAAARAAARAAARAAARAAARAAgZEiAOvJSJGFXBAAARAAARAAARAAARAAARAAARAAgbFBANaTsVGPKAUIgAAIgAAIgAAIgAAIgAAIgAAIgMBIEYD1ZKTIQi4IgAAIgAAIgAAIgAAIgAAIgAAIgMDYIADrydioR5QCBEAABEAABEAABEAABEAABEAABEBgpAiMCeuJsSIpcBoJy97QjRQnyP2NCOgLE2hdBq4sNvxGOSIbEAABEAABEAABEAABEAABEAABEOiHwJiwnvRTRtwGARAAARAAARAAARAAARAAARAAARAAgUsn4H7pSdmUpasDM6vNDE+6obYkcQqnMGPp6vlsHEnGJ2Wp/pxxzMq181N2GUmcrKqy5KmccXCxLwLGr0qL1Ubx3cky376iDcs943FVeXlV3dfaBp2+zWg0u/H5fG+RyF8sjYhaFiv15Q1LLpdfSLtWWVFV+6VG+y+d3kDKyfCu5XlPEfmKxKELIuTRMhGfW0f1xnBFkZ425k/Kkp0bfKdeXVFRtb9O861O30rEErl8wWRv4Y1BYmnoEAH+XqqGG7zDVbP2o0LVaZH8IbnIbUAJEAkEQAAEQAAEQAAEQAAEQAAEXBEYqvUkYoGEV602mzV1amPi3VyzyU51ncZMszdr6/YbUv0FHKqYNbWHjPS6f8RvMPnnUGDUXzKr/5GTW8FLDB5h64lBXbgxO69SZ+yyR2Y0dho1p3Wa/cri13Ml9/1107oY0fjRzNSsV23Nztmu0nX2KoXZaNYbNfrjGnVlce4mccxjG577k4Sr0bssu0GVm55VqLBP59AAACAASURBVD7N9oie0Gk0kL8WArCiOL8w5i+vvqQQD9oE9TupGpdonW50actfzy00yEVJsJ44wcEFEAABEAABEAABEAABEACBQRIYqvVEsCBCzFNrzGb1frX5brnzlI8YRtSsYYSYTzRfqo1/iuGYbR6tVbO7XIgWSPGWeJA1yEbv0h3TEspclqlLEecizcnS9AeyK06yM3++SLpYHhFys+g6Po8xGv6tO3awtnyPxmA2aN5Jj9c2FRVmDM6u4CLPy3C5U5O/JiV3P9sieQKxLCrqVrHI15uU02w06k8eO1yrVH6lNxu1FRuSTugLSp6ScjRpLr3N9blJaflaYpEZL5Tdk3hXuCTITzBxvAfTeVavb9BUf1z8gUrfqat49hHmurIt8sHU5u+kariourzWqtGeZhh4nbgEhBsgAAIgAAIgAAIgAAIgAAKDIDBU6wlzo1Tqz2gaGCN1MZFLncwnWpXa0MXwgyXeRzS6gzXqzhi5k1eCTq3WE18GN6E0XDII3RG1h8BPWu3JEcZhVOc8bDWd8ETLsjY9myjxss9RHqNIzTipzM16plBtMH6V/9iGm8tyB2UAGGH9ByreUPGkzXTCvyX5pZcz5FMd2nRMYkqWYX/++qxcVYtR+076M7M/2bJsIJYOQ/nWYtZ0Ik5+uyTrFnuTi0AwVSRZEJMQk5v0YL7GqK/YvG3lHVmSAc78fy9VM9AqtMYza49piaHPabQZnBTEBgEQAAEQAAEQAAEQAAEQAAGWwJB3jXUTRywQUUkGdW2DE9QurfpLPXmDL1m+UjKZsZpYnCLpVV+yZ+VMlkb0Mp6Y9fuLc9YqloXNCQyYNu3mOfOj4lOezlcet7myOMnhutCpU72VnZKweP6cwGmBgXPClikyckuPcksw1FfkP5kUv4jGZSMvjk/Jzq+kTh29grEihT0WJmUXmZwZtWU5KXHhc24ODLx5TnhcSk5Zd3yy+qMgUxFFpBFZ8xevzMxXERRcoV1b8UZmUhyrZEBg4PzwZSvTc0rUht7LO7hSMkx7KT1vaH6mikTuMhSvpGcPTQtUFJO37j2hU696JyddsSx8biAhSZQJj1Wkbyp2XD/CnYH1qlmzNbvwOFVIePdLJa84mE5sKXlT5VnbClJnUnODviL33aMM06nKnM9qtLrUxRk6ZmUGG2NuSoU9aHcqxPBVcU5KPOXCYolPySm2Oik5qzpghpqN4TS7pbnaLsZQnZuydD5lklZhhW3c9cILSqopLzi16O0sJ9OJLWPBgtSCv2dRnxO+h0GjcVG03lp2aTVHaAl5IYlpvUwnF6Pxg9OyFBLhdIksiGcYkFCS9lKrppd2Rl1lfjZBHdrd1xbFJz2ZW1rvpIQqc461gbWQytUpX01XLJpPGnjg3PBlSdnFX3VXIVlG9HQS7bls249fm6s80bs1ny5WWDvRRyQJ24msnTQgcE7EsqSnC9UtveN3aXOj2IbUu5nYCnE8fxkZIshNKo1hqtOJkraYnUq2t5Iazyc1fjEMuMH04oQvIAACIAACIAACIAACIAACv1cCQ/Y9YRhxuFS4Xafv0qn365hg1pLSE1rUtSfIfFE0d55UMItXWm1Q79cyCyS94rSr676hMyX+rREXXVe69BV/WbW+TGedQvHItqRmo+G4Rkn+ykpl67YWJA1gY4iTFenJ6yvspm3GFq2a/FWUVq0r2PKQ/coSo/rlpPS3NMRNhgYej+/GGMk+FORPWVoqy9ialyzueYnN4/FYpwDzOb1602NJb9E33Gww6+uVhfVqrbGsRGEuTEnKUXVPPs0G3f7SXOJi8/ddmxb2WudB3DRSUnNtNgGS77WM+Se9dj/5qyj9R+JLhRvk3Hvx2rJkGA++QCA4ZzS0Uy14XgKywIRx51s1pDqdKF2/JrsHAiHJnDPoj5I/dcX7pYkvbd0gF/bIcvmhXbntA9bCNSUm66kYQR8+EeMlac9mmb/khS6Mkk0nCaSx0cLSd/RmdXlVS0Ki8462napP2TUygoX3ynuBMevLUh77i5I6JVmDQa9RFmo+U9Y9v73gvl7NbFAMyc6vVJ7ZbGzIz16br2F3Nul2L9GVFitpG+CJ057PkPTptsALSi74RM74CElTGWAwWRvKeA8nD60eATzJurK96wYoj4126VXTnUuntnDtI7nVeltfG8/ndRkNJzQq8vdRcelDBUXr7JYm8XgTSddgjMZ2beF6RU73qjzS9rWq4uyDmra3yzIE5SkPZCutK7wIaYNOs0uX8qVu086ChJ4GQDoRmz9ZC6V6+rGUEltPp1dOalXkb09tVmFRMmuJG3TgTfSeIiDryYy0csmWvLQ7eEy2dVuaxVA73aA1QgIQAAEQAAEQAAEQAAEQAIHRTmDIvidkdiKJkE6mHHRfOjpXGNR11LQgkEj8yX8iMhPSq9XsLPxiMJMlP3SSw5fKeownRvWLrOnETSB9aMuuA42NX3/9dWPjgfKCVJmQR3w6XnxkvdLRI6S3VPJiXJOTyppOvCSJz5fsqiMiDuwp3ZIsFRAfDdXLjz1jJ0FfkpLCmk6IT8GWcpJf49fHGhvryjaRPUHdSH45jzxtF7vb4mTYm5v5vlmeXbLncGPjsQN7ClKJbOpg82Zu7suZuf8Spb62ay/R++u9ZX9LoMaXLj1Zu9Gr+CeL0x+mphPe9Jisd/eQTGk5D+8teT5BzGeMDcXpqb1fmDsWkmG8YrbsO3AgN5ZaHtwECa8dOFB34MC+ggTrUhKypsNqOuGLY7JL9n79Hc3gX1/v2cYuSDFqizMeyz/uLNTxinH/p+p2elF8z2p5rwU7jjHJd15wYlZKgmy61RbCky6PoXvZdGrKKx1qnqY1f/6p6ie6aCsqpveqrx/KszeqGFnqlp17aV0c3luWwzq8dOmVG7OL7ZcpDZIhj/VqYc611Ra+q+GJY1KyNuRsyFoWRK+eVFUdZY1Q0sSEII6iOVzi+w7CdMK4+Qb400zM6o/Lh2+Z1RCqxloaQ8VfknKI6cSNL/nTprJ9pCWTJkj62pbUBaSnGDVvpaS/b+czdTVLz2I+vDUz7wdJRsGuA7R29pRkyoW0lrWFW3NzsnLUkxM2ldK231i3qyCJdCLiR6QsfFtzEaDN5GRu2Z29vswsTdlSVkujf72vbMtDUmqeM6hz/5LXy1uk/wrpjrFgw566A0X3sya28bKXSAepO7D33WSbyW2QDWbg2SImCIAACIAACIAACIAACIDAGCYwDNYTaj65lU6Vzd/U9V5XYVTvp8ft8OeFkh0cRPOk3m6M+Xidmvj8XwxmzX72/fV4ScSCbt+D48U59F00T/J4UVFmjFhgff/ME8yUZxRsTQvmkSl0xavb+p5Z6T/ILW4wM26ixNeKNiik4inEfUUguiUmq2BLIjkRmUzCewwZRmXu62pyiAxvZmrRtoyYmd35TZEkZBe9FEPtEPrKvGL7dUnUgGLWfqb2z9y+5U9SkRePN14gkmdsWiWhuhqU+SXmxNeLMpaJhXziTyKUxG/Iupu6eJgbDtst8zAqX8lTEauEb8yW4i3JC0Q2Lwa+UKrYVJQTQ6aj5vpteb0WtNij6/+zriS3lNiP3ATy7CKip9AK2I0vWpha8GYa9a3o1GzL79cQxei+aaB1RDamuV3cf64OMWbGxs4iVMyaCqVTlZlVe1T0+J4b5bG9jSfm4xr9rKz3/p4REyzkj+fxvISS+zYUPMu6vXSqi//RMw8fPEN31uuhXVV6SJT1j7It65IT70tMlNOZNdkpg3WB4EkWsHawYQ6ihP+W0SpuV2X+tyK7RK3rzwA4kPyHVDWkyF9ty6ukvj/C+7YUZSdIbKdNk74Wk/H3LcnEe6jLqHqzUN3tXmVTqUun+py3+s2CVLlYQGtHJH3opdQ72EFAVViojyI+Uwm30LbPmyKW/2VD4k00nb7e3nLqYRWl/0orfGRrwboYyVQane8ricks2HIf21m+LS2mC9KGNwy+wQxv/pAGAiAAAiAAAiAAAiAAAiAwOgkMh/Wkx22kU1NnPXjYyoIcY0y/8qQL2JnxzFDqokLO4PnSbtbYpa09xG4zMTu0Z8Kq+bCc9ViRr/6T0/IcnjjxARmdpZ1QVh3pA7lOWUENN7xZsYk9RhlrdL40IVEuXSCT3cgYWEXI23t2hQ1P9sBqp/z48vsTqOuEWVul1Drm55uQdk+vZS9CiYRYiKiseYmrb7EafayJeGIJ691gadH37EjSXrWjmmTMk/x3mvP2qqT0MXTOaaT2BceMB/a9S6vczR4W7Z+wmrUB9QrTE1feTjUy7v24vwyMLf9uo2nd/UX+jmIG8F0UE8Malb4tL3eoMrJsh81bFB3ruEOqmzD2oQTqzmAXBNH3RvnQ72SbYZsfyyUzNBsnytMSp9vXEaNvYTfbcOMLpw1gNVMv1Qb0RRD/UsEq1hHjtLr4acXiuXPCE5IyN+WXKtW6AW1y45zLEKuG0exW6uhKJUliMtut7MN44oHDVlxLVdUhx6xJ+0zuRY8vCabOZSSI70nu5aDkJp47izY/c4vetjLOXpiXczfnk4zFhFIXWehn567iqMIlfb/kBnNJuSERCIAACIAACIAACIAACIDAmCEwLNYTYj4JZadZRrWKna5bw9E69U90YhY6j52X2T6YNWq7N9kn1Orv6T3RAln3hFWv0ejpJXEo58YT/OBQauPo0msauncVseVn90+7pu5bqoh3sKT3Riw0jjipoOTdooLXUq3bOeg09XQG36Ong7Sgudb9UXQNjtvH8mfNpXM8++DlLWDX9YiCJQ7mCr7XRNa1xGzuBmTWaOiSJTdv8RxnHcl1cah1zqk97OSy4aCii68/aQ+foLcEEur74xT4wcGssehcw7F+Fu+Yz55jU/P43o4zbCepXBeE0bF0at5FTFq9nBjosh2CnieJjXFyaSHVPK+XaYMKJvNwq33rxLET7H4ll86QLAoLZ9usXTCfNbKVM5E/sfcN67cug6ZapeL60/Ryp+JKa7vGl2aW/fMfm5KJywZtw0b9V6rSt3IzUxRkZ9z5S+lWvqpBbYrMDLFqdBoNaxebKpU6b0lDHFKCJdSA1WXUNjisuuKJ5znS857MNg43ATGjOCAQeLFAz5mc7YDEbMpxsrW/WDyZpmg7oXPdyR0yGdDXS28wAxKPSCAAAiAAAiAAAiAAAiAAAmOWADvXH3qYIouYyVN/ZTYcqtN0yaTsXF37OXsOcVColPUXoDubLJDwKlX2Zxvr1XX01bebUGY9uIfE6mrRs/tNmulpLZnWlFz/Nxt+IBM/J5cKa9RWPetFwBNczzUp7CWu++39eKHQpmfv3Nx9hURGO2Nu1ZPi2JtLJgpsa3wuJrDhJGYGb0edrdttkHL9n+1OWwu7T2eXvlgxrdgxtt13Q5uBGC8uwWzRom+xEDk84Y3cELx9yXUN09WmbyWKOJkqnFWyMGYikMMQ4xy19xVB1F0Lc5UfGfTKcvU6qcy2GyvrVkMWTIVExfg7SfAJ8Odom3zBFAJWT+0OxDA3nrl0hu5CkZ9TkW111G3fclDKWJuXxp5t5Bh4spx9Rfe5aIqOkRnBLQlZ5M+o1+xXqTWHD9fXaxr0RrPZ0KCuIH/bc8UxGRuyE3tsCoZ6pdXEYS9JMFsusd9O+NKqhvQ1az8RCh3cfGx5+QqJNVDXZdbriRHD3ibC43s5ldfNytPbmzV89Ardjd/xOrFvThU6CSJtzFc4hccYzOa2tjayG9ElNDnnnNgrl95gXAjEZRAAARAAARAAARAAARAAgd8JAY4Z6iWVXCiLEOV+pTW3qOoasqQziQzb/rDCeVK68oUNgnnEbUSlYc82lgaTC7aNURhfWUTPJp0Wo83ToT89zJ3Ob7K709icCBj+eNv2Cq6Fdb+9v5YeVsMR3Hg8T3LHzJAJbu/bPNfweo684RDYfclstHo69BHFest4lmPG3m8q8qrfeJaNxedzQ+CN9yDuMGQxhfkcIckxh+3Ogz/RarvpMrT1HdGlUnzZ3VHCimK9ofbjz40y6+E6RrXV80S6LNZ5nQxv4sVjg+ylkj1Q2K9Gs9X35NIZ8vk2I85F8aSctKa7zrb9NDBzksvyDuAG2Q0nOpH80aj0WBq1qvrT8l0qrcGo/Sg7SW8sKU5l/WyM6rfS05WOTU+ee6DgblIrQ6sa0tesgvkTuRv/tVaHKcbo1NdcnhtEOoXrfuHMhWxH5HyR2PJ4nuzlTrPrTs6Vrr9rI97p+lMA90EABEAABEAABEAABEAABEYpgcFMdPosIl1684pW10WMJnpmppAcmVFHN20VSBfYLcq4USqdymiO69Vfsmcbd5LjdujsTbAgwnEJDJk/RRd8nSfnntT1qcnw37R6iwzfC3Cbhu7U38PsJk4t35UxgBNehr9cA5XI859K7Bs6xqLTkg1pZJdSJzxprPzG4sITBtUulVEeQ2bMdLsZsmMuX3aX86YvRDFyxOxA1BsKQ6e27z2NnKGjNnQZT5CFKgudFhN5JRQ1JvRS6nSxIiLbcUfVgajtEIcnEEljyF/y49riJx/JrtQbv8rL/ShhAP4sw1A1VBfqo8QVXF3nijsi19wG4hM1mJyH0mAGkw/iggAIgAAIgAAIgAAIgAAIjDECw7PvCYUSFCqjC0TM2i/pwTtkx1i6qce1ZMsNu8k22ctDSubhZrLrJ93O4Js6uuOIG7uip4ere/frdCN1dLjEMNH2Rttoc7/oQwxv4rXs3XNGuizFOXQRNwf2Bf21Lt7POycZ2JVB6DgwgY6xurfvcAXB3Gmi591Q5xTO9/8X5YkkErp6guziWT0gW4Gx3anq3CQJ7OYmRtXHVbTujWol3fNEsPAuGecRyN2OMw6FMlrrgqjMeo4ML0O6BwfbEHWfqeiCst8+jBcnZqeyK5vM1vOqSOXEFDR+5xgaWccTGoZUNaSvWRt/pwv3ps6zA2whl4zKeI7Tscps7rB2OvaApH6D2cQpxTnd8DYYZ/m4AgIgAAIgAAIgAAIgAAIgMFYJDJ/1xE1iPTWHnFtM7CaaQ9QwQs4ytu7M2oNPcmswmfaZjxwmcbRfaujGKNdKI+1PqyVbHrAbUph1ukufwfoI2S1JzHodu69DX4Hv+0d2j5JOna7nNBz7+JaWplb6nedqb4i+hPd1T/BH4ulATBJtuuPUnDD8gWzYYoXwPTcE/ckWmqkbKVg/U1SeNCqCXdmj37Wt9GR/mraUpt8Rtjgpp5Q95rgniGLYU4k71VV7DcSI8ul+I3FNiljmdNQLm4Ccz9LCYb8wGk6zu5zyBN6sPsPM0Et2J6uOuaE07zMnAxCr2CUHujpHVVFa6bj3sKPAyULhZPaa8exANBhS1bj5iqxN5Hu6pw9H6Nk6h+79MyKh7d8tHMXsMliPpuJ5C62HWNG8rb5CZpOzHuY2A9keZSBhmBvMQLJEHBAAARAAARAAARAAARAAgTFBYPisJ+Rk4nDWVGKsP/yNVlNPZrk88a09xxDbaPFC2JN0ztXXfaPX1OvIVd48BwuLUDqH+KcwjEFVdZDL9NGuqdil1nFMuewqxEsy9yZqEaC72DrJ0L+jCAyYNu3m+ELWECCeF0ytGGZtHesQ4xCIE431SB5xMLX7DGcgng70zb9ZU816YzgFXXWp8uglnmRLhdlB4Dq1x6BW04OhmcmSudOd8na4MF6WnGg7VSl3Xa6mD/idmvzHc1TtRuJepO/qbZSZGhu7gFwxq5W1ump22Y5vFGtQ4Qo/aQ43OF3vIucPUZV5029mz39mmGFmyJevSrSe6FTxwvp+7UTm1jYjp7+Sk+LE7lScviw+KT3zyZzyvs1PrTrrMTPEQDSg9jakqhFJglnTYYta9T2H0mwlUvuaJJjtkiMQqLHVqYcyJzTan2hmwuki2348bvyJ1i1v/mNg7Wf2wazZr+6jSfaKO8wNxlEVfAcBEAABEAABEAABEAABEBirBIbRekLMJ5HUfNLVptlfdZgcGOwmlNJ1Or2DlzR0No/E0e6vYGfCPMkCq1vDxWji2FjrDLY0r5CdLNsHo+qVzPS1isWL0pV9TZhEMUvY2X5L6bYyfS8BZm3phxozmRPeGGE9pZV3+11RPiSKWf3eNrrayD506cuLyukEcrwkNtqpLL3jDvqbl+yuhXRuaFYX5iqd7CcnCrOfzEyJDYsvoDamfgPdp7bLfLbXzrbdEL4v3faRo3zzV9uK2VU4wsUuLRj2mYqSstKCKVHjV/lJidkVXAfrmk9UZCcm5X5FKoYnfmhD2kwHy4gg6m45MVSZ1aXZ/6DLdkTRCa6MJ+R449LCCgeljcodVa1UKdHt3edbDytDIpkXnLYhid2ttUVJypLPZVCjGpj16ncy45PzqVnKje/tdPiSPTr2szA2XkaNdJ3qXGJd4vRyIrE6tcUb8mi1uAlkCx2PBHaSabswlKohh0XTTZ3NmtI3aY30Cu3Kwg+05ArvJnnsLFeZD/n66SrHHkobSDkLVigNF3dn4G31kDKfOKzpTc98vDjvo959nE1j27mZdAr7Tj3cDWbI5YcAEAABEAABEAABEAABEACB0UFgOK0n5EjiCDrjM2vLSun7ZB9pKMdmqELprSI2zrt0usYTRyxwOu1lemLWfSIqSJ2btDq3ol5PjR3kYJIGVWGGIr2EWBN4kvtXcy/56MYuvC8jcTox0xhVG+9PeaNCc9JgbDfo1KU5q5Pyj1LLTswjibatasfLUv8sJ/t6mBsKU9bkKhts7h7GE6rCx1dlV7Na/ikjYfjXLvDlf06ju3506UvXJ6UXqXTtrK2InGX7UY4iMUdNvDOmyNPiCa7+wh8EE9mUakK+xWBo0elJWjJlJxCIk0aXUflsUvo7ar11GtlpIPKTUgvpwqgp8oxUlxaMXrnyJKn5WxJYlw/j0eL0JYuWrc7Mfae0QqlSVSsrSvKz05aFLU0vZhdsie7bUvRnjsk/2SI2itR2p4Ycbs24USuZy4L5iydWP5OUVaq2rjrqMuoqc1M2VJATghgveeI9PUyGj6FNFZ7k8a1b7qMGFHKAVK4iLFyRnvNWqbJaTYJKWVH6Tn42Md6Fhis2lGrprrfihBdLNizs301EcHfWc3JqgDPWFyZFLU56Or94l0pdr9Ud12mPatTKisJN6fF3xGdXU5OR4I6MDOvJRC4B2d0YStXMXJ11N9VK/1F60oZSzWm2BZIDodXFmQ+sLyVLu9yECU+sdt7UeSB6DSSOcLq39sVVtPFbjTedelVBSuY7rFdacGJiSI8BjieRsoc4d6pyn8xVHtWTHXDIYih1WU7SA7mGxRxmOJtNy6wpf0+tNxgMJ/S08TDD3mAGUkrEAQEQAAEQAAEQAAEQAAEQGPUEnM4dGVKJBNJwCU+lNhuoAYI/L0JCXms7BTHxSHldS+YzdKJ2k1R6o1MMYobJ3LrB+Ej2RzrD/vz0/fnkBBYa6OSHBL5Y8VLBI6yDQB9hvCTrzQ1tydkVJ/TKV9OVr9pFJS/21219KfrijFcY/1JBqzHldTXJLmVpPjkvlceYu904aHZbH+ewBfSR+UBvTU3ckteWkk5cHLQVG5MqNtKzZrqLyfB8ZRn5L3GeSOMof3qE7MZ83QnGoMyOV2aTiWdM3tdbonnEZSYr/yXjw+tLj2srNigqNjC88TzbJrgkEpH/2ksxUxyFufw+Rb7pf8okm7JzP9AYugza6lLy5xhZIE54bFPWfWJuc8J4aUK0sLSIegrwgmNjOFYMmVlLGfF3SHx1Ve0jT2cq3s9kxvN4pDastc8TJTz/XIK9zsPFsKckbkJ5TkmZJDf7FWpN0KsrCsmfYzmJigJx9MqMx5Jl7NYhAwjCmNz3eFMynylRG4w6VUmuqoQrkZtAcv9fN2XGCLn6DlcC9tqlVw1f9uzWDT8/kqPUa4g3zTuZpIXQtm+lPV4U89TWrL7tlC51GsgNHn9JVsb32evZxk+zJjYRa7op8g0vJvccdk6uCZZlrP6HJrfeSDspGRO6g2BBVtE677xK2hRtarO3hOQkr/FqTadR/aoinHR/nnRDbUkiaTnD3mB6VMEHEAABEAABEAABEAABEACBsUtgeK0nZMYSKuap2Y0MeL1O0rEnODNUOrlQz67KEHGdVUxvkEly7i7p3aXFH1TR9/OtRrM7X+ArFEtkUfErY6X9r5SgQqYmbCmX3Ple8Q6lWkvePJ9j+D4i8TxZ7P2rExz3MOFLHi35p6xiW/HHqkNa3WmD2cLjTxWR7GIHnp19GQf8mS/NKKmKqniPZKyxKsnz8hb6B0kj7kpUyEXcRggn6TxJxmubjC/kV2n0ZrJhhq8owLt7Sj81ZlN5cNT7xTv2qBr+pdcbzTy+QDhdMjj5PRkSV4ucstiH1eUVVbWHNA3f6tuMRrMbXzBZKBKLJeFRsTEyET0yxlXgSZbIRe8QtxeeJDaW+jw4hC4zmbqTa7zx3uL7CsqmFue9W07AtJmJsYLWXcLDaQkzHaEMD8NemvDF8RvKlqVp9pRXqepIxehOt5HTYXg8Pt9HKLpJLJkXESGXSaYM0G7SLZonlD9VIntArdxVW0Po6fRtPxmMxCGIVInAWygKEs8LjYqOlU4dpFir+EuuGnLQT8EuaWVx8a5a9Tc6vYE2EaGvOGhB1L2JCbJLU8axXl1/d/eNyd3lK83bVqoiZ5kb3Hh8X5FElrD6kUSnPZPEqf+vRPjmth3Vai1xJWP4Qn+xdMnq1CSZ0F3FY0eyHpMn/eKf/Orf2rJfL1efNDLjvYUzxMLuljkCDcZ1AXEHBEAABEAABEAABEAABEBgTBD4rwsXLlgLUlNTExkZOSYKhUJcuQQMJUlhT6vMfPmW2oIYzrOKr1zdodnwETBWJM1PV5kZ8WN7dj06gLVpw5czJIEACIAACIAACIAACIAACIDAAAnY20mGdd+TAeaPaL9bAmbNtrfJlJkRRt8rh+nkd9sMUHAQAAEQAAEQAAEQAAEQAAEQ+q5RXgAAIABJREFUGG0EYD0ZbTU2ivU1a17PLj5BDzBKXCW7pNUpo7jwUB0EQAAEQAAEQAAEQAAEQAAEQGD0EhjmfU9GLwhoPlIEusxG4m1i0Fa9nZP7HjmBmie+PyvRf6Ryg1wQAAEQAAEQAAEQAAEQAAEQAAEQGHYCsJ4MO1II7E3g8+ywpFLrcbTkhkCW9epjI3OAEcCDAAiAAAiAAAiAAAiAAAiAAAiAwMgQgPVkZLhCag8BHt+bzyPnuAimiiNiV6c+JBvcWbwgCQIgAAIgAAIgAAIgAAIgAAIgAAKXmwCsJ5e7BsZ8/tKsPV9njflSooCDI8CPKWqMGVwSxAYBEAABEAABEAABEAABEACBy0cAu8ZePvbIGQRAAARAAARAAARAAARAAARAAARAYDQQgPVkNNQSdAQBEAABEAABEAABEAABEAABEAABELh8BGA9uXzskTMIgAAIgAAIgAAIgAAIgAAIgAAIgMBoIADryWioJegIAiAAAiAAAiAAAiAAAiAAAiAAAiBw+QjAenL52CNnEAABEAABEAABEAABEAABEAABEACB0UAA1pPRUEvQEQRAAARAAARAAARAAARAAARAAARA4PIRgPXk8rFHziAAAiAAAiAAAiAAAiAAAiAAAiAAAqOBAKwno6GWoCMIgAAIgAAIgAAIgAAIgAAIgAAIgMDlIwDryeVjj5xBAARAAARAAARAAARAAARAAARAAARGAwFYT0ZDLUFHEAABEAABEAABEAABEAABEAABEACBy0cA1pPLxx45gwAIgAAIgAAIgAAIgAAIgAAIgAAIjAYCsJ6MhlqCjiAAAiAAAiAAAiAAAiAAAiAAAiAAApePAKwnl489cgYBEAABEAABEAABEAABEAABEAABEBgNBGA9GQ21BB1BAARAAARAAARAAARAAARAAARAAAQuHwFYTy4fe+QMAiAAAiAAAiAAAiAAAiAAAiAAAiAwGgiMFuuJLj8uUFFicI3URYT20qSbl+Ufd51ucHdc5NKlyYkITK80Owo7URh/s6L4NMMMsxqO+Qzie0tF5tI5gTfHF54YRKLLFVWzMTxwrdIJq506XbritMVzAueklBkvj5KuarY6fU5YtrpreKpe+/LiwJQKpxK6aI0XQegLFYHxRfqRJGPWFCjCbw6c86RqJHO54mSrnpwTvkHdl1o9fb+vSIO61291D0pa/5H77339y7gCY/SH0VWPvnKKsj9z/vxMFRlbRiYYy5ICl+ZrL0G+q+fg0PXsGU6HLuq3kXDlt6LfhgNyAQEQAAEQAIExR2DYrCdmdU54wLT5T6r6muuOenzChOdLNiwWjN5y6Pe8W25JKKotSfQfvYWw0/xIebGKv3rnvi1386/Q8vAjst7eFDN1JLS7Alpjl7r0ba3/X/bse142EiUc2zL1qlLVyYEXcQDVfUJZur8PE/PA86IxxYlbS/4s5Q0u0ZUa+yKZAWC8UgvxO9PLqClTaq2/JyRpRa8li90uJwC9qjBz5bLwuYGBgXPmRyky31IbLsHANPASGLWlm1LiF82fEziNZLhYkZ5fre/+cWWsSAmc32O97dRVkJgRcwJ7YqpcDwINucsCptEwd/gMcJ3aijKNk3F/4EVFTBAAARAAARAYTQSGy3piVn+k5EfHCPfuULaPpvIPUleeIEgiGsXGE8Z41swIRWIBb4xMis4Zz/JE4pv4vMv6w7qvVuQmEN0iFo4I7iugNVrMZ895i4KE/BEpYF9cR/89g6oot6p54OXov7q1FXmF+4fN1Yg3VSzxv1KNkgPHxsa0I9M/xkHKRvSRIWBUbXv54xNWg4GXSBIsvIxtUf9+SnxKsT4occPbu3aVF730gFj/dlL8k0rXVoqhMWlXZSfE56gnRj1WUPLJnl3FLyXPNLybFp/+kXOGRtXGVc+ovVe+suvAgcYDVUUZc0jMFJe+pTetLqrduydbNpwDtqY0t1RzdmglRmoQAAEQAAEQGC0Ehsl60q7csZcf9XBalK/6Y85fFCeVOUmL598cGHjz/MVJOUrbG1ej5q30+DDyzmTOxYtdeuWmpGWh5A1P4PylSbnOb1EM6vy0ZeEkERG1skcUC9yozk+hucyJUOQonWYRLarclGXkVU7g3PD4jEKNs5VHlTk/Kqf0/UzF0vD5c8MVr6p16vz0hGXh8+cvTitmX4LZeX2bdaVZ8USNOWHxme/rLnrctChzVobPuXnO/KUphfVcvyjMuoqNhAVZPkP0zy5tMDPE4XnR/HTbChVj6erAwNh8nfW9FnlTNDdd2ckY6wvTE0hu06jyWaXaTra81ZlziMIFSeFzluU20PJrSzIV5B0UzT0pp7LnVRUbmUwhXl2meEtrVmXPn6so1JQmzVHkl+XGh85RvENYmXVl2YpF8+mbtbBl6W/ZXiVpXl48/8niio2KZeQlWGh8tlJHs4hdPH9+eNIb3a+bLqlE5hMVtibBVofaWh2OJbJpTtTTvhE/f2m2yr7W9meHryk1tJemzGZX7nRqS7MUi0kJCFhFJgVLAvGg7lXMHoH0A2kv6XGksmiRU95QWd8lskUuVb6cEr+UFlOxsbsJum54Z48UpseSjOeEx2WWHu/tfdXjwk3eF86Jz1cWZ66MXxw2f/7S9GKrhoxRU5S+jKSeuzjpZWXFhvD5WZxLQs5qCkjjppkoNllVsmuNPa0uLr1YVaiYoyhssZWUZ24ozlhGux5pqB85dQqGUW8Mn59RXPE0qWLa0pPeUHe/ReRsTvrCuDkpb5VmL50z56GnHg4ljVNXnDiHOJ2R/Aykh8V283y1m+cm2oSK1y5mlzLpCxPmpBQpc1MIBNJK00uP6yo2JMVHhc8Pi8+pts4NuJsiw3bPio+yk+LYLrk6v1tRrmGkv75Aa5+zT7nMxdxdTeGKDRV6ztfOLvo+V0b64qRFOfsNpWmB858kPd9FkXu11p7qZhm+oypcy1ZZd7Vq31gWv1Wre0cxZ1GOhqjHOdy5Kh3X+GxbudNekTI3PHt/T6vWFysCF7+sddV9eqncM0hGKLI/UubGzknZxcpxHjHYZNxjAhHytGIx+84/PDYln3WuMSvT5yzKLi3JpC1n/vxla4ttQyLX46M3Gbte47pH9yoF+eI0jHAOHQwXRpfDMnfudv0rrYLAon1qKR2WyQPFWnaqmxvTpsxRLKJDPekIHO/9uTgwDHfLIfKM+3OTothHEtcj10qDu8icz8Eubf7SwKSe1ZTH85fdnFTKDt3mk93Dfmh8epFNcY4O0qlMj1ivNCjXh85Jet/A2K3c4RxkXA8OdjXJ+YBwOSzbJTRU5LysFq3bXpKZIJspEk2XyO7LKnozI9ii0xnp6shlr9LuYA26gmWBCYXWcZbzucCJUdNrkDRr8nNKuxIKijclR0vE/iLRTFlCZlFRdqyoq63304VhunR1h9okiRkxxLrE5/GniOXrtmx5dqWY5xjRpp8bX+ArFAq6LVGnixV2y3gNJYrAuHydi/5lVmWGz02p6HkEkzoiS8jeeCp8TbG+Pnfx3Hi6RJq7azu2aju4+AgCIAACIAACo43Ahe5QXV3d83mwH9reWzF7eV7ThQuntq+Yfc+2U47pz5anzl70VG2b6cKFc6dqn10aklp+9sKFtg/XhMjW7tCeNZ1tKl+3aAYroe0fD86+fe0OnemC5eyxtx8MCVlbRaJeaMpbPmPFe20XLpytejxk9oPbjv1ERZU/Hjb7wR3kqjXCbNmavLo2k+ns4a0rZkvWlJM4P+14ULw079sLFyzH8mJC4v5GbhMZx3akhoX8mRVsHz5fHyIOeXD7MRLF9PkzYTNCFq3bccpC81wrnb12N7nco8aFpjfjZsjWV+lNF0xttS+uCBHPYCO07VgzO2TNu03nSNaH85LDZs9Y8W6rnRoXTHXPLgp5cNthopuF6hkie6bunKl2XciiFw9TXUy162WLlsptpaJgyUdL3QuyGVblTa21zyyZEbeVoLpwoXZ9iCRsxfNVTW1nTZYLZ3evpTy/JcUiOr0QJ1map3Uo4YVjryydkbyDFvxs+RpxyKI1m+v0Z88Sxb/NWype9Mxnp0wW09lDeXGzw144RNMe+9uiGSErNtdRmcdeXzpDErbmTZZP3QuLxGzRLq1EpsOb5bOXPlt7iq2Od5NDSJOg9di7RIefD5vx5yqKdffasNvX7PjesTgXPn8mRLK+ltTRhbO1fwmbvYLUPwHbVvdK3GzZM7WkFhyKaS9A/+6DIUuf2U1VMH1ftV4+e8V7tOXSIkuWvvAZ26x02+LEi17QUPncDY82sNkhK16oJS3hbBNpVzNWsO3/s7Wzb3+mjijW0wLPEeCzw9ZsO0a0ItquC5u9hvaCCxpCcukLpHPQ9rBmUciMkKfq7NW0qRSydO32w23nTG2fv0BqilWppzW27UieHZL87rGztCDP3BMy21Y1p7atmBFyx5q8z0/ZOkXI+lpS2t6BQiZVX0XLa/p22wpJmDWSi+Z0ats9M0KWrN12qO3sOdL4q9bYlGFZzQ5b+2ET5akrXyubveLtbp63xz3zwbG2n8gdqtLsGDY3y6l3E2fMlq7YfIjt4VvjZsTkNRFiLpriBbZ7rnjlMI197vALpBdsp/I5hxEXytuV3FWfcpGLrZo+J3qbTlU8s1QyI+RZh2py0fddZWSpe0Y6e30tq5KrItvpa1fdLEP5+h3f07ps+4CMONYaM5WnzrANI66GO+7ScY/P3b2PdKHZYc93F7b13RXipZvJwOKi+9irzA6Sa8uJnmTIfXxpyOwZa+ggyTkGksvcY8Kpt8nDZbN1wGz6YO0i0q2IDNK/ZswmQ6K1MWyOmbHob8coDe7Hhx2Zfh8lPR3WviQOwwh32bkxumiKLsYT0kHs+9f3pD8uemZ309lzZ4+9tyZM8uAOMuSSSpwdEveXHcd+Mpn0VevJo4HtCPbBBQcXLedc7Xrp7BVbD58lDxHtu2vvmD1jSd4xOqjaBe4iu3gOkua3ZMaDH3Q/YGnzfnAHfeQd27yE1topMo4dylshCVn/2dkLrjqIdjNJxQ6RdsOpi0HG1eBgVwAXDwhXw7J9yoo1syVrq+i4zREo6jteOGzDRcZk8hxpY4d9rueCC4z0odMzSFoOv3BH9yOeI0NyiTTHnvGHDjuzySO61Wlk505Lr5p2r51hfW7S7hy3TWeLSn5vWH+Gcfcv0+EXZLMf/IB9MhIhVWtD2M5IeugM268+F13boVW7Vgx3QAAEQAAEQODKJGBvJxkW3xNd6Yda8ZIYEcMIo6Mkx8srqB+EfTCfNZp51/LpcpHxQln2rgN5MXzGULtLNTFmdUIQeWMiilm3acsqKa+LEdy9ZV/5Swn+PMaNL46JEp87oSO7rl4MfPnz/9yXlyz2oqLk0cGMTmtz02AY3oKVyVKyKIUvSVopY9Q1B+1ev9SXl56Wrv4zuc0wfHHCwzET936s4liqK7krXkyi8CRzg9zMEnmskCwJ4UvmiswtLW12ahjU+7WimES5L4/hCWQPx4qt9zrVtWpelCJRNJ5hvCTJ9zntGmBW76g0xz6SLCH6uxE9V0eYq8o1PIlU0nZUS19YHT+sFSYkiFs0R4jyZo1GJ5onEbhJMz48UPQ4VZ43RRZ7q7fuX6xHszvDdPpGPSAXCcjSFUNVmUqYkJYwnbxWIjqlrQzRl++++E7MHiL9TNIyZv/o1VJf8sqKYaYnl3xelrVQyHPj8W+RR/i3ab/tdhIWRSVIqUxxsJhv9o+4h+Uze64/Y9C3EhmXVKKjVRWnJYl/ltElLXxxYlKUh+rTWvJSq1eJbCqb6/NTNrYkvLYloY/dQzqJ05MpKonUPwErkD68WmasqiINwKGYdhR0u8rV4sSMaKoCb6o8NUGsqVTZfDNujE1YyC7QulEi8dHrWwhs1w2vi5HclyYjLYEvSnhA7v1NndrZvbo7X2l8opi0DdKkQvzNzU3EhUGrUuslCatlAh5pDw+lyUnDoDo7hSlRaUkSwXieQBolFVhV6o5DWt2hiVFJiWI+LUjGf0sYO88Ij/CVqQuEtFMsjhCd0+s5dSPlvYOWlzc9IVbSRto2eeftsjldzTDB9ybeIuCPJ+QuBt2ecu30xIy7RZSnf0zacqFmd7cDGF+acLdY4GWL7y1LkNNqEkpmCs0+EbG30Behoplifoueesz00RQZcewDEhp7vCQ0iKdvJtE5hxHXyvfo66pP0QjOuXRX0wKiN0+4LDnW367k1o+u+n5fGXUL6avIThmxFwjDhKmUp2DeXI5q7Wu4cy4d5/jcky9ftlh6dm8t9WehrhC1Wv+o2JuYvrqPLalBvVcrWr46huhJhtzHYkVmhmrMPWIwjIsxwWw0mt08+KTXuPFF8Vv27NvQPaqKYxPpwEQaQ8ISsX6/irwz7+/x0VMo8sF1j7aPZf3cexhxUXZOjK6aouvc7fqXrrJKMyMxOVrEH88XK5579dl7bXt/WAjPBLEXj+cri5JYO0IvpfvgwNFyNLW1ndJ7/yThuzH8oMSVC72dAbgosovnoHN665X68ooW6cqHpUIyjt2SvOG1v0YJSbW6eLpxCelrkOHqthdluHpAsDGch2X7zNtaWsw3BvjTcZsjCOR3SX9SVtWzt06oar+XxFp3RuN6LrjAyKbtGSQt5MHK850u4siM45IgIXtLIq8i6XbimZWUviG/tFpr5PSM40jb9yWn/sWTxEZ7aypr2WeIWV2tnrg4ttdPHFddm0R38dToWwPcBQEQAAEQAIErkADnRG2Qeh4tLz8hTowmv4MYZkpU1Lzcwg81qUESOymC2JTkqnRFWLVEuiA0YnFMrFTI69Lr9IyvNRWJKpDIo9kURl35y3ml6hPUstFlauvyFlvsJJGH9vdVua+Wqr81mIldo/Os0S2257bIj0xh2eDuKxSYNT9etI4Y9fo2gzIlsOKiLJ6EziQd1lLzvQXXslF4xNTjzZ9slcfjEU5ddraYLj0xHAhi2CKTwBeKJjPUuGJoM1iEc31sl3lCobdb77USp3UtRn1FwrRCWxTyD0922si/da540+GGzkTmkIaZmSW7vq70kJaRMYePTJTcT35FmdvU23LeVjacNhOfbVN7m3lBtzLjhUJrdpSnUaNaPO3li6L5d5Pppc2wc/HqxU/eQt/u8ncZNe+/sG13fQth5sacPc2IY0y2iF4Tbb+m3XgePG9vawpix3Ena44Y5pJKZPxe3+YlEvXAFwp9GY2hlc2wp0TW7Fs/Xr9WZYwpSQ3uNVd3LI6BmDiEETd2x+GRBmDU/NvaAOyKaZespVlHXJHnTMu8eG2qmCzeoSK8vbsnEDy6o4qF0Oa5bHhu3qIbu0syxduXUXNbKGg23gJvm4a0fXUxRK6xVc+bImRNNYS86OabeKUXFbL7dL3wokpEBlWpO9BWJ5h7ve0rX3yz0K2u56bgel/bZ5ql2dzFGD9KYVeLkDLJt9QV0NtCoYgUkwa+cAq/7bSBRHPRnILY6N0dzSaa/tPSrOcJRT0TL6GvL0OsIV1sD/MRUitkdxBMtuEi7YmZzLcl8eB5dJFdeUhHc90Ur+1uftYOSrok5zDSpSnuvy+47lPOuZCeTapJ0F1NjLfQeScbl33fdUY9RDiL3KXNXRKfT82kPNFDJXvW9RqqyEBlS+1mq9aLfEmjcjXckUgcpeMan+3E8WV3Sjfm1TZkSWYaavdohFFZpLWoXHSfixVNBsk2hiwTsEnyEZMdo+hSRhcjhtGNe0wQ3ZOW8Nn6ZWHlkgWyCFlUbDSxJrMi+WQBgk22t4+Ajr1djKizn8eHXbH6epTYR+v+fHEYcTF0cGF0PSy7HE/s+hfJiAwO3QQFkmVyqsy3bCVOturF4xEjpv2zyXrZNQfnlmM8rTd6iXq6tPBGX2a/IwDuIv/q4jnomNr2nTZLL6Gv9QlLWvUC+salr6ebkxxXgwxFxNGw7dL3+YBwHpZ75dz7F4ijUl6yu2Qv5JSrM26RtlVX6UJWRpFmSd4EcD0XvF30GvpU6BkkrbXJPnRoXl2q9JAk24lrPOmGz0oSp/RWYYoso2hv2mmtWq05rKkrfjovhx/7XOGmmK5CxZIcNR1SBQnbDmySOSrez3eu/iWNjRWWlFe1JCROVlftnyh/0/5nnsuubc2I86nRjw64DQIgAAIgAAJXHoGhW0/M6g8rdOfacu4IzLEWr8ts1paqHpfI7N7V8KUZJftWavfXqlRVhWl5xfcUlazjnAwblRtTcg0riz4sot4ZZLX57cW9oJGjfVKzNQsLSvLIy3p244+n7e7bzdA4UPsmltRukP7/7N0PXBtlnj/wcWF3uu1d2Lq/5FqPXGsZ24VUhdTKhutCaLeE7QmxilFfmKoUbo/Cuak5LUZtpNYI9hfLulBWSVnb2LVGzi6gXYJbSd2+yGltULeDWoPb3uS0P+K2Ml7ZjpLt75kEKH8S/rWUUj7z6kth5pnnz/uZJMw3z/PMyGnCnDamXQPuZUdLH6UwNjUWLR6cLKBSSh1H2nnB41PkMPIfKiinhztOeQRlMbldPWbb8LBT8czO5uBACU9ZWi6JioS28x1IbqJo1ZNv78ntu6UYrSLkuBgVCm7c3k2Gl2njrxv1CeQmzWu7PatlDKf3JplAi46Hyz1UmcGXpPCndmGNSni10n53rX6EsSfh8uvf19/MQamiKTqr+v1faoZciGTcRZhtrBeemNmsMOePedeFvyJHK0qyakvjG0YxVVQMiYWRb+xJvKx/I3GT4BbpcuLEg2OopPiK6E8WPQ6SC7oUe5sRqfK9h8X/jfCaGpAq4o8Do1cREwUPjKGg8E2OYgqeb9QG31noueT2MCg/9i3s290X4c8P8/5cojqfdC4Jn2yu+QNrjGWbPmAyH2XEQxFePkMKGPDiIp3St4V7x+D3hasbuYTmaUrr1fnvuVwtLU3P5lbai/fYi4Ih4QEZ9t7fjvbxMbCEkV/R4epy/m0kUtvDfMyRgX3h3pZHLn3Q60vou40OV6fw+8bjMDyH4bEYkiZskwOepsGnh/8cHDn6MIYXyPA6hvYMepOJlOiC98sWxtIdR9t56ny4P5QneasU3zkl6qx0i6ne/Uis9yCnvkt9Psx5/n2173MhLCNZkkwU7nuTpOOYWMF1zEtpgpd5lOpRR3MxKauzvuTfPJFaQ89TqNeSf3rjI6xVn2Pdqc1+TFdWrxbfz6OomPmRzhth//DXFxkYmK1dXFPfzOkWNbmv1uwQY+mDt3AvbSoYNR3Lp8bQ3PA7BCAAAQhA4PITuOCZO7zrlf1dmifqmt9o7v1XT770aBoyK0Y4TabuSBWrdEVP1jY+o+18td5DHv0ip3xe8d5N3PwexwsN7NfeIx/yymy9GDoh30l9zHb03sv1yZ1kWb9Ce3cwdELu8tt7H2gYOuw77utN1+Pj/LR03vk/Y8j3KLJTXm9wyKm4CX7/wPVH+3aP9f9RUjI4wc/13c+c6psQMZd8Iyx+HddbSHBqxqBtHsPQ3Kfe/kExgv9k8OcoRUqS4Dlc38rGKW+kqcXLFNwR138d4W5IUdIU/+ERr5TMdgh93+1n28VhLkO3KLl8oejZ//crT0YQDE0U8feODzzUj+8Mhk7IN9cdR49HTDn0wIRaJHaHnyy515cZmYlChgsN+UoteJBeZay2VpRqOqwmW/8UraF1IL/PI8MhOO54X4vFCV8S+T8O+rp+yFmxCxmqw3s+z9P+kbxGuvA6uf71eU+SuSdS6Xj+VJVIZcKXnb0XZsB79JOxd1pfg8Srjnzz3vsr/8nRoVfdkJZLpMxisvYhw8T1LR7IcX2n+DtP8rJ5ZBrRuC+n2GsZgfP2X5oceTGSbxvHH6wc36UYFe5tRBi98mN6TQ1wk5Ju8vcPKuK8x4ddgxFe+2MpKEKTacmCYDctZuSh97thZUbaMd63uzDvz4PeuCRqjarzkMtzoMUTl5kdJxY7+suHvEnOpXwn+66IL8hbd7C+Ed4xIr4niFN3aPlNGv1DZXteKyUzQ+tDM0N5r/dULwB30kfNJ6+C0T4+BnqN9IqO5Nq7P1LbwzCS10DYt+WxlS6+po73f8xwrl02Z8codRMPB8bjQO7+58kkp4PTE4NbcELc0C18kyN9DkaRibeU0BdhFE51hi6CIV3sddrsh/xjeYH012bibzLj/4DoL1Ty45+poly7dw36Y0Nor8pNz3MEqWiVVkO7m/Y1tPxZ9bNV/R86YT4XwjMOwY5SZGoY76s1fevv01KycCx5H5DHDO0V8jtZhffh/vWzg8dnM0sX0l2nyHw3iTx0YhwjnS2QRccLq3uDLzzPU3OCwZHBI9c6+z9FyKHhry/xzVyuvU3pPdDgaHZL/0U79BnSEV7aYaqNXRCAAAQgAIFpK3Ch0RN/8+9cUZl3rlXIF8h7/y3W3pkR49rX1B+pIDNkLdrVhbUe8e40wLPtnDCfjLmWpmepu/ZV2t7z86e9zu0l5Ck59GwpmZ/Q4XGTMdjk+QvWvawkqtM/cJl5cosSzR1pI2ELgXNZKw9Tku5Of99NeJdrt+1P5BeB3fOKK1q9kgQe+rckrS7OY9/W4O0m833IYz5yV//CPs4vcwd2sly9gvE22BtOCFQ359zhYMmkCHJcokq/WWjaY2d5SjjprnylbeC3+uL55O+s7BjnDquL/K1KKPYYcm7bHHrGs1KVxNXbPVcvEyNHtEJ5bbvj5XZGFVxxZJ5ccpr1kDH8Ab/7hadazsiozt6/RwfUSZK5VnOWPLJUXHVD8L9XVagljzwc6624dL5MaG8VH4FwmnWU/c539YDb8ZEv7gm1iErSZi/02Ktc4iVx2lNV3XR21a0DvrMbUCT5Q5x8uVdSqv28smRnX6xteJVo9Z1rZjXVBh+lJPjdO3a7pdrBc7KHnsNotMovdltfEmeJCz6XJX913gvhx52IZ4544blfqQyqcw67s0uZrgrG/sa4KVQq2buO3e/x4oxdqE7cAAAgAElEQVSVnTWuU+MfuiJJSrmx02l3kBiO4HNa97aP+/nNviZbgxh34927He/K1KvId57jvpyYNVplh8PaKEaS+GOOyn2cKktDhkyMdxvnpRjubYQevfJje02drzuzQi3zOGrIBUtetnW2JnLXNOQb9Qiv/REKInPfuBMc3y2Ms8kRRcncrM4vfH5eEMb1dhf+/XlQKZK0nyl9LdZ9HnJjF+rTMbx85CqV3Ftvd5GFq7q9jufqfaH340jvGOHfE/gG4+oskyMYaRX8H5AAeN8Eqihv/fMu8Wo76bLXexm1momK+PFxXqa/WSO+oiMSBw+Eb3t4xgiX4thKZzIylR32yr0sz/vZvVbzc61dc0auWvBoZIfwJ9+QrqLdr+z0kAvH32arORgcKTB4C99kKsLnYHBqm/dw8JE65KE8r7p6P4eSMrNj3fZnnd7TPPmEsmyuOXKGjvgCEcdi+D89QSp1vioTf5MZ/wfE+VKl2aaHVNyOvNxSu6vN6z3mce0x595f6U9blxkbTEUu6TV007M1XjKJZ8CQ2+GfCxEYh2BTivWm/Lkug76wqtHNnuA4UuJea+HPK71LUsjiVoM2qVRoqzQYrA3vef1E1ce6dpkrnbRaM/CvH7GKUgnvtlksTtbb1lD5klu2Il1JoiFXy+VXc0cOB/8UOul0HBjwxczw11ewYHGdl49rrAekmWuCY9DIWEsSh/FzHeQbsuiIf96EUuK/EIAABCAAgStA4EKjJ037XDFrdKoBfzGIf0rcli1z19f3PpZY3GF8tkDStHE1eerkjatLDjOmZ/LJtxbSteUV6yX1D65OTsmx+tTlzxYxUXLtxuK4w5tSlyVnlR5d9uD24jUxTcYc63t91BKNsUTl25ZBHu+6sVleYDVpY92bbzO7SEykh1befWvXcznJSxNz7YLO8mj2wJvYKEVRVYWmuyaXPAs5JbeG11Y8o5/ArV1/lzP3lpmU7FP/khifubFlyTpxBUfx21qyhNuWzL/YcpPjU/N3x9ypU0STr+AGXie0qmRn+XKv5fbE+BtTN9TT+ue2iAuFEqTlKcwJr3CDMvgniVRxvYTtkKQsF6fh0Kr8R7OEmtsSE9PzXqHWlT+hU56ovOcXDefjU8ESJGu2VD8gbzWtJo/2XP1IK/PQDtOwVWuDCcNsintM+qudeSmJyXorl7GlbL26a1dhbm3kaMX5PCbSIjLWpriqXPWZ5RZySfx0Y2tsca1ZM9JAEYna+KSW31FS1fuU3+FNoFWP7DAtai35KXn07y3mY4otVcZRWr9AX1G5TtKwIfXG+MTbLd7l5Tv+lUQNImyRLryvyYBkRpcV88r9yYnLsqq+UG8xj++6olcUl94rcf48WbwsA7fqV4zEEKFycp25NOk4eWZkYsaDrYo83bgvbJU2hTVnLYtPLnZKi8pCcOO+nIinVSvYyAuQXPwO+u7q8rvGXRHSwPFeiuHeRkZ/LYzxNdUPTquKy4piXcZU0ssWNkW/RjZwad5gsvCv/YgFRSkz1yq82zKyHq6XTfzVN/CKoFVrtPKDm1ZrzW5hPG93Ed6fB11sZO2T5V63h8nM6OvTMbx8FOvLjIx700/jE7Vmr7pAXCpY3CK8Y4R/T5Bkm8t1gn19avChvf/Xq7KU6UO3rFena5mmjeQ5uz/d5FGYytaTF2+kj48BMuSTIrRFekX3JxjU/sG/hG17BMbwr6Mxlh6XX2HN5l/KS05OzXtJyLaW68IN0BtW00gOwxL2UTxq0VGv5SUvS879Vded96npnr5Fr/rPCNtkEkgK/zko0TxgUnk3r07NyMqrFNaIn4NitDFKSd72lSesOT9JTn2gSfLz6i0aScQXSJxae3On7e7VebsGfAxN/E1m/B8QA7Tkd1XXVRcwHfZN92dlaPPMDk65cU/dk+cD/gqyIEh3TOaavs8c0tiwnwsRGId2DJlKZ68rX0W3PGfI+Wlaxt2FlkZOrq9+87dFykF/a5GRJqpSe23BPE/NgzmpNyem3pJnaT6rfmZP+ZqhE3jld5WV3yFxmXKy9E954ozbS9TBsSeq/Ie0/PM5yauzcrYeTb+bdH1fXcK8voKHyDovKyhhiVbTN5FWuiJTQzkKf5pb2RbhpT20efgdAhCAAAQgMI0FriKPBQpV/6233lq5cuU0bgqqDoFpKkC+Xe2dY843FKbWLN7TuDFyHCdCG8n89t4hJ22WjPu54tbq7CF/Z0c40bM1LddvGr7+S4Tk2A2BcQicv7TJEs2pm2jrO6UrxnF6xKQHDImlMdWTto5VxHJxAALhBPgDJVnbJNvfMIkDOq6AbaTXl9emyz2ie706Z2iA5gpoN5oAAQhAAAIQCCswME5yoWNPwhaAnRCAwFgF2q1Zy3LMBzghIPgPVe52y1Q/6R0RPdYcKL6hODn132zsaYHiWcdOZ+fy9MHDwcacExJC4OIJcLtykzMNjmNkHqPfU1vTEpWefsPFyx05QeByEAgI/LEGy7aWuPv0V0joJLKqwPvd1eaa09p1WQidRGbCEQhAAAIQuKIFED25orsXjbv8BRKKyx5TeLdmJf4ocfXjLFOy3XjTgPV6xlR/SfZj5bro+ryfxC9KybMHsiue1OFv2zHJIdFkCsjvKt2yym/TJy9KXL3xD9KC50zh1zaazDogbwhMqgD7XFbybVZuxZaJTVSc1Lpd5Mz5BkNqamG9pPjZ0WbFXuSCkR0EIAABCEDgMhLAzJ3LqDNQFQhAAAIQgAAEIAABCEAAAhCAAAQuEwHM3LlMOgLVgAAEIAABCEAAAhCAAAQgAAEIQGAaCGDmzjToJFQRAhCAAAQgAAEIQAACEIAABCAAgSkUQPRkCvFRNAQgAAEIQAACEIAABCAAAQhAAALTQADRk2nQSagiBCAAAQhAAAIQgAAEIAABCEAAAlMogOjJFOKjaAhAAAIQgAAEIAABCEAAAhCAAASmgQCiJ9Ogk1BFCEAAAhCAAAQgAAEIQAACEIAABKZQANGTKcRH0RCAAAQgAAEIQAACEIAABCAAAQhMAwFET6ZBJ6GKEIAABCAAAQhAAAIQgAAEIAABCEyhAKInU4iPoiEAAQhAAAIQgAAEIAABCEAAAhCYBgKInkyDTkIVIQABCEAAAhCAAAQgAAEIQAACEJhCAURPphAfRUMAAhCAAAQgAAEIQAACEIAABCAwDQQQPZkGnYQqQgACEIAABCAAAQhAAAIQgAAEIDCFAoieTCE+ioYABCAAAQhAAAIQgAAEIAABCEBgGgggejINOglVhAAEIAABCEAAAhCAAAQgAAEIQGAKBRA9mUJ8FA0BCEAAAhCAAAQgAAEIQAACEIDANBBA9GQadBKqCAEIQAACEIAABCAAAQhAAAIQgMAUCiB6MoX4KBoCEIAABCAAAQhAAAIQgAAEIACBaSCA6Mk06CRUEQIQgAAEIAABCEAAAhCAAAQgAIEpFED0ZArxUTQEIAABCEAAAhCAAAQgAAEIQAAC00AA0ZNp0EmoIgQgAAEIQAACEIAABCAAAQhAAAJTKIDoyRTio2gIQAACEIAABCAAAQhAAAIQgAAEpoEAoifToJNQRQhAAAIQgAAEIAABCEAAAhCAAASmUADRkynER9EQgAAEIAABCEAAAhCAAAQgAAEITAOB6AusY01NzQXmgNMhAAEIQAACEIAABCAAAQhAAAIQgMDIAgkJCf/8z/88cprJO3qh0RNSe7JNXv2QMwQgAAEIQAACEIAABCAAAQhAAAIQmFqBC42eTGHgZ2rhUDoEIAABCEAAAhCAAAQgAAEIQAACM0QA657MkI5GMyEAAQhAAAIQgAAEIAABCEAAAhCYoACiJxOEw2kQgAAEIAABCEAAAhCAAAQgAAEIzBABRE9mSEejmRCAAAQgAAEIQAACEIAABCAAAQhMUADRkwnC4TQIQAACEIAABCAAAQhAAAIQgAAEZogAoiczpKPRTAhAAAIQgAAEIAABCEAAAhCAAAQmKIDoyQThcBoEIAABCEAAAhCAAAQgAAEIQAACM0QA0ZMZ0tFoJgQgAAEIQAACEIAABCAAAQhAAAITFED0ZIJwOA0CEIAABCAAAQhAAAIQgAAEIACBGSKA6MkM6Wg0EwIQgAAEIAABCEAAAhCAAAQgAIEJCiB6MkE4nAYBCEAAAhCAAAQgAAEIQAACEIDADBFA9GSGdDSaCQEIQAACEIAABCAAAQhAAAIQgMAEBRA9mSAcToMABCAAAQhAAAIQgAAEIAABCEBghgggejJDOhrNhAAEIAABCEAAAhCAAAQgAAEIQGCCAoieTBAOp0EAAhCAAAQgAAEIQAACEIAABCAwQwSiZ0g7r5hmvvXWW1dMW9AQCEAAAhCAAASuAIGVK1deAa1AEyAAAQhAAAIjCyB6MrLP5XgUf6Ncjr2COkEAAhCAAARmpAC+15mR3Y5GQwACEJiJApi5MxN7HW2GAAQgAAEIQAACEIAABCAAAQhAYOwCiJ6M3QopIQABCEAAAhCAAAQgAAEIQAACEJiJAoiezMReR5shAAEIQAACEIAABCAAAQhAAAIQGLsAoidjt0JKCEAAAhCAAAQgAAEIQAACEIAABGaiAKInM7HX0WYIQAACEIAABCAAAQhAAAIQgAAExi5wqZ65c+7c3/727be8/2/C/9JzY6/67qyrvhM19loiJQQgAAEIQAACEIAABCAAAQhAAAIQmCqByY+enDtHnfvbOYH/q+/9rs/eDXwrfDdm3t8v/PEsWdx3EEOZqm5HuRCAAAQgAAEIQAACEIAABCAAAQiMWWBSoyfn/tbzTaD7q799/d/fDXR9nw5c9Y8Lznx58puvO09/UP/dH/zj3197M/3Dhd/53vcxDmXM/YWEEIAABCAAAQhAAAIQgAAEIAABCFxqgUlc9+SbM1+dan+rs/XFLz9wdv1Px7d/PTNLMvfqa5fEXLPwe3P+LvD1F6c+qPe31Xd/6QsEeoa32/Vw4qLrFi26Lrnk0PCDvXtcpuSs7Wykw9yu3Hgxh+A/sgV/iF9t8QQinTHO/SdsOYmFTiHiWV6nw3M64tGLf+CkPTcxr4EfU8b9dCMbjimvcSbi9xUmrrP7h5x1qCT5Fit7sbpmnFVCcghAAAIQgAAE+gWOHz8eSWOEQ5FOwX4IQAACEIDAlSEwidGTLz/74Ph7zjNff/WtIPzvlyf/8tlHXZ+f6Dnb/f25/+fqf7ru+//nmu6zgfZ3D33W9kfh66+Ga6qfef+zj/fo5w8/MtY98nv3fPTpZ599+tn7T6vp643NwZ8/etOkvDQrrgTY+h0Oz6mx1hbpIAABCEAAAhCAwJQLfPXVV0lJSffff//wmtx3333k0Pvvvz/8EPZAAAIQgAAErniBSYye9PQE+DPCF/6uU/yZv/5VEM6e/V//56eOf3rKd/z0V1+fCXz/v7/8hvv8L91nusmSsqNDn3Ba8rIyVmeQf7kP29nuvjNOua2FWRmpycmZeVXusYy74Nk9JTmr09JIVrcbbG3BU3z23GRD1R5zYV5ORnpG4S63u7Ykbx35OatkH0eO83V5ieus9tJCcefqLMMedvCIE95dXZiVnpaWmpamLax6j+TJOR7cYG9na/KzSvaTX8MVGuAaSnMz0tPEf6Qm4lkUdcCQmGp2X8AQDK7ZkntLWvKy5CyjwxvKx+eyFmSlpRO6rLytTi5S5pGEh/QNGXGTbHAF2y+4SpLjs6ztwRR+R15yIRn54ndZC7UZIu/qHMMLwS4JeCyZGeYXrLmpaYb9A+RI0nUZaelZObkG25/ODikHv0IAAhCAAAQgcOkFfvCDH2i12hdffHFIAIWETnbt2rVgwYKFCxde+lqhRAhAAAIQgMCUC0xi9CTUtkDg3Ff8XztP8V1fd3d3C3/58tRHHxz98MhRjvN/K3zz3ejvXHXVWBC8toc2eZaXNb7Z3Ny0U3u6cuOzntD9u/fgUXlJXfPbb++5TagprRl16ofgsm54vktnaz74ZnPdhlmOX1hcJBBDln854z5K51fX1jWalZ5tJa/MNdburqsriWt53iHmGUULh13cv1SQnc2/1vqeNdtPDKi2u7LkRarg5YMH327e+S98zRN2NiDXPWNSzVEU2BrL1kjCFir8seqpw8rtTQebWw7W/bv8aJNbnMxyQ0HFFp1iwqNjBE8Ll17x+sF3/rAlzm21/ZEgcbZNBlecqbGlufn17SnHNpfs8oYTjyQ8LG2sSiVtbw1GTNjDrFxJew6LFRcOt7KKFFW3Y9MmF+kRwtv824JZLxssThI/oenoTlebrPTNgxVr6L4cBdd2c4PUWNfSWFdbTHvcfJj5W8NKxw4IQAACEIAABCZZoKKi4sYbbxwYQAmFTshOl8tFwiuTXD6yhwAEIAABCFyOApMePQk1+ptvA6e6ur/wf/Xn/+7s+PMXPAmofN31zV/PkOcYj0nF5245ptCuVYh33lFybbay879aggMraMmKW7ULyG6ayc5U+DzuL0bJz3OgiVq1TieeQknUes3slqZ3g6dEK9JXycUcr2Xk0QkrV0nFBNdeJzvt712hY4FamxS8849Tp8d6j3gGjHNRmZpbKrLniWczKqXMzw1Z1CNsofQPpTF+t6PR7T0tSNTGisc0YpFShVqtkIjFTGijFdq7VWI+cxOWXSt0filQPlcLq9DdpxLzpBndWiV7wCUOpxmyRRQempCKUqT8mPIcJnlwnvelmblKngQ+KLKnTf5jNX24xTMvU3dzsAVSjXbFrJZD4sI0sygqIUPL9EdOyK4Ae8TTlZShFmtLM9o1yoEHh5WKHRCAAAQgAAEIXCIBEh8hUZL+AAoZhEJGnSB0con0UQwEIAABCFyuApP6zJ2hjRa+7RGEb773nat6/vr1qc/PCGe+pv52bmiisL/znTwllc3tPUbPldE8H4peyKTS3rtuSYwkmhcGxDTC5ST4T/Od7pI0V+/Bs92U6uvQOfSs87fvND2nr6y+XOgfyiS9Q0Joyd9RfPeAGSi8x7G9sv5DniIJuv1cj2pw0REKVRt3Wm22vdYNT3uFOLV+45b8YIjjwjY6ZnYog1liZchG6ARP5d1pttDuwFl6LsMPn7wTWXh4fZQqpb+ujfefbT2rMKqXeXe0sEKCxyNRPS3vOsxTMZKYvrEzkqtp4TgvUKRddMzcIa0TeD4mRtLXe3Nj6Et6MQ5vFvZAAAIQgAAEINArEAqgqNVqMgKF7IqJiSE/YNQJrg8IQAACEJjJApN6w3ruzNlvydyc70aR6TmD5ud80/2/kdE59143pdapxKEclNAziya34hKZhPJ0kufXhHae7hQkS8m9OBni0RdFIT918ZREMkr8gZbOlcnv2N5cohxUgZORq9N3ROjqFIMOpDIBnu8aVJL7uY2Vvvw9v9WLYyvaLBn5Q0I4EQqlKPmK/NIV+SRDdu+mDZusipZSVV/cYfQKjTHF1TIJrdK/Vqvriz2FznMNOT2CcNhC6OUpCVtb3f911pdwp2I2o5xf2XrIzXaripdQMR0S6hTfGaCkwYbwp7piru4LkAzNi4SoiCkJQokBFP7LTr5HHIaCDQIQgAAEIACBy0GgP4BCnrNDhqIkJiZeDrVCHSAAAQhAAAJTJTCZM3fOUV+fDXz9154veeHbQMQZOsHAyqDYCttoMT/n5ASB21/vFhKW/YiiYlXpi9n6fcG1WgXO0eCRp6mDi4MInYfqncF5MpyziY1VKuePIqnUqAXnbmcwXCL4GizGsS01S1Ifd9W/K4ZFhPamJp8iJTSLJ5gNf7prViwjJ0EAwet41d0Z6BKCA1NoEtEJrm4btlBub2FuqdMvRmQkzCLxbHHzs65D3lEG0IRSjvG/89TpCrb+pdAyt7znhRJzXbh1TyIKhytGokq5lt29tz3hZgWZn6NUUu5dTb7lKaRHJD9OV/mbQlDUSecrh2ap0wYHqvrzIzOAbqDbml1i73WzpE/DlYR9EIAABCAAAQhMmUAogILQyZR1AAqGAAQgAIHLSWASx578/byFCxbf8P9OfPz113/9wd+FafRV0dFXz18oWxj/vVl982TEVHL9li3cZktWooGKVeosFdnioAkmf1t5Z2lJ1mtiWEK64tHtD5D7dorqoRVpiqObcyr/7OephOKnC0Zdb5VeYdyRbzHr0yxkjVI6Vp1fqiTDVfqf4BOmmr276BtVsmZDzlM+P08nlWzXxVJU78KxtPq+4t89ZMjIlEmvUeo2mvSfGCz3VUlf1q1cJWy+L419YGftvWEKpdcUpLstuekWQRxck5C9ZYs48OTDGkNpTPXFHIQizy8v7yotyUjnqQAluUFnMjPhWhlBOFxS0gOq5bTlOYnJKg71YRKV/mcdSb8MLlwi1W0p928uy8kQO0qivG+7UU2TcsNttHrjFs0myy0p1pjYBF1mpswRLhX2QQACEIAABCAwdQIkgIJRJ1PHj5IhAAEIQOAyErjq3LnelUfeeuutlStXXsSq/S3Qc+Yvn/t9xz7/+Mg3p05Q585929PzddcZ4a/fXBUVFfMPcnn88n9gll49/9rvfr93rY6LWPrFzYrfV5i6L+XN3fopn1ty0bvp4kIhNwhAAAIQgAAEZpQA/jKZUd2NxkIAAhCYaQIDP+YmcezJd6Ki/172T7OvnvfDa5ivPj/25Wfv/+V/Oq76zndi5skXXJ8ii1P84B/+6XvfnzNkSZSZ1hloLwQgAAEIQAACEIAABCAAAQhAAAKXucAkRk9CLY+K/l7MPyyY8wPZD65hfvh5x1+//nruNdf9YP4/0bP/nkRSLnOdmV09wbU113p4wKOFghz0NbqySj1z0Ve3ndnWaD0EIAABCEAAAhCAAAQgAAEIXM4Ckx49ERt/1VXRs2bHzFtE/l3OFiPUTbK2+v21Ixy/Ig/R6sfq1Fdky9AoCEAAAhCAAAQgAAEIQAACEIDAeAQw+mM8WkgLAQhAAAIQgAAEIAABCEAAAhCAwMwTQPRk5vU5WgwBCEAAAhCAAAQgAAEIQAACEIDAeAQQPRmPFtJCAAIQgAAEIAABCEAAAhCAAAQgMPMEED2ZeX2OFkMAAhCAAAQgAAEIQAACEIAABCAwHoFLsmrseCqEtKMKkCdOj5oGCSAAAQhAAAIQgAAEIAABCEAAAhC4WAKInlwsyUuUz8qVKy9RSSgGAhCAAAQgAAEIQAACEIAABCAAgaAAZu7gQoAABCAAAQhAAAIQgAAEIAABCEAAAiMJIHoykg6OQQACEIAABCAAAQhAAAIQgAAEIAABRE9wDUAAAhCAAAQgAAEIQAACEIAABCAAgZEEED0ZSQfHIAABCEAAAhCAAAQgAAEIQAACEIAAoie4BiAAAQhAAAIQgAAEIAABCEAAAhCAwEgCiJ6MpINjEIAABCAAAQhAAAIQgAAEIAABCEAA0RNcAxCAAAQgAAEIQAACEIAABCAAAQhAYCQBRE9G0sExCEAAAhCAAAQgAAEIQAACEIAABCCA6AmuAQhAAAIQgAAEIAABCEAAAhCAAAQgMJIAoicj6eAYBCAAAQhAAAIQgAAEIAABCEAAAhBA9ATXAAQgAAEIQAACEIAABCAAAQhAAAIQGEkA0ZORdHAMAhCAAAQgAAEIQAACEIAABCAAAQggeoJrAAIQgAAEIAABCEAAAhCAAAQgAAEIjCSA6MlIOjgGAQhAAAIQgAAEIAABCEAAAhCAAAQQPcE1AAEIQAACEIAABCAAAQhAAAIQgAAERhJA9GQkHRyDAAQgAAEIQAACEIAABCAAAQhAAAIXNXoiOAuXLlqUbvEExgjrt6+LXxSfVXWMpB/48xhPn4xkkatx0p5LKqut8l5gseNWusDyxn565LZHzoPdnrVoUXzeXn/kJDgCAQhAAAIQgAAEIAABCEAAAhCY3gLR07v6l03thf2GxOIGIVgfed6eg4+pLrBqnq1pObVcKBN6tlQWp1BlrivKU8vpC8x4hNMliuziouUSpXSENOSQ4C7NyOvIf3u3niSU/VhnpHi5QjLyOTgKAQhAAAIQgAAEIAABCEAAAhCYvgKInlycvqNlSzVrBP64x9V+MUdhSK/XqBha4H3th12Oba6mlqLaF43K2RenzsNyoZU5Rcphe4fuCLAtLo6S9+6WqvRFFxopGloCfocABCAAAQhAAAIQgAAEIAABCFxWAhd15k5fy/x/rMrLTIxfmpxldHhD4zEogd1rzl2dHB8fn5yZZ2nkendHwuBZx+O5GSkkeWLyLXmWOnaE9P494pSawn28mFmbJeM6MpUk135S/I17ISf+uuSSA+Rsv/uFklAFElOzCrc5e2tw2pFHTtZVOV/IS1uaZnlvcIVOu6sKMxKXkjoXVrmD+UfabsqvqKwuvYMZODSEO1BluD2NnB6/LC3HWOUOVqlvE3z7LbnpvUoRmkfLtaYKa0V1Td3Blj1FN0n492zm59lgDhE8TzithVlpiaRJiWm3G6oO9YVyApxre2FWaiLxPL9/aNsHztzhbDqSSW5Vo82gTY5fmpiWa3b6iKIjb2mO7QQlHDInB6dcDZ65MzKyze205K4ONvnhvgvjWFUWKef2YfOh+IbCxJwqp71kXU5GanLyLQZ7e+8l4HdZC7WiqtiP213+4DQxz7aM5Icdzm2FObdkJCen5W519bWcZ/eUBJ2DF9L+0S688x2EnyAAAQhAAAIQgAAEIAABCEAAAr0CkxA96XZVbm+VLVcr5vjZfWbzXnH6ib9xU97jdt9CXbm1XHdNh+3h9da2EeIhnL04t2QvS6uKjQ/plT1u2yN5hn0Rx3RIk5RMlNDOiguScG0ejpZIetgjHpK/uFOgFUolxf4qL6/M4Z2bWVxi1DG8q7rwnq0uMRxCz6KjKMHnsL4qJK3NXjpo0grvfMJgdXpjVPqCu5mjL+5me8Zx3fCHzOuLrU5/rO4BU/GaWK7BmpdvFSsV2k43Vb7Kp+gLNAt5olTyQigmEjn/uarih3XyKAQ6AQ4AACAASURBVIE90MQGInlytocMVW5a9UBphbkg6YzTWrzJIYZsBM+29YW/cvFLdMaNujh/g/XfCsW1ZkZqO0V/VzyvxuZd9kA5iQp1ue2bTHZOoirYmC2PoqjF2SaLUTNvYIWFUZBP2C27+ZR79Or5PFtnNtf1zksK32YyKKrH6/idoP91XfPbb5YntFl/5RT7q8NWaGig79v5ztGP3vlNAd1gMLwk5kOCVvwB+xHllrrXm9/5rV7Ya6lpEzPm92/Os53VPv/2R0ffef0/GM/jG2zt4QvEXghAAAIQgAAEIAABCEAAAhCAQCSBSZi5c4rO/M2eogTKr+BTTS72ww6BmtX0qtMfrTBuLNbEUZqFnOt2a/1rHlMSE75a79ltbp6+wbTDmk8miOQnCRk6m+vlem6t+GuYLS5FIa2qP8b6KabtMEspdZmdDreHpTTU0XaeXpKipF2VL7LCbLWxqlRH4iN3MHx6nmPf7qYH1brZwcEifonGtseYIP5k7y+g2/37g35KojE+Y8qeS+kX+FMLHCOEfAZXzN9U6/D2SHXmWtMqUkSm9GRqicvhOFSsXBFMKDA6S1l+LEXd0NV+t439g8u7QcGQqETkjU5YmkBTnI/zU35PWM8byFGBksSmZGizY2mNWl3AS+RzKarbtftVrzA322g1ZUso3eIYMvbnLMlmQeS2U7MosTK0ekOpntR/BeVx5jkON7l5vW7VUun2hk7ZMu1aNbE8H/XpdtWMjMxLtaTJCyhe4nUZnaynQ8iV04uL6o7oKUoSdjkXVY5eIU5TkihvjhNsn3IBim6uZxfrt68NjvGJyy6+rSbrDSd3b77ItlCrWxWMfi1UKudbRYokvqnOJdfV6RaLy7JI1cXrbnZUvsEWJSjEZNggAAEIQAACEIAABCAAAQhAAAJjE5iE6IlUqVwiFi5dIJdFUZ0CTwW83uMCmWtivSXe2lct+oSXBDvCVtL/CdsZoCQ3KHpjJUuWxtGUt8PbEaDEUQ/DN1qRciPt8LAsL2/1UMw92vTj9fVtbq9f4vFRslwl43N3kHELS5Yprg6ePDtOQe6+3/V5j1OUGDGhqKuVKcE6D9q+8JIbcCqOiQuuiEr/SMFEU56hiSL8HvCSUS9UNKNQhMICUkWCnDrAeTs6SSRC3OYplPODP8QxsdGU18eRaTHhOfpLICNfyCwV0mORPKO0mWsYR22DIdW5mawyuyLz1rt1YvnHvGLzE65LmCPmJVEXlamDmYZCQWHbHiqUZq4LTUWiSS1pyu8XaxlpfVhfsJQRkKUKBYkWkQzm9V0YwVLo2ZFylEllvUEVmqZJ20l9/X/maDkjC1WPLNAbG0sROnK1kD0yWd9+mownonoEKsB5Od7jyli0re8EUvpa0gZET86D4CcIQAACEIAABCAAAQhAAAIQGFVgEqIn4p1ucPvu4PEEtLKo2pQe01sleo480k3zqJUelkCSlKSgXeyRZomHl6luUiilSsp5xH1I5u2RqJaTW2X3kFOGDiGZ3VfnYVmPaUe3IAzKgTR8aAlUaNbPBXgLHx5p76HoxdfFhkJIYTwlqsfqGlX19Qda3Yfdrl0W56tNxtfqikJtiPQY6ZHaTgIQoZMFIfTDeOo/lCCq/8IYE+pYEolFjFQlUiKtevLtPbmDZmSNJWekgQAEIAABCEAAAhCAAAQgAAEI9AtMwronw3WjGGYhTfX4xSVIksjIFAl1lgwACT9Zg5wtXaIgg1Z4lg0tjCF8cJQsGEqGfsSFHXgSLE6uVMp6vO59ZNGThGUKWqpcxgTY+n0ePlpJ5u1QscHxI8ePsKeCqfn2o2RgyJy4pXHD6zpgz3y5lIRBQkMqxGVaWe/wdU8CHmtm/KJlOZXiahqC7zgZrUJLfiihohhxeEuPl+1dD9bPfsRRURLF4r7hESdZMtFI3MiYGhITWSjvjYlEqtFpd+V2BxegFZkaJpJngOfavTyjM1qq6958v/kxFd3Ntro5ah4TR0ad+I62nxFz5w9YcnNzDXu8kYo6v1/gjrLBtXL5jk/J6CE6Vt6/0ElA7MNB28SQiZq4jV6XUIrYaxmB83b2JeeO+yh5ZLoouXwh6cC+lYtJO076x1zUWKuEdBCAAAQgAAEIQAACEIAABCBwxQuM9MX9xWu8NPMOdaXbaX/KLLtH2XWwyvaHs+pnXq8OzuMIsyXp8lUOs7tyo0nQLjnb+pKdPCBXt04bftGT0PkJy5Iktga3h1aVJpFAyRylSmq1uf3U9Volma0TpS64R+H8lctqsPBrZJ1Oe4OfZvLWaUjKEW6mZ6t/tkLi3O+0PmztVAmtr7WQtGJyMgqjP44TpUhZIa86xtrys9gfUewfOWq2IjONIaky1+mq/miv31oo9aXHeOtr/ijQSev0KppEC8QqR7H2h83CKtnRV+0kJqLUaMRzhm4CV28xsDTV7W9/1+09TUluMpruDWYe1lPtttxvcM3W5P/8Z9fRXZ8e8glRMiZORklkd65lGnY5rUZrl0poedHmPqU0Pkry6Rha4JDfoyjP8wbL6XT6sM1JSl+VmU7GcATEISQCW1/1Aq3N1p0fQDR7QsjHqnK0Vm+CsfE/i8IJDK0gs0artNmtjZryLLlwzFG5j1Nt0JALI8Kiu5LMtRrr45W2DKZIJfG/ZzMUOZiK5lLSC9ggAAEIQAACEIAABCAAAQhAAAJjFrg00RNKmlVey8dYXmyyPl5Pxyq1TxhNa8mNeGj0xbDKRjH6ylqqzGo/UGnZR8sWq4t+aSoWQx2Rt9lKsvRJg0uQ36QUgyxRSjGa4uPJmJTgUqy04oHa2jlPWV92WLcK9DxF9kOlj/7rqPfQkuzHKo7yZschW80XmoL/KKaLzU7h7OB4C616cEeZYLY1e1xuMmpGU7TRRFbMJZtEXfpSpcSyo8Fe5hYkcuXaUuMjerEyPWfFWTBxuuJsfvdzNSwvU+Yay9aHDx34/+Rs+BOpvkS6QKW7b13+eg0jrqIayTO7vKJz83aHY6vBH5BI45T6p42mFWKkQFWys5o2VzbYLIdoWUK20fKoWMkRIkch6Wi5Lj+Fs1c6jwnyFfmmJ8Uld6l5metyHN46tv7FemaFThVKKf53Ysjnzx/TTwv0FVZ+8/ac5Ed46mqF+u7qLXeNFFWTrNlS7bdYTasrTwrihffQDtOo3T6meiARBCAAAQhAAAIQgAAEIAABCMwggavOnTsXau5bb721cuXKGdR0NHUkAb99Xar5MGOsbyxaPFI6HIMABCAAAQhAAAIQgAAEIAABCFyRAgPjJJdo7MlFcRT+5LDWh1mtg1bojGvDj924KOUiEwhAAAIQgAAEIAABCEAAAhCAAARmssB0ip7Q1+tM18/kzkLbIQABCEAAAhCAAAQgAAEIQAACEJgCgekUPZkCnplbpFS/+yP9zG0+Wg4BCEAAAhCAAAQgAAEIQAACEDgvcEmeWAxwCEAAAhCAAAQgAAEIQAACEIAABCAwbQUQPZm2XYeKQwACEIAABCAAAQhAAAIQgAAEIHBJBBA9uSTMKAQCEIAABCAAAQhAAAIQgAAEIACBaSuA6Mm07TpUHAIQgAAEIAABCEAAAhCAAAQgAIFLIoDoySVhRiEQgAAEIAABCEAAAhCAAAQgAAEITFsBRE+mbdeh4hCAAAQgAAEIQAACEIAABCAAAQhcEgFETy4JMwqBAAQgAAEIQAACEIAABCAAAQhAYNoKIHoybbsOFYcABCAAAQhAAAIQgAAEIAABCEDgkgggenJJmFEIBCAAAQhAAAIQgAAEIAABCEAAAtNWANGTadt1qDgEIAABCEAAAhCAAAQgAAEIQAACl0QA0ZNLwoxCIAABCEAAAhCAAAQgAAEIQAACEJi2AoieTNuuQ8UhAAEIQAACEIAABCAAAQhAAAIQuCQCiJ5cEmYUAgEIQAACEIAABCAAAQhAAAIQgMC0FUD0ZNp2HSoOAQhAAAIQgAAEIAABCEAAAhCAwCURQPTkkjCjEAhAAAIQgAAEIAABCEAAAhCAAASmrcBFjZ4IzsKlixalWzyBC/Hw29fFL4rPqjpGMhn484XkOa3PBUK47pvAxTaBU8KVjH0QgAAEIAABCEAAAhCAAAQgMNMELmr05OLjSRTZxUUbdErpxc96+uQ4GOGkPXdpsvnQWKvv2Zq2aFF8Ti3Xf4Kw3xBPdv3CKZBdBwyJiwZsS5Mzcg1Vh/z9if1uu7kgK21ZPNkSU7PySu2e8wf7Up125JEcQ9t18YkpGbm/sDja+LFWcWLpouN+9vMioz5FGjXi+QG26pb4rO2smGiMp4yYHw5CAAIQgAAEIAABCEAAAhCAwAwUiL6820wrc4qUl3cVJ792gxD8h1o8AsVc3FLnKTXLY2lK4L9od7sbrB/4KEddUQLlbzTkPNjABWjp9UqVjPJ/4nHtMrvd3lpHqUoyrAa0XJWRJKUEf4fH02hzNztbLS9VrJUPS3eRdkQx2f9uHD2v4+6WDoFaFUw4xlNGzxQpIAABCEAAAhCAAAQgAAEIQGBmCUza2JNuj1Ubv2hpjrVNHOLAv2cz6NISl8bHp2QVbnf5e6f2COxec+7qZDKuITkzz9LIiUkHbQMnrXC228mMnkJHW4NZzCoxLdfs9IVSC966kpzUxPjEtJzHHc5tWWRoReH+YZkNzNnvthlzxCEVS5OzCqzOE73HhI4GS2FWWqK4P2Ndif290ACKUNF5drfdcEsyOZRjauBOe2yFGaRFyTqz82Tw9AMlZBxHRpnTWZZLckhcnVfl9nONZrFiyzIKa1mxQgGPdTWpXV5DKGMykIS0SVvlPX+6y11dmEFIyCkveIKpziO4t6YlP+wSAmTPonjjvobCxEXXJZe4elvK7SKZLcrYFhxnMZ6NvnFd+S8rKn5ZXetorr5LTnV76p0s1e2yPt3AUXLNM41v1++prdnT2PJ29V0M1VFfs3/4+BOKkqgKnhUz2fP6243PZMt7uIYyS8PpYD0Eb8PWvKyUxHix10oc7b0V9h+qMtxOunJRfGJyVuH5XuD/ZC9Zl5FMrhYyFKbU4e0W8/CUZSxalFiy12nWJsbnOfiB03CC8mkmR0NpbgbpU5JZbZDOaYhfbSHBJvZXWeKEsu7BM8t41vF4bkaKOKom+ZY8S12wg/oLavTYjVmkDqQfrb2DcXhHQXzy4+5gqgGbqyQ509Kwz5x3e1ZacnJGQZW7b9iN32Ut1IqXPRm203/Ze7ZlJD9MrtLCnFsykpPTcre6ejWDShnJRIlce+Z+paHF4XcIQAACEIAABCAAAQhAAAIQuOQCkxM96fE7H99Y1S7LfnK7MYmmTtgL8y3O00nFT1eUrpG4dxQW7hTDBf7GTXmP230LdeXWct01HbaH14dCLZEQ6FkU1eOp2vo76qd63c0xnNu+aZtTvFFtr9z4uMPDyzXr9ekBh6VOnKVCjzChI+C1FeVZGrjYbKPxXqVA7uF/Lt5jU/6GTXqD7Y9CQq7R9PN0mnWY8wttHWJ1gkWztspWebZWKfF7Xt28Id96ZLFOd7PE/57d8rxbvPGmaVJo5/7KV86k61YxQoercnNeyatU5t1qRvA6n7U4emM9EdoXOt1pqfx4qe4+LRPwOreZ7e2DEjNaY/5NtBio+Ney8rtXqG9VSyl/ywGx7qT27oMeIUqh+RdFhALGspuOY8ggFDIKhac8LS1+ir5BZ8xhyB5xi5JqzHVvH3m/9q6RZ1LRTM6jRT+hSY1+f4j0j+Deut6wi5WsMVU8XZzUWV/yb2YX2e1v2PwLq/NMUsFjFaUPpNPuKsMDVV4SVjvpMNxndrCS9CJj8Qqa3VWy/gmxl2mxErx7Z6Xnmkxdmry3SqGKBem4hqrfSe40WYxqmnU+vdFK+uTGO0vvUpCUco2xrETLDLokOHtxbslellYVGx/SK3vctkfyDPvEOEZvQc9ZW+dpC+5QUMddVabKUAeTeWQF6tihjmT8lq/+lePaiv9sPNhSrf6i0hq8AqkOW6Ghgb5v5ztHP3rnNwV0g8HwUvDKJM04YD+i3FL3evM7v9ULey01bWS34C7b8NRnKWVN73/0wZtlKq+1yOIOho2wQQACEIAABCAAAQhAAAIQgMCUC0zCzJ2AwO4yWBs6lRv2lAcnbrCvOdw8rX7oUX2GhFolYQ/k2hvq2fXrPK86/dEK48ZiTRylWci5brfWv+YxJUWalTKLIne/ASHhnorStRJqDcWutrg/POINaGiniwwbYPLKKv6dBA40tC7DErwLjojb5rC3CeS2ucKsl1J65Q/Njo8pn4+SNO8mo0iYfy2rfkhJzlXT3owyt+NVT36JPFR0Um65cY2E7XJlVXu5+Xfu2Zgt+VOX649VHMt2UqrQHBV+bqbpiXzmjOyo0+A8Til/WZqfwMtYp2E/y5KQ0fyIlQod4GmN6dkiRZTAcC15e71H2nkq4fwp0uuzUxZutrXRzApd9k0U1X1rurTBcbDJE1CpzrjFKT0Jmdolw4sQxNVPtg7aH1ZHOOm2v0FyoeMUDH+S4wPBnwaeR0ukYc8cWqZUES+nXJzf10nx7bsbOSo2v/hBrTKKUvKtzsebXjloUsd96uMpWrlMk53NzM5OX6HvpGXyKMq7z+4+TSk2lpYVKqiAWiqxeXo6OXGwklhw15KCxspscdqQ4BxSJh2nM23MJrWN+58W11a3q9lDmVWZSql5LyVZrNZpFJQwIHz1nt1GLsobTDus+aTj8pOEDJ3N9XI9tzY/VNDZ5QUVD6npgKrLnVV1gvX4KFUcrcgqihCaUmjvU4q1mq1MSaDr/0wKknub69nF+u1rg7GnuOzi22qy3nBy95L8KWqhVrcqGIFaqFTOt3I+0nHuV/YL2qp85VyyV6LMK0i3b6r3lKpWDGklfoUABCAAAQhAAAIQgAAEIACBKRCIvvhl+h2WbQKJZih/In7tT25zfcdJ2EBwPZ4c/3hfabO9Hd1e73GBEljrLfHWvt30Ca9/5DU9ouRLFcElN6RycblQgRRE8T7ylT4d96PQbb5cQRL0zrgJ3zj/J2xngJLFMcH7V1qZVyYGS8jt+MckCEMn3NB7gyxPYCRRHq7Dy1PBwEiU/DpGLFp2DQkgeOVLEsRfpDJpNMUFqxHa6IUMCQFQc6QycpiPWxpHdkukUhlFdZ7tT9SXePj/6SVLg0Mk6Fi5jKZ44cyI58xWaTVyx0uuljZK+Ze33GdoZaZm8AiL3hIkC5SKa3rDHsJfvJ5jg6beCE6ydqyhvzKSm4zGLCnVGNwhhi0msgn9J57kfGcIhS13qa0/I5+Xo9ZkZt5gtx4wZyyzyhOUKvWt+nvIBSN0fOwVwzdxwd6MYnTmMl3wtOB8JFqxPGn4iiuhbGlGEQpgyReQkSnuzpP+vgk0oeOD/hu6BiQ39J5CLVkaRzq1w9sRoEJXBaMIXr1RMjlx6xBG6bs5MrG7gxsZB0NifOQH3585Ws6Qjg9t8thYysf5AlTwGpL17RdHzVA9AnXS6+O5Bt2i80YUrT5JWhCpuX354v8QgAAEIAABCEAAAhCAAAQgMPkCkxA96ZEo1ij4/S77drtud37fzTwZe7Kn+Md9DYqWMLT/CPmNVhZVm9JjevfTc+Sj3Cz215f8MAl1DwMeTSbtBLdBxdF06Neo4DyPgVt036CXUA17kw1JRJ0NBRd6hu4npfRlGPr/WYrqq8CwtIRPdVs281KV6w+edKGNj1ZkrmHCpKJoRr99T14otkCRZ+4kFjcMSharyl4upaJmzaIl8hvTs7NU4sSYf2RkUS7uE9YbUJ+PyJxmXSytVJG4Urhyzu/j2HYxpBW7qLdQKk5f8Yy2b9ILTc9nqCi6yN6obGhoOtTqPux2bHfVv3G0tn6UhWBpcQ5VpK030iRQBO1Ct76ZX0O7d8L5ipUb+YqNUhibGosWT7gEnAgBCEAAAhCAAAQgAAEIQAACkyUwCeuexGpNz1YYs6XCuzXWBjLGgY5dKN7S+8l8hCSlMomRkO/x6Rj6ewyzkKZ6/AKtEPcvkYj3vLMlE7hblcaSL/LFMQtBJDKNZoQxB2IK6SISF6A6j5HxD2QTPL/Ky83Nq2ojo1fEsQ/tH/auuur9E0umrsgXx40S0AmWOuZNMou0sMfPfREsmz3iHR5AGUNe50ekJGi1CRR3qGa3m6OVWs2CMZw8LAmtuHOLtaLimbKyJ01FOcHQCdmU6RoS7fhkt2UvGQwS3AJcw9YNeesycp4beWFagauz2MhKIfMyb1XR1Dwmbg5Fneqil5DeVyrIU3nI+IvZNNXt937il2qKSiv3NLe+XbFGSlaKae2gYxlytQgdnwR7M8Daf5Gbu87qGsMKIDx7VFw2hVwB7R3kCpD9Y2x/xwnDkKVLFOQa4Fk2eA1QwgdHyVK29I8UcaNEhYKpx7bFXssInLezLzF33EfJ5bGR8p/HMDT3KRnn1LsJfnHgCTYIQAACEIAABCAAAQhAAAIQuCwERv42fMJVlGg2FKicFudzlW5Nqeo2nYo86dZWYqZ1zOf1lbvcs+6obbSoM+9QV7qd9qfMsnuUXQerbH84q37m9eq+8QljL1vxUw2zw+vdU2KYpb2Oa3J0jHbqzTpdgsP6bmXJViEz5oj9eRc3P794CcXMX6e2e5wvlRjm6JdRRxw7WUGqzifrhpLIz8XaouSKG6RUO+t4yhKzimptaidDKcTcxzxBhp4TQ6IY7l1W+xmtTsPQ5Cm8WmXlVqeTjEN5MrNvpMfFqC5ZGMasdxXbXY9npb6sVMwXn1jM+gR6sb70vnCrf/DumgcNvyMLzvra3W2cQMuzHzGqxQCG+s4secMep/Xhqq4VVOuLlQ0nlab/3KP/onL9/fazqvzitUtjAtzvP+HJYrjXzacU2TrVi2b3S+aSOVq511Gzn6Wz1ylmU/1hiEhto/0N5kdmaRmu/kWWTPnRZIqVpGeLNeAO1FRdc2t2zoBTk3T5KofZXbnRJGiXnG19yU6eLqRbpyWAkSNDAkuexDw7O3/VmJiZNVqlzW5t1JRnyYVjjsp9nGqDJmL+tEqbHZO3w+q6waSeT55FtWlDFW16o0IjLoOCDQIQgAAEIAABCEAAAhCAAASmWGASxp6EWhSnN5Kn255wWHay1AJ9RbUpe6G/fluJpdGvuKdip1m8rZZmldc+oVMKTdbHzfaPY7VPVJevDS46Md7t+uLtT2QraK/zRXurZF3Rmv61JiJkFKUoer7auEbuq7NadnronxRV/Makmk1R87IrXqzIV9Hu5y3iY3SU+rLfVOvGH82JUGpoN61+oDxfJRc89po3+MxHipPIuIzRVtUYmKHyNr16Ad3pttsPdoSGhMjJXToZLULWQMmYkF7k6krUpXUvl+WvUcT4PW6Xh6MYdV7ZnpdLVWFv6QXO3djQ0Oh0+yiFJr/UXldBFk8RN1r12M6KPBV1uLKktKZtjsZYXZEfR9ErTDue1DOd9VaTwfDE7o75WtPzW7JJzgv01c+bdHH+pu2WyoOC8t6KPU9qxtIwekX+OkmrbUc9Syuyn9huFB9OREq5M18lpU44d7/cStYcOb9FMfrK2tI7FPyBSkuZvX22uuiXL5VqRh5mJLANlTUuX2SwwUfIZW/VCrYc8tjj1HwHfXd1OXkadMSNVpXsLF/utdyeGH9j6oZ6Wv/cFoROImrhAAQgAAEIQAACEIAABCAAgUsrcNW5c+dCJb711lsrV668tKVfpNICgt/HdVIyxQJy98s3FKcanDH5Lx80kafSzIBNcJsz1tm7NBVvhx5GMwOaPLSJh8zJ99v57OqPrJqhh/A7BCAAAQhAAAIQgAAEIAABCEBgQgID4ySTNHNnQvWa8Emf2PJut7ISVf4DdzL8720HeDpOn3k956q2t/5lWKbRsvT14nCEK2E74axytLY22rlopmj9KAMnroT2og0QgAAEIAABCEAAAhCAAAQgAIGpELgioicJ+TusXeYd9Y6tBrLcBqMuqigpVpKH4RSa1FNheunK/LzVUWvvlCiyHysrTprAeruXrqYoCQIQgAAEIAABCEAAAhCAAAQgMH0FroiZO9OXHzWHAAQgAAEIQAACEIAABCAAAQhA4LIUGDhzZ9JWjb0sW45KQQACEIAABCAAAQhAAAIQgAAEIACB8QogejJeMaSHAAQgAAEIQAACEIAABCAAAQhAYGYJIHoys/obrYUABCAAAQhAAAIQgAAEIAABCEBgvAKInoxXDOkhAAEIQAACEIAABCAAAQhAAAIQmFkCiJ7MrP5GayEAAQhAAAIQgAAEIAABCEAAAhAYrwCiJ+MVQ3oIQAACEIAABCAAAQhAAAIQgAAEZpYAoiczq7/RWghAAAIQgAAEIAABCEAAAhCAAATGK4DoyXjFkB4CEIAABCAAAQhAAAIQgAAEIACBmSWA6MnM6m+0FgIQgAAEIAABCEAAAhCAAAQgAIHxCiB6Ml4xpIcABCAAAQhAAAIQgAAEIAABCEBgZgkgejKz+huthQAEIAABCEAAAhCAAAQgAAEIQGC8AoiejFcM6SEAAQhAAAIQgAAEIAABCEAAAhCYWQKInsys/kZrIQABCEAAAhCAAAQgAAEIQAACEBivAKIn4xVDeghAAAIQgAAEIAABCEAAAhCAAARmlsBlFj05ZE6+blG80TkFnXDSnhu/KF5b5b3EZU9hk8O29LQjb2lW1bGwx7ATAhCAAAQgAAEIQAACEIAABCAwEwWiL2ajyY13SolLGJql4t8bGzcqhu7t+53fb0h9WCg/Uq2hKWphesEGibAkLlLise8flO3YTxue8oAhsaCB798fRUukjGKVzvigXjl3eOox7ZmkJo+pbCSCAAQgAAEIQAACEIAABCAAAQhAYJwCFzV6EiqblqsykqQDMpYtkUSuleBxuXlK2ZsgVp2/UR058diPDM527OdFSjlPqVkeS8I7wje87wO3e48573+oxlq9PFL6kfZPUpNHKhLHIAABJfxqaAAAIABJREFUCEAAAhCAAAQgAAEIQAACEJiwwCTM3JGoCp6tqLCe/2daEwwynHBaC7PSEsn0mMS02w1Vh/wU5a3SJubV+aluZ2F8fN5ePzVwGsuBksRFizLKnM6yXHJW4uq8KrefazTnpCbGL8sorGVDY1z4P9lLcjMSl8bHL0vLedjuEUeJDMuWEti95tzVyfHx8cmZeZZGrnd8zGl3VaF4bnJmYRWJ4UTe6BvXlf+youKXFdXVtY31perZFO9ucZ8mjbLlkAbpbFzwXGG/IX7RorStbvKzpyxj0aLEkkaP3ZiVvFSsv3W0Jveess9dVUBqlZiWa3Gd9Lu2BZufnmvtr+FJV1WxKEkgc4w2D6kG2QIeS/qiRfF5jtCv/W0JsFW3xOfV9bXuWFXW0lAazqZLLNzlsv0iN2t1WnJqTsm+UCP6z6Sok05DenLeHq/ANxQm5lQ57SXrcjJSk5NvMdjbewn9LmuhNo0YJqZmFW53+QMUX5eXeHvfBKg2S8Z1iYb9ocSCszgx61esZ1tG8sMO57bCnFsykpPTcre6yKWADQIQgAAEIAABCEAAAhCAAAQgcNkKTEL0JHxbOdtDhio3rXqgtMJckHTGaS3e5Dgp02zIV0spilbqLeUFqsFDVGiajqI691e+ciZdt4oROlyVm/NKXqUy71Yzgtf5rMXho6hul6XI7GAl2sfKTWskbJ1543a3QA3N1t+4Ke9xu2+hrtxarrumw/bwemsbuZ/nnU8YrE5vjEpfcDdz9MXdbE/4qg/dGwjuoCUxZCxK5I0Wj/Lu56yt87QFdyio464qU6VbGFq3gRn0nvJ8zadKnTaB4tw2c35hjT9Fn6WgfO6qp2pYUnSAtf680HqIUm2sqNioEpyWPJNjgtGH7wrul5skD9Y2vnnw9QekTWVVg2ZddbNVD2zu0FRU5DI0GUnU43X8TtD/uq757TfLE9qsv3KK8ZgOW6Ghgb5v5ztHP3rnNwV0g8HwEidZnsJ0HAnFdLg2lloia/ewYjMDnlY2RnWTgsDwB+xHlFvqXm9+57d6Ya+lpi2yI45AAAIQgAAEIAABCEAAAhCAAASmWmASZu74HXnXOc63i1aVtuzRS32cT6AksSkZ2uxYWqNWF/AS+VyJ5KfpDLlpPyNNWZutInfVw0Y/8HMzTU/kM2dkR50G53FK+cvS/ARexjoN+1mWrO96ozR9Y0XK3ASNmqFPdjXVmT0fejhKxQzK1m9/3OmPVhg3FmviKM1CznW7tf41j2kJ//uDfkqiMT5jyp5L6Rf4Uwscw9Zs6W2HwO7eZHxLjIf08L42t6ebZvLuJCNQRtzE5GeXF1Q8pKYDqi53VtUJ1uOTFI3U5GA8RlVQXqii4r1NBQ6OV5Q9WaSilNyBXHuHt+MMpfjQ4WgXJNnFprvUNKWiPmwq3F/f5NPpY5XGNz4qpijJKLUaVGWZWqdbIBYqXb6MOdPCkTDMnGCCHq7h8Q2O+Y++9ND5mJYqR68QM5cob44TbJ9yAYpurmcX67evZcQs4rKLb6vJesPJ3aNSzbOzJGCygm/z+FV3aNk3PF5KyXR42O6k4hsp6hBZ4EarW0XCZuQHpXK+Vbw2koJtxwYBCEAAAhCAAAQgAAEIQAACELj8BCYhejJ03ZPrGHLLHaXIXMM4ahsMqc7NcQrVisxb79aJgxBC4zgiu9ALGXkUuaWXysjAFD5uqbierEQqlVFU51kS6pDIaF9lzXNPbS7mhQAlkD0CRX4YtAW83uNkL2u9Jd7ad4A+4fV/wZN7diqOiQsOeaF/pGCiKU+kmvg8Tl/fwSh5tnn7lnuVY7jdpxmF2EoqSia/hqY6BLHOo2x0LBMMRsjERvILg78EpDISajgtnu4/4eVJS/cVJu7ryyiKNJCiYil6dnDwyng2iZhvcIsi5wp9dPyRHRtqDsWZ3swW8Xs3UqHe7MmoINJxpCn+P3O0nCH1DG3y2FiKRMkofYqSsrR5qeW+VjYuxaykXtrdfjpf9uER7w2ZytnBEJlM1neWOMKI6iGZjbfu/RXDDxCAAAQgAAEIQAACEIAABCAAgckVmIToibjuSZn6/F13qAES1WN1jar6+gOt7sNu1y6L89Um42t1RWI0ZMQtuu+umtQ09I8k78vc37DZsN1JrTBWVGliu50lemvE8AetLKo2pcf0lkXPkUuoAQNkRqwCOUhrKt6pzpaQyT7G1YX7Ojt4etAso2AoQdwCQ6MjYmhA3MYRGug9JXqWeF50MCAiZjIoB2lWafV9fY8xiqalC0KljOG/Y5mdFOA8X2Sr41y2He5M85D5VCMVITZevKBohSqhc5/Hf4xjr1lWdLWCWtLe+gEveZdVqEpHWEB4pKxxDAIQgAAEIAABCEAAAhCAAAQgMHUCl2rdkwDPtXt5Rme0VNe9+X7zYyq6m211i6MQQtvQASNjE+HYdp7cq2t06gRG/m2nXwwNnB14qphtFMMspKkev0ArlElKJXkAEEkyW0LPl0tJRMLn7QguqCqQmUCjRxYkmgeKVRKB3WmxnwiWIw7DoAQ/5xcjBwL7QcfQ8MnA2gz+eWJNli5iZFEU/zUtJ21JUsppQeihY0LTbQRxG1pgFE2CL4I4uEPchFOdnUNTDPs9SqF/sqLi6WJpg9niGmkx3dhrGYHz9mfIHfdRcnlsFCUuffKxp8ntEeKV8ihJ0g1S9nBTa7tM+eMJPaRoWAWxAwIQgAAEIAABCEAAAhCAAAQgcCkFJiF6wrtrHjQYjAP+kUex8C7L/Tm59xmsexsa9tkdh3xClIyJI7M3gnf+gueVZ20NbSPdqIdFkV5DniIssPtrHPtsm/6vh55PoiGeJpeXhFQGZEtn3kGWpuXsT5ltex1W4/rcdYWVh3lqtvpnK8TRJNaHrbZaS+H2FhJgEGMMI08mWqAzklVUeXfltgZxrVapQhlLCq23lFbZthushwRxiMjIOVxYk6mbddlLaOGP1k1ldketuVCfm/d4vRj3Ic/cySRP4Skc+swdSiaX097DwYcRCV7Hq4NWhg2rSnbOIkNIFueXFkmbSi3OIQ/xGXAOs0ar7HBYg88w4o85KvdxqiyNGCCRKlOkHsdr3oTl4gAZ+fVK4aDddUaZsiRSgdgPAQhAAAIQgAAEIAABCEAAAhC4fAUmIXoicO5GEiI5/8/p9p6dm11eYdJIOxxbDQaT1dEZp396h2kFGRahyL4vm5nDe+rsv+/oGq+T/C6jUcNQHrvl+Vb5v9fuWK+W9njsta7OwdlKs8prn9AphSbr42b7x7HaJ6rL15L1PiTZj1Xkr5B3HbLVvNaZ8h/F4rK1o69MQivzjZp5lN9prSTjMqKUBVuM6jjK27C7vmNZ8UYNGRgyyuImF9ZkImb8dXXRT2XsXkvJs03CzUUVvzaOuAQLGS9jUnk3r07NyMqrFNboFCQyMvooG7ErmHvLjPImy1ZnxGf6LNBXWLWCLYc8kjk130HfXV1+V3B0SZRCqRTYE8yyG4MTjhRL43xspzJFOXQ+13g7HOkhAAEIQAACEIAABCAAAQhAAAJTIHDVuXPnQsW+9dZbK1eunIIqoEgIQAACEIAABCAAAQhAAAIQgAAEIHCZCQyMk0zC2JPLrLWoDgQgAAEIQAACEIAABCAAAQhAAAIQuBABRE8uRA/nQgACEIAABCAAAQhAAAIQgAAEIHDlCyB6cuX3MVoIAQhAAAIQgAAEIAABCEAAAhCAwIUIIHpyIXo4FwIQgAAEIAABCEAAAhCAAAQgAIErXwDRkyu/j9FCCEAAAhCAAAQgAAEIQAACEIAABC5EANGTC9HDuRCAAAQgAAEIQAACEIAABCAAAQhc+QKInlz5fYwWQgACEIAABCAAAQhAAAIQgAAEIHAhAoieXIgezoUABCAAAQhAAAIQgAAEIAABCEDgyhdA9OTK72O0EAIQgAAEIAABCEAAAhCAAAQg8P/bux+4qOsE/+Pf8BuM7oCOOeSoY4sCBhwYU2KiCwoGnqRYcmqHlefqbm7tra7XL/OuXK9d164z210tW62r1F3zsMS0gAsEVsFmr+HCBROSWR11zDHHBlYHGun3+Q5/RAWEcJCB1/exj93x++fz5/n5wmO/bz7fzyDQFQHSk67ocS0CCCCAAAIIIIAAAggggAACCPR+AdKT3j/G9BABBBBAAAEEEEAAAQQQQAABBLoiQHrSFT2uRQABBBBAAAEEEEAAAQQQQACB3i9AetL7x5geIoAAAggggAACCCCAAAIIIIBAVwRIT7qix7UIIIAAAggggAACCCCAAAIIIND7BUhPev8Y00MEEEAAAQQQQAABBBBAAAEEEOiKAOlJV/S4FgEEEEAAAQQQQAABBBBAAAEEer8A6UnvH2N6iAACCCCAAAIIIIAAAggggAACXREgPemKHtcigAACCCCAAAIIIIAAAggggEDvFyA96f1jTA8RQAABBBBAAAEEEEAAAQQQQKArAqQnXdHjWgQQQAABBBBAAAEEEEAAAQQQ6P0CpCe9f4zpIQIIIIAAAggggAACCCCAAAIIdEWA9KQrelyLAAIIIIAAAggggAACCCCAAAK9X4D0pPePMT1EAAEEEEAAAQQQQAABBBBAAIGuCJCedEWPaxFAAAEEEEAAAQQQQAABBBBAoPcLyB7qYl5enodKplgEEEAAAQQQQAABBBBAAAEEEECgVYGEhIRW93dxp6fSE9Gs6OjoLjaOyxFAAAEEEEAAAQQQQAABBBBAAIEOCpSUlHTwzM6exps7nRXjfAQQQAABBBBAAAEEEEAAAQQQ6FsCpCd9a7zpLQIIIIAAAggggAACCCCAAAIIdFaA9KSzYpyPAAIIIIAAAggggAACCCCAAAJ9S4D0pG+NN71FAAEEEEAAAQQQQAABBBBAAIHOCpCedFaM8xFAAAEEEEAAAQQQQAABBBBAoG8JkJ70rfGmtwgggAACCCCAAAIIIIAAAggg0FkB0pPOinE+AggggAACCCCAAAIIIIAAAgj0LQHSk7413vQWAQQQQAABBBBAAAEEEEAAAQQ6K0B60lkxzkcAAQQQQAABBBBAAAEEEEAAgb4lQHrSt8ab3iKAAAIIIIAAAggggAACCCCAQGcFSE86K8b5CCCAAAIIIIAAAggggAACCCDQtwRIT/rWeNNbBBBAAAEEEEAAAQQQQAABBBDorADpSWfFOnG+NW/TqlUvbP+0phPXcCoCCCCAAAIIIIAAAggggAACCPQwAbmHtedKc5znrJcCdBrfGzWwznb4QKHpSNXpC06Xj0qjGxU2Li4+QnuLOuYyf7hh27nYZY/FqCXJP8iQKDk1OtWN+nDD47bCzZtyT7qunOer0gSOipyUFB+muUU9vWGbOQEBBBBAAAEEEEAAAQQQQACBXiLQYx+9a8qztmS74ufPi9O3Ez7UWXLf3lZ40ikN0OrvGta/zn7ieGnh8aozFxekj9PegiGqt1ZU2iVNY83qoJi4oJvYCpV29CjdADFkLmeN7cTx8sKdNtdjTyQH9dhBvIl9pygEEEAAAQQQQAABBBBAAAEEbplAz33wdtVLTnPuth1SOwGK/dPsopNOeUTs/PTkoAEKovN00btbs6uMJnO0kirYjxbmFZoqzla7ZH9diCFxalxQgDjLXrR5Q/aZUSnzQyxZBeXnJV3ktNlTBx3Zk1lwzC7rDA+mpYQFSJacDVsO2sOnpw05lmsy210Bo2KmpyaOVkv1ltyNWwovhKY9nR4pkh2H8e3f7DsRmPhEujpnfWaFmCByft9LL5gSf/xEyF82bSqwhc5cln7vN+4aQ1P/Kdyak1tqvdR/eFTyrJSwQaIxLlvJvsz8cquzvy4ybqLKuONPtvA5z86NuG5ofPzDps5NHNZwr7gsWZu2FNsqK63JQXpRxuGPcw6WnbA5Jf/h4XHTUgxD3ZefP5KbU3DYbLO7ZM3QUENCcpxov8JkNX2cU3T0hP2irBoyMur+hMRonbigcs+vt30qGeY/mxoiSfXWwtc35Z4LTV2WbvAxbV+XWTU8MW2MJTvfFvbo0uSRosrcnAOlVeeccoAu/P7k5PHumKutljS0mv9GAAEEEEAAAQQQQAABBBBAwAsFevq6J+4ApdDibJW2RmQH4m2d8EmJDdGJOEk1LHbuk08/+6QSnTiP7du+M7e8RmOYnBwfobEfzt22Pdfifv1Fvl2kA6eLCsyDoqJGqmosJXvf3Z5nCTQY7lLVHDdmHzCLs2RZmeVRccDoCkuelRTlf6Gi8L3sIxdbbYl7pyooNiFKI0QDo5JnJor8peXmrvFE4Uel0pgYw1397Wbj7o+PKN06U7Brr8ni1ITHxoTWm7JL7ErzOjAsDa/xyH5KI81Z2zM+Od0/IjltZry+ujTzj/sqlaLtRbszCs1y0OSUtOkT9XXluTszTQ5lv3HnW5mfnpaD4hOnxoysryras23XZ+0uziLfLprksptyTS792Mhhasl5dN/294qq6kfFTo2P8rebsrbtUlreVkuuouAfCCCAAAIIIIAAAggggAACCHiXwHUTHHpe85UAZbf6p/MM7lkTLbZ6u93uknx0ujuv6oVK3XBiTXmxyVavNkxPTx4jTghXO9ZnVppMx+L1Y26XRDxR79KPS02MUFkvVW76k80+0LAgIVJ1+lLlsUL7GWu11PjKjX9EXGK0iGL0zmOlGUcqys2usLA2jGRN0BidOq+02l8fNTZENMJ65cTGGnUxs1PGqqQI6czvsqtOnbDVh8nlIgGStBNSZ8frJClMfnNDtpJjtDou1Ufydl1wT7Fx1VirzDZJHRoTqZOch42H7dKg2LiEKL2PaKi5fG+5qTI5JOKC4qPSjAqLihwkh4WExDpVGnH5CWOR2SkPS577cKzyjpHeteGNoopPS+1jY9vomCT5uNtTowr78eOJQ5VPpg9LxRtKMdPEZBxZCtPK+RXOixeczpOtt0SZosOGAAIIIIAAAggggAACCCCAgLcKtPqU3sM6I2tDI4KujU4a2tgwR6O+tQbX26w2ka0E6pRXUsSm1g3VSEfttnPVkkhPxOaj0WqVp3r/gf6yZNPcOVT5h9rf30eyf+NqWqBV1t7ZcL1q0GARNdjtjurWKuvYPh+NrmEFWbVGLVruUmpxXhBTNkQtDau0aHSiFcdbn2kj1TttlaW2pqpUd8XOm5UYNliSztrtdaKgord+VdTcDrvNLnKl8Aitqbg0Y3353iG6UaPDo+4ziM7UfHmmul5SDdc1Ls8SOEwssWuz2c61ytiyZwP0owLd/2601WgbcqtBYnKOO1I6W9h6SyQRDLEhgAACCCCAAAIIIIAAAggg4K0CPT49kbVRs9JnRzYtxNrSWcQf4gtnztmsXzqlIVdmN9jNlTV3BOmvj1sa0oHml2KuejtGbnxZxkd5Xeeqrb4pSGn+0HT4m4YCbxg6NBfXsuoOvJtz7T3lo41b/JSy7snZwi2v51rsNZKqRWOHxKQ9FKWso6Jsshwg4hg5aNqiJ4JKS4+azcerKj7JLi8pT1y8yHBtudf9u6lHjR1sPu57Pc5114odrbSktdPYhwACCCCAAAIIIIAAAggggICXCHyHh/hu7JmsaTM6UVqhDh0zSixvUl5YYG5atcN5snDXjm1bXtt12KnViTkV9Wet4sUYZauxnhHTMVS6QP/OdMBlO9VwfY31rJh1ImsGictVt4vUor7arqwhIrmslrPXBCj10jcdrkOtFOiyfdkwp8RuPdPGxJOWBQbGJkZrJEdpdr6yPosUoNWK73W+6JQD9foRep1aEgvuqnxF3532Mzan1pA4c+6inz771LRRcp3VbLar7xwq5tc4z1iVFVZE3adOix7Kd+qG+IjQpb/YccHh1rxoPXOhjW74aLV3iPLtNjG7R2wXDme+8/bbew/XtNWSNophNwIIIIAAAggggAACCCCAAAJeIXDtTIse02iVdlhoTHRSSquzTppaqb43Kfno6X2VRW/97oher+3vEt9YLL52Rh06PSFygNo53lB4zFia9a76Qkh/W+nBYy5ZPz6mk9/ve+lo7q48u77uyEGRVARERYnLxQs4w9XSGaspK7v/GMl8xCpeBFLyBpGh+CqLw7qspYUH5ahIQ0dW+9DdHab9k83258xdt0dp7eWm5jdz2hsJsRBsYnhZRvmn2QX3LEocFmKI1JT+uTx3t/bSaMl8qKDUMTJ58eOxAypztmZU+IbHTgoPlC+dPWZ3+fgPGeIvjTDEBpn2mQt27XFF3fmN2WgUK5gYxkeJ6T39h4s3i+xVBzJz64OcR0ttogMXm19iatkgdfi94QXmUlNWpv99uuojB03HXaFhM9Uq/9Zb0hGI9vrLMQQQQAABBBBAAAEEEEAAAQRupUCPnXsiB02d2350orD5aGPmLZqfZAgdJNmOV1WduuR/V1TivEVzxynLiKhCUh6fExeqshlzsnOPOAPHpiyYF6ftXI/lkfdP1J0xFnx6wjUkPPHh5BAlCJBDJs+KDdK4LMaDf3GGJcXrxdQP1zfuaSDhMdE6tYhPDh22tvPtPC1HfFj87OlROtlWfshoVo2Pi+jY1Bh1ZEKsXnZZjTlGe714Qyc9bcIo6XhB5ocHLb7hifNmxw6RpAGRqWnJ4f42U1ZGxp5cU7U2ZubcZLHIq0CbMz8lepjzaEF2jtHqGxqX9nhKmNIxVWTCg/fq1RerjIcqpeiU2IZlTZpeXWrZanVE6vyZyvf1FIgvYK4ONEybP3uciF/aaEnLK/mMAAIIIIAAAggggAACCCCAgLcJ3Pbtt982tDkvLy8hIeFmtV+UFh0dfbNKuyXlWPM2bSqwhc5cln7v9Wuo3LwW1btqLtirJX/dYJFfOA/vXJ9xpH/sPy1NHnnzqqAkBBBAAAEEEEAAAQQQQAABBPqAQElJyc1NNppL67Fv7vSBUW3o4tmibZtzrapRsZMNWmd50VGnPCQmXCwNy4YAAggggAACCCCAAAIIIIAAAj1DgPTkVo/D0Ni5D1/6sFCsIZLhkjXakLg08SoQw3Krh4X6EUAAAQQQQAABBBBAAAEEEGgW4DG9zZtBl/DE6pv2JlObtSjf4xORnB6R3M4ZHEIAAQQQQAABBBBAAAEEEEAAgVso0Lk1VG9hQ6kaAQQQQAABBBBAAAEEEEAAAQQQuCUCpCe3hJ1KEUAAAQQQQAABBBBAAAEEEEDAawRIT7xmqGgoAggggAACCCCAAAIIIIAAAgjcEgHSk1vCTqUIIIAAAggggAACCCCAAAIIIOA1AqQnXjNUNBQBBBBAAAEEEEAAAQQQQAABBG6JAOnJLWGnUgQQQAABBBBAAAEEEEAAAQQQ8BoB0hOvGSoaigACCCCAAAIIIIAAAggggAACt0SA9OSWsFMpAggggAACCCCAAAIIIIAAAgh4jQDpidcMFQ1FAAEEEEAAAQQQQAABBBBAAIFbIkB6ckvYqRQBBBBAAAEEEEAAAQQQQAABBLxGQPZcS0tKSjxXOCUjgAACCCCAAAIIIIAAAggggAAC3SPgqfQkISGhezpALQgggAACCCCAAAIIIIAAAggggIBHBXhzx6O8FI4AAggggAACCCCAAAIIIIAAAl4vQHri9UNIBxBAAAEEEEAAAQQQQAABBBBAwKMCpCce5aVwBBBAAAEEEEAAAQQQQAABBBDwegHSE68fQjqAAAIIIIAAAggggAACCCCAAAIeFSA98SgvhSOAAAIIIIAAAggggAACCCCAgNcLkJ54/RDSAQQQQAABBBBAAAEEEEAAAQQQ8KgA6YlHeSkcAQQQQAABBBBAAAEEEEAAAQS8XoD0xOuHkA4ggAACCCCAAAIIIIAAAggggIBHBUhPPMpL4QgggAACCCCAAAIIIIAAAggg4PUCpCdeP4R0AAEEEEAAAQQQQAABBBBAAAEEPCpAeuJRXgpHAAEEEEAAAQQQQAABBBBAAAGvFyA98fohpAMIIIAAAggggAACCCCAAAIIIOBRAdITj/JSOAIIIIAAAggggAACCCCAAAIIeL0A6YnXDyEdQAABBBBAAAEEEEAAAQQQQAABjwqQnniUl8IRQAABBBBAAAEEEEAAAQQQQMDrBWQP9SAvL89DJVMsAggggAACCCCAAAIIIIAAAggg0KpAQkJCq/u7uNNT6YloVnR0dBcbx+UIIIAAAggggAACCCCAAAIIIIBABwVKSko6eGZnT+PNnc6KcT4CCCCAAAIIIIAAAggggAACCPQtAdKTvjXe9BYBBBBAAAEEEEAAAQQQQAABBDorQHrSWTHORwABBBBAAAEEEEAAAQQQQACBviVAetK3xpveIoAAAggggAACCCCAAAIIIIBAZwVITzorxvkIIIAAAggggAACCCCAAAIIINC3BEhP+tZ401sEEEAAAQQQQAABBBBAAAEEEOisAOlJZ8U4HwEEEEAAAQQQQAABBBBAAAEE+pYA6UnfGm96iwACCCCAAAIIIIAAAggggAACnRUgPemsGOcjgAACCCCAAAIIIIAAAggggEDfEiA96VvjTW8RQAABBBBAAAEEEEAAAQQQQKCzAqQnnRXjfAQQQAABBBBAAAEEEEAAAQQQ6FsCpCd9a7zpLQIIIIAAAggggAACCCCAAAIIdFZA7uwFXnP+sX0vbTM6I+c993CY17T5pjfUdeTdF3eUq2MX/TRZ3wODsnOmXbtyy884VWPTlkVWre/28bLmbdpUYAuduSz9XvVNt6dABBBAAAEEEEAAAQQQQACBXiPQc9MT5znrpQCdxrd9apfts9y8TytPWO019ZIqQDtyTEzCZINO1f5VN/lojdlYUGyqtNiq6yRZLdpgiIuL0d+q53GH8e3fFQyZ93TKaEnyGRI+KU7nO1J9c6ITp/XTgsLPKk98aXe6ZP8hw4KiYuMmhGi+a+HmQ7mlp53asYmxkUPlO+SJP1C57hxyk8fmuuKcZbvW73bNemZumCz5BxkSJaemm2+X65rEDgQQQAABBBDPR2DoAAAgAElEQVRAAAEEEEAAgR4u0GPTk5ryrC3Zrvj58+L0bUchzrLMt3aX1gzQhY+NGSQ7z1WWVxRnnr7Y/6cPh7V90U0ekZrDu7a8V2qvl9XDRo7yl6q/PFHxyb4qs23+D1OCuq0RLfpUc6zyhEtqDCF8tJHxiTepw87KD7fs+MTmEvmQftQwn0u2U1WmnCqzNW1RWuR3SopcNRedko9/yH2xhpGijZrYhJCb1NR2inFZKqucklKf2NRBMXFB7ZzMIQQQQAABBBBAAAEEEEAAAQQUgR6bnkiueslpzt22Q2onQLEeq6qpl8OTFswd6w4qJoVmf1juDHBVi3koLcbX+dm7L71Xrpm46Kkkvdht/vCltz5xRs17bnaYrWjzpuwzo1LShpbuLZLuf2JRYNGv/2DynzgvUTJmf3riknrUxAdTI2sKdn1caq3zD42bPXuC7iqyusrcnFK7pAmflT47Wqscqq85svetjJLSorL4IOV9kBrzwdxCU8WJC04RO4yKjE+aHKYR5x3N7EBF9qI3N2SfGpk4K8RWdLD8nMt/eFTyrJSwQVJbPTIcf+WtYrtohfGdVaax856bKV15c6eyocb5Kf1N+w5V2Os1oZNSUye6s6l6+5GcPdmfnaiWteGTEnVHd2QfH5nys8djAlognjyY/Weba8Co5MfTY4e6DS6as7duK6r8pPRsZGygJDmtpo9zio6esF+UVUNGRt2fkBitWFlyNmw5WG1Im6+r3FdwxOYKGBUzPTVxtGjh+n3HXJJkL3pjlTEi7dl7T1x5c6et9qgtuRu3FF4ITXs6PVK0W8yy+c2+E4GJT/w4TtvgOSEttqYgu1I365nZYU5zUVausdJa7ZI1+qj4acmRgfbC1zflnhaVlu944QXxwk7C19tavrljP1qYJ4bqrLjCXxdiSJwaFyQELpq2r8usGp48f0J14cemEw5ZG5E4+0GDMth1NtFl45EqW40kDx4ZHpOQPL6drK8FJh8RQAABBBBAAAEEEEAAAQS8SuC7vnTRXZ10ByiFFmfr9anU/pLkOlFmrDznPkMdljxndurUSG1HuyXLt4vswFaUd6R/iCE0sL8ky7KPVF1WYKoLMYzRus5VFOzdtqdECr8vVOuyleflmC5c3RJLRYV4ch5mSGiITsRBH3XY9EXLnnnWvZSGy1qwbVuO6ez3wuOTEg1aZ8WfdrydVam0tWMVicaI/h0ssuknz0qJ1l4yG3fvMSrpSBubNiox9i7xWK8aNTF11n1KVHRla6jxSHbhlzrD/VHaelv5x/uMZ5Tj9j/vySiuqh4QGhsbpTqafdAq8gXRkauutlZU2uolzdiExuhEHBwQlPjosmefXqREJ5LduPOtzE9Py0HxiVNjRtZXFe3ZtuuzGnFAVpIWpzk/zxwQNTFaJ52vKNxTYHapgiamxIyQBVdofOqsceLTla0j7bmqce5qlIE7mltk14VHBw2Sag7v2ZF92K65N2VWQqh03Lj7/SJrvX9YXGyoGBZZHzNzVuzVU4Ocx/Zt35lbXqMxTE6Oj9DYD+du255rERLy7aJk11fG7E+cQTExoQFOa8m+D0uUQbAWvpv559P9I5JTZiXH3GE3Ze3Yd6SNO/Xa5vJvBBBAAAEEEEAAAQQQQAABbxJo+dDaQ9utBCi71T+dZ7j+9RDd/cmxf80oOpq77WiuHKAbqdcHjYkyROo7vMzH7UpGUF+tue+p9PEapf/HlP9yDghPmh6rrfO3HskoPy+N+IeU2KFOf2t5Rtlpq02SBl2BcjouOOslWavTtsSTVeoG17rKokNWl29o4pwUpfXRWudvtpk+M5YnhBjc59+oInfzJDk0LiVmjCyNlixHtpmOHzHXxIS3rK7FZ/WwyFGD9xZZ5CGjDZHi9RR3DNJyc8phSQ/H6XxcWnvFtk9tFqtTGuqqPHrC5aM2TJudGCJLkaoLv8msaAg9WlxZ4xB5gay98+qODmjsqHTCWGR2ysOS5z4cqzjqXRveKKr4tNQ+NrZhftM3d8XOnhoi1wddMm8qPG+1XJDjRkeN/HSf8fTtQ4LdTXXLu7eajrSn+eyWH5xSyLzHU4KUtXJqXBEPpoWpR0QGaSTd2f8rLTwr+hpnGBM6JKewos5/1NjIIFmyXrm4przYZKtXG6anJwtqKVztWJ9ZaTIdi9ePdo+lUx01MzV2sORUnat4r/y05ZxrnP+588JEM2R0eFSIWg4LCReTgwbfipe1WrVgJwIIIIAAAggggAACCCCAwM0T8IL0RDyzh0YEXR+dKAgDgpIXLosxV1aeqLJYLFWVxqoy4yeHUxb8Y8xVT/nte/loRujd0UnTJt+hVVZC9VWrxbOwUztMWUREpVbmuVS7rssjlIvqW17d4vMFm03MRQjU6wa4d/oO0Yn3PY7bbecbz+lQRbJW634lSJKHaMU7PzXV9mvmv7RReau75TuHuSfmyIM0/rLkdNW5xGs7drtL8glU2ia2ATr9YKniXKtXt7mz5sszyttSw3WNjoHDRGE2m+1cveQeODlQ537jycdfM1CWzrm+aZWxofgutEcWAVrjMsMqtc/pwgNH9u6tFq+Aif9IPq7Wx66xUpvV5kZofDFLrRuqkY7abeeqRWilbGqdzp2aqQIG+YtJLi4xrnJQRLjmSKlx20smsVRwUEjY2BjDsIbi+G8EEEAAAQQQQAABBBBAAIFeJdDRV1xuWadlbZRYUiTyqnTj6sbImqCwmPiU2fOfePpn82OGSDXHjKbTrbT3ygP7NWGHj3g34+rzfZrWgxE8Df8Rx1ujUg0aIp6lnV9axVstV7aL1spjNjEn5frt2tCgQxWJgKOhJJfrsvtDU0va7NH1FTfvaa6xsYvfXDm3tQ42Hx10h0huXDZrw1s9jbtdZ82VZzr0roryCpKydSata7s93zSAXC8s3t9pqOe8cdfuogqnLvEfn3hiyTxxV3R6ayi8uQ0+TSX3u1KSOmL2E4vnJU+MGjXIdbqsaN8fNr3rfqOHDQEEEEAAAQQQQAABBBBAoJcJtP2E2hM6Kmvai05clty3Nrz00ttFTVM5JPUQZUaF5HK1yAREPxqeqS85atwP+u7XVW7Wpg8Va7hKZz/J+VRMXXBv9fbDWe9ue2fDlnyrNEirFbNXzlusF92HnGeUCQ6+DZNZOtwCl93a0GDnOdt5lyRrNAE37tG1MU07tfmolfkg9WetX7ovumi1NHu2uEo7JlxMJ7F/Vlh0skmvpjJ717Ztr28Si7+q7xyqpEhnrA3hgevUaZGyyHfqhnyH+6u99qiUnKu+2u5QWuayWs5eH6C42+z60moV3x49PMoQpNWqXU5lAZarNmU2SsvNR7x85UZoTIdqrGfsko9KFygmHLW1uZznrVZpaEzS7PTFS59eLN6HclZVnuyEfFsFsx8BBBBAAAEEEEAAAQQQQKCHCXRmLkC3Nl2lHRYaE52U0s6sE1kXOkwqMldlb95gHq0f5CvVfFlRcdIlDwkLHy6+6+VKc2WdeCGj1HI0d19BtdZ+pPyikrBI9TfjOVeskjo9pnKnsWLvpvX/O3LYQOUbi60XXHJgTMr9OhGUxI7TlRdU5GZkOyP8q48YS2tk7YSYzn2dso904sCu7Ish8vGi8ouSakyYWPe07R7Jsm9/keCYP8k11kUZOvQVwJqQMSNlc1Vp1i71WZ3zWOlpEXlcn0oExqZMrNhWUJX7xvrSu0Zq5Es2i8XulDSRifFiZZB6Q2yQaZ+5YNceV9Sd35iNYmlbjWF8lJgy1GJtkQ7eQG23x0ejG66WzlhNWdn9x0jmI1ax5q8SjFzXWnngIPHulc1iKvrsknTEaB2glpxnzYfNIfeq+otXe1wnTHlF0t8ZWkxJUYePNxQeM5Zmvau+ENLfVnrwmEvWj48Ri6NcV3hTN6pL927ZZ9FGxcWEDrr9kuWk+NZq7ZAhPfYnqoP6nIYAAggggAACCCCAAAIIIHC9wHeYG3B9IZ7YIwdNndtedKLUKeunLpg/XTy7uk4cNRlLSqtq/Efdmzz/8WT3uqEttsExKUlROl97+SGjRR2bfI+ywse1sw++aydUISmL/ik1NkLXv+ZEVeUJu6QNnZC64J9SgpS1TmTd5Pnzk6I0X5tys3JNdnXU1HkLksQTeWc2H41IJmpKC4oqL2lGx6Y96F49t+0e6e+JCR0sV4sAo/JcB/Mhzfjps8bp/R0VRmOFKyzeMLjVBsr6hAWL5sRF3eV/yVpVYbZ9MyjUMG3Boocjlfb4aGPmzE+JHuY8WpCdY7T6hsalPZ7SuZToiknb7ZFDJovvytG4LMaDf3GGJcUrq5y0uojKsIkpE0M1dVUFOUabPmXBQ+P1A5wVh4zmOl2k+L4hX+eJEmO57VLLYRDj+PicuFCVzZiTnXvEGTg2ZcG8uHa/vEkTM2teXIhsKdqX8d7u3KOXRk1Mmxun68zQci4CCCCAAAIIIIAAAggggIB3CNz27bffNrQ0Ly8vISHhZrValBYdHX2zSuur5dQY31m/77g28cdPxCnfCuyxrc5pF1+pM0CnEYmPy7zvN28ZXVHzl88W38Bza7ae1p5bo0CtCCCAAAIIIIAAAggggAACnRMoKSm5uclGc2m36vm4c/3nbI8K2D97d8PeKnlETPx9Oum4sdQhae6N0t+6W6Ontcej+BSOAAIIIIAAAggggAACCCDQ8wVu3SNyz7fpMy3U3Dt73sV9BabS3D0mSa0dNSE1KSFELHd7q7ae1p5b5UC9CCCAAAIIIIAAAggggAACPUSA9KSHDESrzVDHPPZcTKtHbu5OH3VI/NyQ+JtbaBdK62nt6UJXuBQBBBBAAAEEEEAAAQQQQKAXCPTYVWN7gS1dQAABBBBAAAEEEEAAAQQQQACB3iBAetIbRpE+IIAAAggggAACCCCAAAIIIICA5wRITzxnS8kIIIAAAggggAACCCCAAAIIINAbBEhPesMo0gcEEEAAAQQQQAABBBBAAAEEEPCcAOmJ52wpGQEEEEAAAQQQQAABBBBAAAEEeoMA6UlvGEX6gAACCCCAAAIIIIAAAggggAACnhMgPfGcLSUjgAACCCCAAAIIIIAAAggggEBvECA96Q2jSB8QQAABBBBAAAEEEEAAAQQQQMBzAqQnnrOlZAQQQAABBBBAAAEEEEAAAQQQ6A0CpCe9YRTpAwIIIIAAAggggAACCCCAAAIIeE5A9lzRJSUlniuckhFAAAEEEEAAAQQQQAABBBBAAIHuEfBUepKQkNA9HaAWBBBAAAEEEEAAAQQQQAABBBBAwKMCvLnjUV4KRwABBBBAAAEEEEAAAQQQQAABrxcgPfH6IaQDCCCAAAIIIIAAAggggAACCCDgUQHSE4/yUjgCCCCAAAIIIIAAAggggAACCHi9AOmJ1w8hHUAAAQQQQAABBBBAAAEEEEAAAY8KkJ54lJfCEUAAAQQQQAABBBBAAAEEEEDA6wVIT7x+COkAAggggAACCCCAAAIIIIAAAgh4VID0xKO8FI4AAggggAACCCCAAAIIIIAAAl4vQHri9UNIBxBAAAEEEEAAAQQQQAABBBBAwKMCpCce5aVwBBBAAAEEEEAAAQQQQAABBBDwegHSE68fQjqAAAIIIIAAAggggAACCCCAAAIeFSA98SgvhSOAAAIIIIAAAggggAACCCCAgNcLkJ54/RDSAQQQQAABBBBAAAEEEEAAAQQQ8KgA6YlHeSkcAQQQQAABBBBAAAEEEEAAAQS8XoD0xOuHkA4ggAACCCCAAAIIIIAAAggggIBHBUhPPMpL4QgggAACCCCAAAIIIIAAAggg4PUCsod6kJeX56GSKRYBBBBAAAEEEEAAAQQQQAABBBBoVSAhIaHV/V3c6an0RDQrOjq6i43jcgQQQAABBBBAAAEEEEAAAQQQQKCDAiUlJR08s7On8eZOZ8U4HwEEEEAAAQQQQAABBBBAAAEE+pYA6UnfGm96iwACCCCAAAIIIIAAAggggAACnRUgPemsGOcjgAACCCCAAAIIIIAAAggggEDfEiA96VvjTW8RQAABBBBAAAEEEEAAAQQQQKCzAqQnnRXjfAQQQAABBBBAAAEEEEAAAQQQ6FsCpCd9a7zpLQIIIIAAAggggAACCCCAAAIIdFaA9KSzYpyPAAIIIIAAAggggAACCCCAAAJ9S4D0pG+NN71FAAEEEEAAAQQQQAABBBBAAIHOCpCedFaM8xFAAAEEEEAAAQQQQAABBBBAoG8JkJ70rfGmtwgggAACCCCAAAIIIIAAAggg0FkB0pPOinE+AggggAACCCCAAAIIIIAAAgj0LQHSk7413vQWAQQQQAABBBBAAAEEEEAAAQQ6K0B60lkxzkcAAQQQQAABBBBAAAEEEEAAgb4lIPfY7jrPWS8F6DS+7TXQkvXKluJq/bSnFk3QtHde5485y3at3+2a9czcsKuF3DXam8uTB2h0QZETp8aHDb7Vkg7j278rGDLv6ZTRne8tVyCAAAIIIIAAAggggAACCCCAQNsCPXbuSU151pZNfyi0ONtuuwePuCyVVe3UrB4WGhUZFRURPnLAJUtZ4Y7tueY6D7amI0XXHKs84erIiZyDAAIIIIAAAggggAACCCCAAAKdE7jVMybabq2rXnKac7ftkObPi9Or2j6v6YglZ8OWg9WGtPm6yn0FR2yugFEx01MTR6slp2n7S5kVQ2LT7nN+cqDcelHWRSSmPmjQylLlnl9v+1QyzH82NUSS6q2Fr2/KPReauiypZvum3NMiiijf8cILoTOXpd+rvrp6WRM1fXbDbBeXNXfzpsKzpeWW5KDRkvO0MTvHWH7K7pL9dWNik6fFKC0/mvnrP5j8J6TF1hRkV+pmPTM7zGkuyso1VlqrXbJGHxU/LTkyUJYumravy6wanjjv3uqCj03Wem1oXGrqXdZ9mbnl5yRtROLsmQatEna5rJ9m5xSVn7jgVA0eFRU3PTFSI2bEvOWeEWN8Z5Vp7LznHg5znija97GxQtSg0oZGJ6ZMDlGLa69rid5cmJ1nqjhrd/motUGG+KTEsME3puYMBBBAAAEEEEAAAQQQQAABBPqUQI+de9I4Cu4ApUMzUGQlCHKa8/PMAVETo3XS+YrCPQVmkYH43C6LXp43FZi1Ex98MFYvWUr27Tpoa3uY/cPiYkNFYCLrY2bOig1qN7mRNYEaWap3Op0uqa4y+919Jqsqatqs5AiVVdSSp9QvybJoQPXR3CK7Ljw6aJBUc3jPjuzDds29KbMSQqXjxt3vF1nrxWlKO11fmXLL5PDoUH+ntfzjXW9lHVFHGULVTmtJdmGZMhum5nDmtr1G+x2GWQ/PMgy0Fe3ennvSpY1KjL1L9F81amLqrPv00nnju9uzy/+mj5+ZlhLRv+pPO3YUu/t7TUtqDu/LyC2v00+clpYyOVQ2F2b8d6FNtIQNAQQQQAABBBBAAAEEEEAAAQRaCPTcuSfNjVQClN3qn84zXDMD5LpxVPryzV2xs6eGyPVBl8ybCs9bLRekoEENfRwZOz02TC2Ffe/sEXOh9fMjtnjtdSU07FBpx4QOySmsqPMfNTYyqF2hmpNG03GXyFm0d8qSSx2akDZqwNCwEK3suHSkZN+JUxa7FNRQjVMKmfd4SpCyjEuNK+LBtDD1iMggjaQ7+3+lhWctVqek83XX5NQYHkyOCbBLJyqyzfb+YenJ4zV2n5MVH1ZZv7RJkZrykvIaH11iQnzYECnsDnvl5tzS/7MkPxg5avDeIos8ZLQhcqRkzTNVOeXQqckxYSppjMp69C1jaal1QqLO3b8rLTmTa3eKtuvDIiO1vpGho2OqZX9NT8/T2hg0diOAAAIIIIAAAggggAACCCDgMYF2swGP1dq5gmVtaETQjaKThiLlQJ1O6ZKPv2agLJ1zfdO8FIh6iHaA+5zBGhEQ2C7YL3z3SRYu8abMqqzmTsi6CYkxQ8S7P/7yhcKD+Vl7a5zitSOXqNoliQ+NLdON1DeugKtS+5wuPHBk795q5TRxgo9LObnhqGin0lV/jWitj/+QQGU1XH+1sks5qd5m+0oUas197YXcpvrl87YaKai5NeLEC+fFTBNXxd6XXtjbtNv33DmX1JCeyM0tCQwPH2bMPbpvw4u5mqEjg0KjYsa59dgQQAABBBBAAAEEEEAAAQQQQKCFQI9/WJa1UbPSZ0d29Ct1lJd0lK3tfl0fmjTt+eb6Q23cK+oR4aPuEO/jyLJKox0daQgRb++Id2r2ZeSVS6MT0+aGDao7kvl2rqXl5eKtmYZ/njfu2l1kGRCe8o/pQf4XjO9uM55vcZ4os+Ff7o7I/dz/fc18EFkfNy85tH/jVbKvprWXi8TckwVxzaGKj0qs89J0QXMVurjHn9AfPlx+zGw+XmXKqyj9y+n5P05uf7pNUyn8LwIIIIAAAggggAACCCCAAAJ9RaDtlKEnCIjlWTsTnbTXZMcZi0PSD5JcX1rF0h7yIM0gH6lGFglE9QVHjSSppYvWMxeuLaB55sjVB2TN3yU1rhrb4oDdKt6/kUeFGUKGql1mY42SxXxzbYliTsiXVmudJIdEGYK0svOcU1Te8c1Hq71Dlhw1LlmnHyFLdTbLKaekVjWPonuqjTxosHhbyFYtqfQjxAenzWx1fq//tRGMOLGuxna2Rh0Wl3JvnFRfczjjtYwjlVXnkoOGdrxBnIkAAggggAACCCCAAAIIIIBA7xfosemJSjssNCY6KaXDs05uMFY+p4179klj/K0mk71e1oeHiVzBf7hOJdmrDmTm1gc5j5baxBSOi8o7NCKA6C/eo3GdMOUVSX9niBzR2tyO6+pTDxQzUOynyw6afP3NRoscIEkXTpZX2pR5KS02eeAg5dUhi6nos0vSEaN1gPhWoLPmw+aQ6OtKbGWHWiwoW2AuN2bt84/RX6osLDr6TeisJXMHqWXf/lK93fxJrrEuynCPYdQn+6qKMvfJBu3Xhws+qbo9ev4TM0OuGWyXpWD7NuM3QbHxY4f1r7eXf+kUy84GimazIYAAAggggAACCCCAAAIIIIBAC4Eeu0aoHDR17k2LTkSH1VFxEa7yooLyC/76cbNSJyhruaoiEx68V6++WGU8VClFp8SKlV/FpnxNjy7y/iitr/NEibHcdqmDN4zm3oREkclYjNkHzIMmz58rvren/oSxuLL6muuHTUyZGKqpqyrIMdr0KQseGq8f4Kw4ZDQr36hz400dmTp/umGkqzx37z7jl+Krk+eljlVWRdHfExM6WK42G42V51yDY2bPS44aXFP6cWb24eph49LSp4dcnwDJo5PnPhgTWF2auycj48NPbAOjkh9JiWxYHebGDeEMBBBAAAEEEEAAAQQQQAABBPqKwG3ffvttQ1/z8vISEhJuVr9FadHRHZpNcbNqbLMc15F3X9xRro5d9NNkfY8Ni9psPQcQQAABBBBAAAEEEEAAAQQQQKBDAiUlJTc32WgujTihQwPASQgggAACCCCAAAIIIIAAAggg0GcFSE/67NDTcQQQQAABBBBAAAEEEEAAAQQQ6JBAj101tkOt79BJctjcf13doTM5CQEEEEAAAQQQQAABBBBAAAEEELhOgLkn15GwAwEEEEAAAQQQQAABBBBAAAEEEGghQHrC7YAAAggggAACCCCAAAIIIIAAAgi0J0B60p4OxxBAAAEEEEAAAQQQQAABBBBAAAHSE+4BBBBAAAEEEEAAAQQQQAABBBBAoD0B0pP2dDiGAAIIIIAAAggggAACCCCAAAIIkJ5wDyCAAAIIIIAAAggggAACCCCAAALtCZCetKfDMQQQQAABBBBAAAEEEEAAAQQQQID0hHsAAQQQQAABBBBAAAEEEEAAAQQQaE+A9KQ9HY4hgAACCCCAAAIIIIAAAggggAACpCfcAwgggAACCCCAAAIIIIAAAggggEB7AnJ7B7t2rKSkpGsFcDUCCCCAAAIIIIAAAggggAACCCBw6wU8lZ4kJCTc+s7RAgQQQAABBBBAAAEEEEAAAQQQQKDLAry502VCCkAAAQQQQAABBBBAAAEEEEAAgV4tQHrSq4eXziGAAAIIIIAAAggggAACCCCAQJcFSE+6TEgBCCCAAAIIIIAAAggggAACCCDQqwVIT3r18NI5BBBAAAEEEEAAAQQQQAABBBDosgDpSZcJKQABBBBAAAEEEEAAAQQQQAABBHq1AOlJrx5eOocAAggggAACCCCAAAIIIIAAAl0WID3pMiEFIIAAAggggAACCCCAAAIIIIBArxYgPenVw0vnEEAAAQQQQAABBBBAAAEEEECgywKkJ10mpAAEEEAAAQQQQAABBBBAAAEEEOjVAqQnvXp46RwCCCCAAAIIIIAAAggggAACCHRZgPSky4QUgAACCCCAAAIIIIAAAggggAACvVqA9KRXDy+dQwABBBBAAAEEEEAAAQQQQACBLguQnnSZkAIQQAABBBBAAAEEEEAAAQQQQKBXC5Ce9OrhpXMIIIAAAggggAACCCCAAAIIINBlAdKTLhNSAAIIIIAAAggggAACCCCAAAII9GoB0pNePbx0DgEEEEAAAQQQQAABBBBAAAEEuixAetJlQgpAAAEEEEAAAQQQQAABBBBAAIFeLUB60quHl84hgAACCCCAAAIIIIAAAggggECXBUhPukxIAQgggAACCCCAAAIIIIAAAggg0KsFSE969fDSOQQQQAABBBBAAAEEEEAAAQQQ6LIA6UmXCSkAAQQQQAABBBBAAAEEEEAAAQR6tQDpSa8eXjqHAAIIIIAAAggggAACCCCAAAJdFiA96TIhBSCAAAIIIIAAAggggAACCCCAQK8WkHt17+gcAggoAnl5eUAggMAtFEhISLiFtVM1AggggAACCCCAQNcFSE+6bkgJCHiBAA9vXjBINLGXChBf9tKBpVsIIIAAAggg0LcEeHOnb403vUUAAQQQQAABBBBAAAEEEEAAgc4KkJ50VozzEV13RMgAACAASURBVEAAAQQQQAABBBBAAAEEEECgbwmQnvSt8aa3CCCAAAIIIIAAAggggAACCCDQWYHuXvfkzJkz77///l//+te2Gvr973//oYceGjp0aFsnsB8BBBBAAAEEEEAAAQQQQAABBBDoToHuTk9EdHLPPfcsWbKkrU4W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" } }, "cell_type": "markdown", "id": "76f6d959-ae6f-4c37-9ee8-4d204cc55b8b", "metadata": {}, "source": [ "This establishes a connection to our Core server at `cgjobsup.cigi.illinois.edu`. You can open that link the browser to see it [https://cgjobsup.cigi.illinois.edu](https://cgjobsup.cigi.illinois.edu). You should see `{\"message\":\"Hello World from Compute-V1\"}`.\n", "\n", "Let's examine the rest of the stuff in the command we just ran:\n", "\n", "* `isJupyter=True`, tells the SDK we are using it from a Jupyter interface which is important for \"logging you in\" to the Core\n", "* `protocol=\"HTTPS\"`, tells us what [protocol](https://en.wikipedia.org/wiki/HTTPS) to use when talking to the Core\n", "* `port=443`, tells us what [port](https://en.wikipedia.org/wiki/Port_(computer_networking)) to use when talking to the Core (think of this as making sure we are on the same walkie-talkie channel)\n", "* `suffix=\"v2\"`, is needed because there is a version 1 of Compute that we still support for a few applications, but all new development should be on version 2. We access version 2 by adding \"/v2\" to the to the server address: [https://cgjobsup.cigi.illinois.edu/v2/](https://cgjobsup.cigi.illinois.edu/v2/).\n", "\n", "Now that we are connected, we can show the User Interface (UI) for Compute. When you run the cell below you should see an interface like this:\n", "\n", "![image.png](attachment:a678f0e6-1c3c-446c-b47f-8eca1b157088.png)\n", "\n", "For this simple test, we are just going to run the \"hello_world\" job to practice submitting jobs. All you need to do is click \"Submit Job.\"" ] }, { "cell_type": "code", "execution_count": 3, "id": "7363ca5b-6cb4-44d4-8d76-e7c9da976ed9", "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e0fdbfd04ed141e4ace381ce4ad580a6", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Tab(children=(Output(), Output(), Output(), Output(), Output()), _titles={'0': 'Job Configuration', '1': 'Your…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cybergis.show_ui()" ] }, { "cell_type": "markdown", "id": "e9eb62e4-cb40-42c1-9107-dd5e01c7e4ca", "metadata": {}, "source": [ "When the job begins running, you should see the UI switch tabs to \"Your Job Status\" and you should see \"✌️ Your Job is Here!\" at the top. Compute goes through the various stages of executing your job (registering it with the HPC, uploading the code, submitting the job, and waiting for results) and when it ends you will see a snippet of the job logs at the bottom.\n", "\n", "Congratulations, you have run your first CyberGIS-Compute job! " ] }, { "cell_type": "markdown", "id": "0d393fa2-d2ef-4539-972c-e142289e82b8", "metadata": {}, "source": [ "\n", "## Quick Look at a CyberGIS-Compute Model.\n", "\n", "You might ask, how did CyberGIS-Compute do it? \n", "\n", "Well the job is registered with CyberGIS-Compute along with the Github repository. We can get info on the jobs registered with the Core server with:" ] }, { "cell_type": "code", "execution_count": 4, "id": "cec7d17c-8deb-4bfd-990b-85c24c1d7d05", "metadata": {}, "outputs": [ { "data": { "text/markdown": [ "| link | name | container | repository | commit | \n", "| --- | --- | --- | --- | --- | \n", "| git://wrfhydro-5.x | WRFHydro | wrfhydro-5.x | https://github.com/cybergis/cybergis-compute-v2-wrfhydro.git | NONE | \n", "| git://three-examples | three-examples | cybergisx-0.4 | https://github.com/alexandermichels/cybergis-compute-examples.git | NONE | \n", "| git://summa3 | SUMMA | summa-3.0.3 | https://github.com/cybergis/cybergis-compute-v2-summa.git | NONE | \n", "| git://Subset_AORC_Forcing_Data_Processor | SubsetAORCForcing Data Processor | subsetaorcforcingdata-processor | https://github.com/I-GUIDE/cybergis-compute-subsetaorcforcingdata-processor.git | NONE | \n", "| git://pysal-access | Pysal Access Example | cybergisx-0.4 | https://github.com/cybergis/pysal-access-compute-example.git | NONE | \n", "| git://mpi-test | MPI Hello World | mpich | https://github.com/cybergis/cybergis-compute-mpi-helloworld.git | NONE | \n", "| git://hello_world | hello world | python | https://github.com/cybergis/cybergis-compute-hello-world.git | NONE | \n", "| git://Extract_Inundation_Census_Tracts_Processor | ExtractInundationCensusTracts Data Processor | extractinundationcensustracts-processor | https://github.com/I-GUIDE/cybergis-compute-extractinundationcensustracts-processor.git | NONE | \n", "| git://ERA5_Connector | ERA5 Data Connector | era5input-connector | https://github.com/I-GUIDE/cybergis-compute-era5input-connector.git | NONE | \n", "| git://data_fusion | data fusion | datafusion | https://github.com/cybergis/data_fusion.git | NONE | \n", "| git://Dam_Flood_Inundation_Map_Connector | Dam Flood Inundation Map Connector | damfiminput-connector | https://github.com/I-GUIDE/cybergis-compute-damfiminput-connector.git | NONE | \n", "| git://CUAHSI_Subsetter_Connector | CUAHSISubsetterInput Data Connector | cuahsisubsetterinput-connector | https://github.com/I-GUIDE/cybergis-compute-cuahsisubsetterinput-connector.git | NONE | \n", "| git://covid-access | COVID-19 spatial accessibility | cybergisx-0.4 | https://github.com/cybergis/cybergis-compute-spatial-access-covid-19.git | NONE | \n", "| git://24hour-healthcare-access-NYC | NYC Primary Care Accessibility | cybergisx-0.4 | https://github.com/cybergis/sequence_in_access.git | NONE | " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "cybergis.list_git()" ] }, { "cell_type": "markdown", "id": "8535d6bb-2cb9-407d-b25f-3f03bacac73b", "metadata": {}, "source": [ "The \"hello world\" job is associated with this Github repository: [https://github.com/cybergis/cybergis-compute-hello-world](https://github.com/cybergis/cybergis-compute-hello-world).\n", "\n", "If you were to open the link (feel free to check it out, then come back) the main file to look at is our `manifest.json`. This is the \"instruction manual\" that a model developer gives to CyberGIS-Compute so that we know how to run the model. The manifest for this model is a bit complex, but we will break each part down:\n", "\n", "```\n", "{\n", " \"name\": \"hello world\",\n", " \"container\": \"python\",\n", " \"pre_processing_stage\": \"python setup.py\",\n", " \"execution_stage\": \"bash main.sh\",\n", " \"post_processing_stage\": \"python cleanup.py\",\n", " \"slurm_input_rules\": {\n", " \"time\": {\n", " \"max\": 50,\n", " \"min\": 10,\n", " \"default_value\": 10,\n", " \"step\": 1,\n", " \"unit\": \"Minutes\"\n", " },\n", " \"num_of_task\": {\n", " \"max\": 6,\n", " \"min\": 1,\n", " \"default_value\": 2,\n", " \"step\": 1\n", " }\n", " },\n", " \"require_upload_data\": false,\n", " \"param_rules\": {\n", " \"input_a\": {\n", " \"type\": \"integer\",\n", " \"require\": true,\n", " \"max\": 100,\n", " \"min\": 0,\n", " \"default_value\": 50,\n", " \"step\": 10\n", " },\n", " \"input_b\": {\n", " \"type\": \"string_option\",\n", " \"options\": [\"foo\", \"bar\"],\n", " \"default_value\": \"foo\"\n", " }\n", " },\n", " \"default_result_folder_downloadable_path\": \"/demo_quick_start_0\",\n", " \"supported_hpc\": [\"anvil_community\", \"expanse_community\", \"keeling_community\"],\n", " \"default_hpc\": \"keeling_community\"\n", "}\n", "```\n", "\n", "Breaking this line-by-line:\n", "\n", "* `\"name\": \"hello world\"` - name of model\n", "* `\"container\": \"python\"` - the container to run your code in. Think of this as a pre-built environment with software for now.\n", "* `\"pre_processing_stage\": \"python setup.py\"` - the first (or pre-processing) step of your model is to run this `setup.py` file\n", "* `\"execution_stage\": \"bash main.sh\"` - the second (or main) step of your model is the run this Bash script\n", "* `\"post_processing_stage\": \"python cleanup.py\"` - the third (or post-processing) step of your model is run this python script.\n", "* `\"slurm_input_rules\": { ... }` - helps us tell the HPC what computing resources you'll need\n", "* `\"require_upload_data\": false` - we aren't requiring the user to upload any data (but you can if your model requires a certain kind of data)\n", "* `\"param_rules\": { ... }` - allows you to define parameters for you model and create widgets in the interface to enter them\n", "* `\"default_result_folder_downloadable_path\": \"/demo_quick_start_0\"` - this is the default path to download when downloading results\n", "* `\"supported_hpc\": [\"anvil_community\", \"expanse_community\", \"keeling_community\"]` - a list of HPC resources you can run the model on\n", "* `\"default_hpc\": \"keeling_community\"` - the default HPC to run on\n", "\n", "We will talk more about the manifest with our next hands-on session and more information [can be found in the CyberGIS-Compute documentation](https://cybergis.github.io/cybergis-compute-python-sdk/model_contribution/develop_model.html#advanced-topic-manifest-options)." ] }, { "cell_type": "code", "execution_count": null, "id": "57793572-76a1-44ae-83f1-4d4323866aa2", "metadata": {}, "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.8.12" } }, "nbformat": 4, "nbformat_minor": 5 }