├── .gitignore ├── ASSET LICENSE.md ├── LICENSE.md ├── README.md ├── build and upload all.bat ├── build and upload all.command ├── build for desktop.bat ├── build for desktop.command ├── build for itch.bat ├── build for itch.command ├── build for phonegap.bat ├── build for phonegap.command ├── build for steam.bat ├── build for steam.command ├── build.js ├── config.example.json ├── gruntfile.js ├── install grunt.bat ├── install grunt.command ├── install htmle.bat ├── install htmle.command ├── overrides ├── phonegap │ ├── config.xml │ ├── index.html │ ├── js │ │ ├── htmle_audio.js │ │ ├── htmle_core.js │ │ └── main.js │ └── res │ │ ├── icon │ │ ├── android │ │ │ ├── drawable-hdpi-icon.png │ │ │ ├── drawable-ldpi-icon.png │ │ │ ├── drawable-mdpi-icon.png │ │ │ ├── drawable-xhdpi-icon.png │ │ │ ├── drawable-xxhdpi-icon.png │ │ │ └── drawable-xxxhdpi-icon.png │ │ └── ios │ │ │ ├── icon-1024.jpg │ │ │ ├── icon-40.png │ │ │ ├── icon-40@2x.png │ │ │ ├── icon-50.png │ │ │ ├── icon-50@2x.png │ │ │ ├── icon-60.png │ │ │ ├── icon-60@2x.png │ │ │ ├── icon-60@3x.png │ │ │ ├── icon-72.png │ │ │ ├── icon-72@2x.png │ │ │ ├── icon-76.png │ │ │ ├── icon-76@2x.png │ │ │ ├── icon-small.png │ │ │ ├── icon-small@2x.png │ │ │ ├── icon-small@3x.png │ │ │ ├── icon.png │ │ │ └── icon@2x.png │ │ └── screen │ │ ├── android │ │ ├── drawable-land-hdpi-screen.png │ │ ├── drawable-land-ldpi-screen.png │ │ ├── drawable-land-mdpi-screen.png │ │ ├── drawable-land-xhdpi-screen.png │ │ ├── drawable-land-xxhdpi-screen.png │ │ ├── drawable-land-xxxhdpi-screen.png │ │ ├── drawable-port-hdpi-screen.png │ │ ├── drawable-port-ldpi-screen.png │ │ ├── drawable-port-mdpi-screen.png │ │ ├── drawable-port-xhdpi-screen.png │ │ ├── drawable-port-xxhdpi-screen.png │ │ └── drawable-port-xxxhdpi-screen.png │ │ └── ios │ │ ├── Default-568h@2x~iphone.png │ │ ├── Default-667h.png │ │ ├── Default-736h.png │ │ ├── Default-Landscape-736h.png │ │ ├── Default-Landscape@2x~ipad.png │ │ ├── Default-Landscape~ipad.png │ │ ├── Default-Portrait@2x~ipad.png │ │ ├── Default-Portrait~ipad.png │ │ ├── Default@2x~iphone.png │ │ └── Default~iphone.png └── steam │ ├── index.html │ ├── js │ └── htmle_achievements.js │ └── steam_appid.txt ├── package.json ├── src ├── icons │ ├── How to make icons.txt │ ├── appIcon.hqx │ ├── appIcon.ico │ └── appIcon.png └── main │ ├── assets │ ├── shot.mp3 │ ├── song.mp3 │ └── song2.mp3 │ ├── index.html │ ├── js │ ├── buzz.min.js │ ├── htmle_achievements.js │ ├── htmle_audio.js │ ├── htmle_core.js │ ├── jquery-1.11.0.min.js │ ├── localforage.min.js │ └── main.js │ └── package.json ├── upload to itch.bat ├── upload to itch.command ├── upload to phonegap.bat ├── upload to phonegap.command ├── upload to steam.bat └── upload to steam.command /.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | dist/ 3 | node_modules/ 4 | temp/ 5 | config.json 6 | lib 7 | greenworks.js 8 | -------------------------------------------------------------------------------- /ASSET LICENSE.md: -------------------------------------------------------------------------------- 1 | Creative Commons Legal Code 2 | CC0 1.0 Universal 3 | Official translations of this legal tool are available 4 | 5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. 6 | 7 | Statement of Purpose 8 | 9 | The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). 10 | 11 | Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. 12 | 13 | For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. 14 | 15 | 1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: 16 | 17 | the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; 18 | moral rights retained by the original author(s) and/or performer(s); 19 | publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; 20 | rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; 21 | rights protecting the extraction, dissemination, use and reuse of data in a Work; 22 | database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and 23 | other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. 24 | 25 | 2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. 26 | 27 | 3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. 28 | 29 | 4. Limitations and Disclaimers. 30 | 31 | No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. 32 | Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. 33 | Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. 34 | Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. 35 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 gritfish 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # HTMLE Helps To Make Life Easier 2 | ### HTML goes in, games come out. 3 | 4 | **HTMLE is a project template and a set of scripts that take care of a lot of the work involved in setting up these tools and simplifying everything.** 5 | 6 | ## Before we get started 7 | 1) **You're going to need to install:** 8 | * [Node.js](https://nodejs.org/en/download/) 9 | * [The itch.io app](https://itch.io/app) or [Butler](https://itch.io/docs/butler) 10 | 11 | 2) **Download the HTMLE zip, and extract it where you like on your computer.** 12 | 13 | 3) **Install Grunt** 14 | On PC: right-click "install grunt.bat" and select "Run as administrator" 15 | On Mac: double click "install grunt.command" 16 | In Terminal: Type "npm install -g grunt-cli" and hit enter 17 | 18 | *The window will close when it's finished* 19 | *You may see some "warnings" during the installation but it'll be fine.* 20 | 21 | 4) **Install HTMLE files** 22 | On PC: right-click "install htmle.bat" and select "Run as administrator" 23 | On Mac: double click "install htmle.command" 24 | In Terminal: Type "npm install" and hit enter 25 | 26 | *This task will take a while to run, as it downloads things. It'll close when it's finished* 27 | *If these steps went well, you'll now have a "node_modules" folder inside the htmle folder* 28 | 29 | 5) **Create a config.json file** 30 | Create a copy of config.example.json named config.json, and update the information in it. 31 | 32 | --- 33 | 34 | ## The example project 35 | In src/main and the overrides folders, you'll find an example app that shows the basic functionality capable with HTMLE. 36 | You'll also find JavaScript files "htmle_audio.js","htmle_core.js" and "htmle_achievements.js" - you'll need to include these in your html file the way they're included in the index.html files in each folder. 37 | 38 | There are some subtle differences between the main index.html file and the Steam/Phonegap ones. 39 | 40 | The Phonegap file includes some extra js: 41 | ``` 42 | 43 | 44 | 45 | ``` 46 | And the Steam file includes a canvas element and an onload attribute on the body tag: 47 | ``` 48 | 49 | ... 50 | 51 | ``` 52 | These will need to be kept in your own project to keep things functioning properly, but otherwise you can do what you like! There's no reason you can't strip out jquery, buzz and localforage and replace them with libraries you prefer! 53 | 54 | --- 55 | 56 | ## Building for PC/Mac/Linux (Difficulty: Super Easy) 57 | 1) **Open "src/main/package.json" and enter some information about your game.** 58 | YOUR_GAME_NAME 59 | 60 | 2) **Replace the default icons in "src/icons" with your own.** 61 | You can use a free online tool to make Windows/mac icons here: [https://iconverticons.com/online/](https://iconverticons.com/online/) 62 | 63 | 3) **Run the compiler:** 64 | On PC: right-click "build for desktop.bat" and select "Run as administrator" 65 | On Mac: double click "build for desktop.command" 66 | In Terminal: Type "grunt desktop" and hit enter 67 | 68 | *This task compiles src/main to dist/desktop.* 69 | 70 | **The first time the compiler runs, it'll download a bunch of files that will take a while.** 71 | 72 | --- 73 | 74 | ## Building for PC/Mac/Linux with itch.io (Difficulty: Easy) 75 | 1) **Open "src/main/package.json" and enter some information about your game.** 76 | YOUR_GAME_NAME 77 | 78 | 2) **Replace these bits in gruntfile.js with your itch.io details:** 79 | YOUR_ITCH_ACCOUNT/YOUR_ITCH_GAME_URL 80 | 81 | 3) **Replace the default icons in "src/icons" with your own.** 82 | (There's instructions in that folder on how to make icons) 83 | 84 | 4) **Run the compiler:** 85 | On PC: right-click "build for itch.bat" and select "Run as administrator" 86 | On Mac: double click "build for itch.command" 87 | In Terminal: "grunt itch" and hit enter 88 | 89 | 5) **Run the uploader:** 90 | On PC: right-click "upload to itch.bat" and select "Run as administrator" 91 | On Mac: double click "upload to itch.command" 92 | In Terminal: "grunt upload-itch" and hit enter 93 | 94 | --- 95 | 96 | ## Building for PC/Mac/Linux with Steam (Difficulty: Medium) 97 | For integrating Steam with your game, you'll need to do a bit of extra downloading. 98 | 99 | 1) **You'll need to download:** 100 | * Greenworks ([https://github.com/greenheartgames/greenworks/releases](https://github.com/greenheartgames/greenworks/releases)) and download all of the "greenworks-v0.12.0-nw-v0.26.6" releases 101 | * Steam SDK v1.41 (available through your steam admin page - [https://partner.steamgames.com](https://partner.steamgames.com)) - HTMLE expects the Steam SDK to exist at C:/SteamSDK/ but you can change this in the gruntfile.js file. 102 | 103 | 2) **Copy files from the Greenworks Release and the Steam SDK so that your "overrides/steam" folder looks like this:** 104 | Follow the guide here: [https://github.com/greenheartgames/greenworks/blob/master/docs/quick-start-nwjs.md](https://github.com/greenheartgames/greenworks/blob/master/docs/quick-start-nwjs.md) 105 | ``` 106 | greenworks.js 107 | steam_appid.txt 108 | /lib 109 | greenworks-linux32.node 110 | greenworks-linux64.node 111 | greenworks-osx64.node 112 | greenworks-win32.node 113 | greenworks-win64.node 114 | libsteam_api.dylib 115 | libsteam_api.so 116 | steam_api.dll 117 | steam_api.lib 118 | steam_api64.dll 119 | steam_api64.lib 120 | /Linux32 121 | libsteam_api.so 122 | /Linux64 123 | libsteam_api.so 124 | /Osx32 125 | libsteam_api.dylib 126 | /Win64 127 | steam_api64.dll 128 | steam_api64.lib 129 | ``` 130 | 131 | 3) **Run the compiler:** 132 | On PC: right-click "build for steam.bat" and select "Run as administrator" 133 | On Mac: double click "build for steam.command" 134 | In Terminal: Type "grunt steam" and hit enter 135 | 136 | 5) **Run the uploader:** 137 | On PC: right-click "upload to steam.bat" and select "Run as administrator" 138 | On Mac: double click "upload to steam.command" 139 | In Terminal: "grunt upload-steam" and hit enter 140 | 141 | 142 | --- 143 | 144 | ## Building for iOS and Android with Phonegap (Difficulty: Hard) 145 | 1) **You'll need to make an account on build.phonegap.com.** 146 | Making one app at a time is free, and you can add more with a small monthly fee. 147 | 148 | 2) **Then you'll need to add signing keys for ios and android to your account, there's instructions here:** 149 | [http://docs.phonegap.com/phonegap-build/signing](http://docs.phonegap.com/phonegap-build/signing) (This is probably the hardest part of the entire process.) 150 | 151 | 3) **When that's done, replace these bits in the config.json file with your phonegap details:** 152 | ``` 153 | PHONEGAP_APP_ID 154 | PHONEGAP_EMAIL 155 | PHONEGAP_PASSWORD 156 | PHONEGAP_IOS_PASSWORD 157 | PHONEGAP_ANDROID_PASSWORD 158 | PHONEGAP_ANDROID_KEYSTORE_PASSWORD 159 | ``` 160 | 161 | 4) **Run the compiler:** 162 | On PC: right-click "build for phonegap.bat" and select "Run as administrator" 163 | On Mac: double click "build for phonegap.command" 164 | In Terminal: Type "grunt phonegap" and hit enter 165 | 166 | 5) **Run the uploader:** 167 | On PC: right-click "upload to phonegap.bat" and select "Run as administrator" 168 | On Mac: double click "upload to phonegap.command" 169 | In Terminal: "grunt upload-phonegap" and hit enter 170 | 171 | Large files might time out using the uploader. If this happens, you'll need to upload the zip file from the /dist folder manually through the web interface. 172 | 173 | --- 174 | 175 | ## Build and upload to all platforms 176 | **Congratulations! If you've made it this far, you should be able to run the 'build and upload all' script, which does EVERYTHING at once!** 177 | On PC: right-click "build and upload all.bat" and select "Run as administrator" 178 | On Mac: double click "build and upload all.command" 179 | In Terminal: Type "grunt runall" and hit enter 180 | 181 | --- 182 | 183 | ## FAQs and things to remember 184 | **Audio:** Look at the htmle_audio.js and main.js files for examples on how to code audio consistently. 185 | **Icons and loading screens:** iOS and Android need a lot of differently sized images for icons and loading screens. There's a separate tool avaiable at [https://gritfish.itch.io/windowdresser](https://gritfish.itch.io/windowdresser) that takes a lot of the work out of this process. 186 | 187 | --- 188 | 189 | ## Credits/License things: 190 | **Example sounds used:** 191 | * [https://freesound.org/people/Connum/sounds/12691/](https://freesound.org/people/Connum/sounds/12691/) 192 | * [https://freesound.org/people/TexasMusicForge/sounds/2684/](https://freesound.org/people/TexasMusicForge/sounds/2684/) 193 | * [https://freesound.org/people/coolguy244e/sounds/266915/](https://freesound.org/people/coolguy244e/sounds/266915/) 194 | -------------------------------------------------------------------------------- /build and upload all.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start grunt runall -------------------------------------------------------------------------------- /build and upload all.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | grunt runall -------------------------------------------------------------------------------- /build for desktop.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start grunt desktop -------------------------------------------------------------------------------- /build for desktop.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | grunt desktop -------------------------------------------------------------------------------- /build for itch.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start grunt itch -------------------------------------------------------------------------------- /build for itch.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | grunt itch -------------------------------------------------------------------------------- /build for phonegap.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start grunt phonegap -------------------------------------------------------------------------------- /build for phonegap.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | grunt phonegap -------------------------------------------------------------------------------- /build for steam.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start grunt steam -------------------------------------------------------------------------------- /build for steam.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | grunt steam -------------------------------------------------------------------------------- /build.js: -------------------------------------------------------------------------------- 1 | var NwBuilder = require('nw-builder'); 2 | 3 | var appPlatform = 'desktop'; 4 | var appName = 'testApp'; 5 | var appVersion = '1.0.0'; 6 | 7 | function build_version(VERSION){ 8 | VERSION.build().then(function () { 9 | console.log('all done!'); 10 | }).catch(function (error) { 11 | console.log(error); 12 | }); 13 | } 14 | 15 | appPlatform = process.argv[2]; 16 | appName = process.argv[3]; 17 | appVersion = process.argv[4]; 18 | 19 | var options_desktop = { 20 | appName: appName, 21 | appVersion: appVersion, 22 | platforms: ['win64','osx64','linux'], 23 | version: '0.26.6', 24 | files: ['./temp/desktop/**/**'], 25 | buildDir: './dist/'+appName+'_desktop - '+appVersion, 26 | credits: './temp/desktop/index.html', 27 | macCredits: './temp/desktop/index.html', 28 | macIcns: './src/icons/appIcon.hqx', 29 | winIco: './src/icons/appIcon.ico', 30 | }; 31 | var options_steam = { 32 | appName: appName, 33 | appVersion: appVersion, 34 | platforms: ['win64','osx64','linux'], 35 | version: '0.26.6', 36 | files: ['./temp/steam/**/**'], 37 | buildDir: './dist/'+appName+'_steam - '+appVersion, 38 | credits: './temp/steam/index.html', 39 | macCredits: './temp/steam/index.html', 40 | macIcns: './src/icons/appIcon.hqx', 41 | winIco: './src/icons/appIcon.ico', 42 | }; 43 | var options_itch = { 44 | appName: appName, 45 | appVersion: appVersion, 46 | platforms: ['win64','osx64','linux'], 47 | version: '0.26.6', 48 | files: ['./temp/itch/**/**'], 49 | buildDir: './dist/'+appName+'_itch - '+appVersion, 50 | credits: './temp/itch/index.html', 51 | macCredits: './temp/itch/index.html', 52 | macIcns: './src/icons/appIcon.hqx', 53 | winIco: './src/icons/appIcon.ico', 54 | }; 55 | 56 | var nw_desktop = new NwBuilder(options_desktop); 57 | var nw_steam = new NwBuilder(options_steam); 58 | var nw_itch = new NwBuilder(options_itch); 59 | 60 | nw_desktop.on('log', console.log); 61 | nw_steam.on('log', console.log); 62 | nw_itch.on('log', console.log); 63 | 64 | if(appPlatform == 'desktop'){ 65 | build_version(nw_desktop); 66 | }else if(appPlatform == 'steam'){ 67 | build_version(nw_steam); 68 | }else if(appPlatform == 'itch'){ 69 | build_version(nw_itch); 70 | } -------------------------------------------------------------------------------- /config.example.json: -------------------------------------------------------------------------------- 1 | { 2 | "GAME_ID": "com.htmle.example", 3 | "GAME_NAME": "HTMLE Example App", 4 | "GAME_VERSION": "1.0.0", 5 | "GAME_WINDOW_TITLE": "HTMLE Example App", 6 | "GAME_DESCRIPTION": "This is an example game.", 7 | 8 | "YOUR_WEBSITE": "http://gritfish.itch.io/htmle", 9 | "YOUR_EMAIL": "press@gritfish.net", 10 | "YOUR_NAME": "John Kane", 11 | 12 | "PHONEGAP_APP_ID": "123456", 13 | "PHONEGAP_EMAIL": "myPHONEGAPaccount@email.com", 14 | "PHONEGAP_PASSWORD": "thepasswordtomyaccount", 15 | "PHONEGAP_IOS_PASSWORD": "iossigningpassword", 16 | "PHONEGAP_ANDROID_PASSWORD": "androidsigningpassword", 17 | "PHONEGAP_ANDROID_KEYSTORE_PASSWORD": "keystorepassword", 18 | 19 | "ITCH_ACCOUNT": "itchusername", 20 | "ITCH_GAME_URL": "gameuristem", 21 | 22 | "STEAM_USERNAME": "steamusername", 23 | "STEAM_PASSWORD": "steampassword", 24 | "STEAM_BUILDFILE": "app_build_1000" 25 | } 26 | -------------------------------------------------------------------------------- /gruntfile.js: -------------------------------------------------------------------------------- 1 | module.exports = function(grunt) { 2 | grunt.loadNpmTasks('grunt-contrib-clean'); 3 | grunt.loadNpmTasks('grunt-contrib-compress'); 4 | grunt.loadNpmTasks('grunt-contrib-copy'); 5 | grunt.loadNpmTasks('grunt-exec'); 6 | grunt.loadNpmTasks('grunt-mkdir'); 7 | grunt.loadNpmTasks('grunt-nw-builder'); 8 | grunt.loadNpmTasks('grunt-phonegap-build'); 9 | grunt.loadNpmTasks('grunt-string-replace'); 10 | 11 | let config; 12 | try { 13 | config = JSON.parse(require('fs').readFileSync('./config.json', 'utf8')); 14 | } catch (err) { 15 | console.warn('Config file not found, see README.md if compliling for PhoneGap or Itch'); 16 | // Use a dummy config object so desktop building doesn't fail. 17 | config = { 18 | "GAME_ID": "com.htmle.example", 19 | "GAME_NAME": "HTMLE Example App", 20 | "GAME_VERSION": "1.0.0", 21 | "GAME_WINDOW_TITLE": "HTMLE Example App", 22 | "GAME_DESCRIPTION": "This is an example game.", 23 | 24 | "YOUR_WEBSITE": "http://gritfish.itch.io/htmle", 25 | "YOUR_EMAIL": "press@gritfish.net", 26 | "YOUR_NAME": "John Kane", 27 | 28 | "PHONEGAP_APP_ID": "123456", 29 | "PHONEGAP_EMAIL": "myPHONEGAPaccount@email.com", 30 | "PHONEGAP_PASSWORD": "thepasswordtomyaccount", 31 | "PHONEGAP_IOS_PASSWORD": "iossigningpassword", 32 | "PHONEGAP_ANDROID_PASSWORD": "androidsigningpassword", 33 | "PHONEGAP_ANDROID_KEYSTORE_PASSWORD": "keystorepassword", 34 | 35 | "ITCH_ACCOUNT": "itchusername", 36 | "ITCH_GAME_URL": "gameuristem", 37 | 38 | "STEAM_USERNAME": "steamusername", 39 | "STEAM_PASSWORD": "steampassword", 40 | "STEAM_BUILDFILE": "app_build_1000" 41 | }; 42 | } 43 | 44 | grunt.initConfig({ 45 | // Create folders 46 | mkdir: { 47 | defaults: { 48 | options: { 49 | create: [ 50 | 'src', 51 | 'src/main', 52 | 'temp', 53 | 'dist', 54 | 'overrides', 55 | 'overrides/steam', 56 | 'overrides/itch', 57 | 'overrides/phonegap' 58 | ] 59 | } 60 | } 61 | }, 62 | 63 | 'string-replace': { 64 | all: { 65 | files:{ 66 | './temp/': ['./temp/**/*.xml','./temp/**/*.html'] 67 | }, 68 | options: { 69 | replacements: [ 70 | {pattern: 'GAME_NAME', replacement: `${config.GAME_NAME}`}, 71 | {pattern: 'GAME_ID', replacement: `${config.GAME_ID}`}, 72 | {pattern: 'GAME_NAME', replacement: `${config.GAME_NAME}`}, 73 | {pattern: 'GAME_VERSION', replacement: `${config.GAME_VERSION}`}, 74 | {pattern: 'GAME_WINDOW_TITLE', replacement: `${config.GAME_WINDOW_TITLE}`}, 75 | {pattern: 'GAME_DESCRIPTION', replacement: `${config.GAME_DESCRIPTION}`}, 76 | {pattern: 'YOUR_WEBSITE', replacement: `${config.YOUR_WEBSITE}`}, 77 | {pattern: 'YOUR_EMAIL', replacement: `${config.YOUR_EMAIL}`}, 78 | {pattern: 'YOUR_NAME', replacement: `${config.YOUR_NAME}`} 79 | ] 80 | } 81 | } 82 | }, 83 | 84 | // Clears folders before 85 | clean: { 86 | all: [ 87 | './dist/'+`${config.GAME_NAME}`+'desktop - '+`${config.GAME_VERSION}`, 88 | './dist/'+`${config.GAME_NAME}`+'_steam - '+`${config.GAME_VERSION}`, 89 | './dist/'+`${config.GAME_NAME}`+'_itch - '+`${config.GAME_VERSION}`, 90 | './temp/contentbuilder', 91 | './temp/android', 92 | './temp' 93 | ], 94 | desktop: ['./dist/'+`${config.GAME_NAME}`+'desktop - '+`${config.GAME_VERSION}`, './temp/desktop'], 95 | steam: ['./dist/'+`${config.GAME_NAME}`+'_steam - '+`${config.GAME_VERSION}`, './temp/steam'], 96 | itch: ['./dist/'+`${config.GAME_NAME}`+'_itch - '+`${config.GAME_VERSION}`, './temp/itch'], 97 | phonegap: ['./temp/phonegap'] 98 | }, 99 | 100 | // Copies all your files from src to temp 101 | copy: { 102 | desktop: { cwd: './src/main', dest: './temp/desktop', expand: true, src: '**' }, 103 | steam: { cwd: './src/main', dest: './temp/steam', expand: true, src: '**' }, 104 | steamOverrides: { cwd: './overrides/steam', dest: './temp/steam', expand: true, src: '**' }, 105 | itch: { cwd: './src/main', dest: './temp/itch', expand: true, src: '**' }, 106 | itchOverrides: { cwd: './overrides/itch', dest: './temp/itch', expand: true, src: '**' }, 107 | phonegap: { cwd: './src/main', dest: './temp/phonegap', expand: true, src: '**' }, 108 | phonegapOverrides: { cwd: './overrides/phonegap', dest: './temp/phonegap', expand: true, src: '**' }, 109 | itchAndroid: { 110 | expand: true, 111 | src: ['dist/'+`${config.GAME_NAME}`+'_android - '+`${config.GAME_VERSION}`+'.apk'], 112 | rename: function () { 113 | return 'temp/android/'+`${config.GAME_NAME}`+'.apk'; 114 | } 115 | }, 116 | steamContentBuilder:{cwd:'./dist/'+`${config.GAME_NAME}`+'_steam - '+`${config.GAME_VERSION}`+'/'+`${config.GAME_NAME}`, dest:'./temp/contentbuilder', expand: true, src: '**'} 117 | }, 118 | 119 | // Creates the zip file to upload to Adobe Phonegap Build 120 | compress: { 121 | phonegap: { 122 | options: { 123 | archive: 'dist/'+`${config.GAME_NAME}`+'_phonegap - '+`${config.GAME_VERSION}`+'.zip' 124 | }, 125 | files: [ 126 | {expand: true, cwd:'temp/phonegap', src: ["**"], dest: '.'} 127 | ] 128 | } 129 | }, 130 | 131 | //Phonegap build only works if the file is small, might need to be manually uploaded (EASY MODE) 132 | "phonegap-build": { 133 | build: { 134 | options: { 135 | archive: 'dist/'+`${config.GAME_NAME}`+'_phonegap - '+`${config.GAME_VERSION}`+'.zip', 136 | "appId": `${config.PHONEGAP_APP_ID}`, 137 | "user": { 138 | "email": `${config.PHONEGAP_EMAIL}`, 139 | "password": `${config.PHONEGAP_PASSWORD}` 140 | }, 141 | download: { 142 | ios: 'dist/'+`${config.GAME_NAME}`+'_ios - '+`${config.GAME_VERSION}`+'.ipa', 143 | android: 'dist/'+`${config.GAME_NAME}`+'_android - '+`${config.GAME_VERSION}`+'.apk' 144 | }, 145 | keys: { 146 | ios: { "password": `${config.PHONEGAP_IOS_PASSWORD}` }, 147 | android: { "key_pw": `${config.PHONEGAP_ANDROID_PASSWORD}`, "keystore_pw": `${config.PHONEGAP_ANDROID_KEYSTORE_PASSWORD}` } 148 | } 149 | } 150 | } 151 | }, 152 | 153 | //Used to call node.js and butler scripts directly 154 | exec: { 155 | builddesktop: 'node build.js desktop "'+`${config.GAME_NAME}`+'" "'+`${config.GAME_VERSION}`+'"', 156 | builditch: 'node build.js itch "'+`${config.GAME_NAME}`+'" "'+`${config.GAME_VERSION}`+'"', 157 | buildsteam: 'node build.js steam "'+`${config.GAME_NAME}`+'" "'+`${config.GAME_VERSION}`+'"', 158 | 159 | butlerlogin: 'butler login', 160 | butlerwin64: `butler push "dist/${config.GAME_NAME}_itch - ${config.GAME_VERSION}/${config.GAME_NAME}/win64" ${config.ITCH_ACCOUNT}/${config.ITCH_GAME_URL}:win64 --userversion ${config.GAME_VERSION}`, 161 | butlermac: `butler push "dist/${config.GAME_NAME}_itch - ${config.GAME_VERSION}/${config.GAME_NAME}/osx64" ${config.ITCH_ACCOUNT}/${config.ITCH_GAME_URL}:mac --userversion ${config.GAME_VERSION}`, 162 | butlerlinux64: `butler push "dist/${config.GAME_NAME}_itch - ${config.GAME_VERSION}/${config.GAME_NAME}/linux64" ${config.ITCH_ACCOUNT}/${config.ITCH_GAME_URL}:linux64 --userversion ${config.GAME_VERSION}`, 163 | butlerandroid: `butler push "temp/android" ${config.ITCH_ACCOUNT}/${config.ITCH_GAME_URL}:android --userversion ${config.GAME_VERSION}`, 164 | 165 | uploadsteam: 'C:/SteamSDK/tools/ContentBuilder/builder/steamcmd.exe +login "'+`${config.STEAM_USERNAME}`+'" "'+`${config.STEAM_PASSWORD}`+'" +run_app_build_http ..\\scripts\\'+`${config.STEAM_BUILDFILE}`+'.vdf +quit' 166 | } 167 | 168 | }); 169 | 170 | 171 | grunt.registerTask('cleanfolders', ['clean:all']); 172 | grunt.registerTask('setup', ['mkdir:defaults']); 173 | 174 | grunt.registerTask('desktop', ['clean:desktop', 'copy:desktop', 'string-replace', 'exec:builddesktop']); 175 | grunt.registerTask('itch', ['clean:itch', 'copy:itch', 'copy:itchOverrides', 'string-replace', 'exec:builditch']); 176 | grunt.registerTask('phonegap', ['clean:phonegap', 'copy:phonegap', 'copy:phonegapOverrides', 'string-replace', 'compress:phonegap']); 177 | grunt.registerTask('steam', ['clean:steam', 'copy:steam', 'copy:steamOverrides', 'string-replace', 'exec:buildsteam', 'copy:steamContentBuilder']); 178 | 179 | grunt.registerTask('upload-itch', ['exec:butlerlogin', 'exec:butlerwin64', 'exec:butlermac', 'exec:butlerlinux64', 'exec:butlerandroid']); 180 | grunt.registerTask('upload-phonegap', ['phonegap-build']); 181 | grunt.registerTask('upload-steam', ['exec:uploadsteam']); 182 | 183 | grunt.registerTask('runall', ['cleanfolders', 'desktop', 'steam', 'itch', 'phonegap', 'upload-phonegap', 'copy:itchAndroid', 'upload-itch', 'upload-steam']); 184 | 185 | }; 186 | 187 | -------------------------------------------------------------------------------- /install grunt.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start npm install -g grunt-cli -------------------------------------------------------------------------------- /install grunt.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | npm install -g grunt-cli -------------------------------------------------------------------------------- /install htmle.bat: -------------------------------------------------------------------------------- 1 | @setlocal enableextensions 2 | @cd /d "%~dp0" 3 | start npm install -------------------------------------------------------------------------------- /install htmle.command: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "$(dirname "$0")" 3 | 4 | npm install -------------------------------------------------------------------------------- /overrides/phonegap/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | GAME_NAME 10 | GAME_DESCRIPTION 11 | YOUR_NAME 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | -------------------------------------------------------------------------------- /overrides/phonegap/index.html: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | GAME_NAME 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |

18 |

19 |

20 | 21 |
22 |

23 |
24 |
25 |

26 | 27 |
28 |
29 |
30 |
31 |
32 |
33 | 34 |

35 | 36 | 37 |

38 | 39 | 40 | -------------------------------------------------------------------------------- /overrides/phonegap/js/htmle_audio.js: -------------------------------------------------------------------------------- 1 | var audioFiles = {}; 2 | var bgm_current; 3 | var bgm_current_name; 4 | var bgm_crossFadeTime = 4000; 5 | var bgm_current_volume = 1; 6 | 7 | var bgm_fading_out; 8 | var bgm_fading_in; 9 | 10 | var bgm_fadeOut_volume = 1; 11 | var bgm_fadeIn_volume = 0; 12 | 13 | var bgm_fade_int; 14 | 15 | function initSound() { 16 | bgm_fade_int = setInterval(updateFades, Math.ceil(bgm_crossFadeTime / 10)); 17 | } 18 | 19 | function playSound(NAME) { 20 | audioFiles[NAME].play(); 21 | } 22 | 23 | function playMusic(NAME) { 24 | if (bgm_current) { 25 | fadeOut(bgm_current_name); 26 | } 27 | audioFiles[NAME].play({ numberOfLoops: 99, playAudioWhenScreenIsLocked: false }); 28 | audioFiles[NAME].setVolume(bgm_current_volume); 29 | fadeIn(NAME); 30 | bgm_current = audioFiles[NAME]; 31 | bgm_current_name = NAME; 32 | } 33 | 34 | function fadeOut(NAME) { 35 | bgm_fading_out = audioFiles[NAME]; 36 | bgm_fadeOut_volume = bgm_current_volume; 37 | bgm_fading_out.setVolume(bgm_current_volume); 38 | } 39 | 40 | function fadeIn(NAME) { 41 | bgm_fading_in = audioFiles[NAME]; 42 | bgm_fadeIn_volume = 0; 43 | bgm_fading_in.setVolume(0); 44 | } 45 | 46 | function updateFades() { 47 | bgm_fadeOut_volume -= 0.1; 48 | bgm_fadeIn_volume += 0.1; 49 | 50 | if (bgm_fading_in) { 51 | bgm_fading_in.setVolume(bgm_fadeIn_volume.toString()); 52 | if (bgm_fadeIn_volume >= bgm_current_volume) { 53 | bgm_fading_in = null; 54 | } 55 | } 56 | if (bgm_fading_out) { 57 | bgm_fading_out.setVolume(bgm_fadeOut_volume.toString()); 58 | if (bgm_fadeOut_volume <= 0) { 59 | bgm_fading_out.stop(); 60 | bgm_fading_out = null; 61 | } 62 | } 63 | } 64 | 65 | 66 | function stopMusic() { 67 | bgm_current.stop(); 68 | bgm_current = null; 69 | bgm_current_name = null; 70 | bgm_fading_in = null; 71 | bgm_fading_out = null; 72 | } 73 | 74 | function setVolume(NUM) { 75 | bgm_current.setVolume(NUM.toString()); 76 | bgm_current_volume = NUM; 77 | } 78 | 79 | function onSuccess(msg) { 80 | //alert('Success: ' + JSON.stringify(msg)); 81 | } 82 | 83 | function onFail(msg) { 84 | alert('Audio Playback Error: ' + JSON.stringify(msg)); 85 | } 86 | 87 | function onLoadSuccess(msg) { 88 | //alert('Success: ' + JSON.stringify(msg)); 89 | } 90 | 91 | function onLoadFail(msg) { 92 | alert('Audio Load Error: ' + JSON.stringify(msg)); 93 | } 94 | 95 | function onUnloadSuccess(msg) { 96 | //alert('Success: ' + JSON.stringify(msg)); 97 | } 98 | 99 | function onUnloadFail(msg) { 100 | alert('Audio Unload Error: ' + JSON.stringify(msg)); 101 | } -------------------------------------------------------------------------------- /overrides/phonegap/js/htmle_core.js: -------------------------------------------------------------------------------- 1 | function quitGame() { 2 | console.log('quitGame not available'); 3 | } 4 | 5 | function enterFullScreen() { 6 | console.log('enterFullScreen not available'); 7 | } 8 | 9 | function leaveFullscreen() { 10 | console.log('leaveFullscreen not available'); 11 | } 12 | 13 | function zoomIn() { 14 | console.log('zoomIn not available'); 15 | } 16 | 17 | function zoomOut() { 18 | console.log('zoomOut not available'); 19 | } 20 | 21 | function zoomDefault() { 22 | console.log('zoomDefault not available'); 23 | } 24 | 25 | function initKeepAwake() { 26 | if (window.plugins && window.plugins.insomnia) { 27 | window.plugins.insomnia.keepAwake(); 28 | } else { 29 | alert('insomnia not loaded') 30 | } 31 | } 32 | 33 | document.addEventListener("deviceready", initKeepAwake, false); -------------------------------------------------------------------------------- /overrides/phonegap/js/main.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | $('.shot').mouseup(function() { 3 | playSound('sfx_shot'); 4 | }); 5 | $('.song').mouseup(function() { 6 | playMusic('bgm_song'); 7 | }); 8 | $('.song2').mouseup(function() { 9 | playMusic('bgm_song2'); 10 | }); 11 | $('.vol1').mouseup(function() { 12 | setVolume(0.0); 13 | }); 14 | $('.vol2').mouseup(function() { 15 | setVolume(0.2); 16 | }); 17 | $('.vol3').mouseup(function() { 18 | setVolume(0.4); 19 | }); 20 | $('.vol4').mouseup(function() { 21 | setVolume(0.6); 22 | }); 23 | $('.vol5').mouseup(function() { 24 | setVolume(0.8); 25 | }); 26 | $('.vol6').mouseup(function() { 27 | setVolume(1.0); 28 | }); 29 | $('.stop').mouseup(function() { 30 | stopMusic(); 31 | }); 32 | }); 33 | 34 | function loadSounds() { 35 | if (device.platform == 'Android') { 36 | audioFiles.sfx_shot = new Media("/android_asset/www/assets/shot.mp3", onLoadSuccess, onLoadFail); 37 | audioFiles.bgm_song = new Media("/android_asset/www/assets/song.mp3", onLoadSuccess, onLoadFail); 38 | audioFiles.bgm_song2 = new Media("/android_asset/www/assets/song2.mp3", onLoadSuccess, onLoadFail); 39 | } else { 40 | audioFiles.sfx_shot = new Media("assets/shot.mp3", onLoadSuccess, onLoadFail); 41 | audioFiles.bgm_song = new Media("assets/song.mp3", onLoadSuccess, onLoadFail); 42 | audioFiles.bgm_song2 = new Media("assets/song2.mp3", onLoadSuccess, onLoadFail); 43 | } 44 | initSound(); 45 | } 46 | document.addEventListener("deviceready", loadSounds, false); -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/android/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/android/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/android/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/android/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/android/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/android/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/android/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/android/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/android/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/android/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/android/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/android/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-1024.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-1024.jpg -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-40.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-40@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-50.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-50@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-60.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-60@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-60@3x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-72.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-72@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-76.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-76@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-small.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-small@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon-small@3x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon.png -------------------------------------------------------------------------------- /overrides/phonegap/res/icon/ios/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/icon/ios/icon@2x.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/android/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/android/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-667h.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-736h.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-Landscape-736h.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default@2x~iphone.png -------------------------------------------------------------------------------- /overrides/phonegap/res/screen/ios/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/overrides/phonegap/res/screen/ios/Default~iphone.png -------------------------------------------------------------------------------- /overrides/steam/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | GAME_NAME 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |

15 |

16 |

17 | 18 |
19 |

20 |
21 |
22 |

23 | 24 |
25 |
26 |
27 |
28 |
29 |
30 | 31 |

32 | 33 | 34 |

35 | 36 |
37 |
38 |
39 |
40 |
41 |
42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /overrides/steam/js/htmle_achievements.js: -------------------------------------------------------------------------------- 1 | var fps = 30; 2 | var greenworks = require('./greenworks.js'); 3 | 4 | function startSteamAPI() { 5 | if (!greenworks) { 6 | console.log('Greenworks not support for ' + os.platform() + ' platform'); 7 | } else { 8 | if (!greenworks.initAPI()) { 9 | console.log('Error on initializing steam API.'); 10 | } else { 11 | console.log('Steam API initialized successfully.'); 12 | } 13 | } 14 | } 15 | 16 | function forceRefresh() { 17 | setTimeout(function() { 18 | document.getElementById("forceRefresh").getContext("2d").clearRect(0, 0, 1, 1); 19 | window.requestAnimationFrame(forceRefresh); 20 | }, 1000 / fps); 21 | } 22 | 23 | function activateAchievement(ACHIEVEMENT_NAME) { 24 | console.log('achievement "Friend Requested" activated'); 25 | if (greenworks) { 26 | greenworks.activateAchievement(ACHIEVEMENT_NAME, 27 | function() { console.log('Activating achievement successfully'); }, 28 | function(err) { console.log('Failed on activating achievement.'); }); 29 | } else { 30 | console.log("Error: Greenworks not found"); 31 | } 32 | } 33 | 34 | 35 | document.addEventListener('DOMContentLoaded', function() { startSteamAPI() }); -------------------------------------------------------------------------------- /overrides/steam/steam_appid.txt: -------------------------------------------------------------------------------- 1 | 380660 -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "main": "index.html", 3 | "name": "htmle", 4 | "devDependencies": { 5 | "grunt": "*", 6 | "grunt-contrib-clean": "*", 7 | "grunt-contrib-compress": "*", 8 | "grunt-contrib-copy": "*", 9 | "grunt-exec": "^2.0.0", 10 | "grunt-mkdir": "^1.0.0", 11 | "grunt-nw-builder": "*", 12 | "grunt-phonegap-build": "*", 13 | "grunt-string-replace": "^1.3.1", 14 | "nw-builder": "^3.5.1" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/icons/How to make icons.txt: -------------------------------------------------------------------------------- 1 | You can upload a 256x256 PNG file here: 2 | https://iconverticons.com/online/ 3 | (use the "ICNS - finder ready" option AND the "ICO" option) -------------------------------------------------------------------------------- /src/icons/appIcon.hqx: -------------------------------------------------------------------------------- 1 | (This file must be converted with BinHex 4.0) 2 | :%'3i0@)e16KQCQ%`0$FbBM%%9%9B9(4dH(3%!!!!!Y!!!1S)TP4)EhFJG'mJGA0 3 | P)(4SDA-JD@0[EMS+#P0dCA!J-6SJ3fp`H5"dD'8JD@0[EL"dEb"dD'8JBfaTF'* 4 | [BA*N#Q%T)%0XD@0V)'pZ)(4SDA-JCQPXC5"QFQpY)(4SC5"'D@jNCA)+BLNJ3fK 5 | [Eh0P)#G(CA3J5@jQEbFJCR*[E5"dD'8J*dCTE'8R)'ePER8Z#Q-T)%PZ)(4SC5" 6 | TEQC[)(GTEQ4[Gb"dD'&d)("[F(-JGA!X)'0XD@0V)'pZ)(4SC5"TBfpZ#Q3T)%0 7 | SEfpcC5!R3fp`H5FJCR*[E5"dD'8J*d9NDA3R)'ePER8Z#Q8T)%0XEh0P)(4SC5" 8 | TEQC[)(GTEQ4[G`S+8h4PF#!b1L"3BA0dC5"dD'8JD@0[EL"dEb"dD'8JC'9cDA* 9 | PC#"TG'9Y#Q%T)%G[)(4[)(4SC5"TG'9Y)'PZ)(4SC5"'D@jNCA)JG'KKG#"jEh8 10 | JGf&ZG#"K)'0eFh4[E5"TBfpZ#Q)T)%0XD@0V)(4SC5"TG'9Y)#KQD@aP,#"QEfa 11 | NCA)X)'4TFfXX)'9dBbNJ#Q)T)%0SEfpcC5!R4f9d)%PZCQmR)'CbEfdJG'KP)#G 12 | 'D@aP*b"YC@je,JTM+5"*EL"dD'8JD@jQEb"hD@jNEhFJG'KKG#"`Eh"c)(9`,#" 13 | ME'PMDb"[EL"dD'8JD@0[EJTN+5"$D'p[Ff8J*e"KFh4P*b"QFQpY)(4SC5!R4@4 14 | TG#FJE@9ZG5i+C5NJ3fa[Ff8JG'KP)'PZCQmJGfPZC'ph#JT6G'9`)$-k)!T&EQT 15 | [H5"jEh9b)'jPGfaj)'0eFh4[E@PkC@3JD@0[EL%+#NC[FL"YEh*P)(4SEh*[G@G 16 | S)'4TFQ9MG'P[ER-X)(0PC5""F("XC5Gc)(GPBR0TG'8JBA3k#QKdG(!k,bphGhF 17 | ZBA"`E'8ZBfpY,h0eF("[FR3[E@&M-6!a,f0eFh4[E@PkC5mf,`V6V!!!!3!!!1R 18 | @!!$SeJ!!!$)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 19 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 20 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 21 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 22 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 23 | !!!!!!!!!!!!!!1M5D@0ZF`!!k0*TFc-b!!!"dl$eJ23$pI6dpB$d4rAdpI6ep26 24 | epI6epI6eprAdp2Aep2EfmHh`mHr[m1RaprEdp2E`iGIMmI,RpHV0eH6`pIENemr 25 | Mm1lhmrEam0A4hIAheFlCmS$`0HEfmZRCcZ(hpI(IdG2SmI,Tp1c,eHVfp26eq2$ 26 | UkqIZlHIYlIEhp26ep26eprEfpIAfpIEdp)$e!I6eKr5`pE$KKH"rhq$Ki1(JiH$ 27 | Iiq6KiH2KiZIMhq$KiGrNjGI*bG22b-qqeqINi1$QdkD)V-25Z-fmDS#Ze1,PViC 28 | [UYA"eF[6ep5"FjVMji*XM0I6a-H`dpLrM@ZNjq,@S(4lZF64[-V#C),#jH$Jiqc 29 | 8`X1ccFQdbF[Pk0rJiH$HiqINjH2Mj13*jZ$IiH$Ki1(Jhi2J!prJiH#ZiE$QKH9 30 | rj1AQjHEPjZAPk1VSjqRSk1[Sj1AQjZ6TkH$([Y(2[F[+hH[SjHAUfV@ITD[,X,@ 31 | dKT@lfqIT[CU(ZYH`a,R#fGf@LU[SkjH&Rpr@XVQK`GR,S)5dkqIGX)Z8Xkc,YV+ 32 | kJ*I-kHAPk1rEcVqQbmLRapATl1APjZAMk1[Ul1RTl1S1kZANjZAQjHEPj1ANjHA 33 | NJ18"jZ@ZjR-iE@X!!!%)rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 34 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 35 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 36 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 37 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 38 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrfPX-c)!!!9[rrArpB6eJ[3 39 | !pB6dLr8"p2@!p)(f![AdpB$f!2@!p)Me$I6ep26eprA`l1hYmrA`J1d$mrEhpi$ 40 | d!IAdJI8Bp2Adp2AimHRai26bkqldhI(cl[$Je1[fpi$d)2Adp2Aep2Aimq,6e1l 41 | Dp2rcm2,Jr[cQlmV6f0IRpIMep)$e626hp128f0r9mY[Gr[$UlGcpmpRecX2BhGE 42 | @jI6ep2AdpZE8f0r9`GVklq,ppqhYl[hclrIbfmA)epc4i[Mdp2MMb1$6aF[Kp[E 43 | Zi[clJ2e,r22Xp[6lpG+pfplIq26dqGV*jFr+lI[fpZlKr[2GhH,pmqhfpZ[Df1$ 44 | FaH,ip26iiX$-h1$9f1chlYrqmHMUh[hbl2VKcplFbX(CpS(d(2AUdm6+fY[@pZ6 45 | Sr[(`mq$ppZ6ccG60`YA`qI6dJ28lp2Iil0E&ap,Zhrhlm1lai2[mmZl*[0A[qIE 46 | dpIAdp2Aep26fq1rCj2$@hplFm2,Ci1(GmH(Xq[Ecp2AdJ[8Bp2Adp2Eiq26[lZl 47 | `pI6[lZhapIMfp26ep)Ee!I6eJ23!pB$f![AdpB$f!2@!p!(ep)[e!I6eJ[3!pB, 48 | d!IAdrrArpB,erq(riB,K!H$KJZ!!iB6JLq%&i1(Jhq$NJ18#iH$MJ18!iB$I!Z( 49 | Ki)AK'H$Ki0lMk1,5bFc-hH28bXc+h1ESk0rIi1(JJH%mi1(JhZ(XellARFr+YXl 50 | IQ-E-[Y1NIX6QkH$Hi1(Ji1(KhZ(VhDPlImk+cZR-dYZGjZ+Ucf*kLSQiiqVKi)$ 51 | KIprThkYrLjb#fTD9k-6%cC6PbirMENZ*Q)5&XYrKi1(JjE0rLCf"4T!!lp1JjGD 52 | q[X$Pbp$Sf*94@SH@G+MUhYlVV9UJHe*PTqENcU$Mi16Mj1,-b1AJmq*j1T+DSZV 53 | HhZk8Akp[BX[dj161RZI-Nj5JjX[*j1A$NSQKP8qTkplHkaZT3f@9Ri#,b1M3Q1M 54 | '[F5CjXR(mDC`R*9J4SlQJH!Fim&k69q1NBAPVUrSb06FR168UpaTI'T)JY2Yi1# 55 | !i6[Jk1V)K9*BHFqCjZ(&cGLHhq2(c@%hJp$[j0lKiH$JiH(IhqEXd)fZeB1EPj2 56 | 8fSZERCE9TXE`jGhJiH#"i4RJi1(IhZAXkYl2cXc8ipr2cF[9iqVQhZ$Ki)AK&H$ 57 | JiGrHhq(NjHAMi1(NjHAMi0lIiH#,i3(JiB,J!1'#i!(Ki2rKrq'#iIrQrqD#jJ, 58 | PjZ@!j!,PjZ@!j!,PjZ@,jKAPjZANjHRXkq[QjHRXkq[RjH6NjZEPKHBCjHEPiqI 59 | Vk06)c-cKkGI+c-VJkZcXjH6PjZ@"jMcPjZANjZrHbGZ+[,LLcZ5&XlUVd,D6cZV 60 | YjH6PjZAPjZENjZlMZ*'AcR+mfER6hiR9dC6-Ij!!RCh%jqhQjB$Q,1AYj,Q9RUf 61 | BhSKrf,,$chr8Z)$NKfQGUCQD[q6QjHEPkX#8RDf@CD,deS[8a)#YDp5jd1rHTfp 62 | fQkL,YqhNj1klGV#4EhqfkHV2Lp,2dp,6dVR(kqAejj!!@k5UVqlMir'PHEf)IG6 63 | fk1V3LYDkIAk,eVM(kZR0T*faTffhlZ6MlVKMIkH[PCr4lY1$f,5j`i69YXIfYBL 64 | XTRYQSHU"j4cRbj&VHU'NQHUNQYLfeZ')dm1Gh)15JfHAf[$PjB$Q1qAVlY'CEh5 65 | 4d),9d,,1fiV1dl2*I9QBf2(TiqEQjHAQjZ6NkZrBS,h9EBD"IpAGGBD(JYDfd2, 66 | TiqAQjB(Q'HAPjZ6NkHrYip$1c0ESip$0bpMTlHVMjHEPKZB8jHEPj16QkZ[VkHA 67 | QkZ[VkHANj1EPLqB#jHEPJ13#jHEPJ13#jHEPrqErjS,QE$KYD`!!"!Mrrrrrrrr 68 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 69 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 70 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 71 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 72 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 73 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 74 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 75 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 76 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 77 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 78 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 79 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 80 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 81 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 82 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 83 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 84 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 85 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 86 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 87 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 88 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 89 | rrrrrrrrrrrrrD@Jc-J!!#LErpIrerrArpIEeJr5!pB2dQr8$p2Adp)(e"26dpI6 90 | dJI@#p!(ep*,e!I6eJ23"pID"p"(epI6ep[6ep26fpI6hpI6dpI51p4(dpI6dprI 91 | flplPj16Lj2AemGk!j![Mir6ek[6jpI6dpI5+p56dpI6dprRQiIVGiIrjq[RNp2M 92 | KfrhjqIcNpHHldH(dqIAdp2AdK[8Sp2Adp2IikY2*d2VFi[VkqrVPp2IKi2lkq[R 93 | Npp$$i-r1h[,jp[6dpI5#p5RdpI6dprMVe-cBhGAkfp2AprckjIAiiZ$pr263e[[ 94 | 1[YrMhG(0fZrjp[5#p5[dpI6fqH[8c0IJipR3qH[KeIImqZ,[p0hGrIcafqlkeV[ 95 | $cpcMhp2-eqlfp),e+r6ilGA-eZ(Lh-qjh2MhmGIhqr[Tj1IKkrcmm1[ip2ANbm$ 96 | #cY[MhpE*l[EdJ29$p2MHb0IKipV0[E[Cq26elpIhqrVmrIcpr2Vpm1Mfp26ipZ, 97 | +`m,+hH,3kIIdpIAdp['leZ,Dalr"eHlip26flpIhqrU"qhrmq[h`k2IdpI2dr2M 98 | 6ZmVFiG(Tpr6epI6flVhBi0V$`1Vpq22dp2E[e[Ilqq6HiYcRrIc`k2Idp2Mfip( 99 | 4fq,KfF$Xpr6epI6flV[1h1(Lf-hAl[Rfp2E[e[IlqpcFi0EKrIc`k2Edpq61cpR 100 | KiGR)Y0Ehp26epI6emFA#a-rDi52Je-cAm2AfmGAhr2VPpIMKiIhmm1VjpqV"h1( 101 | KfFLk`Z$ip25"p5VdpI2Ibm,#cGRLiY$6q26KerMlqZAdpq(JrIcbhZMkdF2PfFQ 102 | k`Yleq26dJI8Xp2AdpIRdiXh#`m[BhGEkiprlq[[kj26ii1$qq[Vei2I4`-bl`0l 103 | dqIAdpIAdJI8Tp2Adp2AipZA3`X2%c[[BjIrkqrVPp2ILi[lkq[lPpY'b`Gcdq2A 104 | cp2AdKI8"p2@!p#$ipqM8bH,kfYEKhplGfrAhi0ILiH2GfrRAeIAjpI6dpI5*p3( 105 | dpB$d"rMfpIIfj0cJJ0m%lIAhjYf!i!RIm2AfqIAcp2AdMI8+p2Aep26ep26fp[@ 106 | "pJ2dp2EfJ28"p[D"p!(ep*2e!r6dpI@%p!(epB6d![Adp*VeJr5!pB2drrArpIr 107 | errAfpIrKrq(riIrKpH'%i)$KJq#Ei36JiH$JiB,J!Z(Jhi6J!prJiH#4i3MJi1( 108 | Ihq$MjH#!i36NiH$LjS(K#16Ki1MKhZ$Ki)hK)H$JiGrHkHRMd*ZXUUbQVq2LeTZ 109 | XUkZSUZ(L`H(YiGlJiH#*i5AJi1(IhZMYYDEaQjcTfYhDUGrUUBcPfY[JUH5h0AH 110 | QhZhMhZ$Ki)AK+H$JiGrHk1c!I9abmTHKhYlJhDlIkDLEjplHfUMUFdZKEQbFf1l 111 | PhYrKi)(K,1$JiGrHjqc$I@D*Pi,`P(Q'eH(EVZ,XUj[PiFjbK[0Z2CfTQA4TNY$ 112 | YjZ$Ki)$K+q$KhZEYaB"QKD+ULh6Ya+@!eZ(FTG6IR*2QiXH9c[#'-NY[PDQGHQH 113 | )c16JJ1%Yi1(IkmQ"CS5MTTG`,CMUjpH&eZ$JY+Q`S,MLim6$l0lLVQ4#5@b6Ujk 114 | #AFhPi)$K%plVR&Z'SkL2CcSdMHcHimq%eH(HJ10rjH2Gj-5ljYrJkq5TB8Y)BCH 115 | QF,rShq(Ki169-i5QMPFq4)(-kprJj0''eH(HiH$Ii1(Gj-5pjprKh0rhkhdeB*@ 116 | PGErShq(KhqA11SLLMNT%`[[Ufq$Jj0'#eH$KTTDINDcNim1mjprIkZ5XGA@6Tk1 117 | 03mMRhq(KhqA1-fb@SkC8L'U*cHlNhq62JYEKi*5BSB5HjH2$ZqEHjl"YEBfMSie 118 | D(B6Thq$KiH$Me90)6Qk2T+&pCSR6iZ6@JGALfkrMl+LFjH2#`HhQ`%59TD@1@M" 119 | *Sq[Ji)(K@q$MhCpM4dTTLkDQFRcXhUL%eq(EVGrTTjcPiXLFZr"h5V#0A6"*R1( 120 | XhZ$Ki1(Ki1(JiZhIUQT*5Q5*QB6`VCMIhGrEV1$TTCVRhGl2RqTe4'8c4*cHlH( 121 | HiH(JJH%Ti1(JhZ(Xj,0c5NY2E2@1Tq[GiGfYi1LVS1IHhqLYk(FB4CEIl1,Gi1( 122 | JKH%Pi1(JhZ$VjlaqADV`Ni#IQ*H6Nq2TT)+JRD+4NZq)JZ(YiYlJiH#*i5(JiH$ 123 | HhqVQiHRPVjHMS*kIbq,QYTLKS+#Hdq2PlH,Gi1(JMH%*i1(KhprKhq$PjB$N"HA 124 | Ni1$PjB$M"qENi1$Hi1(JNH%'i1(Ji1(Khi2J!H(KJZ!%hq$Ki1#DiB2JJ1'$i2r 125 | Krq(riIrKpZ(rj[rQrqErj[AQK1@!jS2PQqB$jHEPj),P!qEQjH5%j32NjHEPNHB 126 | )jHAQj16Pk1[QJ1F4kZAPk1cRk1MRkZEPkqEMjHEPMHBKjHAQj12Yl1V4LjqFRTH 127 | QkHMCM*kGRTUJjZE,j[$QiqAQjBRQ*HAPjZ6Ml2$#Y2L3!)2Bam['QZAaSA,8amR 128 | 0QHI$9ikej2$RiqAQjBEQ+1AQj12XlmZ6H)RhLSV1cFr,S1A[RSAAcFh)QHb,DV' 129 | (KDhHmHRMjHEPJZBVjHEPiq[[cC1!RDQApSCHEm64bD$Smk+%eG#p9hAhKPkZYkU 130 | -JU6Bm1VPjZ@!jL[PjZ2Um-k9J*UbZ*q,mF+ED-64bTEBjC&meY+dKmrcQP9UKkD 131 | hVC!!JCc8k1@!jLhPjZ6ZdTD!Q,1eU)K3UHh[ffl%d-qKQ*q-T0,6X-(ciqHmIQ* 132 | SKD@jVTGieHVPJ1C%j1kYGTZbYk+"A&DJlq2Td'h%d-h5dY(8dXc8XEIYj1AZk,K 133 | mDQGmU,@)bZcNjZEPk0a@Q,@KG&pNPYAZj16UdQr$d-h3J-prd-c8XERZj1EKj2M 134 | ZNeGlTl5-bZcNjZEPkYCER,+KD@60qqlKjHAUdQ[%d0#4IiPlQ026X,MZj16Yk,U 135 | -M+@fXU"MdH[PjZEPkYC9KDLcYCb%RGE`k16Ud'[%d-k!L*0`L066X,IXiqZqKSD 136 | JXV1JGN5ClH6PjZEPk0a`Cfb(SV3MX*1!RGVQkpPT`p(*SqVdRiE9dkkrpZV,C+H 137 | dY+&f8fLblqAPJHCEjHMLVheQD)+IYE@+NZrNRQc'dFQJj1qGKGA4YSkhmijT[D" 138 | i8fLYjZrNjHEPjZEPjZARm15jJfKTITfUQ2DRIml-cmQIjI#EJpI-cEZ1lBeNIe9 139 | NVH2`jZ2QjZ@"jLRPjZAMjZrS`)YTD@b%qRq3!0c0d-ZJjZqLLpI1cYHHkSirCDI 140 | NlqIMjHEPKHBPjHEPiqAZkmL8H,IfK'D*JB&kJqR`Q@L+KSajJ[1FQ1E`jZ2PjZ@ 141 | *jKAPjZANj1hUjZcVTiH9NSq3!-VSlE')Ni#4#0ASkI$RiqAQjBhQ(HAQjZ6NjZ6 142 | PkqcUkZ[XkZAPkq[UkZRYkHAPiqAQjC(Q!HAQJ18$jZ6NjB(N!qEQj15!j36NjHE 143 | PjCVQJq@!jS2PrqErj[rQrqEfjQJiE@X!!!N)rrrrrrrrrrrrrrrrrrrrrrrrrrr 144 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 145 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 146 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 147 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 148 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 149 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 150 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 151 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 152 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 153 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 154 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 155 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 156 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 157 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 158 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 159 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 160 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 161 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 162 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 163 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 164 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 165 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 166 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 167 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 168 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 169 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 170 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 171 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 172 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 173 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 174 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 175 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 176 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 177 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 178 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 179 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 180 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 181 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 182 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 183 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 184 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 185 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 186 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 187 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 188 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 189 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 190 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 191 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrDA3c-J!!-,)!!!!!rrArpIrerrA 192 | rpIrerrArpIrerrArpIrerrArpIrerrArpIrerrArpIrerrArpIrerrArpIrerrA 193 | rpIrerrArpIrerrArpIrerrArpIrerrADpBhd!IAdJI8"p2@0p!(ep0,e!I6hLrN 194 | "p[5$p3,dp[L+q3Ahp2Aep2@!p-Ve"26dpHAFLGX$h1hfp)$e"I6dpZhHh)RG#qE 195 | ep26ep26hpI2dp-,eJ23)pIAdpZr(cGRAKYJ%fFRHq25!p3Adp2A4aGD(ea(Bd0$ 196 | epI6ep2ARm[Vfmr6dpI5mp3hdmrEhpI6ep2MJ`H2rrB6q"[hprp[GqI5!p3AdpqV 197 | 'd2b'r3rmrqh5p2Adp2MNV,E8mIVfJ23"pI5ip3rdmrAklq6dpI6emp6+hrljKIS 198 | 2qIlDh2RdpIAdp2A9d0,iqiEk%2hUdI6ep26jb+M%Yl22lIVhJ23"pI5bp4,dpI6 199 | cpIVadl+dm[AdpZV-bYrqKrS1rYVFqI6epI6emp(3d2RlK[S5rHV4p2AdpqZaVpE 200 | LclLbbHRjq)$d!IAdV[8Cp2AdmrAkmY1cYX@fmIAdpqR,bprqqIVkqrU!qa(kq[l 201 | Dh2RdpIAdpI63dY(jqrU!qaRkqrVkqIhUdI6ep2M*ZVM4hq$Ke,Z`a1Aiq)(dUr8 202 | Dp2AdmrAkmp@dXmcKelAbpI6hjp6Fh[rpr[ckJIX4q[VqfGhjp2Aep2AcdZ,5q2[ 203 | kJIXHq[[prIrXdI6ep2@qYE(6hphGi1(A[l#ri2EjpI2dp+Ie-[6ep22eqI2@YE2 204 | -hq$Ie,EapI6hk06AeH[Rk22mq[VlqrVkrGMGqI6epI6emp,KdIRlqS$l%2Vlq1V 205 | Tl0r4p2AdpX#iYY(JJGd1hq,C`V'lfr6kpI2dp2AdSI8dp2Adp2Ajp0HfXX[IiGh 206 | Ghp5fmIAdpZV*c-c0dF2FrIVkqr[kq[hBhIRdpIAdpI24cY$jqrU!qa2krZM)bm[ 207 | (drAdp2E!Xl29i0cGhS$G$YrLh-DbYpAbq[Ecp26ep*he$I6ep26eqIACYl,+hZ( 208 | HJ0dPhp5fmIAdpZV'iGrfiF,HrIVkqr[kq[hBhIRdpIAdpI63eG2jqrU!qaAkrZA 209 | 8iGl(hrIdp2Dr`VE%hq$HhGhHJ0d*hZ(HbV5dd1lkpi$d!IAdQI8"p2@!p#IjpGU 210 | hXXRHiGlGhGlGhGr8YI,ep2EUaY$-e-r6frlkq[[lq[Vpf0hjJI3(pI25j02jqrU 211 | !qaIkrZI*c-R,lrEdp2A#XVHfYmcHiGlGhGk!h3RHiGr1YV,,krRhJ23"pI59p3( 212 | dpB$d+IRfflLab0lKhYhGhYhHhGhIeVEapI6emZ2IiGI6hpVqq[VlqrVkrGMGq)( 213 | d"rAcdY64qI[kJ2X(q[lRc0lNlr@!p!lf[DIDiEH[YXcHiGlGhGk"h3cKi0'jX-E 214 | Rq2Mdp2AdN[8"p2@!p!hjpYbjXFIGiGlGhGlGhS$G*Z$KcV6apI6dpIIiqZl1cGc 215 | pq[VlqrVkrGMHqrEhprEhpY(1drRlqS$l(2VqjGAkprEdpI6dpYqiYEc,imDTYFV 216 | HiGlGhGlHJ0d*i1(9[E$"irIhp*(e!I6eJ23,qIIGZV((hH(HhGhHJGdThZ$Id,f 217 | T[[Adp2Adp22ekmh3h2lkq[[lq[VpfFR8dY28dp66b-c3qI[kJ2X'q[lPe2Adp)( 218 | e%r6impHeY-V&e-feXXRFiGlGhGlHJ0d)hq(B`,#qk2IdMr82p2Adp2RhhVZ`aYh 219 | KhYhGhS(G#YlKhXqiY+q[k2IdJI82p2EUe0lDr[Vkqr[kq[c`iS6K"H6Kk[[kqS$ 220 | l"[VqjG6fp25!p4EdpI6eqI6AY+l-imblYVA*hH(HhGhHhS$G"YrKh,(1qr11p3r 221 | dpI6hpq#mX-AFiGlGhGlHJ0d,hZ(GblDY[Fk[i[RdJ[8)p2EUeGhCr[VkJIX"q[b 222 | !rS,r!rlrrIU#q`EkrZA8p[6dJI8@p2AdmrAjmpHfVVMKiVQ`XmRFiGlGhGk!h3A 223 | Fill2qr10p3ldpI6hkVq`a0cKhYhGhYk!h3lIiG[(XV(4a,k`fIVcpI5"p3MdpZV 224 | 6epVqq[U!q`(kqiRkJrX'q[lPe2Edp)2e(I6ep22eqI29Yl@pbZ2-V,,*h1(HhGl 225 | HhGhL[-rlmile#r6fmV5ehH(HhGhHhS$G$YrKf-@aZlV-bkfhh[Rdp)2e#26fkmh 226 | +h2hkqT6l"[VqjG6fp25&p4[dpI6cpIRbe,+ccmh,ckfhbY[HhGlGhH+mcI[cMI8 227 | Ip26haUE%iGcGhYhHhGhJiGI!XDl3h,@[Zpceq26epI5#p3MdpZV8h0Vqq[U8q`E 228 | krZA8p[6dKr8Cp2AdmrAkmY1cUFr-a,@RcZ$GhYhGiVc0qr10p4ldqGQe`llKhGh 229 | HhYhIi01mV,R8[,q``1$fqIAdpIAdJr8)p2EUeGhCr[VkJ2X"q[Z*qJ(lqS(l"[V 230 | qjG6fp25*p4IdpI6cp2Rff+qTXVl8hYhGhYhGiVc0qr10p4IcqY@fYVrKhGhHhGr 231 | 9ZE,$ZXqlVX6NprL!p)Ie#26fkY2Cf[lkqS(l!IVmKrd"r2U#q`EkrZE8p[6dLI8 232 | Ap26cp2Mfj-Db`GAJi0lGhYlGhH'mcI[cMI89p2RCYEkriGhGhYhIdl'cb,1fbHR 233 | jq)$dLI8)p2EVc-[FrIVkJ2X3q[[el1hYl1hXl1hXlI,lq[U!q`EkrZA8p[6dKr8 234 | -p26cpIRfhVf``0MKhi$G#GlHhGhHjEc0qr10p4McqYHq`ElKhGhHhYhIhXZbU-h 235 | jr26cp2AdLI8Fp2EUe0cDr[Vkqr[kq[hFbFh,d-M0cXR2ap,kqrU!q`EkrZ68p[6 236 | dJr81p2Adp22fq[2CZE(%fZ,IJ0d,hYlGhGlKfXLUcr[cMI8BmrRCX,,"i0hGhYh 237 | HhGlKhXfdYGEcq[Acp)Re(26fkYAEf[lkq[[lq[Vpf1,KpZlFrqIQl-A5q[[kJ2X 238 | 'q[lPe2Edp),e$I6ep22fq[(6YV,)h1(HJ0d0hYlGhGlKfmDdU+rQpr50p3IcqYH 239 | mb,lNhi$G$plHhGhHi0l,XlE@mrVemr5(p4cdpZ[-bGcpq[VlqrVkrG[-cGR-dp[ 240 | -eY$8e2RlqS$l"[VqjG6fp25"p3cdpI6fqZh1Xl6,hZ(HJ0d1hYlGhGlKfm@`XEk 241 | [j2RdM[8*mrRBZVQY`YIKi)$G!0k!h3[HiGr,XlA8m[Vemr5&p4cdpZV4epVqq[V 242 | lqrVkrGV3i0[GfpRFfFhKdrRlqS$l"[VqjG6fp25#p3RdpZ[*XEI2i1(HJ0d4hYl 243 | GhGlKh-DaZVkqXYlkmrAdMI8,mrRDUVR6Zl+qe1$JJGd!hS$G$1(Ic,5edr(kp[2 244 | dpI5"p4$dpqM9hpRqq[VlqrVkrGMJrB(i"rRfdYr6qI[kJ2X'q[lPe2Edp)(e"r6 245 | emVDfe1$JJ0d4hYhHhGhHiGc(XV(!fE#YfIRcN!$e$I6jhD6!iHE'Y,+ldYrKJGd 246 | !hS$G#H(IcE5dd[(kpI5#p4(dpZV1cYcqq[VlqrVkrGMGq21"p!EbdGr6qI[kJ2X 247 | 'q[lPe2Edp)(e"I2jekMAiS$G%plGhYhGhZ(Fal+[e-QbXXEUq26dN!$e%26emYL 248 | iXX("iYbjUlM0hq(HJ0d!hS$G(H(IcV@cd[(ep2Aep2AdpZR1dG[qq[VlqrVkrGM 249 | Hq)(d"rAcd-c4q[[kJ2X%q[lNe2@!p#$ep26emlHUe0rGhYhHhGhHiGh*XELr`m5 250 | ZaHMjpr6dpI53!284p2Ajp0ZjX-6AaYM)Xl2+hH(HJ0d!hS$G*q(Jcl+qpIAdpIA 251 | dp[[XeYrDr[Vkqr[kq[hBh[MdpIAdpI22eG6jqrU!qbIkrZ6@q[Mipr6ep2RAXlI 252 | 5i0hHhGhHiGh)Y+[(fl5Y`qIjpr6dpIAdN!$e&26ep22eqIII[kZffHA&`EHcaY[ 253 | Khi$G!0k!h36Me,IcpB$d(IEVhGA-cGVqq[VlqrVkrGMHq26epI6emp(KdrRlqS$ 254 | l)2Vqj-[HhGhSpI6dpVqqY0,JhGhHiGl,XlA1Zlk``qEjpi$d!IAdPI@"p!riq1A 255 | &XEA!jpUiYl(&fH(IJ0d'hYhIdVMbpB$d(IE4c0[Deqcmq[VlqrVkrGIHq26epI6 256 | emp(JdrRlqS$l([Vmm0I9eml4pI6dpF#aXY,IhH$HbV5Y[Y[!Um,Pq2H!p!(ep*V 257 | eJ232q2MTb,+l[p2Pd+q`[pEKi)$G$q$6Yr,ep26hkm2Nrrcpr2U"qa(kq[hAh[M 258 | dpIAdpI24cp,kqrU"q`$kJ2`ArqR5pI6dpVr%Yp(MhXbdXmr!Z,(!jIMiJ23"pI5 259 | Fp3(dpB$d)IIjl-fbYFr4bpHqX,[6i1$Ghp+hm[Adp2A9a1,qqIVkqrU!qa(kq[h 260 | Ah[MdpIAdpI22dY2jqrU!q`(kqi$k&IlRd[Adp2A#Y+r6d,@`ZGV%Um$Mq2L!p!( 261 | ep+$e!I6eJ23Dp[V`dVDTaH(G[X#aZmrIip5hm[AdpqI4eGrrJ2U#qa(kq[hAh[M 262 | dpIAdpI,3iG2jqrU#qi$k%rlRd[Adp2Dq[,Q`UmM+Xl1pirMiJ23"pI5Np4ldpI6 263 | dmrEkmYQiXl62k0UdX,A0dlEapI6hjXh*i2ljK[S0r0IHq26epI6emY$IdrQ'qK, 264 | jrHI5pI6dpF()YFQr`UqpiIIiJ23"pI5Up4Vdp22eqIAF[,($aXrIalHbXr(ep2I 265 | RbX[Mrrf%rK$prIrBh[MdpIAdpI,3hp2mrSEp$rrTd[Adp2A$Vll)UlcJprL!p!( 266 | ep+le026dmrAjpq$!UlhAimZR`rAdp2IPd0R6kqIRk1MRkHMSkZRVdGrip2Aep2A 267 | bd1$3kZ[XkZ[XJ1X2l1VYhY,ep26e`+@YZprhq)$d!IAdXr@!p#liq1E%XV5ef26 268 | ep26hjG(4cm[1dm[,dFR,cmI1dFI@p[6dpI6emY(@bY(0bY$1bS$3$FR4d-6@p[6 269 | dpX'jhrEiJ23"pI5ep3(dpB$d1rMjkGRaqIAdpI6hjmE6pY[kqYVhppRkjq2rj-I 270 | Rp[6dpI6emml)lIrJk[rQj[rqjZ6le-lZp[6dpHhcqB$d!IAdZI8"p2@!p$chqIA 271 | cp2Adp2IRa-l4c0I3c0R2cGM+e06+jIIdp2Aep2AcbXIBem[@f-c8f0E)emr5mrE 272 | dpIAdp[Adp2Ad[I8"p2@"p"Iep2Aep2AaiYrIi0lIi0hIhphJhYhZpr5"p4[dpI6 273 | NhphGhpcEhGcEfplEi2Afp2Adp2Adp2Adb[8"p2@+q!,jp[5$p3RdpIIiqIRiqIR 274 | iJ2N'q2RipI6ep0$e!I6eMI3"pI5$pBhd!IAdrrArpIrerrArpIrerrArpIrerrA 275 | rpIrerrArpIrerrArpIrerrArpIrerrArpIrerrArpIrerrArpIrerrArpIrerrA 276 | rpIrerrArpIrerrABpIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq( 277 | riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKeq% 278 | $i1(Jhi[H!Z$Ki)(K!Z$Khi[H!prKi1$4i3(Jk)VY!ZcNi)(K"H$Ki16XlBRX#qI 279 | JiH(JiH$Ii1(Ji-EKJ1!#iV5CL*F%Q*V*j1#!i3AJi16+RTQ(Q`qFQVILi1$Ki1$ 280 | SiphJi1(J[H%1i1$KhplJiH$Jj0"DDBU&KBB&KBKGRHcHJ1%'i1$LH&@#K)D$%BG 281 | aGH(Ki1(JiERBmH6Ghq$Ki,RK%1$JiH$Gj1RKi1(IkU4,Sr(PKHF&j[#2QZhHJ1% 282 | (hqI!9h2Ljq@%jK6NlEaki1(JhZU[##4qeI$QhYrJiH#ei4,Ji1(JhH2adDrJiH$ 283 | KhApNQ1IEKGd2h1H+QZhHiH(Ji11#FhRBhiAG&YcPYARJiH$Hl9N!8#FGEm[`k0l 284 | Hi1(JXH%8i1$Ki0hMm0Gm'4lDiprQ`fKNQHMFKGi2hHL+QZhHiH(JiGeiG(2Di)A 285 | H'0hQYRRJiGrSa483K+C`+aPI[qlUhplJiH#Yi4VJi1(JhH,`fRdF*&%Peq2Hjlj 286 | QCCMRfphHhpk!ha(HhHL+QZhHiH(JiGjfH(EDi0k!ha[HhplGh15eHH$KhZaJ-#T 287 | dRk#MI$396l,Vl1$HJH#Ti4VJiH$Gi[$EJ4mECU@')pIMhZHkI*'@mq6QiYk"ha( 288 | HhHH)QqhHiH(JiYakSRICi0k"hb$Hi1ANlEYji1(Ji6iM&AUIPjLJTB8q&%'MjZl 289 | KhH$JiH#Pi6,JiH$GiHrGK5)DC*fLRh`Meq2HjlYlK(kiVV,,iGlHhprHhHH'Qqh 290 | HiH(JiYalS(ECi0k!hb2Hi0LhY,ZCHH$Ki19#+54fRjLCQ*LHTBe+&658i2$MhGr 291 | JiH#Ki66JiH$HiHrJL53CBTfMQCHIIL2AiplQ`'"SD@Yh8C(QhGlIhplGjiHElGl 292 | KiH$LhAKZFY[JhS$I*GhQX9pRCeTqiH$Jj%3G()#JPTQDQCLARDD894JSK0M`jGh 293 | Ii1(JRH%fi1(JhZ(ZiBiR'9qFT*UBQCLIIL2AiplQ`PLHQY@I6TAQhGlIhplGjiH 294 | ElGlKiH$LhR@"HYVJhS$I*phSUAkJPPQJkGlJj%"+*8fISTUBQCUCQCHETCTJ(L" 295 | cc[$RhYrJiH#Ci5hJiH$Hi1lMNLSBA*ZNQTLCQTQBRhdMeq2HjX"BF'KmEhb3!1I 296 | GhYrIhYhRKj[XhS$J"q,FHkGlfZ$HJ0mThHH[B@CJCp(Nhq$M54JU*#GRQk+DPjQ 297 | DQCQAQU5HDbBCC-6[kGlHi1(JPH%ki1(JhZ$Zj*3X&eUDT*UAQCUCQTQARS%Neq2 298 | IiYLYSkH-HjU,k0hHhprHhHH(QqcHi1$IiGakIRAFhpk!h`IGjkeVRl$2ii$J(q8 299 | q!)kN+!mNCjUMQTLCQTQCQ*QLSRBZ&&@il1[Ihq(JNZ%ai1(JhZ$YjCFZ&PLCT*U 300 | AQCUCQTQBQD#PE"lAiq$JiZRUm-jYDT(QhGlIhplGjiHHmZ1!jJIRj(GZHY[JhS$ 301 | I+GhSUBA`k16JiH$IjU!V)69LUP8$)&qET*UAQCUCQCLBSD4r1"0(UqMRhj(K%1$ 302 | Ki0lJlHDD-499Q+@DPjQDJ*NIPjQLRh)j!$cMi1$Ki0rGim0VFT(QhGlIhplGjSY 303 | MJhf!J3H#J&pUFYcIhS$I+YhSUS$LhYrKi1(Ki1[GL#%HB9"qDL%CATHMQTHCQTQ 304 | CQ*LITBK$%cqmjpq2i3rJiGrIlHHG0"46Pk@EPjQDJ*N,PjUMR'iU(a)6[1IIJH% 305 | 4hqE#I*H,k0hHhprHhZ,&SCqIJTi&TCqehplHJ0mUhHLUJH6Ji1(Ki1$KhZ([hiJ 306 | J$QDTC68P)PfASjZAQCUCQCLBRU@A'@rdh)lK$Z$KhZISSMB68*DPQjHCQS#C$*H 307 | FT*KM*!NkDa'UlYk#i3MIjX&rNiVShGk"h`(Hii$TJZS$k1RQhS,I"YhSUS(Ni1# 308 | !i5$Ji1(JhH,[hBFN$bUNTLi5(9kASjZAQCUCQCL9UMjap0f0i5$JiGlS`$i56T5 309 | PQjHCQTQCQ*LGSj&@'KCd6Md8M[$GiH#"i3MIjX*kKBhRhGk!h`,Hhpf(h!2Ghpr 310 | HJ0m'hHLUJH6Ji),K(Z$JiH$GiZrFK#FK1f'TC`FEAT@MQjQDQCQATMG[p0f1i4r 311 | IjGJI)jHPQjHCQTUCQ*LHT)T3&M8bCQ3,*jlYhH$Ki)(K#0rPaQYNNZEGhT6I"Yh 312 | SUS(Ni1#%i4cJi1(JhH,[fAmD(@jRC'd,*f#5QjQDQCHR0QVeh)hK(q$Ik9B!6k@ 313 | 9QCUCQTQBS+1'3KB-F*3M$c5AiH[HiH(JJZ%)hqE"IC!!LqMGhT6I"YhSUS(Ni1# 314 | 'i4VJi1(JhH,`fAdG!("P6b3!Dk+BQTQATcCUpGb0i4lHlidL6$kLQ*QCQTQHSAS 315 | h"bpr0N!54+6QlZ(HiH(JJq%)hqE"Ij5+k0hHJ0m#hYrHKpd#hYrHJGm'hHLTJH6 316 | Ji)MK'1$JiH$Gi1lPLK%!'6amQTQCQTQATcCUpGb0i4RGm)-P*%#MQ*QDQ*k#,4P 317 | +-Qmd#dq`kHcJhS(JK1%)hqE#HiL-jphHJGm"hZ'"j3$NJZ8"iYk#h`EGk+U"j1$ 318 | JKq'"i"AGi1cQVe3B4S'KS*UCQTQCPk8fD[AFMH%DhZk2)$e"SjLCQTLIHaBF@K` 319 | QAVhYkYrHi1(JKq%FhqA'DQD5jYhHhprHhZ(3ZVfpZVklZlkl[FVJhYk!h`EGk+H 320 | !jH$JKH%Ei1(Ji0hLlq5G2"0"LD1IQ*LCQTUCPjU[1'[dh)hK'Gh`L$Y(2+5BQCU 321 | DQCkEBKS!E1lhi0[JiH$JL1%FhqE"IC',k0hHhprHhH@4B'TQFepXEf"a@RRHhpk 322 | !h`EGk+D!jH$JJq%Gi1(JhphNm0f0,aC1N!#PRCLBQCUDQCHET)pE!@ldh)hK'ph 323 | ZN!!4'85JPjQDQCUCQU1DD"mMKGc`iYhJiH$JKZ%FhqE"ISq,k0hHhprHhHD(S*r 324 | 6`C2ZVUbm9AMGhpk!h`EGk+D!jH$JJH%2i1$KhplQm04q*"PCPU@FPi#C$*UCPjZ 325 | NNP3F!41ek0q0i4hGliNf@6bYR*LBQCUDQCLDSTTL(#5%fr$MhH$Ki1#%i4cIjFC 326 | TBC,QhGlIhplGjBpSDSTQHBeQJA+!Ip[IhS$I"YhSTS$Pi1#"i3hJiGrQm-TZ(5" 327 | NQk@EPi#C$CUCPjZNNe)8&c`4VZhHMZ%IhHq,-#m,4iDMS*LBQCUCQCLDT*eM(5+ 328 | "f[$MhH$Ki1##i4cIjX0eK)hRhGlIhplGjBafSj@DPT+DN@ZII0cIhS$I"YhSTS$ 329 | Pi1#!i3cJiGrNa&i@+'qISjUAJ*N3QTQAQk18948b26XBRI$GiH#0i5$GlT)!,hX 330 | d'6YpSD'CQ*QCQTQBQD1HCKiKIGI`j0hJiH#"i4$Ijlf!Q)VShGlIhplGjiHPq)$ 331 | V#1cXjRQCIGcIhS$I"YhSTS$Pi1#!i3VJi12C*5CmSU+CQ)#C%TUCPjZNPPJD&N+ 332 | +&Jb1lYhKi1#0i4rHlCS!3U@d9#!B-hHISTQBQCQDQCLCSjpS(ajieI$Mi),K%Gr 333 | Q`@jYN!$RhGlIhplGjiLGkGb!hJIJfALEHpcIhS$I"YhSTS$Pi1#"i4lGlSN!L+D 334 | AQ*QDQCUCPjUMPeJB$hjG'4K@`HVHi1(JMZ%fi1(DLb`B4dDQPLm&+fUGSjUAQCQ 335 | DQCLCSjpV)"aieH,JiH(JiGlM[fjfMqIGhYrIhYhRL*lXhS$J"q,FG@PhhGrHJ0m 336 | ShHLQJH2HhYrKi1$Lh5S$I*kBQTQDQCHDT*GI'#dq68i18EVYk0lJiH#3!1&!i1, 337 | ZhT-[%Nk'9)PC'aaJPk5FPjQCQTQBQD1JEaNqiH(Ji1(Jj22(Jjf+k0hHhprHhHH 338 | )RZcHiH(JiYacJAhFhpk!hbIGkD@*mZcXjq$KhZk*(LKhS*LDQCHDSjPE(J9ANL) 339 | ,6EMYkGlIiH$JN!$K3H$Ki0hKlZDL33BSMDp545FF9C+NRCLBQCUCQ*LTI5REiq$ 340 | JhqA$QSCQDS[RhGlIhplGjSHHl0lKiH$LfhLHIGcIhS$I*GcSTQHIR*Zliq$Jj$m 341 | p(ALJQ*LCSjTM(#0V0$`66,IYkGlIi1(JNq'"i"[Hi1cUXP%@)8+fN5ST&e#-T*k 342 | BQ*QDQ*jj,0VMJ1!GjAPQMSk(ZZ2GhYrIhYlPK*rXhZ(Ki1,EH*emh0rHJ0mMhH2 343 | &K(q%DhRLi1$L3KBCHCkBSTYK)!XmNd)&5,(XkGlHi1(JQ1%8i1(JhYrUl,eE'$) 344 | rHV&c%"4!K+5JJ*J2S(NSfH2JhqM#8DAbiqEMhS(I%GlHjB5Il0lKiH$Lh(C`H0h 345 | IhS(I)0lKj12YXhcLi1$P38iTGULDCKmFEd)V&d'bkqVHhZ$Ki*cK*Z$Ki0lHk1r 346 | (DKNLF(9MKM`60(UJSTLHH5MDiq$JiS*5RqMEhGlIhS$I%GlHjB5Il0lKiH$Lh(& 347 | jI0cIhS$I(plIhYlFjUjliZ$JiNNJ%(ab)43ZN!"2"%+VkqVHhZ$Ki+$K)Z$Ki0r 348 | Hj[$5H#8&8U@C28)90'qGUA`RfH2HjlPdJ*MUh0lHJYm4hYlPK*rXhZ(Ki1,DGD& 349 | lh0rHJYmEhYlGjkjliZ$Jj6ih,4-'@f)G'cUVkZ[IhZ$Ki+6K(Z$Ki0rGj2$DM5X 350 | E(h#jMam9)QKl*GIMhZLfDQ'Fk0U&h3rFj)5Il0lKiH$LfR@DHY[HKGdAfqDYHq, 351 | Ji10'@L&H2dN31UATkprHi1(JU1%ii1(JhphMlZ'A1"C,9'fI9bFD(0IMhZHiB@D 352 | KmZ6RjZERjZIQjHAYKjrXhZ(Ki1,DGCTmiqEPjZAPJ1B@jH6ZXR[Li1$L5a%q@J3 353 | iSqMXhplJiH#XiB(J-YhKlZHN3`BjKDYL!%hMi0rSY(5,HVU[VV+aVV1aX,HcZ(D 354 | LkplKiH$LfR@HG,@jZVDiZS#h&,Ue[TKliH$Jj%-!#M@KjqcIhZ$Ki,(KJ1"'hZ$ 355 | XklC2'L!KLprLi0rSYACfF'CZHfCQGf*RF&eYG9Z&jH$JiH$LfAD%C(9XBR0ZBR* 356 | aFf"dG&+&j0rJj8B[SHAXi0lJiH#ei8AJiH$HhqV[[Bh9lq(JiGrRZPTkeC!!hYq 357 | 1eYL-hkfMkkCGZ1AIi1(JiYa[AVr`RVEdUUhVk+ZSiAe`cZ6Ji1,+hHlJhZ$Ki,R 358 | K3H$Ki0lHk1rMhH$Ki0rRZ9*YG@D&FQH*EQZ(BAamBlAThq$KiH$Lh'9BKS0NJBC 359 | QHiD"A)0[I0[Qhq(Ki1AKhZ$Ki,hK(H$Ki0rHi1(Ji1(JipDTSU'NRU+NRU+MRU@ 360 | HR-cShi(K'q$Ki,'JQjZJQ*HFQCHBRjDPi16IiH$JiGrJiH$+i3,JiZU!k`lXkq[ 361 | Xkq[XkqcXj0rKiH#!i3RJiHMVl1cVlHhXJ1d'l1hViH$Ki0$K!Z$Ki)[H!q$Ki1# 362 | !i32JiH$ILYi#i1(Jrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIr 363 | Krq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(riIrKrq(BiIr 364 | QrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[r 365 | QrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQeqB$jHEPii[L!Z6QjB(Q"1A 366 | Qj1,LL1-%iZ6QjHA4jJ,Plr5*p3,dkZ@"jJAPjZAUmr@*p![ZjHEQjHEPj1AQjZA 367 | 'jS$P!ZLYM)Q,!ih)kZ5!jJAPj1V*NSf)N!!1MV,RjHAQjHAXjq2PjHEP[HB1jHA 368 | QjH6PjZANkY!p6A*XK@d&E(!rNI6LJ1B(jHARBcGUDfU%Da*UEe9IjZEPjZAQaGl 369 | ck12NjHEPZHB3jHAQjH2SlHEPjH2aQ5b0iY@&f!A@iRH2p11!jJENlEdj@p2AKGB 370 | 8eGqUCqAQjH6Y[6**P0cckZ2NjHEPYHB5jHAQjH2Sp0QmjHEPjq&U5B(AbSA-$mV 371 | AFBrdiqEQjHATEeTKamk&c"E,e+*PjHEPir"e*fe-4)I6mZcMj1AQjE(Q&1APjZA 372 | Mjr,HNN"%i1IMl-"05S(BbiA0$mcBFBrdiqEQjHILBPaEbFq&c4M-eD*PjHENkmm 373 | p1CQeL%p!HXValZ6MjHEPVZBCjHEPiqIbi*0$5@p+hHMMlET,5i(@bXc0cXf!cK( 374 | 0c0KaMr6MjZEPjq*IAeh*cmf!cK[0cXh-bY5KCHAQiqpl8dk-Vl#bNPFpEErZlqA 375 | MJ1@UjKVPjZAMjr,KPd9#J,5E5GlSiqkfC(Tqip69dFf"cK(0c0K`Mr6MjZEPjq" 376 | NMer)cmf"cL$0cpA8hDKPjHEPjPp)2C'[U+Q`Y*TI2''ck[(QiqAPjZ@PjM,PjZA 377 | Mj[,MQNG"IkkbVj**hZMMlVCME'@QQjqjd-h0cXl0c0GZMr6MjZEPjq"PM9l)cmf 378 | !cL20cmHPSUQ%CHAQjHPL6NU0VkQUUDQZY+"S29DQjI,SiqAPjZ@KjM6PjZAMj[( 379 | PR8T!I+fcUUL[P%RHk12Y[%416e*J0A[9c-h1cXh-efk2p12QjZARi@&8@FV2cB$ 380 | 1*Fc@RN4066eUjqAPk'0$3jD`U+UVUUUTVE5QFMp0QGlbkH2NjHEPRHBfjHEPiqE 381 | ajU&-3(UYXkZTUUU[P%RHk12Y[MZ+KX@+-Ar9c-h1cXh-efk2p12QjZARiPpTBmR 382 | 2cB$1*mcAP@L-J6b8m12Pk@"T5Qb[XUZTUUZUUUQXY+Yl4%D,e[,Viq6PjZ@CjLh 383 | PjZAMjI(RT%irH+bcUkQUUkUUVj0*hZMMlE`k9NjN9@4jemc0cXl0c0GZMr6LJ18 384 | (jq"PP'2*cmf!cLR-eTa(5d40dZVNjHGS2dj*6)'VXUZTUUZUUUQVXkk%5N"qc[( 385 | Yj16PjZ@9jMVPjZAMjI$TTP!qGUZcUkQUUkUVUULZPdVHk16Rfk5BRAeLJh6Bc-h 386 | 1cXh-efk2p1,PjH6Qi'9QAF[1cB$1"mcAQ956UFrTJ18IkP`QSE401%Q"Ul1VUDU 387 | VUUUTUV+aM9)pFX6[lZ6NjZ@5jMcPjZAMjI$UU9)qG+UdUkQUUkUVUUQUX,5&4Gl 388 | SjHARm2(jce02HYE-cFl1cFcAET2kk1cYl1lTB&4LbXr0J-iTc0L8FrR[kHAQjH6 389 | UX%p(@(fiF5Y(HUZcUkQUUkUUUDUaXj9C1fDjkq[NNHB3jHEPiqA`kUY82A+TY+Z 390 | TUUZ!UKqTUV'[LPXVAHMPjHEPiq(T`9&CHYE-cFl1cFc@G%YaDi"`"h&[49&Cbml 391 | 0J-iUc0L9EZIMj1EPjZEPlZ+F4d4lET5$4d"jU,1VUDUVUkUTUDqdR'-lAmIVj)r 392 | Q$qAQj16`kke@2(#SY+ZTUUZ!UJZTUl1YKNj&1MV(kq5"jK(Nl-"NJ(6Bc-h1cXh 393 | 0dE+-L)Q#L!@3!)QLcmh0J-iIc0L8EqVPjHEQjHAQj1Ebj*a'0S#hIeG+4hQTXUZ 394 | TUUZ!UJHTVV5S2SIfiSlQ$ZAQj1[XX9JlEUHdV+QUUi#U$+QXXkTp5M0EJcUimH1 395 | #jJMNl,pRI(2Bc-f"cJ60dYRDfB,D!pMCeFf#cJE-f*4[kZAPJHB@jHEPiqEbija 396 | *0dqcY9)k4(USXUZTUUZ!UJ@RZ&k*pH+0jL$PjZ2XbemlE+DdV+QUUkZUUUQYXk4 397 | c36f,E&imSI,LjZ@"jJMNl-"LEAAAc-f!cJ,0cXb(b`2-cXh0J-i'c0L8EqVPjB2 398 | Q(HAQjH2RmH+B6%GFI,H"-8*jTV+XUUZUUUQd@BIfiSlQ(q6ThN9'U,5XUDUVUkU 399 | TUDkcRQiq9e@!IM4-V[$MjHEPJHB)j1c%88PleXc0P-i'c0L8EqVPjBAQ'qAQjH2 400 | RmYq8381(JAk'08alTDZUUkUTY9L$pZ+0jKrPj1ac)fbdTkUVUUZUUE#bQQ)q0SL 401 | Q4cK@UHE[j1EQjB,Q#16X`'9iG0M-cC61"XcBP'rUjH@'jKVPjHEPiqIbhj0%+SK 402 | rENFNKE'TUkUTY9L$pZ+0jKlMmD")DPkbUDUUUkUZXC!!@6&5P&KK1Q5ck[$QiqE 403 | QjB2Q#16X[fGmFpM-cB$1!Xh1cBI-!mh1cFf!cJE-f*4[kZAPL1BBjHAQjH2PmHQ 404 | H15XrAC1VUUUVUUQe@)2fiShQ'H2cQ%T*B,+TUUZUVTG43'P@L&FeEEhYlqAMJ1@ 405 | &jJMNl-"MF(ABc-f"cJ(0d)I8!G(0JXi'c0L9EqVPjBIQJH89iqA[kVaa2f@@XE# 406 | VUUZUUULd@)2fiShQ'Z2aSNCGBE+TUUZTVj)q3hC$5hR)m1lNiqAQjBIQ(16Xa%p 407 | ,HpE-cFl1cFh3[kLVUkLXUDQXUDZjcmh0J-i'c0L5EZVPjBAQ'qAQjHAMjr(SV9d 408 | lBCfbVkQTUUZVUUQV[&Q%pZ+0jKRMmTaGCPfcUDUVUkUZV(e"+B6aq1AKjHEPjBM 409 | Q(16X`'9kG0M-cFl1cFc9HNC36&Y%8eC&@$jKcFl0J-i'bpL3!'lUjH@$jKhPjZA 410 | NiqMbik&52QbMY+fTUUUVUkUTV,1LGbb(pH+0jK[MmD)k3'5`U+UVUUZUUl+VJ89 411 | *QZ,bjq2PjZAPKZBFj1brChKdf-c0cXl0c0C`Li[#VhlIQjQU1@$-cXf!cJE,f*! 412 | !EZVPjB(Q$qAPjZ6Mk[2EP%T!GDLdVDQ!UJbVUUQXXk4a4#Ni`ZcNMHBGir+G@(9 413 | GZkfTUDUVUkUTUl+VI%0*QH(bjq2PjZAPK1BFj1c%6dCleXc0cXl0c09j6%pb5Pp 414 | f5QKCD@M+cXf!cJE,f*!!EZVPjB(Q$HAQj1VbdiC$4RkXY+bTJ+S0UkUTV,1PF$` 415 | qA6Umm111jKrMmTj68c4QQl1`UDQUUkUUUDZcVRj%5*EJmZMMjHEPjB,Q(16X`9a 416 | XGYI-cFl1cFc@G@+BLBk)K)f$8BaNbml0J-i'bpL3!'lUjH@!jJcPjZATcRNq6)H 417 | [XkZTJ+S3UkUTUl1QFMe9APdrVI,LjZ@0jL$MmD3V8T&A3&b5XE#UUDUUUkUTUV1 418 | ZJ%4(Nplbk12PjZ@"jK(NlETTJA,Bc-h1cXh-efqFrr+!m`Idl'1&CX[1cB$1"X[ 419 | BN!"ZkZAPJ1B+jHARhdT,NV'bUUQ!UK+VUUQVXkKd36eLRMXeSI(LjZAPMHBIir# 420 | V(Q+d`(&'3&D1Vl+UUDUUUkUTUV+[JN9&Mpcbk1@#jKcNlEj88hRAc-h1cXh-eh# 421 | 5m1$Miq,Ph'+(C-[1cB$1"X[BN!"YkZAPJHBHir'G+*beUDQUUkUVUUQVXUKd2cL 422 | 8H8"!Fm[Yj1AQjBlQ0ZAQi*p32fCQYDK5-%k$VV1VUDUUUkUTUV+[K%C$MpcRjHE 423 | QjHELkEa8AAMAc-h1cXh-efq8p11!j3IRi&j1Amh1cB$1+-[BN!"`k1,Lj1EPjHI 424 | M6#f6VUQVUUZUUDZcUAT!8&pVDcG[a[$Vj1AQjC!!jN$Pjr$MT9)lE*TaRA9"3hZ 425 | TY+bTUUUVUUQUXV#(3&rQjZAPjZ6UrFCXKh2Bc-h1cXh-eh#8p12QjZARi&aUCX[ 426 | 1cB$1*m[CN!"jqr2dlHAQir'G3df1X+QVUUQVXUTh4#pcT%8dE-6`l12NjZAPN!$ 427 | Q3HAQjH2QmHUaBLp+S,a`C%a$FU5cVDQUUUZUUDQiNdhKjqAPj1["MRC-6h6Ac-h 428 | 1cXh-efq8p12QjZARhf',CF[1cB$1*F[BN9#8N!#2YZMPjHKIAN52VkQTUV1VI80 429 | *K&GG2'[$m1hMj1AQjC2QJH8EiqA[lEpZ2NGL`U026MpZRl5ZUDQUUkQZMe$Jji$ 430 | P(HYN5(GiF+E6c-h1cXh-eQb8p12QjZARhf'*CF[1cB$1)mc5XfeQDdpNk1APjf) 431 | q3*!!VUQbV(Y'0&fPBLpS[ZrYj16PjZ@BjLIPjZAMj1h[b(Fr99q4[SXj2''BXl# 432 | UUDQ`N!"-i1IPj1l!-j!!ip,AdXf"cK(0c0CXP26MjZEPjq"I9Q$-cXf"cL$0d06 433 | 6hk"SjqEPk@&X6BkfUi"&3iGL6cjL[qlZj16PjZ@FjLEPjZANj1cbdB0!4iL-ITT 434 | G1eH3!,#aUDk26H$RjHAREc5)emR-c-l0J-i4cFc@E*6diqEQjHIJ@@&Pbml0J-i 435 | IcFl0c-[@QQIRjHARCd8jNST(2&'LE#jLZZlYj16PjZ@JjL,PjZANiqVbfSp,+Qk 436 | dUPjL29D)VEH560rSiqkd@fL"fX[0cB,1%Fh-eQb8p12QjZASh9k1C-[1cB,1'mh 437 | 0c0HDCqIPjHPI@9!m-(Gp4%*EZZhZj16PjZ@NjKlPjZANiqMbi+"33N@)a+*&2%L 438 | #N8[Hk12[X%p'KGI*KF`2bp4VP22MjZEPk0eHKQ2+cBA-&mV9Q@IRjHARCAC(H@" 439 | S19ZelHlNj1AQjDMQ(HAQjHAMjr(QU&SpDR''Vh4-3%2Gk12ZXd9,Lq,6ei$@&pA 440 | @eYA8hQq8p12QjZASh9k'CG29e0A9e)$9&Y66hTpSjqAPjfNjAhB[@V2Xlq6MjHE 441 | PV1BfjHEPjH2QmHZdBc"DQVPp*@[SjH2[VPTdBDLFQTqIQk#HRD@JTebBmq2QjZA 442 | Sh9k,@k+QTk5PTi#N&+LLV)0RjZEPk'-J-eLakqrNiqAQjE(QJ19'iqA[lX*Y38C 443 | (RZARjH6[VeeH@%e9C8a-AdG0@%*8AMjbkqAPjZASh9pY59e64eY95&PC@N9FA$0 444 | ckZ6Pk@95XHV[jH2PjZ@ejNAPjZAMj1hbb+(FmZEPjZ6ZY6eLaR[2chR(b(I3QT! 445 | !h*&"Xq[NjHEPjppA3khLLU2QPjVFfCL8dQ0CcqVNjHI5ir(PiqAQjERQ3HAQjH6 446 | Mkr,SiqAQjH2ZY$05A%YY@%Yb9%p[4@0L5+r`j1AQjZARi%SkEQT)D'j+BQeS2QT 447 | 8D0lXj1EQjHRQiqAQjEhQ2HAQjH6MjHEPjHEPk0LJQ*HDP*HDNjLCNjZ6N!$-lq6 448 | QjZAQjHEPUT53!*!!PBZ+N!#-LSZ6LCcPkZ2QjHAQjHAQjFVQ&1ASmI,cm[6cm[6 449 | cm[6bmr6Uj1EQjB$Q%qAQlr2dp22epI6dpIAcpI,Qj1EPd1B#jHEPLq-$j1EPjB$ 450 | Q"1AQjH2LJ11&iJ2MjHEPrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqE 451 | rj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqErj[rQrqE 452 | BjR3iE@X!!%!)rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 453 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 454 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 455 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 456 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 457 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 458 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 459 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 460 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 461 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 462 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 463 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 464 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 465 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 466 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 467 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 468 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 469 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 470 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 471 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 472 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 473 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 474 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 475 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 476 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 477 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 478 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 479 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 480 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 481 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 482 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 483 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 484 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 485 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 486 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 487 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 488 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 489 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 490 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 491 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 492 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 493 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 494 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 495 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 496 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 497 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 498 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 499 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 500 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 501 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 502 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 503 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 504 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 505 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 506 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 507 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 508 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 509 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 510 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 511 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 512 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 513 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 514 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 515 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 516 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 517 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 518 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 519 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 520 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 521 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 522 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 523 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 524 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 525 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 526 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 527 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 528 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 529 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 530 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 531 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 532 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 533 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 534 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 535 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 536 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 537 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 538 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 539 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 540 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 541 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 542 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 543 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 544 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 545 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 546 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 547 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 548 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 549 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 550 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 551 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 552 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 553 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 554 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 555 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 556 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 557 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 558 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 559 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 560 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 561 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 562 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 563 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 564 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 565 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 566 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 567 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 568 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 569 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 570 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 571 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 572 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 573 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 574 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 575 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 576 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 577 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 578 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 579 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 580 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 581 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 582 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 583 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 584 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 585 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 586 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 587 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 588 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 589 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 590 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 591 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 592 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 593 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 594 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 595 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 596 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 597 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 598 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 599 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 600 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 601 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 602 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 603 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 604 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 605 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 606 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 607 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 608 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 609 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 610 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 611 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 612 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 613 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 614 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 615 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 616 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 617 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 618 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 619 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 620 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 621 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 622 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 623 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 624 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 625 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 626 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 627 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 628 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 629 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 630 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 631 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 632 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 633 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 634 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 635 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 636 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 637 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 638 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 639 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 640 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 641 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 642 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 643 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 644 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 645 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 646 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 647 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 648 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 649 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 650 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 651 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 652 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 653 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 654 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 655 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 656 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 657 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 658 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 659 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 660 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 661 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 662 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 663 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 664 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 665 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 666 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 667 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 668 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 669 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 670 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 671 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 672 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 673 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 674 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 675 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 676 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 677 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 678 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 679 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 680 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 681 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 682 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 683 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 684 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 685 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 686 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 687 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 688 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 689 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 690 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 691 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 692 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 693 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 694 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 695 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 696 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 697 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 698 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 699 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 700 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 701 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 702 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 703 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 704 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 705 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 706 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 707 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 708 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 709 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 710 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 711 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 712 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 713 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 714 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 715 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 716 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 717 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 718 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 719 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 720 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 721 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 722 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 723 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 724 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 725 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 726 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 727 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 728 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 729 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 730 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 731 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 732 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 733 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 734 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 735 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 736 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 737 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 738 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 739 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 740 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 741 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 742 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 743 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 744 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 745 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 746 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 747 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 748 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 749 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 750 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 751 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 752 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 753 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 754 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 755 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 756 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 757 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 758 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 759 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 760 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 761 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 762 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 763 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 764 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 765 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 766 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 767 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 768 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 769 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 770 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 771 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 772 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 773 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 774 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 775 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 776 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 777 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 778 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 779 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 780 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 781 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 782 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 783 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 784 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 785 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 786 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 787 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 788 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 789 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 790 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 791 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 792 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 793 | rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrfPM-$J!!&L3!!!!!!aU8#!J$3U(#J! 794 | !!"4QG(P`DR!b)!!!!!"UF$)J!!!!6fT`-QJ!!!!@D@KNFJ!!!3!!!!%!!!3("`! 795 | !!!!!$f0[E()"!!!!!!!3!!!!)Q0NC@B!"!!!!!!!!3!$!!%!!!!"!!!!!J!#!!! 796 | !!`!!!!"UF$*Mrdrr83!b!!!!!!%!!!!"!!!!!!!!!!!!!!!"!!!!!3!!!!!!!!! 797 | !!!!%"`%""`%""`%""`%"rf3!)`!"3h*PBA4[FMSJ5Q&c8'9b)&CPFR0TEfiJ-5i 798 | j-$!Z-Ip5!!`!!!!"!!8%"!!"re`!%d"!5%K35%K35%K35%K35%K3red!&!&!3%K 799 | )8%K)8%K)8%K)8%K)82pG!"3#3%")5&")5&")5&")5&")5&$rA3!8!d"!5%K35%K 800 | 35%K35%K35%K3rj!!!!S!!!!!9dm!!Iq6cl5`&!"FVREir-)K`--K8D(m'S-0Mli 801 | &B+N'69JL$%XrF&G,TV'!jR""0S-2[9I2Y038!"jdbfLI5kEKfN#p#M6Zj+RPip6 802 | -&fia14q'JhD2%E-"#eXH002r6@LpfY2c01(l'!Vk-Fqdf"3!(R%PMC3F!pVL+01 803 | 61ic@(+SmM3[SfYcebjL(&RcF@Aq%`1!'IifUe*I0TqaVY+@INTK!H-qd&"3!A+q 804 | (`qSGKp3r!qFq5dEAGmeSBDqfPKFjlcVQAf9ZHR`*+KP9QJHQJDpD!IAp521bC(, 805 | cl+Yf56)NFRSQI-998il+Ah(@C'G((ZH`(m9'r(bT(`hhKN*HbNmIFIpj8lB%AN3 806 | (kHFaFmID54pT0$l58%##(abL1e6,j6VY5-"p%2C$qPE)3$dQc6e2`-rSedR(1`S 807 | N9aqPLClA-aG6YN*KFpaS3pMB-Ve3VG-NB+K%Ja8M)NZPZd(X9AKB(ZHcK54i$T` 808 | QG6U4`HT8I[YVDGLKfCAMQ63h""m+1@dKcf$EbmID6apT0$l58%##([jLpSKF*R4 809 | ',KQA6(TRJEl+HD'hCKh*m"ZLC(5hHB1TcNp!4aqh9N3H%+K8Haa6pTQ,QUYKZF4 810 | fPPpj*31")+qiUHI@+P3&dYc2,QNN3IQ*EhVJA4,MFRe453#-bT,'cTK!c)2F+," 811 | 3b)3#$LkVaS$$kPH(e,%(e+4k$kT&if&c"#F&Y-`-*QQp*#1*iKbXq3#p@I$!hpX 812 | 9@rH@hEe"XNG*HRHZ8)$5q$fqhYd#`HL@jJB$AA3UKCc"8b)0pk,E8JCGkIa1Plh 813 | +FGM5Sl)$Pcplp"m!ccQq@18rEc&TZCfU&NG(Jb%,ml,f4P)lV[l%%@D9a32(Mj& 814 | `2p,mfaii8"V09%-AkE[cl@e"pQ@%KT6D6IT$LFGZq1k([TFqKY5ld%6Pm4ASk"Z 815 | rG-AA23#PpkmSDfbNS2a3'iFHdYhXm(HKI#&0&X#D!Kel8fmRQ*[(3m4+!A@BU9C 816 | 4&pVB0%HX60N56Y-34S0KZ0Cc5hDmNF6+1ABQlk0mCikq[mr"YRi08IJdJ)G[3`P 817 | JZ`A1V[M%j[mBap6JfR'qrQVEM*d@!N4TrL'QLFe'&bN+p4,H'$m+$&f@dh56rQG 818 | @)#)),Sac-`p"am'd[d3'!'JVU!UpJR11,'BVPZpm@Y#hK!-Y!2B'1Hp9ST!!HNM 819 | +f9`Q%PR@Mh@2I!br)P-Z[,3XdQF&#j@3!&jI`,XamV$bBhhYp4L6X'QM6fHr*jU 820 | *DETrd+cd$3@QKk-GXKQ0bIFZR&R#6+!piT%$!$cCfHE($%ARUclHe[mK!Dp#5'F 821 | e5KIZKQkY*Q3,(ihk3Bi14@fUfiYkc$3cGrL1jq@0i54TaS$&R2pkXa85q[a&r5# 822 | NCR9qDB99X@2Hcq5h-ePFcQ@F&QQd64C6A1id9C+0i*C9c+&UAaV&)iHp,SVcj1i 823 | Jh3F%A5qkRi%[5e+K)-X"I)YZElYNY%D%$cU18Th2`E*q$C!!qeU!M9pYd`a8F+a 824 | AY`K-RqKBrSMr"dbGkHl!0H4Ihh6h"h6@QmH[i[IK-Pc1(*QB%cS3iV52`JqVIhj 825 | @Fp2`PZhR4ZA0Q4I!(kiUJ,,6HKr8rN$lk5hXNqM1JN&4R(("`q@PT1B@L$9#*CR 826 | 23q4rI"!#r!L$CUajYqLfeA$bpIHbPHEfTSdk-J*eqbCF#,3()Zp0RB210*!!S[U 827 | 2U@p3XG*9VQ[M'J2bl86qB8KG66(CIQPG6V-51(2ANFF+9iAG4P$ZpTL5CEe)Pjr 828 | $+KClf4rSK@9&K!1I1(aq2h6'I6Ye*I#F*(Jb-mAFDj(QX6lHAJ!3AKbpCc5C+XY 829 | hTP(mkLhQZlZm3,har`F1BbjTjV63(H8@0R$f2a)bT9lZ-rLT"A4DA0a+@@2Ach+ 830 | e@[$$$cFcDN9fYk"R8,pl+N+ACkCa@BHCPPL!`qUl)I9FN!$lEU$'K""4`B&[2Z` 831 | 1`*'C9fI)2L$1&QcJPlIE,qlN3kPBTV6j*TMGQ,b0dhIlK%*Z1pAYk9KVrRL,CLG 832 | 9dPd[8&NB!ac8CJc)&NiGA`6d(K6I"DV"hqT1-ZX%XX,,ej`K"RRppB9RA6fcXCQ 833 | qH-Q@4lS0RD(1'bdAS4-V)3[)!kTAe8Si(VLdT25,ZUG5BC1*bCU-5F&R86N1hfP 834 | i9b6+BS#E4B+Rd-"61le*eR(4Ta'clY$#(Q*PYAi[++HdEUYH`ePaP(QqXm0aPL- 835 | aS(*-ee@,!'8qPm2%H8BCMf*HR4dh6R-r'Jb4-QjC1[B*(lK*6+UqYSD+aQGLUAV 836 | U36+UPpkqr6I"ZY6C)$BefD-'pQd)#31@JSPIiXf#U6r1d)@N'"Pe0R0jA+I'MYS 837 | S'-eK-ffmS`0rFjd+@Vr"C"`!H%A24-6eTIA&)qM5'1li[d`f0TD+H(i!@$G0q48 838 | -jp8Na+p3(`qdFRh3LI)6LjdCbNbMS1mE$6KIEG3i"5!jpZ8N((qZ[rk'`Y-)FBQ 839 | *+fP2%i3%&Fmb#l-5Kap)QZYAk5mJ'fN"p8mi#51Rm1r)[3-4NPA9lKMi!*lP@CR 840 | a#mqDCB34&K,i@Q"G`5P445LAka`F4mDR-1p8DT3%%e(5%kaA&mGj5b&6!L#D*0K 841 | `Q+YN82pl-6!b+9*rY!&2+eD))-!0j-K(A`X@6+4bY'jUbrYeTaAM$ij1655ecS% 842 | hp[m$pINaH$%KNbd`+cE'#NQaGFqer6AZiFSQ8km'"Qe)ArpZ4049k$CHNNICR&4 843 | ae`EX"iKEEVeM86`GLr#ML60K`$NXmM-DYF8(Gq`1(YQ')fjK'GQYCEIX1Qch%MC 844 | (!X#A3PT9UXaBdG6lhrp*J"GaQ#'4CI1LeF902q6&C0DT"L%X41B3#8R[YCZB3bG 845 | #`Z%hjkXkl&IXJbTcFPNDjFr$5DIKT02cdP$'JeIDjr2%UXL'f3S944(5&A)jQ,G 846 | L)&mH(eZQ!VXHcm!,C0%l`RR#"l8T9cF'14(%+-Ad@dD!#mURqfX-TTe,rZNh6a- 847 | 9SdQia"@jPRGk3SPbKLbVCpJ-fkA'H1aZ!KMrA#)P1NbeCRbBZUP2Ld(E[%bfa54 848 | )E1J2BarN#aU)L@5EZ,h1Mi-X-,"eY1MRprBD&888#iiG)a9BEX5RrEJ3,Jk`mY5 849 | imEhPmbBjYZ)[i5M-GE!dj'-fe,Y4klI"Bm(fK`-NUT-4Zl)4HQ+(GeUS[!mN86N 850 | DN!!QrQ*SUJcFBqmTJ-QkH!a9qGhN![2*lUV+d$@1*bUBKDKS`1U5Z299BeN*b4b 851 | -LmNLE!@rq'd`a"CrFJk'Z820QEZ$*lR`IR[#Jh(V3dpj`FVG9VaT(S)5%jFRMd# 852 | p'h9[+(5$JXRL2i'd1H+$U,D$jlPTX''`mCPEJE%['%YKS-F+T,H+`&1'U8i#2(- 853 | NCRkQ)kCD%1l'N!#0#[,AdZLUG3*C9#Y!lRS2XH$I+I2iI4mq3@QSNB`'b#aZ0df 854 | 5k!r+FkAdcS"lXQ"SDcT@[@2A+,'S'ecaDhk%rGi@Cp-01AmACiVGre5Hd5"afMq 855 | G&1e5*fGkpLf`'JfhD4RLSHak'6(Mm)$jq,G!d$!d[H%*rRVh-cdN(A@`S&@J@Za 856 | 0S09@NV`Udp)pbJ9'QVC%F'M3JEYU0qE8m6DmNd4JUN-e89#2Pl8hf'5fpSSRfFP 857 | 8RR96(%PL1ZL#X+QV[d@De#)*Z6Z5irah'mKjl,$RPQ`am(2'45kIImeViA#XeH8 858 | XXP9KKPHURNh[YrpFk,68D0cR#'!8q8HDJfAQ*2#$jH4i1UaDEe+#TeE)@Gm,+a4 859 | kqZZZJ6K[E5Q&FMb++U0,,&r14@icC`rcr1ipk)M*d+0j4U4VfGXD1Kqi,b6Q1b' 860 | 3!-CBaM8J(LPJ'lYDA,qT5qSIHMIhBlk-KETqej*B9l$DKN(*"aN!crF5p-m5d6L 861 | K@A#`Ej(JF!A)(LLChKJ1NIm(db013f2A)RPBR(l+B0iE4(b%29Flke!SXhG16D) 862 | MeM5VPJ+UAFhGfAdEjaD3!-3dYLp@eai+B5+IcRbYIMT!Qf4h!GB-J3#)0FGS1lC 863 | F[dBkfq%5%6Ne+J"HLb1jZF4[)L-iaiVH,[pQ036Jle`rM*VD!f"pMJLrlq+iPhR 864 | 2`dRRiD2aq'N3aR(Q1!eZIcd545(1a!4+d%51aK2T2RR0`#,&e!P8[HEDTbdSqBm 865 | EEUiK3d+0T)J$KT)N*S2Dk*B5&f0(9JqmD)92`"#RAJ(LBUK!2XQ`KS48Q&$89L+ 866 | 2%T@,4afU!eJ6pGHB1FUK,"b4#%Fj*!5%ZQZa-0L2DL9k0Qh'V!`*Z3U`GJkHAap 867 | m6U9LIY28R+&r5h8QeIPK#T)9&!cQ'i[XdH[06LP5k'4aj-$S[eM,YG1)'N3*TA% 868 | *h*c'X&pXH1D$TB6k0VA4hB@HF2pcFQq,6QjJe2TMpEGpjeY[bNd&qqNpJCk2a2! 869 | *L*Kd%$&59BCF)Hb*P'kip!a!r)Fb@&1L#mi14!D,PD3CP'DPCX6qEK-0[F+F"8Y 870 | +&p-p-mDFcaEEKFb8pUFqMm(+hArG%6ZlK0r@CZUb@IpGC@Zc,+TcU3'F3C,klBX 871 | &)$jB[`R5YrpjdSKJ1C&2p54i#2aaY#RY[*FVp8q(LKmr'23q5bA3PSDpjpe)"Qc 872 | b3p''fY$p#Q'+ZZKi#iI@$&IZbY+Q,MmTIY"@d*,i0cDA1FQQp`9"GG'eahdcfP& 873 | &PjCDaNFkV*8062$d5V@kI)'A$DYUecTFE%A(jm&lD5d""Je+V%S(#"b&Qidk!,' 874 | 3!$#,SLE$L[dc&RIPUIP5256cPadQ`5qZkG[(K$1Fh#a9(Jimj(09!eQR*5mF&ke 875 | 2IlNe`4$3$,[DVKHRp#-)QX*mqVK&IpYS0@5Iee-"Y4PN*U"LZfG-"lJYd6)X-B# 876 | rYe6rFXjQ$0kRI&)EFmQSU-DR-1m-@!PQ#BS1CJAbd$rSZ''Ql[I8'3FK829kP1P 877 | 8+mHX0*1KLUlT81G5C+9&pdj*)h,$VA8'GLl8Kmp322c9bK9NHGZH,UlL#YQ-(Fp 878 | 'Q0mjmEYQ@YLZ!ehkbDLbKh6C8,L0@8$I'U*3qc%0)-USLk,'KfmI!c,#C``CY&[ 879 | Tfl"Eb,(PYe4L-c5)'eh0rKPQ"iCe6ekRGBmAKYCldfLalHQ,q+X[jPP$M9C8EKj 880 | 5E)HCl(5ic-HK6+*lab0C1CjjVC2-H2QX1b(b6r8l1l1fTAT`$[jY-9(TZ81QrII 881 | hqRMk"$'mBK%T5&,0ZX4PpAP1D(e1*(Kl(ebbFjfBVePV#p@R,%S9XIp#@6ChZ&* 882 | Pec&h3LkVI'JPV!e+ii10L(J[J-2Uk5BqhSkJqVS9k8I2Z,Q@63c)b3aVS+'"iS' 883 | 3!,8D0B%a[r98RbHjFkfUKe`LHVF3d#[b*MB`8RY"i-4HmYH+N!!),ELhc[(6dqb 884 | Crhp+8%b1(6`9@*-Hb,iK%9cX@6Lq%d!%3r!JI$l#hNSRQZ'84+jqfYqrTX*iEVQ 885 | 1e4`Y`'hA39ZEU3P%A@4d!ff'$AG&5mdqH!kekfXP`mE$PQr!)60a2@3ZE5NmXbE 886 | 81*!!ijHPRP-QeKJ`XMbkQFpDAiY5#JQ2%FQVcY3[IjMe$FXIhpDf`ML&+0!2$#J 887 | NrIP0''4Vdhe+(8[!0hK#hH5S)@@c(*Z5!j`4@@p`R4c9RYdVIGQDafI0eDYrIGI 888 | 5E39M41[+68B`iR6DbFEUHahQ5XYHlk'C6HYL1eq6fXe,a+(Hcl[*$l85&J)qYHI 889 | k2HMcdcqd'dmlYp2qm5KF#T(a6LhQ#b3A`Uek8ii8B6cCFpeAD$*IXb+`Y"-a*-b 890 | AR(+U'2R6ZS2HTVaLc*a-IZ6R8"0(%XUDSV`#C&!lSF2EMq@Sim#%FR"AX-iUaIA 891 | QAQ%,pP`#GMGUeS%K8-Iplk!@J4*bGA(!KJ5K2CfqI2i2)aL5HdcIYrBHH-29D+2 892 | r%'R"m9%*K&Rq9&"4D@EDEF*cLG5Qh!Bm%[Ydm'-rLH#1'046Mf%$Q'pJ6lj%i(N 893 | $$Xi44YQN-A5ppQ%j(CeGh%6616`Z&MDd"f5[Vej+ih$bGDUATrZ1kbEh+eq`@GY 894 | f$rjY4,M!0)XQH!(h&r,kkqJSfqjH#h1C#RpFlJGfhm4[AeTf9K8hS)YrkZBDjfJ 895 | E5@45*DLdV+81aSN"@2T[42QD&BT!%dLXjL8*VJ!&[T(!NK@cIB8jdGq$AeAiVr% 896 | a0$1A3qH8E4j0PRJ6P+YqB+U$VXFUFLaEL*85NTU0c6G&C(SeBEM84@HNrb9alRF 897 | 4EITijeS%k4h2'X81VbEp@[dP$X3Zm[k!*RR*rbkAHQFX1D5#pPS50EBH'+DeQpT 898 | 9a8EU$m4A$cYk,@P0AQ!C8mIXF,4L*SRTV0CIf6Q`FE%QkML$3lDAf&a%edT%G#( 899 | 6T'(+RUQDDMd0a5eHfB0c0T+46pXF+1M&F&Hp)M0F5T3CqCV#4kB`jrYIZEqUi!5 900 | L9BGX-'*ZSQ5ie!LL,@+jT$K`V!fZT+Kdl51pAf9ee4ENYPD[#G#-A"V$DB3DN!" 901 | k3q!S$UK"R4l(MGC+HVeKBdi!@J6brfdeQYq95(#BZ!THHbAc`T2'PNT2(pK8S`K 902 | #6PK#GUib9bJ,AfZ"&LVd2Y`TmfKZN!!G&Z%d4kCC,3IAj4m2F#FV+RTQRK*pI@[ 903 | ,$RJ(0*fbhp6BL)5hINmb%Y486$Sr0ZUiaqV+p2l&@c(rFhaJq4%m*!FFJU0mjSp 904 | P8"%69(H*#9r*KabAKd@2p``5am'S34#hmZiB8qL+A2YZM3ZC6c3c+XNI)52MK+( 905 | ,*LQ"D05PXKTFH[Ci2@"+"!4f3IcYR45Q4HUCf&A"e8PHVU!FCi1fq*@(I[*DCX! 906 | q%JMPa(1b$Cd4`CeDhiQlmCZ5N!#Hk)`cr8*V[ap@R#(LRlG`*&khlXIk9ZbP9pS 907 | HZ0`+4d2eTFQE$S[M(lNA6,`9F2aITGi3KFCYp55!R2QXpY%"a5C[lGAe$XbDP-- 908 | m)6"86pqj"0m0bmpP*C-NKiG*LTZPJ`[JZ,q*T3K$*,H-B1#-lhh6-eS%2mk3!0I 909 | IJ0I@4FPqU1"PGP`LA5P')d10p@UM*ZHSGb&f+)$YQ4+9,mFBMhJpXK`SNIHqaC- 910 | ZS3&!kRZ+'RqiD!j`D605+63JXde!-qUq-QKEXBEipPQEd*c"q1$,ZkD4+phTS@) 911 | 'G,BlV(Y(G6[Dhd@*,PPb@fKK`NYkT"Ye*X2R$EZ1i`)r@UTMl29q%$A+F[$QZjT 912 | l6TADi#NTH"FF4[U&Xp0*aSCD!PLRhiBZDNU+fTpQ*[TeH8RLf+Sq)hb%BZReZ)V 913 | 0Qc9C!2TFRb6TZ8'#LXhDIKTCkP`3jcr!qUa8Kr,@&VB(aGkkBeq00#"m,ZHA2a5 914 | `"1Amc([,IN4APA#I"KAkqB68CUB%TYB!ee8MT[B$dSb%mp*hS4QT+HSTH#M'Ma2 915 | XI9dJa#PpG"m3"NVGA9N&iH)ap+PLK+R2#fV0-L-j+6GrPbeDDhhZJ"eG$b6X,6I 916 | 5I[UKf15'IjJEdE2f'm$RfEIG6(92U[46M!@U,*L49L1r3Mjh0$1`eH3SQ63$9!0 917 | abGG9[ZXDCI$%ej%HRheDUYX8Rh`3395TCqjTF"@eP1N%3X[bA9#Y,[mTE)mIcm1 918 | ZUIKeU4q(9-$UY'1Jb3e2G(MJeVhdNBrFh!CUADpba%mp8dUm8ZVB4K91%CdZ3[! 919 | hThiX4m3'Q0!`kmM1i8-G54&M"2,fBIdKlbir`5kUa-+CqI$UU5P,(@ZR%J[KHbC 920 | UTf5piDZR+,IcZZ)3,UhD*Q-e[cE3ZXDN5pbpbBLRS"kQM!`3![kHI,B&ji$8iY4 921 | eQ#DCQG'6B'RIH6F(lT2l5aRD!c+LaSAr+ZJ4f1p5%Tc4me6Ar)Tarf4N@)p`fTE 922 | D,KVKD6ac4jM,,0Q@UikjZ#+Y(85f8@ESQdEGRZ(QIY0l34hqmPK@$C-Q5MNl(,m 923 | VCE%hj(8$FMpBXp)QMNeYikMcN!"1(1%r,6#H)N-'(f$N6@*!IR8Ic)!jY@VR5mQ 924 | )fN$LE5FjajeU`RbNKaZB)h"maI)CMrLca0aP0#J6+-88(rF&*!2IFmED([$*d#! 925 | H6FbGAF$JQm"KYc0d*,L`E`-lQ!#--E6+l+%djk#fQID%)Z5jdShH0N#G(8ZEdVD 926 | [`(PQqK-NR`b!2LF3aKKh9[&dEjle(&H-!J0N+b"JZPP8HpYIC$!U$'0SJKiqU4L 927 | bK48TIhCbALB!m16#aC`"R@Q)05q(DP8%DdH$*Yhl0!PYRmkBqZ`lQCc`-YdLF1Y 928 | l9r[86[!c5!dfB2ElYRTD'XTf+,HmamkcfYM!Em%dFUmJ3H`8+2J*"l6*-I`l#MY 929 | `kf8%5J2'HZ6mUfbXLEMq5JMq#Gk+b@'rJ4&09$1P3P9DP6&MZpj"[k9cK`KEc[D 930 | NS2,(k45R+'-b0Ie%2H4Qa)2(8(8LT,8dcK,,$c&)056ITq%m*&3BQMhZilbf6kF 931 | m"Y$(BiXd)0A(Q(XUqRjE*,h1%+"!X[aECDV!$D06IBU5XBa)+K@cQad)"rd![+N 932 | &@dN+NlGYrQaJZbhU4[PVHNk0jUq%"5(0r9V*kVPqVHMaB6lCBMR(l&-9Kj!!rTK 933 | b2(p3p+)+Ak-eapQDbr)4I#rJL9B1#i'ajq8++F939UpQTFrMk32l8GkcEmT,&FQ 934 | Lh4(P0'Rd%H4M4aZ@HaQHHZY+#qDipLUe*$8KZNhDq8qqedML+e*Z+dMX,j%0"TH 935 | B$IcF*Sm9$Ykj0@R''[(D!(Z3!09Q'[5pN46*f(-)02*$r&8TEpDFjA!FGk!+TP6 936 | )8hjdmP'(NQ93ZX4*%2+XbUMm488ESIXLUl5GE2l&4Fqmb+KV-b'bUMLp(3Vb"%8 937 | Tp$mLVaTP!cfHTbB6C($J(Uk'NX*0ZZJ-)M@cB'U& FLkJ(N!!IN!$qTqiZYKZ 938 | rB[V*$ddNM3h9)k9bSG[f(&&$2+"I!NkKF3pLNF"SqUTi4NHJ#$2*G!X%jb"'[p4 939 | DQ!`R28@MYI6J$lYV(GjH5cE'iMLh9U1ZaL%,kGlJ-UCjXIB)q9%bGk8b5QS8Ph5 940 | kB5YZdTk+"NjB4"5ljA+!*JNri$`RYE&h1N53!(VBT"qLY8)cR!(m[BNX'P4[4GI 941 | LU`fP6f*8%@kJLV[kjSc3YaG!@c4@XdiDHq)!IKe@*U#plX'h#[peeUEaY'+qqG9 942 | "31[fJ5ULUkMGL)FUK#ecG%b"NN4bBE2$kLL0NQT#F9R`)D-MHBHKjC)p)bQ-CVc 943 | )mbL1@iL-Zr[#0j2q'J[`X8+IJ'5G9#`prh'8B+5L9#1Qf)LAkIEXTTM9a%8c`hJ 944 | p*#V0NrdeGDY`c`2ejT1L+5C'8Qj4GY`@bqaB"C!!rThc+k+Uc,aA9D%5dVE0L'M 945 | jjB5842k#fJh8J2L@@j+(211h`H+`'b*XLEJ*TfqHh)1Z'MI!UUUQcZ$eV0`SpEk 946 | IB9l#(L&LHG@DqN!6CF&M8("AhME[m(M(1K!qa60jc9"GqC+AP*&P6"YX13p3cq- 947 | j&r6B@0q51mCJb'#dT+5rRSTIeZ(DV"3CM,##aPil9TqMpR6JI`Ip6&ba-K,Id[e 948 | (3da9D"Ca4KX@!4k&@H0BLaI@)TNPZJ2epT8!&Y1)QYr%+0++R@lN)8qdU5@rm#G 949 | j+T6l4%T%I@R$BjP!Yed&e6l`JB2'c$3+Nh4-G,B-Zm!Xi3JP9`E9JEBcDJ$kd$h 950 | 8bh)[D5,C$ED'*ZIU86$Rc@ShDk+5rf*!8P$#!edV%#a%ri%,-0f4SHB32!GFqpP 951 | af*!!B[(hK8jHS-Afpb3K@!hRD&er%l+#'!jjqm&fBld,2mQI4pCUihjk5@G!%i, 952 | qdqh!2CcJDFNVUk!YdDPEreQ9VdY!l[p!"UT809EYbVhJ9cq20eA'b[`$r1Y-[j! 953 | !XUfcZcc$lhXr-`N1b+P8GPe1J&+Qd'-('%9BVk4m%hF%%PZ&-1*R@F$+5A+Z3c( 954 | p2R,f*9pK-S89dqKF3qQ,qCe2dKR@F1hkQ$`%A2JA09qJ$(Qe2jLP$&[SUA%18$c 955 | '1*VL2qRjK*,`Hf80"Khr"Rk%CHSl#&*8fKXr$ScbKMXi4)9ClJ"Vhb`iB%Fe(D' 956 | 99dXel`dPN!#(,mQ@*BQdlE,@&@IPJaZ)R+3QVP3!QDe6RSCQ4f+8cj!!pH0UFr% 957 | `pP&$m)iNKp90)l9a3QDE!Taj%eS"Ydib69UP'4+F1ZjmEAJAHc`U1)Dl,`8Hj8+ 958 | -RePj9'FkQf`cR*0$S'qAb*SIblfD@mE@R"EfSeiFYVXL)C+@R-TlF9%"FGl8@Z) 959 | J%!I*"I!dV8dG6pK%MrFQdCKZ1P*$C99&j9Ied@Mmjac[5ak'l`C+@IFq#E"&Ae( 960 | 6`c%$4rR3Z3)Eli4PG+QQGD1GS0%8mM+E#U0rYc[IjbA$LUrd2SJ%5*P")D528Xc 961 | %1*l%H#&0M3CR6RA0V,B9l`+Z5RKqRBpSU5,RQ0eN&hVX*#)-5f*5Z+p([)HrLUF 962 | 42[*C@8A4Bb%%M@KZKD"-`[pH(GH-kPC#MV1Q(&[dQ3HG6S84'r,*kDT3*rL!)+H 963 | +N!$1"Z%NXer2`kfjq(@E(iG5`1Ud3VTN4k(9+8b,K36CmS#SN!$(PPZMPEh!PbZ 964 | RBaeBK4plirb)ekZU#bmXTFYQD[pZVV@DK#MH4[@5&T!!)GhXPjEYmA#XKfL`"@V 965 | %Jdq!4$dCP&#IIj-LUcSVZHU(f@f4L(ekIVip2ke)51ar%+r%&#SBJR!d)6e%J)X 966 | !V#lY5rVB(GCCN!"$X-LiBL-Tl8V,2UZkDLL,@REp9HahccK3"'JD!qQH(dSXdff 967 | U&$mm'qfeff!YBPfXfqAYHK[k'M83`LR%j+@9q-NTM(Fibp8X2$492"FTDK$,0Rr 968 | +#,0%EXP+'ZmGZ-F!0R)UiD!&J`dR8a(r@CL$GZT6b2kH1*rS#ZP'm@@G`SAjMl) 969 | ,ph@T&IPhFm`6TeSlm6ejEfF1JiA[M)CMX1G#cI%S!S6RF+f,eP1'+a!B'-J"X)a 970 | CPrjS*4VekGF[V[ZVZ#E5CFU1Jm'@a892--'rL+Dj9mV3dV[Fr3rRl+ZIHJ2hQST 971 | BHGHJ#GjQ-!b"0'0Ub@&44l&[UGFa1D1PjCF!TJIqUr6L(cPcMfLhf+6UR`&-CDY 972 | $hGa#,CDK@D`DP%GjPjdS`@EaLEac0F@Ibc9+rQU!Q+`Z[&A5%Aa1m'2)a$(94kV 973 | $,+d*3fmfal6L%cHN-FGSCm%PTb&T0!3Y8M(ZUZ*l)c4b!U815*dY"mrA5Y&5S@9 974 | bVU#TF%9(AERQ,lA)VZC@iFlCY!p8FY#q-$j3DCb5RhLVULDrrUAQH*h`D!(I&G, 975 | m`8Q0%06T[S`6BABqJ!)!Y3CNc@"55BC'r-K66p$*&[jr0Ra[IYXR2"MfTaX4%jS 976 | c%9MCr3'IR!92j6f9r0%F$N6H4`PK"jDDB-J1KMHfRmdDp+9'bpcKZTPQQpDPa"D 977 | G*Rl)+TFeY2"#&`qi8XJ%aVrq)Hf))#mBS*BT8[BKH2k$93&24[ml%GB-CAUl,SM 978 | SDNb2aQi$5IC,fjRK`b9B91cSE"cMqC8&4J@$lRRT)mF,kZBDjfJE5"kbhT!!r!) 979 | ZCb,Um8!$pjeB)NLJUd3kYDmMbQ'8*&Hpl-@*IAqrZQSrMe,A+riNVE)##IDpB)d 980 | rqSZDh2mIN38*[Jd[dfM*J+YYqC-Y1I8Km,TE2QDm(cdMLE9pNZp%kI[S1DSj#el 981 | PRQC-VrRK!@%S583HUK)i$%q,1Y521*Q'pN6F$pbS,LK$F5`HbLk2jfjrpb9KpBT 982 | m*'JJZPK$+-`1lER[JK5UpGi+jYm!GLBb6-C3pT85&0TjH@p%Akf1rB80maEPhea 983 | YT1Q&",Rd0PVi592*%(U-J3-T&Dfpbj,A(QA,V8+(L#BXIbA`!0JJSbi18SD+,E# 984 | -+Z"9bQ5T+fcN&T(#@l8M-+k,T[5#33dcNXE`ieP6dq@iMPKf,im3FUAq[%b5p[m 985 | [YABE4ma@HZ!)*P#NR,*83"-GYNYcK1A1&qf@*FImQkq3!2J5%EGf+bDM,bj$dDI 986 | V!c5pYG@Z82R@k9fAZlfRNR%JFZiJa@kUVSapaHA8Tlb%[k([m3B,q5i8(djI%GS 987 | PGDTEk-Ap1dABHa%8XQ5*YR$1+",p014e*lpY,j4`8!c`&am8j!,ddZG0Be&ZH98 988 | 6ZB,q+$j5,I1SmHM*-&6ehq'Z*mE1aIH,*)QS%+G$1hC*K*J$Ah&q3IXMGlCNiY& 989 | q-ZSDQV*9GE`m"Nl0SBFN9#L5Dq$[ReVKeZIJ,rQlF#0@3!LKFcJ58CM%LYd3brA 990 | #VUA#[c)0,*&k&8J%9"b`5@K#CDmTi*Yq[%GV%dR)[fm439Fi9k"maV5N$U5#F+S 991 | N&2kbbp5MK[V1PaJ2qFP#b)+26#lG8d8CQ)'S8Tq5pkFAMF1MEPi5D4L4Z'V0ETj 992 | Y44kpFB'!4qPrY&'mEI"VZ(Fj+SZFNd0piZ2HJjMQ@H&kX5h0J#3")8,-YNG'98G 993 | 5%$GfDDZbM[bmA"+XH[JX-VejU&q3!)'BF$ITL@k`Me0rm&#)DEI+mAZSTD&BIYG 994 | miI2bl`ATk'Z,+eK8a%PL*M0L+%cXYV#)Gf@S2H$rCq,&d8P6Qlh20NAX!TJ1,m6 995 | M0k@Smh2Hj$3%JVbi)316qT8AUHFp"a1EZV#$a5+"f0Nbb#j)YAU2'5FU$U+SU8G 996 | ml5k,QS*a[0*L`1AJBJ33mNcchMH"dY@F+0@(IC(J4@3"i%`LPFLEiT[0$r4AE*+ 997 | 2&,1XC9MSZ(83k)r!Y,X3Z1rqD(9*`ZCrAQCJGB$EG#BJ2RL2q#PdrF+ZK4!"`E@ 998 | %YT-SpifN-29HF+-ViK43H&`3kekG8L#G"3,b$(lFf8&cKPGIS!QI[Z*0#01$QS$ 999 | %@JDq5[XE$GlY#2K59,!Cj`p-GM-ibCqH!#H1F2ZQ--MP5'!p"K$-!LKF3XU'GAI 1000 | Z'`q0b!N,cqriQ#Hr9jc6ZReEbT!!QAZkp-PqA*!!,5%d3M*5$())(E"rQ0Q!rh+ 1001 | @HZ1am',LlfkD"RURj@PM)rm-liGal+q`,`Gl09J"&eKNF&*Y,GTmSI&8&j!!'#` 1002 | EjI-4%)Ibp$+b&2ZF$0j-DKJ+MrR(%lqJi-1`H2QCLLJDf`1rJAbkGLG90IVH1@! 1003 | U3P5r,,"c@mH[)EZLBmX(C0L0JD$Z4ZPBTGIH30TZ"fSZ#2jZ*`,CAl&02`-!Mfd 1004 | 4B)mc8Hhib(p0lNK4$!48bJehS1F%%f[Ih-VS#35&K[9h@kRQb'"D,Q0ZiZ4VZ&U 1005 | $jpUCId!bD@c(lJJjDVTP`JfrfaCDX2"!#fAk@PU3!-XU$UFQ[3&!aZJ&8mFK8R# 1006 | @NJ&'i%@q$[k(lP+H$)(UmSKhhJf6CVC)#8"2YhZ,cMH6i)66)@#i[h)5[&k1)$p 1007 | a'0+DM3M[,8-(@!f&Y93'hka,'I9m-TPj`J4rJ1(kY'2eD2peDdrUe1`r9S&qV4h 1008 | p@UAkY,m&mqfreA9I2d[[Rk(!plLD0kAN#l*ZU4`"U[pQH8d2I1)k1`Sj,9[5PmV 1009 | aL$1!!FAU,a1%jb5&,5NlbE$qKZ4P(#`LUaIMbphZTT1#)cBI224'VLCRYkG&pY$ 1010 | @)@#%ASCi3Ij[3f#-($($DR,YZ%Lmc936FSB3BF)MqQbhM@)RV3[R$9HQd5U3!!i 1011 | #-B##1SBk4*,E`dk(Y'B9,E*-T83TX!$"C!r09JIiLI+`%c1H4XGIk,9*)EdB9)a 1012 | $iQi#"r+eVeKHU[A19A(MPaK2cicj)ESaT'fAA*Q5j)Gk$1"bdZKGEX5`r&Qi&Bc 1013 | hjcf(C*Q5XD`djrCRm)IiLD&rqG0#h`4U))Tp8(@-CV,BQXTp(`mP6F+pKqq"q,[ 1014 | Abb+XED$C!PZVD,re%Lb@9FIkBj-rHF'k3$%A[U81!)A0KCjqkD&KcYhZJmjJ0j, 1015 | $RlZL,ISk"("8A`$b"Qi'TXSaK`l%CJ@N)M*K$BR)X%pZ8b48,#YIH@aD,j3bRHB 1016 | 6!&,)liF"Z5eaHS!JCGMeCkAI#L[3qM2FJGE8Em*XUm`h'5[MKk%[0Hbj)-B488' 1017 | j%X8ZMT%JV(9m!SGepC@jQ+qcYT!!L!qAdZPjbMZ5)-GP&1SM--2Y6-!h,UZ4K$N 1018 | @fUEJ*,kJkhSGR-EJlai'LjQ%)mD9Deb0+@+4he#JhDC+p`QL2leSEAc8dI`qjJT 1019 | [@+Tf3N!T-99)-T-qqEK4)HKbC6")aK3JC8IQ#"L[DJFFdGkVVL"IfZDiYkXTrdb 1020 | 5j61XDCSE9340NL@VSI+pjHEAK0%`S8XiPIp(GG'8hmZh3"%$qVKd$q!*MLh+21E 1021 | dYBr&66G)#($3AAMF#jk!NbV!ADKq&6S(HdB#,V1#fh(X5JDlqXY2RB(DlZG-k3l 1022 | 'G+rE3)SCcYiNc)4hhA4)(@UZa&MDLCM@lHX*kc&!hA6430IA"-l["Gl+N5iq)mK 1023 | T&6J[061kJUQZ5Uc&!2M31Jp-aN,QJ4B8RH1VLM9MJP&BBYh*4)S-dF!XYbV`!'6 1024 | Vd@aI*Jd#U*bFcB,6!Kk3!*1m2+[m-UPr#!HUB8@CK,aR#E!ZCiX#UBGY1c&lXm3 1025 | m4&bRN!!jJJmim[ZeD!liF`VaD9QkHT+mqC8ASPar5dTim5'jR"+[m8M2j#`QE+# 1026 | +@RA5p$6ID-Ipf65IHhQa(BV$2,4kc+FfDVT)Mb'B1bLe(GX)9C5AcT2iIX+mm*q 1027 | Bki,BKXGD1reTZ0Fd(,kILQV09EH3!&d6rHVL@Lc4l5[F)4T&41S2SX9N`fEfLkc 1028 | r++H"m9)RAZNjb5b4@%2)SGRi%'AP#-,dP`6KA4jRFFhkraYAS-R`bR+%BiN9!Vc 1029 | FH-+Y12EZ%X1Xp%kabH11!eQh5*!!KBQHREB2XMhlJ0%1h2k(b*PZQe'r$fVQN!$ 1030 | cR,(B&S&Gk+kllIha)EK#GparQD#9$ML`8j306-i#YB*4),T6jNkpMKqdEhJ&Q"E 1031 | +'PGUab-f,ISGS4&dI(DJ,I`NiVjRL1'Y`m,(Tb`"!Sq&8[mr1!fS55PD*C89p,d 1032 | +3E$PEU69)q[1k,+YJ,2HbP@PCB5$TAfb!qr49k(`j'I&'X@6919m@4,[K[6`Vd2 1033 | 9a2-L`%AV6(29Ar&")p@LS"(I+U`V`MKGBj!!qe!q*'0$BUIpPZkcjUjMD)MC[$K 1034 | &,lhk$*QR#6G9SpEZC2FL+NYaL44-d#CRR+IL8-U,M-qZJEf&NN4rjrKek2cDqTA 1035 | 'qVc28EMSa1884Zd231fBqA2-QCLbEVlpklSf9Lre++CXX(UVJDV+-4lr5"M'kb6 1036 | kd%1,-JTP-'AL+T%R"(2BV"'lX0!k0Bc'c[@RZ)iT"mB"N!#FK2Lq3"9,`[dJlJN 1037 | RlJRChbb%93FCE6ppV6DCcYf#jJT*T4c5mA3%#86!U"h6j"j1iZ,p[U!,Uc[DAEc 1038 | [q%fHK"6'S3bq5fl&Vk*0"kk(be#D4#KZXqb3!"eP`k$6Cb-TU9ki$J9E1&2+k9$ 1039 | hLm,FmTJNYZh+H,jHNUNap395bZ&9*N6bNEpI@S*2`Z1#0U)1-Km1SAeVR[h&fe6 1040 | h("%kjNq@h!)hY**(p5'Ti,[%Xe9r"9IHfVcSp*LjZiD9PG3TkBTckBUJiCI4`+9 1041 | UHB1jhY*KDcIC4F-3'lP85ilBXA1Np0@pr&SjlSf(El03c[P5(J('*L2fV+ml)8l 1042 | 9dYXY&6&Gm4[fR+`98-IKY6m4N!"a#TC,Uj6LM[5A9*%2AZT"P(SK%Z2a2NFeN!$ 1043 | 9ETfY1h`V#['D`!aI0!XAAY4Q'0*EAcB)5-FR`Ik56ZIZm'f`QA#NfEdp[VXf+58 1044 | qY@k&8-$qiFKC-c,rGAP'fAL9"J0[KUSHJ,6-QA@Tj1'Qle4lUP*6jIE0c%T,5,A 1045 | VBLAl'f0C4E&jDX6+d$-El8eK,A52KJUY*q!pHq`26'9(&r[$&Z["NdR66Y%a(PA 1046 | *X9q19E'F&Zpd*A(4'p(4ll2IjlQf,`Sb5+cP9X`*AZjGNN90Hb1dVq-9ij!!-fc 1047 | +S88U6fVa8Y-*qLZ*&#FdV6D*V%T`r(JaU`h19kX#,*!!rCQ`aj%VLmD*3F1#F[Q 1048 | LX[Y8ma$')XUZJUqk&fPL`&IkLiAmcmB5ZkR$NDFG8Qdra2+ld9M[1LKB-YLJ4+( 1049 | +2AI#TN'G%66G3-'6D3a0b"EU8`Sh9jHD%C*EXSe[[`BLdB*&T)rI5C@M$hMlC'I 1050 | 1R1[TBS6DVBRMFDqYLdT1LYBPk4XTSicG2HY6TRM0FNVpJ&F'DK6DB9Vic(G$APM 1051 | M)55!H1I3K-P"SbUbiH`haX0Nap3)ZS[PjHdljmiM(P3Me@Qq!)5`&JZ[S)3Ba%) 1052 | e!q$Dd#S)1)c)bQ[I4[F`&D*0d)XTrc5*CKPX#bTHr@"jGf-'Gk)kVAa#2@jXBb@ 1053 | 5l0Xbj@TNmXTYGI#P$rp2LAJ*cBfR**6YF%aMiXN'lSJ#-p)"AE0h%a#hjGb05bm 1054 | &JTUJUQDTqkajPiAiH-VES%@Zb,fq*eTVpT8NJXHUL,4*dVqL48UGh8,BEmRa"f! 1055 | '6,G2dV9afBil1ISXQci4fXA%&LLESm*fEi!*@1c)5"YB#iT[k)-f2a1+)#piC,% 1056 | T,4D9F)M&)@p0FM-r!iP)R#B@CNfX-F*MI%Ve#VRmmiN`fDZ!$'A($$IYBG,82p6 1057 | F-[@r@+r[UXKGq)C'qNJ5YUj5,CLKNreCa"E'MSdBKDjkZS4##pFBYG8*k0)*mf# 1058 | c*8MaLf5Sjk@HepqeYbB9NTZ2rea8CAE6FL9MGP++A9TTph+!FDi`c$ZM0X8G*[+ 1059 | KX3ch#jY"C,,K3CAq@@#0-a,@YDYYZMP9#ZN"L[Klp6qFa'hI@[ARMh41cII!pDV 1060 | C*VD3!!KP8mVh@[2[HV+cF@GbH-1[P1r)UAKr,k6,kFFM!8#p'TRlPe,&4VFqGN% 1061 | )IqIY)aid'0P6[9-2%%YLkXEY1UbIpbpSPe9c`Ih&,h3Rj5bN#q6T4ND!0VeZN5* 1062 | KZ3dpP[!ADF8!#PcGI33Ke,IZ%aJ*#Vp3e$B1d(GS'#!'rHl!)Uc4"`$AI[*e0cd 1063 | Z3UrF,51HDe2`$4&GR5%rr""R&*BH#GXbAX+!bFMa*rF5cK2q%QV)M`#"!6GR4Xc 1064 | c$GBhl2QVJ-fadrJXj%f"2jIkFTRYH3AHm&'"*C91qP$cGU@`CMI013AA+R$,C+$ 1065 | 6qGmT0h@-,@@0hACpi3Eea)1R%NE&R+$))&6A2CeedefG8q@i)BlL"rE1XmfDdSj 1066 | 2cFr+'&c-V$0M6-1PpDrVd8&!%0Jl"4S3)CG[U8LP-mdSUKUXSDUMc9),Ef08cV, 1067 | LV%FPNX#e9EZI5q5[H`,SCZJcJjE0bYBYSSp%)`Yh,8@@+2(+ZfP[F3QK!2lVhJk 1068 | H,'0idD&ES&L09[pbf&0XhYDdGiSRPd(S*EcpfPK"*a8fafDrHIMf+$NcXJMAPdl 1069 | E8@VSId[fMRU[3J30#V5P*!pB9*D"Y"Ec)qU88f663EImM!$V@IEM#I6pV9#B*50 1070 | Lm%8hRQZ+49cN9#hZCi3jB*2ULeEUIU8pCdR98TkhEP&Zea(["8iZ*qCQJA$D-im 1071 | flq`H0,ZZbj,819-R,56T&h*T1#%0eed[idhk3flaY&%lfL1LH3**hKPS6FGMI5a 1072 | 4)Qe1)*'Hm0AKE[XUfbrk5"ff4R'p`I8XfFfP,GX`8@rc&Mp'E,krR3)Eh6+rZ2d 1073 | #-QIB"(RC96UFDqp)dFmL4dVGfI0#1B@UVS&12XYpGkeThcU+USE&k&UDdQi(b#F 1074 | kkA50HHch9`81b&"5qJZIMaDN[LfliNElE5CZ508JlNdk#l+P!Ck&BdqChICEKJ4 1075 | T1HXI-!PY9f'cH&bPEDUTaip&a3R$J,R**jERY`SL[iNQfBZZ#(&)UHC!$c`B4Jk 1076 | m-#'K3&PEm(VAQSrqU-Rj3bNB0M6E#[+"fqjTcL%(eR+CAdSV(ddES&kjqa@2bX& 1077 | Q4'HlX`q3!-i#YVT2SbjIpBm%Ud!46Fq(rGXE*8@C&0c30cKM#)X@ErQBDiG$TLB 1078 | Mj(F)&GqhEB1hBRhPIN5mk34LmL0TfVM)R34Y[hXjJ+#Lc[ML1%3(RG2X61Ulq3f 1079 | X'p1bU'Nk%@D%ib5KMFhG@G'Sc[llc5m'4M`h!#KReUFNLd-emV#YBN-'D&S%klF 1080 | L)VV5+()3I-hXU40*JN`BVbB3R24fXQShh+UXLcr5j!+#KV%PJ6*L6d53!"j#9Sp 1081 | !FpGrirEUrhEVPqhG$pZeq2fkRrYe`rEYRqhB($pZMAlG1rfkrIYeC290$@&LY11 1082 | ep0aJVJcEj`r(HJPCjC!!hRb8SALPaNPZcUR3M)k91&)-@9dC&NkGP21Sa10)*3U 1083 | J[`JBrcKapGI8(-MJV6hA'be%2TBc@#fe2UbM-3QNF6mMA'"50*-V(plTi,1V98a 1084 | "pd0bC%[E@%3Am))!K*F02&je0cS,F5hZkim-CL`BAB(LD$A6Fm9I"k&pJVYKK*m 1085 | *N8V2[h*"bNLaqf*'j9lfD2p6P(IP2DX))'K%Nr0AQAVUFQk&KUeq!c(lb&$4"`q 1086 | 1pJC1Y`Se'Bd(6H)+QUc%b2k2Z%qdJc8d,Cp,ai5,ECpba@d&C2VCQmYaL9YB8TS 1087 | JlJhrHQ4UZMiIda4Ai[FAh4@"YCbbBM,kqDaYU*I-Ij4HN9,HC'`Ge0NS`$CJb1m 1088 | E$HH(0#+M6m3!qQRAJm8@9JVlGP@*$[!aG)RPKeS,ji'8PV[1BDS'k8+4Kk4`42K 1089 | 1DfAVRZLVD)re%Lb1G-RN63Yk["Yfir55RU"@eUh-9!FqMGFI,p[[DGi+K-kGf%- 1090 | AY!PpeYS#RPSV&hh`4Um45)96,UZldjm2PQYB(!6hK-[Pc0hU+SqS&4,&rB2[Yi3 1091 | H#1(aKAi#L,T@b1BSc0!lYN*!e%Ilk'fbR89rAGi(43kQImTfJ6m%md1%qmi!+JA 1092 | -SppRNR"$6eL%3cVJarpd#pVGNEG9fIRI2,YN2c0qH"h`MZ,E!8HB62eB"qf`MU) 1093 | )(jb9iK38Qhcblq*i19$l2hXDQ(Ma!0HH'p$24YL9)KrT2SJQiK0UJbEb&dBma!m 1094 | 6iq@4SCT5G&q-J%'jMb2l[6[&D1Q56(&MN!$5%!jLjT-pqN%r0Ha!Ef9a&0UF,(D 1095 | `6UYTrUPKDLf&5SHBSY+JN!!0q$hbPqLG#08FZ*[peNFp!Zr1pB6XE[BBfUPk1NG 1096 | 9[(-%pb&e6TbZVBYQlbL@H3X-"dNM#m,Z'(aDCPM6[CVcMT+$f[lDK!F"jRq#jdU 1097 | dR!b51V`kUFHLS(XNbAMIj9i&[GDD+2VPp9qKRkE@!h%bJb,-0i,8Xb@b[,M1e'` 1098 | ,b#+DjZh6Dch"h&`"9"*Np+Ma%BbI+K[cNDGc5A)Dq'RZ01p*Y))pk%B$'V0BDQf 1099 | B46!,hRG#jZPpk2kBfE#[&,4jYp22)95-0!lCUS(+-S%Ac*2RP'TZ)lG26-[LrU# 1100 | p&c(S3j)RpJ231m)V9m`cF[P3%CSGNcK!ahe&$1me%!4phUZi`2`CKF5R(I6H120 1101 | L'++fP2-i9mD*4YF49EC)@#LGRamf[PbG4H,PMRJd'TY8HmXV`eC[h(HJ30-a4R# 1102 | YN!!3NZr!-H&UM!QIY[CCTbN-iVi9GS6'TUZ6Q`L%U`UJP)RI4BVH9HeaHj!!h!1 1103 | jN!"420d*Dd%X[0bjqTkHDSFq)Nfrb9A%c,Ae*,MfcZ9Urd0SDBMh%6[DB*BIm8b 1104 | 6rdp,#mJ!FV)9KKP+XJ6!U&6F9pSQ55T*[XCP+S&ma09U)3'2cEGL#pK1r`@CM9* 1105 | ,aUSc69E$QPBbjmbjcTV5[-3qI35%C$HA"A[PdbPNfpTZj*65[ErERL*4aHAkajp 1106 | X-EEd")VQ8c*d5#QLTShCH#)qBY+)U5`E3!AQjKMF$ar![rS14E0UKHDLZfpk'jV 1107 | 6Ca4),md`l42*GN@dKem24-eMb!QSCl(X#-e0i!Zj4A"5d9H#m*HcXD`'%V2l!mk 1108 | 'D`!jNp6))h3maR(ESG20-i`"I9-(#2mcfF4e#Vb0)$c%(XN[5DJk$2Bp%2Urrd` 1109 | 2`H4!qCI0+QG0j*)mb3GH'A`)rD!![J!941mT10[,52X191!lTAp#4NpJ(2*&f'` 1110 | j&A,J1)ZGhqTb%Li3NM@$@,%N,#kZ$fX22GqM3k`MYXeG0,@aRID@)f3)RV122`S 1111 | af-0Y-E)4HhV$D#ibLppm@S))d!AQ'dBNIC+6rS!L2A6#e6rE2,`8Z'H-+6[D$CA 1112 | 54-'d2M0`rFNB%a2q3TQNQ`Ti4'+KKTmKaYf&`##SVbD+e""Z-RpX#CXj"`)`kZ" 1113 | )h6KqXrm`mjKdLiC329Y6h,ZC!EF3-r@3!0M%hcjjd'dr2ekeRGPFP0[A!VFf9Ta 1114 | Gk(YdTq[[A"HH6mmNK99ea%U*8Fr`fD3QP!)6X*[FUE5++#mE'm$bfF[!'le,ddk 1115 | 53q,UEDil3Y4M&IXf*lJj459QaXC!Yp4,M1Iki3S0m[40LT`mZjjaa0Ialq$limb 1116 | 4PdFK8*-h,a6aDl$Ti)YS@ZG2E2k-dDB%bTe16`mqV5k8NACLK&)0FCfT-e-$CVq 1117 | $3Pl4*Ipf'fC1A,84bX[dNJ9PH%3k'DP,`r9lemDIHrY@TAA83d2[9JQlA6JMK#8 1118 | HF,h,h,!*9Y!#664%KI+K%*Rpc[#k0)jjYJrRY$Te)5R@L"k%KD5rUk,(Cm(XCcr 1119 | "*5,6N!#-d`CbPhkmaL1+E0r4H[mAMhh5PGU80"`Q09B+&DdfBER6G@E!$le5&%M 1120 | ",Gm863HYYJamPb&2!E,23h@rmjIa6b++i@$D%!VYH"iMIQ"*N`c"SN9aY@pC0,C 1121 | mT[+TrcXATXm$JEfNYE%j5mM!6RNbCHpJ%*Nq8bXFdYE`D%lKhD9XHA*Edc+Uc2l 1122 | bR*Ce!hM(r$5fE@CiHZpkpBqAfm8`""VBl-X9SCD%BI1EV2Hbe6LBYdQ[SBkI,cK 1123 | &4f$5`iKGi2(jQN!P)fTUR5NIe$JciLTdEYXckH64C6,IJR$dU[IN%L!iF[D@TC! 1124 | !C`"a"&VmbFbJf$4+l9MbBEN-r`m1!@!%9HMY*rHI59`l$`dmep[QQ)`3A3&4'cQ 1125 | dGmiZS![5mT94Ij-r6H"K#S)Yhi6JZT!!h*HGL!'m4mS5%Gir$h,X0`9DK(3[af, 1126 | 3N!#rr1`T[ILT-SHjN5B)XCp4rC)lXiTDpT1E-6-d%U%I&l3T`c)GFc4NYQpUG$+ 1127 | &S&k4VFH'dA98*B!42%MJj1Cf&'P-H9"rh([QeDj4#$'rPHKJS8'Bk6NE9k'ZD66 1128 | %rH4N#*JNCCE+NQhVa[%%`C2MP$[NP(Kl)D#4$I2[E"mUXjBfli!mq1Um`ELBFA, 1129 | TiXXSMq$F%C2JQ+%Ci,AiQ2E44RG%MB%8Ce*LLm-30@!EVAJja'YEL!ENTk!NF(( 1130 | 9b@(R[!TkNhD9IV&L$0jjj,lAK0Ab[$R[MM+IJAQ&NYZ!`(hF2fT14YYij$$E%hX 1131 | Q$JU5c,m2Y*6d1r-GFi*V03jZ$*!!m&jFPNi,6#8C!I!Ppk52)"1DJMF[8CZ3!'Z 1132 | e6Gh)$8QUUlk#C@U`55P6f(9RhGhph!4-B$&#G0Y8G@2cJA'1ZTA[hdr4Ch&iFXk 1133 | ibdj+3(2J0+#fXB3`2lpZ90P$))+alG(d[Se2aJ4kL%rUp0$IiVc6`C00kJR@&eS 1134 | -BG'ed'lCD@44`8ra*"*JRMb[+*[*p&`@M)r&hr5@NSDrGKicC$#dE",k3f6cp,M 1135 | qPU9e5NSFhrM`,m-T#JMZApm246XQfq@5pBQ'fpD'D8YA,$EBP`Qi6+Tb8`K4*kC 1136 | Ch(VUcQIUVBS`YM@4%2$Zjq[VVe-84I`CMc%842Ka#McYZfEel9CCFrCQQPPD"qc 1137 | LCTI1%kXeq+kPq4PC"D)$a+1RB9-k93R-`RF&0pYiRfL2UEmQ1a5`)U1FK5DDcjS 1138 | %FHITiBI6ZPeN,"M*E1)'df#b6&8E'@BfM-I*RbMP"8c['A3&lX1[d6&i`+I0!Ll 1139 | CdI5)c(l)QBlHpDKD"(&kmMThS!$NY`q*FX3CEBFDk&&FU[!-,l)(21EMC'j$-#@ 1140 | 0"eCF0p+Y9fm[0,C&4r5(C%TdRY'(D`a"K`8X5E1LejQR&Pajq@Sm#!URHLZ@e[! 1141 | 4V4VjFPDIC4IXc5'`,NTFAdNY`j[T#r(&k1-jl1lS[N5[6p6Y`8$f""1E0$mRf2K 1142 | +MI2S0""GH2B,%($IYEefa&F'r&)(66BpipBZb5aSCf5LUYMNI$d@&p6$LQ5paa5 1143 | +p4!5Ndk'Nk4N6Ra9qqFTKm@mX,Y4meUmS*0Amjre6eH+&b2h0AbXFJe95T-@1+6 1144 | $dGeCZb#0ikiPJm&m&V0&GYVhk-fCT1+m$B(`pVXZrCTV2p-1e[#LHjpG99a(V@# 1145 | hCTed*ij*pK&TJGl4dG)ii2+X3F[erbN9*`Y+'N#'m2FJSV3`dZGfXLMTbZ(cI3` 1146 | qRiTUV#%Ad)JRX64PqXce+HpNATm%F'0j,Q2XRM+Ci*B1Xh258kMaJ5(R,CpY9ZG 1147 | lDTH2kF)20L(Y@B6CX('Gd"b5QUGVL3M,pMp#%jfhbAd6F[Jb+VQ6`*J5YZ6$-45 1148 | 1ATeMCrL2DpUHb,hM8cbN8qB'f)BN%CrXr+3Mm@H%fdd&!i!CkeLQhQV4FGD%03d 1149 | ET#Zff9ik2"D'!4%dLVDRNIX'J21KPAaaP)b9R!103d!l)9@CCi&9NJREUcqj[Me 1150 | i&CS2KPL,YP!%'MI4`lmI"crC4q9`rM,!HaJFB2dLdD)EQ+PY9i4bR'lic,qSA4$ 1151 | 3)iQ2H#+*ieiJhe5(,@B-Sd#9TD22PV4I)BB&Jm+'-R2LUNZ-YKZM@[dcr(p4Fl@ 1152 | qJGZN*TPU1J3Bf%Up$VjC#eRCI"majj!!m#Z)Fcqi"X-HKT8FZ8S10'-bbfPLVp! 1153 | K5DA(HZ8`Y8$2jmKHRV943r2mVrBjh#hr,,#d*mj@fQ3$"9Q9Lj0EH3riSjm2LKS 1154 | q9Ac4)5bSf5+D94SSN`MaGl%3aN9GZ9rNP&kRk(L$P!fh,lHLUF8Ch"rqI59)8HU 1155 | 8*THH,58Lfp%jDmMHiS#D`M'HhN!A`#6p9dV4%13SCj!!,NfF!j+2r2d@a6K8F,1 1156 | "CEiSYPE0RS"[,Yh9+p'GIfjV&iZ4JLYr[iHB4KP'Rp'-(HQ4NXQU9IdpI-c'V*i 1157 | dF%Tq0L@Q@I@hLrI!EcI@AV`cP8bF-a09imm(8N'XSF#%N86'pk16iK@4`m[HCGd 1158 | 840!il5AE1UZ43m1DGk6KR2CQ1Hi"cbRd5kV$`E`QE(iK15r9mAL0*ZGV8b[m[$q 1159 | 5JTmp6"k*L9a1I"@aaqHTKCZQq%cDH0@+@cf*"*4L%m1IVKHFc$2Di4ap1qj4*Q' 1160 | qX)pfB3QiG$MRa*V"15H"N`RQjYc4Z'4-AR%Da+4+Vla41fk1iU4kKiAN[#V4Adq 1161 | -VbCHe`4Z9XpkfK"R*p"ip4(mFZf"&lG+*''9&RRZK#$PdmGR6+3'4Uhjre@r!K* 1162 | aTLU8($"i#15T*H@iYUkY8[JhT8ZTG+"HARJ[@kH$UFr@P1A5NkM3b(4Z'05Np)H 1163 | mFBl1[RVe-4JZ3bpXR'6X+@A8h)*)+*h4+'ANH)CNlc&`1+CBcD12kl5kj1p0bqH 1164 | B5e!mcTG*hdkT$p-MZ@2AGkSRK,+iKqAaeq0bD[p36JpHLXkH)iSdLSZYPiC21mC 1165 | EFR@qqdY9*FLDk`LUadK)!*,,U!@GKlD9,IR0Dd2j22eaHPe$XUcCL2'cDdhU@8B 1166 | ca5J'0Z0!lSJN[Rj"hr6EK0B12(F6IM1M#YZ&C-m%Qb'H29dX6#$e[Y@CMCra2EN 1167 | JAiZCp!!'EFp1(,J5,qCPV0f$i+E$+cL3!"q"@'3Lcide`bHiUIIpFbqB,q-P1jq 1168 | eC11TP&8'mr,ATCR#4H#Gcp@9rXrE*E!*BLDZldeBPLFT'cbXhG*l1LIc!jp+YG, 1169 | cTRQh,0@YJf2@V6XIY#h9i(EEIrkDPb&NZRSXKi[fic(%B5+STkND-Y`b8PIHML8 1170 | $$pmlP3)6!MCl322clHS$Z&G-e4[)5+,!ciSK,Mbd)cb8*+Grr((JU09[V,&251- 1171 | ,SfJSF-+E%JFDa4-fY$5Xh4k2DeKZ6&iIS11ffFMP[Y1q,3B3XNGr,JEfq&fUGRP 1172 | PMcEL9$%!VikmC#pq(eUDc06PeK(%(ar*T3$a-*-0N!$mr3$L0ar(EAQ1HQVMBqj 1173 | kmL0cGHCjaNP2eGc)@aSA8"3K!$'QU6C8UK$+0&JHFaHMRbL$a$Jm0SbB!aQLS$L 1174 | "F'jqS$S[!9TPA$Ah,%[$+Lf6)DFl&`hXaKV`$8%NUkqeFRT'C,CV+UZ+SiFh9Q# 1175 | l[A*D%E!!&KrMpZXIlGF[flMIYfPaqh8IpZX[lGV2fl$BIYd@rETAqhA6pZU)p@J 1176 | 9qG*HlCb0J!*!!'(pq5m[HbKl%'$F+C*%cq)kihr%PadB%YcE!C!!h,3pp2"V9', 1177 | ,1kE9(Im*9kXiQRi[bIEV2#h'Y%"#r`c1+KXXJmMD--32I"BcjjR%Xl+p(0Aq)b% 1178 | UjT3PEi4KKSbj!+KCN!"V($KFFmUNkGm(CN5RkZ4hj8)D39V)Ymj$Kmq*AY`E0#E 1179 | )d8bkVcLm)'!pQM('AHG%4)JJPhFp*DFU!-!#5HDCGPam*S!lh-B#9DEGPj8c+*% 1180 | 3bcL("-[kVe"Eb9G2,#LNCZS*NUL@M4"6,'9'-81Q8q`bh9U1rYLe'()LPi5$Ze% 1181 | #Vf21L[21GdjAmM!q0,mq$1-`$"LM(Pkd`Jh#RP0@VhGhi6R[q8YCpZ(ik65QU4+ 1182 | lq2[%!TD20Skfh)SpX2)Q+Q@Qkip#YD)dCcd-JH5SrNYeRQA*HRHRPJYEaK6T&+J 1183 | Ih!VSGfYJQY9SLhe1(-fqR&R(p4)XG25RM'dGT"RkTlVdVYSc604K*93flY9d3Xj 1184 | IqN4f(HQb[R-C(%mbbNUl5$X`'*0H&BeLNZ45ARRCSFKC%l#@,R"2("`Ihb9TZYM 1185 | hG*CRfH$)kqH,2mFSbDcr'1!A,[+)1$KKIal#lSMrDJC9+f25$GrKXSY[eE`HF89 1186 | B!)A6J9`ZR!XPMQ,RdaG1M`a%'Im[8FUl#E2d61Zq3!'K+RkQSbpKda,kXR!Sp#Y 1187 | -"M+FAch@Rj1fTC,plAK$CC`ICjF%BZY$hlQ[-#PCcJh#(jCR"PVP`qE'MZJNS-' 1188 | Q6,$k"iCh!@[1)FprTU`F2-brPYT-AmTKM"3jpTmYcqdmURSDHjafI3(cK)$J-TD 1189 | 62p!3UcfXZ8#"5QY$f(m-qX[ceAr&hX*P4f9%hdZI5*!!!#N9BqXFI+f[!Ak*HQd 1190 | 1VR%*+8UV,8[!5&2`eJ%%p4&4ThMmNCP98bNPja8LVr#-i$#4))A#F4aCF!Rca%` 1191 | PFXhD4`HH!C!!Y0b6+`SN-N2e*FFQSbHGQ64%2P43q3*&#Z3m2+D1%cL0pEZKjfB 1192 | $jLN0i[RSD,$Z&CdjF!$*XBN6-&ERXmhDc$CJfJLQj&SpB6-cr*%m%brXHi0%CPc 1193 | -$GT4a$'EFHQC(#9haf''p-KZIMP0FJ`Z'qZEGQe!0E(,H`CF'hC3M,0)lQQA3Am 1194 | Cj9iPI@@l8QdG*%%f13MHhKlGC,bmHLl`&K)'rNSqjG9TpdFbNQ3rI)*D#NJXiFi 1195 | rZ1j!'Y1UFcK99dR$!L&F3k*FPp3-d"X8q!!&1`ebK"$C3Pjq9k$3#Y3N[M!f""S 1196 | T+1r)dec8eAr)kp(F""[a4raUXf`(G9E9i4q-fPXZNa@)qVDZ1-K`2K[j[ZrLk'R 1197 | P[FklC(Pla$5&-Y$'Mr(i$-`Q,")B1EVIJ9T,d[dULr)`)&JhA5mV0HeP`KI#K-- 1198 | j4XHD,$$MHd"kZDKQlhrQPfda6@-X(ErhMi[9cHd!eRA$Z5qYfG3I1GfFVJcR(YI 1199 | mh$IqZ(0+qGUSL1X0eEFHhCLDi2QZFIblTbhjG1(1(0rl6amf3i1SQDPPa`"pF@q 1200 | kAMB4@F*VC92mIN@ZDS,8K)Z4q0Nf+#4@lNi%&ar!d&P0Fq+`cXFH0Aba,qGTR$e 1201 | "(S8bm4TL56ZL$iG#G4&qQ"N-3!&SSa,GZ,4c@00Q"6S6')X22eUKda1a++F`,!& 1202 | q5,mA+kd9(CNYISr@b[`U[[[,$emI9T-Vr)'82*GG)@5HB[4%4)hd!jA9(-[S1c+ 1203 | F'GGLTMh5*j2DL&(MA8kk-ULJ&Lid*V-2DTUb[dX@96`mUla9Cj*[!)HN!"bDV,D 1204 | C`'(#8cST#0H`H%J`CEQjIZTRkT)dV%B+")N[T`GmVL"+0[Q3!"0L)i02FZ!VXBR 1205 | IkIc4HkG'bZf0%UHL@3[NJV081S--V+4LpBQ`%1#)L3$-lE*preY"dYeI$Pcp($V 1206 | (HpG$hEI9-5dmm8kT4mY&-31KbSFRVhl[YM!F2r$J"#J2,d+()Bq3!'&9c1[f$Pl 1207 | #*LkSU6,j3Q1ep9HC,r"PP,YiIk386,Da8`K#0Ub%ejpmcH4q8)E90KQ*jqZC2T4 1208 | MaX%YCrl&3Hi"YiI1l&M[ZMiS$"14aUP(XjGV@@eDS@5j#p,4aa"!I[c)aLJ4X(9 1209 | A((Cmq5jlDhSiU2@F"+PaKVb`)I40LT`mZlK*RlBV-6&&e5e@d2$p0DEjATSKS@B 1210 | bLRL!H-+[E*!!C"6P3%c*1L3'XfbGM&j#II8TMB-Ri8("cJCreF*Hc@j&QT&Eq`9 1211 | Ac)SY*bAiqQ''$T@hTNlRj4DISNkRre2N1fN[dQM3h2i&$`Cb9*!!ImiLb`$!lRf 1212 | rq!"RebC&8DTG55aB`e)JR(KVX6-lF#jfAFZl#K99%!U$-AdBQE,3kA0pZ2%e0m` 1213 | R$*!!'URcG(bV&YKG9MH@ZZh5JLC#G)"4+'53!,kQB[3e6bf`I*FEXrIZNRr*$!R 1214 | (b82lCNmXQ0Y4M`P[DPcp5+2!raFQVV+Z'22#'C)%Zq6Ab358G8F20qm,5XX`Be@ 1215 | 5HVLiYGm"IqEq#T&'48ZSUq0G1f(lkkDiQJp$52ZY-&a2cZkSD-6H)j!!"krMDjZ 1216 | !YqaTS9JlAIiA9L"&@DE$mjF+R'Za&T2FG,,I1"e&Y&1!)NTpb,(*Vk2!j@-hZ[Y 1217 | r!D')*CpY"qJ6!1T"fJI0RNf$MQ1T3IG99'MYqj0BpB,p"D!K3V9""3j1'+c1ejZ 1218 | +"42S#B[(2YcJQci,a(I1&+Di4-mdRH+(DQPT)haDTA8)M$f[DKB*cC)89@bY,)' 1219 | )hT2!#HA"0a5ML%%l48)8N5jSCJ)S'r8!R+fJiqU#p@DZNQj)3h-1YDf[`4$BcCT 1220 | a!BZ&U[1ND-,rDcR`-"ceTPKQY5"B),eYlhcRkJPQl6pPH4[&#TRR(CJbhiCXmpA 1221 | ikk5(-*0ajI1pHe%,aq)`AkEL1#M9(Fe@YaDrJaQPAAAl#N-K1CITrN'kNhAk6k` 1222 | Bd[BT9G5hIPYSRq5V%L`22GKXchai$4pd8lVV6!k2@+aUdk@`[*8p4bR@*U8#K+8 1223 | T2rpmkd"455HVpH,e8YqR#HZ#U@MH`r,CfYi"UZ5!E53+NaD0K0Ab[$X+XiJ038) 1224 | RklRZ'-"9Lq@*T&`QqqlQ&DhG2q-P&R5[IV6C`e3-$AE`A6))[iP6GA,M-F@rFFr 1225 | %SNUbKXqB+cBJ1JI[c)4YJ(&Xdm,q6jCb28D%N8dLB)RY9@q[9$+)*jT,VBVVH*Z 1226 | Tj%IY[VJ0A+[1E,CdDS+*p5TCf#H,!C434rSh'P$$'$8A1)8CqUr$GFp0lPUeDrV 1227 | H8P-BZ%VU)XHXKae5##b#YQP%Xr"VfIcD3#Y0M[a#r"+H!T8$ULQU8E!(mhBB85S 1228 | mc[JL54Pdq@'bMckq4NFl[B5'kZ*T(rd(G%d@+b*[)*h$2YZcZidS)LH#a0"ME5C 1229 | #je0IKSi+kYmR!&+@SbV9JT1Fp&98cd-aid!r"UXSpYCf@,%GXCM5YP2!U'AQ'5K 1230 | ,CMiZ`DqPGKT19!PTrLZ+GMN!-!PqD$QTUNck,kr&"PRAS'86-B4QEi02AqXc4JD 1231 | R2qTHNVh6Xe)S9AV)*PXID1rGC"&I!aG@M,ec'`aG9*E+DIikqH,PXP+2@J96(-I 1232 | L@G#REB+NLNj"e"fUM4a$0a`kMDMSUEk+C4Il'ij-aSq*FXNJpfU4*`J+L'1@9rX 1233 | [GY*eH*1H'`[1Qd40pRQ1f13E(L&-'%r!rDi9UKHEbN1r@`j2#1e3l9k0C4d*0'0 1234 | "qGEq`)PPpl-40"Ab2#X`1Z0Y-mef`#,XEV(`XcI0GZljeaRAh3C&5($pXERL6KJ 1235 | b`VLIrCEjI#4k-FK)(L(KGKMc!)S0LKVYeN8E+!Y@NFV8M,RQ%1JdI#"BKSe[IN( 1236 | R[j4+AdB8ijlC,)&GD,YiQJ6p$d)k(0jr!KkmlElSF0$IG5USX[A)HS*,J"I&X$h 1237 | (pC!!k&*kSZEL0ATbpa%ePPKJ(4F`ckElcPe'l@(H+'K99r1VISPM!Td,1&@fX3X 1238 | 6+r#q(5Z55%!FdJ-5NDBcR(hAFk!G2aHDiUYTDS@V+UiD82(ZdDk65"Qe[8-F`AS 1239 | %'E026IjUBe%Gbqk3!+[5`LDKZ'(I$(!HFIq"#Iik[`XIIDISr#Qr$Keb3,,%2if 1240 | 1--Z(P!r9p[Ypb-TiYdMAHJ6ZNm4K1R+MTX2D3a,-[f(p+Ck!QSH6hrJZVQR*1eQ 1241 | !S3-Y),kdZAlM&1KEV4SmQXBG,ALfXN#X0NG0UV[))%[me`16$$'V"C*Ca4CHfBZ 1242 | hNm+fIpN*5)ZCc$Te@R4#CPbSe,C2q&$2q!6Ur)050BpASeC(QF9#DGfaCF!Lr5M 1243 | 3%-U[H"+)pG$K#JmjL8RCCBXe`I&6!Y'JDATHGL'K&4$iaUF`cjjDY8Qhb0ceDkb 1244 | (V(bBNAS@ahK1VHX3M"+4ANTjMc'qC4!k8)K4HIM96)h'P$HBa,5H54$2IKES%)r 1245 | $dqIY#5Ymm+qEY5BfL[1i9%6KG6PS+keLPX3#+TjAQl5JJblH(4LFBNHGK'Kqq3R 1246 | 09TEM&5q`GdM65)T!Xj)PIbUQ5cVm52Qh*bBEDGIhpMY2h'5A8e6b8G2aQqC!MZ- 1247 | [)EN-B&3XT06a!,B"b-K2j#YN#LQN95M&+QYS@YTdf40am9Ia%MH#ea"@F"c@2!3 1248 | Nk,H!R6Pl--*'HQ[h#a4i@Uj0)2U-J#IDXb[%kKbc-rK4(14[$H$kcSB!*NLS*"` 1249 | lbPGc,b$!!!DPpZ"iX4hi[d#8eKaELa9KJB#[`-C5jEclell8T9fSkGFI8VCFXYG 1250 | 1Eem@GX9jIB0E&XS8SJ5Lp`'XV8e#`U64eUYj,6Y(`qYIfTIZ@B)c"QYdb6qE9r& 1251 | *'[p*(JQ53cqIEYH@-Il8Mk)"iE$T-DQ6p+(RVV`UeQKL9QPTNS`%K%TSd[d3hfh 1252 | V)Aqkr0jrFZjDIFbRG`h(m"*&XFaXZHh+AE4jA[#dbpSTmR4BkY&XBmqqX)phLdZ 1253 | (mED3!,B`H-X(X#+p+h26@%q3!!,'CIZ!A4,A"`fbH1+$bV%(ZHRRH41hpD[Ydl8 1254 | TFkla0)pdl@TRS,1d(NLrRE5R)NpD&J`B*mS+qip,fcN+2bl)G'EMAHUhqbb&L0E 1255 | GqaB02BLVjlU'Aa+!JX*,)8)0!5h#'2MTRf-N2MV)caSN4l[c1ai9CL!E3ci,Z@A 1256 | NqA')jM$"-e+J4$(XB-lTGXjBPRi,9VaimX)iSq3e)ei`GjDl,NR5Kp#IX%kF9)# 1257 | G`HcfK%%)aMd'Ti[+8FJFZ0EC(AG9kNIA(Zl'iQJer%$[d(ekh0JST8K991G'rYd 1258 | )D%Ff2k21K-EKB'*k1[*81'q'8Zp04%H+Z04+&kmh,GHFB8ia2jR)m15JrSG+1HT 1259 | @5ha9%li$(%jR[X5c)Eemf#I,+(2$#lkXSM@[ic&LCkQfSUU!'$%FFd1#k!pp6DT 1260 | l0'-AQ)9hDTc3Ir!#rfrLh5ked"mU[3+$*NI%1EMQhk$-"CM+Gk6S(Qc`4U5$'-" 1261 | CI4#!*VDE*0bQmM,TaBhRPM[,kLVm5@*L!@)2lUBZDCX%[EiN,"UPrhfqAIp[%mT 1262 | pSN-[M+*MLXeEN!#)HAm5NdS1d4pCd"IDG"4124UTm9Q4R!NkJEGX!L'QbTr05N- 1263 | fIrRL2S80*C9Eq6@3!#EY"m+$`c$Pje-@Q%cRc"5&@*(Chi"TbcbpX22[TVUN6$b 1264 | e'U*$2RYq"a31H'Hle@D[kV'Dc[AV#ZN11dq$%qUK&``,YkJXjLdpGiUKlV%A$KX 1265 | B%p20NU)45hCaBk3XlR[$4j5M`FGrdmDXEam0"Lj'!SQCIe54'AarLMSd94+q3HI 1266 | (0&3i5MN!mjDY!2%FF%cCrA%cCH$$Zah,cH5AhRp9+(m2)Vik[5kZkmh)C4f3!)- 1267 | D0"[HR9MG`jrl!priM6eDUZ1QC8!pdrGMjL,C,'`P*RB3QZ1!rpN!!!%!!!$TeJ! 1268 | !k0B!!!!b!!!!!!!!!!!!(!!b!!"TBfjc!!!!#Vqjrrm!!!!!!!!!!0S$: 1269 | -------------------------------------------------------------------------------- /src/icons/appIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/src/icons/appIcon.ico -------------------------------------------------------------------------------- /src/icons/appIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/src/icons/appIcon.png -------------------------------------------------------------------------------- /src/main/assets/shot.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/src/main/assets/shot.mp3 -------------------------------------------------------------------------------- /src/main/assets/song.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/src/main/assets/song.mp3 -------------------------------------------------------------------------------- /src/main/assets/song2.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gritfish/HTMLE/1a0b5a5a7d8bc72f50c7f931bcdaf6f8917052bf/src/main/assets/song2.mp3 -------------------------------------------------------------------------------- /src/main/index.html: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | GAME_NAME 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |

15 |

16 |

17 | 18 |
19 |

20 |
21 |
22 |

23 | 24 |
25 |
26 |
27 |
28 |
29 |
30 | 31 |

32 | 33 | 34 |

35 | 36 |
37 |
38 |
39 |
40 |
41 |
42 | 43 | -------------------------------------------------------------------------------- /src/main/js/buzz.min.js: -------------------------------------------------------------------------------- 1 | // ---------------------------------------------------------------------------- 2 | // Buzz, a Javascript HTML5 Audio library 3 | // v1.1.10 - Built 2015-04-20 13:05 4 | // Licensed under the MIT license. 5 | // http://buzz.jaysalvat.com/ 6 | // ---------------------------------------------------------------------------- 7 | // Copyright (C) 2010-2015 Jay Salvat 8 | // http://jaysalvat.com/ 9 | // ---------------------------------------------------------------------------- 10 | 11 | (function(t,e){"use strict";"undefined"!=typeof module&&module.exports?module.exports=e():"function"==typeof define&&define.amd?define([],e):t.buzz=e()})(this,function(){"use strict";var t=window.AudioContext||window.webkitAudioContext,e={defaults:{autoplay:!1,duration:5e3,formats:[],loop:!1,placeholder:"--",preload:"metadata",volume:80,webAudioApi:!1,document:window.document},types:{mp3:"audio/mpeg",ogg:"audio/ogg",wav:"audio/wav",aac:"audio/aac",m4a:"audio/x-m4a"},sounds:[],el:document.createElement("audio"),getAudioContext:function(){if(void 0===this.audioCtx)try{this.audioCtx=t?new t:null}catch(e){this.audioCtx=null}return this.audioCtx},sound:function(t,n){function i(t){for(var e=[],n=t.length-1,i=0;n>=i;i++)e.push({start:t.start(i),end:t.end(i)});return e}function u(t){return t.split(".").pop()}n=n||{};var s=n.document||e.defaults.document,r=0,o=[],a={},h=e.isSupported();if(this.load=function(){return h?(this.sound.load(),this):this},this.play=function(){return h?(this.sound.play(),this):this},this.togglePlay=function(){return h?(this.sound.paused?this.sound.play():this.sound.pause(),this):this},this.pause=function(){return h?(this.sound.pause(),this):this},this.isPaused=function(){return h?this.sound.paused:null},this.stop=function(){return h?(this.setTime(0),this.sound.pause(),this):this},this.isEnded=function(){return h?this.sound.ended:null},this.loop=function(){return h?(this.sound.loop="loop",this.bind("ended.buzzloop",function(){this.currentTime=0,this.play()}),this):this},this.unloop=function(){return h?(this.sound.removeAttribute("loop"),this.unbind("ended.buzzloop"),this):this},this.mute=function(){return h?(this.sound.muted=!0,this):this},this.unmute=function(){return h?(this.sound.muted=!1,this):this},this.toggleMute=function(){return h?(this.sound.muted=!this.sound.muted,this):this},this.isMuted=function(){return h?this.sound.muted:null},this.setVolume=function(t){return h?(0>t&&(t=0),t>100&&(t=100),this.volume=t,this.sound.volume=t/100,this):this},this.getVolume=function(){return h?this.volume:this},this.increaseVolume=function(t){return this.setVolume(this.volume+(t||1))},this.decreaseVolume=function(t){return this.setVolume(this.volume-(t||1))},this.setTime=function(t){if(!h)return this;var e=!0;return this.whenReady(function(){e===!0&&(e=!1,this.sound.currentTime=t)}),this},this.getTime=function(){if(!h)return null;var t=Math.round(100*this.sound.currentTime)/100;return isNaN(t)?e.defaults.placeholder:t},this.setPercent=function(t){return h?this.setTime(e.fromPercent(t,this.sound.duration)):this},this.getPercent=function(){if(!h)return null;var t=Math.round(e.toPercent(this.sound.currentTime,this.sound.duration));return isNaN(t)?e.defaults.placeholder:t},this.setSpeed=function(t){return h?(this.sound.playbackRate=t,this):this},this.getSpeed=function(){return h?this.sound.playbackRate:null},this.getDuration=function(){if(!h)return null;var t=Math.round(100*this.sound.duration)/100;return isNaN(t)?e.defaults.placeholder:t},this.getPlayed=function(){return h?i(this.sound.played):null},this.getBuffered=function(){return h?i(this.sound.buffered):null},this.getSeekable=function(){return h?i(this.sound.seekable):null},this.getErrorCode=function(){return h&&this.sound.error?this.sound.error.code:0},this.getErrorMessage=function(){if(!h)return null;switch(this.getErrorCode()){case 1:return"MEDIA_ERR_ABORTED";case 2:return"MEDIA_ERR_NETWORK";case 3:return"MEDIA_ERR_DECODE";case 4:return"MEDIA_ERR_SRC_NOT_SUPPORTED";default:return null}},this.getStateCode=function(){return h?this.sound.readyState:null},this.getStateMessage=function(){if(!h)return null;switch(this.getStateCode()){case 0:return"HAVE_NOTHING";case 1:return"HAVE_METADATA";case 2:return"HAVE_CURRENT_DATA";case 3:return"HAVE_FUTURE_DATA";case 4:return"HAVE_ENOUGH_DATA";default:return null}},this.getNetworkStateCode=function(){return h?this.sound.networkState:null},this.getNetworkStateMessage=function(){if(!h)return null;switch(this.getNetworkStateCode()){case 0:return"NETWORK_EMPTY";case 1:return"NETWORK_IDLE";case 2:return"NETWORK_LOADING";case 3:return"NETWORK_NO_SOURCE";default:return null}},this.set=function(t,e){return h?(this.sound[t]=e,this):this},this.get=function(t){return h?t?this.sound[t]:this.sound:null},this.bind=function(t,e){if(!h)return this;t=t.split(" ");for(var n=this,i=function(t){e.call(n,t)},u=0;t.length>u;u++){var s=t[u],r=s;s=r.split(".")[0],o.push({idx:r,func:i}),this.sound.addEventListener(s,i,!0)}return this},this.unbind=function(t){if(!h)return this;t=t.split(" ");for(var e=0;t.length>e;e++)for(var n=t[e],i=n.split(".")[0],u=0;o.length>u;u++){var s=o[u].idx.split(".");(o[u].idx===n||s[1]&&s[1]===n.replace(".",""))&&(this.sound.removeEventListener(i,o[u].func,!0),o.splice(u,1))}return this},this.bindOnce=function(t,e){if(!h)return this;var n=this;return a[r++]=!1,this.bind(t+"."+r,function(){a[r]||(a[r]=!0,e.call(n)),n.unbind(t+"."+r)}),this},this.trigger=function(t,e){if(!h)return this;t=t.split(" ");for(var n=0;t.length>n;n++)for(var i=t[n],u=0;o.length>u;u++){var r=o[u].idx.split(".");if(o[u].idx===i||r[0]&&r[0]===i.replace(".","")){var a=s.createEvent("HTMLEvents");a.initEvent(r[0],!1,!0),a.originalEvent=e,this.sound.dispatchEvent(a)}}return this},this.fadeTo=function(t,n,i){function u(){setTimeout(function(){t>s&&t>o.volume?(o.setVolume(o.volume+=1),u()):s>t&&o.volume>t?(o.setVolume(o.volume-=1),u()):i instanceof Function&&i.apply(o)},r)}if(!h)return this;n instanceof Function?(i=n,n=e.defaults.duration):n=n||e.defaults.duration;var s=this.volume,r=n/Math.abs(s-t),o=this;return this.play(),this.whenReady(function(){u()}),this},this.fadeIn=function(t,e){return h?this.setVolume(0).fadeTo(100,t,e):this},this.fadeOut=function(t,e){return h?this.fadeTo(0,t,e):this},this.fadeWith=function(t,e){return h?(this.fadeOut(e,function(){this.stop()}),t.play().fadeIn(e),this):this},this.whenReady=function(t){if(!h)return null;var e=this;0===this.sound.readyState?this.bind("canplay.buzzwhenready",function(){t.call(e)}):t.call(e)},this.addSource=function(t){var n=this,i=s.createElement("source");return i.src=t,e.types[u(t)]&&(i.type=e.types[u(t)]),this.sound.appendChild(i),i.addEventListener("error",function(t){n.trigger("sourceerror",t)}),i},h&&t){for(var d in e.defaults)e.defaults.hasOwnProperty(d)&&void 0===n[d]&&(n[d]=e.defaults[d]);if(this.sound=s.createElement("audio"),n.webAudioApi){var l=e.getAudioContext();l&&(this.source=l.createMediaElementSource(this.sound),this.source.connect(l.destination))}if(t instanceof Array)for(var c in t)t.hasOwnProperty(c)&&this.addSource(t[c]);else if(n.formats.length)for(var f in n.formats)n.formats.hasOwnProperty(f)&&this.addSource(t+"."+n.formats[f]);else this.addSource(t);n.loop&&this.loop(),n.autoplay&&(this.sound.autoplay="autoplay"),this.sound.preload=n.preload===!0?"auto":n.preload===!1?"none":n.preload,this.setVolume(n.volume),e.sounds.push(this)}},group:function(t){function e(){for(var e=n(null,arguments),i=e.shift(),u=0;t.length>u;u++)t[u][i].apply(t[u],e)}function n(t,e){return t instanceof Array?t:Array.prototype.slice.call(e)}t=n(t,arguments),this.getSounds=function(){return t},this.add=function(e){e=n(e,arguments);for(var i=0;e.length>i;i++)t.push(e[i])},this.remove=function(e){e=n(e,arguments);for(var i=0;e.length>i;i++)for(var u=0;t.length>u;u++)if(t[u]===e[i]){t.splice(u,1);break}},this.load=function(){return e("load"),this},this.play=function(){return e("play"),this},this.togglePlay=function(){return e("togglePlay"),this},this.pause=function(t){return e("pause",t),this},this.stop=function(){return e("stop"),this},this.mute=function(){return e("mute"),this},this.unmute=function(){return e("unmute"),this},this.toggleMute=function(){return e("toggleMute"),this},this.setVolume=function(t){return e("setVolume",t),this},this.increaseVolume=function(t){return e("increaseVolume",t),this},this.decreaseVolume=function(t){return e("decreaseVolume",t),this},this.loop=function(){return e("loop"),this},this.unloop=function(){return e("unloop"),this},this.setSpeed=function(t){return e("setSpeed",t),this},this.setTime=function(t){return e("setTime",t),this},this.set=function(t,n){return e("set",t,n),this},this.bind=function(t,n){return e("bind",t,n),this},this.unbind=function(t){return e("unbind",t),this},this.bindOnce=function(t,n){return e("bindOnce",t,n),this},this.trigger=function(t){return e("trigger",t),this},this.fade=function(t,n,i,u){return e("fade",t,n,i,u),this},this.fadeIn=function(t,n){return e("fadeIn",t,n),this},this.fadeOut=function(t,n){return e("fadeOut",t,n),this}},all:function(){return new e.group(e.sounds)},isSupported:function(){return!!e.el.canPlayType},isOGGSupported:function(){return!!e.el.canPlayType&&e.el.canPlayType('audio/ogg; codecs="vorbis"')},isWAVSupported:function(){return!!e.el.canPlayType&&e.el.canPlayType('audio/wav; codecs="1"')},isMP3Supported:function(){return!!e.el.canPlayType&&e.el.canPlayType("audio/mpeg;")},isAACSupported:function(){return!!e.el.canPlayType&&(e.el.canPlayType("audio/x-m4a;")||e.el.canPlayType("audio/aac;"))},toTimer:function(t,e){var n,i,u;return n=Math.floor(t/3600),n=isNaN(n)?"--":n>=10?n:"0"+n,i=e?Math.floor(t/60%60):Math.floor(t/60),i=isNaN(i)?"--":i>=10?i:"0"+i,u=Math.floor(t%60),u=isNaN(u)?"--":u>=10?u:"0"+u,e?n+":"+i+":"+u:i+":"+u},fromTimer:function(t){var e=(""+t).split(":");return e&&3===e.length&&(t=3600*parseInt(e[0],10)+60*parseInt(e[1],10)+parseInt(e[2],10)),e&&2===e.length&&(t=60*parseInt(e[0],10)+parseInt(e[1],10)),t},toPercent:function(t,e,n){var i=Math.pow(10,n||0);return Math.round(100*t/e*i)/i},fromPercent:function(t,e,n){var i=Math.pow(10,n||0);return Math.round(e/100*t*i)/i}};return e}); -------------------------------------------------------------------------------- /src/main/js/htmle_achievements.js: -------------------------------------------------------------------------------- 1 | function activateAchievement(ACHIEVEMENT_NAME) { 2 | console.log('achievement "'+ACHIEVEMENT_NAME+'" activated'); 3 | } -------------------------------------------------------------------------------- /src/main/js/htmle_audio.js: -------------------------------------------------------------------------------- 1 | var audioFiles = {}; 2 | var bgm_current; 3 | var bgm_current_name; 4 | var bgm_crossFadeTime = 4000; 5 | var bgm_current_volume = 1; 6 | 7 | function initSound() { 8 | if (!buzz.isSupported()) { 9 | alert("Your browser is too old, time to update!"); 10 | } 11 | if (!buzz.isOGGSupported()) { 12 | alert("Your browser doesn't support OGG Format."); 13 | } 14 | if (!buzz.isWAVSupported()) { 15 | alert("Your browser doesn't support WAV Format."); 16 | } 17 | if (!buzz.isMP3Supported()) { 18 | alert("Your browser doesn't support MP3 Format."); 19 | } 20 | if (!buzz.isAACSupported()) { 21 | alert("Your browser doesn't support AAC Format."); 22 | } 23 | } 24 | 25 | function playSound(NAME) { 26 | audioFiles[NAME].play(); 27 | } 28 | 29 | function playMusic(NAME) { 30 | audioFiles[NAME].setVolume(bgm_current_volume * 100); 31 | if (bgm_current) { 32 | bgm_current.fadeOut(bgm_crossFadeTime); 33 | audioFiles[NAME].setVolume(0).fadeTo(bgm_current_volume * 100, bgm_crossFadeTime); 34 | } else { 35 | audioFiles[NAME].play(); 36 | } 37 | bgm_current = audioFiles[NAME]; 38 | bgm_current_name = NAME; 39 | } 40 | 41 | function setVolume(NUM) { 42 | bgm_current_volume = NUM; 43 | if (bgm_current) { 44 | bgm_current.setVolume(bgm_current_volume * 100); 45 | } 46 | } 47 | 48 | function stopMusic() { 49 | if (bgm_current) { 50 | bgm_current.stop(); 51 | } 52 | bgm_current = null; 53 | bgm_current_name = null; 54 | } -------------------------------------------------------------------------------- /src/main/js/htmle_core.js: -------------------------------------------------------------------------------- 1 | var os; 2 | var gui; 3 | 4 | if(typeof require !== 'undefined'){ 5 | os = require('os'); 6 | gui = require('nw.gui'); 7 | } 8 | 9 | function quitGame() { 10 | if(typeof require !== 'undefined'){ 11 | gui.App.closeAllWindows(); 12 | gui.App.quit(); 13 | }else{ 14 | console.log('quitGame not available'); 15 | } 16 | } 17 | 18 | function enterFullScreen() { 19 | if(typeof require !== 'undefined'){ 20 | var win = gui.Window.get(); 21 | win.enterFullscreen(); 22 | }else{ 23 | console.log('enterFullScreen not available'); 24 | } 25 | } 26 | 27 | function leaveFullscreen() { 28 | if(typeof require !== 'undefined'){ 29 | var win = gui.Window.get(); 30 | win.leaveFullscreen(); 31 | }else{ 32 | console.log('leaveFullscreen not available'); 33 | } 34 | } 35 | 36 | function zoomIn() { 37 | if(typeof require !== 'undefined'){ 38 | var win = gui.Window.get(); 39 | win.zoomLevel++; 40 | }else{ 41 | console.log('zoomIn not available'); 42 | } 43 | } 44 | 45 | function zoomOut() { 46 | if(typeof require !== 'undefined'){ 47 | var win = gui.Window.get(); 48 | win.zoomLevel--; 49 | }else{ 50 | console.log('zoomOut not available'); 51 | } 52 | } 53 | 54 | function zoomDefault() { 55 | if(typeof require !== 'undefined'){ 56 | var win = gui.Window.get(); 57 | win.zoomLevel = 0; 58 | }else{ 59 | console.log('zoomDefault not available'); 60 | } 61 | } -------------------------------------------------------------------------------- /src/main/js/localforage.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | localForage -- Offline Storage, Improved 3 | Version 1.5.0 4 | https://localforage.github.io/localForage 5 | (c) 2013-2017 Mozilla, Apache License 2.0 6 | */ 7 | !function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.localforage=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c||a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g=43)}}).catch(function(){return!1})}function n(a){return"boolean"==typeof ka?ma.resolve(ka):m(a).then(function(a){return ka=a})}function o(a){var b=la[a.name],c={};c.promise=new ma(function(a){c.resolve=a}),b.deferredOperations.push(c),b.dbReady?b.dbReady=b.dbReady.then(function(){return c.promise}):b.dbReady=c.promise}function p(a){var b=la[a.name],c=b.deferredOperations.pop();c&&c.resolve()}function q(a,b){var c=la[a.name],d=c.deferredOperations.pop();d&&d.reject(b)}function r(a,b){return new ma(function(c,d){if(a.db){if(!b)return c(a.db);o(a),a.db.close()}var e=[a.name];b&&e.push(a.version);var f=ja.open.apply(ja,e);b&&(f.onupgradeneeded=function(b){var c=f.result;try{c.createObjectStore(a.storeName),b.oldVersion<=1&&c.createObjectStore(na)}catch(c){if("ConstraintError"!==c.name)throw c;console.warn('The database "'+a.name+'" has been upgraded from version '+b.oldVersion+" to version "+b.newVersion+', but the storage "'+a.storeName+'" already exists.')}}),f.onerror=function(a){a.preventDefault(),d(f.error)},f.onsuccess=function(){c(f.result),p(a)}})}function s(a){return r(a,!1)}function t(a){return r(a,!0)}function u(a,b){if(!a.db)return!0;var c=!a.db.objectStoreNames.contains(a.storeName),d=a.versiona.db.version;if(d&&(a.version!==b&&console.warn('The database "'+a.name+"\" can't be downgraded from version "+a.db.version+" to version "+a.version+"."),a.version=a.db.version),e||c){if(c){var f=a.db.version+1;f>a.version&&(a.version=f)}return!0}return!1}function v(a){return new ma(function(b,c){var d=new FileReader;d.onerror=c,d.onloadend=function(c){var d=btoa(c.target.result||"");b({__local_forage_encoded_blob:!0,data:d,type:a.type})},d.readAsBinaryString(a)})}function w(a){return i([l(atob(a.data))],{type:a.type})}function x(a){return a&&a.__local_forage_encoded_blob}function y(a){var b=this,c=b._initReady().then(function(){var a=la[b._dbInfo.name];if(a&&a.dbReady)return a.dbReady});return k(c,a,a),c}function z(a){o(a);for(var b=la[a.name],c=b.forages,d=0;d>4,k[i++]=(15&d)<<4|e>>2,k[i++]=(3&e)<<6|63&f;return j}function L(a){var b,c=new Uint8Array(a),d="";for(b=0;b>2],d+=sa[(3&c[b])<<4|c[b+1]>>4],d+=sa[(15&c[b+1])<<2|c[b+2]>>6],d+=sa[63&c[b+2]];return c.length%3==2?d=d.substring(0,d.length-1)+"=":c.length%3==1&&(d=d.substring(0,d.length-2)+"=="),d}function M(a,b){var c="";if(a&&(c=Ja.call(a)),a&&("[object ArrayBuffer]"===c||a.buffer&&"[object ArrayBuffer]"===Ja.call(a.buffer))){var d,e=va;a instanceof ArrayBuffer?(d=a,e+=xa):(d=a.buffer,"[object Int8Array]"===c?e+=za:"[object Uint8Array]"===c?e+=Aa:"[object Uint8ClampedArray]"===c?e+=Ba:"[object Int16Array]"===c?e+=Ca:"[object Uint16Array]"===c?e+=Ea:"[object Int32Array]"===c?e+=Da:"[object Uint32Array]"===c?e+=Fa:"[object Float32Array]"===c?e+=Ga:"[object Float64Array]"===c?e+=Ha:b(new Error("Failed to get type for BinaryArray"))),b(e+L(d))}else if("[object Blob]"===c){var f=new FileReader;f.onload=function(){var c=ta+a.type+"~"+L(this.result);b(va+ya+c)},f.readAsArrayBuffer(a)}else try{b(JSON.stringify(a))}catch(c){console.error("Couldn't convert value into a JSON string: ",a),b(null,c)}}function N(a){if(a.substring(0,wa)!==va)return JSON.parse(a);var b,c=a.substring(Ia),d=a.substring(wa,Ia);if(d===ya&&ua.test(c)){var e=c.match(ua);b=e[1],c=c.substring(e[0].length)}var f=K(c);switch(d){case xa:return f;case ya:return i([f],{type:b});case za:return new Int8Array(f);case Aa:return new Uint8Array(f);case Ba:return new Uint8ClampedArray(f);case Ca:return new Int16Array(f);case Ea:return new Uint16Array(f);case Da:return new Int32Array(f);case Fa:return new Uint32Array(f);case Ga:return new Float32Array(f);case Ha:return new Float64Array(f);default:throw new Error("Unkown type: "+d)}}function O(a){var b=this,c={db:null};if(a)for(var d in a)c[d]="string"!=typeof a[d]?a[d].toString():a[d];var e=new ma(function(a,d){try{c.db=openDatabase(c.name,String(c.version),c.description,c.size)}catch(a){return d(a)}c.db.transaction(function(e){e.executeSql("CREATE TABLE IF NOT EXISTS "+c.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],function(){b._dbInfo=c,a()},function(a,b){d(b)})})});return c.serializer=Ka,e}function P(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=new ma(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName+" WHERE key = ? LIMIT 1",[a],function(a,c){var d=c.rows.length?c.rows.item(0).value:null;d&&(d=e.serializer.deserialize(d)),b(d)},function(a,b){d(b)})})}).catch(d)});return j(d,b),d}function Q(a,b){var c=this,d=new ma(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT * FROM "+e.storeName,[],function(c,d){for(var f=d.rows,g=f.length,h=0;h0)return void f(R.apply(e,[a,h,c,d-1]));g(b)}})})}).catch(g)});return j(f,c),f}function S(a,b,c){return R.apply(this,[a,b,c,1])}function T(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=new ma(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("DELETE FROM "+e.storeName+" WHERE key = ?",[a],function(){b()},function(a,b){d(b)})})}).catch(d)});return j(d,b),d}function U(a){var b=this,c=new ma(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("DELETE FROM "+d.storeName,[],function(){a()},function(a,b){c(b)})})}).catch(c)});return j(c,a),c}function V(a){var b=this,c=new ma(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT COUNT(key) as c FROM "+d.storeName,[],function(b,c){var d=c.rows.item(0).c;a(d)},function(a,b){c(b)})})}).catch(c)});return j(c,a),c}function W(a,b){var c=this,d=new ma(function(b,d){c.ready().then(function(){var e=c._dbInfo;e.db.transaction(function(c){c.executeSql("SELECT key FROM "+e.storeName+" WHERE id = ? LIMIT 1",[a+1],function(a,c){var d=c.rows.length?c.rows.item(0).key:null;b(d)},function(a,b){d(b)})})}).catch(d)});return j(d,b),d}function X(a){var b=this,c=new ma(function(a,c){b.ready().then(function(){var d=b._dbInfo;d.db.transaction(function(b){b.executeSql("SELECT key FROM "+d.storeName,[],function(b,c){for(var d=[],e=0;e=0;c--){var d=localStorage.key(c);0===d.indexOf(a)&&localStorage.removeItem(d)}});return j(c,a),c}function $(a,b){var c=this;"string"!=typeof a&&(console.warn(a+" used as a key, but it is not a string."),a=String(a));var d=c.ready().then(function(){var b=c._dbInfo,d=localStorage.getItem(b.keyPrefix+a);return d&&(d=b.serializer.deserialize(d)),d});return j(d,b),d}function _(a,b){var c=this,d=c.ready().then(function(){for(var b=c._dbInfo,d=b.keyPrefix,e=d.length,f=localStorage.length,g=1,h=0;h