From d575320a0fa8b952f478e6e4a3c270a64cd7d80b Mon Sep 17 00:00:00 2001 From: Cookie Engineer Date: Thu, 29 Sep 2016 05:12:42 +0200 Subject: [PATCH] lychee.js 2016-Q3 release --- .github/PULL_REQUEST_TEMPLATE.md | 3 +- .gitignore | 58 +- CHANGELOG.md | 79 + README.md | 107 +- bin/breeder.sh | 1 - bin/fertilizer.js | 6 + bin/maintenance/do-release.sh | 36 +- guides/CONTRIBUTION.md | 30 +- guides/asset/contribution-assignissue.png | Bin 122263 -> 0 bytes guides/asset/contribution-fork.png | Bin 22171 -> 18802 bytes guides/asset/contribution-issues.png | Bin 22214 -> 19202 bytes guides/asset/contribution-workflow.png | Bin 67368 -> 71603 bytes guides/asset/qr-codes.png | Bin 0 -> 3813 bytes guides/asset/quickstart-collaborators.png | Bin 0 -> 15006 bytes guides/asset/readme-qr-bitcoin.png | Bin 0 -> 1505 bytes guides/asset/readme-qr-examples.png | Bin 0 -> 1345 bytes guides/asset/readme-qr-install.png | Bin 0 -> 1506 bytes libraries/harvester/source/mod/Packager.js | 2 +- libraries/lychee/lychee.pkg | 11 + libraries/lychee/source/core/Environment.js | 1 + libraries/lychee/source/core/lychee.js | 2 +- libraries/lychee/source/effect/Alpha.js | 7 +- libraries/lychee/source/effect/Color.js | 14 +- libraries/lychee/source/effect/Depth.js | 7 +- libraries/lychee/source/effect/Event.js | 2 +- libraries/lychee/source/effect/Height.js | 7 +- libraries/lychee/source/effect/Offset.js | 9 +- libraries/lychee/source/effect/Position.js | 11 +- libraries/lychee/source/effect/Radius.js | 2 +- libraries/lychee/source/effect/Shake.js | 33 +- libraries/lychee/source/effect/Sound.js | 2 +- libraries/lychee/source/effect/State.js | 105 ++ libraries/lychee/source/effect/Velocity.js | 11 +- libraries/lychee/source/effect/Visible.js | 5 +- libraries/lychee/source/effect/Width.js | 7 +- libraries/lychee/source/net/protocol/HTTP.js | 15 +- .../lychee/source/platform/html/Renderer.js | 1 - .../lychee/source/platform/html/bootstrap.js | 32 +- .../source/platform/html/ui/entity/Upload.js | 79 +- .../lychee/source/platform/node/bootstrap.js | 28 +- .../source/platform/node/ui/entity/Upload.js | 2 + libraries/lychee/source/ui/Blueprint.js | 194 ++- libraries/lychee/source/ui/Element.js | 4 +- libraries/lychee/source/ui/Menu.js | 68 +- libraries/lychee/source/ui/Notice.fnt | 1 + libraries/lychee/source/ui/Notice.js | 386 +++++ libraries/lychee/source/ui/State.js | 53 +- libraries/lychee/source/ui/State.json | 14 +- libraries/lychee/source/ui/element/Search.js | 37 +- libraries/lychee/source/ui/entity/Input.js | 5 +- libraries/lychee/source/ui/entity/Joystick.js | 5 +- libraries/lychee/source/ui/entity/List.fnt | 1 + libraries/lychee/source/ui/entity/List.js | 422 +++++ libraries/lychee/source/ui/entity/Select.js | 41 +- libraries/lychee/source/ui/entity/Switch.js | 5 +- libraries/lychee/source/ui/entity/Textarea.js | 5 +- libraries/lychee/source/ui/entity/Texture.js | 78 +- projects/cultivator/api/index.html | 91 +- projects/cultivator/design/__legacy.css | 732 +++++++++ .../design/{index.js => __legacy.js} | 285 ---- projects/cultivator/design/icon.eot | Bin 35514 -> 0 bytes projects/cultivator/design/icon.png | Bin 1458 -> 0 bytes projects/cultivator/design/icon.svg | 1366 ----------------- projects/cultivator/design/icon.ttf | Bin 35304 -> 0 bytes projects/cultivator/design/icon.woff | Bin 59324 -> 0 bytes projects/cultivator/design/index.css | 1015 ++---------- projects/cultivator/design/museo-sans-300.eot | Bin 23517 -> 0 bytes projects/cultivator/design/museo-sans-300.svg | 860 ----------- projects/cultivator/design/museo-sans-300.ttf | Bin 51104 -> 0 bytes projects/cultivator/design/museo-sans-500.eot | Bin 23522 -> 0 bytes projects/cultivator/design/museo-sans-500.svg | 839 ---------- projects/cultivator/design/museo-sans-500.ttf | Bin 51032 -> 0 bytes projects/cultivator/editor/index.html | 2 +- projects/cultivator/editor/lychee.pkg | 48 +- projects/cultivator/editor/source/Main.js | 64 +- .../cultivator/editor/source/data/Project.js | 331 ++++ .../cultivator/editor/source/net/Client.js | 20 +- .../cultivator/editor/source/net/Server.js | 20 +- .../editor/source/net/client/Ping.js | 89 -- .../editor/source/net/remote/Ping.js | 67 - .../editor/source/platform/html/codec/FONT.js | 396 +++++ .../editor/source/platform/node/codec/FONT.js | 395 +++++ .../cultivator/editor/source/state/Project.js | 218 +++ .../state/{Welcome.json => Project.json} | 22 +- .../cultivator/editor/source/state/Welcome.js | 157 -- .../editor/source/ui/element/Breeder.js | 81 + .../editor/source/ui/element/Font.js | 192 +++ .../editor/source/ui/element/Project.js | 182 ++- projects/cultivator/font/icon.png | Bin 5220 -> 0 bytes projects/cultivator/font/index.html | 167 -- projects/cultivator/font/lychee.pkg | 23 - projects/cultivator/font/source/Main.js | 113 -- projects/cultivator/font/source/data/FNT.js | 598 -------- projects/cultivator/fyto/app/Main.html | 135 -- .../cultivator/fyto/fnt/museo-sans-300.woff | Bin 26880 -> 0 bytes .../cultivator/fyto/fnt/museo-sans-300.woff2 | Bin 20864 -> 0 bytes .../cultivator/fyto/fnt/museo-sans-500.woff | Bin 26896 -> 0 bytes .../cultivator/fyto/fnt/museo-sans-500.woff2 | Bin 20916 -> 0 bytes projects/cultivator/fyto/index.css | 17 - projects/cultivator/fyto/index.js | 419 ----- projects/cultivator/fyto/ui/Element.html | 135 -- projects/cultivator/fyto/ui/Menu.html | 304 ---- projects/cultivator/fyto/ui/State.html | 161 -- .../cultivator/fyto/ui/element/Project.html | 276 ---- projects/cultivator/index.html | 286 ++-- projects/cultivator/sprite/index.html | 216 +-- .../cultivator/sprite/source/Main.Entity.tpl | 34 +- projects/cultivator/sprite/source/Main.js | 30 +- .../cultivator/sprite/source/data/SPRITE.js | 13 +- 109 files changed, 4732 insertions(+), 7701 deletions(-) create mode 100644 CHANGELOG.md delete mode 100644 guides/asset/contribution-assignissue.png create mode 100644 guides/asset/qr-codes.png create mode 100644 guides/asset/quickstart-collaborators.png create mode 100644 guides/asset/readme-qr-bitcoin.png create mode 100644 guides/asset/readme-qr-examples.png create mode 100644 guides/asset/readme-qr-install.png create mode 100644 libraries/lychee/source/effect/State.js create mode 100644 libraries/lychee/source/ui/Notice.fnt create mode 100644 libraries/lychee/source/ui/Notice.js create mode 100644 libraries/lychee/source/ui/entity/List.fnt create mode 100644 libraries/lychee/source/ui/entity/List.js create mode 100644 projects/cultivator/design/__legacy.css rename projects/cultivator/design/{index.js => __legacy.js} (59%) delete mode 100644 projects/cultivator/design/icon.eot delete mode 100644 projects/cultivator/design/icon.png delete mode 100644 projects/cultivator/design/icon.svg delete mode 100644 projects/cultivator/design/icon.ttf delete mode 100644 projects/cultivator/design/icon.woff delete mode 100644 projects/cultivator/design/museo-sans-300.eot delete mode 100644 projects/cultivator/design/museo-sans-300.svg delete mode 100644 projects/cultivator/design/museo-sans-300.ttf delete mode 100644 projects/cultivator/design/museo-sans-500.eot delete mode 100644 projects/cultivator/design/museo-sans-500.svg delete mode 100644 projects/cultivator/design/museo-sans-500.ttf create mode 100644 projects/cultivator/editor/source/data/Project.js delete mode 100644 projects/cultivator/editor/source/net/client/Ping.js delete mode 100644 projects/cultivator/editor/source/net/remote/Ping.js create mode 100644 projects/cultivator/editor/source/platform/html/codec/FONT.js create mode 100644 projects/cultivator/editor/source/platform/node/codec/FONT.js create mode 100644 projects/cultivator/editor/source/state/Project.js rename projects/cultivator/editor/source/state/{Welcome.json => Project.json} (61%) delete mode 100644 projects/cultivator/editor/source/state/Welcome.js create mode 100644 projects/cultivator/editor/source/ui/element/Breeder.js create mode 100644 projects/cultivator/editor/source/ui/element/Font.js delete mode 100644 projects/cultivator/font/icon.png delete mode 100644 projects/cultivator/font/index.html delete mode 100644 projects/cultivator/font/lychee.pkg delete mode 100644 projects/cultivator/font/source/Main.js delete mode 100644 projects/cultivator/font/source/data/FNT.js delete mode 100644 projects/cultivator/fyto/app/Main.html delete mode 100644 projects/cultivator/fyto/fnt/museo-sans-300.woff delete mode 100644 projects/cultivator/fyto/fnt/museo-sans-300.woff2 delete mode 100644 projects/cultivator/fyto/fnt/museo-sans-500.woff delete mode 100644 projects/cultivator/fyto/fnt/museo-sans-500.woff2 delete mode 100644 projects/cultivator/fyto/index.css delete mode 100644 projects/cultivator/fyto/index.js delete mode 100644 projects/cultivator/fyto/ui/Element.html delete mode 100644 projects/cultivator/fyto/ui/Menu.html delete mode 100644 projects/cultivator/fyto/ui/State.html delete mode 100644 projects/cultivator/fyto/ui/element/Project.html diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 320ebb70..30deea73 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -28,7 +28,8 @@ Make sure your code runs through with these commands: - [ ] The `./bin/configure.sh` script runs with no errors - [ ] The `lycheejs-harvester start development` command runs with no errors -- [ ] _If project or library:_ The `lycheejs-strainer auto` command runs with no errors +- [ ] _If project or library:_ The `lycheejs-strainer auto ` command runs with no errors +- [ ] _If project or library:_ The `lycheejs-fertilizer auto ` command runs with no errors - [ ] The code style follows the [CODESTYLE guide](https://github.com/Artificial-Engineering/lycheejs/blob/development/guides/CODESTYLE.md) - [ ] The commit messages follow the [CONTRIBUTION guide](https://github.com/Artificial-Engineering/lycheejs/blob/development/guides/CONTRIBUTION.md) - [ ] The pull-request branch is not named `development`, `2XXX-QX` or `humansneednotapply` diff --git a/.gitignore b/.gitignore index 8f33c91a..495747ad 100644 --- a/.gitignore +++ b/.gitignore @@ -1,45 +1,63 @@ -# Auto-built applications +# Runtime Caches + /lychee.store /bin/editor /bin/ranger /bin/runtime /bin/harvester.pid -/libraries/lychee/source/DIST.js +# GitHub Integration + +/.github/TOKEN +/.github/ISSUES + +# Fuck these guys + +/__TODO__ +/.idea +.DS_Store + + + +# Libraries + +/libraries/* /libraries/*/build -/projects/*/build +/libraries/*/lychee.store +/libraries/lychee/source/DIST.js +!/libraries/README.md + +!/libraries/breeder +!/libraries/fertilizer +!/libraries/harvester +!/libraries/lychee +!/libraries/strainer + +# Projects + /projects/* +/projects/*/build /projects/*/lychee.store -/projects/cultivator/*/lychee.store !/projects/README.md - -# Whitelisted git-tracked projects -!/projects/emoji-chat -!/projects/text-chat !/projects/boilerplate !/projects/cultivator +!/projects/lethalmaze !/projects/mode7 !/projects/over-there !/projects/pong +!/projects/text-chat !/projects/tictactoe -!/projects/lethalmaze - -# Cultivator -/projects/*/build -/projects/cultivator/editor/build -/projects/cultivator/ranger/build -# GitHub Integration -.github/TOKEN -.github/ISSUES +# Cultivator Projects -# Well, yeah. Fuck these guys -/__TODO__ -.DS_Store +/projects/cultivator/editor/build +/projects/cultivator/editor/lychee.store +/projects/cultivator/ranger/build +/projects/cultivator/ranger/lychee.store diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000..20d6d66f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,79 @@ + +# lychee.js CHANGELOG + +All lychee.js versions are released in a quarterly release cycle. + +At the end of each quarter, a new release is automatically +generated, tagged and pushed to GitHub. + +We do NOT use semantic versioning as it is assumed to always use +at least the latest quarterly release on the `master` branch or +the `development` branch. + +As we cannot influence decisions of our Artificial Intelligence, +some things might break temporarily on the `development` and +`humansneednotapply` branch. + +The update behaviour is changed as explained in the [RELEASE Guide](./guides/RELEASE.md). + + +## [2016-Q3] - 2016-09-28 (UNRELEASED) + +- Changed: Integration of [@humansneednotapply](https://github.com/humansneednotapply) Account. +- Changed: Integration of `.github/TOKEN` file. +- Changed: License to MIT/GPL3/CC4-BY-SA. +- Changed: New Welcome Page for easier Project-based workflow. +- Fixed: lychee.ui Entities. +- Fixed: lychee.effect Stack is now completely delay-compatible. +- Added: lychee.js Editor allows `project` changes. +- Removed: fyto.js was deprecated, lycheejs-legacy is embraced. + + +## [2016-Q2] - 2016-06-27 + +- **Changed**: ES6 Migration for all lychee.js Definitions (`/libraries` and `/projects`). +- Changed: lychee.js Harvester uses event/socket-driven API. +- Changed: lychee.Definition sandbox with Feature Detection. +- Changed: lychee.Environment sandbox with Feature Prediction. +- Changed: lychee.js Harvester uses lychee.net.protocol.HTTP. +- Changed: lychee.js Ranger uses new Harvester API. +- Changed: lychee.codec Stack replaces lychee.data Stack. +- Added: Maintenance scripts (`/bin/maintenance/`). +- Added: lychee.js Fertilizer supports `html` Applications and Libraries. +- Added: lychee.js Breeder supports `init`, `fork` and `pull` actions. +- Added: lychee.ui Stack automates UI/UX Flow (Blueprint and Element). +- Added: lychee.net Stack supports all platform tags peer-to-peer. +- Added: lychee.Stash adapter allows Asset-compatible storage. +- Added: lychee.Storage adapter allows Key/Value storage. + + +## [2016-Q1] - 2016-03-25 + +- **Changed**: Migrated all Libraries to `/libraries` folder. +- **Changed**: Migrated all Projects to `/projects` folder. +- **Changed**: lychee.game renamed to lychee.app Stack. +- Changed: Renamed `sorbet` Project to lychee.js Harvester`. +- Changed: Project Lethalmaze as multiplayer tank game. +- Changed: Project Boilerplate is compatible with AI. +- Added: lychee.js Harvester is a reusable library and project. +- Added: GNU/Linux, OSX and BSD Development Host support. + + +## [2015-Q4] - 2015-11-30 + +- **Removed**: Windows Development Host support. +- Changed: Major Redesign of lychee.ui Stack. +- Changed: Better Guides to `/guides` folder. +- Added: Project Over-There (NASA hackathon). +- Added: Platform support for `node`, `html-nwjs` and `html-webview`. +- Added: lychee.ui and lychee.effect Stack. + + +# GIT CHANGELOG + +- [Unreleased](https://github.com/Artificial-Engineering/lycheejs/compare/2016-Q3...HEAD) +- [2016-Q3](https://github.com/Artificial-Engineering/lycheejs/compare/2016-Q2...2016-Q3) +- [2016-Q2](https://github.com/Artificial-Engineering/lycheejs/compare/2016-Q1...2016-Q2) +- [2016-Q1](https://github.com/Artificial-Engineering/lycheejs/compare/2015-Q4...2016-Q1) +- [2015-Q4](https://github.com/Artificial-Engineering/lycheejs/compare/a285915ac5ac541b622fece52a039fbf2051f469...2015-Q4) + diff --git a/README.md b/README.md index fbb3937d..7557b6ac 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,29 @@ -# lychee.js (2016-Q2) +# lychee.js (2016-Q3) brought to you as libre software with joy and pride by [Artificial Engineering](http://artificial.engineering). Support our libre Bot Cloud via BTC [1CamMuvrFU1QAMebPoDsL3JrioVDoxezY2](bitcoin:1CamMuvrFU1QAMebPoDsL3JrioVDoxezY2?amount=0.5&label=lychee.js%20Support). +
+**QR Codes** +![QR codes](./guides/asset/qr-codes.png) +
+ +
+**Table of Contents** +- [Overview](#overview) +- [Features](#features) +- [Workflow](#workflow) +- [Platform Support](#platform--fertilizer-support) +- [Quickstart](#quickstart) +- [Developer Guides](#developer-guides) +- [Contributor Guides](#contributor-guides) +- [Help](#help) +- [License](#license) +
+ + ## IMPORTANT NOTICE @@ -25,10 +44,11 @@ Thank you for your understanding. These are the things that we are currently working on: -- 2016-Q3: Editor is being refactored. +- 2016-Q3: Strainer is being refactored to support better AI implementation. +- 2016-Q3: CARTEL (AI implementation) is being refactored. [Issue](https://github.com/Artificial-Engineering/lycheejs/issues/91) - 2016-Q3: Guide is subject to change (to integrate the Editor). [Issue](https://github.com/Artificial-Engineering/lycheejs/issues/159) -- 2016-Q4: Strainer is being refactored to support better AI implementation. -- 2016-Q4: CARTEL (AI implementation) is being refactored. [Issue](https://github.com/Artificial-Engineering/lycheejs/issues/91) +- 2016-Q3: Editor is being refactored to integrate all other Cultivator Tools' functionalities. +- 2016-Q3: [lychee.js Garden](https://github.com/Artificial-Engineering/lycheejs-garden.git) is being implemented. ## Overview @@ -65,24 +85,29 @@ scenes. The lychee.js Engine aims to deliver Total Automation through Artificial Intelligence and better Software Architecture. -Here is a selected subset of Features that the lychee.js Engine -already covers and delivers. Everything listed here requires -zero lines of code overhead and is already fully integrated -in the [lychee.js Boilerplate](./projects/boilerplate): +Everything listed here requires zero lines of code overhead +and is already fully integrated in the [lychee.js Boilerplate](./projects/boilerplate): + +The lychee.js Core and Definition System: - Isomorphic Application Engine (runs pretty much everywhere) - Language is only ES5/ES6 JavaScript Code, nothing else - Composite Pattern inspired Entity/Component System - Definition System embraces Simplicity and Feature Detection +- Sandboxing System embraces automated Error Reports, Analytics and Debugging - Serialization System allows Re-Simulation on any Platform -- Graphical Editor and Project Management Tool (Ranger) -- Command-Line Wizard for Projects and Libraries (Breeder) -- Command-Line Fuzz-Tester and Code-Refactorer (Strainer) -- Built-In Offline Storage Management and Synchronization +- Built-In Offline Storage Management and Network Synchronization -Here is a selected subset of Features that the lychee.js -Software Bots and their architecture already cover and deliver -transparently: +The lychee.js Software Bots: + +- Graphical Asset Management and Entity/Scene Design Tool ([Editor](/projects/cultivator/editor)) +- Graphical Project Management and Server Maintenance Tool ([Ranger](/projects/cultivator/ranger)) +- Command-Line Continous Integration Server ([Harvester](/libraries/harvester)) +- Command-Line Wizard for Projects and Libraries ([Breeder](/libraries/breeder)) +- Command-Line Builder and Cross-Compiler ([Fertilizer](/libraries/fertilizer)) +- Command-Line Fuzz-Tester and Code-Refactorer ([Strainer](/libraries/strainer)) + +Features of the lychee.js Software Bots: - Automated Code Refactoring, Bug Fixing and Code Improvements - Automated Design Tracking, Layout and Flow Optimization @@ -199,27 +224,65 @@ lycheejs-harvester start development; ``` +**3) Integration** -## Developer Guide +The lychee.js Project is tightly integrated with our +Artificial Intelligence, which is represented by the account +[@humansneednotapply](https://github.com/humansneednotapply). -The lychee.js Guide tries to help developers to get started as -easy as possible. Please let us know if we can improve anything -in these documents by opening up an [Issue](https://github.com/Artificial-Engineering/lycheejs/issues/new). +If you want to have our AI to learn and improve from your project +(read the LICENSE section for caveats first), you need to create a +[Personal Access Token](https://github.com/settings/tokens) +with `repo` rights and put the token in the `.github/TOKEN` file: -- [lychee.js Guide](https://github.com/Artificial-Engineering/lycheejs-guide) +```bash +cd /opt/lycheejs; + +echo "MY-PERSONAL-ACCESS-TOKEN" > .github/TOKEN; +``` + +Then you must add the account [@humansneednotapply](https://github.com/humansneednotapply) +to your lychee.js Project's repository collaborators in its +`Settings > Collaborators & teams` section. +![Collaborators Settings](./guides/asset/quickstart-collaborators.png) + +Notes: + +- You need to add @humansneednotapply to each of your lychee.js Projects' repositories. +- You do **not** need to add @humansneednotapply to your lychee.js Fork. -If you have questions, feel free to join us on [#artificial-engineering @ freenode](https://webchat.freenode.net/?channels=%23artificial-engineering). +## Developer Guides +If you want to develop lychee.js Projects or Libraries, the +`lychee.js Guide` helps you to get started easily. + +Please let us know if we can improve anything in these documents +by opening up an [Issue](https://github.com/Artificial-Engineering/lycheejs/issues/new). + +- [lychee.js Guide](https://github.com/Artificial-Engineering/lycheejs-guide) -## Contributor Guide + +## Contributor Guides - [Contribution Guide](./guides/CONTRIBUTION.md) - [Codestyle Guide](./guides/CODESTYLE.md) - [Release Guide](./guides/RELEASE.md) +## Help + +If you have any questions, feel free to join us on +[#artificial-engineering @ freenode](https://webchat.freenode.net/?channels=%23artificial-engineering). + +These are our official social media channels: + +* Twitter: https://twitter.com/lycheejs +* Reddit: https://reddit.com/r/lycheejs +* IRC: [#artificial-engineering @ freenode](https://webchat.freenode.net/?channels=%23artificial-engineering). +* Email: robot [insert an at here] artificial.engineering + ## License diff --git a/bin/breeder.sh b/bin/breeder.sh index 7ad5899e..b29b08ad 100755 --- a/bin/breeder.sh +++ b/bin/breeder.sh @@ -1,4 +1,3 @@ - #!/bin/bash lowercase() { diff --git a/bin/fertilizer.js b/bin/fertilizer.js index 12419c1b..1958511b 100755 --- a/bin/fertilizer.js +++ b/bin/fertilizer.js @@ -241,6 +241,12 @@ const _SETTINGS = (function() { } + } else { + + settings.auto = false; + settings.project = project; + settings.identifier = 'auto'; + } } else if (identifier !== undefined && project !== undefined && _fs.existsSync(_ROOT + project) === true) { diff --git a/bin/maintenance/do-release.sh b/bin/maintenance/do-release.sh index 0bf5572c..ac469614 100755 --- a/bin/maintenance/do-release.sh +++ b/bin/maintenance/do-release.sh @@ -94,8 +94,27 @@ elif [ "$OLD_VERSION" != "$NEW_VERSION" ]; then mkdir $LYCHEEJS_FOLDER; git clone git@github.com:Artificial-Engineering/lycheejs.git $LYCHEEJS_FOLDER; - mkdir $LYCHEEJS_FOLDER/bin/runtime; - git clone --single-branch --branch master --depth 1 git@github.com:Artificial-Engineering/lycheejs-runtime.git $LYCHEEJS_FOLDER/bin/runtime; + + DOWNLOAD_URL=$(curl -s https://api.github.com/repos/Artificial-Engineering/lycheejs-runtime/releases/latest | grep browser_download_url | grep lycheejs-runtime | head -n 1 | cut -d'"' -f4); + + if [ "$DOWNLOAD_URL" != "" ]; then + + cd $LYCHEEJS_FOLDER/bin; + curl -sSL $DOWNLOAD_URL > $LYCHEEJS_FOLDER/bin/runtime.zip; + + mkdir $LYCHEEJS_FOLDER/bin/runtime; + git clone --single-branch --branch master --depth 1 git@github.com:Artificial-Engineering/lycheejs-runtime.git $LYCHEEJS_FOLDER/bin/runtime; + + cd $LYCHEEJS_FOLDER/bin/runtime; + unzip -nq ../runtime.zip; + + chmod +x $LYCHEEJS_FOLDER/bin/runtime/bin/*.sh; + chmod +x $LYCHEEJS_FOLDER/bin/runtime/*/update.sh; + chmod +x $LYCHEEJS_FOLDER/bin/runtime/*/package.sh; + + rm $LYCHEEJS_FOLDER/bin/runtime.zip; + + fi; cd $LYCHEEJS_FOLDER; @@ -119,13 +138,7 @@ elif [ "$OLD_VERSION" != "$NEW_VERSION" ]; then # cd $LYCHEEJS_FOLDER/bin/runtime; - ./bin/update.sh; - - rm -rf .git/; - git init; - git remote add origin git@github.com:Artificial-Engineering/lycheejs-runtime.git; - git add ./; - git commit -m "lychee.js $NEW_VERSION release"; + ./bin/do-update.sh; @@ -206,7 +219,7 @@ elif [ "$OLD_VERSION" != "$NEW_VERSION" ]; then # cd $LYCHEEJS_FOLDER/bin/runtime; - git push origin master -f; + ./bin/do-release.sh; @@ -242,9 +255,6 @@ elif [ "$OLD_VERSION" != "$NEW_VERSION" ]; then echo ""; echo "Manual Steps required to do now:"; echo ""; - echo "- Create the $NEW_VERSION release in the lychee.js Harvester repository."; - echo "- Upload and attach the builds of it to the release."; - echo ""; echo "- Create the $NEW_VERSION release in the lychee.js Bundle repository."; echo "- Upload and attach the builds of it to the release."; echo ""; diff --git a/guides/CONTRIBUTION.md b/guides/CONTRIBUTION.md index ace16264..47d5328e 100644 --- a/guides/CONTRIBUTION.md +++ b/guides/CONTRIBUTION.md @@ -5,17 +5,13 @@ Upstream/Downstream Management - [Reserved Branches](#reserved-branches) -Workflow: +Contributor Workflow: 1. [Find an Issue](#find-an-issue) 2. [Assign an Issue](#assign-an-issue) 3. [Work on an Issue](#work-on-an-issue) 4. [Contribute a Feature](#contribute-a-feature) - -Styles and Help: - -- [Git Emojis](#git-emojis) -- [Get in Touch](#get-in-touch) +5. [Git Emojis](#git-emojis) # Upstream/Downstream Management @@ -27,7 +23,7 @@ conflict with any script, these branches are reserved and therefore not accepted as branches of pull requests. - the `development` branch is reserved for the master repository. -- the `humansneednotapply` branch is reserved for our GitHub Bot [@humansneednotapply](https://github.com/humansneednotapply). +- the `humansneednotapply` branch is reserved for our Artificial Intelligence [@humansneednotapply](https://github.com/humansneednotapply). - the `2XXX-QX` branch scheme is reserved for the master repository. @@ -61,14 +57,14 @@ this repository. ![How to find Issues](./asset/contribution-issues.png) - ## Assign an Issue When you've found something you like to work on, you can assign an issue -to yourself so that the other lychee.js team members know what you're +to yourself so that the other lychee.js Team Members know what you're working on. This helps them to help you and they love to help you :) -![How to assign an Issue](./asset/contribution-assignissue.png) +If you have questions and want to discuss problems, feel free to join +our public IRC channel #artificial-engineering at freenode. ## Work on an Issue @@ -153,8 +149,6 @@ After that we can now automatically merge in your implemented features. If the merge was successful, the Issue is `Closed`. -# Styles and Help - ## Git Emojis Here are the rules for our commits, start each commit message with an emoji. @@ -175,15 +169,3 @@ Project-wide Emojis: * :lipstick: `:lipstick:` User Interface * :hammer: `:hammer:` Security - -## Get in Touch - -Need help or just want to think out loud? -We look forward to hearing from you! - -* Twitter: https://twitter.com/lycheejs -* Reddit: https://reddit.com/r/lycheejs -* YouTube: https://www.youtube.com/user/lycheejs -* Email: robot [insert an at here] artificial.engineering -* IRC: #artificial-engineering at freenode - diff --git a/guides/asset/contribution-assignissue.png b/guides/asset/contribution-assignissue.png deleted file mode 100644 index dddd8182216ef324d7f08dd544943d833150a0a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122263 zcmce;Wl$!~vM$QN;O=gN5AF_wySux)yW3zd?(XjL;tcLExVyW%9oG8xzGvNgPn@4S zIy)-5sw288yE>~g^LZ*V&A zOc>c7r!AnBP{UzL!~5;7u?n{d!*&yQ!rK+5OO4{lP|< zzl{U|(92BvS{zK_uaLe-q&+KzsI5$9v&nJp+bp+(ES*+uy0BkFNKoHF z1O8oHI=M#D{O?Q90HiRUA8Gtv`=2@y1cCi;_57<} z|F_0kp%w|_e>C~8TU!XmCnl~3aqaA%Z}#!CCOf?z9S^hI6jfB3PVC;Myf_|bzGKpN z66>Ck|1GsWyhVJ&m<(I{kLLwGLY65<05^Rzye?WHCE}NwtT0=(ZN&)ab=vyZ*6`Y0 z&jl;ytKE}px~}*=PRu_4Kwh?Ic=5~A>Ryny++C0f)?}MZWv_c5_iV1-oL-LZJGP#C z`#XE5=Wfc`bB#*>5GlTDEnLW}VKr=Cc37cRuBi4iHQPrZu*wqrcJeZ{U1wQs=V@vt zZeisnyrC?;ISvAe_$prYC?pZBS~8^HXz0diQ96HiBnjMWb)LvfGZ*Ww*Jnf9_N`2yB$|)0xBU|g(*yXy8~$2{%6)`i6h0(Sv-lR+jlmw1^&1rBp5zdVL1#oO z&1Bpowx?fZt>waD(gUZ(w>8JamOQ*%wVMV07^y184f04E1ow0m}myX}|SJJD(zJM_M{m(6dywwpLx zXEX`xvIN}DiF})Aj%iQe@=Owjj!1T!3J81)!k2qA8U~Os9++m1e`NZ42zrkndu}PQ z6~igF|1eM>@P`)kO^w69*3XVhJI~Jj?bm0a9WB=%V#35O7+d!DVxhA>r8i_|;*KtP zCxYanSRgD!gZdtLIxnJ(Mk)cCdz7#`B9l23`Av){Ywbe3fM0~l-M>#K{$?x9>p zO4q>)q}{j8DE>8td}6uNKbOCk_n*jTWNJB&rP9$2BDzdze}oRGiWL;d3F5p{1^qoR zYbu(^cPz$=SBx$tNay#iDjqQ02KmqNu|Qkoj+)KEl03c4AWXua`i9_8?&G@we>f#x zUg`8uB%CJ*X{V}40Nogl()-M~G~C~LRHAQ4w=)|?hWU$uqDwvjzwCwNquFYiO?ZHc>JEi%Y6wwHJ(sv%;|Mb3ro`GT@4OMa2 zqOLN4bIJ5${*-oGFeFqLc>^siuXByEA63PYRqKs{Fbg4DD)a>0HP14#2pHQ^6iEqH z72r;Z8;uahK|e5{Eqhq%6;)|Drz_)5M+lN3L2cLt3K#u+YtL_xJcRzPrgI>y3bk=) z=xg9BfCoHs2ZP>1t8+J~u22puu;u;ChLDPEAmu>mfig7NKaf{sQraK@;MH!OVd?*1 z0vctG;wVABPqZm&Ku3kTZM-fVF`_BgRLfHE%>9>vT&2XRIqU}RG-$U4Zq^LEz43fm z2cw}#yExB%nGN@M$K^wfjrV1(LR}BD-Nn|K-6G)aV`q!Z;%4uzYaP5&E*WWAVSlPj zU)wi!7X(dh7)FW6N%{7d^s-hcR6fFhSZUHY!EdpRSkk7}uI!T#J|cDTS+<9>VtxJr zyJm7qgoH&UQ(_!t{+eQ010qA$#Yxn*v&e5k1ySH8DA?entgNE23xlR>@J**s1uV=7 z1RcA?d*Xr0e0ApVzM57rsIN zB4*q#FdG%qi^eW#4>8S%D?jCWE6-n;4;}FW#g^~&-D^yW_y%lf82*N6gle#-9v=mo zD{97I*xYWx)8h_P9{tSl zuq@6FF9s?F+B%XIa}5n5oyo->xDS))$i)}F$t=r&N1Xf<0n4I{F}-$4hlM)|*L_iA zC*k=p9YB6-k>EU+R@I`Zxe(o)m7Ugqsg({Pp%pZ3JaFN-tIp*ZLha9>>>@QtRxz_BUMt26h9Y$=H5P~~)22@fKwEQU?mW*qrE#v|#34vL--0Srd z=x`j?h<9<`0ycvNJ_{>1qsr)0D|9--9TJ%I`yq!(s%eWEQg^0c+}u%=>e^7ut~R5N zKH#{{prZ@PktqTAjg@>HFv_NHf}T2fd5sD+)_)T&@}-8T{;283W^lKh{gF z7&J1>Pwfr0Pn)!hZ0Lc&Yl*4&Hli{shUIi~3kOxopv5%n%-E?Qek{6uv$~I(`L4>% zWc)oP`sk}g`lPJHJI5o`4R57Y@6d49_jHBa#d7YXf?q?}j(EKp9f5~xtDL;colFq@ z&HGYa(d@d@<_Af@ZMC`0-`XDOHFKtzn_7kK0VDy^8{|0-2@h_wyj&t*tHgr;^2Xq` zt5ny-a$~ek(Oo4DIM>+t9|43{#ax%`{$+%_G7IklU2;LD@NvVgMeg;+C7H!mM3N<0 z6ll$vs;_SDZ0`V~*UBvt5+hklf#qGbVggTzgAT8c0o_2;8pJvO|}rk0d*+!MJ>k=F&4nMu+gK>(QqeY96u~T z@Ay~lY7Ywx;0RsZb7Wnp3(MB0+MPq=;74)M#gGPL!buD%F)ZL+;QAuxW~5U^L(Tj| z&4Vc!f0P)5s)UN3ZKaSH;u$l;N+6^W7c5My*WrHl4(FmJwWDlOYZM5r1pqCxYnf5CW^rUhjI&$-lrSqa7N^J>1o)CqM0EdDQWyr`92DxP} zY54NuWWC=*`@Vad0%GoVD@y|##-m&uof$fQ1lGilbnhM|BF3DPl2G8UwyS7z1rDu` z*eh$Os^&|3a6^m5FuINkcs6FK+BsXKjgrQK`QSm1-SJOr$yE z>#DTgT{Mndxr#0}dEeB@nyCJ3kMszf<;0@p<`?BC8%3nCUKq3$cuj?QoSEm8%@^#7 zc?`jRWOwo`e20N#{>~oww7yhl-`gej^hWZU45;w2B%I;;R^iAAeJ_-=uY|c3=kwFi zZs573WUAn7GaW=71Qzxd*ZU-7=Ju?!B4p4VvMa=`)j|!Ry=~wG3rn-N)p^&hEje{d z;NJ-8G7s4T-NKTwjp8M*=I5W0O2Pa}cbW8|`{A>kwF$T`V6X3RQ7|wt$PTF#B(J*C zo&F<^a`KbPZ!&$eb1b9G!*-@zp~Bw~hcukK{073hsZr0anHc_O)CI=L;OlSDG<(7@ z{_`GVpaF21A;Yr9{m#}kKcP6=zUQifacRB9TJ#P_e4r%l$~{feALZWRPCQx3NTcJ z*`Gy0hGE3AsIj1{6#=)->bK5PMG#)D+~0yxVJIbfy9j!_vb|T<=+25ytUAcWf_id8 z%wdL+B1@>;z>Rl}8VM)GYQg`e<5<`>8dfgE$__xiid}~&#l~Ut?2zC0W1Uw-)e48L zh8LsBTw&m3{WFWjd?a6K3^T;Dar zt~UpPo`BGkW#g0dQg|zuVQFSDWIdUdgh_J`hQ4G7NCh1M(cv|nL||3E`%b+r0P&3! z>|U08q0N$%Om^v#7-=Fg+p3qRo<@HPFR!}K83VRdS*UX?x-VZ$D&3vb-;PCGIzTu# zq4;h$6PvP7z^LCKmpLCAl^6@k{g>XE3cqKx{w5}Me7>fONEP>4v5+y5J}D} zMY?C?%p)0!ro=0Qr!t7;p!$G2DB6A_g2~#3Lo3N7AbHrY3BP~)jP8-@08)jm7KvIR z09%HYkWD;TfGr+!Y;`W+R_vD6If_DPwQpaSP+r}4;cCcyJe?mKCC9vd&6p%F4&h}! zDj9hxZj$%8#+m5+dm+dprb*c^qG4TBSzJ7wy5@K~pg@?}e<66?q_0q^puZUF7UK3+ zdQX6hD~PmD0d2&8V!z*7UWh4b6LmNz17?Qz%&>m7rGLSCqj`#P+9SAUN8Dt)QxjgZ zz5!XVOJT5p3Eau|eZbBb#LY_K$efXtZPuJMfAIiZbojCdQ&!MAbFvSnWYSsBK>>M}`#M<(o6SEDL&R<1EuEr8S}%<}In(*tRB)55Z`F@%;J+KLEm^DZq-RrYEY z{ez2{mbD13uZxAorCUbr@|Xm~F~PW=*vvw1f+A_WzAKKr&6f=UFC)^)!e;WHT>Cw1 zDOjQ^KKjjj*U^`O;h@NAZg3f(S(p6eLm9|^;-SKS^NM%*LCLQ6#OFpexcJicTw(W- zINlX=Gca{I24rl-izR!1o8@_>Ig=V_`MWXl_-&HEXM4&!=fV$X|Mo=2(;w4uZ@4Z} z=M>M0CXvpCnvneiGW+8KO2VaDTADt#-Iu_M7ZxrYCd|7lU{V&M9j zzd-ke&+oQRKzD~2;C;AJ&3`yG z-ra9?{h836$vw5to0C7gF&Vb;{!@q_hr&Z*M`+&f_i2}yq{ZjZ;Ya+Xw|+q9>4DtG zm&c%=yE5{(jH61-Cj?-N!nq}afF^7rgHN7-9yuW0>47i6!!9AGR~MulWYsSu_WZkI zI(UBDxc(H1B9KZPFw6S)k1((-P+wWxGM&$I2f8TcA{V)R~ihH}LLt=4w z`Cs#2w6qB1rE}@LJCdu;81jT**JARETp-uielGYJ_!GEkxJ$;j@q<=K-^u5=welA>TJ94Xn+$eoiro zQ;E9_aq!M4Klp$lltjKf1Z6@|`$y69i1nrC>8O;l{QOIUuwJ2z!=iTQSl>Sc3NDut zU}Qu>lP02V)oN$-#4(CKw_N-)e}MtAwfO&@oYmh?iH~ zt&XIqY4)>Uk-lNtxM#a@cGWrYn$)=1^C*plaZVoGyp+1_A_=NT9mDGRCDb}f-`E1h zEReBYRcZNE3Kbg7x3FrcYg+d>Gm1hxR-#$SJy{sBrf9)hO92h z#I&)3)OY?M!Tkl_Bum~XPZwd@vtJ4hytO8h@fIt|)Pq_AysX+ALOgw0qpW^$pmt5m zpx?M^XvHVBAONi}@Ggpt{(OAE#~E$FE;Pe7HTDbM)AEOE84?@P#1WVHo3H)c*Rxfx2qi z+Vd~B90Fz^R0vlt)0KX~sQ_6j2+Yb3Rct6h%edVX8twr_!wr{|7yevEY6Eu}N=Sr0 zM|r4jmV_k5KZQAwu`FF93 z7PZLjrfl;QtgGcy$CqVJ;**`8i1$h)ov%CPFqc{KT-Zq%G%a+8X6ymK` zRrkO<`+mtrbqb&7?l5@jHR~>bu zWBs!cWWX{U%_X%libC;V*zqaPcz~RieKR5hrxGWcA`gRRdZ_j+TWw=dV`+;8$FiJ} z!MhGQgRprM)bNUE+bT_DK|%S?a%vsL!~E`oUJPCw5?Zi{kX#+?z>Q;(k}2!hZGD3* zT_5&!z-YEg^t6nfR?ltH-EOOBTx>-YeB&bknaeHogN@r|;67r6Vb`Y$?o{LxbPh(oB=+1;NQN`Sj%Z`6iq^p(7V2CN=xzz(3NXdq`QYN<<7WpyQEcZWwF1 z>PV10HqR)bsJ>@vn$Ef@cUimOc1<@{zO+xQo}t^=y-NVtY4}pg%en02*o};UNKNOY z_~-3kJ_FV8)t$5!Q?OIl6L!7{CE1?k_TKSk2`NiO9sT@#KHuC^ zcl{hPKX>`x7(W-U^{C*WFl&_NtbvA4Z!}}5MG2mp06?;T#sNIJF31G zo4&T~&&0O$h1)`I-oFvotPS`XGG37FXuCfR$z#X%mwZrb#iqdA*2B2&UAk`IDY7;> zheAR^>Mt)27g|B|o)3kb`Cid59U}?Ow5#3Ui7 zw<#Ra&6LF^L#ndIpDzw&6&BG*ncCNMS+AG8>{n5GB0(u!dYBL)r?g-%v6w)1%Uae% zqQc&jzgf}5i6*FM&&X4vSiXXrs}j{XgRU5j5N1-=zNJ*ywALX(N`z==r_@K^`&C)5 zKFwKMSx+Qc#GKUOD*2*WiL9((^V1c_xQ#n3HB*C1i-nwhT?fA<3%(L(sC+Ox$5HE; zZa#9A!$i^Ko(P`|i5A^H(+V!9;_hK!QuN1f?X|4Rm8een2c_AY`1`UE`|V2{$jQN# znJr1@X6;W|hOC^==mCSJmd9UKxosR9+vkO2^vvx$A*T+`F0<1c!F}~hJ!6AlWO+qR zt?E|GK1~zRt@b&}9LlYzWetY&c0>~{6HBUEQ6=SlDrdh;jmdYH4Gq&Mt4|j=7rJ5w zgZtFyP6hH;=ZUqe5Xu^9=;CSyR2>wug;hols0$mk%vT%Y2CyMnWvyT4r`%R*Qu3&A zmr`S4H*CRVZ#5fa${ChnlBC0tqRiOmlXc`w-?JJqJ1;{`MP=!L$K2F<&28|T=9;SS z>#9pQWsgQN!lI z=ZsUw802$P%qRKl!`^ITYuX4Sx8P{~Yn6q*;Bk*lw~kar^%vAa)v zoksmp&4g$28D3m2qMQNz_F#@j1TW6K>K@}dc|E%UL&my1kPH*>sMDPCcPuvb>rx_g%2ExbA1vQmi!pf6y8 zjTj*K7`hiI2D!sDn`EDsyOh%GbZdsWCJ_n6i;iOUlewD1T6_Hzbr|Axu{lq_6gFc_ zoZQ5NkmchHEjW>!l0u0@za%I){0fgR|MkG$88al+*3fc&7nggSSy4j*o_G@Q&+8h< zdr<6;EdaN1WyZ?8S5Y!L3(4hynqUoIbKJ$8v2wdQg%lmFvh~OJt5*Ou{4bT~SD!N_ zFic;`pBZ4#^<}r(l&Gz(1F+ij@9aC@=sYVH`3^=qrZqOwU;Um>)`MCuSZ)mb$6_<4 z7}yc7a6a)qm^PQ;*{NPz$sW1v*4~^FpV?zK$FGibAfG|6CZDOgyviUNK5o6YRf+I- zLZm!m?4I8-UG_ma=ZvTP!fLud5XUdt!onW3p3dlf0Enl4F>SExZ&yv1NKeoFv1?9< zgzvc_dap%O*9PyGh8jx)c+JqdB}PJvm?$ou{LAe%TQ^a&q}3#n z@YS?wUb?1d&s~X5wS!-A2^=VG!nv_hXC61b-J!}F)i#k6&_JVFE%Gum3FJd0@JlUf zTlAk;mTvHZx7%GP301b9b}OAvi9RXD+zhbogo|S_pAUIp;MJ;gqAp{tu&Z$4ZHrME zLZ=G&Z!7@(UC!j+*=4cX(tBp;J$+ElBO|20I45z6qL>83uXivvEFvLwn(>+dxbLa)UXDW zL~MpEWTz!k=rvIqi+)#b@Wnc(T334`71lqur7b&K#EO+9E!4cK?71P6WId`|Ca)q* zgx=^DsMRQW&!ZI?v~jR=B(#nC)S)XbpEW01NYGY&cKkdZ9o@xPa-C@?a?G8nb^>?t zO*cF7yg#cyuE?%W(;1j=s%t*u;FTO5vI<-57K<3=)@D|P3je32%pZVsKU={P{VgV^~{1YgaH0OHbeT zgSG25KTIxN(_J4iod%oHe-7~r+aw6 zoxp$|=9>K@T8)l(O5{DP1>fD~;&og_T&~(0=I*UJ%>I3a@OtZF@o6LG6JY+L$ft8# zb9?Y6^k$dyPU73z>xQ|Zvz3)$>Jg@wFZtPhTlAdLy4%;SZ~~m1>K=qWG_vphb{eF& zbMp*rz1$XD$$1s(N?%v!TW0{};3Xj$GLtYNm3|1lUwkV2%0@>2&9TgNlKdt@jwCfJ z@8V)<-6_y>UYk=6Q;-_{{?6fodxm0J4y5`ek-U5iLQoUt;Bkyb+muIO<}?QJz`TK= zDEuRB0C{u5nzfJyCIuHcP|+2XY^<0a}69n z=V(f|6MYV+bFA0Uq+^$1&<98u0^c9E$+uuT{(Bp~S?Av|<-kF(%*`R!DkH#}j7JEt zy@mW~z2vFgui<705o@X4jJ-94rsn;u`+BjQe-Bu3`W(&uZGZD=681AI9EgT7e0?#1 z6doexuK!peOs~6j=USajepH`(l+e+d$C`>iW0=?l{Wq?&ppv6S{dYt!I0v zu(j^iHO2qA=XcfTwy`x3u?dgrK@Vy7LF?z&mF@@pG*Y*Eyxm;};qPjV)7$8Tb%Z(e zdpLY+I$0WR)Eht8)wiR}v4#4UNp^6a%bfacZV6tsEgJW>C0+8h0u2n@BH82VW)^Fa z1(>!xFs*n_o}c|?`*c?`>W@@r@)!4vxGY%)`b|g7;pY}~OXwuIWX*enhH%w0Wz#MV z^h@1l)^>{X9=Kozm+dVG)#u1@B=Ox;H2P0j%FejjRMU)9sXDLjJH@%BAe3yZ|9r_h z_;M@uo_(skec&&S072i1s%iyhvlXCeJ7f|$;SwoWp_0V{-L}TewRG8<`PgRAsDEER zInsD+oKSy*3(`+%o9a6B;)ZgDB^VbjDpZ*ORl4e$iay&F;US5Fp&jclft=|lnU#ht zfr1DMxyk;qG%M6;@jLXVyqeYUD*`jA(&!+T4N1>2$IYL z1a}~elk6GG5n@wM&|^ZD$&x<>vjS!{^!F?Zs0-4@cBCfyx$Ev&PU59j z_%&#s8{macJ&~UwgdOT1?e#_vTAAsdZD&qtH9YGrH*O}6ey>fR~G%t%hxcAW8e72KCT(}2vdAMb~clJJ|XzsujQV5BHI_Fr&fl}4I+c|%SstB z#Y~uk-|FDS7AEK>eMA&7X@HVpW$vwo(#BZ~B_qcJGCTJfnp2uf8Ls!-j5^xD!Udzh z2RS-sn%)oMlwAO*%zoy*9)4uOjT!q;jlBzUF37R|nw4KZx4S$Jbp1=eUhmPnjnl3@ zBm+d}R54x32Lh0MbR3eDGUaJHW%a1FVH6A5j_lwF?Og%OX;3%yrHAF^nluRPIzqma zS*}S7o@7Ed3o@&7I8s)H%yIYC8RS1P{S=}dM!cQTzZ~^Tad8<`S@O7&+wOTy>7u4o zoPsJOMlMkX6bc*~VJAk87M%Bt>`2r&k}=Q*^S`*b<|ju3%pS=J15m0F(hPB*d4sha z18jV}?aeZhLr|C$Qb%wZ5#<^2W{XHV8avyD$Fy20C5-avoSnA%6)eb~NJ2)wOz>UuzYS>sT8_ax*oLagAr1`iSA zVi%98dCNhpT@<}Som3tK`YWd1gf1M-l|Xw%tO|)^*}PiUkxIaNv@%E^U zrHtzLDWeHUM$ksy=au#8R%SvIcBP%+1i|tRMyM#7X%VZlib58@g+PTC!zyLWr&gL= z=CvU>35lw`K5>Uk8bM(h8xP}%~6t&|xQK8iel4neDCT#%9u$DQG zOlT8WaPQ>TR8?*2>(iEcBF=<#t3XQn++kL$a#`s`jnt0oFi|7NkNR=g>|6u8_~|kbHZpcb8 z)};~Y=%6aElo{B1`d1qss@W8nNEm*_yay2MBivs`aaF6TqK9(a=C)Bd78(^6hEymza9S$tL~b~CZUEftJZc4K0Zk+W%$cDChW#Ouw!LTx7n>4R5qZ2vQam0 zt@~wz7xgX32WG6$&cqc|3um|$LG3o0tr%LfLSEu}7g^;6YQKz)Gh^z~xA@JKKp7o8 zyyJp~d>biL>bzpikeaRyq_5U&X%j4n@)KInwUD>nRv%b_Ob0&8T6+ZqqOFI zK-XOJvHyC>k-}He&f2G(Y;B0O9J<{;{y<`wMi`?Zq#+a;xKWr`frqTE+RN`N>0EFx zmMrCO>6OMbf;1`%tg|b}{9V>Lf65_b2@vf|DWU{H^(umXuSd_C3fBZEd#6Lkq?8Fu zyifbA)sxK{6a_Qe-1h(-0AwFa(WvGGgb1da?aC zPoK{)Um!9un+)ZS5rGXt zTZVbpD3`sFrYkfsULqkq8a0wUS$Z>md|;h`CsgGCw++~bM?vgE%~#<_)t z!EXfKMIPm>EibDz8o887qH3B6NmxgP)V87&Dn?cg^&gIm@CR&|tOoSZOwuj{g(Dk* zV_ySIB1-y!@vwW1{wP?TSG3+(q}0xuY~;LZ%oRi>4t~Ug)pOuz)NnK%Pfh^6g9|U8 zxlNxY=UBg!O|O!Q2l0FG7nSpOc(&w0W~DqJHZhj&o4DEP5 zbVyrs0D2I!T1kKx#~$45PP5UR)$pJRXtn_c@DHzOjgy6(uF9%l4Rt@V9?Gb7_Lym5 zoB6G1r*smzVxxoOGHYz(QN$SbzU@joerh9%rx~MO{rDZh-j%xnWz91j>iOc5rFDRf z8n)Jv4cs(WcJLmD7(U|}EgjyVrT75!v)GvRfaN&T0gpP;h~-%c1v^&zP6RdKP@Bzg zmVhFqF!eIqCS}(Si|UB*&`4+n-XG;WYExx$akUbh41u79qu$N|Lt5NN`$lH+h^h#ompRhCP+KL;odjVMUcqddu^}|-c_Qq zJC-c2AlKZ;>}&Ip*H}qmXo`GvIfaaLZ1;}NoyIInF@B@FzZ%t`Sn3$!+lx(WY2t6!qk|c2Lrl1eTkm?1#V#QxfQ8n~Yb_3{*{{qGU z1q~~rT;b3WyRdS>!V*^Ck04cSxP@XUI30g%E=Pig z9z!d?n7}`LAg^f=ECXSzE>Z6)w2txQ{Nss^&WVqz?n)`JxmsUX27fkW;Xq*Wz8oaI zGFY8hV?m|xBxzQh|13dQGdL&6Ywbk0Q`RWZ4OnrGinBeP2>^?Z1JofGK0Ne3D?Pmw z|6Gu|ty8*Vv+u_XpQ&>(M*tA0^EkeCZQfCE_8s~q9kgL5zfxwBu zO+A6t?zV}IC|X(>J02oik^3%Q+iYWndpzVZ4=NOtHyuoR__!?-GISmCEdjY?zO5+8 z(t>k%=ld<3l8;#0${!Dxn4G@Z+}6S8`aHqbV>a)Sl{1^BI?x`B-&@hvA&sa2E0`^9 zy6&MXx_$?00DB?`guKe^-~FBw0215_bjT0kT?xfBk(e4yvp?ocMow+D*o!OrIw2d= zW5LSiOmp{Vic2ynR{WcX5XdemNcgVP=AR z$8PW*RJgKl3Qv=&Sk-dC*nWT8M*g)WEW$cbpTuy@XBCl6Mbwfr67}0)M_SVg4#|18 zL?tSLcL0(jselD&c;SFPlaX7SgQi+**r0IxAs!$WF@|4U9e_TmR!}u%|?0)YvX)qzBWfetT7(8ID z&g*e>3{FraEa(Y*7mQAvj4iT+OpB|kJ)c)^r*NO)3|QPHAsrGojd)m*l@fzJxVs7! zUS>sphhKk^ktO%$10_xq&u^L36SVrmz_!|RS6REdTBr!|la%qjbo9)yS!q(q7{r9& z4>gUZL`QGi)x&R=v3a%IRQ|F@KU;54v1W@Tm7t-askK_H#`p2Q?0j5mceC67S=g2( zm9lC2n7zJ-0TZZ!SM!oO)^pCj+4_Y$SF`12*FgDySR{ckU%Us0>m3mm9Qb(BbMvW7 zuglIMExXQvbKs_|%Dg0f$fpOQ-s|;d{bBL?*-EEW$C^y6)^J<~q?irrWE;u0UUW6B2L!p7b)H#5(03p1uSTxSc?@9w3d0`*wpKUfv#b8C}K>YfXP_YMDnO@2-pAX&LXQQV9-XV5BXWA~0hne} zx27*lu+Ol$(-((bkc2xQ@4$Mo#*%-~>$V`lkWX!oJ-gBfUs>lRA&ySgl&I&vaowKx zcO|N80$a)%VF<2kGJ(~lXe-!(OKsyQIy10~X^!Pbr>2ao!CBu}uq@O{ns*iT7&m>Q zK4m#XR3|N$Md0&uhR3zXDQ`N{H7upYWH(rC3ireM7kGoN^M$t<71v8>bjnZs>Qu@5 za(_{B2UDNeD{fKugFw!QcNo#Hy3*J81ib4xW^-#fO|3;9t@{}^)|a;jG5bTTi#X>n zzBKip{s)6#RL;VinYJXMc2TBPby$zfxd&xESg*zW?Pgam3y+#%%?2GAuS=%AGcBPw z=3x?N$m^JLvd8dyRS4~~LVL61rqI!p@4dU1t|!A$_efaW{3h?Ph%cp6eS56tfeHdY z53D+uQkfhJF4o(=31xYdlIG{_8wlxW*-*Q6;JaV;JmG(ph$39r!}Sk|9OvPkkg}`c z@%gC2gyKct7Th*XKhfl~C_8kz&)H9CnkSp`c-b%UAb)5s&HUdZs0aYY=F3rq`U$~s zNUiY?Je=yGH{qMPAEf>3th3^NfA$f>(*wqk%FoX9Bu`ADSJE_03^7RM2ESq@v-9&B zeN1TFsI^AFrx*QrR6G&X{k!3a=~l^w?~x7MnY!AWrEjR4)80{e=G3MCy?G*szjfPf zxV7=_=Je>xi}-Q!4Z-^+2psv1YigvX-uY;kRyPx1AJ_Yw^9GOL{bF=<*@}C<{yOb< zHv9HcgWKA9bqX7I$Wikax1UOT(nKIv1G}?)MPM zq)&<#&jUfQC~}Yy=}4U@Qfq1z)s-_%BB9(xIq!s&cIWMhj^TM_r=gkWslutl&XV@a zCAk6Uzh6@vc8X_Y&&`aT&-CFz&f}x0*K@O-V8HoO(!{6YLyciQ$qoWT*DG6XG_z&& znebXrz@oyE=B?b(-AZ^RS5hP^1<4ALIDFb_*wuX{Xlm_A{oMAD#<0 zgHqa$ZL9HE_~YDt=X+=`rT@yw;LnckRh_(28%G7O*eeFEPHg(x-i*WB!^`y&lW?>w zzp&eork->!TPVSQ-5QBF{}9-?Gi)M3 zvjB2Ck5Q;_V!w-EZg>8@NMW=`nuf)(zFs;Z|JQ2sBPl1H!h$h%eCfYh#|c0 z%$>uB0|AG}@0I@YM9J&J*DC=&$8|zO#|2e?c6Gtz0Nof-NUB8exQ7F7=0X@{OfhauuGMD zfMxbBqs%-cJp0Yl(4Z%;&H`%RtW7Y&~N+!ySq8*B`xbK2TEbwQS} zsLPaGLRt0)?J4X}WW*{R-MyQ8E6LDcynbrP>*p0LY)2)9&+(8W-jxw|YZFKobXe5i zA<$6^(>yG~?G~><&3HJ3lcwFM5~34C=0o+OzU*j5h13sg`}FDZ;>E5j?cWy*vY_Fk zS?AJBqlxsRiFR;{zrz3(9t+ML6H?t zXnp=L8O-CuPTeE(oK4Zrx*5f>C9eR(7ZC(YsS8zF<~!#Cf?BsQQ}h}1!D-@3U|(&- zn~dD-DW9f-zDYb|Z-78=fP(apD960A*Z#N0dgds68xwim4**K=&?^*VAWQp#$LN2P z5=1$1iaz$BIuYJoHtNf9B87&w>{0UhicRr3Dry{1TrWkO7JYc0YLR^mF794Xqv@|r z+lcfZH$qKm-L7@vf#)HSDFHww?Hz(bDZ6A)y|Rlgqv=&1zi@UXyPF3xaN92Uss{vH zj8{VFe^X$eL@@p=KT)2GTvxD7FU|a(FBPMvGTuQZ@96t(2tx|ye4on6Jy$E7J0a^l zGlxnC1izYk0RzThF2Aq z^OuJm9z1vr7%NPq+)!oDBq-?Il9+9uvY$*NXR}XT_ytqCy@ZX3KucuNVp&$nw8c440S~{ft?{pHUGPZxxxH$8=r6+HPK#F|B45E1nQBA|3UdDoObZRBsXK zp+QGGFDT*2o_jhG)Dn!X1iwK5HVw<5J4RnRptqSN;UJC{?t?|F^pqiMAcb;X{?c)` z_MceC7A`!B5)txIA=NvF8ANij#tc)Zm~7%`KwEVjh8ozvVg!QH?%vX5C0J*x(gP95 zlz_i;E2Wiwhfppq$^CZGRq(*|-?|l|qom<7uh{pY67d2AXU0p;;>dly8BnZV3jpkLz}{8^8v zq5KQG$bj2uKGPs9$R|2fU@Xo!KijWh5`|pi8@b_v4wyZx{n_B2j&RsHtch8YV=hnw zDp9U|>P*h8IVgc_B$(Z&(doOr>NF&z?x!=gAE=lm$2&BKNcZQW-TkgX^nwyK+OGQ! zZi>9#e#}SRS7mDAPj)8|V*&JX8xXV1VP6!(^)=Zd4e}p1>YK&aotS}V;B;Uqo7*!y zYo1gpD+@;l+_t7M@jFF_*}KpEAtt)#ooDTr3VhF3oonR5|M0W}^?1ILUwjyp?zZrF zxVU*`Yg&r`ALK8DWP|e|`SCGz#AbR@wr~M-Mc;_=BC_mvrC7WYtK5KaTP5(G(%A7| z(Whu6_{kmmBa@63%6Wz+S0*~URD*3ak&BEtb?P>7tub3N{wM_c_A8Qh5;i4i1ZQ-= z30UtbhK^j6Q#>jx88vb2Id~cgu*pS1?G`BkGl??jIPj%X8|LUgn;<5Nv-*F+$x@&E z@`qDsW<~qjQQ)6_0S5Ouaa2nOXc+xU8Qzygd{}EkL1e>1r2<8)2)D;?-q28D$b!{6w9C=g6cxSw(dGQ3=A-b%h5Hs8aZcUpuN|Rq`2L z)PNF24vSEdwNYFUMM2CwFEmvco~M{?nudKoDc4k`4vlqpl9ME?v zseiWPhTp!8v3HG8Un+AwGGXfaCXdX4pHv|_0fYbH`}Y7$$Aa{W;v-Kd%URLA5;(Y4 zYT4V&xi>oc6VMT(l8cEK8{sRNqMOr06W&=c40%mJg@RRK9|~;>+b8Oes+3ezWD_Pu z{K8C3N>q&sO>)z`-AmyFF7I|8NE!q}gFHlj%)8BY3cn@m^?re5iT^0i#8AYqKctj1 zanxbt3ykgFjGF&l#`@&~pvG$fhbv;YJFp%IHBshfN?(UF4aCdjt zjXS{|g1ZHGcXx;2E*po9ZCo$;pL3pjK0H-#)vfo-u3CH6^z`cKneLfiPtQs`i0gKH z#E2Jnc1dU^6@iV$Z<|ij*!*BePh6z7^I>0ThQ6W#b0p81+NPc$1Wiy7(pQb2Iq7!# zSYglD&e?^QB4rnOY&A<=5<~pBEP^1O#9+IB;R8J@6laEkxTyueTWe93|7wBR2tG=V$%ID=xM=pXAJt732?ZZ-&qb%$^EevIF;0)>Eg){Mtd}c4<;={Fw1%S=SNcT#ruR;~ zL$H-C!t2xiqxzf0b&yPRpN(cHW$zf9JEMh={&I&u(^?o#kp_UhKFfAnSSIR z=l&)?*VVbbX(aN|HE)!J%s~f`_;N;k^{9AzUMt_SbE|1>)O_*c+s=x`5g3J&EvBO( z#nZe-0gQ{1VNv;UJk+AA*6pN_WijzQqK+v|+az_w!EDU>ehzbG{re9Bz~F`@lx!8=<0Tfk5%x~5K%pxiY|yt=R*OdCc}u_^Rt1N zOO2N#q72*gD#lZ@YXC>>qPgiGG8sS$&00Ljd<0)0pr&alzPZObuf8}TFYjwO0+?wZ zmpRJ;@viBYLIcmr3q`wD>w)1>?rnECpSH@R;Hc0LqOip@{?FWMC?*3s8~xw~e1Ji2 zor-dh07E+v1a!9leX)SjP+VXZBs(h$n!!Ao_V@gv-m3b^pGR z9)-}-(5j~JBhHHBsF>;}FCXX4#DQtq6LQe^2@K%T4i7gho5xPy_BUpEk6=aCZx)@E zdhs+OKUF3rb!3BZTiJhX^6$dbqqIaVGV+?aor(I&$f4xjSf)0Ymej<$Y~9 zh^-wPMrsV;)Umk1!!5{tA#t}oDTt*rrO{R!!qWk`F5UvHn0mN^E7K-E<82ipTB_Kq zG2F0!v})&dr$v^BR5r4-4`c*l7286>zu%@Wi&*jU~R8Vl; ze~y{^Iq;`;H$ig#m07I77KoKp`xPh+cAewHe~7-xK^TgSJxytsJXnvaWnn*`YO6y% zt{QM2Y%b$SO}FC-f-U0_WEAaY4r;>%h;oXW$t}u6(L!h)D#8X1;+2*jTYSVTlgzl0 z4yx@84-Ze;((tY6ol(&!8Prq}4x;7uc=&{t(|PmdXfJG(y+*~zy9ly*;|8i=bcX)N z-tA;3PrdibrY2z_sUJ%v)Iyoc98h3T1CAsRZ6}?`5AwViw|p#PG_T#dmZff($FYCL ze!)xFCopnee5uatlUCz6`TplR8MDRQj!!Ih8)i%r_#8~6?Gfu*>?^zg!t+xY?=2yA z99E_@VA!Hl(^DPoOMS;R@;ydnj7Zg@5e~jwdJgxTS^MZ3&fNKVxHh;9_QBTVB-YK4?BvE2b;C znKS}5-&xG-!C1g(DMz4FfNvEmJN-W22Hr0~>#Hfx4N4o@j+5MN-PfX1=q8 zF%aFDz*<#fc%uGV%Y|TEdRgYh!8Afw-_Hw#2SvV0*~K&{VGt&D)mE zku%eb(&&Gz?|o;+clPq}bOD(shF^^J^0GAPY$|w{!Nr%uNc#<(bb+7Ro%g^R%84Y7 z{pXQ2eY35JrmJa?SwWdyzmjRzf!@4ZTX~(}Ie)(nv`bT2uRlN?nB&J&Vl9Sbd$;u%CQX|>=;N@E*28hc4k$P2;J7l z%`clBCLQx2^a>d9>?lh~TAmYFgTjY;(v&URY~9bLo=iebk-Tc`F?F47CGgX3A~qQ6 zRlHEPo{&qH`>m`Ho|XjhPVNsuxrIxg{O~K-obPpI=yMmP=-0D@-iND$+R3Fxjs?|_ za%@OV&JB6B>kmwaFo4G8F_FMh(i-1JE!*nhAM%4^^4Rx+1E$7hV z+~F{{Is0;u;kGWkEPG{Cz-l9|QCy7PI*(@>H&Z`DDPyXxX*CFP6}lT%9P^Q4Wv;<- z898-`NJ%#X!LZ`rx!X>(sMuVZQ&I$p{hCm2kaf2phuB;XJPO*Uv4=!%z_D$MXPJO)cw+TpIqJFU$*e5h)P#i-gvL6JCXyq+@4xaXKo8U$1K5vh{aKq`oJI9UIOy-br= zFi3+ia5R{&k=R~`5S7y49^_2JFwXVotcGK^0O&!RXkZDhr6&pgs4cG5Y6d$r0n+2c z*VCG^;?*^JIWA~lnPK^nMD*&iZW_>t!^(`Ov!0Fo-U~}N4SCfC)_Lfm7EQ$w!!GID zt=qcAFKOG-&J~SH8Ny=1PvYzH3Bs*buca3swFeF=vRB&M6^{J*>)Q~)@PF#;*yG$W ztnJrXN^^=c*%a%&VNm6KGAOa>_8VA1grP|_6G~iK#kSQ>6)YYnsoMyX1-PdcO+@L# zvUZ+%jCMLw8Y;%1?xmiNFG>q8+EOS__&e(qR7wryi8=~vXOZK3gB?y4tepifXzPyX z^+?-r3m6-jpY@yIt9yUiWkHN7eB|ecObXERUG$idN$_@Q$s`XyX7*Oyx84RtRCZZi zR}z2vkO|*>L@UsyK0DdQrl{hy@xaXozW^Qc&e|_5njXUP_f%TZ0i=GVW9v3tAK$d!HK@Z9%F~x>MoTKhs6E+&NB? z&zu{Pf?16^R~^M$OU7LZt(`y9sv0ZK4F)+qTt=1KS7Jx{LV>ji%bQmJ2xAd8o~~Qk z|CtJPt#8$cu6D==5UPoyJLu4}Ca$LJSO-bP^Y>Fflt z7fcK-r?h@p9AX{M4zFyP#7`0I!=0jGQGZOUi8|||V43~H<%rM8#nzg#kEU*H{p1qG zAkb+taU6vU3Ut5_zio!HB*V~@897^Dqi$*K^%DKKpr69q=U%BATVrU1&*_avwbc1D zIehgA&DKOEb0EBaoMUm0{lLa-;Bo(^B!!oAu%gb1i6`^q>>Z8tv=y+!55KMU=%~q; zjB2t9*$#?8p;ESxtm}Z+@Kzq3DKhS17YGf}GY z@wk-SMY9767y~#B&8a^+_7&LhA;Y22Z+O?4&XRqSGf<)|39xlJA5ESuTfToeR7X&E zavY$LDzj^1QhnoR#i8p<@ta?K4H@>N3J?`h{>A7B0T12D{3kFaeTN1ce zsi{L;lhYI#yg-S5;OkdzNk#ACg(K?7IV#PYgzKTM2d7M+e+h*(hCS7dh8sDmDD1ES z&*EymCuDHaY+PBrhC%5^amM`zJ(6ys)Gz!4U1pNF$dxwwj?+h@LMq0H$O>3{Z@&2@ zm2ydIZwyjPA3O;S#3e1r0$ju&n0%b!g^KK3@cu)QiNl69M^L^KeLWD;l~bOMw=!7-uQwx3i}Z;{;CmS*@a(7hG<#j8fq`G_D}hYGOacVW8a z8~H^&&G#P#1tD~A5jLc#Ehb&qw%8}@YdR#e`&-pi*L+SGx5+BP55|v?5MoaCZ{i3!J4CYEgXl|`Ipvn~WsF5z zgRl@60KcKA_=N`_F^t#hL-Z-iS9)7HP&mj;X*_iE&~mQfJY5MO-xPPuaBSUOP8als z?M?e1;`c0rOzB2~&$N53Qd@1gmjR1_JUlwH+ggvFjda~TK`)e(Ki8*jUgTmqJJQt1 z=9ir(a{g#Liyad%Z_sq>T1ZKTwJzlpR^s^VBTv4yOFeEpyUXVOh9795#%QO~OI4;iy_01eicdp(cpj;G(qG|60gamiyz# zFTOx*?kU|s5j=NIU;LTTg$VeGWr5fNoPqnaMq4h`;@+Wuo}#=!eo*tJ&p|Es{s+uS zO#P!%q|PhN$l$;;U)jXW@L@bsaikcX&_Gy+aRvku^LS`iuC#d$)yaEUlB?0ali6?u z4IohaeA;heyLM*0;AAp?#?qr|wR%&(6I)Nz#RYOPEsaTU95^?CuM1pGF23i2X{vFF z%eE!J;FfTS4$~~xrk?~_UQTdg*5|**EBtw+{kw|w^fR+NRpzxIe7fuE1xOgpgtS%R zmi7uda$)>Zs{yU^|87Xt?U*62Bn7YAluKrHU)aCx-?Ak7ay`~a(E08$wkL03Y%e;? zbcWhI=@}^WUL;+5m+D_*{L*LuefXn<3~GFIJ2925GFu#P0)4FVYR*~LQmb$8*$oIKp z^|6BH%|2M}$4-mdEqLR0p#RA5$24zNnLuX<>%Qk68ytzx0Fi*3Cp`ci=^KZy7}je~ z98MvFVc#loYzsr&ZPMh;0!6LEo8A%=rT@0Avo4lEMj$u-(p$0$*?m(6Y)`4yJyASH zhE8mh@qX%R**M+CE77Xz1W6Ct@}swM&*6~lUJJ7Cb_YH6Hw#;oV285CYRl49cRxWI zK!X;i5&fk_YI~av)(FNmo3FA8(<3}!soEF6Br|Gc5l6lK<-=>O!6&7mEM%O#ArKB?NK_-l-CC^h6pZKq*+e*MKNLn{@#zD$v_&2h(J3|k5NhYgf*|?39 z9wRyJD(+qzAHYLuxZ`xqAp4awaP5(%k^|x%9dEj=M*-{k3w#WJuV}#I%wpS~T4zyH zuulMyVXqN9-;!<6b*~&}^bk5F8gDVNcZb#>vnLIEAW9_3*~}155jei4>#t|nOzE}+ za%sa1KNkR;nO!~Qh)Ux1hy+9mDb?9ozLI%))ihiJ!sJ`4cAk$ z6gLNL!~Ug!wsQug{{E#OME09+fnL3P2kT@hYkh`AyntW|z;P0SD())v9;3XoQ&S8v z76vj-{eAEGFt#@yEiJBQ`{K1Pb&vIzOe_Rle^WX_cx1-#%9zzjQ)6Ad+=uT+7RFo$ zAqX*Y_F4-?o@|#T<1rt(`ffQ)g+B8a^F>r>%=-x{DXro>(Z6ds90?f&;$_87h0&n$ zBFhh0_1M~!D9;U`n=TQwyE}oe9V)&O@xf*CBv%sFmE0F+pE(<8ltNN&`Y`<*HX!?o zhK2N6BMgE|d+;auD4of#0Zts)e_6Yyh-K~;S#wdPF`W7XT`s6Fb9vH>p?-5rgYMk4 znz#_j408BPQ2d3<9sg-HEmwPuXqISSR%;43(O<=P`Hx2n)w`752|=od+PNbPI(eb4 z-Wfaes{gQPu-ex5{dxnlgRYdqIxqA?j(k3tk3-;<47b4J^9y-q3(o_Lhb;GU$*j7^ zM~d?GsX+-6MY6v=tXXibCwl=?*j?qL@r@eRx1rzY~Eh;9tYmV(- z@Aea#SXq;GZ6Q`J&KWduuE*UWU8-#?+)5Vw>h2a25fM3ig?L_Q+5DyEu5Fn%TT)AR zy7X}5>O&p$@3xxrC%s&V7=wNt!gdB^$Kdhtb=#gd3@H)&{?x4+>g)T^w(cVpb8~Z( zkem$M-WImEw~tAdh;i{xx>yxU)lOvj^e_I`+!w8mL)+~jIxX3^{5wWA%3>H?+Fp`~ zJ32bx;o);@Yird;zYRj%u^b^V{7X9btyGB!r$S0fN>zdzw)f7cJ)a{A)J8=~RQ@B9 z_X7uRLh*I!j&_2r8+EWE_I7dqBihY5h_$(0q!QPyn&dt!xmbqjf7iN{LGI?FNI9Ma z-W;!Jt(@szG&Dfawu`gqruQHEsShU|ydzc2^{3-yrb|JEV`?gGpxoU~es0js zQR)yfXuW`m(tw_wXyKn=2- z;`VKkg(HKlsje*ETJx6nHoesyc%<5N0{S(wIhCYWVZ2;xLZ|gW`|5Vc=WLUtK)Lr- zbH3^4i`IRW$(VYhH5UFKIm5@s^&%(1qJLC47*@u`vxx}g!ke8ze|+o0;0ngs;wA7) z47|~kJI--fs(em*d%UpF<$m+r=z8Xi)_G<1oMJSY2$8!KRHMUzdEuOLLi>sJDhCFq z9N-e;2ouXyb7*we3En}!q&%Qjnq_E;*xz;H2|^`EdU>n39wMtyeSngu@rJ)pl6biL z+1l&0!IvQCtR@o9^ON}!7`EU9Zf}_fdCVrFF4clD7YwNBG?GSpj{>O1Hb#l%B&}Nr z)#T3f52$HLvo%GIpQ!`0HiwedL2K%<0Lk}p)NIAZ&Ti1;dd^Ho77HFoZt*H8)mmK# zZQn)1>IZqy$ZZgh-O!G?KX`psJM~k0&kRDeKVQ>zK*HGV6Q^{LeD#=E_MU|1=cNs_ zMobUiVaB13};IcDb^0Zc4 zhUuoGX-%9y_>6luqPle)=F2jCqkX79G>H^GN#)X~5})$@Iq{P7g6=j9y9K!Qef1Qu zv43u>*yi#?c?lo+I*$5$u^=}?tb%f-l);5 zf(?C}1WUt*cViiQ_waCqLq+FePNzEH1 zqRC40+HikC-WXw4K)e?ljH|uCMR$r`P#8-@U49Yc2?5B=<&io4;A72B6@7+KJF!3x z(pX)tdEz>#)aX$gD<+;a+Ca^>pw(6NzSqiHj}@(O#1VXw!MjvRcXPaPC>KqtwE_8V zi6aM{w@;p&@9LLAZ%(UIOll2dkV5&pQ zjE$xUY2f!#$T$Cd326!AZ?S)7)?I+6l7>V1BZ8yLEco}RUjS2IgbZj zKmum$HFs)^N-TTdvj~rV{8{*=Q@(6%=&@24d2v*(t@)M(Pr#oZRD;)ROM|7=R;1Uq z2c=$>MZwCC0UWTjzQ?dl5gEOX3#86HySDlbLNwZrs0)?jk3i8^wxlEK z{1Uu2yoMV5Yh%yP|o| z3RIwHu3xmuOQbbO&?ZR4;}m*xve@MA6;CN=x;L80Y4e`hPWwH@tUeN?uy&V+A3z5_ zDyoH`!y{1u5*4tCoV_{ZN!0^!L+ntw9gMi#N-(Jb@yI$?M813t|A3p1b-u6!(7i^NEaJ8IH_>OK@(}F}=lt%Ukk0HLUo~{8+zxVkQzr37gALy1wh&!Apw$xATm= zy;UwaeIhcyyL?h=WykUYycc%CgQLmZUX`Cg)e8M$n%u6t&Z?cKZX1f%9JGrsiFNO; zH$K)Fnh7&EudcC9(i09)(-D=Zh(b9+l@nndd3(`vWon-@#&BWE*x(p_Uv5S*t))Qa zZut>W?0Asziw#Iq_XomP--C35Rzv7xs-=$9NJL>iKEXtj5^!qq2&EB#g1nL;UKJlZ zCX3SW5wTnY{IxE>GB)$fYs1p;Z9fwSD?hcv7`FrwV|Rcza& zeLPub2Y_iAjr&a}VKSlwoY_4$1$g)*YsK3nicLOB@0JuP{)nVG5#!e0+l}Vr*2I<> z{bfQYl__T!7-m%YsOXxto_?p0lRB&)o(|`83sW30sqcQIDp`{(ff0*Q8~sq?+B5IQ_MebYkrz#ncs=sNE|j#Km%h z<#8s-+NRnEZ)l94&F7nMOl}c0rDr4xzWtMtcjssBKTpiJ?;(An5Y(DN$?Iz7v+x;ygFg|GOTpJ zY12V|`7s-lh4Wxe?G@r0?mtajed}r^q16_Kg%Qkb{SAVh-JaZ&cgRYZ`xIB#(+Hz$ zy*&{Nc9{HLjjd{6xtbY8a#B9K42x=6w<1K6n&@ve>XE~_{k3W&w3&;f(6msXK&dXZZa5K z)(T#P#?-g)i7Dl>)@VM;W$~qA(W=%zJ#IJ-B?}*iA$};Ea9;+_6BDE6sKDKd0^#*@ zD@(|Cv`!qGja^|*j^#?oq4aKqpymPyje=B^G_Hu1v^wNs3kAb1)h1eou_tNy>*l%T zYQ?9dH;QFiX-6N5HE@bY-Jro>ghGg2EQJA#N^g&AJg4!e%FXnfRF0G{r zFBdwb+PR4qD#K%n4vXXEQq%r6Nsf3~sj6ERW@vU<;v4R+QHkgsS4_H-N z3?HrL7#i$E!r3~ZyOsBXq*JXHsyO$0eGkX^x0Ta&eN&jMb#j;~DmQa|0#~eAJ&jE>+0_ z*AxZN+Uxuax433k)Lb*a=$mv+)g^JdV zk}iexZ3b4plH;bhk* zVtX@Vg0R92j#vz3W1T}Mq3vQ1Ad@ZGS(`ystdSE^O$R=t(VC>q5r;LI>{ITkZHsyd zT?>>yD#qDDfeJ21q!2>0yajn9ZBQi&sk}F>3I4b1!?=W9B9phLf&?9A0~-4LEPHG9 zl6HG&t*vh&-fPE}PE_GPE9dv{+hS-*71du(Tzu?k*{Es^8X7tcj2rxGqa4|jlMKL% z`6_MRX>qeD!C14e3<)J)s|&_45ipD4tz|bQF%dLx%oojH(z^tM-tW1Q_e$%M4+5L> zR!Pl39DiZ6yqiKdwvGJK8Ni9q zM5nB1-!)9e-ltBEE`hjpQ{}ToO1NXe?PFw4$m3&yf}gn`%YZn?9r02(^w^XLT@FYJ zklOpRt$5lJ;zuQUdsid$%`2ILi{~b**xVJZ$_w*}`bO1YyCjB2?M>NQ*QaGe$VA|h za+AB%_MjS7gCf?dY&jm&MIjzQ5+^US>17q4vEidwA2&&Ox3x9Rb}S~ezlVYeG=wZV9?>cv9@_m zQ`wMQ)|Bz8elXdnAQ-M*>iHJMjCO8hd@xB%*r`=D{c%T*(B#Zj%Gz|CgWVvF=-KWY ze00y`sBZD1PO((ty60+6oE+Ft89u0`XoTN8>5et>z3zSx_skEZzqY-}yq0r&n;?I6 zIbShXe-4g+nNpy~u;CNl8aA&B-^Jk{AMNdi3ft+*p^R+G^LS-romHn#bbd!&lm z5e8c#$(fOrT?TaP!=@1~F=qeG$PICo3k3({)cy%bMikH^pQ%bZt#k;=g(eC9;LD-dVP*(`ietqedQ zx9xC%*P%k7bw^fbI$<0(kT*W>oZwm{$GO&4u&*=UCvUPAN+1k)!GT6#`JJJeRA_L1?5-g(-&@&1%@C9 zJ&<40lroTS|Ma=iMBik!hs!!N|K%xdWE7%k7Enmcc&9HHVuoEn%Q`z~8heDDMuO5X=xdfChAoygW!sO1@7raH51mH#AZRH)<3=I|FXffXUz~(Ciz5P9eiI-u)t5xtIoA^Hl~z)RAk;?d zy@ZMGQ?oWSAKv0n|4#<;8bTJCPiIq#VZm^|1^Eoi$C}3t4ZqLfS z6DasFzdOTIG;Q{%2`u&d+AxclnXII9ceXi~^zrJcakcmgwk*Kq4at$3%pkTiv1UB> z#&mk0kiPE(H@7Wko?N?JGP7|(*u3dmp5V1M5W1v7KMs~bhcmo{G4^F`Q?}CiICti! z=6t{{^&|?|0o-aoUhi|DJh`Lzyix{>y`?;P6|%gwDfLvevC6cZKJZ19O*>+5uqI_k zx<%acVBI}HL#lDBJW}tsRt`@kM`gZ1}z6ke`zhO{bj5#W4$xIR{=cTAn=9ATY7BU z2_r=9?H4U66w_WtL8Ls)_;pZv;k+e~^~mRk*P#PS65;-U8CWa&f#YLj+6dLA^KOP` z=7HLNPSb9@l6J%|xBZgm>B&e+wmYW6>qNe6;;2%p5WwOW$Nn`22GDP^uNy*JW2vWW zRR#<9^48cJlrQS++hM>Nnr%LzWs*O4u)o+SVrj))FKtb@!hj7_?EcaONh6c%yj;Jf z4V}yh%~)L>PkX&_L$_P=0Akiy3WEAyNumEtDhAd^4rwvCDsPUiFo zuj2)8V_?aZ@5s1-p8XQ~)uB!%f2C$c$Ye`fqfs5hVwjKZPd`0KN2nO_w4xe0KW$35 zj;fZRe3xK2K$K##5-FkO9_jSP_LH|(Z8BPQPDlvzNGQCM5L7{a4QH6&JA*fJdKRj^ zE2tBs3yZVF2$=E56=Jm$X9)4GigF&@)b2nMA;sz9e~UMMC~Wae)}IZ)PI9d81Wg;4 zy^`VsrdVa}NRhm|M2Y2cj%f5$O&qGtDczAdt<7FBLToPkVPX710NKwKMpHL%)KY9AyR^smwHPXaS$<4C%Ws+<7$@3N076W_ zSId2;!>^EKwkhx)-KewbJ*JIa@lv+Y@Q)}4J8R_QGp-J6b&}$vrQ~zZx5&|$=}Z>D z6mT8hpSRcum6Fy5!yEjbUky_igC}-?XKfVj`#eJS5VNc>*GS2QDWiEs@~U&L@#QrF z`Cyh)Sg_k|$cI+U7084Y3%U&Cqtv5zuW^`TdqWIt7H==K3GZf6BY4{7fw3V1sj2>{ z?1B3)5X5;(pIHE#3@9M4RBItZJgJ@D)Nif^<+P)4=-3o}XRgZ~511U7ACDuK2_q?YdoC5)nnQYyay;mB%j20D zHqLtVS##KhXbTnnm;>WMBgSW=yA#Qq&_RM9jLd57AK`|UG;R2(xrzVpLBO zYlNMkQ#`hg&1Q-srz2suI5|NeDtuV|?eln~Wm{R*39r=D?nKl%)GHF+9j06iD%4LN zx>;Qv)#mtC<;A0O*d~DGHX_-i>|jFHNIHHUB(#5k80*s!b1h8A-^ER&c+q;4otH9A zJ5Fg#&ao!D0STne##t5>vL~w8^#CP>%N{}?)eAvAop#VCTY;WvXTO%laJ?-4jW%pGkel=Aw%w+?s&iVGiJk~6gKNzK)~|!frHSfKQ})R zt4EBF6B(wn6#xC+d&KsLp+&c?YyHQ&Thi*!W=WS>uq2GmlFTj85 z(xwxx`fvXFIWwL7{|BP~U)lcuk*)uN`2UOT_wa=OMOy!RvrQs1@w{cVY_&UX@V>OA zJ81=%S=51;-b^PuU*Y84*Ka#JpGygp+@Tw8kQLkh`SeamulWsg(Vs0qo-o)09-=k?c`^ikSoxmCH|s=s>F&l$Sj7vR7B!knm=*o!6tb-^hr z=d@f|VF!Uqt@u|TLhZESZm(lWZ2vnh;tV;w?WX(Gg_mfuvOmkuvucNecgfBz>VH&o z>itMS_02VeR($4)81KR$#ZWxa7U(EUb2}`#2sTQ_#f;a*I z9QD!7lbK--)jJ1IFo^Q~c~`FjDE*y2iGmj|F**PHQcI>MobAcxzg6U&t4`Y9s-h6s zC>LJmMheC29=aD>uD$?odACL+wMI4$hx)nkRssy)w<|oz4FvmOQ^uI2>eWL_tj1NX zyWIb)NB36nom?ViA+T&KAU2L3D-0((oQ z&PHMTDZ+O>FX4ve=LX`gm>AT65F`>ZHffsd_jw85kKexj)x+IQzj5V${f=OJabYeH zHoB%es}h^%iYZD)hKi5>exey}^tjx5>M2}dML-%Shh$t$LPeBRoI&THuc}mmmhUnF z?Qb+osBN$wKn6JgW+NnKnH3^n|b)L^5`ZWqh-8qw*lT~W<-QM$sPC8m>iczt&xQ0}DpA`z`!#ZK zZ0|uv7(LaQjtf~SrYvCqzHb6B$-JrX-y$NDibXmVPq@qPa>z z+(OVrxzzj6bQaC)4>98=d0uo-Gp&N&y9$CgDk_SNV|n>uK}$M~E3WJ9<(#U6uZErD zk8x8SS)(9o@V%m$RsU?ht7%}Twt|GckY0(xKV!^Q;=Y3C&Q9R*@_yBpo*bUdN=BjUjrm^8C;riqei!87kBQ_rimrOucOwAb?F!#!L|{KA ztu_g3*4^;_71kVh`1phsUADlVI=&n>EB$spVEiOTy|a6JT_Uz+5Su|!%xJ`hI@)~} zd{^Pi^Hq`D#q~-|amRzi>s17$+hdW{@Ck@WN#%_U^tWi#*HLD&i%8++{Qcsubv=1+ z#MK4g$IWuzBmU7tLX5begs%ih{Mx0|;YPH0D&_b%C~ z)Gs(*8`{k(8}uD^b-xhsrA8T6t@0>Z@pE})6FeMo+_=+ zzN~U)^8G;8%*;1&anAGE+2xIsqwSvL`OkcOghqZ{&f85&o!|KGzbL4P9^J^UjiTil z2LDmR|Ec)Su0dJV(88>DYk9#lu%ZL=L{Xj14(D~=Y-A-#R?L(uA|7T#2Qd_pq<;~s zR$yXhYugu)+fF1ud)Jx!Jk1BQe&QjI+#F}852hvrPZQwwRI`G& z-)yR{{V~7f1afoMM%fD??LqN^H72WVmt3i_u%@{$|1r?Vjy;smZOHv(Owo zkS_4v*0)|k_hjE>O@%<5A3i>xE;X^#r3pNNDlD=|@*#{b#FD!u53@L@u=0Hmu1y#F z45Y~wTNup2LkEms1QekQ1uw@;Qs)GifC_g2}32QPIk2<1wd|+-;c>Xl(rISb-TJ> zZwp5K+O`RvHIO1oN|Z2C#ANxQ@Q}OU}V(a_jM4zd@nyd z(w^L3>3NPkCzr`0k=uHp17Sv?)g`_d+kld3P7OWtUG)D|Vc)GjE z+ga_PKA1$aduB4v&+oYd2cw=3#RUzI=SrTBnf z7Z5|=)MZ>g6H@2Z5B_W_GK(39TDPL_Vkf@bKepLTxMz8e`$o}E)#B!e-{tv4pjvuw zKTEUmym&At7HQCXN7UamH=N~Mb}v-}&Evgs<10#^ZKKtf?ymY6`2gMZJc8zB$A>aY z;&ZnujbKTd%ETV0(3uU`y43n^Yqi>IbR&LwaG3d_^42^`XhZ%f*gAG%q%zO_} zU2Z;*HS^r3V|0BNyNG;UUhhwoT-T{B+&Ec`#J%GKj2F*4;#=cBF5buYPgesm-A4gl z>M+Va(t}!WIRxQ;J|_GEp{GOPqMP2FMDOG8Ro-8)%ToEei(drxx*H4=N-N494s|3$Zk4tC1X#>;Z#FVYtdLqAW%%UA^E}<_}1L+3+dfrVd)0 zf2F!-fisBjTBcgE0hE#TRy)g&*`Nc$T;cM-QbO-clx<`9S?BAd7-!N+^MuzZZs(f!@<+Lhd~tZ73fix zw0Z9AIOgip&no!v3Ad@`0pLsz`#rQl=nGDPnXY$B$O)0IjAXBfGDLC9YolGfLw0zR z-YYH2f!@8$k?&O_tA2{};%D&egv~XE+o!ufg^p=4T~am{+>GrPT0Y=&t>WkJ++B78 z(Y)s4-q(u<4-X3wkppn4+I{xq&M-;pkx^+7wy2>06-PDZMarW7fxW+;fC zBl#?kj?1bjC@6woUtgtcpAkMn^_W;ee8`9=`fkwe#F+2N6m@g$fq|YlYrovr4-$Uufb7w4+vm% z#6Dbh@)Q7=bJ{%!#kWQimp_OT`L+fYb*4*AzVLkYSbaE0A^zr@jy&Mbm-Rv#p4|z} z&EH-N^!AE>5x9>fow__xBSd@oB6x4Rlfp2?Uj^FdswO+pb9-KW8@|hu6%Pnl;9u`M zs!ma{QvE+{y#-KQ-Lf`}6C8rOyE}u0;O@cQA-Dx6Sa5e3+}+*X-QC??g8cKIbI-l! ztNN>^YN|HH+C9Cx_v+nG_tW;lJ9?ciOZ?jy#2Nl7S08Zner)?6bD$2sYx40K6&%s7 z4=CIxD#xKdvm`L!>EXEf)t$r`Zpsr$i-LEsUBwHyf*15#F#gH;Rgu$D+w)BA>B&{i z>DtyFY&7E^cB~IKihhVFpBP|K=JtrMw2=wdq~mVY)%Uk8r>jV-{bJ46>G-#*2)+>K zH|Vl6aphS%QeKGtJ3G>YoOJtNjnI*dfKk)IZYv{E4AvRPL#DQXl%6T2?MoL}B!0jW zH6@gq61m;BRw6JZW(uz*-KQz~hC?lqnLAn-r zzYHyO zx7CVV@#|KOf)9F=1c2vxNAuddzXyeM-6aHF{+e%d{|mR1j5E(O=R3rlD>f9~nx@B3CHacibazR}r@&^z@?F7@)A_1oLzh1VupB^nwU zP2yOwSOpua_oHms3?&q_$lev+ysFPoQRn3&sdf-V;*X z-(@2>;h<8*yWJ`fD}GMPt+z-=Lv!q4r`uE)~=A6 z|GaKq9b%B^w_6X#v`Kri-|>iM_4Smfpnv*MnZ$r~JN#bEw5#J0XQji|lLtVk`(9tI z@V{Jw&y_oXFqGnK3UXuKG9bwRJaX7RE%Vr=4@+q!Ru2h&$S5MIU)cGf5KiSOR2mga3nM8%^}7JX>mo>WIEfbwJWjRUDDtunJ8aIM zCuD%+VJV(!*Y?uq?(yH2{!VaQTx=UBhq;H>i?+Ujr(QqZrRs~xN)ir}=lPd$U;dW0 zAQw5Mi2F&ta}m$?M3arY4JTR{y|){pRR+G4o`w z(iED+_nk=Yy!PdLBKib>3x3m9@Lt6e&%%}YkZ(J-Thvzc8u3W*J1Q&36U#P^|3Egz&k@d4_-YlpXKqF>4O7x*l)W_!GdHuRC`upJVz96Ra+Bn zS(%jlvVYhZp5MWSP1x(8@5$s0VrsoDvTlBCmmP|M3jld%!>=}J$l9-zKF_G+8UMnR zU4|JFRo%?gJULwdsP9hA`~`p>pAloX+wAYs7n{bk+|=DSkx=?PxBbv~Hz%U`I4n+7 zg1*bGf|#tPC`+NX%|z(*AuuNkSsb*-6ga{M>q2ilD_cig&L)qt9APGf2!i)OkS6PTMp?T%HT-O*Z0=fTV3HrA^h8e!CoEvWD zY43OV&U6P)g9rE4VyeoqsV{+Sh>d=02Sj{SxZBpu@1^OQvEIy%lebDkGVRa1$g5v( zrDl-LC%5Lt!{vrFTMs3?p2RurvCf>n6|ow4v#Vd`P8|fi_<6on`mBpWf|GAFBgza})cXKS^}-Gmy1*u- zY6^Y|YZ%0SP6lQXx+AUb(Tsg9jq{O$q3pD$E z_YeEyy1Uz)_g8KWD6i|@yLtj%$uZw|fBht^JD}-pK=|Rt8;Jv&{p&*3t(|t(-ZvTF z(J^c*u&ItzyG=|1|YtHTNr-@={buI*&X z#Cq8iuL6M1(=YDtN1xY&H+8?`FFTOlUaHX-a`{432n${gMDG9kr}K1pVJxUe9JQ@Y zg64P7|FXCFENj1CB3l35b;R7RsM!B;hk$CKn7*b_B9# zt#|ql<0H>zGTZG-H^5@De!<#FpYJW9p7%jt4U)V*N|oA@k#4=e1W_|w;#%m~N&msU zT$#=-+?n#^x)_}x-y0P*P;k8?*zKX=CTQTwBR->RMf}cF-T+xii7uurg`RkU#)sQ> ze_W*m0)6mF@8Cx|an}}#lkN7T>Gk8-g_j%F8+Du8!$DpTuVNj?iMS4|-frZceD_Fj z73b}rGY?yRDpzOBFHoeS>%;FTmVldGuCy%yTxUJNn1mgtV$;&ZZSV)vwUxui#5$R8 zvN}q0XbT{X=3QAupfF zAG$^uq9*8mO93h^L_F3s1cjjfV?fOXBoU^mSunN(9e!qk;HwL+UYD^i;hj;{Ke5qW zCy)YlJHW^iP;-O}6-i0a944pyoqUk9Zm*lVGD#3a?Qx$ez;K<&do{D+o4I6qmh~v$ zq+CCgBFGop_YSKf%Efl9Dt@i{b~AKw1rx<2 z?dcD+V}NRyLM&hP{5=>y>#e?!pL)hjyE8r-?sdzX`Dfw8Llkhsg8G#kaT$jz%X@^gq4i4lp#Cj7Q%z{%_V`+dQEz$E@i)v_9!+o1nlUBX#n%ATA2Uu6X z&L_T9oWt-QVG`5`yh~e8;8m$!fx8{%ROj(70o@^EYbamm9mcOso@ToCnC7bD4Q!jM{FSV-0oK`#yY%k2d6RtJ^<|Iy#x>g@7TAWV0B7hC&Agi#G|#2 zdg?{oU>r}$16@%Y*HY zJ)K`m7ou}xJxhGozQ}`B1$Vl#f3!u9P`^|fn0Z5MaIyTB1;B3QEI|y~H3PdfMZZcy zZr_nTJb^xJ*WZVRp)lxr5A|i1$pj3;jlO8RyHoJT#3y3%T)RgOM0_L;^q`zRTq3n;y=+60Job>(_r8+h4c9U3=uJ+ zmCcPSmZ3R}&w{{n1JP@JqI+n=o@M{`3v{hJ0$i6ZuHh0R(wnCU!43kJpCfW@i#lxP z&K=2%H#j7K0Wp=qdbO;#_e&-fLf7}nUv2J}LGSGiXI*aLUn=!pT{4G#P%Dn@{AHrj zw23u)La~2ckNH+0HJc1ok?et2q;P;(d3zE?`-N>gu6&eGApEv(*?z-DbH}w4!MuLM ztq&VwON9KZ8u_r6t;7%?sl(|C?7rdwhkb&U`Rd1DMQYeu5co40)o0JKH<<#J>r>0b z>4?;Q5+q&SR}_8=DB?y!Y#0{!`X`@gq$eMRd#0X)l6$Pp$*@mvK6=p~|C#py>86Hg zC?(9x&0=yUk06D|6(do|>m2bF5_0>A6mSl7S_b^0aZ4(7WZIEIkJ<8~M*Cxjish}# zVwR%G9tiy}E_yFkMOsXti)TunvYyh5;MrrgGMy--9x0IDU0Ky%hz0rXXzEQqzwQbG zNfHe$P)u(^sQZ?{9Mf&J1Xewenk7si%i%KP-LGp;?eOES4iWgyU{4Xx^84Sb%L?7U zy#Sv)*-r8l2D4%QatQMVQ!B09&ZYE8#Km`(1ofepC3dqS9xFuiC>jQUug9$5` zZD3Y4{+<#=m8hdH);gk0`3EQ^0^vC6z`!4aUGoYG_x>e3=&Khj6Ny3! z9w+n2Yxq!a0yyN0Xn6bm%ne57D?=EE(DNOK|yV2N0~FfIHq$`skdib#Z}X19Qrf2=v~2n5j_ zo96Z>B;y_s_58aA zJc0=uX~%xl`RS07bycw z^*A9a5iaVlEBr`?c!Y+l_;5>1q&mLrhD+m;Pr* zKpGjd28-tMhf5~UxFdb(2xM+YetC!{MFNWO{>6Q6mppp2pG4W&8Qw=jCGwLkfdCyF zPlC*GTjBfgnm0&*y(i_0SEd$u`h3s}>%TONFkBPuAx8PnZg;Yf^E`v&*8V0vbAc5M z4hm2XVsLh1phdl+ci-3+gd8SeaI>?2IuZghkFVZH|CcIJVXlL4dPEv+x}C+am?YpY z7YRZh2yxEjzW}Dx<3<8o{>!TT$Cki|rf@Q&)@qlR|3`{{Iiq?4_dIDF=x)K~2YoHzLywr!MEU=$)C_#9NW$&t*pi}GX%cS8a}obdtkTp%&*L={YfVv|Tfjn9X+TId5T`H~r^^X+ztjnUeBfgW49fvTdWOnng zrkALWZUtYP?-?KDi(7RDr&E9TO?}j6{I4dj?#87F(Q=`ovd|4ngBVnO#)FA|+mlr- zIQ2EC=k-pUL`NI{T^<1Z1|WngPZ|k|s{F4HL--ji;#}`I-d~4OUn{w9s5hUy(o}|h zA!pd7%dPARtHyBoR(u(ouBc-5!~(8m8AM ziQ4<5X51}8t#UAg|5$%Axp{Pr?Ni%IflAZ)RBCG_9kU^g1*l-chw9p>_R=4J2%=>z;QL~!}g zJz1}N!wZS*wg)w0IPBX9zGVlafVHN%RsQ5@F&+{ zj(BL&|ES+E>KQWKfc6@Oy9W;uwG+n1dB4162jRb@m~Y-3blg5yv}V42VaT`xHH5N! zE(W_D%LDA*CZNZMuxlaCJ&a+Q&n}G}uJjm~6mdHTAGme;kO+>R$K(i7?7H8Fwr1}A z@aCTG+-Xc6eIJJrRQZ3Qwvfh;OI-F|zdG?Ro%Yk}WJA~a6=iMK1rSd6b7{7MOv+{w!;8@Kd6?Y^WnGFT8D_rUuAUi$^% zfT+x5Ux_lAf!-=X*~7l@&=8IBQ)Z@&&Ge26drdn)p7u9`(HfbV-MNsP*4q9C~))DF=`?fE?= z^=XbKDpq1<(_~fy@!!uvO)A6%{~!_D4>WcCaIM4LdW;ca7lQ_F2H^?+;+2V@{{&0_ z(#Q1+S@dq<8d7pMBKCh21d?G}<~Pf4W_sZHh;)C-5*9xs0x$`lO)ivzDs8yQjfu<# zKk+2ggbToQ?ka(v8hWC-3g*dpD9X;+Si}6FAtNO>ZWQe_u3xjbACs0Mnadh1fNnM< zB2g3C599*6Rqx|V%uf^;?cPot$6JiaP_R0je>3hpa4HYae&gWj)Dfsf|5qJwaufPUb|`qB}jFtt#Z7616VBoi!CB40m^dd6oQPyXERf-Vns7%_v&AE@|mO zP&0$BTQ2%@)Tlv)yLo0OIX(rE>ySD_9adVGL3&2YO#R%&(!``>h6Yl6Z?OUYSfeTZ zzL{QuEaM`meB-N(OBmb+bWv_kN{vI-_RD{20q}I+WTi7<#|rsJfd%>br{*WP`lz_T zdEphYk5{ePvpH5#eQQ3Q$;7X0L~w%K93um&mKlE76y9w#w3ein`oqh0*nCrGIBC&&R*>HUD@Mt;0`u@ zBNJIoHYbH4BJNm*t_tBC=v>&ICDqAhR_7;7D6BM4;dZvu`fg-Js|I=x#?)3})jS!@ zMu-a??}f3>42`QG-y&$!erMQzG*GWb;yI!@S0+$i?&EoD3lYHv1=&2qH>? zR58qq*zj1>W=G0u0_)pge~K8g5Rjl5dk`hs1k_sPv2BRT%OQbS`8U5x>`zEZ$O)S5 zZFc}v>t!b@oR;6`<@?fxiq8Tjkx-(}d@d~zMgnN#cME^>oxCuG`Pm20E7KG4Yuw7^ zAF3-`aK)uq6z1kRjdM9`3D0rI>+^8}9yQ>l^ta%=`81rGQdcvlFO|XptckOVSz<#( zwGkx=nMKaxEd#4hifM_w!iz(9sK4re#IP?j%bMN(WZ=0msL&9b6vW zscb@CrE`?zhS}#c4-e`zH028QK^QhSoyd;Bm71z5=vx)t$!xEvO5h`SjA5GiMsaL6!wsZiS#Bx-#&P}&%ESILBKUTP~ zD5J0|-ejjGh)a$2ID2zVX`kA&$YZm!&T#C^gg@=v{l1YbEnfhAmZ@B;4130J^5$5t z6mN%o`fSieSl)-WH)HbdTc09Z7(O^1L_{wq^1>CDsq#I1gWZVVif)o@0q0GiDlTWp z^ZcBau#?-RzXScG5MfCh{p3}siLm@mRN0BHctl}i==hRX0Uw2FcRE`ajlxVFr~+S=(WH!<7lbMhe^Vr8V)^z!kTobo)HFE6&d=}SciVGgUJJ#xy>Jt>#`5oK^h^C6Wlwxf7{orG7X zgG_(&!3{jrH(nOm%njYjSN1e^x|F$lcnsri}ci z+Noie~*+c^0WiV#7ZRGjEuc8+FMRn1l>TwlTh~* zW8C8)(7UUoI?zmxX(2LlUi~P?hThma(uILOs+9XdJ@frNLTW zEnAY#{0hgzwshHQskX5vw8WY3VGSXqVSWaXVUJ|Ty_VLnzeJqfAc+0YDOWzSB4+&^ zy~498UXGm-vrpW=tOKs7C9T88hU4(3rCt^{MKt=@*}e1V%gecuc3s-~sv7cn1=&PP zKyNJ<&q(<%Ji*Q`zlImvTLMlq2-FAd;psY^J)GP602YaFe6pO>mu3T^>1dkO%8IV+h^WPa zH7GKC*J^xBrKte@UuW8z2E9v=_8@N6;MM0|!$V-JMIe)Eb&)+1D3X;DpQ-1+cfjwki39CmpV z5dF*}x*-mT)TU@=ZRY9Cd1kb_Tw8UOOO`%awdLCAIvA(lkZ~GG>y|b|v{%UfA3x;~ zuZDpBEzD|GUZieFl9vtizlU<>C3GlUD31yjJbNyKORHB78wYiLN0`_!kaXH%b7o*0 zg0DT*Oyp8k)c?MR5^xw~;KGWyA}LX&^A}UmvB&KWm|KK}7vRl6&e)V(9Hc9SkDHEg zV5~7)OvH+{oX(p&0o`se`?wG573LdNx|b7yRl>0f8!L@R^|HVm)7Jbbx`M4Ood;#{ z-t0&Sbb5jL+pVkZc2C>Y;U$_cRhYy$)ZWOX+>ix_;WT2S3)2edTrnolXq-Kl&28pK zPyuH07*ic!(pKBi|2;R(XO(|5FwvqFGlO(+5Fc-`w0PyM0f0y28M~rkzLfNzI3Isi z9$_2WZdenh>Wj_CI5bj3w>KPD5LwadyYAKa3jIQr3tqsK@y5WI(ZIM|GuPfgC?`%E zbOLwm;t`=Kwm;;mf?cazC8aGPF3cfq${~e20=mbEqyN%M06M2f237_WvWhKWA+e>O zzL5Uh&!-rt?wdz7*Zd4-yqslcC{G5Fh#6WzncQ)Q3Q%j%BsSTy*McoqCCXMr;IY-l z`Q(mviXE+J3C(=8h(|l1pwQi|mnV||Qrc9gD4S=iS%Gb6wyDaGNugWlr`@q|eB5B* zBQuk=w_XAsl2!(?w}0wxDV_A(kemDNN#0NaiE^G;*&JH3mXPTW=rZHP9*-Yj@EF+T zA=VrVE;$oSlv^0Vf|H^??o2gv)?54Q42Uz?^Y~Jsev&FoxNuepr#!M$jGIJj*QJiu zL@y`22}1R>$?MPG-GQQdMI|bOljcm~8DHmN#t(7Yb#?Ed)3Gsn1|O$eD*P^&y+-d; zq^8eUQ^IMcrl&RMe%r{t2zC(;p50|mR&YE}D(R#JvC0QCk!JYsax6C`Hact_4aBG0 z2p2(RkOpaV$7DpZYK1Ci$%YY~XMpRLNNGwaSrUnNAZG~r)t6&%FyXsixf!o5zxxu% zafLF$&jf9HTdx(7RMaQP8Vfbva$yIS%8hZP!yN7qDE>1rLu2h$XE|+l9v|gOqnA0UelR#Y&8~wbd)RcKmiLJF zal5UIqWpeVFtG}IgPjDckOj@Br4~G%khd2%O{Zm6f(RyUR9721wcelhw=p|ZfeJvG zF@7J&iil46s>%*8!_J9`)oRUEuAAZPNlJTPdps=%z@Wj@)6u)CALA~#6+I0>hCBX2 zpXz2@lcK|gjW0d`Mn4^B8-`UP@{LYX1HFi_G`bU+PtOLXhIEO>IDTgCPr;PPD32wO zdqj2`v7kitRMDX44B8pAk&;??bR`${Gd5?rd1bKmq+%+^l3}=$b;{|#2is6&vS7)x zrw60lI=R$>bBBbdPIwpurt54lL)XN^ol*4edu~fbZVScH%GF$ixy&x`M%6atg1Cs{ zX*230IKG-WM^iEj=z7!ae#Oa@5jP$mLy?s(s?A5M_-41uz5Ykfn$Uat$6!FHY2Ime z0Fi=tw*{_5RH{iEhpr>cjj6W9@oh}DO;L`Fh_u5x#jg`qbLu(8+9cRt79n!dWR#4M zPNz7+7#X6jX=xAmYWBZ05n*rSTNVvY^)0OvIVazSts71=>;gs@0 zXD^nC+*1a&>RA{Wi>%5->JdxnCnHr+dkDL`=;lvCA+^R3)?i3eMrcY?bEP9hk_u8} zN#9G=(46wt@TJywDa;@JE$7nNv|ZdvcGLUd{mY*(9!)9`hPqLt3K?s`5r!H{IFHRM zn@a0^UQ&=-h_2lfSsBIj8Zy8)ncjQz`nfE!)89&?iVZUe=6!8CVGuwWlm9R~JrgXk z7K+5ULYi0-!5&YHZC}^quB)-QK2bSiwQ(p4as%5|p$^WP%Bvn@mmJOkwznu18DU|H zu+)2gwPO(z89%Lx-*~B{htbtHwb0IY^z&h(D4B3~~~Id7`_Q zNmn1oOUbasB*l%KMj0(~DOhu``B@%5c--WI@w@pg`(GqbN0ved!Eg$oAL(ZZ`Sj_H zCt+zla?Gu(4z9MsIG+6+ne~k#T-+m6`k8kW06&03pB)yGHkzg;^wFn$vp( z&oJApKe?u)1i@1nQa24FtVof&^&b9_LetW2Q|zu2tI>8@OwI`)hgqoP9xT%F_OF!qjg;TCi3dP^~Au_lpV69o+UC<+y3a^>-S~Oof8~9NRtPWIEYZI(OJI za_p1&%2ssYBV!!KVd_xpO4K-!gu33OjX9B%oszq|5a@~p5d4!nGn*ST@I@2C(Z3o;Q8}#e>58q@V`9>z48@QTvHwES@u!~3y-iE(HeXB#H5 z!d|+q$9J(onr`OOV5oA;3PnA(nJHf$wPOjan1JyhUoCUN;V`(e&zU)axOC)&)&=o9 zuWoX;Bs452Y8i_dOH!9r$E^x1l+QcQn6z|DvR^H;3)+;!R4wqHlZ6Ke07^_2mm!!+ z^vpvd=OrYzoQX=si=z8~o(Tg~VRDQk)-6{N1eQ)azbE)$m56c#% z#n~(P!L;mIv!zsc;kynE+_1VOBGCCkqhT=TTI7fAMs)aTGzt(hBI+bp*!2EZgg08u zx;CV3o`AOFQ+(TUgc&>ZnWY)D*+l`3a;ADX4~)^!gNI$`!~MfkmbC8D`U0nZGsnh9 zruJ10jxZ_PEGW5hWHEhg?=VC6d7ku=VvCgS2e+`RFzbeS7t4`~lAL-L1gBQCj-ues zROOKPb#Wy9k==ON%)O-nmb>5pRdQ_52c=qMmep9}3< z1R-e9x=?C3=8gXt&xqM-Mtws=#;19Wocoe|18F*k3*SHxXZ_0gGD8Cf7T2DfmfS5O zu)1KnxMx93rUgVsKowM_K=HBVM9{{wYJEpKWto@7&vkD#Sb?Y9T%#$ zHa%7i)2eF2m7OOKPl4qOMjnl^>g%Gx6HyHX{tu=T%g(Q~gs}yR#Y*=sv$LCi-iSS+ zTxJILTq;Wi1HjxY;Uo+mMwf)d`Drt!?P_fc+e?29$kmw*#hskGoQPgVMh!ybb3#Ur zU+yz_5bo+U32ruw^%~aL7UO5E=J>~JNeU-K^sd_YocMG&vj*6uTU18H6&3ZW7_|j_ znGq2@3GpLmVkhHL__&k;^-T>1E;OO~HsWhPdS1h_Ww{b-IxB;pBO+M2@zdq`ijh|G zEn8`{^?QiQ2-_M$Yag^NuIBPOB$r$ZlqD#<>zgzkcrupPtY{eOpsbg0ONvLFm5Rku z$4@Dk+ZM5B4QdRV8kOpDpu%}0tpo7p#np;vmerNTMS_vqK)FInr2Au)kZ9J}#PaM8 zdjU=xwR0{6q=A=tP5xu&Q8<^mevdO@myWpSg%bSk@5}bu42%0Y4?G81?$J%eb#<8|n~gZnL#x znn$`a83R#6`B^=;a+_4x9L(n>#(k@;cU?;+)g7!^v@2CskkAYGN*K0A7p08Z)2LZ$ zqBcHsGxjs|Av3fC7!5}%Np~b`Arw?AvLAyOVKTfY4#M00@<<~iL{^S!GZzb}U9};l zZ$cS7;21E<^KHZW4RGov47AV-82K<{3(hA8s(>+?wY0ucx!+WoiTGtBS^inTRYjqL zR--U_BI6*0kO<0x>@a^Q%4rGpKCVVfL=#wU4m@JULPSW;^ihp9?2*e-Rq=Do!YQLW zGiplHApXV){BdK<76)mP@L3lw_@?rs8k^Yu!ULt4+C;{=+MC+q)${!PTz}3o9q^Y? z8gr*4q5}-QAR2Tw$xzLy#)lxDva!Jgw7T!#+cqLBrG*Q~>%7Ptzo!cOEgBTIuX}aM ziWk+^w1*>s?xl8wG`b~TS_}Ekya*JxzT@KBe^P2V>XnCEC`eXWP?vQWF+RT*|JubC zZlXP5|E-hcoeP}Rvfnl7X1P%igLPzI4Ku#P82+}j{YwTwQ-UKVw!F|}&O_QFpNl>E zbOOqxb`l{?LwWIsN=ym9N|k&WVFKK~dU75^N%npXZ#zwh)MP;|Pe!;;Q6aZV`=szr z(vX`yy69kGjILJTFK_51B9z0FaPMx4RtuAYI4!-%vi!hN;E#kHp>&hNcHZVtEUO4H zPK-oMig#$%@X+K}&_fZb-=Dn9t(cV^D zx`0`P&s5(g-|?K7n!=u)zpc3nzsCQn5ef;~h8F?xSo{wLh^k}c;rbbse9=iyR@E7= zCdlKi#*wxiCfY3Ye_*Mzc;$dIb^AvfRg$kSrHlmg%d4Q_XLv)qkpSFqYTYvt(PVpc zfg^p_`-%L%!yVvdL~~u9`wpGm{Viu;yeHWEGrawJG`1W0$O+47Dlgh`Yj?VT%4p+} zT~G1o`X500_ni=CS3Qm!?~xkNc%$nYhq?0^`7)lk`k@Jp|7Kr6hg?h19-36`e=2!E z+LQSSUiaKNBo$q+*fuvh-0*|=vGB-k#T^^)jcJFPQsFM<)x}5sZ_{tX({G_pBjo(= z_jCMr^8!5jcKbHe&ruiqzZmIemp%it-u9`>eKjWV*IXS<`pNDHlKAcE(d?S+$6>E& zVf8-)2MQ002ix?ChRCD6Fc*Z;S3o6rIat8@blmI zNg=ytnBMfkREB~nqI*tNjF;3JJZ(VU1~EhJDpQ7Ak}D*J5yZ(@94E!Cu`k4&e|{avte8WNXNc+-^`4 zQxJ+?&)0R0vpLAFyml{YVj$sJDpeBD8uT~vmZQm^h4#Ks&l}I)xgAjIL`Km62RU1( zh^+UOwfqgxpTpxY1I=6?5n=8WT2Rmj2aL~9-ntzwDH;=UCx#TD-0h1nUkfiNxQii+ zG7R4D_w`4*6wU%E*RiRK#@vaUm{NM*m%I`wJ9+7R4);sUiA)^=EjW8H11VBiABlL} z#159c-SQHQG#D=g1>QXsh&LHIi3Gh#6%vs#DP*KtD&qczGaz1~EC1ZnJL!ks^vU%o zFwto72L9cco#}|2_1l~(qQTx=oSS%pEAi1yGhxA@5D_m>O*4yOJN2ZLa+HBxq}0tG zCrIQ%DR7E4y{brNL$sVd%wyMV>rmc1#VFbS%^5Q_h%j#cvoRq-hlJ2kCeGQYt$wyz zxm3`@u-2uSS6iADw5W1pecP|yM_{$?dc|yOK859mU+U?}+{hZ`#oKI-zsX3<2369(Y~1~xPVtxGAH5~gb*=_MoF#$GYMjvPFo=_ zk$DyVK<7RCRn8<O0Y2%W7_ZVo(o$AYq*q?7S2%2RLCpO_#&lBv=dbjV21p`4Pw6^IIavzU z8A&U7Xhv5BNh~~?am4+l1Wn0+3BD+#Y2nE*Ip?{Fq#yr4;4o{p?d?&N<~H;D>8zB< zi+0GE#*0_WHj#OeqwO`TtKVfhL;L5I8G3^G9`_ApIaKZ*>5UIPX=FTWoB7O%^{xaR zFXbtIPOYgHQpc@q<2b1an!a>n#YIJqf&foW(%RTGk%9rhL+xHcQ9%N59^oYGC>aE* zf6u4&>lu($kRW_9Ggd?nv&1_WebgEcHM6oN1(dVKTT~7p^Q<|tq`{wDM^J96Brs|t z9scE-mLldOYV#}}S4n1swZR1B<3l>e)(r@6g+$0s!w#Mdp&x1M_0omph2$|TQ?Qd zKV+m{~-r+0$2a;~~MQuwUmJ9a?M@*iymrGI10cNm}8`6rj2zRp0Gm z=iOs)(DO6QL~;cuWQBi&4wC{uKf&c;)-O+@0P^7s!Xav}-?BB@HdzgCHvhEm(%_ML z^bE(Lu?$Ih_H;t|YzBQcG%q;+)n&x5Jqq)fyR~8?xZsu}AOWb&*gzymn!z(qgIU2L zITFCO+NM1!$0kY7O`Npe(N^Fx0%K|FLh{GnxpOMocp@<_Zc(bDXd}<)m&D>z{l2j% zuiqzrTy4RrNJre-2K@yie0|?eNrHE^FV&IsLPc;vUoc*Qe?rOARL!c9r+8ZZ&9%Kd z(jShJ?2j1dd;2ogj0_G2a^wDoKZCbX_>la%E2lOIYWT|ek>EWUqK)E>V>1`Haip{& zbX%SpydG{Uk&F++Ly?kDAc(_504dwiZ{EX0 zW60FnIsutLkl|vZ-6JpxU*)QbAsHEnd|z`>7N5WG;u*Ye<-8%Q@ug**Dn1vZjye6kxff?;hyvATP zD~%wjFpX|LZe;vD#JIR9nkd;H6!%uhOXygEC;q@JkNOdnDnXg82=(Ej_5TZ64I&WF z9V#oONc#&StM~v~SbMzW)uJ5E7}8bq&{X_A;yfTg?TxqGz%VMtWb1geJf&zGZODz9 zmxQCDxa=ik7Hp-=oSeEs@HGrAr4pzFctt2R*(Od;NqWX!YY_g1&w`B|v%fADIS@Km z8;NE2Rcycv(L(^niM4<>cCV=7O9J2;6(wVCyo}0}P^`cm=YiMx6>7FtdAiwpxkGk! z5d_wJMtA&;w){K!B=AWA$92+^QTS(a**wi7j{Om!vVK2op}lUkcRnf92H}cdv>;pw zZ%L_PBXVRdlrDVuWtq<}DzGe7=qgNdPDmZR1nGos-x{B{jMr1!qTwOaOx7dXTb|9< zV=$A7r=FF)hYIO$Fez&9)SJcJ<3kJ?^yjOOk8h`)ui#eINi_EKymIK8;lL?FPG<>D z)RnnC)G%#s&8Ap+o8O;Sv#9i6yYzL2?Nl3g1hnrE5q}06oAea^ro?~l>Lvi3Sn!-^ zXx1VCg0eg{&YMM;91V&muG{uW)pbTK?@pbGU0{$7d}3UC<@F8I$1X-r%_ZyF3VLre zx_wJs_l>)aE(OSl^w!#FubzDxrCP-gJk<3?ed?<{vRSSMX>H*Kp|8@oItdF+O8UF~Rt>w?s*16&H;ViM z@-EOUHa0n({h<@5`T3oZ8I+HyHhoF(T6og-00Ott(q-!qv=AoMmwYQz+A8|POo+JZ@gN4o=JRs@j_a*``U?On9AYtUj$;fUQbASG} z<1;I-yEHLo!IS!2bqkYZLEcd#8nerA$|Rz2?U5pZskyY-|1~8L9nFe`f;u2PP#%9l zAOVgQ;CmVkQ5q&Ue?fZ?yZG1Mogc$4ZE9G;r`nkZ|_xVIF^h}@e&0%fW*`gD(VAIn& zbWt+n6kYcebH~7n?x>t!DHafFj?hMIL?m%|XrN|X-qX=+BXFW@tvitF0b_`N@T$QCj`i=@FizpDxv6cDYbYUS-P);zW zD9Vpr?NrtZW>h6$=yPRfUXmTG%<~?XD(Q1R-~`n!LB?o(|E$+E>je)O`BK6&vj6ph z3C^kQyOG=Pl!>wNU$QXPL~F9Ia<0H6jDQ@TI^MA`*{2EZg~rN!PBc>nFGHRYHHRszUyPgie1Nx2Ke$o<2**-^P8yCGYCNWStop9fAk#ya<1^UQ8PkXN20 zGk=()$U14f?dQt7DFd%86vB@>7`VJXnF{iE%I~u1wILxiU`bWIZwLk_R}VOC`i_}vNJDECiTQmf*cm=o^n}Frh%Pm)<8>x|Ie1JK1Iy^J^s45AooVP+S z2366zFKXV=OWplp@gM^Vh@FOv?88OCwOC^@u;a^th?%sdRb=3 zIwMl<>uX9L-8k-dZEZm}VwsUJIi1m7R-U<9RmW|h#axXpXFzP-#80)yQRKD%KzPnu z(K@Q=_JINfjSjkC0Jo9Uu(toOCr2-2qypEPEXyq3fS+jqq~pPil$2}yi_p(8MqO4z zv^Yp6HQJR5&nCZM4CdI7a&VFfvOC#_H9))=tEVQfpNVsNLlP0is!!w+!(qeavoHt)e-_up({}eq81^=HoL2Qv#cO2|(Ge4L zgKG>mDam+s6}HwL8XcRbUUg&d{bYNiN0Q_P*?g{19YecvncRj$uLf)x;!}_?!EbFT z6v}rrA)y>n%5(dzA}0&0sAhIKy zBZ*ozY;L}Z3J>_q1IKcxhCqlkHYi5fI-I;gUd{NhXUCW%1 zC@33wwqC;BEuP{aSX&}oae+S<=zDS=&M8Ptw`8s-QPH648-uY&NUk*gQNtUXds|=7 z6P_}HF*8l@Z4Z17rvVf#{FnFVlUOaWPr2DBzTZ;RT!O?=cy!e_W43(@Jv-CFV(^3F zwYZ5dHkb>0vl{sI)WyZc-&E+HrizRX%A7>Gs!UBQvSHCcOpS8_qCHmK!7*J7c!fEr zTvxE+;#4SZ$3Hjr*x=I%oCH;ELvv6^t`Mlip?$fy(MK{6iN2xS)=rLZ&~b5m3MT};WFkCHQnP2`Uy*`fzz8$kw(~rA1xjM>t$()Pp(RGH^5Pehv!O1-pBFpCc-Vr>np6=dkd^hB>tjWGV$&+VrJod$gkY zvz}SaKtj$Ortmj;fMsBhRJchSyqC!oNw17iUR2Kpyib3icn+k1Hh~mhSyR6EeILH1 zWhOTdS-+}gVjJyU=tY}2kiD_+J(ojEV`7_Ou;p(>NoO*4ori)(6nLt_a55nIbI7*T zkFXmSkq0wFOiU#xCIeI*n#@Or3OL`RdG)~?c#-@n9s$Owxu06Hi+ju4ly&WCws}h) zZM@Rwt1#07G5$!3vUJy@h;1ZG^XgM!l{SnTZd5z(D(g!FiGeUnWZuz}2WZ*px070C z>2ws3=+Z3smfQEq@C59QzeFmMyTn>15;&G=MO%2D;>NHO2 zv^9rjwR8Y6qa4VmQR8}Zq8dH^1$j|@UDT~(_606F+{f&^*O|;7a{d$2#{sSHXqyUG z>tYU`kz^Q--kz=wJ1W&Jh_B}fq#=3gIFoln*beX215#Mv%<^ps2qOp?$IeIKCd zwBN)dP$)DmkvgDwd7~^-UyoIDn%mk6Yt7N~5~>eQPoLlC$P3EuLmm!LPm7DuO*lDp z?LIbH*x7oft!s{7hjMJT7`>i=KMKK(Rkx=QY5zW(5|%WY=JMlgWsrCNIGNY{y;}OE#^pFBkz|Qe^JL?Xh0Zn>26Lvc8Da_my+Thau@)xSTrOvv^ z;~F&WUyJVkg#9Dc|}O*_33L4tHr%e=zft()LHyHwqCnq>6U)O#ufGU{> zYYBayNcw&J$vpt~Pp12{=-AjI3~}5FyA=Vrj=%W@ zI`QHUe=`4R5t9CU>2PSsp81>pRe+Kb+5gi&Exh|PfIsOy)ZhC5OE>-}dH&PbR&lMw zC-Q%KU{Dxw8SM9p(8qCNx(Oq)Q&#?-V+Q$OLs>RXCU|`kjDW;-xZ`zf7$5LNkOfbJeZd7YbG?A-8uy0E)`NRJ9HVy zzr;jGRX>796bjnYd=#hTiK-KR;znLD@+W;J!icY#aWCnG>PV($%};4LSddm8*zZS4 znO$vi)rRY+pW~ALQJW#;>zJVyQ*&%>Vqc1o^Gf5U>h7qwYd(PSn6)Nmu(dO68SxVy zbc#<6Qng*tA8r_8INKqxPk)zM()(Qv*OZJd*}dBP*6zk7 zi?S8dB~WF>d%o41x7oe@ce+JDwfzP7WaX*9TZxu-^h|rx&aJ+6=$?r06s2`RzTbMP z|6OCPy4m(OZ!eDrTIKoULJ7#v%9h1_rR!1>vMEYwA@_U1m~73Q z<`hy}9DG0r2}1U+tm3a|_%Nky>dVY3FhhB#D}ZJ|{iFPLee<-lVB)k7qlq`dDq;W8 zrCsBTdSLSt(X31xjPGr_H|PiDU0t(_fT)cz)nNoCpYNAZRiKCn^8ol;uQ+WEuU|!v z^y(FGxG_txC@@*)^a9po*CZp8us<63T>o^3pruk=>FzLx4jf)9yH7~~%60XMU;>gu zdTqKq-X>W?7Mu>dA(yBiakEt{r$EvC+=4`-E5n_9=$?I1?t77}Cm&v#8R4gid-LA+ zzJR(ZqOc92xQ#MYIbXZTl=hH=>?@wb>_OZoD$Z)_-1dk;EO)QBZf#)~p~95XQt*WD z3yDJSjNAmlc^0F|<5c}c1MYJieAdk>#ud1676+BRlR{%|y_U(zKK5gQI)@VQ&A+a_ zCikztPfd%oGTT6I6!~T-hWV*h@6JlbVRtv-^hS9JTl=bol7L@E#q&Y)B-?5chBH+T z*4y$us|;{f)sr*|dVpLWf)~gVD12z{zu)FLCn64y1|=_o)}fcaB+J}pFpm#NHI=NW znCVT8CQ{So5L>4fhGoMop^F9@YB1}&3)r80v+{Xa(Ba3klhv@zA>PkfKF(_`4saS% zO|$Yw41M^L!lGd>)&%)+RO`i14wBJ+qJUp2rgz*;$TARj)o3b7vT@hoPD{)+A+Y^2 zi@O)xPUtTER!?JaR?JgOWJu>u8sn%iQ$|JD&K^}SKx;b#aZ=^5mvd&8sA-YjUGcUv z@4!;KDaNDRWf``g;c|dAbwTgj+1xsd6~(*ERp?CWttE-;b9QC1u}dkXw?C(qO%S6| z>Qp%O%t20sWi^M?0ouGLX`QJrNyNFc$N4;8b)BM99~_$Uhl~ZTB|M#g2H~>(=l4H{CXGzJH#=A%8PeT;AK4ejj^W-lI1eSe_pYSv`qD6TOd; z9Kq#1Vy@n@5BJ&d&=K2XcoCj)^$sL?hg0&6DoD_e*7`BP2QCJ71OSZI++;LLI-W`U|1-YF8Oe z+zv&3itK6dORm2fEQlOde+$-*bTGKam#v@c-B~6g4Quz)YFuC=1?MXA0Mwx)L1o6Qh)!O=Q&VpkX$IOjA96+u3~r-AEOvy%X* zsd@HzxmWb+h^cs!y%>Inr6p#e?d>^7c|W`Ui*MXV)OH>@PXUiPNQ9a1Z1S2s5v|qeBx8v;40VuDY9<|A zU~`H?#Jn%bn^Ry;uaxXEt4B9hBcmuD%5*C-$mj8(H24*!WF}it;#ojIKM{6!Y=k)C z?CQbj_QufI&rTD9a*8eIn|k6xw#1KTLTEEfh%M8i_NE)%zLQImgNK{zoxVpk2>W)H ziUoj;g2D%ykDkqZ4qJ$lXh(VEeknWZB1kzT<#g!|YvYMX!UX)0BIf-%h9Q>dGu)36 z-f4Uudx!|>%RPXi!oxV0yP4OE$xOqF#&0_moNC8me;jB7EqS?J`|&9{4G+<7P_zmU z1bgDej#bUjnKaP{3<0i>CJjqyj$6M!XbU2F5v85enJXmWTFK5y`F_0h4_Oo=yIB31 znG)OH6MK*|fB5Kmni-_ZE?Uj%uq_*Xcg~XCd)#ulp>uR8&Zk?SIeVuru;v*@<$a0h z$~8fzSG2OCDUf6*>ntqbmeQt5ka_C+8-P&Ec9;HzP*Z>}>SpHivofr=EnOHI$&U$~ zf}Ezb8!4xvF^x;*c?cjDBetQZotTm5t6dgIGyhr9A!lQFATCT`PL9&^1S>gdMoNlk z?2u^4sY~$PVfv=RzWR;W2clDA>kcDLV-%!Xm1iGTM@1?GG?MJEyN1CRx9S#0Ph6*0eyzqWVyYG^D@G?l?|gU87DjJ}wjh=(s^{sH4wU*%cl?tavz9U>7`1rX6i%3G0&3lynvQB|E-5l;RS7BkLpzV}VRQ!|bDEFm<0AORRpsBqA*5tQNa%&u*x zlldyOOZfzGRJT3|et)5zvxJR?XB&2YpODUhhjOiuX-F4%1=pbm3j5N#uP^uQvjOYI zW07Uy^?JpkLn7~_@|sYRrj8Lmi&(U%%LeD(5g3=Sm4z6McQvy& zWwToxOLQ{0xd_w1789))r?@&?=F~Sg8xsq^()%rYSOMKLb$pJWu^TJgEcMS-yRJIz zMJqu*8+Brkc3ROeY!f_g+s|RA$;^KlplMrJh}6Tv7L&YMJiihWK&;ZzjxnaHBrrQ;NjNIRNQ>{KF7 zOe4E5`KWDzGb-OUC+jiCd~deVEah1?!)ZWqq@1AMdiOag+3=T0h8<_b2Q&m!kHHHz zmiXJ=#ScymQ30By*WQedOC|Hm+%;TD8ytE0i}?W~fa3Q~&F6g1JJRlNu4_r1pmJ)1 z7iHdd3+>}HLNxCs=jLrDyGpgyu=PtpLp9>BDRy|hfWnIg$7T}ehiC9*FL(ctR(5QD zy8?rC_Og*2g1Z{TQI9x}@vE-6PPIyNJ$&3$K=rTCqLzI}<3f|MHN5hDs@~@J&O3%& zJD)$-5jgv#I6z|sJflz}TUr(OY)Zw^*tUJ-Ys=c4NM$c+D}|5i4z11wC6&@b>-l95 z5fnhvM(X7E7s}ksj_H0k8D{KG5RzL{h0Q>@brjq%Eq+|Qsk8Lfa~W+7aJ+Lfa&mYT z;KTFCx`o*#cgH45c7F7aaQ1me3Nw2C;neS@{Q-Bwk^F%@q6AfQu4B);{48Aq%^5uD zrK@wHm6bZMqRyz*K{(~bqbZ+(>eInrHGj30VB>lAfz%gFue-qJ1@;}4m+Uws1uOLn zEw{dW;4yu(X(Gqu^rWPx%LHY8(sgb~dUL%~c+NP`IMFEL>XLds;jFPkbLopl>T%ZZ zbBe25Q4FD1y2bqll-~duOE%E8Ete_fM2il6!iZAySJg<%|HJN(#hRhtlWJXIUxd;OCniLo${;(@`x-*iOe`%D6 ze)tH(94qx8wuR++l=!?u%ac80)}B@kyQ3TRm?-D= z;4@=Hl=1Di7_s7rAz}B_aBwP{ngMeP){-Le+H|uWMuD{Gfa5-z%Qj6wxCCW%>WW5b zw04wLAzV0G{-vFs#|fL}(J-Mx#e6Bg@f+iTi%<4Y$Cc8HUgp`SgaGH{+IF)lKB_`E* zb1RB|CI8;_EMbh*kDP#qP<(oN>RDh$aIxRXcNkHh%9}{r3I5xr{*9$Rfs=ZR&DV9I zRhTNWh2H|gnyWf={!Dmd&tUpl3x%(IA_}uBv>X8z1`X+P3O+skbc)Ug!C7Y!==_(< zZ*BD4NjAFDhVO&IKE<+r(|6-G9;`hJa&{cm4c;Pq4N*z9S$=#5uzv-2S!7||+dM#T zcvozhu2tRS;H)o6aZG;_6PqhJ^oriM=hazUa9zU>lBA-xA0)TyFwA&WHR@UGsIzsw z3RX$cBV|ZmEHwDwVCCdR&j!2qRs!h;p3SRei`n}^dgT7_fup%a5MTW&wa-&OOF#a! zAm0*zDoJJNsH8h1uG3qB4V!~%|1;uj18U;8(vu@#H85k}-Q@lJP$!inAIIa`PcPiI z)as4CB4IegpV^n=GyQ^2!J}A*J~%SAYXIT{o7|!f@!a;rU0L_xMdStt9c}66^!9O7 z-qjO3Hj=q1G8A4{RW>HNOWEm(qq!X=OGOOCU?ep0N>AMeD-*@C=T& z+%0&)o>dtIq*@5k2`MQ^HmsR|frxR>DqdS-lFbZ{XV=x|J*rjTO>StD3Ko&9<>5m> zTb=0849vuCMl;`Yf3oh~(K|Ze>)6xfsiM0bJ+#wR|CZ-tY7R~+eBLh`DVo$%dvY=C=gl#{Ox-Cb#C89gEQWZjdJY=m1nx-N`_%?#?2iZ&W@mt%_;CB|Fg*oOw$!fq> z7Y7f9x_QNt7#8!(0oQpR31ZHXnjtG)4?#>Jcg?T{;>K47QIPTG1Fwy@5k4f7C%dYlz;NqRHT7o8Z) zp5EpgcL$rVVc4)i^YA9oEQU-}Rh{p6J@ik$nKr)swDoWh{x1IKo}4H@7B$9D-$p|x zzXyMRTR_0bLCr^-@Us%PuP9`6fjGO<_WF5X%SN2nyo{IE}s&34_$nS=rS zIBO1fZz+62sk1Cl_(rfj=57`_Qcqp3@O_Z)BR}y_PTO$6gjIfaM?a_uK7*P2ov9>& zM`5aeVan(|Ep`rO^&3jDeu5f2u)a%SPxychISwf`hU*50IKlFos69$m0j*(BXE23u zH1K_RV+a2jj~_}9>l3_oHq@XZGKp5~+JDKYP66a-{UCR!zw; ze0*tHa(Gs1)z^-J_wkqYubg6AypUP;&_(Ng)CS9Ri?P}XeDfbUao-zbil8|oHvB@t z3k^p*OQpBNYbSPRoXH31yoH-8>PeEPvb9_bX}??u5U+VQ-|D=#9`3emWnFP6)OO@i z1Ixi#+6ya0K2932lvc!+*rD$vHzAqgRZl^$cYfJ3C%5@&9B`Zt9~7_J6DMNW>$`?^ z{duFeYDF@0OwKnoM)gNjD1@kO9(2Hu5!X}4pI3ZjXVka;p40a1(=}~3Pt%8=Ga~i!X^RS_p-eY0KB#$E+F1{Q z{ZidczIHqB0)iLV78&X5j(*fOBB+!iSiAVo#u^O+bSl6G5&>|QwkH$?voRF&pSm|- z;k zQ^UOr4!Xta=h0ok)2qW7!THNxTS3@s%R=TJ!rQ4;HqjzO*7Q*=^7F_;eQO^h4UZ6Dr@8b%g8UF=wUc|Uqb zVtz8H-P?1I(J2zmj%51!J7V)hjzy9B?rAJ_*>$dTNwge-9AwZw*@jsb|E6+m3EB~I zo#u9DGiAy>Hw5S(URk4kK8>8vhe+g)U9SjQYDj(=7#?QBDW<-K*Y%rqyIXgC9&a)35ou)r@ihD7wxGpxM0X~#o^39j?bwx zo?;t)P&mk}UprMAgY2gY;`Z!1Q)c@D=Yp6Y_6SQd^-}_tKdsi@SP}30|N51enK=tp z3W;4(qG#InIL$26cQL02Yby!c&1NU@z?UrIXImxt?^bv#O%qCBLDnvXD0hfCh4>6$g5 zI4@pc{V|c@XHL7FFGNX=)OyfRc^K=0{9qZTq9W04{9~F zsq?Ms8oX+T!tK7@be)UO8~;>d0?1p+KT%)Ss_xKBEw{6diY1aI^;R&@{nBIMqy#i% z4T)HF0sPvhZEK7N)nzjRL{N4{8nT(cH(V|#uY}dsUCQXO>Z8*NGG|T$sP5csOmyVQ z`l?DbcjUlz-##+opM3}5p{?S5DIZFA{Y#(N#8RI(lGWKw7PDWCQ()H16;Xj(C@%d<43;g$OqqPS~%Nm9M7XJ3gbx1{@9^ zXmgBI_Im)MWgnamHu`iRPd2 zl5YhKYOR4-8)=|jYEiyA)#^QZ7dWM79>-x2kWyms8nPExZ2_1tjoH|u+gIX#o^??2 z(!cvdNw57%XvKdn_2$cPsVts~Qlp`S)Hu4ATjxtBFJEfIN&-_=iFcA+y&5!|Wp|m+ z|Adt|1M^kmL#r$#I1C9cS(nD#2d47q8wP{}RLTq2N!-13sU_n->x`uY)$?r(GTdE5+vryMZ&xPESl6zPD>ICjuA+~(`rYxH@5 z9zIZ4CUm3RT%U^{iGVc+G^WSqztgK#$R`AYOJj@P{F8|QkulXqi{61+^Eq4QIdrZ1Eqg!+6G6fX~X@a zTY&4R!hlJ4S6A9{+jLArymrH`o0(MK>@=zdpG{Ayn$bdjMtrB9Z#}a5lDllyZB@I$ zQruw{jvYZu;gxaX9|2DClF8s9K7m-bn#%-|=mA6t3l)};9O~trTTB6J#VJo0vMe;C zPUll`cSG$@u~F^7ke=5|m6MiNW)98X%+WV5Pg%T|$#E~(z*~w| zkzT}GX9Bb8R+{gx0T!t#*AC!ko*NgRo?ab?-_@rz6L(7(*m#PQjRi5cV+O#*X5gdn zu3FRu>Ob;d8}+H_R~7LMniUP~}2NNT!wYeL0nTO0L(s+=W@L73wsD zaoFcb;Q#u(2i%DYI!!PIXrVvdnkpDz|COU$Mz&rv*bDe66mnlCksX46oMK08=fZ1fmYSuLU9#oB=(d(0Xx7Ki`50g*!N=FM!={(q@#(ObC z0IEGvuIaePF{nUxx9I?<(_2v3`ijP5SCb+)Hg~CuNYoTBn;UR;!gEh>Bo$5FQtTp=#Urts@F0^4h~J*2U2%C&(t13 z*0<+wKdhgx5QSR0#$0K@6Yd{*k!h#O#kI~LJ^yCTZp>pLqq{Ci%1wJ$ zIubg>LS%F@Am?yVYj9~bCU5}qbr{uJrsZvF7e zd1vCnbL@$Bw57B7g$Y#hD9KY65>$fR>F;qMYsQQ&Dhe|cEhNJlzd972jio|2`(wwYSZN9mVbt& zQu^pe=2{9PUcw`n!j?{cKt}mZiVf?0YIU6oC0CjL_xa~qf><7|DY9q`q^pT(!5+D% zbZVEHsIq|HB>*v2+{gTS_Bh|C(dlyHQsavuB*SlNw}PMg+PeoM4H1zjR33$0TNU)ry! zF*DzLg>H3z!*W!gP(;Bd?+D$&?h2!@3wQ;B)>?i?v9|rT_fl{=pVS(SF6#v^ie|s^ z*0|m{Y;D$h)Y)wu+_?lg(~Va2RfasuL!~aa4g_sZ(ko=7r%2Cf``4D}*n^dg10(jr zGDrda&F$Cc;3(D$@K6{(r(e9Li|+9UJ3S2*%;g=MM3)oU@uSO1lO=q7riQ`Ad5tgK zh|^r^XVT7`OLbg9{BhtS9=AMD0WSv4zT^6r{oJ-jg0)!NXo916>bAXAzz455*o`*3 zCR7CmSsPh>gpBz3&Ys=Z*o`M5UD8JbP1iYtgi0&!uOD_+6x!|zP-by=-w>FVC{JNQ z4o59a6=6jo*Kc(oJ7JGKud$Ok-P-}bq}Gfk3zCvdWGn0lS<_VVOOVBV2-V>J=kNr& zwXJR5wV%0ebY(5yO;zm42A1O41d-pn)CWGqDW-k*pgj2tP(CM`#CRySP)}!KHA_jnuG&`^7Tse~U z9dR%5fY-JZh*Zm@c0cUNbNEx;fB*?|vG5-lpiT(0_WEu+ebHmPmAwJakmPo0?yOCu zV*z!adAwjv=tGxw*T@o0hBU3A%87OUH2ulGp5CTR+C$^%Quu z<9lSuZ1+q?9sBaO=8wOCRwzaK>9a5W=7Mye$Ws=Z-Gc%9%gAeo)uzFl3ajH=O*7AM zHLW!jqX@|7TerTJ5AilOH!7qxo+E*L zpSbl8pJ?pM-*C)rdfp%rThDPQRfS-ezl8SH&sBuV&DwfJMqa0y()x9UM(F#n(t4bP z6nNZBkm^6WQawZEqdpxi6gZTGRKJyYL|1-siJn`%Lv8nQmKQjMc+58h8Z;(4j%?-n zW$l=sBlyMjUw70CX917iZI?NK1&^iD=#$JR@l4$qxOQ`@hmjrCdrz=X(w< zbV0P_-Q|xIR4`MDk?)=&|AG@}!~43L6t(4hQTk!$gko-YKZ9+me?z||s>`x=b&7wX znExwzxnV1!6#O_f!eL z`O8_q2tDE-d~=@!*ABef%&OQ~F73j&4;@O$$jDG-Ulx3QS>Vs6+Pxq0P!6GhjP8Qj zK{5%`dUWOK?6Hyexmr?EQmupXt!BMl=D$^-|8K2mn}CUlNpwt1AvvTEkn}$p&Hp6N z|L2JRPXGT>pKbx{Vj@NVX}3)odl%{X1wGnqd7ux$Z&=Sj$+QUPUvH+dmxc4?-V+Nu zdFtFAOl$&`fF#_^7Vp=4x0?YF8Qs=NiTv}UYaspF2r`-?jXz@7``N+KQOGOS4U4#Z zl{rJlOEKl{t1Xt+lVisYH#cN6=ZKeMAFyhJ9PjOopJcnV-~0n4<8`dANvzqS&S(aT z0}cHDmoD>pocB86Iws}MqWO)S;TwkMYtJq)_T?eJh<1?IoaJdXs=(tmhL^u~UyI?y zKo;C>a5*$LcAii~%Yf^>RweInlf%3JN}kZ4T5h(C=eGW+LZOLZCo~Maor!6ulPGhZFY_5N*BLeX9qlS8*iCN9rXn-0S}5k zgRSZLtCg!_116iYZT9!)r|$#mSE&TgG2)6twqeeEwgeosLqg~z}D zf0d0ljEw&Xf$!5w*=^V9(uqqlUDMj!m>tgF*|$9ioPtQVu`0}0;7NTizL2)>!e*9d zz^_kfq(bumot1yOTTOdQ_g(OrdUmZf8u)G<#_ux9S@3ems-$2ocQ?kJU&sro zipj?7i5}!LABh`g_93}#-2nJ%uiH?yyC8MaRKh<8E~B*8W9bul0Z1$Nj0Hyk(?pbLO z7l~^1Y`Lz^c;XP$lXL%T3Enqpk#6qyTi6EZSF`wzl=jNt((z3^auhhtRZoB*aZKzC zZOv)bi;?&wXCF{Y+5rhY`_>{nyss3*w<+OeW1)&0FOtWarAWkwDX5|E3Ua{7n~^mXS+U4&--v#BqbqcP>wkI?#Sbs~6^ zF1yBfG4IY`e@!Tiw*NBhb`s{bzM(U(avNEul5^Oph)WicawtDky3kAK z^IlYp=GMJbo@8uIq62n{Y^5851$S9f8@x*c4Yax#sPc8+ityp>4u6t*IXB>QrT4{V zf+;LaHfR2z9~q%4*G)erakMx{Evh$a|S!GqBpIAsyEcPqau!j*& zensmVNgI>Bu=G$IZ1|k1Qll@->kuLXRZdrqLprj@fcEagZ0Q#bf&@q^Li=-2Vq!MB zvT*td|92bh-Wy_f3nx#?&RyW>R#|hE-NH&*E%d*<6zb<0s!m4Dx_Tp{{;dV@vT)wX zT2aKVhkg z!E}M@u2L@wR0&#p&1&_IivqXZioB$?LcKj=i1OD}72m>w#X-@Rilt_csOuy>MiQbC zVvhm!ynLHpPBUSdozMRgJCgTB&cum}9wb9JX+`8^mG%`j0V4?M7kOYfA_Kd*-LX<5ZQ0{Z8PzEde(Fsva(@Sl9a7~ses&AM;%ix?uaukx-yWN#b_e}F2Y z|9SWk(Xkh9ebum7sbfQV-=SzeljSxF*~5y*lQO^`o5+hqRU z-R024$4(rRDzY;E=t_S2cY9or|CJYwP28OkR#!XTtN}Ud;53z#qLC5r`!eak167Iy~d?| z@TC{yn4em|WLO;gqzZ!2Ppx8N^ybl3Z6h_3`OpWB@x{eRi5v=QYFKpixZ;x@Cq80g zey89Z$vE)tE?xVVe;NswJ*nD*Ep{h2{`97x2<+0Cwy^PZo+OnId-vlIsaGL6QdaGJ zoM9QCCy;q9YQrLeqGln}5-Pp>Q`E=@NYJS64W}@pPezDg08*^X%*<#)?t>zfb|^>; zZ6FZX)YP<9FZXw)*HtEKy zou2hWbIYy0Npxl{l&y$%Hr*@hsLDVYPWPI~&M^B+{R(pPRJTzG$D4!12Kw-qu zRbWNU*U8hvL$`LM`S0QgRepXXn#XF5zNdJIYEUD(R&&+dTpokASRSeRA`zMk8!K_6 zQHv$G-0T495j7M#4bC_Na*`baZ*XdZ2nAx8>?asYu6}F#L_h9EftY4>%{QP__E2ea z`y>VAj{eO%7JglZ@2Un7)=DPRTh$&UhM(2XLJ)KCEPO zYV%7*k8_z!eP&o7xQ+KZlh-em*(?MYb#taqe7c+T%Ed0mq0JrbD7Kiu)NdZ-pNoP!hMvm>2osCt;b~7px@Dnky2h@m5-AvkH#F@UAy^is zauA)b^J@*=y#zO$P7oo&THXim8VE@(=0xFpn^xQs&AWEF<>PO=U=_G8M8lMT%Q9O< z{J03;?HzX%)vJ_%(w5q?aNtU_fBe8WIP9c~=)CjT+bgxN0q9xcco<$-{+Tzl=4Ku( zwK(2J+`sD-%puhg-MXPL>GO7AvE??{e9Y~@Y1K5!75-MZHWH_p)D(2?%wu}okCSxHZ(h0d>l1 z847ss33=?Es9u|mV1|-eck|Qjx=tK^%vfphcybZl@>CY&!2~G)nBL4o0x%pOGh2NB zdxY`D6+3Zq;xhlZx@W3#6CMm~!_!_+Gcq{}q=vqRlE^MgkKVZccyOc=elk?5&L9&v zZobk}JhpvhYD~0OToIem#~nK7c^Sej{;3xeFIhsn2Gf#X-V-`JiVbFcdp9iEfZSx{ zLFr0Q%SmY)N_e|P|>e^LJlVrUDU5?5j!rc)T<)hV^HT)Oq5qR8%zj(rz2#I{!X zY@AOU_3h8h#Tw;1=lx{vry1&4im4B50_$L;Pxf`KM8yf<(Bq+0^r+0n3{D}NxT2Eh+@Tz3K2sK3Pf`)!_8zRq* zjFE5d7zz;S>>qg+bZ_vLS1lg8IexX=VQvT@P@z1tWy)LqpxC$)a_HhO?7%^hndj3` z3_d*|>Y!;1oTGK}k$9xb4*n;IYN2BRcN?#W#l|a=b=~nkMplQ&nAkety2u zy!L$J@967oP!Gub#eyeL+DuT}otHglb(f!$ZoRf3FPjY0x-*@)DtVgfHqm9Tr$++8 zV;av$>S}7Aq@=>1@{#`HlUv(Hzvdd7qY!hc|n9DU$3B zm>xaI7I>*^hf63J6|$>vGU9#n?>BFZk6++$TAu&g5ktcdO8qfrf2sKOa@En7+h0OS z>q!X*2;z<3&x!ekJg>(>3cR3C)7B+VHVBpC%MC6wvPZ!L2t8xR5eMGR7B+{ePMqa+)y3v|vKj+tNX zT?9d`vb&~iw{x8>F9UC>JwXjc#2hu#XQF(Xw=W5T=GQJ^K>mXtcfI{u2F~CG zYice(Qi6T@VAN|w)g&MF^4~NU7K#;YawjyHA9dRVZd$wTXMG%-I^`6)hf5xTedrM9 zO+UySLtumKof_24_QyQBc!qvJzSA30ZPfpVueS`Sa_QcO5d@?W5Tr#(>245^E|HWD z>F(}s0qJg~khbYaa(x&kH zk{0`28oFwhoeWZzGFQStNB*j&q8XKufqIQqe6~?Hv9o(b76}5!!1U4}o3{oAp^=dk z92~x#+|Cs)wJ$X!1!^wI783*_zF+^8Ve1J7?4VaS?VdHm``R$$aYnZOC=F%3Ad`Qn zk5O=F$cXTk-u~`7S*>?*twx95c;=TOoyO&hV(oc}hm{Nr&0D=icT3_w#D!mk#F@+a zPH9h5+qGL_3Nze-J1&88b7MX9xjJTQk$0a&Am8nsd?`=39oyDvv0=C zuo%nUjJaXUm!!#K4lCRt)Bb{UHQB)UHaRXFqWAa}HFaq8T#Td2=UUHgnGf4ooSBfd z&OpLDWDDDWc#eL5?pH#Mc@>hTD@T4rc><(vg}%R@UlL833n?$FWT+@entb#uZmx(vlC$wcrHz`-~1lzgB;^$Ep#Vif!6P{n+;|Xi7!jw=WGbEyj z9)(u5h7AsYJ$YRXg;`5F)EGFKFR3?2O#0hR`h^ZZ5iubQY}>lv-yd_h`3JXaMekMn zkNNh21j8=7G0n%XNC5`^Wfu`MD~i?G3LXq0ZYX${={?l2CJxu&W$pGNZ5S21ZC4F;eoik`wv2 zWwhzy9>zNC3=;oP;`?$~`KpXS@{a^F>Pr3;6Qpr1zB%e`3X(POelkvGbyGRfY0}>U zbjUhIS2KSFP~hFgn0J^>VH21*aYj$3CUIFaOZ%BI>t(+&$7V;Tonb8PNYE#v67&tu zNE5-VH<#BbGFlPo@hq;I+B_cRA(mDh%sq)W?qL_tF}G+ps#<=L*0DAL7@sM+ z@|8v;PVT7LC1&g&(5v;Vzv|FWpoFPaU({&|>s3c_(xRqurqk2gex$Ab43`k=LC_J0L{Gc-rCa!f z)_5s2YEUfh{xx3;nj{V6>7-ux6$=v-G&7k)dJ;}?p@}co zK1=Gb1&7|SXn%=`WWae}tV}t;R8=<;WVt47p?Qw!9H2qn3)pZ8JZ~0;6s6~ghrTRT znof51^!nP94kRL}tc;V0@@LGa<%-p2TBz7QSVn<+wcN8^F1%zfaMM1XC0loK*!Xe>p za`q!mCCoGdRnd2LtUaNWZ69U+irjr|6ok=30o5%+<;NCI8$VSIrO4lv23#=m_u_5Z zehd=FBFvPyJAW?o;nQE?Q`Pm@n_(<0n%w<+i&KmtBfZx|iz(6Xyk5p2pfnV|n4*vR zn&CqCEbgA^s6<^v&JbA;iJpwLIQBSSaBIbee*k{Zg`=;%EsUQ(yC-J4D%^w&RmAY6 z3fy#u@aIh0yUeoUMUrhPuFN>;dSQyI* zv*_mfa+i3JJ%huQ3TxA|Cih<8u|q>~-7fohXG+Ow&r08eand*bhAXX48bZ?rqf7IK z)gI9|99Vbd;xxwANpA}K`tyf~br(4EaI?xTgwGn|A##YK>`qwk%xQjb#5A{I)Ml=7 zb)i4t^>}e54j3A-s0j3b^hCVnFjP>oB;&}|fvr`oGL%M(kzSzBqx(bH!%&p}j&B>a zu;7)(ZxOzgl%SI4m$?@7-M6V*6)UlHZiX|g&k5SV-3m0zng#$wXjvN@D4 z=|No!6-DKPoKBruGQ3|52IRU?rUQb|V z!#>_t_TU}O_etz|7Fy&-Y@T+0V(iFCJ_0^8Y5__p$G+AN^d{an=4{kqMrvk(jM^_Q z$@$nxqSH#pHFA4stFi7Sa58+1?=1XEy^Wpiu}K04o@d%TmU}xe8ISojxLUJYF0k{t zbyUawh8}J*SP?rS%?Tkcc8;E_K_!d9@u3J?ERr>3ybY&iKYGoPu3#GKdq|%3tF3xz#T? zdAW^sbb2VRx+4NowOgM(>V0QZ#E8&QoSNJPMGB$&g}m2_srOhjQJ+S=Gq%y^6Qsfj z`upWj?W_gpl4r6TED-l=M8^pfC8945XH;11h3&g(>S7XzqP;v{q7k3qj0dqW{t@$1 zpeGJG7*C3oJPS@yBr=vei7yeLj&bRrE%Ce*)i=Njkyo>^8>klu>6GBzn<^>bpp2ak zz`@N6TpPf*%9{v|#acRh;kC8pVvOzG!~XSA;9 zG2Gmz*<=CFm$S!sn`35y)L~*^{hoyGebenvg8iDsPbJiF=8>spwrmr>%S!p(bHwrS zeJH=e&Mv>GURxU$>&!ht5kA59ot^OAt-vt1-+m_^h3ZaUVLWb;)3lUTv5Hd59(;B$ z$!|L(82aTe`+EHT-`v^l*2g-*=qe3wXU=7B!Xbzkh5}V{*K4~_Ygmo|R;$&{vCGSn zvAx@SW{2grepx7^VWa7?X*p|S^ichGweJ4Hzd5;C^KxIs*5B+2cDOZPkO$9p)0Z3S zC%>|{BVQvjvT%)8O6{wBo{veBZi+<4K)_qu8-4YHDd;j&r(^S?;o~By$VlVBc!nN5 zv0-ZW`*13Qm5+YEv0os|zcF-rf5hLELLYD1DVBkmu$8ClLX#N#mN$M=2^ZlRv9UA! z=xu{#UFHUH-_57bzv(S#XgbDUOPmt-;A~hGX_Qo+fTK*@?FR*-En&; z$L1#MtA2Ohk9o0D=9ubr1Y{Nz>TE2LRn0qJU`Shv8sb7YDbR=$c7kOvHR)Q0c1#n$H);c^0%}!3vrF#oC z>xEnm!gzdt4O+ab4{%c~5oBui25mkgleMC;;TgOOE6U-~^85l#I}g%M9OLJ2Rr$o0 zHPYzqG_8=jYlG`81{GwjEcJ}2ef21IEBzQf2zek;T_YPdQBZdL5VuVm#hfwIKCr&w z@ge=Oe~q8pJt&T+$3G167`Pzw_CnLWWcRRVM1jnOO?7zxrLaWE?TYoi51#gwG-R=` z9M#R9+=y;m4edERd;_T%%5^G7RqmhrtqES1K#BJ~LvvExF?nKcnO$x&A1PBzX}YN( zlOJU2krcn879<>43|P0Nz4l)Rxvx!?)je7?gZuX-i<%5KZA)}>ud1MEf}u@t`Id+m z<(KOTwkBSktOk}$yYNt(s#eA?Gj9G7-YoWh?|T+CrMJ_5Ze28NJ-HlvX6eM?H+`BJ zsRqXiH#6(M`2k~BUg+_EKmL}@mcg*pla@oQM>`t~sqzl;>ok%EU#_0TEiM15X$t;IP>`~`vL*jH zmWt78HuA_a8grg=Dei|xPNhIY`Rvy?tGw2D7RU1Au)gMk>xF7n#D3M+5q|b0uQJdb z5U1E)O=KCoy_+-$i|nete)k?tG1(k}zcOOXyE96RwaS3}0huf)oW$OPZ?jY%V!{hBaMpN)PFFf`}VOkzYsMN}`OxWs?WheQViOWfQ!7edaII zIYc7vln}~Yx#c<+Y|0bPQuL+n5RXngn3)>KUoP0{Tk)$S+n$K3#Nk*F2d$GxLUM^d z%kB0{MRN;a-KVgZRM2mnxNe;la>jgb8~9ok;^KXy{B{>9g*AGb{mY%cGP;p}Xj`{S ze-y5|Tw>kD3Z3Tn{;Kk?v4ppnRd|JC-x?BLxgN?@2oLZ$Z?nl7_vEOvRC%@AHGxZh zWh`z!L${xQFp;9OV0_2&7u8JyHTa-rEEI!hsEWpe1Vw)`<~qD^UNt1hW)znK{Z6=@ zH@3R^!(^#eyOTo}=gZXAB#9PIx+L-Ko0^ho^q@8uePJ}B$Fe^@Wpr`IXY<5?va&id zVS>8ws61v>b`H|j|EmS??oh-fOwyOoND)iY#z0Aotz`~ZRk3(R{8~8f%P;De*oIUY zTp$0Y_I!c(;f<-D+RT1tu}J>J^5wSps?b+E5dmsV3t!3X`Ye-h5^4hKI&*t3J*+KtH--w=NI zrbY)Z>C)3%_fHDe+r)=hiWWReAiQQWp^lnP8I&8Xg(XgtG$!c?e)HiZ#%Vd_O0MbQ zJMZItkw{VzfT`Mo-urM&$dL@>#=A2a-2@gpdyNoDX)+m%%UxN%ra|Gqy-i8fnYpSA z?)c@U(;xSTGRQ9idQIH{FE!j%yXlN)R$30!gdmZ%!asZc!I9@vv#f))H|g9FX+yXB zR+;5wL}tK|!QT8pzA|1Ii%Z`TEd`8@WDq3`3RysX$(Jw}LuJYdp{g%#kHVB0&Jb_h zu%$0uo3Xh2Zv5N*6P=9GVE`r`P-#!N;y$W-k==E;HB2e(0>{WUW}UhOV+z^m6X(Gd2L8;?&Yt( z!?wx!u+oP3f?vq*AFpk#lfK?XPGMi9YlLXI%*DU-afd71tV`yz?un$_uHn$F%>vhv8jmX{jA%r*iIj^wH-#LBj3Y zTC|(SzasL-)juP`qW>_mz^)}>qUPRJva=iTD~X#MzLKRd9QSU4Q-!vjtb?}UG~e;? zF7@i)$RCl}o_K3!Jeww-cQ?~!S08tx&6r~RaB`Y`CJzy^EaN3Hdi96cNcr_NpSo>b zk_rxVh#~RzB4fEENi18w^;LALcYu=v7qFc)bez(JMRv*mEwm8|3JP++SPh%1FH9>f zR#9wfF&UmR!1YM{aWwz?im+UK1eN9OP{50%MMl9!O`@wS*7px5&o)vYt=n?6aA`9I z&R}l^uL5RhN#7l(B-y{;tHAJg(0`$#{7O>}#~OQZ)2*?tSroeE9XNPtKbN!!XZaEK z#*{Nxz8PuYhpv)4r-QSvn7xO_7N%D|-gY)s%ZDdJTs0#DKiK|SnDM4?zAlQhvYfbe ziK||h1M?FFr9N{lhvfbYTop7@tha)@yo|ygE%}|crNTmUuQTN4*%l{b zF)kY=YY-{FZU5;M26Un|B6AuO0ID_D3KlvTStW zd}KL7ynXq_zpJ94`p8P)_Cgw`HHKSP z`-25rm8yW)^m!iHQpVH^>?&2h-T)0N-Myj-BAU55s5)rrT7{$C{TfEPEq_Y5XO^2t z#jHkCvB@Xmh5C}xAH*s+qCzLsCk7%}dM#m=N{cY00xE^e{-OZd9h)o+(xoLm2?8OZK>oNhD9ahel zI`U?hd%{RNfVojhYW`ZnlOwFX{-`2Py~()eqi?5od&$gag11wQ&to&*r6I^>c4CrmPrqOzt1iytj^+y|8B44RYy?K-9u{rQeoHMv&KkGJ z2+K=LOc_TJgsy)k3LcnxGj)atXpL+CD@jYsvROcAq?>HrQapMXseoR3l>IKCV!k*e zz2HCkrADJ!x3XSQQglyX8;%050;7O7|5HEEU6X;S8b4LI;8WW03Z^BRGyH6+%RFG` z7p?IYGs>RgroQzNOxyBNSBs7}i!OcxqS}9b?ab=sxNl*+gC(bLIQs?4y0qWPfFHrt z7yzvSiYLO*{nxkEet;G2K3hnFQjn59cl~QQI>`SO+ELj$INAcVzscyLyJA?(?N4+} zZV^uo{c^m}x`in4fGVz<_R=1{U{(8zSfCFYi%Ky)ycFq~KxH^xm zmTp7Wk_*2&Mzj!AgzB+0F=%XOeK=c$h~EvTaEu1=ACp>rdj^FX_a`x%)Tnd67Dml! z@X%QrGBDD17g~Fm)wrzM@_~OvpMgNXPCTAf9d(4!X%eF zeQK>t&wpCI+{$e^kysjfV8&)N(IO~^f#oCQnupK&!%3aSEJWG7-8pI#vKz#a1``A$ z=BDj3bDLQA=p_Nu8og>%`mX8zPQ(l=TTp0jiyKegsnOTzkNOVo z)TIZobDZO(CvT^hLbl*L^By)1{^>MXq}aQE1N^FnH?dLvc?Un&3!@u$7352tSXD<> z{1F70eaFnW_zN=kC2@h*X_YCxO z2=J%mA&C*))>V+vMi+4$M@r}mo0Bz3Y{ZCf>QQ@S7;|WZN)hzMXuYcDX?~HE_ICk) zjLBead28mY^-RZ0L>G8X5i>U)&Iop&mYDLTfw#u0{OQ}r;Yovj5!W9HH|`qM>-W2w zj4zQ;xghaeQI+NOSkgMiqZ!YyT+@dMs}L9=Fns11W1^e`h_ogG>wN(MCWBCw<^THp zPvXSz%aZr<{GN}}LU?H?82u>m+L+mUbKJbF3_It<{1n}nVb{ni!}(hnzw7=@#rNuM z)7O;>jWoghr7!8!oOlgN;VrH!qFQb>LXi6n6x+$pX`IixQQ;8JYCqL`GhU2|yq@#E zuWk7XNfwW12y1XIz;aSUUlYQH7&B)d*pOl~P*esiOO zew?8ha7~3ySyO(!K6qW*JlNEPD)YF)FEdF>&Uov&*iX=>2$d6JIaWRujnSUMBbg(N zPTP9jw(EMiTO!op^9yQySu(Qsl*IzS(3Bd(rpl#0B;#-|%od76J|3a#fbcF3?zEftd*4*#SUuS%@ntnZE~P)4i8_?JGS6Qs8rf*2;d>fC zCu@X#e+qWP@wb1Bh@{*JGL7KR9;mwSW+)wT8>%&1+lM?TAl#F2C zJ4q#ic_m&kyFdO)WhB&J#FfzHUAgm&zY_7!F6|M7YK7xV!mcUhx?q)CoQToGo1$e? z7JYLo_<3SUcuj22L)wu@a<^Xcl7R~)Qj3CAhNx;MET%?p`ik(u$#?Y{67I`_R(#n; zI_G%961m=8su`5I|6*T=^iHP@)mT-kwxflz$Ef|8^`D@}%^gs+*VD(_?YLurl>GQ2 z`Xk=wdUM9x;v(wq84;nK13t$iHe5!|D*Gw9%kL_c-l`<8np!uPJ^Q|FvrCL0nj`GK zuBP^PZr+2rlkoh?eFocZWtlzJ7ZJm=SOupoIS*ChF}QFlp-*>7-pE)h4wcvapaWyY zu+-Jrz?r@j#+LCK&JW)+FWH}CyNKQx(y@S)fVjY)u6wcghDhR=dI?1!`Ub;u9Kv1w zUoXNf+*ZGW#WkGdj5P;0eb^sS#haQH30~bKh*uN~gMK~yHA+$MJTl@%{*+<-l+f^T z?C7&7Bb1(9Wg9hCs=U4!Q2N4Kc{sE=!ReeW-TP+k5}(}jfzozNuUQ}PQf zGIwN-N{V$JSd2}D;lD_-S%|q*U+tbZYQ6GEKI4A*Qya&qrH`TO>!IteQ^CjESe^QC zsNGr;UUQ=J5mn8Ofac6g>9$UOJ%<;frEQ-dLDTSzMw@j`|w*A6ty^4*f z;aU7nlX8?f&BxQrBTQ+)&H%0G6x~9%XW?JknaGJLx5s#9Ad${lshSE90%y~P>G&0LD?sbmcPOE(-W1*)<#>~v@;^NZn ziw!#6YN#0|m%^&krqnk)4&&_Xtf;Lm_xbbaH=R8#m3>54>yF@R0^uY+esqH^IXjMZ zd-7em40WPlAuozQG(_FEX^{J?ht{pL$1TIRoBaYy@&Y^>DLdzv#(9Yd?tR))=+)V< zt!vmJ9DBAir9_rftaj_6Egv%t82T1^-5(oDj;^7L>K#|(dobUaUH(Zr7=HQX=x?_a zDi>_AEwtvU$z|E+W9UjfCz?s^nzL^1B_uqpM4+<0^`i!1r}}Sy^W^=2Vsx0dhs`td zv1LPa-MmCzzg=0O*RNo7VBOqg$F?Jr7@6)el;lKhkHj%dVgJe7Y>|GL$>(Y(XN)PO zVZa$!tM%t{cE@0DiEZul0M4}4CY}lVsrCBtDv^qWduZjGoaVIzB_$=AYcg+&I`z_> zx98AP&cP!;Qbb%nNS?4=wkkI$5B)y9cr)+K*I=_4*zW;j;f$p7b z*1yq$MOj(FE$Ff#tw1~_Wu~(D`)SMV_V)J2Km1EeOVN2hkz~?|oWFcmd|_)#aYvo* zm#Bl-wzw$Nezd52879uyWQPmb&He!~T(9R_u!|xDy67JLQ?ZZ*9F)WTI*~iE?+-{^ zUUOQd5upOuE<|fTj7n#?ul|`I=;-Z|+VbjF{>$Q>rH_sH??j6c-*{oivODyg9 zyY%qzjMn>tPnNzkF>hYy=zR>fL`Zml$5ik-;vqg0qxFQDQsQ3P)WlzES%&)GMYKhKL47rkdlEI!&As`C_`c_uP#BJucT@vD7)8t*R9HxbO(pmB?&<_) zf3^n2r>u;DfPmom{QT?bdJjmGzXR%|q)frXlY)dz33EImPReXG&xKAZ5b;O9{VPih zxY-x9@Z#d)H7Y`ZO!Ds^3b}(We9i~6fqfglt?I^xhkdlmslekWYh7dG5#PU|M?^+>UyRW})->Mf=k=sTaxCneWpxEAMJA(I*X!PNw|@+jW`h zr{^N))xjRq?L{H<9lL-*9Le0#}ox)5n^#|HuF>`ZTFE1|uf1aNFxnhyR#SV&ec^_@igkJ4Cm`@Wit5i<9a^Y+A<3W2)vFIyF8c^mz6~uE0BHn z{ylQKT-V`36F#dE>N~NBtmfvltgNioEER3-sLV`KunEU#D1)Dkjg852mhEpesl2o_ z$}RMWijVIu4|{mUrowSg#m~=A0$hH~#`e7<7-MX5Qq0EYSaQS4+InkDUXTL(xhIZl zZDZpPn79|{=mo{a;X?wq5zGdEzkU1WQ(n$UK|yhKbED6aY+_=v+~y0{+1dFGOpt~K zq5I{2dskQRmnx%`wY82ittLQ0#0$r4m)oADq@+m5$!(^Xmt_|e1cikmQ_3WL`1~2` z;NXCW%f<)n?PVny3JO9fDlSguvV99W3+P9cwT4*kOC22@(3HRP4fapGK<5bd5V7A#mV(;H^bKVnOPlPPEN+ueOn7;&VS-ANix zCwiUMW~Vkg`-fZ8zlGY)y$6zL$I4F~k09cX-QG5V@$mFCH8(eSe7Fw?2w2|R>l^>6 zcmjnY>aKQ%eost%8sbl%FnxV}$0sIMwzh&hR1nlUb$UHLJse!z(Z$6@RSkZC zxiXa4FwdSntJf@RRbLn${scyUXx9Z6bnMqri$PaZetmt?yAUl#i?;q38rfCHhi7l&(gxW&2$GCnLKA&WTYOa#;oLFkCofZYDVYhW#r@reFRHdYNE-=$k;eJ z6;)J%Cd@Vf?s26LwhD%U9)l^s#={dA5rHEiA-TG}HKj9Iae<{`-ua-@^W{_0D&$S5^3->vKb`p07;eku*yX7I?sY2QW?1l4D=!mnJ40 zC;O0X*$E$yP%3JxKc8F{w7R-;-ltoKNhkl>*M=>S;epEk!Tw#|uG=;>1pCBvqxY;=| zLU{s_t|($6u!j(Av};wLSoGmDpDcOSj>WaZ{lVCn3gFZqT_#K%oK8?G&Fywhz2tE= zkhL+HwmC;us^UJ%DM+>GY+t7JBlF&%@=zl_RIW z3K9yEuACV%Yg}Q@m}e6sqIfik=VV{XfDyNA;C9T-c<$9rWZpJlas#|7u0Ew0bW{(6 zq~Ge#yIi7}(x)0qQu(h?d zy1E+GrL?BTv90by;;ze+R3_5CkY;^Vz>pYD%o{F`3^rx6+CELg`F?WUpQDE5Je z4-c(CYO#HIxVhZ!PsHbP{9V?+E0Rzgp#R3kMs;1CqN1V*a5aD`U_&oZqGqA9D;>c< zi;8ylCS19IZ)Ak36z7AW0y3@!d5NcVODpf8{3cMx?eC*wur3lrI3ydhiYYSisP)fw z9u3^)94`;`-M!lbRL5#9ZUd6F88e`x!k`j)3X#&7KwC#^YoG+kLb3zkSI^L0EJDnCBtoEDzLaEY$K|ug^`V)1$LW_z( zK?O4iw5>P0v_$A#l1I$1QGvqeztH5YsG#5*9gQ)i?QXfm-_dfb1b(lp;{^K)A_zIH zrlakx8{{1MhB}v)NOMQJLB8^5f2IoYpg{u+NZs7{m1MoTx);x6FswGqXg3EbK(itnumN!Y#hMY2uGrPL+B4s-Sq zBomyjM1wojr*boH; zB{VcNM$hg^PP8UV)nYAShcF~cNlVl2aW>0}iW)-nzA1sccwG|P^&Ix^0giBp;*OPd z;T48;)s}qfj)f`luM2{HFPYve&H{#qm)ewTH0}`s*gv2Bv*)t@c~BK}OC)&Dfa`p%3zNx> zO}+FoFUoO<^SLz4{~BKm-MV9hQ3tnZ0>XjRw~RVXAscB>eYpZk-BdBIk$3LXK3+;e&M3C?IZ87mm4Vm#16S zA1qM@5|RI}769kQL-N07TaJWdHzY<0b1~`CDboIEu;H{~o{BU(L z#pG;*fM96ziAhXUG!V8U7Au_NJ>7e{*=mRIoBF27o9hzGTJzKz74xPBQ^V9uvs-=h z+mX@O*w`?Y*?ctVJ6XR_=J)TZ$^BV*;OvbzZ@b!FAUzKf?1i44ypFa%>TiH%xNq4k zLDSsJUe(Qcj`G#bMNXLIx3)ff-|b!Wuq%K5?{peZUlQ|jX<@*U#5w3uwI4xweb28w z=3Tea^YZg6jRsPVv=E+>T6+3O;5f?YAtYBr-VYre7=rU_N3Jc}DkW;|eTS6QQAPN0D8k$fsLetsj{Muq?vS5>7}>tR@4w#$3e z?5|zEwV7(YSz5QK543tsx1D?#fFQx(9EK-E1G%20q-1|GYj8-&i-!j&1mu_m0MYT8 zbYTQ6@JX1Ny+=eRYTK|onKdsz0slYU zuNsPti|gnj^^RDuG6s3=-OUt4z?2`H+|jleFS7X@5NBnWk7OYo5!z%4hROB-cPhx(&=lKb-waRAr>FYG3LI7Ym=1Uq$! zdDWU-m;nVLd;dPn{ir3exV*J-p|<7tHww5JjnD_=JVB0olL{IdeJG60Z3VKaOs`SF z;dH*YM-YI)(}zu^h8Li(c7UyrcpSI4wWf00Q|f@jxxfiW{pq}T0H>E8E;(~@a~oE} zXdCAtmX=Gc>BgC!2}wz>BgEdJ;L>GPSAPd?rEg&1y6lTs4_@8We*~tF2>}{54E`Uy>41@c_ zb{vd7`SaobSv^}tm5z|-vdsN(>%sK!OS%D^Q&(Q|d}@5W!t36xtYMP?&|}zYYk04N znyCu)(!2X3Z{vr%YnK-7-oCz>Dq{>_q#HqmR?A>ozWxqC@&GgUqlm!77Zn-#_kq*d zv_Z7(`L;ra*NrLITno}@L?Iy|-ys;aQWb5F6H$hyeU?S9+k+2G(?!J_#C$H_xa~KW zPh64&y#=r-WtQ_3we>f8vGI^=E$99oc|my(8@5O$%XNkt9rs+ot0d**jCMxz**G|U zS5s^_)D(4RFfOS7n|E)~#jPKuZ9sq|zfDKVmERZ3iqzv+fL;Ur%2di0| z5puh5G~MdS3%NhAZUDN|^>GJAvY_{aqdNk3Og;6=iX%LJg}d6+b&`c z&@zwn5piGF(!Kea2Y#9glNot}$e?I}n~ z3tR{2+^yn8;Ijr5moS1s<*pyufZ?Seu>vL>7-LnTDBQN%*6xG$khPFgM>q#Hs`aErRJwCp-(D8Hg4> zyO~lJ9Tpargrp=HD{EEPbxq4rRbE~I7|thKg;7#A+!{>(oc#jnzv;VvQ*XFjG?pCn z8ugCc64q1|1Qmr7mlhYL__eMmCwKnTloYilCwdr=JeqPIr8_U`ZT2TWnHD)Y`7vm2 zaH&Qen2EbUka1_YtRg+dF5oNE^|tQ<0|T4Eq^)mm)|#hZy0!Q~iu1bGkeXX%3&-I7 zI-&xCf}9$gCvVY}mC@FZ&aP)`INpc(P3@sQ*DCEZFLu-d*yRX@Nf-<`puq>HW>!{| zfc$~ZWO;@g+1S_=x(Zw^`+qeywg)Z`Tm->CTZ_B;J_CG*McmY$sPcr9t7lV$dZD-b z#{~h;o9Df&bA2Wg6AuUdU{82AU==-rkJs|GRtvqLJi5EDZ|$IN>5xS*QVe?<*W^)+ zF}h0xjQ5kLJ>#-jhJiywNBv&Kb=&GWWIbm(3a|c8gyXv~6umaZ@M@BBXL)l@mFXdD zVDL_{P|mO?mclm?7}LRQ4OhAxiR=1H68C-P(XlbttCe6R6qF92XL;T_0mSnIlwTEc z^NMrP<(+mpCljV(v0g`z9!F}=(9l+#yub>;rJUN@+O=>5t!*<`fK(q8a1!Xg2m_Ig zvH2Jl+;oUMPdcyl^XE^P=Bw3ki~0H(orlxJc>s05Vu4A5B>8+y{tO6uzid{7L3jmv z=03|%ULLuyu&`RCK0G0Z#c~f-=6d5^8ShUN2lG!>RWnam22{E?0EZ@uRnOWHNxvl~ zc7f@=>XG-d8|7~+_3Z*0>vXlLVsvdo)%{%jD_RvBfPR?7!~-H2{GFnBTAh^!UB_-M zTARi!$;xT9U1)U&hP>w-22jqoqX8Ll@Ny(NL% ziy?T&1kQG126OQw1korKJl%dx;Q5%9H<&nAPxIug8_>Kr#?XTzvNT_etp2Vx<{YfWn&(POJbL*hsmKV20}^J{VF! zwfG^|1J=_G_EhqGC(qG?{hvU+zP_H}3>5{%0N4YNLqTj7aynWZAbq?Nr^D@&%xt;d zOa;i&eA-LP#?F578-)?bk=Nwoc+Oc?a zqTuCCJwJDNipB+U>0t|2Ta4b3k&icW@#+qC_zGJq~^2h$cOt%&i@7dY=nOqPAZFvarInMp8N{fN4 zO-;R>r!qGgHwPRSq*d+h?Y;~RB+>U9k$FtDB_v*euLb!F zpvuF07eGzREi%*9NSC7$$ix6I*>NyoBLFZlFfibIadp`|X|-TkH+A5Yc`iUr9kRT< z+}2o=uvb@O)iku#vEz_4VghRja0%9MDQ09&fBMGWO(oA)E-KnK;~4Y8~+ay z4DE76<%?w=r|P+9$H|{ReQG=1==)h(Dq1{Y*F%xWWIRaZ+8K!{_=Y69aBS<&iTy|h zp^fE5!awV?_)d*}OL6`y3FmWXL+va*y}hfob5 zT(m+Jkh#+xS;!-Qn=zo-2V#$}ghR%J5ZbYxXe(DoFQn)g@h3g>@REE%t0s6$`$`8_ z01^P{daBGEQ*ZGMR(` zYjlNW@yi)WoOM&+GdP6f9!PlQ95GCZ>m!^#J)9xc3$j6JJB)uX7l;>; zDc7jg&0y~W8%a%OcO8Xg#ms9in>QxQMYL49s3?CX)^iF95R@;vf~>4-3UUBXLHEo*}d#bA|8*|nM2|av(a1*KhQl%`5{;3 zL}nPo31DEj7$xyc0QnLQVYM*ckQ3{Qv}&kQ9XntvvDUGIIAVEg-0*~{gli}#yWLs_ z1O!zhdERGces_FVyyS^dsv-^AjY@=x^Z}@<23U--=}+Hi>T&9DqOJJNM8^G-!~Zo3K5+ zJkS_B{D%9_A#@>CD{RjpRQdGnOpCQ+&q%@fY#%RuF;|=4J^OEbIm|k#AE^gz)D?MT z?)Nb9@oE0~VqTl&59M1l{<=@c#0aP9wN|AelXYH8!T$HPFP~@rrXFrde)^+C<3Dw_ z;8RUb-haAZ=BiswOq{DX>Tk>u@u_wAJcE;f>>>-?Z1GTPJJWB11`0AZeE=Ii|7k)1 zm!ikwq(Z7Y<3g1&DKONw(2*=Mo3ZktIRQ|r`d@z4nVdaxg;=tie?B%OWny8m-hv_U zdvdy4zAR}u+LN6CowV%T(E@b%x#(Y(7r%q@!lDh*dr37IXvmM@LDZv-g) zmR*^5==i8^^n9}%n4DF;03e_#QX%ahWDm$@kN_aZR{vWobk{vGF>%rZd5j#|12D$I zWt4>zhAI5-7`(7GxpbuKeYWS@^Tka!7mGQLnb~Kr|8Iy0E{+M>I)nFry*d_l z>XH=KhMRryzoXx+X)sX~W8GOo_A*YWrV`8enP6V~^Zvdn^>p?8_HVOs`oYUjolc_b z5&mtL@t_6@4&bSxVe`4lfYA(LG+bONSkmWtFr2a=H*_?`eWaV5F320+M$XhIL3P#O z(xAl;3+!3%+CLrHsEnX9F{+uKUbTF#VaUlxC6W5Dk#Ho1g7&~*A>Eo5P`P*k>OCq& z)r(>oqab_lBedQ!F&%I3|Ic$LVqm-8j9gfMYnYffciy+&ZHw^4LxBg@9t2@vSyMJh zyt4WxC*QSe3-aa8=r6BX{&j;(wacs?M-!M6mm-J8k2u`#*+6ujC6&VS61Epc02J~u z9VrmOIt4Msw}0|j8pcjM$HrI)1!j9$Zgceu_?8We7rW#B;G}r|)|`R;OSrwr3Q-gK z|7^sHw=madHl8l=S35rRWFlTbjdqR1H5~3NV8Za^ey5@*zLaVhX z|8-cv)=0QeqJ#uf0Y%v;44brv&nFp}8JViEnOL&DP$nHLqwIxxR9&N2fkOPYdM`1i z+UQIdk_U(gde{V#2q3lWFYMUh;Gvm=2qQnu4k}XbyVsKZbm^JTDQ-INb)V zB=7#aXn!%H!8mYnRCH|Wfx8#^F7KwKl5Z4Y9)N795CZpIi7dY-C|h4{@{Jn-94eD8 z$}y7X*JXcg85j_(7%`oP5Hn~g@r@HNVOYw{I~Dht-`p zHXU%P4L|Z$)I6 z)b8zbdSa6=shf@$BbdO{Ek&=`TSj65yKO7Lrjhc2Kjp9w7f$l>!0WVzdZsV^ zCpXMS@VYwK2!W3|=hLPApRpsGrso}i`Pwfcn-dr1ISB%yBmCH{^II|+n(p<}6OfIx z0cjfGC(V@WBl)8e2o+3%K>Fm%{vPmqL(|DXK~jqeyY6nUV4iv%+)D7JU{a@M{?xhY zB|JPM7}EvywUnZwB50Wk1tkhS273DgrS|rAsN9kgLy(YoZma;ipQiDIPe(@w%JJ#p z8jH)34pi%q&1(|=0`cO1Du0j$co3y>s5^jCrRdQ=e#N?q_XuO$SQ~^97>nQF%_$UY z0zM#L$@KZ{c1p&m(KF(8ub{->c&Q2G9Z64;=H^t2>-Q*RWo0=ADnN}Nyd;}J=IN0Z z507RLQho7kuv!G*#tjSf+6afg?5msAg87VIbojP zC4&a*`31#mAP3oHUUNRFsF_rGaIEq?OyPgiC$=~H-l6`jcaO&NGFfiT)#N{~oAN-V zYf(3frgjAyq^ru!-LAox;_|r0g486CE6AV=gL0&93hYOaIBEtlWPA_k*M^~P z1{J}BnX=~+8K{R~GU&ZBs9>kFm@Za-t_se~h=9H|Ev)eH@Yh%jKHM%>FL`)PCUU<7 z9shbuL`F$T#KY4pyifD5W3|?(*!1*+ioU}Geg02k;s7`jB@@*s7I~YvfQ5u20D(+G z5DX7+$zhH;_cRt2=5K*FA0p)4zqxjEx(xf-CHRK=D_yI;ZcpmyjjCbGOd~bjlU$BV6HoI@V^P-TbWd#% z+9_~@^ZjXAEIRftM}!Mr_+9qdgRYujp>=W(#f(u)@Jll$O54Bf`j!s{E$Ji zD?L3Ox@{Y@hCKJ@fQ$g(F@kJTJD5zEj4zs2T^ObyV?3C^nlZg!xA8}8j(aFiv&H@X zJmm>ANP;aOsiwBj`+=c(8%*gCS4c^XFdti(yu5sptz9W&0*jf>v#m<`^&E{j%g=u; zy{B&F;lh_{Py`v1=ipnx9pvpnx?wAk%kUPY>gcdT)ErlRo8pf_l6zP`MqNlxFB4aq z?;;%pk5|Xb!>}LJMh@?K{tsvJrz&ytzCu9t2EE9Cs%zknA*6qfndh*D_AmE8zCL_j z!!XWKUV?eOD5Byo0`h-?lIP+5ei?0$Z!B%dLWHoYVKwa8kIo8R5b0`VNO@9N}juQYNc{b%gW(g5>3{SqOY~&@=ms4JopQRhnLAs4>moHEK z2C0SzGuq*{5Mt8ZWyH1;A-^h$^hYVH^oEm$MAT`~f6n*y!S-v<;bwR4IhW}5YZ`q0 zO2tSJFS3C(mvA*mTb}DkRe>+kHBmqcVK!B&`qLihtaeA%t-no2{;6<&S-oNh!*tfB z7b}mG5q7oM;L=M!x2aLeg~;;Zz#^-Wiz&cE&nMX$KdZ!IZF5Gzy5#lh-)QQE%iS;5 z9^AijmsAGpn--q-=#L;~(CfAoSz=;NpC|$r2Bf{R#x4jngB05%l@|=s3@=q2s*0W% z4BWz;YYaV5=cdkcig=8_U(;xozH=KgH4n-^+_IPwz3oT(TXSLUl#*e0hdK&oH}lQ2 zCl+KA+vK&jXSt?}8yPu4S3HQ|t7_Jom3))ipO>E8D_=m9#wW3LG#jUMfs*gf_KO9I zW!5Zdv}ftBo-SLr#!yX~Ey*pj)j%vO+IqC2QljGDncDf%ouN^$kvP$$#1QN(h|JNp zE)DG<^%E-!ULR36kHCe_ABKq!q-A*hA(&tMsaC_%OR+6Cr!re4w-zv&ucW z^NOjZ80|2G$WJ_oDJjKt6wd49F8>~mPiMH|l=~tjXZ?QMT&(@&jDwqi#-lTZ8O4q+ zW(>2hsOV#R{5P$C>t+c~YIK3}N z+>__t>U^E8m-EJq(qMIMFmu4&voiXaIg)F5?a+9j*@EhD?n}~SG~CrTu;0=qPyo^aE=jDe`G#KiEO1?I@g z%I}aTP=bLy$fQtufmC#s9$vKhr;5 z%GDD2fI`r?kWQS!_OS`)fVJ0Zky4jlNr2!i(bfKP@!xCAdt?y0_!9!fN3W%ME z4s0{i-%O9nEn8LUzsitGZY!knrFJSHrz+_3<#Rk>EC0Ow_iyRc`$Lhn%Sk!TFY<(< z$xLwpWpKHWU%sH+q$HQWua-(7kRzdOZNkLiz)ezcCY{qRL_jCDCruw?eSwXY3wO|Rsch|X2o7}z4R$+GjS#&O{7lPgR!zR6 zM;J~`I??W!HrJoor;U%3Ziyalr9m+)_&G0-VT50=rOo@(b+7P#rkpx9I3*R%wf>sR z?gcr46vgc@JV)`Se%B`vCfIv%JZ9Hw~-mzXXIhxwOU|4;=4?)9x#kPlfmh)kc zJnuRU3Dxi}DWf+OWzQNX)O5D*;xa9BFRZ+*8q5FPx2r*KBaN0Ak4ctw>GoK6MK9iz zW5ibuZk_q}mr7vKW{3>bh8#p1l=HjCv{HXA-OMHsH7e^xdq)6cXKiSSCUyax*-@b2C;;ymEP|C`gDnj@e760 zEgr#U`nbRGi1~Ola&EX-mQ&is>Gl9}6nlwye4JF&Y?M`5+V zz3pC{z?5`=>3b3!$7QQZHGxsawH&D5hr2bLGQ1FHTuPGCZo)dlTHz{4o;jp-1g`rU zVvvch`Gbu77~vdKh0>onJCMK`H1O91aVk>#X(}JiSRPU>ll%ga?zZMavj zQn5O1B#6LI4&X7~E zcP`0R(L_)j+E^7P&Qe&3{maNp;|Zil(Yw?aM$!p zu7{M5Sv4nP$KRcvJan*bHfiv0FC5{W4pyWZknitUW4_-&h_j{pi7Y0pUs}o?tc8cE z2REF{BBnG(3j5*fp7Q3e?g_Z#WN5G0>D~z2w^+d9@GM-i)G~xeg#~XDuwvtN3G#e1pnWRmV38ah3|hVPeW+@2Rn&P&5Z-*nXt4u%w~J+w(YHLyptX%Z-?c zRr_h_%6jxM0|tvn*R8EineVlJ)X1M@v$x-ru>RrFMPWy{i`aXon&rKb=ot zj4K*rE+B;kRI0Y=*sJ63^#v#FFeLI(@^RMUSoS~R$47O{)I&#OOjS-SQ_%c?k@;=_ zmKGI5d!JI3DK|28%l1%TmUh4O8AY((Q1bBo?Rjj}TOs|gJW)lkqepCOoO`y{b~5e*2^KuyWm!91|VGAMGHDWCFV< zJPteL1zvV0m4SGQK;zplUkP}_Ps_A-UWXHh1_@bBtgvO#D<&%O7Wv%Z^kQQ9Nq+Ft zzYig%z;HFOODA(iPl!U!nlGEX2p)8b6wc|gACr)gay5V>>ag7rN6^#jT*;sL(ljsN zYJy&kjPYolN2y!U!Dq5ibL3&CSkVllbn-uNi5A@qbw z_|})d+Z)8v`z)9~j#V0*(pf7BkzkchZi$!m$6}=U6--Ja>tB)fGqk%euVChjnIi|5 z=;tRM(Ux#Mw|Qo{(qO4>9R}^O>6?BtSvVpI4myE|KT)D`4{$8gw~UGd#+fyy-r9QD z15v)R5UIH{3V{*O84(97>{ zF!}0s{m2Nfrprf*Wo71Gedw}QG^KkpP>ZwXv^wmlCh@yR@IhBhwxW=06)b6 z~Y8bz%(SfPjdR;DiZx{H)`XVYt<+LYECNn$q;;EX0A_Z(gb#xF> zhex~*89K~tTNNr%w47B-9Y@Qq%_XPQ7IQ*2nF!&!xbdhVAWh>(yt`pqlYoMw3fPL~ z7?RYtV(zwz%M`#F!AckH74KO%yel?r!D&Ym4WNgDOV{oA#N~@FmT+yadac43(yK=- zjF!!)C5j&u2WLuSluKpMV#O7=PK9a9(Jqu7fwiA%+EL@-A(<~m`RP<>Ot)j?ZTH`S z-GRhtKF1hdChk+To~nBTB2mej6^ePV5H;U-TSbV}_@s>sGO#e>**q9f?BzF5efYk{ zWH31J`P1tKdmNgsUmAARyGP4gZ0R_5^&lX7dqYX>4wa}B)Mv>iXPuJ&MHUFXmuF95 zqg_!@TUf^>GvzKB+2Kn=l8{&kjVN~3OKtnJEQ`{f58kje5Z`7dfM3yqAuSh0?Tf7| zg$yikBtrZLaV!N4&kk=s#K1J|j2LL8~j6<=bGmEL51` zvp`btS6!W7Y1TQG%YWCbAz`gsewz>BhYf+X*iw{P{;Q0y#){@o=d;dB-nRD5KWTsE;B#5pa*koZhXu4-<-YTSU$md=O{4SpFp5kdWQEZ zWN-MPrsotbCW45~X*KShhLHnLNlu!XUTQu2##z~U2(n&fe*>x}r<@|mNtNRJL`CX70+%^8%g4Oi@&omd<1 z-|ftyH;x%3)L%}whZIN((pNRrsQc5;{ZbhpBax@qI-n?#3`4V&dtY9k8?54=e3EMv zjDq2D4TrXFlf6bomTffYd?pWT;|f=!pQCdddZ{p{aU!DvIjGOI$-~T;SF@vwM;Ldg zY2Keb7LsX~oL~)XDVCR9EwP0-_df|@c;I;*evjrlHHOf3-t}L0#^Im zjgETGPfdCmpXWe#X}z3$yF;xP%#!?9ia;`UExov`Y~OlxTDm;nQ?>v(*dU#-ZL*qf z4qtdNcl=rUiQwrWa)5!Zd>Nd;<85oRLdz3X5dB+IPE<&eFNU)moD~XDf(&+3w(rF2 zqr)R(R;9lZCdSFb4F zJ2#_cJfXeQ71vhJ7Y+K@dif7kjN*G&9R_;L!SMu^KX9mBp2ZG;8r!Aa!#j($w?QOv88T~`QZpx!E|W}>`JCYNrs}C zASx$oN-SKk-#eIMu4HmKyl|rKac`myj_kdrm)Y*tX!5<+zb#yPHw?2bxk;OmEYifM z90H?qT;VWtzdt$NQoMM(n5gi$%)Z5BP=obp&dj1U4YNg_mjbf`UCoYWp{Su%S;9(& z*=lz*iI&e!yJEd%1hy7?Px|tGy9&$j5QLFTNz%q&WJ-S6Mp6C6XIAS~5q6d71bR?HgwB)3p}ZC~XxP?1-`6hOQv0xF zRS;Vh8zQANU ztlOKe7P!C2MloG#s?0Nwv!L~gbRaX8tXtBH=mUlz#^bqA&C>=I7d>o6%P_H3-h13E z-^h9$EQ{S0eEuZgN&(-%DnX?~^9AHh^!G={l|{t`XXAodZ%S%pr7Mvd=0g@$I_Jux zEA+g5Ppzb@?YSoKS# zwfIbZf=vp=lagntm&gK7F9pXd#Ep*P>r0%fmkIE{wQYYxmb9>ndJWR|3VNwIB^fC+Eh_&^i^8bUA-0*IOcu^IxE+C^`D^0h1`50u_5J*;;|F}eV_Ttxnhvf^UZbG{^&d?-vLu9GjSjY?$iCcWb3n%Vwud0aPM>bD zB1gg!<>*G!g|jCjDMiSWAL&IRW)#bwFtNcF*@!`95<9SvNYx#)9S)Hr59GlW)4|@Q zuQDy2vn0)=Gc$oHIMZCsbHyOxinjWm6RzW>-qc90EgI2lwNd7L3yrAmNgudzfXk3> zw=*#QH(x{YF`ZNic4zQZPrQF;W0c#O>Kl3g`}b?sc|N3)pAFXnM#Yh>*2{7!b3?Cd zeC#oU4L5(s)%@8+;_1o?Bc$hnb0ZBw3SY0M;6;iXXY5sN_JZA)N4LQ}rAK5DgvZ2; zOX9!FkJ{jo|CJv`$TReM3jgtduqPryz31#+kgE)_T^Frvr)}{oOZEirk-3uKV>zsA zz84QgcyOG}ucBT<eUoG_e6w8NO--tCnEJlJEYJ%MWd9ylp!{dAni~0 zHisu!mPrmpL{vc6j-&UVpTlEAL^H?hy<*L;eF}521Yzw68GcI@uMnPiiv#hXg>v0f zSi{4)(Cam+8q|;Ji&==i^sJI~dpEq!`D1*M;UCAvx0#Xi! zzuz>39{-S%$z8*e@uHh*POZY$TBi4-1bKKoZ)MTn#f|b!W|Sl%cPe;O3>wDtN^fm6&ILrn2XR zPE@v@{b#&QV$9FS)SBT;DG7q^OHBmsIFcfjon79{6Nt=9o(xKE&BhMEVvS3@5V2)@ z0jpaXlum-w`(2$Zd_9(n8Wv4!FI}yjRA0K<6$1$$wuwIQrqXsTKPb1l4lCzaJLxE2 z?=X;$(6E!fi!jWbBZg_;iv!vH1$F`#X5>fPuh^y%_Bcp6ng$hnV|BeheH&Pmv-qAbnc`2GGChS%>f#MA~86K&BNzPKUW zFnPYWY`*8z@t|(RYMUv_t^}8~sY6*eOM}2WE31Lqu8T@dR9)`U_u(Y-q3q%o=kin@ zJLM?bnp{+gQje|}QsNCK!A0ZT($JaN#9w71Ro=*0$<$dRI8_;RZ)esV z@43`tzWbZ3)_dma@j>T8rqgiaH%0-BEwNN@y0bn$QnJ$Oadcd)prjBJw=#1QNd)=2 zV%c3(4jFKk@q23XB1926m#-|8rZ92+GhEgL}cb@&-Y*4z{gVRv>#Ke`DaD>|? zH5BFc`25TQ*-}Iq?j-#mxb}{daS{eLjJbE}K!uhBpY~!uV{=+m#?g&u0iQNL`W5Ss z*Z_B5f-%jI6@uw3>HV3u7F3Q`lg77cwuZI^8rZnz2a?xVs@WC2{N5cQ6|+R}v2R2^ z>}Zhuw?JuC{qVctO9QutxU(;9&gZx93kB!LibmHjYp&dZnsz6|t&ZZ-8voIh7KsIq zxIMLFos+fx3(h6t@nAx0n}wRV>WwdMFrTYbP6krtKmBIED&FS;6}_tl?FxU+sAcDF zcIDKN9lyBgTz!b)2Wq|9Czq&H9_P;nHz|7VH?;|2S9pRY<9F~~d)ai}?H>Sb&u(z?E1$}y0vM|cU_T`)M_Kk zUmiw3Pr17Pj!IE*sBJvWfSgY(e$eLJ+ERRKh$D+g-gc+=Tch2Nt8s;gs>#x5-C#n> z9?{A-!D~Fz#!zj(LVb9ehWx2B64BhEUT*VH|InZM3TAUs`1U*>5oIL@EDB<(cv)jK0DGW_lR zX3L+O*>+lKFQ!I1qPVXQmj~RgiJxm?`h|txScn?jt%bPiT72Fw|9Za_&8B8ft9fKb zZ2mhO!r-sXM7Ht1+9OdQc(!$c{Ir%^1OK5XW`d>m7ef_6_x)TD{K+zFSZe)JZ@rnn zNC<1iN;0wgV|(`(X_S-J%<#fTQ{I@cqv6;Y_XQVqDyf!D)b>Y9LudqVh^&lR&Z7~U zjXA+&QTYy)l-X}T-fdzXdVlH0jL;KlyqaJFpR};(oaH&uNYUXGn|D@q+=cVbzmVXs zb*G3u;#_NYJNY+lin02xxLNkXSW?jMuSQ|Z9J{+rZ|Ax%x^S%6!u+wTnmMomvh0 zPcFRU_4(RzOF8}CeQ*mK2RkL^kN0Er@<{ZQCUUbmvJW%ioJil_SNSGk^y^&`H?Ee; z$Q`d3cj&OZe4J9p@v?)$x)^IM<#A7eBL7f8 zc;^;k(M?Y>xMl%st{kSN{^tC+{+D!9G;g!a*W2a{yyEdBMP!r>hl|?251M$|OA{}P zTZjW&+>|hG7W!c|zt?WQNjb_job_JEwEO8H{Y!>koA~une=>j1?Qsmt`eoYyj{oy7 zZm!_s=x1bZ=H-X;IXT*fcQQVlhPpo-pmj;+|`)M{uYeDuqttX9nZHd-vOzlso0^AHr?O!GWG=;M9GuDz~Tq9MTe zDU_i-ysAs3@jYNM?<~e8qLg!y7?rhbZ5iSS;e}-V3IDe*U+hIGpugngv&B4NSxnlG zT>czs-ho5e`m&+*h>ef@K>Gy?+*aUe#B}$@t6jp88=q@Xk_jKxh{-nRh2vk(H&FHm zoY=2oH6K?5e#g<((n38gShLYRtq=OwvXjI+ifN{cI}^5h)X55d)|e(kxdSV_ZKjos_noy za~j`;vMk>|Y>Yndnv4<;QSiowpU!l^jyhF#;`V6VCj=(;>ujsFuJ#sPv$7D z*Ewi9wH)MsluJyzj!ZQlD=hGO!Kz#Z=Jko!#Q|SYKk3@z-YyA`?cigoS77e1^weDA zt>pL!0|$j{J62|l@3Rcl*B0+p4YEf~zWq>{h#xDPSTL|AS7l-zoRIm19s`9T06VM4 zn`l$KfA?UuvLhpB`pxW~iy-X$hHyLa$89pwhMOB}Fq|*%(rgIMSh{jW#!lfnR?_>y z(&Qr7=IgQY2h%1VxS#QdG~^XY`ka=1;Q-&^t`%sA{x zQ*Nf~NABCGdn;?!$CI!{Tpk(W(w4Xyf}^gsbnH7@6e5P1Z+8itqqebZWYOfhXpQRS z7=qgEmDHHXf%jhF|L7iyi30(SI@ri=(x?Zg0kr{pMGv7kg2Ymb6z+>6vl8UrUVs-& z5pjL3bg#|c(RJH*qc6kg@<~N{rgoopd^qhnHePKtVHsIDYkcC<4X6rAWMSF2B;lTe zw^`0bF@0)ooIPj7Mo%;kS#CT}8n!VUdUt4Yz_(zVFA=_+dK3L6sAIUU+L*z)FRX>T zI|i#+Jv=OW(j~>i>Gs80kd)oH!myEF$q&nv8k%8N$#1bmL%I4|*Qv!08svf2 zH-K8O&r<=!S#)Z{H|z za`SD*S=z&j%YK6AS)7Mowf(VyTXf}DABg=yswJk&CgKm~2y^16-f+_y^)(x={A`=b z%H$alUODycFWSu0IRf+_$rC5%!yw{~b~F;}J}x9aI`mkU^~`Wj{y~+jzH>WtI4)sw z;C#KmEjCAwp0WY!^0v$F!iYfpcMD)B=NnD;rTDv#hEqfO*rb)*C^nL}n>&}hC>{-4 zXZPQs?qEx%3~4tual|mrUt)Bj1tSl>+|J&H3Y21@vk^oITbu|O;3v&vr+!Hp!it|g zwA@i<4G-1!XrPvV<-OOpd*+tn<(0onog7|Uca8HJF{+B@2r`dyd`;v6X?w)SG4X&5a*wM}{Rs9H`~>RXpDB z<^1lfOOK^go8~#^_q|7DId#qU$AG#ErnhYY3BSnXu6T6X-k|+-%3)Ayiu0G z5pGk79g`p7v_s6w>ZivW6fV=0J{$hM?Pt4*im#HW`G?nzpK=2K3|m|XhDesHXX5ihm{ZHH*ghTar%KhVTUMomq7;>Yd5Uon=r6=_PxpTXY<;l(6A-4WN$T9_z?=`Ly2Ng( zh9)x(0K=^>efy`ch7xq zq6hDH9h~0S-FqN~T5he{KOJRX&y4Ru8lf2$VE7o}MvsLYsmK{ub5-g-J{uA5|AxHlfvcs!04 zKnE74eRImHR^`fRf>Zu^`+B$R{KfNLrz1mTC%itPLOEgfio7Lm2+(wX2kC-|!r7Y*@nwG6~nm`EjA zO0A?2%;gOohZV$=W}><@2~OiS#MH3e-xE2YTJ$tl`CHX8y;GTY+KuU5U^rCGOC(rn zg6M+I`7YoraiI&gX|YX0GO`wj{sl2~>Lc!f(-S9TCls3sT>WCQjJ!Q$XVio0T+gcd zK<880j=7Ad%ZKQfYB{W=U9*REU9g{g;}Rw5th#Nb-cY$uT?F+wEj5m&G}4&pH8paNgueYs9D zo-X;?V6uPOz#ql)V+HZkkd(pC|43Qh#Hb}Okh&ws8**z|{3u<+S}wqp^wsblZ5WUl z{~?9i^1ep$LNrD$_f5LsKawUsHS14y=6rh#vH*r8_U#{m2C&W||5e94w1KB>8Uv2pnXd#%WxxaN@;=YHZK0RtTB9A9A&XtvqmLb&9vZ?anpMiJE7pJFt zO%rOi^^q~Pl`2I5OlZKHa5g8KUi5b9&Ai(0smgATAJ|aw+1@De zTf3-5yUEA?etvyjG(NR^(53&p90O6zrpC=W-q`W>15_$Ii5MicS61?W{ww$txp}Db z(ZuF29J`s@`gSOnH_mn%Rh*HeK?ufRW%uu=UOi&@YFXqyNPSa(z7S{+7-TRjKEF>O zHYP6=s=Dc$ohvrkd!P!icj|M{LDBc0KL5ZL_7};P^XS&YWOkCi%i~Xn>ZrB8Um-bH zhtVai+niZys2s$D{tt}!O$tW!n~%{-?mUXH4Z@EV*-zhbq=VTUD% zg|wz3zn&hkWKK~19JZW%n@+iI&HN}j1|C}cUbjKj&qa|`ZlCx$6(-ghQ-v=X`Q^bF zVoT5a?VsBOPBk4Jpe5i1({A5MAtWP|NTPN~ET)zCKyYXjVH6UO<-beI(^0Slzvmqg zVtnyvzn8=uD`8+;@U~zu&S~<*PoW7S-3r7mC@j=538g~t5(M($mA~%(SdaBFEs&fGcg3x zYxr}Doq9nd*YtG@3Lfu#(!#U@3vI|fJgY;~dAX)0%MU0S8F~Rh;kUCC&_OL&QE;}{ zr8m2=)NkE?cKZ%;%@%5ZNY@2p?o7v-=2W&qP?Ph701W3mce0MmO}0p^NL z_D*PhU~yE*nDSWM#i8?>}#QpWbkI!5~kDBAqg)7P^d9!1NujzK` z`IK%59BcWh@>L|PCa>k{yl5fJ@83>hdwAe{hVeu~$BUVR5`wRWqTA(&m*wvb&?#g= zQiurn*nn5if|EcERbZZ0UykTefFa@VMAoBMrGoJKb*D*HAMJ~O?A4kHQX4fj4#Uz) zlo|6I*0|Z@r+9M(&vnb4Bpkj8_-@IH@>8H8o_^exR?&3t+k?XIlgn`JRb(oMN5>k@B1L`M9R zeY%^t|7s%a^pv~i)WrPVup5W}+n@4!v~k^)>ds(lXutd;-T;ke?Daej-BsuTSKZJ|#X7U2IliqTHuCPwC z%)E=>)-EmzHT!b)FHVbLn>}X-fm7(uE8MBZvfo)A34?az9v`!u5u~`QJk?wfS+g86 zoCl#5?oVX~tO!n&3=@V=ZxdtIUA7({ky$t)e;ylfUQufHB(nc-)V=z0CvhzNxXcB? zz4~jTW;m=rh=ZhbSHu4L;Fi-l$;sx+DRP$nkCg3E)@uHCWO3}`2zCeLaRRfC2E7EL zWlw)~JuxhZ?q;*5P@gZer{)|1?zB&Mdej>0=={t&@$Cm1di-{ z*@H173;ZThnzVQJt$F^`VvVCR$EGI~6OTsxJso78jD|A10r-9=6}Orb&Ahi8Xj8@N zLFr_#@wsBH*1OZl5DOHFbT0QM#S_`W0Ygq!S-E$uD~KJybpXawKv3{m0tzIUP`SCe zTC4588yg!d)^)!E19gCM4T#6q3*8L#^-rf%E#6{c{;%VDJt|@_Z1`L?k54s?D>dQY7W&qZ}YW1^yb3BNEt!7j$-ea?e;L zFK^oB4{d<&ybFY+P0p8pG|Sh@!|DHX_^|bN+0Pe|<-hny#dUIDa&5jWdIb?9Z*6aF z8Pd4}M4p8MOq*$(fO;eRSc-aFESWRk@4` z+hOCM(InocQ1^FOO}RIbV+hI^LFLZ&XPeDV2!w5yJl*|a9*2LMy}Fs-CmG84 zlhe>+U|P&wxFofrW*x0K%DS3*CNzR=?CFdXzwsRPelz@K?(Bg7to#S{ln?dnX~xb$ zVg>9_jM9plLEky6sKz$4{ru6;ccesW1KOsEM>)y7BH$5k>~&8lP1`cD)*Cr zH7UMh_a)6;h!>lOgKZIkd9t|{5r5%18`!2}aq1ov6m)yHUjq1PLeq9U4;SBAES44y zete)&`#Y4xDJmhMzcZ2s{3ixLFafB}7tdl}04O2k;Yr5lcD4k3r)LUaM*f~M#1;G( zP)BoJjPL{LqhrcEU`+wQN-!q97truVQ>zMziUwTQdEBoP09^cNnXWJ}-%8D{?342|#V>WQYJ`PRPO%4fs{%j;A^)4<4soALJAj868iwC@3ibtkHqZYORxfe`m?% zSbwh47#OjT05sCG5|4+V2vR_B2J|nm2+3NAyN09xdmyY)ff$hN8#+4)j9WcMijybhoWX(kp-vS2-s)4FCbjOd zVm}lT0-DCkrEp2wFxoIf@x7peL9w>>7WRASt4Lc7cc*uY!?^_LMwTpovPFUS*q+c! zwQg@L60hdcy|62ruYz))pMe!_bL(4C-o%JZ?)W~`32OpQ4BuGsFa6&fFNNP||5#CS zqrdv-aexxSonpp+h~F_<{_Q?Qh;Kka$4k|wu@JE%{GG`)eww(|*x}H=v?><)q?%kL zixyq=y_5<7qV47706v=@AZiUHvPS?Qn$4o!bkgMUo=ie?4znC_pPCyK=S$0pjyK@G(LmmLWb-Q|th1Cm#%H=s~lnF>r zc%1ftp7zDjk*z?n1a2jOG&vPWDkCE!Pk_Ak9FQF8tT#je6s~E0XFLb>nHLSl)Y;vg zToncgk+^~~&$?Uysd|>*&ReuJ3ECL|)3ALG7VtTsXnhCRDuCUQk;hPSd%jH@`8ZX3m$?K zD3b5*T@^|+o*}(jbaW;YWPp%IPC;Q}{{&E3#I&@-5SvUg#AiO%Pnnsug!|V4I0(%>x}VT)9)jA{>nU;pSCtsFmI+kPGg$yjOS5_DdwQ-1obu) zt$v8VsdrCogeH9>lw*k_k1X?A$|Fg$JD&Y)u|>IJ1(~Pc)t?<}-H~AqW#ae6hRc1m z6x25}`ksQp&dPnC2Q})}`q1qSK>M_nwJn5K?w(TCb0jE+)x zjrC-Eg)_$L)7f^`TPhorV^`MDX(WAd7=-Lou9J#Zb>? z_hS(zamz&*`t4uJCn;|qnwe92c5)K(#08rJSc9xnrIUSDl zz=aavERt4Gfb*O`yn^cn+;LzfUc@IA0UX*Czj_uQ=@wUacSx58n3hKK>jv>O8bx zw{O4#Kd9W(41fc&-@iXIPl3$)Sv~&Dk2M^|e?~!bIWa(qMN?@%(;fj1aOtE0aNVGx zp)q;g8?S2tYyX)MDI*^h$7uK`CI+zesm{0mztX-l9_#mi`;tf{qhuB>R5Hqzj6&0> zC?z60Gc#KyX`oWsG%008_DpEVEV9WaJK5aF+4%kb5B?AC`*ruIZ(pwKGtTopj`wjM zM@0_=)ShB1L`Yq@4DGT}2-`*5FH(>lWk=tw0ZNQ){Ry5AACdPu*|Pt%9e&-qXI3Wd zRfyhp+ZGR9YhZXl`!YJaD*=o%SCZE zv$++Xbk|z?%OKy#OmkZ}PktbqsNfd=@V7oJqO9uf8#k8i{n2~jouK=*T>GA+*N=oP zqe@?wao+WuWlpj78^#L>DVAA82gLk zJgwV01kv}Ar7u$~`~*&a_&63bzTCLYhs7i(#@Jza_ZrL2rw`ZOm5c3(^SF+hgFsxj@Tw)VwZ(~#S@6|Aj= zh_)m&KE_>IjASNyG79xaGM77UMA*KghW$*frh$d83rmK{8BKpzSb6s#nCE6y0}5ZwoP z`DkQex7Kv1?5<;2wm7^vFCT4q;J|?qPgdxaK|BIKd_Y6v_9U$W3OK*OKz@Gyo`~6H z2M!&2YboKDA0=rMHFu0H*0cQS3P2%r7fwiJ_C9kv$38jct`{P9TgvW3Q(k0Kn8<2h z)%L-3o`*qN(oY)WFY}tOu*sjJP_H@vZK3{9-p4mVyM|6JEHqwPy1o6DXS+BzJG*M( zM~=BZby4k8QSW+N^Gc|fv)*$Gav8k3{HgY?Q@^^ycQjhW4nGZcY4;5oSKIn*>93CT z#65*cKAduH_J@&j`lRv4HAQ|YEXgkIvS~V)8+Uz~ z_VM?;RL9MJz@hL^i;Mln@Pp@?QiMgfsVyGW@it%A*f{q3!Q7RKF{hR~7O66&tB#wS zoTeKU)M(k4-wN2$#I7*-;q;i*cCEpp!l6LD9;KJgH4n2c^l$$fAfpy0K6Yj8$Bwts z8am46#?o75fDL)y>}_!!>paM?US=s)#j;ArNN5H}PRPX8e1Kpo#3(oK*%OIVBO;!2 z7b&okDT8u_6yiywjN^A?G<`_&wp0xL91s!_xs9w9LCU1g_smX1P4$mE=vS>GSqQ=; z!=n%G-Mbwg4z0OOLP7zMupB`GBnpFY`G98ZNoeOm4|&a(x;nS?H(raL{r$4K?UO(1 zsTCkXdNbe&!ka^1b+H@0Dk5D8ELK$0t(&)Q-Kr1u70nYTUL#0hZQZCcBiS33^z4}$ zs8bkWsqfH9D>HRdz4UeRSY7yhRE&8~(_-kbeRi{8R_KNV?&>APCDYG-q21-^Gv2UE zj5!4b%gW#6N^wt_QAfq@8D2TC`#Rf<+WCcvUo3pNBGCtXr1Fw39lvPRb}!{^duXZg z@GK{nM1*Vf9)ooi3m)q#B+{Gh2U9M%RXvF|Ug)i9mAZxO-}e zb@`0B#Wu;a=YbF@C3cOB*5~L-ap~6d8L4(%pOV+BwJ2N7zW3V0Eqez(z1X_@$c3ak z+pmP*rd^vdq*8}d%DUQ?GPEf)v0r^3Y0<@f-z&-qJ&~AG% zo4(Of0&1_&@#n=>hookz8LJW0n=vywg)&yuq>Pj^EG#T-$P~MscEFhjh7Nc;L>`!$ zmi}Q@77^oWNVgfTG0ucq2t-aRh|5i6q<@u}5ejX=xWw15cjYZE%%(iJHiImHVrQkt z%+HN@g~58R*Zcd=6W1P8MSXRNJm{-loyn{=Jz@u~64K)&<}b*!dd>>Y&rZtsEtbJg*!3#2?=ZlqpP`M0Sy1c0e`rEv2 zjm<@`w9UKk?Wq1@pW)QAo%B}%TBa60$$>~VGnUw zUO~aZSEC8JZj&XJ5-EnI44XD@&YY;#$?bR;jsuGT@*(E~Gb?j*^On&!s(4g|C@i4| zYNNq&H8oYNAinX4oSPkkomcNr zKKfe*IUqo;XJLG73aecx9>SD_pIrdY)fO~Fn^)g0oSql?+pxNJh zhz^qJ=S>1a@jyJp8qYh{-8Jx0I-@_YmHVP{kHwM!nXH&6=KdDcFJ*M+j=9)%Mhg!} zC%6x4J>3fm8KIRv*QerTVtaoa`l|--ER0mW)bn{pP?= zWi_ANShTb6QHVcP)8vRlrfqp;DuXQ+8WC-E(TW%^@#oqmAkg8p(Bsv)WJ>tMNoWS4 zyo$c|cq?RnqU-Z?4y|6BuGiW`dqc|+VY*tm{?hF9Msww>7ZeCEcvtpJuTa^!1X0&t4iWuMmX%=`chWWhx3E@ z{HA11&W9y@Y`!=m`djVK^YLw7q41c{#})NgPmkXV8|q_-w}`5LDE_%-eZ%)$`jd2}ny;LqnNA;_T8V+%I!pQ+Y@$@%if4=a-9>o}E)#xqS21?JULg zYQ_FKT8cZ{*qHe0lto>C_7+A++dtj(7gF{cH`!rMm3PiOjP_86>6bGvB4^SQBm-ux z)-C%XnCN{lDND`$cEogzl%D*uanM+V=FHVsJg*s&?#Z8akqe7^G|=Fsxk+$tuiwjif7zFN zM=G{2b$cLoj3rEX^xoDP^Tpan$u#T^ecv&5IDc^E@Au}8k~Tsu)~E85X4V;@G86lh zXw`?}?CCnnb&i^dN1**i1d)FhTGsc+50S(YjA&pyk|x zAD=YUns7lTe&4!duV1us9`u9$GXoTPxb+7A7l{Xg8~+SKm`*-|GuaDhGHU&^>C@^x z({T$TfrmzqH$4wJm_&**^6_WZ{&$%5ce+6S`F{+%JXMTV?;!t1cj1Gvi3tgg5Uj75 z=G3h_%2J%2dc3ACR@h}VH+Q*Jdb7%*LpLv(%Jv7vB!=gC zxzfq)S$B5pft4GT*7Plz-@Jl>f%aiW27B-)-nE->aejw~$||1^K;Qat+;%d7-;Q?% z%fL^r5wXsOd6g~^!)}80(7!!ESy;Z$_BhiY8;SmOL(C>m}gA4-mC=X4a*2@#gt`q0^RKwmOF$ho1?B{k_ih2#2)5I@r z1LT;Y;7tuwU@)zbUCvz!77|OBE){`$21QKOaDHY2m|-OhFZKt3>f zGqG*>tE2R8Ene<95q1b)wVbdB`rw18hv28-zVp$WSFdjM)x;7t{`2S0k4#R+qMk7R z^dQ-+>hUMn^3p(_o@VD(ENqfRP zXQcL~djDfGA0GPI*1%!}4{1C-fM{Z>MMk@ho;|DX;*yzuP50oz<>+Fk6=%<+nlazM ze;)#MMCBWJ>HCi#&jCjzdgDk-tC^WEd>DYBtuM?Ni9wR<buh3`vIY||{21`)?FOiL3AW+4&ZQE{f?>X%`;^Xjd?%mSY zUe{$u0H#>A$c&+^0irgHqW`J$a0?{+Au+d%f`S7MPo>X$w}yQ}{?h*$aCJ{KlAGbV zb2*0A;Y1q{wa47t9EHe-M|=F@2#aCn;ZcY6txfI(E4&UUDExO>)b6-(;|4lF^1}VO zBxfw`N52=l&rj5)n%DStb{fH!q6k~#sMgmW$CYeCD6^J%Ll@RiBD}(dK{wl}*k~;E z?8H!W_{fNDmh&(Ju{#hH#Pr3X#bXkZts}3BnzjfCtb|V>R(#6rDu5@VqBW*D6L946 z8hM%shXIhNC^J9%ih%fg-nDoIw=cL>kmtHQ|Lx(w#lbt?I+hr$F6?J$C1Q~(!r;p~ zolCXGRwhzz<4XuI%ZIOuD9IY*Sip!@~>~CGPuh2^ z>?`*CZ4WiIp5dFZ8$=y?HNZsJj~olkcNvi~MP*9VNdb*bL5(w~;|nokv$T9Qr}5XZ zis^e36?Ql@Le=0f`3H| z#p!V24EdK|``7rW$Hr}k5vMou>yq0D16JFHfcrve=gGr|6xABkGgKRP?qnWGHE~9# z%jJFZ#tpRNz=d}ie`JaFSj)yXyL6YlygawZ&!ez!QpQFgzB;hum@b@Xxa$EhBj#iAQ zvo7n#k5_~Dp0A1Vm)ubM_3O05l_*%$-FPhGGS>3`P3V+F#_iwMRJO%p+bU@z*fAMH03f4R4d(OXq|9%6$6@g2CS18;} zq=%jG>^`8IgFr6viGp!Ow7uHl!%vcuZVT$90hlH80i@Jla;<2->1m5-1|&CbEOhe_ zYi8;D@?s6?mpC{$fW8w0VfZzbXZk~0lS~j;h4so1p3Acy0T$`aZ716;1xU!QUAv%k zt5P?y(rIuAZ7g{_ zf|?m(8iRIS*ze}>0c}m4bB)eM3WqjH#54G>6u!!`dNp)yH^s&6@>*~oX8(c^dN(}$ zFm40WkCq2H*hp^FGx>}2HrPPutkM49rBPM9JFcp>C?g}oseBX@s-?gWc`+r!J|OV} z)o#Uw;^JZ|5lEq*esf+~_qSWkXy)QY8~WR-jx{WA#Z@gv^MZncM#sku(YpgjsEpT< z9G>d2UrtB20T>a!D;W+oNZy0vbLhuTWjSmEDvpSbC_N-UQ@7IPlIb}Q0HS*m2UobE z;E@{OI*=*$dp_j-%l^7x9T$hKgJ}w+Zlez-hxKL!#Kmc9o$NSoJCdj__as8Wb@C9e z$kyBaVKSQWyrXr7@YVV@=!BOx_1OkuYk~6RSX)%U!(|cXFx?>%w%BKeoIPlU$P72p%%o>J<&d_AUUAHLF)w|48QW zSFz6O5sa;Z zfP?{hb`ftFvAF64T>V#bg&9kP!?g-1(@}8N9&d#@%+XtACU*`)d(<` zF$h|(;ovw3gVdXQe-e*XAVF{j%TpH+QULGQyftr6V(u?a5(kiE;bwgUoecgYH4YNj z9a0F&>85y%-aLya%|n2|6hwLJ?7_5@)3=K6AFk?h`ptlP2TRWE)fQphR?2(k@$?nl z-RHn31^I{q6L&bA>B8LI|s&5H>W%){%BZTx=2VWds*kNm3~EKuCL=`%vOn077yZ3yC% zu>;*sPRe#RHntSENo(W~bpUw)r{R_KaO(=7lbE7vY6__6%14ad2>Q{S9vBzNp(LsK zkh4?0;lao9@@~u{h+{W}o>T0=cI7i#o$0^t5FhQJ%Mafm)EgK|!Kv<#aWVG6IlLci z=Hhc3;lqWbmgb(l>PeLXoQ(L@Sf2FC7+e^9x=Z*iCco&ZOs7WLi9YSse_X!3bN6sN z9<_5;ryo2wS8YM*h*|`NJ0x#ctXKg@cSLxDU7>g-Tediq7)dbmTO_5y$f%i^cmenL zxBP|fW0?QiuImt*T93R|F|JeyX4BKcf)>%Dh1VUivul0pD|1fZPk;~AwrfHZ_;-uC z_e?0>Ig-*HxGJ1E_L~0g-=6wE*NDFN-`Ai;{R1J9M*80e;Q#-Ro_mhPh+_+BwEbRc z06);Y{GVT$8fN3<+ry42216>$0A#Psx(gUnwaiU(^aez7b~U<3wRK`ZGzv&jQKC1 zvQbE0S+Pztf@hv)+*x3!*1F<2>7?fjubxeZq%W>{mUov{Yk!rvL$P1<@(B2)$CRC~ z5+c@Gn2kJ5Slovx)h5hOkW&|)Hwp>~@rjOCx0Kzs_;*=M!4YwBTlqx0&#ILUvRyr& z`u*0ycO1>vX^U?q^qaA3P}bAP2Lc)&$cd>7cuTp3Qt>KS+nSSs!rqd8){W$;cW%;ed{c<^WQ$= z5_!@Q(Cgivck<|_23Nk%$DZo;^t^idbZL5{;M#u-W4}e~fx5(4)HZAjV{B0#-5lpm zmqxl)o9(?GQ0hK>IHPBQ)xP%hEfwkn?tMFzN?c8@N$532r=k@xD88{4vz!{lX5wQB zJ!p8!$^X_B|I>bMpb$SSn8IN)jLcL-ysr}Va+B&UVJ)==Igmgcw~bTUiOh#R*&9kIOoP${XgEp*cCSc>1K0Lx^?gt-J(x%xl=36jI}2 zo&^K)Vw03A3?j)@p#vp0esAjZNVO{_CPs!L*m~gPd`Hw=2Ho-34t>X*etf&sILHT& zK|(`lQP7d@IQ7~G!I;cdw6#OjJ<>YYAubTI88CYI z5L9M4TA-BKZ)dlQ{PdX&CU0?z+S{R_A7HcvVim)u2Z9~wnt39m_AQ&rmbJUcfG}f<(`~qdRY5aVpJ{13UxD4!xWZ%#Xq_2}3JZhDl5aY)XH_cM#&| zgGuT$(~2m9*^qWwzin&M~}V7@nv#zbBp%L5CUF8p&z|JRrG zuZ?e3Sg`KURycBm9`)aM;3YZerk=;1J?lR+F|e#nltKExh(u4sg9jzpKV%OTrBuj$ znxAZ~z;nZx_PzR;Xi#wQwHWiUPaX0b{^GOWU%yC5hH9>(j+fLu*DY>HGqr2 z2GKdgg0=I3j`bs~BVb5m&`)j_9qw<8Wfw7Q#V&EmjwB2A?%ma3OyxG_z%8@4HD4Ym zf$U_HeP>S(b=37o6bz`yZ~li9H51?#aO+kltTPMD#EzXgQ-+on!(Y^i#2B|SMwN?r z8d8=}Q`aXMP-9aU0e#ZcB={&9bWw$%C~i!*=?U09q>n8I=m5-`cby-C(4eyEUA%r!FE@KhZ}KE1=WdI4S>QDi23IT!fF&+t_Pq>A@!1y9yJ=VMnS<3=&#*s z)M~{f#hY*Ep?cY0BZL?;EhQZHnt91DT?~au~5NmMDLb@dX@$jQK+$~CR6(bmmb$uJ**p{^BTL0Eh`W*#<@0|*TmU!w_?i`Kz~ zdgPUV{P-9cL_HT5LZOk75g8Bz4x&;Q7|tZG8GX2o#Y|swDvrAR?<^(isM-nqMh(cE zq`||)+GXqm|0x(IBUp9f1(vki67xGSqsXG>;8@Jh-OU&fS2iiXAeZ}e_iQzv`4R6e z3J1KIE?YkSA=<0W$uzXV&hb@M)|HkEDne?yxpm1V?1|+Sv&Ua?yfNAFsXDIx5S7pw znz@ZWs+WIo_#IlZ@kjl>_iC}hwV2V#qC2;uN={sITBb$O^T( zXFPK<>zdy>t8YvnXx$@NW;A>{GOxhH)?{iF5FzYCV8}tASVxSaUrowo>zcOmtXWe8 zl&uux$XDmb5uOOc)}{R_n^4ACZ}BgZn>QE5jW~^6ls(ZKDRtqo_|goE%3)cKs)?uX z>aFI|JfvF3g`Z*&u{e{s_;z?QC_MZVn($MpW>wOS{jOtg#Z>n`VsgsP)p5&~i%pR) zuZuxkIgZVZ=HevAG+2Q>nm4jJ5%+6i)k}NEPZd=!TgADw0MNoD$v)&sx4PF>Y z*#N6A=IRMV^mKKNwqN71L+=LoavDyeOY}c~0G8bjGr}6SlKWD9F+xm$Gw%%V6JdV` z12Ygn>5Dcn(P`VOXVV@EZ@y%}9&&VfNE8d5s0eK!b&Z|8yP+Q#gKm$bvF z#-(ZBwiunvjt?d?76>H)TQwAX?(HU_c(?!JFgk60{+g>g1CHs()EKw_v!dU1$NVvi0XTr2}y1v4*1fYrAtCIB8RPC?r2*#HSH(*mVN8!2p zn1_YLd_XXvwk@}Z6lf>hw95%O1TMmWF4N-X*Z_%KgfsW6H7t7~wfi`$E9A_pI6hiQ z=maJXn3unvGt{IahNgF3CZrro2U8GGwc1t|yh(ytqX$N3mnF`VfiU+igx$3{EMWB8 zBJarP%Wv0O9ZmN6UMOz(GVN(m`|1&v1;SVavCbUkX)%GDD!8|=bhBB5KNVxWQG{H> z5z^ozLp~UFlex8Z%!?P-Q&UrKt}p>vf}Te%0_kUT?2~X1;APwe*kt+`rw~kljja^M z_r>V{FSQQGq7-G`tfHUZ$N?^kz{!NCplB;>P=F;2(p^?3B_b$jAG$;0tcqPg+B4nh8r9D3o>X2bB~x-*lHt=a5zzg+LeVrh1cG>5JOn=**9)!HTzV)Rykq z^7gQBu8#pbsn@VJVJ}>5FJ&hMx>X8mbynp_Pt@KKj4yuE&q2Y$N+>B&0sHC*ID2p2 zydlRzUmTCEuBuW*rwkP5qAWK~AYhZfD}~_NZ*~YN9$~VDyWa_#vA~uAyQ9JT*XrZ7 zFlWvzdnCby$cO^;Hp=i*RP6eIzUF$o7We^28-l7q5dOvSu}|w{Gy?>A*OUg?7`)>@ zJ4%Vb?nK%II|hr!bL0w-L%94*;Kj~6`_YLSbbY*U*_h^UUK4Zb(ZV@WnWH+wEV%+v z0bq#9J3nUGg{cm*##CPw+$`ic-h{iwpRE~~ShZ3cF!M9xZM1Oi;r%-XseTiFoq z?5G@*(K8_1lBgUXPbzWkMt{%;!8pXP!VQc#9RF&x8UEFRWG@VU^g4OZ2<$#j@EW6? z-^=JcE)|<9ubkYD|R1Q4MYDHQSZl0|l{AFFFpjrc>ZVhf+Z>o7%#4@hE z>4(h8t7-=hv`ywOdIVPV3wAC4CPaB@oz zH(+mOtrQh%R|@e}xQT0cuT|$r#XmKBz7kZTTkCf}0D})BA-r{1!`s>0XQED7>)Ew? z9IHA7aBtpBzW}8qkS9?slWH5~&nHM?o|0x+e@;-%h@CdQ$!_K1D9@rITD;$pV>-$@ zU1vSt$zn2`Qc_xqU6Fjk{sGs`KNrxXkPy7Fl0sOeq@V*o;^j%<-$&wvE`8a?vciD9 zgm;xA%bkJnzZbl!1FZpK|IrgCO7a(H^E)P7%H+_>xm6J*$B+cM=2yw{a^lNTBvu|0VLB+l8=0SX&o>7ZT)kv{=#x{dXXD8)uj%9 zSBm^|MR2dilK{v0b9bgP_?PLg(Ant?&CV)riOO zjq1`R`sbM56^K}}n-nzERvHvdy?%aR(ftnB5f>L}bT$}^SW6a(pg(8#y}k}o=}X|(iFfW+lX8**iLZYfo=9n)O7R$Nd& z%;$*6rSg3(-}4u=)^FdmqJTV5JFBtT%j~ovCUn=X)@t(@tZv>?}F5M~Sd-U&P?R2fYAfuoiLgjnCh{~Gn=RnQPN1+@L<=by` zX2*~Szo7rB)bzBYIl~ms{DZF5=*+{utk10FIwT|hoNNHS7b6Ke*Vj6U~62=n$jT?7Fg!pZJ zYj`e+gO5A?%EQ*cqNEEs{fGBn+R%NfebROLTNLIPq3Vtff&qm23EZP+^soP2KX3S$ z=nc|25X8?J4$_yG7tl}H`bZ!2yR~7v4C`L1C9yhY1HBt|%2C;zTb+IQW)g=4y{Hk* z*$$cdo|AemUAyatK%xzmag3AG{P#QsR~US^Yq%Z|@Kk+RNo1dobc9ky^OQ&I@~JED zl=fHEwim7Ke!D)Yee~i89%eH0jLt~zxBkS6o{r%BIbKq;gKL9`LB_OYU^gsN5Md{V z>BI!Gw)Vt1LqiUc}*e-Ef1jp+9OEMg77(;?C}9;w9kRc^8R9S)IhY0L z;6r(N40_ugXY)W^>xS>$Qe+uz;0b^-wlLA*Gm0@1gqdY+B^=r<;WLOn6fvHo*3;=U z2(zG`zBxf9L4O4RJDK;P2Tu6dla4Y2E^;{7XWh(3PkSm!pDIv(K?=+j0Sa<*2c{O^ zlS{cbi;AxC#yFSooIQc;M>x-d82S_gZLgVFFPUNc0PZ~>!5<-0`)9)U4nG|D6Pmut z(}@?DT&qFOJMo2iY`3kiay6@WL+y#};at)hN3XQ5RlO#9IjsA*)aG?cDjCTf3`Z=N zUSeX(@tG796f{P!c8f=z8$=ec42ZoZg}hH#@)20$=o6Ky+S(FK^|uKN^Rv^Bm2lZ; z96eeHs!ax%N0?`~qd9*krb@0YdpPf=0eh2Uoi3QH;pDg*2wC`& zx(3cl;LNC=Yag$k`=~O(ZqA%p2dH6IPre2hjjj>g0qf>TJP{C}2`9s_`6R~0PENmQ z(#27sk!hvJQTJv4N@pRX%dL!QxBWkEF69VmSQ*}Yu+rA^uY+5Y2)*aT%d>ZYYl7NEMp{6dO`9?<5SYUo=YPUru1cZ?cvq?*JAi?ZnzqyJ zm*vY6DKI5(ghJdNx%X-W=(!;1qPmkz%-mQ z9-t*CBp_gj_Jcym1DFb&3**Dk2zZj~M1L`9saK3(qZ~$`gQ8wcTpVn%G7K{HBYm{N zc_VT3jL=a2qGyht@FNXBkmw>%hEotp2*8Exn1jL$Md@)=K~E0`5&AgblV{jjy}f4i zMf%^841PnrgE~O+2vZ(6|K*D&x95}r&F{|O&iHZ)vv1)O#y#(SzkV8xj4QRWZ?oIK zdQG^}Ud!7)e%cM3ob3+F=8w76+*noTyXhfyQ5I{`^6p~(Hq??9?6z16U^C$Wt6>-) zh=v{5UG6w~Ncawb)+lqH@_;@`ZUM0YscS9JaTMU)U^l)Mp@+f(79KsoS7Q{r?~04> z;K&%_fSYA0TuP^=Is(zX7xp=vW2Xh_CAlU2*|V#7y64z^wbo;CrDt0`5p{@GH=Pq{%5aOvcf^lguQ{?hOR^ zJ(z;{Zsb1L1gl^^fF1+`VIUBfDta~}O@UHNxB+X_WigEC28TWeor>)2kCYzE^xWLY z{X8D`^hMqSo-Dxx2<3&CgoGWQNloHec_3|M`KZg!i=FkH=JogYpBoF#e`k`CY*0i? zPC*Mug~xmVW@rJV1!$oJD1W5)B1|oLoc99c^FyccBv5)-7$r9j)_rvj{EIC)S{Ja= z-F^`9{wI%`N%NwPa_I}#O|nAO$E|ta_HC)`e-iWP&T|pAL6hCgLi{aHl^Dd=m5ipx z^@VO9DNdwruBtMaxBgwUV#aL1PR1vo__R;Ba!6RR1EvD3rk@fSDn51d?A&D#Y?6Rt zfL!)IK{xwbiYent)*WqtoZB;dq6{(p_|cpl3`Q5!GF>W&+KKwZXgQ!UHWmvyLe-+~bz@KxUC23zdMNTTTwr8}BXEE#^GD>fZ_XM^iJO8t$ znLE(WulJWT_?Q!JTUq*lrKAK_c;=J-5XZZn8`bJEKSbKc2pb_^Vx<46As-pVq%4H0 z08qR-f+oq;z%tU(B%mP;#GC{Ua(I}q(OkxiP)^mqv0%eU2*HWs5NK*_! zQ|@^y(*$rz9FD;lL)53+M2mmH0N^Gef~;Muj9${$K;zi4y~mHQAuUt(#8E@T4(Z0h z*8Kd5MN}lIZ{D=qWdgP!7WCd2lF7}D?BnF(!YA<{sLYK9dZjM#tHstd=$V-Cp`S)H zBxk+y=RW0AOjSf2XyDozeSK_$6-<;hHypEqVO@Ce1ZI4 z1g#H`ySaO~_RAN-C4=QJsRljsqX~@{9jID_l%j_RPIdh-z-GdzpavfX{T{7(G>N?X~SPIj~P)mXh;SG0yI78U|vUlBr}W&JL^{syaWBhO?U z`&oeTkU=eg^dmJ}wryLU-K=)(*lO@=Ph>QuS#go?L}CJRXu+j>&BnRqEM^cOdydS` z1Gjc2sSMmuXf*Kd*l~*#s;FcLz3pXSp5Qm?TO6XkV5o5Oppu;g`j4^(BR_Mk_&wZ= z6|&>>#>U17kfX8k^Vd;%Mvi;pp5dL1d;}Df8S^WG`5~i$;yfO2^$9RGdUphV3vL@^ zb)v5hH6_I>w5Rx&5s@0?miRgeF)=1CF1K=tY~Q*lH9Lnr+kkQ)03He5brl@x)BK)U zQFDE=A1Ym-lz;t30>7}(m%M?A*E)Y2vadAsyFE9*|6U=nCb~NK`Ik$n(XZY*XWgHo zW3xUfs~8=fnzt=AUF?|41#aD0ugJ2pBfpQH-P?BDTXf%L zL{>rz5emMk8ZJR)dg3+%BcmzqY|33OfJa_UTbmsZ0Zjt3G+~p0j871G1o!HurXyI^ zpvUa-Ju4;3n1LKzBSsD*BRn9h;UVEayw@Hhd}$O3pMr&B!O=zpBkW@UHpcUenC?s! z@hm7{ZIkL{=G<842QmOe5f;?cbOv$w;Qsx~Fn+3_+1E!3T^wM;wm|;9(EnxIz$hjO z;1rc3=v2!%Y{?15PiWt?RSglLsu7z;ip$nYuQ0{2MR!aV5Dm18Drzv% zMw{VlpgkV2jGkRT{#OLfO=4t;v8Qq1zK0dDuV3E<&0Ut85qk<Kw_Wo1UFJ_*qu zQ0d3}0_HY0>D}DUt7@_S$)nvplyL?65q50_Q~=x@lpA9Ibhk^y!rPVjw%E$-3X_j- z_|TU3fquASW2eI!y6KT?4JePhJFB)ggojHxX3=Exht@jr@Hx>hIWd)cZ@aC#yDV@V zf&yY729{_h2)k4S8zk8WkSYeJSAh)@-2IrIUO6fhvcbtj5wp2cF;&9T$6mn!d|m{* zzk}6eM04~~sMj*uj4kmX!Koo}!*9TwiuzlwnL{?-3{Y|& z2@z?3y|9cB&(XON+!*B>n2pH8X?xQvdJK`6-SJAXuSr#f52?t`#r!<#;`il*j*0b0 zPQb$59_ixcv1wp^YtXP9J<1G1zmciwIFda&i^Kzzw0cWYER&p!g~0^+7Ir4qP}7Cd z_4k5<$H6KFz6pR9_eYC2f`&a_x)uoa+*GN2$?)X3{NlKL&S(i2s<$A}0q}MaTi7i3 z0q_NogC;CbCmYviZefw4W=VP$6pahW;`;2gs1#(!-fw2pq8grY(Sv>f3URE+eT;jS z7GzxLFtf7i0!~*dLXTR#V)j%7rr1~-hR9Wfj(GdFcTHc;ron7h4iohWYl4Mk3ORB& zIF@&asRrqbd>gE-tW;1@DVcO*;&c+YF#p<5?a)S_gG$f+4RSZJ*X+KLx|Dx3imuE_ zK6OgExmG2pwW4Qt{<#k&o0j~dE7RXi8?)Biqt)&}qs#g>NE&!9&bAI*8Cy@znxb!i zH!!gaQJX^UB?&CKD6D(yM|uhCae0O#ZH1ug+t2(o*K->bC%osoK|%SGY4?MJLEH^& zwjOp8r7y~25Od(Uv1s+Lb1JWY$*7_v#^Ag~?OIT63DYvJRqj4g)z%`i-#$LPck!{T zQ-jQRDXr#rzvfFv4D=BMnsy6sy?m5H~wY9o!75VQEvox0KBEB{l-)Aww`Y5RBU28TeqIclAeE#|F#O0_2WT)D$fcr|AC-g-RF;y=M+1ZgZ{;+E{ zI4H>exK_{FKiFklw)iOP_Wp3ci7np){7S4-3|BhoGt$t7$f-@~B#Adl)uR&+d|;pR zg1RQjK-B7+744PhPyaI7nhXYuQ}(Uf@86XCoo>AxT$CM`at`1Q z;JAF;|Fc+nTGi0CT5o@ii?S1s%nrq=9j~&iT%Ec&IFl;zgZ*3CZAhWjqzhLp{!0H1 zK*s%rdz~xZRW*rTNR`>El(1dv_cdED34VPj&hNed%=(z$!NqRPdWG$DH{XAr%YF9u zAJ!@8_1ZAs8R*L%u*)m@gOgfUQmfGDGH2HBef{SNYZuY&wkg!th}^WPZbyErSNUY^ z{fB=)U}JMR`PO={@Rx? zKhk)dGPI5U?Dc^Nf#2`7Nl7t7^vh2c_X;*^7FQv8DZM}smnT22ooOtb{4p!c;v>vI zwf)aeZfT#~yDZ{#*JSpdg8Zo2F_n78Oiww}J-Wl`u_JEM8@2yFu|izVT36*x*A+!4 zx6l3kWuuK#=PoBQFeWxB=4>z6#I`7%t-+MH`rmWlTUEG1Vv}92@3}v1YUU4-9h>ap zm$iR-rkq4>%t8M}lKcIcU#|VXUtS60o8X@df0ibI_|FA@7CS=QpWpxg{>%T<*x>)> ihyVYs>(1ecMJfxsTyJT`o1+x`IjF3rl(1L-^8W$jODb&u diff --git a/guides/asset/contribution-fork.png b/guides/asset/contribution-fork.png index 78f6e09c4fe2197af5cd1a863d2b9f3030a61f36..889f4c10a9fe78ead195632e90ee27bdb16b02c2 100644 GIT binary patch literal 18802 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 JPDHLkV1m2iQJDY$ literal 22171 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 literal 22214 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 diff --git a/guides/asset/contribution-workflow.png b/guides/asset/contribution-workflow.png index 35274d0f06bd9eb450f0ed9009bb30b673a5896f..43745b8e9571bf0de5ccc0195ff5277d98740596 100644 GIT binary patch literal 71603 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� z)b30}4oDWLTBzs?g3?pRA`U*-B&y#v4S$mBrzX%C`@T{(g|8i+B%`q}Pg0BN=#;pv z=zcb-rGpY8z;7~l@4nQr>LHU7FV%B`L@*t_m}5}i(htarzXGJT61J3Gqnq+>$kcla z8wxQIO8s9L?qZjj+&mP=p^Rh%(p-C$AQ<0p3VQ^!c8+K~mRXw8*TI?mr?#He;s>Mm zF$5r!g@@N;UiUqv_I3w(P*jaEN)u6tdsL9{qM|AL<<@5Z`5GPu)T`-8WJHYiPB}?y zQlj4W)T(`AgNw2voXnCFgVwX^bUA6_vR|Ed!t(a6I}gig9sXEVuqvVu*05V!i65?? zbvj*@D`9Xs^C2Z8BP*kZGk8-cCK}(i_NwErGOF{&L(VJvmNs6){3^T@$TzP2=Npbi z&DyD+dJZ;%tnkx+A2)$DHx3@HIpj!@PyZBtz;`U>|NdIjtAE@}NeEr>Kfgtx7)-nv z*_-~~7u?*}Jn{%B{Qvv={wYE9p?f1c_mzMcqee!A_{?C8Xg$OYN zn4RzxADiO~{P(71qDpZidnXqE?|Two_l?d8im{Uadld-*8PabU#bsjR|NSG)$F>`o z(rBD$VgJ2RAY40#yZj`L@_&|RUUsl;nnlEkmV(9ppY^fk3^Zby@mXv~|M%jC$_k4Y zxK7yrcM5LO!RFF&?3`#1=>O+Zh7z(z{N2CE{iQkaZD??!rT>4|W0kN(cDz|!n?+o_ z8u#C;67zGSkt`7W&+ds?N-sx%xc$V1$#x{|c7ue-AYzoI4yWpjsN1 z%K!V3ISqp&x?!pcT6j*2()a)V+*Oe~yf=INNvi#~<~#rQR9v}TbC>El|L1Vz1PC$V zR^P_7QoSn}Yzc+`dyZupQ6i^J{Z@Kt|MS#wwG>j%AJ=Y_ALfYT1^wTSI7?3}*se=F zF2(L*D4=Eg?_q>XuS@w24 zQ7`LHzqAHrAqKK7yV`0$=|OXwH+x>c9-xP+IK{z!=1N=Phbx0@b-t3b(+?>-lZjjB z+Su`Fqshu1L+LyIch8$WW{{>*jQe5x9hE?jg)YyF{jr$T!&+T-ZtR3*evYNKn*2P; zRHpUwrx-PMW<~M}Dr6JqdFqD^0%)38mb5vYuRRXms4yEF2hKu9q+r7TFt{jo>xWV&* z`EX!V(Yu~3r#bL@>XU|B=afU9`$1&U));!oM(x(G*QHSTl1HLAr>IA3@VEBpNhgZY z!>&CL#;`HvX^G(3Nubw2J(aUfr1F4PIv)6LoAK?>}iCy`--H@TVn?|$K|mIm^? ziPLKAIYyOEG9)2WcN__g*n-)@qvJq!;t_a8&-W ziUR10{e{$3E71X4SFw(B=o+dgLLlHR3MNe^F4`efek$NlGg<)(ND z@uPosSi;EuYXz0>KzGzUxvv@*ydO1I#gIgcBa_6g$fWpS1NX%L+=-Bp@ET1cNqs#_ z-$IuFnri#$)h22CPC9pWhORT2{@=g@>F89lyou4mmv*61lt`cFl?L6Zf5it>zkQp+xd;_m;=lb?<2?|@$EQChi&+qAu3dXNjA*r8N_N2ngci6zMe}S33 zzmEMb7c1Z|`l2mfT+rVGDYSw@;+*FA%FJEQY-|jW_#a~4M3R&k9ka}2Wr6Ll&;gu> z9q6jYxvXLHg*WPeC3%2Cmlp~<<MzW+-sn#y(T?<3lGL9m9p1d+U)ZF`VV--x`z$5Mbn)y$Zg!`O<;Yv{v65hZ(h8Xs+PZx$U@%Y~@h45ATzFmq5bq-{f zR%g$8wh?t&>KB!-z!Yet;Xk{-miOQ*9*17%EF2gsYnxA1MoQHvO6iIBndgsXy~B4a z%l?D&N3SJM%SH)!-@%+>)g^+<(IJ+(h0nZ#=$au*Bzj0UAu** zBx}EBID6quPJx5E`TOcw;-eJ$x7ar;-8yvqs|sC6$Tfds{ggKhoZZTr%poY=DZj-m zaiu#)v;TC5*0u6X_caGY=Bq;2wr)cRe_ z!|~A-Y*GZNbk$jz1lm-vm3Rm*n|Ra4wPQKULNlJmM#b zI~Y1e%0Ns*mnn@L9I?^|mZR+~*X5wuawg_HQALv{eSD{@`yDYc+T`-QL~9>7Procl zpehJryXvJEr7m#cfG%HZxVg#=`c5KA`Fj^rh0~m=n+cp5TY7NpJ(lu)zHd=CIfcIl zdBt%zuYVHqxzInZe&X!OH*7DehQ*mP#v0yjAvkohCpT_joio2=%|d;dxx|gnj=IJ_ z?vs@)0oEJ-CoG7uR|bD1K~$MXn*QXRjn(w(i-HHV{dGRsl+Cgs7*O0WH;f0<-_sVj_2mgm}wST#8k9AQcH_>W8!zB%sQ`3!`rfwRw=E{-4m z7$^!^d@4tPH7V(KJFO`yfbo@~+yJ3!$fVPEL3fS!3fcLrAddH|pUY_^sPN0Nw&4Tk z;#lD#x7sDzz9;rwunUzCFXPOM&C?aqsC>OO0X>3s*B#@J`fY4E>wgG-&di%4T5jir zp8b?L9QVf5p#RN7i}uU?wZ+`Rhir@?_YK1X2;Mg;veTU!$&jL{23oX`O21}NB>yUn z7WSm>rCF&Ux?%zw6dV0@3~5QMKH*rXc+DLSNeUxuMO5Y8xU7)I%}7Z`n0W~HHm1e| zrT1BSva^EO^LC2KKfqh*;_|Fp?{JNS08J)Vb7!}-d)ba<$X?)~Af<{VQ~B@oY_WT2 zvZQA0@fuzS!A9CxY>61Im_0Wh3;8umD)!HpY)qgV<%~9^!aZY#_#;A{ReieB8f~fN z+S&tSRb-vSHBMGt6dfjrHFb{I-vEru<9UPAvnGESuTFNn;pcbd^l885X8Ij;L+-EE zehtUGgdjNkcWSe_$Vs*7r&q+JpDeG0<*C9f*zla*W3c%rLhM@Li5kwYyAo zbN1^bHorEHZdS5Tc&+N6KY1R@wy$%LaPLMsHku_Eh=i~d6n=1_oCYPOi6~LPRWW)w z+P#YbL3bz4u)KU&Ueqj!l)yf#UEhaVbfvhVgAKH=sR6bIuMtadQz3@kW=deYOM>Dz zTa^E0LK(0Zr(J%eK;MTtihaM2fVmtd3iK+#X#svc5uttu44`|40(cWY!kmaD$vxR0 z5}gmR?dO|f+c1gX$@;L$M9Z&yz-Si`4}F!VN`4mx`~(U!6I;@ke-MNAes-mYPQ&Qssl=yc2T@s7OZ4m#Vwl)o?hNJG8 z603N>Jp(M7R(5+yukQozgm*2;N$;Zcim-d>;t5a=2~AUz-O-r+h20l^n2B zUMnkT__vQZO-1_J8j(`m4>+*4 zhEFAUl5}?)uovXkhABMRFJ!GWqlM+&l za-~r}P}%OXDt&5k1+}){#)*f)^@CLNx=D>0J2`iaE1iA%Et%+F%pSM%9_*6md>WK? zuGIhM+ZZAMZd8+j1Y=G3Azt7bWdInLSyc&wkvp%?MHK~X=&(XCqhta>^+{KG$x}ty zbPQV2?NK3Q@qQs{)xKX@l*pks8bOH+dmKFXYO;QiZ%a>Z3%45d!f8XHygB0%zp-dcnNfBzwu~J{* zOXoB>R|y|I=Po;`R!r^umCX!L5TXrktPLKnCYRo@ZVYrV^01|>^_MSW#vEzh{8~e9 zwCiyhI1la zX%=8y`g|YAgm`{NihZ7bzC|{N2d9lIhk)P=ie{Oe6Bf_f&;sL#k%i2Ke=ydr9wM#w zmm}Ex%ym|9< zG?bVYkW)A-l*w2c%;VT%Gw`C@sNo<=?Y!8S$b((yjWZh;r@~X*99Z>|pS8-F167f# zgrH|T)8%--68`$23&f~NcE9am;$xc*3j_|BGMg*D*lmOOoeS6FAw&C4L+L(Yd|6hB zMK}<4CCFvO5DUbrpFC|{aeAUpi9EkCP18&ED`T{Gg|D|KU?`KvsJ-20B6&n-T1ts< zV2}gMZM!bkIaB zW@S#}P~Lsfw-nT3l3I{2=jb4e&mGPh?~m%A$B)ATEqZ?H?yi25L+jG&7V~+hSf0l* zZKxWTvNq!Sd<2yJGX2njas`!CgyEbSuB^AY((xoIB_?|(>~YZWFwzvR#D-N{(k`{} zvWqzcAZ!Y5qB)I*4i!8_K6{ct;#9{Qk2@=o!-UdcMRpC>BUf(YYFVHyj=VSPx9M0j zeQ;W5&_!O2BJ7^C-m|5RoVzi%8Np^J^xmgbt0(-`V02{tQXes9%l_x^E1*@_Qc(75 zdT1ev6jqJKi`9d%~-3+ z7SZyAcG>_H^*f(-#nO4sRM|B|X6|#R-;z^jC-%hXUaj~H=Ifo;fl4)%f&A*HA~SXh zQvDo7SN{*s-cMw<&rRn}G<|L|?d)h^4$l$5S426avLg{Uqu1?i-+kf57id7cv=)qN zoGn_AYX2kVxD^n1OJCN--;!|dDGAoVUF|m6xR%<@#dr0?2!?ZQ6m%zr9R~c3`thq% zaicIOi#xI?)OWe^5ea?tAu&QXr;^u9w%BU6o|k-a7%e>B%(8$78>9_MH-zQ#^CHF@LdoVPxD=ua(!3-YUUG) z+%9uGhJZk*Ko?9}*<)e9<`cP`Gx2xATE52DssHJrTr#}Q-l`M|@vJg1wq(^&4%=c936Uhfxhs{K#~`r71+G`icXZi-U92Gk?i^&sYB$P`Zzvua zu=C;j%^D0tW;~v*h?d@W|2$zu>N|vy?Ju{bLq+4ps!Ii4Bo2ZC{zEiXR`>i!_S)*N z0(jG=6b~ju7x}M+b3A$R=sU{mmfsiMGl)?fV?@L8zt4+CavS3EBl^g>B*7fcogvBB z$H$f750U78Ui74G+xV>XACrq%Kj z2inVH9sej9ObA1;41yVn*|z>xfSC>c?IoKdsXoKxb$0U#G4Zj@%(v(Jfcs0?lc5re z$|#62LT2p`!Ck!$e;~l_X}dBc`d!=-sn1mZj5z!PD`Mt6-h3uM44}V&MpVSbXt_0W z(cp9Xv|ElP>xS}^yJViXiObZPhH!Tk>=v#A#I&EAgV^}BF!>E}AK?S)`5@E%<94Ee zhR*|cm>|J?g~#MHEU(~WW?IDxzn|P@K?O4vrSzwQmj_?_x|a?H<)TqT6bPak`CXg% zUS{8e%zZ&}wQ6Nug+or{5+vWbPbR#W^UGEE;s@$Bga`p+xT+F0f~E4R_XRsRnE$Q? z<#0S!pw86#1KJnR@UM|d zFFh%e8BeihX22_caRcx;gD*l0$3ntu)YpsQs}okhRq$Zld%s7gZZGFGoos%&Q%Ihs zMiYhwY~R2~B#{8TBbDFHaAn#3_~D`Znv}1xC^Scz@dV?Jx+x$A@s@~(|G!aWu$~Jf`H0o%gOJ2EClSr^vi*}=) zNj|Mriq&N+{;#8T<&!82jLi@BB1kIAA8b5i60pd7rnr>4o6N-_ONkBDY?71#W~DL_ z@+DsDX9Ck(DohL}MR2r>P8{SSL~(-z7ZLm{r^5>|-gj&on6D@>ygViN9dent!f~R0 z9#8hYv#jNIw8Z9-Vdf#sIPdcr#fMA>@X+AEG<5z*$b^Ox(<=pBzQp3!R_XMLk*Jf& ze|C?x+>rq!Cg2m2uvy&faZ|ibo%2cWEmV^L21&VuQ$f#BS`@(D8mSdJ;{Pj53Z})L ze@=(I3fhfCGHceDP~zwQ#@j2yF}D)`>nM)t0-n@k_AIoE`~f%vJb9$-yv!r^fc$zX zJYcD^xIzCYO`h=}k^9ewR}AG{_0_c?M`ZY}PUW;rs-}_gGm(K`4wQnme1R9cB;&E? z3~=EALgfa7c=pF$x(~exyeD|qkl4fhTcK*WnZ*cqvBGiLRkAPjaEnW*HcXN+_srK_ zO@a*gtE+ugK}~I;h8JU>yB=6p+$Q-jxF6O8c0IVh?Ce9Psasd*NO6#RO<8N&ceXu^#2cHZ=&1BU_HH z)jW4cxs}ycvdvY?D_^U_@HQBPUh0f64KCYMDdmH`e z7=8N<7%5apT%nwkc+6N8l@5s{M#Fon^)NzAj#6ux>%0LOD$c#vHTeYePVfWJfXPg1 zf21RDzxg}XB#RX%MknKo0A>L)MO49MS4`>FC%#0LxmcbemxdPtFUkhVP7hKc)cDW( zp<7Hy@(k?8!3D$8h(svytzBufBdyv6+Ih z>{3sxH(c~5Ah0ZTo6-;!yRJvZnObldL5O7m1s{2H zAMF(heL8nde^-yf)qK{gu1Wc+A`|F~ABp8ypbC5juM4&(SK}LldU*a@3lJA3%_@<% z91?)sZmgLJw{s(87SPq&^E}T@CQ_ZmQP@!^F|l!onO-b(z$KF0##4Owp6EX7i|J2R zjRU1zyZVuzE<%X|ekn-_*F)(DRJ`k*XkykZm%mK!w$U+rRwT`d8Mc_!Ba(1>tXG_v zC=-ohURYo`T(8bE{)QJfh*`{pq=6W?Wzd+jw$JO?V6YWXOAym}SZClvOd>~sJ$w+o zi1syMcZS{64xhr`A(CB5*Fp`st{KjZCo6ho9v;V_31%ocPh}jg|0!@QF^85OG3`VfyNm&pT5B`=ioHSDz7M14);2 zW|i!7ap&Yp+0KI8uBRD$9E4B_COh<@&%EYk*eIw_*D{s&4vyz}rG)uo{`N)B)$VEu zpeM7jD+NG7RHe~?(i5xWQhrht%BwP2ngA#EVn+#Kao$X1@^pUu+_-+z1=5R}vl^se zTSlH&5%)MEzHGH_!&jP=ITUy>!n^g~$oGBEvhKcJJyGZndQa|~pKpjSRVow{czaQL z>rz_8tpeZSB7>C;SBdO=yTA`x<2*5%a#*TIjbkGJ0`W2L8db&UO9oz^fm&@ z{p;7cs|w}%L~PzbT@XyT3AAM9XGJBXbXzMdhpZh=9Z$$apde5Ody`;vMvuhFhRom1 z(n0PF-`j$*2OfdjF5`@Pwow-B{_5Gu+g1MOkKzKWe)pO#I~~kHqnAH39&{)|XJH)s z%0Z3P2PBmq@~vyIAUEsCtG2G0nj#RzaLbIk)+9*k9P8GT+Ro(*>qUvG@u&1@3Jlng zC;1O<;iP$k)4FnZvHs#GWWj=Foxz0yq-a||qPLf*(ykIEGry}R{Z1Gl{|Q)KJo-xb`tu2V8vlmgbYki; z@`I-AQ2x-ovmeC&yt#ely62DjbDX%r2mm7C{55DC^{3b(x?~!}e&<$PM|4HYk56x) zZo1eDL$$>ZX2t+CNyg@i`r6Aqd-TjF-im+vvn;o7a-Vb-`K1vfT)s9FwSD#T>-i?0 zw6M!wH(z&!SJIjFW1S(vQ145+F%NW;giK4q*3jDGk(8K~E}Hz?n4KNXqiN+l&!tDw zl;$>cNDfsK*V=}TIXusI%}u*@+wQ%OB0I)|1+~Sk>J{Oq*n`QWWMwy1(8$SR6DPIW z+q!3hCoqF!ZCBT}%uZ@TNR6sGc=r(Xi)!t5gOu3jn;VByOglnyQX)j8Si3b-&o#os zheU$_C5~@Dr2qyKjjv&WLGX&P^*Onr0G7;abeZq3tJmedSISk`p6qXdaxJ?!fF@q?gm~yf>{ZegP+zHSANEK$ydF< z9M>22bt1a6VuJV@dFw8Qr7a0;v03w?^2wq^`Pi8rd-)S^6KnvH8->rA?r~;X6cDom zat_0XXx&aaZ{x3)sMqD1x6v~Bg~VUFLKcIIO6JzM%kml?u~h=13~yW>yIjxYJ7hAb*W5=cG`7_)QWcky%Ig9JSQ zt;vi>09NG%2alyB+X;2wfBCNl8O3DMUe?v{XA~R9>v8P*ifaxPFnOx~>R|TS@nDsvhl6QO%_n@rZjGDZ`PITKD@-cWk~W;d#35nfJ)J;3EVg z{pDNtfa_EhqVSFyukD#Rs1J<22MDu;k)&L5lNrO*yP*|{SJn~>t%H5FbDiKxXwOs^C(m&T&GU(ZO>j(J&>yCaafvh#dE)_$xeLPxG(_^ zm5BwThq8i4NZt5G5td%fTxpb&%_Mc=$9;2SOeG)&z-dle15)%-){;hOq)n^%e8HUoV2j@tSwLU39?UKf2I zs2`87w4HnnBHCtPr7m^RoN3l<5e?iqu&Vyt*$WqAcn?0@|92tH8fOZ!o;ortY2eh1 zx$EaHa|7qrXx{SjWuDK8gT3D&8D7A5-~eG!d37I5SF1OQ_lo>pW^qFtY{(wqSf4_4 zpsC=zhzq%~|A@ehmRwNwibl1o{LwWr8EwkNEpb@b>iM7xqR+s(!Ln}b$w}QWD;wHf z7|ptyL%Q}XcV)SIsgXbf#==AVfvWW7YgUy;p-$u=G4%##aI#_XY10Oj3;4f>BVS{G;Si$^CXADg#ult# z)gJ#&UHu{FVR+X~`ghbO{@Mjh0je)!)huQ*9q)Rt40H@GN{C$souRh`ozeVJ_#snf zZv}{YN+2M!DXFp-I>lt1E5)~xLh~RQ_d$0uvCxvBO0mm<-F9aJ4e)pm6skY zj1lxKVWHWS&{Uo6(|wDc{b35V1;L1kkPrw!gF2bJGF_=p0!sb-;8eJej_`_10#z#} zwk-I+8`TcC)fsdg|9KeQw=SfsYiu*`x^p z7>81)G!Hh8COQUZ?E-jDtOQq*n3Xyw4j=igjn{2lSZ~xd&GN3CN7t*Tq@<@0*DXns z;;~?9V_{+E9(Q|FCYt1OV`0T+U@6KjGV|7QM`K^zWm2R-h2M)+iwR;+9WPHBw*7E= zE-qYJ%@ZTtwz|IHX6*HD6+XkI2g4^Wbq5FMH5(T>(bQx-<$^b;+Z?t9g%8q#ZKpZn zEp-bUZ5{E?H~In!iO$k$AFb})7En!_w^}Yte$m$(u45S9*N<8w3lTp2L9ywAo*f#x zThd;%@ktwmT=bRqPig1z+w;awWRBKcRwChjLoHb|QICdFtamf=F(z=Em`k0h2&_BX zRM)FG-F2_Z59`&bteJ;Alz;oO`6MI6{7t{qDc&b0-{kx!zVX=~GRp^`HrO-uUB&o4 z%O7~ZjC^T>9S)MyIHXdVbD*=Tu+VC^|KkwV+{*?1iO0syJN!0&E7x$+oo?U2WimQ6 zVrBg)Qa;dG6W0O7)l-VslXnE!$nI5)MvXl2OWn+R@i;nVqprQz^fa!eB{nic0$Z4T z>Cz>lKouX!h{7s5{&cI|1Rj(;;Rcc@e`Pbs9#cP-dRB++@s-c-txidS2^5DjGKNVrx zd1G&$wI}tec~#-|78F!os|`bs3zw^`7Omn!6*DbXNJB$g-p5VQidU_bN7hXX&6`S4 zNyRt7j{ji#HD2ep?ta?5A4Mu4h2D{?)N!6CKt{xS{=Gfd7KTyTc+C)%SK3{c7aw~| zCs6Cm!LU)I>^kb;b=&m(Ozi<5!$xg%l8T!{-1NyImf+jbl&qOR5`2;?p&OQBiyT}l zmwV6Gy|n#S9vEk8p>p$n=_>kehH723{j4Xk|dJ%jZ$Q>b&BX&p`rHok4TGGl}#V+zDv>&+qtLG z_apza+3?>3v&1AVuS4@%W-Jls9eH7!C`X#eszup*@~?h8zhY?WmHx-?T)3dXkZL~!&+vD2~>mJwWg)cXS$`2abnj0pU=uf#k!7I&WcmJ)S$dwaH zxz=s>`qy^>8s|2WkH_(H-RZ2o)tRR39Xx(GCoXTPx3U$o>YLk`q%hJO0 zO44HI%v#!~>nhei?46l?ne&jmqZ5r=H7>zteCJVclGh!b^Dsq0lA=3x zGo*|np)JMc36XS4f6h+?7xS3R^e>0qba5IPaaMMyew99M9T~Rb?sunKdEnZQ=f>03 ztFrJ#i(fMdkyl!~p%bkmQMhVE;Il^)$3>uGM_r zF>N}wD^?v;NfflAR}VcY&%;7@ZRzIjqAW{WaJ|by7}|=3)tVg~eimQtPz<^|XreGm z|716SG^P+go5WXCKYYbn2o08rT^Bu?qVMN-hm6d?OCQ_28UI)RSSH6?1#^8-Ux`= zC9A)yi`&|_jH#tkAN6xkQ;a^9-K2Tx$I9xHA@4~>HtbDNWAt5YG1-E~yKzfgRh4Fn zl!nty*s6D{0k@V7Yu87B`|6gE^Q-Aw3%(fd!>IUAcGLOpqH-6C?^S@QF65Z+XmDZZ zh$CO!-X4278}V1aRS#`|@fmmah@r$nr^Prnbup|#@tR3*+1KZiGZh=S*`^C)mF#!Y zRGS|>>C5n1ao_Ms8z?Vin2K1VS!k>;7n`u$A`&x~R~B$SBUMQAB2Jt*^xPOuRz{)f z1oqG<$znTsZFtuOcNIR&Jag5!Xn8wyI@IwT(B7X zjpaL#y*F|3er<11P$fPbro1v%3bwo5MIB#bYWfNbQ-S5UFNw4s5#;$Tnmb*YzNOw6 z-Yiy#-FQ69dv;Gg8eS7!_-Lufkwwr;l+V|NiRfYjpZ8!mH5-PJ3EnlYU_nbqq-&%h8O%QpWyZugSYE03?t|gOW`J&oM2qPfvqQ#A-GD8)m z-lA!Mo2oZ*8w<@$4@p(*-W{7j%*iv?VzV}p^4cZ&d-73uZxX17g>u(#Fc4UqyxjO^ zcG&Qvwfy6qMP@tVTkMBI)q28?Dm~%4#1V>8)76Z+wh21*^_eiBli)qsRZP)q4=J9R zE%HdMK3zN9jrBOYD4V~*EozQiUOkuewPyPgk@{_=<`bsw&7m3B^8<@tXQ!O2%lR3Z z{8FN~h#yt2-^;6#a8ExX?G{-&J+!zFg8T=gaYx{4{BG}~tKU{H)mU;_-Hrm!`hCMU zgoP_pdx#Q1?J)_qKPdds9M{vjt~_P_hBcMm<7KIm$B$b?ZwOxW^4NRL?4g1Qd6tdw z+Ut&~KKI`D9{d^J%rokymwzzvBt834_wzPfi&qD3nQhM%6KDpj$57cu)wayn_sF)U?6>uR(*I%8r3MQSCHHDoW z{^HfBTS^@%P0I?5=8Lu;3f&*0|1v5w4>Be_){6$q2 zHYoIkh)AD`N}PyD+t{ZzK~5@>w$KnKaRY4j@a}EsdtwBEg3A2e7{uwvTVD~*NpeF<+BMx z&4ftc^7pZczV;;Q0F>~cmWB`3-CR=v)iLdGbOlDGy%)H!S7F{Cj&oEoI-h>FT1*-+W6??>D}aZuwUh=0jPgzTrM;)1#4`>t&pJ2VknS zy@>b)xG}+C^o$VNFo9?Dt`BdivXAx$85<}$%P_!}!}~_)R5ZeE?^x*Bi&+*kJJ9v>CN~N8zLTmlY4`99^6j8o5yEdK~GR5Z74cS??yJ6&A?~ni`X(eq;NC%cOF~7LC|E8;>Op z*0=IgA{E_WOvPWlLdi#(O&-)w>^+s_bdgb)0W{a}C<(Xv(R}``v?yY`IyV8#=u=0H zYbmK6M;Xyn5j`+=>TB(}r$EYY9Y(`iGwZSl*S1$cV~jg+Z#r!Uxeu3m5=)st9w=CfEwQ^-T428{JG4vryS{>Hd8;H{*Eg z=7#J1&Fxm2?a#@EM^5c8OQnxbruXfL>Ed{w;1Tv&g4}T3^t;2r)COB3YckkFqnx-bH#F>0y$CIkoOPZw{hWEqc{TbLjJlySl2QXL0l-F~= zPUvbxOAFb^o+hfisz2wh`$x(t7P;c~b}{eBuD_(tBO{95yJRVee1e4WfRcVZOCuc< zIgVVo2QPzNsPXt#;4qY!_=9s@(S5S&$&bSf1y7FI_%3uo%>ydDlnt`e*r|v7G(%j||DnfEOn2qj7_*=-k0lxn|N) zv%^p5iSary*1og&3CfMhNZ`V7=;H}~K&Qr^0wR%n#YZhAu?MsxR z;fjJS(K;)1&7!Upsjbo>QX1nfC?J9WacW3ErY{sFx{ zP|}4-ukX%ish1ue(-%(*dJ~RC5z8C9qTdL)f>}tM^n|;drB;5Z#}+j zWy|BpDwFp<7+&X<>o|WE(4yh!(s&|RY`G(|qN5{feeb4M$t5&qljRk{r=MFdU4R(Y zQlf>2D)zL5_?O_{D(<|YcYueUdXYhb{x=Ilg9XgqE*t#u++31@>tCYe9-Cre@5l6V zFz)9Cyc8T_8ZrZZ#H-)e9-zhuejIr3`^%U2q+h~MdZlIqYsvRi{U%)iyBC@T78yNuN|p=V?l-{5y3|DFRxSy zC5~-^Gkgt;{bMR9EHa<*4Yt#{!JmG6BO zgfrY-S}_A-CvY*XylG7GDK|*Pf(`ThU^KF3@^n&u=<@hWxSl7|Urr#hbN-Z)Z{`=? z`@U>vXyW@4JIOdIN#!FsJgnoiM%CisQUifCXYb~p;qtA3RVG850yp{nFjWAtg?i)s zJAnQw+3)z0Nth&g@7Bu1^r4*|6fBvuP8I}k39~B1Z-+mfPWyY(>o^CS+-3hWT8}Ag zV;?6fkkS?$4MY|07AbH{mg!mioDpAJ3$n|%^*SS(H+AN5d_W)k?<#WxmoDz}eAbVI zjp*R6HZOkEsxoH&&lP@u?8k)FdXDCDSDK;k@Yf~SYf(J&pdJ3jIUWD(Vd|%%MqYkB zVOLnppTSBP%h!=9L{%hAyITjsXLoT%<1_rVa3vLaqQiJ^7(jK3VvDdMVR){hOEx=u()vs0A~1+=Vk44 z)duDF#Sh{H#BM*SCSja_$&T}ibwW(M|Xm9W8H`hz8>htD$ zdNW_k$np!VQXdy_R&|PALI(?_SY+`y$nPVit}Rc>FHYXN@>>?xzgu4V-AT?z1h`AR zA_j%Z9Td7sVHCaTk8baB=9aMjjSY@`b=w&Tsrht2mayScg7)CMu(+Qi?Y<1sBxKLIJ!fqH*=3_=*#Dti=qgGn*eD-%MDlS@z>9M*Kua}S zOru98JVL7YtSEUeKsB`2cZlTGQ}f%9rOv{+J)Kwz zhS_d{^2agjC&+n!aVye0+T19p&_{%Nkm&UpSVN!hzQ9#bHI@I_0Rtn-g9vr+^I2XF z?`HF& z8CQva^!)G7e5u?1#+vB$jn98OKrJEJ+%zS6Fe#bA0tIhIJL zWP3TbvWYusn$*TaZkWo0?C>qZe@Doa?%?*)|I@mk|D)#~_bK;zCRL~xk z?gWJCu0I7!m3r!&KyX2q;U32!c7aivi`7*A^i3-5=HCs0>6%PlL_j*#5V~h~${>l! zp7^1G2(TzXY;ahy2aplZh=^()b@~9RzTaV^-8pa5*aTY~&aEeo%bA=G|!@HL(QnyoBKAdVGR?J@T-{bM? z_~|@lax(fvOU#E82-0V_)ygYhE)EGsrr$tN0iqYP1SU>Zh8kCE&(w4!H_>3oP~u5q@J#{^wcR{~5J2Yqi$|2XQ+vU|{)?CCni${QSe#fkRuXGnuw8Of@-+ z6rSRp%rT&mHcDsTr`o!oK3!e5^KNcX=A=E3FGUX2h6~{(rvE*h`Z$t^@BR_Ii!~@)L&7 zD-p0`s((A4Q0q+_&|Uujiu>+=s{iosx2(ztAxcz4GBdLIkVJN}%HDet`Fy-(lo{kZ>w+b=ld^?r?OU)Sq;+8C+qCb`n(7PhNqua+7r z?QIx2oRCvvI1Rg}J;VS+T01Wc64_G$8pd{UAQ{;jZ|~t;37V`xiEz$~U5N=@#h|h6 z{AUampubw-lhKL3XYm?VojKXTv&0QvM;U43JWVz4y)~(9cnCU116oRefjrGg_bTqF zrHxwl5|61KDi-d(MD3ROjH^0=eQqE%PF7_K=dD{xV58 zkYZT3GXHl~K9iP^oNvkkh9SnfVc!PBjSai5>Km)fZ>$!|h9V z-bNUDL7Sh87hg>YzRu#j>@^zwB|)>b@cm~J4MoLTezqD%g`XLRx4gF*&{%SJcUNV( zmXJS_Wl`ewuFkkxFHpkTgfsrRD<76-{bemS!N6zSbF$i?glS~PCf%}K(59UM!dUO3 zk|QJO3rP!#>f2j*idy=uLL8NJPL`Z)7oPb9hB3<<$8h)n6)JKrII7LjvGrxS>`;QQ zJC2?{*KE$ z#Qi#l24EbWMvqsqwtxBFc{7{sdyGa`Qu-u3LT&zZarm&Z_emurUZd6qiSrf5Ph-r- z4y1eoGwvy-#~W@wiV7Twt#e8y{RfUT#aawO^LU zoA!&RJm`d2^qAv3!TM@gEZrC!g>ci<7!x!l&TKeV!xDn*q_M)3y5UdYJP0;*>4c$a)!7g>|43`^u_#(<%a<=m zq9?ePnqY&tq^%->N#YuOm^-7FN7|JZvidWp>+!{Tc`LWL{X49GZOdiM1U0;?gqoIH z8-zvsFDw;}Qa3~3`TCI2lQa#>mu;YZOB@}Tgq<(18hZ_rXenk2P#xB+2!QS3nV`v4 zai9C`r<<@%5C(*^i(VV|{zi2U4v*pAfHS-=8wa5Mo;~|7WMmP2`{J1%h3St6=7Sg+HrA$J?(f2Vt=$FoyXpO``*)% zSBOURU|K6>hVW>zv!3+V`nPDqt?kK`Y2!>JK6{U^*!#n!sj)o@L3M(l1RCT5BE8=d zN=A^_Cf89;?riU&T2BfUr&bN}q}Ys=4c9ec-H3E>NWWK9&*VAZ27XW?%j3um&h3;y zs?gt!2UI*kc)xrDV8|AGr}TT+dS=i0iv}gH+Pz`Pp8u8{qmq7tDNAL)HMV#oMoN%Z z>OGCUOBQ5|luX^3-%YpY2)v0@7SI}=7fZ2OjTZZ|u^|kW(&Vl^3%7b&9|UG& zcYGIY`qH5@X6RpPz`c>|Efx;!Y03zEQ(^=Lktl)plFWX-GO2x0%VYax8yj1am%Ad& zJZAMA(n77zzG+ZlsPfQB(o#(ti`|oyJ9q^mQKiV}`ukkE>$0pYw}d<{pVAH zLjK|z*(NugT1a%EzlM|g_|;v5?OnOzy`jeD$4cNyBxiB{l*0AQb!XGEzE24RQv^p4 zUZpwraTHrW9C>U1`a&!NWNdN_H3SB>Mr^eq8Ph!dU-Yl*ij}_vQ?N_yFD+Kp<+4}j zZI9~e5_#fshc5IwAM5u&}+~#(i`& zXCLb-yth;)$R1}R*SsNf%3qN3q?)eCV`TxRB>jA|sUAaPOOHa^#m{W1J(KYoB>m+6 z<8MGh$o`{Cn`ArR9D0;0AwnCaYZ7BV3IY0$UWuJ^ssiVQEFNJv8x*nkS#rlr1d?yb>Oti8 z$76i}oLiaCO@~0_*-dVtdDho&?$hh8|yT4TcQOD3{vm!HrkNvi8Skld@cef}dXPClM zeUFDbZ$3U|7dUbcG9hbS4`xGWZwYzvO6|><^e8Kye-lYRVDQ_v3~ZsR3v3T4^FC0v zmbxV-agRESDQVWf(DJN6J(v0Q@59g{#mYm7l9K1>UyGAmrTflRS~WwdR;N!3F42HL z!~@NWW{iE#zt+t=9{cVUuK%}5(&$7uGc_%%^sA*@a7|t(`BnYld)%qVnsrb0fpDJQ zDmXmaXij0^B|_lFi8v>}aZ&lLggO=I((^Ten;?abPGpU;=B`5r1!RIm&3QOw}TnkxecK;(G-%W}g(rARo3d}jc_LheI;(FbHLv!83 zGl_Zs)HF?Qe$)J%S@R2f-nvEB6=}hz3T(|kcN9W?*T=oR7D>q#144Y*>pb$^>W*S1 znH(TlmKyATZtZDYu>c-Wc=;0631s8s*XsG5)!m1N?sWJM2GIA7Z?T_2saA5dHVIPt z550ph%kV+W=%vGjLaQ^U1zXMYeUfz>4`tT*t0Onoe#;-`UNE9tnmzLA>+0yVwGdc2 zkW+CR9SuEJk&9fnQjJlmx!4$Zxh>rh(kTK#Va!oxm>18S?Km2``JIABAqh9~E)SbV zINKZlSj&F9AvpDhT@zAS^XE=@vhQ)13l9^zXmSgHK+RO#*5yo&bLKX%-6m!1b&@)| z_4B0n5lYHYP90Ot(n5Z`3s8Njb$h!1n*>OD*39m`0K6B-ShwT%-(ayP8agV)jL^Y1 zcfo!SR3(ToJ&RvEnnaY_Q(ZL|o2{+x-YLF(8FVF-8$i|Lct}Fme+{RL4NRo8YFqyf z|F&-Ckd8lpWw$X*r3P&Dmy0hQ3>YDo87EP98jb9nS6t;2{dfFm{1%+t|R(OU5ejGwo!OjpJEZ%93*!q>6_B>gx(Z}l;{{|5Y zT5uq}NkkvV*NGeC@*G+Az9nYK*{}$Syy8m8zZ|KH72Y9^tU)kF^Rludm3& zLejRQI?07Y+KvWHj{H&~K}yWnh6kgOY>JbI#}_9Wx+L){KKpNJUhnuqPJL!(9*j4u zlWWp@W6!aJL5E2aw)>A_@Dp6O?}jF5OnY%Md(ALEeJ#Omr~W1oB5M~&3C7;zg-=e5 zA@y5*@xy=q-i377e_$;mONkKE@r{zO)yUec7z+K=Tu?5r{Px78*Qj|y0(tzpS~$eL zL&!n5#HoMumg(G7Hx9%V8A4PaNK026>^9Q64^N%p(gmc2MhAFw3y#7HYqOXoN#M!X zIjd9!QzMM^+UM+bm_56$n=w@vEJHtX_r$vfZu9h*aWAQZ!5`-`Ka;y1jhkwv2tcG{ z_XP1Sd^IQI1l|Miwu(*LO%O>}cn)w?5Q4T5SA+75HDhmUlmMKDj4OWW16|1c+tFoR z$!fLTLe<{$5yj)qRWwQB51psv9bBN}&;2R$B zU}@tjvKjxal2@N<4nmDzGMMq}NlgB0QPn9bA8tPe@zh01@yhRyrr~B&n&8pPxXNL& z^ELhgvhEfucbt>d0*K-L5N{sX+%EzbeC>s~AH9t*0nhY#Y> zLYC*W>>&Qb2p9b313|eGUV_ft!4Q29dCq-byBJvQzS*$EA)q zcEL56PTReSKZ}DOKp+++vq&v3^VaQaoKEvS4p9K%({1+7Z8058I~m_{WcF4juNesp zoBIei7D~kTa{`k!EZ!=aO$B#a_$VTJMc{Jk?9>C+!bQe|37Mtc^v2UO*Bbp1yF^Zm zwRxh=l)6<)YvdxS7z1T!dv>Y~a5#x>5Ca1$K^BF!9!)d*w;W@_Fh32GOaq#{y5ucF z;PHC5^rZ*#pDma~8n;fM)jcEON}!n_{{fEd<04#Jq(|R*X&pJCpC;O&OHs(}x{ z(v=Q@;wkVOxBUJD4F=kTAOZvvN_uiliIm#EDAcq_k6}E*?C>;Si&-{I`osP zKXG=>F@LtY+Q)-I`@r8CS*x#YDO7)5oz-YwRgoes>aFbhJ`|sy*WJ79S>&#|7Qoiw z4$VWLWxb@76f{S+Dl`0G8> zqPPqL@iGvI1qy{gu8A$z%iTY%D`kBbr0vXN7n;@AkAxg=+*o7i*eKDgZ`{Wl_jcl;ra@R1AEm=~6-PZ=g z>cS_};*Prb%|ALdwoFXN!^+jF1!DAT1O;^UJANj)WTB2A&tgl6{eu8E6>(spav~7uXMO~S_xGbo+055*chH^yb5rxVG4l68L;lRi!Z-RdT-w{ zwruZ@-|8)u{Iz=@`ZV^`Fhp3X=TK(%m^tcw2pFzbC%-KFpeFIh;`}$+m|5XTzZ<3d z%T;uTU-`k&Gl(>0!XvgrA*m} z_13(fboWJN4v%!Z)TN*yedtAsR{qFCVUqA(av8*A|H&j9LTV{fU|rfj#5h#v31b<= z6YK((MVEY7*y)vxqA?H6_P)fNi%n@d zoblQ#RTDbUm6AO!5<_+hCzkWsQ3P@~rBZ(~=W80xuV*k_yolO|*4C6#(;eSgd^>Fx z)i1;H|B-2jw6rPJ+=K6jja&xq*nnz2XM>jvTO+(Keo_!CFyGSbOTS;Y>`M}HW>*5U zx2FGHZq4p9d2#9URc~yRu3i?68@qVSHOZ8APh--cG|!1`S&TKHiKX`{Ja+Es8dtV^ zu&IkVSkM#V(I?XliU}PZgc8lhPo3+17r_I{MXisk!UQR}Z>K;l|31N_Aq47hG$5dC zrlfi$<6^b5GgD=66D|nM61E8DXqVffW`VC=*C~Rs|9mopW%=ZAj85EVUsZ{(RZun* z=wDaP{sz*9H0X?n%WPl@G^mGm=x6H+c6%=^tt^(87cUjo+57J>_b8L(mD6WeFrc}0 z6)vF_a%_j7dNdVm&D~&v7j$q{4tI6L#rKaZZ{sej5WoQG>;3d&b#dhR;#_4u%xtR# ziRUv7yaHHqw-KS4G6{2)qhw+iDX-1efv#fwM;B=t-_O4%>$xgg0_WxL*%*+fbx9G>sc&14 zV8o*+_=wS3n8tPf#MIq0Ao`i3e^ypOs613tJQV`f(dMJI=g*=33Bfy>@2J&ZDzE=5 zsfw$P{~kgL)icd>4TE}M4O2>Nb3oXq+_7fD7ehMBwW;b_^K#&X%-8_=N@`v4Pxr83 zN38*@jdYbRRkd}DN7Y0?ufT_<(z-vKW%qRTiy8;@z|j-h8}o=<77WaA;ega%XBMH1 zDihm3S%=xGO-ae$Yu!idb_1_I0k=8r<`gI0$HqPD@RSE+C99*evh5wkJr%7;clvf) zkd{~gnb&m*7ooQ5B-abF?&-b(p7A%|f#f=VaCLWn`6P7&H#hf}=HV9|6?YljAt#TS za6iR&xJ3?$Cauk(K@iEpTf>%2J{#H)TWwf0e--X>1ZL&*&q~b{d@Cl{Br=yQl>l_9 z0@Xq0Z59xR6)$jRI-m4|of=J%nk6I@8TabU5mzTm*d`xqi2XL$zEZ|1yz-vSZiKD* zIo3)j=WJlrubPxmZt>I64k|0BPU&tKx5s}O3(jf`>!nNZ6+j(rM;^f z*Vqj@K=UVx7pe;iUVXU~sww^OAy%q1Z^+ao3UYdpPBH|MVdXrYv?C@0u^RlBjU^8z zvRA*YeZai5dXBn55aZ;MbTN7>bhN3M_x}+XxzAVeW6=yxHb-THU#o@RzWi>|m1jL5 z%}yk@Avn!LdgZwagoyg{ce+hizS-wLJ`SB?irD41S?eGK(*x_A0#%Xu z`uK&Ezg1ZCZDa2^s17!;wq}|V1kO~t1jXbx1h=*0dX9tdu3#MqqYh*JVFmyjy-Uab+Auf`-J)7-)p~JwKl6?1{4^MvWZ5#Y%V5$uJ zHm2}CD-kUfgj(zTx(lGx6e}eOXHsf@KG^=JZP|CZ9VRpZ<>W!(Wlh>JJ5^ap$13#b zJXgwpoATu5j}$T)1$I-CP0ZI7Nt0`Pp@Jnf*C2U>5pXrx@!ULPeJ4f9ZR#qOvg>^m+@Ems z5POpDfS>?2kU$93zQ#^p^hi2bsyx%$w{-}==; z9vwsD{#o_@eZEf87IR3t22K_8CS&x%(_~&hys`gA6P~m+q}u;Gkm-mQZe;die16~- zt={2p`Q*Vt*6x7TYY{>lFW7Dce17=j*EKk@gnt{C#x8O6GSY?Lhp<8E1UNee_s2J_ z0Jxxdxy3SBG2~NGPzn^p%$2DI>*UbCR#TcXEs`nN?PxzIb9HegAn|aOjwfjM?(_9i zBvSqn3aDQ9(m5k^VOgp5<+oy{7+F)-WT&^evH!A@4$R=v_EZZqPkZ%8^(qo;)U9q`67mZBquF zMZXQ4NyHMo7ytR+JGTDh^^um+!;o)ZHJP#oZu%RzIi8mS?HHJK5 z%t+b158fCE|3bahG0545TbpBEm_1UMtgW6G3FHhlAALklc@AzHy;v?4E>V%9Ju4$Q zNBrvW#diOIKJ{B%yfVkiTG9pOw4I5>EEQhH#d_?hQIUF8eag-uo`ec|z}gI426G%O zv~+AOcg{T_`K+0XMbl?xve2PfwpIn&WGe>|s(CWyx&#)DJD$sm#l7+PVN~aV+n;GnF0XcQ;!S!uR{v=Rl@s^E&rmZswy}0)u+QB&qm=&DIott!z%d3 z*6dl)xliQB0z}ln)?3&e5(s?cfAi)|fatED6`kGLuc$vDOWRxWhnn_tTdEw;!3woG zzyZ(M`oU@(8zDQ8pab0Q`;`;rlYrhGuf@#(p*+3#EnLvN&+J+BbRa2aQe|DQ$IHmO zsQxY_#sAuQ5Wu%;$E)AOVlz|VfyZF3tX+f$9-{yDVx zbs2&8Yj@e-xJgOg>-NQFPw(TQ7;dV(ymYX1;=bfj3IxhB=U!d;=sgitYV36$v@H## z*P(xak0H*M)p2uwF+uGcAix0EJ#X*uDQ@mlZBpbPW!9^DXjmHw*TPdM)x@6!Q0RF~s$K^cuTjFgUvZAb@S{ zp}yP+s#`fPau0W=`!TqGHr9Nv>7x*c>&FG&M8$!!D`xa}8Kki6cShGCP_OFHMfbs~ zw8N#oVfN=moo1K%DZwduV(#%kY49{S8@?$*sl1V&p=)3njq`D>Npb3wl$7I#J0)Mg zel@9}7stka1Akgat{a^@A>$r5@oBwDM1{}jW3n(8nwI}^$;PEDq@~oP_1tYkm9F8E z7t7L75MLZD%O4`%3#`fazIKuBn9-0fGOW4X5NmDtad2w{^b9Sx*AEgPh|GjFBI3@g zB9rA65Nw=&cT2pB1MZY{z1K!7DM$G0Xp)MF--=>33o8sG-&sFQFm|r_7dZRF2v~f!qt1GOASpoPvLLO5{_fFCIEHe2e>g5yR_%Fe6EG zi{?q2;D9P!Wp$s%imw5;I7WlY?`vhm@T)6>#L)t0^#gxOwLoUG-KnSQ^cIjE|OI@VwB5`qu3h7oFFXE=g53xW(#w4wr&2;OR5dsu=lxa6PaEG2^}wF^>S z>kfuhWxgkvK(zBpNs^tjaaa*0m`*0s|GxOrXzjs28_9wo=oC3R@Bv0c18b%ucH6!G zeV4k0ZcH4yF|=_k%QKfvA6NT2)Do@kKQ@pF-^u0K`F}r zPDw$l=H2hcwd>mrMeAtm`^SVrYFgUz`#M*tu=t7>kgEN^FM=ZIy9ke%uOp}g<;K|u zsXK>VoaRhqsk8RX1ck*w*qg7o2dUZ7XRP8=H3^%Z`HHZcaetjaNsEW?$~ygb0;#2_cnwVLuVK zd)&dQOskj|U8lmoAsrV6IFsPi{(aHzf1a%lCsOn8Z;Q7CQ)x#uOeEa{?(`_`{IiC? z7Udk#y6*xmi?XRLdfO1x%nTH-nA7h&_TVpud06FzdWL3I|W{(H}(Qf5@&nEK> zH`mhDCH?Pe(#6+mg?Nvh22B-}V*pbOfddY@`kg(rO%pd+co7!u(U6(87LcZRLAzW& z8izUxGyQ4(0Q_=8nspYi&az8O={nqHMXNoG69B7Iuh6LL+6fux60s=&XtFn@S#1Ff zjm7;Vt^fX_X?9r|%x=)|dsE5S8)CD!@{$1B_KEVBdKF z@E-ohxn4m^ixPt``mfNl#u5te6n6?NiUeVn08fX)wKQxNxB^h=0|1#~7Pg_xx$RJ| zYQN5g2dqAiK8e|4|LwI3OlD$MmkL+PM}RI;yF`D7M{7em7BEB;laeF=BS!0njiMfD2OqTxVKht!Ns+Vuf$81&AQ=oa#SK4|j$n^O(+d0HFF~fEo-3__3AW z0zt0F{MXh0PWZY0 z7#$sAj`@8kaJab;SOG-cd5RFM058n*MAO=thxwX;T`K@OD*@PeD*p2r0HF_4cuUi`)g}Ny zZuer3H$CC6jRa`sFo5MXFF4+^=V(}Jbxc!kU!__io40Qt4i4%iCME*t zl~K_CCX4UfTLcB{5)l)#9Q87vcQrOXi^m4ZAt-JzY)@8A&1(#X@y?w)b}lZQr=x`c zat&YyKj>|y%|3uYv$u|w`TGXOSLO(D9t{f&Lb%fWg%Gx&y(?@18?+Fp81jVp&D3%g zHmjk5H8@^FG76NNIn!{Zv5yB!1O|g?`P1SETnd=Il)=CtNdbRHA^@Nk5V=`Q{FX&6 zN`}dBcBqKEU^Y7V=0XiLk7)i_kYip5m2KgA_8VV z(FB-&D6rIslUKp-+Hi9-!$C>!!)T?9o+Po@*|Z?mqer0OWeX8G3qqnBynurwKcuV) zLW_2u-5=W_qR!iWM7BP{MApBX+|4oEZ#$^2@X73h#qs-A#zsRI>7rHuuI|gkM4wp0 zDiy$;3Iw;fG-<*m!_Cc2==mml_J~W5JD7;HBSz)NfB++v*&qi6@J#?>84f_C&)}qj zQo21r9MB(Mor+-lDNbGKEbO~s$I`(~5@gvCLu$6UFu-e296Z$;0bvh{sS8?1X{cJ~ zRwdR{<6x)V5k>)%9(nS!iXar@y8y$?5b&@C8ux^5us*OdUx#PI)1_|{K}q6;eLdH_ zK0oYJ-=T*dEfA+cShX|9DALaQEgj8twD+DfvCdd{p+QZk8`(+1m6OO&qpN z%=^S-vBpX!^po2RF!%M~KD4w}&2Gzl0Vud`{yn)#;CV3P0j`-9KkjW>ey2eBo5+u4 zFO)^xcbBVfdyZ_2KL65va&=E>RuqBsvG?HT66Qr01EKRX!=nPq)l-E)u zK%Pn7DbVWyy!aIF31%FGyrlukbQR=%TVINlCCqje1YSD|K?)qJoeaQ~7cQjw{i*Rm zF$z(r;Fu{+6*>EBTt6e&0wY7oPqZ&BIZ3bg2$uxz?`#34?eyH24ELRl z`B$%BM;X_7wE_5K#(=~1s?q3vxkG6f)OR6g7$DlO-+km-w_GXizvZ?E`-o!eeMGUz zmc9JCybnQA`~<|;Q{y_ruq%Lbx%&CqiR*a-ckX$gM-bIx2vKm3uBTn}Ju$-qy)!XA zm3InYq?N`nBg}Q64irN?RmRW4#f2XZRPJDl-3!1aZvY}TF*)_ekuqDzx=q~uY7Jno z`vNG!?6`|}7jDU`t_0wtw*cAQ0)RaMGt%@UtPaKAZcXFv7P{*EgFb@#?Bm`fu^V{< zkKxSQ0oMBz05>};8XZM;_XGF#@z}U5`;FcG;Zkc=>Fr8SNlL*lhcfqeLACKmJ`Fwd_xoS^aoY z^CRF=3)K9sI!!uJ?QZE0(1h-Q8!HZYtjV$glE7q66CWg4{gz66;H~KiKU_2*o>KMS z13>MA{arwN`x6OgEe;>FGW62sng&hH2&nc^b$@Dk4))gj?L#)hE+;~} zN_jI(ica7*rGgIjo>O~B#T*}`k)w?rBJxK*AT{pJ6#P*2gJo#)&|BbuiD3I zb%by4!$A8~8(C;`@w%J2{&dTsmqfx&O2(F0-K}TG5VtZWA~GcFhxk)_y>4N>h5By8 zQ=(rL;qe)tLg)}Ps|7mfEU)Hyg(Gu{?EQd4Dj#BY-@)YHYxl#XR?KRo z^^vB|?;m0ig_v>zTwf2vg1uI*5)b%|(?=`vunj z3h#OzrXlDXzC-Xvby@UF%e_+wQ_UUpUq$G&OJhKbj{E&6jPz5%E`#FPB7fl_GZ#60 z=X4wTq3;f&c;ue(r_!e)>U=MV5TzIxaFVS(c$Ja}iC0FBA}g`H-A{?i_F5!WNP>|j zyFqSP-sBO>CSH92oVR|xYKoX~pi^b+Tpv4M%v*bi1Z!V}Q!+TGu5;JOaL|Jt{!w}f z4kw*}AO?ZqOv#xgn|9_0%_Q{c_C(#cDy&qbvMGO_tp)}B;4$rIWoOxIi z`9}^h8$-9O@V`^%Cj0-SM-X$ORR;^ONNay(;Ou@Nw*&c384ey#xKQ-sHSC=3S!%A~;AAj37gumsU1F z?JaE9eu4eZNB1A|7B~oF4R`DGFxCK!vH_&vhYoBl#3(rxcJDc$CA!fdO_jk_{Ax&$#?CDAmxo%W!u&e6;rh*y?5p0*|<;NEu zr_&tK2zHpikva?0e#L~2&H&SPB4hQiHdKOUynzS;Gz_Pz01VsPWSI-XVtwrE3B>FI zI!C={G;VvaM~0YVKqgTHGLf&iqkdFeDR-p^=24*M0nbvT10u*5JU{6}b3laX=%itC zZy~{F(s{e>szyO*k*cw8Rdo@BLMwuBrlK@U=2$g)MNUqDgoSpX($pKi_e}vk_mlS} zQ|9hVDm2~Ahp&sA)}{}G?_`Ce-{C~%mrK>zk9=Af>wiZTH(NtYgk(J?yuELByq?foOV&;G@(j{(tdmA3vx_VnLCe9QI z4kEnz7Gxwyw4MD18n-Z}ZBnHA70MGNFm~X;$iSlK-9TU>8d&+$$YwL>J|^W`pGpHE zUhjQ)(>Mr0o}fgjqy~yoBioX9>+zBAbRLIn1$RnH!B*ddoL_#asNnj z*l*i`d9Dp&q}rV%80ZOT2p-X@?`b>PvW8P4cX<+|U!eCyM4esbIcTEi9JD(`$e7s? zAVzL&j5Q@$C@fy}NON2Bq$k6xLlR%zYJJkc0o6%z#LWYpQkH@4aX_#$Vmi*x&zwh7 zw6Jh@k8Xnqc}h)m4uK!FVpPx~V4k6L2){{Cq4fXr_pV%tZK83vIYl%&FO};WiiHYh GA^!*JQ;UiK literal 67368 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

>mgWh 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 pF{VTY8S-P#{J($n|Kh?QdlZY+kZ0w&n_(cW(v& zK*7?&)E)rV3BY)1(+2Q+wZ1L@{Mqn}wYe!Emb`Oc<5IyZazPeOApr304#`Ib$jDL# zFK!IAykxd_d&>s*TY#KJ zzxUPW7D);}b!BRpfdBBXUPEN#UFe0euKTNtr^+WZG&Fj9rWutrh6BXG`zvjCR`V;! zd!oHG<_v^qOdL)2IQT@nWJ>Wb`tE}QYtA!w$5mRp$<@z#>z#iuY zZ3KXwU@-OFe8qZT@JXq;7@qhy9-c}RMU)yLVvTha4*6zh?M^!~yJ+#jc%SUSjt1T& zL3xE|nq{%4IN4jU4uJkblm`HLH=?}Vu*X4mlRGM)H=)qwA)Qps!H4V&Kc@3}C*5xC z^}yMSjy*PEiPnzG#N}s8kyUvB)~j9(JmFWvF5wI64%;%7D=#Ex6EA!`2vGYk-vl$f z3ju&fZyZ(P21%Smgx75ZwtObTmQ%9+aGwm&H{wcB$+x}9iYOj@CW3lOl961GlP{xP zdo-7~v3<50!fd-ttBriSBwQi}S_VSXBoE4I9c#21S-Y;1N!#(R5R&}sZ)!(oSmMcu(>sdMr zH}Rf>&YiIhjJ@$;VBdM%{s~XSub0xwgsN<;zc73Lol(Lj;LKl+Dw4x?RLOno(>B+J zJAtriJ#Av}1lRLAn8z^SG^yCVkyQE_sQ~ph)~dInC!4$TalnLTe}ky&lOwJaj#Kt5 z9+ouyF{#3P@S&-TJu&>`b*6J@T3Uv7gD-Qs#wY4UEUHF+qFxUea{Y?!p;7oy9_HwI zVc7~?y=sQysN1Sjehtf`6IKbv^LS$-Z-=DRikl{pD*-q5F@&aA!#3h%@P$h6ff{!y zqb0qMld&qJnW_sz6R!8EC@LGc%>U6mj_%{#Yv9Ga=}+DW1Yso5v;zSQsJx&7YG?ZI>foSwsmneb`sfgn?VYj z-E`fd!rPq7f1uN{s`Znolm-=#si}yaQywewr?zSU7DxMJ;+APv2?m%SQo~kY_d{@P znV9V`qhn4?y*yEExPc<5n3Aqbl}r*)FN7PE;w{$E+q%>*r-u+{$ur$VZMFi`nc3w_ z$Z`kDkN2T=CAYKr4=SUdZxL-vk8eNOR^y`YL?!RZBGtMwCXPAr=~hbVGYiH#vVR)p z=PijRCmuf~`e8sdm66!Q7r&4OlubCA=>VZW{czE#H!p`N`x_sW9e{Xh>INcR0+E{^ zy-*rTvdw!5$2EH7rG;KnJ82T)lfW&>!-ym!J>#-qlFsr- z7fLR4RefEq{#DO^Jn*Z?d>Dm;@<$4NOiJ@1CWp*LR=vD$gEeuQ<--Z|2_)KUE4)7b z5bn4ZUw*B#dyCMXoDC{$ApFa5q17TeKU%)0SLM)@z@h_`MOkVO#5%bq}Ma1zl?Sh z`Gn}-i)Kc=M^VD1P>UR(Qv&HY8IZfw+n%r8ABSaeKPD3!3v8S5#>p3@x3x zyrt@&{tIj04QTI(sGKAYveHitXh!NT7h26flWGI;`Y5)FEXVfbJ=A@XvbzQ*MazO)jEE68s7GbTZE0wPkl> zz>QNV4fDGYyP5bYUm*)1v=PD2jvGddZ|Id%9@2DsXK;wRBf}eD@fzwz$8Ma z86nWEs73*?vHdt-3iopxwNo)k@R5)6+m+SaP z6MNQjp)~3vC$xZEP)5%+U23q@3JlVots;_r!&ISjs4<~s z(E2U#SB?LmNLrVAopjte5+x|8>9oV{>fl#1_@r!v6aITx2m1M1n&8Z&Ch&Q#vnj>& zo*Yq;we4Zb$)tH0vKDo3rMk1<1bFpjbjmdyP5qOGQzSY~YW42&Uug0*#yGngZM9X~ zQ=z{GbkGZij^hUY!lQ@Z9nBkoCpP0FW(Zg(eu04ADTG{+^0bUxf#`c^W6SAIe_|gK z-|KHf;cdgHt_M7%c#?o_@9i|03_2t@lVN4!=6TS4RG35Ipc;);ZplfMv!|~w+sbnS z$qp?wDj=h*Hru^lj$yF7=hXBhviHSHT4Ym>|9tN(jkOqlsAryM4reh{ja)`3&!d9) zA+iAZmBi-O_5b)@4RR^I-Th z{hX_FXD%+Yq+`{W8Ex-vBf+_DHP;rSh)cL%6d|>bW4ZNHO+U)U)rn4uTMqcsZT0cv zwOhn@io`O|r{0iMwDf6W>IC#YrS;0`O3L9h%#~Alv4pXo-#;Ip`1lmTla~AcX7{h2 f3&ES>e8lU2JNz^Bw-*#I$r?*DTT}9Rw_pDQ}aFfB*{w2yVd>+}+(JB)B`l-50lDA-E?5cXxMR++Bma%l?-8dH#9d zbD#6Q-*A@R?dh4G>8`4-y6Wn1Wko4eWCCOW0DvkZE&dq*fL(-sZ+nXX{g3j#Kn+?T z7|BVA10b(|zgqL-pfyPL(wa`t^H{GR7(i+|9<&nCSw=wuaUBU683$0v3dacmd;rLZ zi+pikJYMno^5wP_0?9Yy-krt#{Ym+J-<4M4cf$9yX#=U{5Y%ur>Ey#c5qgVVI zY2f!h6!*c>@_wzdi4-57)2Pcu($#A7@$;>IFD-5D{ey$eo^Y(N*JB{Jdg)kPQj)cx zu&{6sS{oD^YK#{`OF<4j9K&J#0a@M`NH`I}omrrVPis%RT-a3-;?RRJuGff+pFdqm z=sCWVChHvr^oSic$3vh|On-}D^ZFB`vFd%zKaKyj5Es#Yz0vBF3nt(th5YE>uP@+@g!)8B#%HzgA}a{bH&keK zi12~kjK5LHBdkT{5B>!Qlg8eS$8u9mntt0grlujU|7)MyvTu&ZWYxeaVulpLA6aD1 zgIt>niO8!s~5f{>!7ufox_Hm*K-@XA9vF8X7Z`tk4e`;=*;hosL`LN_b4N`F)eD zDEm5%z7@Y#x-#ntVelZzBwV~o?U;$)LSWm)p1RS9M$lX56TLBk7@VqpVzHAFezP5J zi{)y6slBHreSvxRx@u<;!QLn|M^ddGF`nP-I70ma38apFM?3f1TzzalYG^DqDs3Ao zYM^-}qCbw;L^#{HQ-22x)$~Xj&u!u%mYb)HY*JVmX`F_q`;D8?FJSgTFVvk&dPd&4Llu*jM>{C`{|v; z_fhZPPqWxmZe7_vo1ii&km9#kdsN5TexSC*Y*hV;l=f3>_dQpGQQM8r$?Ll#FYY;X z^7#;1ZHu`v|5(HGW&II~NqXv6#7S_txZd{zrQAUJt!^`l`$>i)ftQdylCT@sichGQ zv2D*xnyl_ze+L4Wt}U0%i7WvOkxWl$W(#K6o+R#(rS-PhZRL~*A9X~I>KrOrP(%IY z5FJ$GjyA7SoA(a{-KYqPmpiZ5+<8AV|J+3CR8ZHY&`k#}qJ36X3O$M4%6|uTnzl*q zE+rJTr;0Lv%K0=BOenCnp#B?Z|0n1-zGKgzqCaRjlh7#$fuGT%gKA~_P z{hn|jY=3(8oE73by!v>9FN$z>mkR z-bn$`hAfNe))N?PDp~>ca28IgHO5?9c24gIV3j30o#3678l$xHAVKHB!wZ-BQXcFk zyj-6L(^{W5gi-_&$!gLsjj}7(^G7~eQ&7{y>~rz13uEl)3O`*pOy@BCqt;v%b|FNp zi3?Vi4dU4~*6bx@IAJ3bLFAh}{{<1P11-mjZu0jJDwGnb}dN z4)|+XxHW&kAN-I1qB7oA^5c1L59w*I*qndP>91ecKjZMxLSJoQ_2z&_pAWyztL;aH zPtdW_c5G68@?4sH#;cT(Pue9Gw+3WJcVE>^PhIZQ013QN=R;ZkW^LlLvtMPCHQUW| z&Iu?E1X?{*O2$2`F|4o2K4!7XhWG$hXyWsvIcjo~3KMOXHgwSWaQ)l(7Iwga&rBfUn^UO+jqVY#QxhB2_>s;a~eEv)WC8D zQ{^7%=+k>S2+qSk4cyv0b9$t)RfEGz<+WwmooJ4ykbaGaZVSQkfhCoD!BRiDy|jTn zHy^L_B7q1KQ&WHXo%l%vJmV>(qV2Z_FhWoX^Wvn$w}%O8l)S%) z-de?Uo6YkL6E zce_^MRAmbZphg}?a~7y6^x?XM>{NKlRZr*AoR%MkK6Za3(+!vFTG5#EIVvEa{Y)e< z31AQKyZs|lw{R+3obHV#-v{hsV4DaG4+-k)_&VZO{m&m7nRxp%XarB z-Nbqn+xlTt_GSJ}nG9R(hp&f=YY3!xOqgg6ZRAaize zJM4k_$^m6}VK?i^c7`K9XqUaAf6v|YKm(b#r$EQZmYjQm)7GIO0zw3Xhv@O?aajP$ z;F^*-p48n^mfX29*?rsna?&?A>UBp*I_fCtne7e`Q&owH&a;pIr1=w(w?hMN$?v>- zAKDm`xVu&T0wh0|F8`<5-f(XqETe?#lyUj;%46A`b|)mHB05PX3N@ zG^D*Wz2MPTox=n%&J~U$v(1Zec+_e4?Ac+%KuvWE!Tu+ai(}-1q;ooPYHPz`>krQ= zenq1{Uip=cVW^=5F`)?MF=wmT4WD)MJ=-#n80k+v&$t@TF-oiDw^4u#-_Z9Vf1s}a zU_c#sZ)?Fki|XCmvw7nf7T2SB17#9{XtMTYPcwIfh8xea!SufHB1oT3dr+p6_rUr0 zAnOi~$Ipp7O&#i^r#O(1&+UZheN;YgC&z_r2GlvN4^=1@p~@6Ad@`|GXG5r0j++JU zX9At092^`x)Nkh4VX-nnrfpuv-qy0==(!FE1~SCrvta^+atS$A>|jIU-r)L$4w>nn z1`)H*c)_5kAl(R}oGDLD^F@Ib0uei8N~S{S$macy8Qrj~4>=vwn~(rE+;jNP^Drxh z^5SILWYDNcq`Cd&roKJnp&7hqe1Ea?oar_`U{$&Na%P?>bS~6fb{8G8#+;T$0R#4G zXmoOocJ$TvMvK?%Vy97qHF_Z>5)u@PRgM+a7K% z=QP#;22#dR!ss6Arl;SXN=)+M`*K>Kz*5Kz?3;p@VZxS65v-vla^xlCC313geM`$v z#cHKpr;wxD;=5;%TB(+VrR9DSn}wUR^Z4?zcb^mF2@K({K*fUyRAhPZ6>iOVl|5w= zFgltmbs*Q+dM2Pp``Ik(^1Iq`BGpm5wl;^m$+e2-Esuyn9>lUy{QzwMVahl&%B_Xk z@Y`=s8h@zmPt#ACfghfzcNx-qgER_!?Xc2ZzZgm8vTf<_v038ziRheA8kN4YaF20w z^*Gya!M&dhvIhIUpsYd1?mh`}^(ITGE=GU($)@f3IGp~;S1NFdc%iS|`*F$pvCYPP zOmD2xhu`6{{{AKgG8CIh!tLr;KWmp=rwW~d?Fcm;9eFu9l>7U8^B|k{H6;*8kb!~W zJua?(?KS!XbTReB#KK~-+--+EpYmT%tD5uQj*FqkW@HHb+DV3&<7s;Y`%K<)05$K| zfK7ebY|xNd=Id8%2L}h-tg{Y?>Ecn+-_&?;V(uW&(j!oFN`2~WgBh+ew>f)1Z4xt; z9bfb#%KX`%33G;Daf`REQ<#Y(QFAdl%_bPCB$kG&iRvi_Pv2%r+S)R6aws$S$uDXr zxRhgvcz(9D@cV)J&1<#F@0yB>ik&pK-3htXpj-*)V`fo6Fa6Sr zhlJZk^V&0G1P;UJ0UV4*;dv4sM@r~yXK4?#9sN4C=N7!wQB|GtOLE#YI8IRt0-FBd zkT(wr(@D(C%mh6l?JUZ$2oqBwY88}N2j0o|?e&PMGmw&4{LU#O+^lZktjWK<`NcA# z$C|ZYAK5=M)jjBNnK^D@Br4{oY}AGwQ=FeT>eckYjMGg)mi)Rd>j(Z~Z{}z%(eYf} zH3SSDEl0`uvC&b}iEIftt&p%V9Zl#MLB+3|V@{_Vis~o{+`c@X#-*h#L4xo2c+OP@ zQ}!WQn8Hv~cERI78PzXB_Vw%68V=DBhI4KsTgnh`SM`Lc6@=(?N+Mxn`)D@FDsXXg zM4j!ga~@Fg^YZ@Qifxl0nYz1>ZQ~9OK=A2IEXpJzEIl&S{Mr&Oe^I*Zrr^dD{`j|8 z=tZfWPlV6oO@`-*@5`R=M>;wR28L4o;lKAafg*EwSN2!aPIHvz2PN-fhiBJR7JvLb zrwo2ywRc=^d5C8ER8RgkT%Jtu{Y^`2u&pSbkYMVM%#*1ZaSAhK42|iZu3;ll2 zzxRDy_CbJX&60<&jQJo$yv>dY^F_K(TwF=Z%Q{iY5n=Y{=wf=u6+R2M6C{G(cjlR1 z8^O31*49UJPk|v47_7HE-1og4a~c8lPgofDEx>RZHj<{pAxnzPkz_LF9tks`^H+{Z z1^$%tXF^{zBqSJuPmHSyHtPKKQRpzYXs*+>6Kc0;?H)%gFRd+d9JmxupJ%ybcTG#RO5NuxwqPWh)#BRS?(rf=8WNCYof7h*Hq$4d30Dw=DHLn52`V znR{8AGfnUMm~?vEO+wDbRM9WbRDH7<%n00e8p$4yUvk&MLago=)(wRKK*c0gw!;w5wi#ULg1eGoX1 zW(z#({$Nrt2E=Hjhe}RQPtW+&RQE5Dz^nO~{=7Wu6)C8RL~h)Ew7BImfph04sk2)H zjm>3(9xO?GpUzbcAK7lFpqd1H&~ou%%LyC6wd^RRfJ0iq-MYMYf7s7=XkJmbPx6iz zx&$b-ul@dGrFOa5t#mdPE2l5s-*&s;_EmO&E6|)|Jq7(L_$s@iw1R;=``74Uc{`|A zl(PdW_hM>lIIno53uRk8Z^8Yr{>STN+Tf2SbWlMZ0H7AQyWHIiuf4-iJi;D}K+HaxdGvl<`>!op3SvcsGZpgU5bPP8mrNeCz zIWSgYvBWdTd~uWQ#d^{xTQe0uTTRd6&+wtcxdh_I%; zg*A|S5_H;?Cto}}?_`Tu$V`o>zJN>RCwUsv*&Q9GT0B#Eejw0Wnh8Sh$m}?FI^E(M z^VHK(_G9CU-o2paw`H0o1dTi`Y*kE%+#g!G|Cx>gvsch~$2^`qqD>&I7w={yq0H-@ z_V!5XoU|^d5r(32Uvw6iFx~;mHz;{I@GrjzAZt|hQSvRwd9)J7^ow>K-7mX|aXTMv zT_6b~ZeHP|MPrY{V->+6peqmsZDC#^Rh>ZcGc33ndAuDYf9i7e-MrCbJzTki_0 zG0pq=h`v7|;L?jB^}1;tc@!a+d@iO3El7EmWTjH0>$N9LFI*;Pd`n+uJtS~8N=@&RehQpIFVq3etD(C>NF>CePTV333kwmq{d&L@kW?_8Cd>OL z28HC0%uKX5?TOD*NzzR%A*_FkeDM|hW@Y1=amozJRFpb56ReBI%vL1?FZWAr zscjcTK^Db(Gw_hU;T~C0R`>X`JgN`}s80AE-K^2XjJ7qf z=I%L2J=D$>y*-q4uUi-K)UTlvY+ z5?c}3tTWT1qAYXOO4neQ-Wl6oYBuQgW6`TXL5WA<1DM9F{x?_d*R3N8e}ePIZTL9h9Fpi@n#IlCWc9x?N59l$buPx29#1 z&mrMViJ7kJB?^#)PMkx-|CT;JE{3hg5SUB?ezwH(J0DK(M?I5stF+`F{D0~X5GEE1 zD|Q7AM#V8v{}wC+FC{1xiPq`(|0tD;f`S0vDhSiO7f}C(_1kp8Wt*V&e1$66V zvr6I%!cPW$T0Q}sZG{g+hCXf64 z+boGND?h-@Xi%{R2BF(_fVv5s8*eCZPk^V0%Q+PRp6fxpMktKKtc02098l!2c<2~S z!Df?AZw|nAi$YPv%@h`G$fDM_cP8vs{B|?=Ed60-RYXD64pPhEf3&^sY2(1PaWSJh zm4CVvHby;Du+i#?bv98k97V^MVE^p>y{iri4GgHy`$^V7GbipBgESt{50CrVy1D4h zWUibLR#p4QkeR<&7>_(LhQCjBIEQ(5kLLTcP&icz~Iqg2W8&47P zU-mh@Ohm=~k`=xLE z!J*)a483y0-dVQ^AN_9FWP^wERD_9qYW51=(qskDh(V5EuR4ST-tH+1!4AN@f0o?( zX9u8`-nVZ$AGIE;8|YG-q4(3U)9lUPv$XVY1gttH`FJIuauT+&?PqG51tGPO#Nj9K zsL{rJrEySD5OjG%LO>Q&$qaup)VPZ586WXom^$Bg>^+g;(yLon?veNU(+P*Klw9OqgqjKys=I7Wi zc|ocs$zPGVX~`Xl7Q9rLu%_*0=2MIje|)-Qtn&@QZZ_QH;bDymU)$=h&;}QM6-b+X z!iOBkR9@v7;+bK=N2ohJWRijSclS-*6)G02TXA9ArlwLr-g&`>vutI6uop$%z9HQ& z>S^qJ)hVUv3`tN>7q)y(PD2BajEwA{v#rDU!@G{d>x003XjJGtenME6<#VIS%gd|L zV85YGZW4&vypg|Z%xak|BDKSq3TxjDNL;^7)lk(9g3EjKab>?_>Gtt^Zn;dphA&y( zHo9q%5hvUbmkKqW)^X=EuKsiW;=y;lAVfLFZ27QM+=6u{=%(Npo4LMKdpxrYn&Ybzec<*K*9Pb2q^_IJlY!QKay?mo} z2(2$SWJ=|p#8#WAa$|kJnYb)%psvhhirQW=^>-acqjh&Ey7~Ao5pSqyLs5(354aC@ z9n4T%&|sd~hglSA)zKGyx^L7ES141LPbI27M~yP=dGQl}2xt3z;7X~B^?p=nsou3D zStW^PbH!vc%c0G2yOgghf44VpUg(V?j81+K4QG#H;&%^ zD5p~m&AZHoqgM1DcV9asuY$Z9xj5$cGE$B9)-ts_rs|ot%XDby)ER&AFUvUJ9FHWA zccdn%U)K9R>s8DxS7jtb==V**l*u>^xWXtH%wyRnmT!c^a*<38D%`Hhr8}sN_emTm zsBzj{qjDo@ zd`XS%MICcl_};ls-%fOP#~=b6d5QtxTLX@>6FXd1H)tK>kVc{2jW^p*Jw9#&=E+~l}Dd#r=?^<1EL3;0I0lR0~e`BsZihe74YGlRU>WCOmQ8~ z;%r1*ZE=w;`$ea^Eod~v6`3)?L}XOrvo$)YAu9r=M$4iO=RY@*+5swJ$eb1h?OCA~Sff9<>QSRfA3LH|Zlo+%)TL>AbX`{Spdl3YS^fBL24h`5O`wGTLtX zJge0*kI#2+dyz+N(A**DAqxUmjheDQGI0OQ`8?#|o@{yd5>%b+6?F7%x*kqJ%lbfI&yAH}j($pi{BhjV(fw=_pbY2QvB zA=0~Mf41F;=Bo}nQApb>U-CG(@C(MpDa~JCNkO!|uF9~rWv$)hQDQCv>(tVH9GHt6nyo+*u z{!sjJ*^rgfid^OfnoJFDsc1x+O6=HvPgjwZy|~J8m-@*PfnG+wC5QxHe}@;;Y|3;p zAfGpyJ{a%JH)=|#SzA_5dL7`xr=$x7?Q^HqdLA;UjcJrjO0XA;kTtcpkwTVGW|um? z0obdrM`?-h@x?V^YmQe2zGD+whK+o1iVPOE!arO+T64|J@@KOmQ2klbxyA3w%62+J zHt84){u?p-W+XMLgqHqK%3(6A69N7h=ePQ{j>XAnHgG3H+If#zEDn55G0oW$bx zCwckmDXrSLCu~A5uh~bUq%PXX9QMyfrCIpTr}GJ5JCtF2KGtN9TX|MuTiMxiBjYF! znf@Ci7koT)zKhER&7}}JCu%kt8WAUaLUkLo*%9@@zP)n;2*B2++qvni; z{g)*SmVI_gMw`?0>0j+sb_M1t8Gl#wD2Zwj$jnB}^o~aF&3)EEk%`M^aat5Nf~!3m z@%1OpG;jy|8q$4T)u2{P8>|_Wsc28G1>f4%L(SU^{sd=On+r95?S1^wn#{{ZhCwA3 zK3`%^BoVbz7;3cV@w^P%JC8$o>U=(ypGWLpT7)$R(U$ASx-uPT&~yCQXkn5@DXXf& zzIvq&nVZRzn5(`l+3qb%39X1Pli7hfw|<|EcT=scyf`CJTMqQn^{udA0?91aEw&nzdZ7PK260p;7G8 z6XKP`EvRMghYerM68FtLiiln%Q+wk;l3m#)1 zwCidU0j|`FS+bJxBB@iOtJr*>R#du2-pm1FY+%Pgv$^fpq3Iljm*H;o#ilCt3qCw)NZTLel&+p=v7i{;yKDb+ z+}S(wox>CE1^xgN1(l>@lbnho0*Ns&G9H-f!%5`Iyn;1A|Y;ve2l{Y)!cT(GDwCuW1sXEi+E=!C39KagF@!@WJNb@x8zeP%4X zB}bOlm!8$P9@)&($Hus+^7BVyzV%C6ay|d+>OW{$_ zIF~aC`^+fjdk+AZhC;WF>dvBYnZ1PnY>GsITM%x@Vfm5P#N38W&o?VI-361^tGmdu z-WaasMk5`;K+9nfP%iTUusXXg@&0k{;!X(+>_#QQde9S2CHc188PSqc5T|av`&~l`6{+92tZFccH?(5V-4ky=8oYLy!yP!Tm%{|f; z&*cc3EBVZX~ek zbIB1yvC*@tkZCK&&q^5?6Zy6T4LEy+bzUi!-qB!s-<)^F#z5mZ>K{&4C4x#Hpou9S zi`zD`CQRye+2oGVH;=?~4BB#>ebzB(< zZFDI~*zLkDDd&~KtJ9TL>fEmv?XCdYM_1DtiN|qFbdE99#PEswU7kGl?5lsBpqb?yDG0GECATeM7lZTVtTdR3BS$?vUE z^=dn+yX`GopfMTXALq)`=kFhBOMex)3e}pHPA7gHZ?ZsA{bQU`yN&cS z!nL9}J8^OG`G{c^yxNM&|J0L_bhShe4Ji6&AS5=`A*gbDY;Gr?S6#9|&1~tF;@52{ zDS7^XZb?B?BG#g?NJuIg3Rv`<)@^3rTK!DvdGL|Mo2~Bz{3BWh3Al{{hpmgR-q5h6 zx!=|gYdjRYe0g9rK7Af-{bOcOrw0FMd90EzIK3weCc_l^s=bz5gL-6%#p7mMb#>GI z0CjHMdggSzBz?;kHu4sX?N_e6?iM!9HCp*&4olt@e9FBya%rA^ZqD)4zpL6dTC(&^ zwXm@GRrn{1jycjm`T}vuuOp{1`}!c`JTJ6p7hphRX~bJOp=j^LWEFc;AWbjafnFB$ z1``uAj9p&7d(lhpYDJ$0i4lPQb(BU)k7@L=)i1c9@&+_JDkFL})q8hbNl8ihbaCD%i&AbWkdq_q9bLAwiYIUO8Y$(eCOhEsa>q0a?~5knUWSq{<}8d8T0|V0voQ6Gzzbr zC^glruraEg`ZLabcnDas?7uug>3mMVc+=jnFcT9`AXkE|^=w+Ay+=8`D6ew-706Bl zr<0b{svQv)U1Zp=C&zqs%=EjaQ)F5g7vGBw|EBeQy)CtGhD=DSKQS~;Faw)(PF0V6 zyLR}=NfkB96t7Zy;xTKQYj7K1QHyVH;$RhkdUk7EsyIm(zt#*=R936C1=_#E3MHC#Ql;hfla9}LOxiP)M}$W0BOwvTER(R zzX;CxDSl=pU#QAWXtlarVCKQ`mBFxObj@&&ZPHQiK20h&Z+8Kv)GL0NJyX%%g((s5 z)jH=WG44h2LJ~J+rm~{vtWKF!^OMFr`bGkc+Wql6bfv5*mm9+n^Kw}FHvTlaGI`yq zRjyf495fAXGn_ov79Er+aH?{9#J()bleE#mr!n}auuX;4+!Zc9Q1f}? z^Pg4o$y5inA27I{2!WUKp_jS4Bg@2sZcdiF##%wylX;aNPBBlHY*IVlS%VF<5Wck3 z#?h7s57eaayIZY!@rB04vr*rvOZ62l{mdxl{KR%j$uJ2!O4agpo62YReP8Dvw^1=e-CL#23n%&*v}ht;QZ#U#3N zgKI1 zFpRx;UQWU<6@sJcIU}LDMNUb9U%z~ylrc|FPw0!S zr&^V%%s~6zraOh+f}N9-)u`t!w%C{l$l2A^aeE*ZCW`_Nc@fl}1!cDxb8+rV|KS$Py@EG+L^&IpVcAu-EgGpn8Sq8i_!HjI?<#9}Vzj z7JD4Hzr+{km3q^dzHqbBMD{&Ut*QM3|Apy9k4d7D96x)lGe_Cb4t}NQL|lT?Pbr-V z`-iQ&Biv&O05jnA^^oJt4g&{>1{PpK@ua)>fV!VIFN5CMQb2#vJ2HatA??;LZ5 z%%1hha=x+Dy&?UWpPd`gF}~5$)60CNEWjWI2G)ks4p~?WeWxN12})+>6|w~) z3|;oFi|xd#)s0KMVR2xIBwFm*ZC& zlvkQMnTpedrzq+OOA$(v+u9cSUCjK(#BD}>O3?Ye1BF=Sn2bW zXLy*KMsHDSrao&rej{WF*lIl{RiCmY9vi?A>*N=gkU$M>rjL}DrZ&t8F6-uqSF88u z2(a2B5BSrQxY0vJ!}<-Hyr02r;pX=IaS%w2K_RtqmmZSJk^PFAIu7zY0zzY8F<8X$ z3^hWvEi5hbD_440x&Ti^yz}rHc$w+)+1-9B2pN#C9=y_N$Lw`*;y==V4!nhv)O>!g zPPDtMfC)nL^-c!hgwW*2{RKz{i(HezW`N|^&-xki^+>t80FoH9_xfL4iSy2Xgi~yi zKbjIN$S!^a76&rZB`0>*e5sl8D8Q0TKM}4Mr;KAA^A`cmjzO}k=o(HbN=Q}L;DJ#T z0@qq49e**X`Q)@LAa@^LROW6p)yeVq|9DCbJyYi87!nwAcLC4Rh^z~L7q@085=G)+ zi@5mk`TxdZ(c5=ZOA;up&6M=rhG$6muC55{Mj}f_lM5OO#$LEmk9p74KOy57hOICQALvJ5bzz=f03cr) zm<~)FhX=R_F{yWwD92Ju=iP-k@#7m9K8q^!$)SXWg42p~!D`-RS~}MH42D4TM{h9t zKPDtrE@FY51P!6%<~zhldo5{^(2`4vxvPQKs;!9>k=?SmMnmbxuu5>>vG!`C^h+3l%Ge6lD`tg9wm&15L&V zUDFtS6y}QxRp=0%SN8i;^XT=M_MFlBr-J5EU&DU-)?%-4)wa6&8FpiGu{pYJm|yz7 zO!tUZD2$XYI<7qH8_w<2f-8H200u5fx)jecJ|KkE=;~uvS4lcg$%^@qSVrr{0x6LI zLWvrRniL++hjDzOR)k-d%Jx~J6k}f6ZDV!oy4_+@z0Bkz-{Bz=jI@ky`sIxOF=s%2 zv#Hg2MZjAHd1{yVS|tEee!~&-F(SHgG(m5e%J1oEXNQLDfP;p&BZ2u+7775002Pe! z)m258Uco1fbgi5FuAPDjjA`|{TTL^8(B==$U*4#dXkbbieX`oHH-&%X4K=8(WzMDe8?RqiV3nD|4)YwuT4;fh9-&BaZ+ZD5W^!^aGJobcsK|2spHoJy1mAPsdF zU`uOLRJ&lmD8GhZSpE%B+39g^o9lZu?mgUdjc)pJ%wLD={Y1>bMWGX5*{ua3BDxDE zt{GCuT$yB%5GT|U^_~qc&K1kOaz)9>;l>t@TW_7B4X)1E`pu&%@W|(U`o5ktx!3rVI-e+(OHoDa_7+ zZQy67aV2Bo1bLkv<-gy4?`|oUgzx82iyQoo=!-#jnCAU%C4~kb?bvV*IF@39PHve9 zsn3;)lDD^aJGG$wIzUB51)2x`izpAZ)NMFT&CSqlgk-$DTD?Cmd7b~hgR&i;Guz6_ z6#p|& z;pXc+T-3Tj6ViguSE|;WOMZK`K$A_w?hps4+o7eU_3EL}GC^DE6NaJ@f5zBO7Znr3 z=d_-mL0t?)L^taR!zlWP-apV=RV@nz7s#Q6qkl4mQyi%&zxY^m`p^8dp{m(87ojfR?I+}<_)WYIpU^J=F>eS?90C;a|uIN9fshd|6 eO-v{uLLaZH`x29`tDrkc0WuPb;$@-+0sjwo_e_`o literal 0 HcmV?d00001 diff --git a/guides/asset/readme-qr-bitcoin.png b/guides/asset/readme-qr-bitcoin.png new file mode 100644 index 0000000000000000000000000000000000000000..79689a073cb0733829506ae641e248fee0e2152e GIT binary patch literal 1505 zcmY+E0Z>wR9LHZ9hP6U(Uc2R_)pgl5GcDF=RFKP3Txk>DFpcOc>on7xAdsSEcUiZz z*2*)Z%$tpP?7^CBCJ5HK({-7YfE4w@RA!NYra%J99>h(3cmMZ)_kaKY@BjP%KHu;E z?5@kwwkWmO((j-!@uWlqq)3g}<8_wSHXift5^qo|} zci^J6VD?T>VBf1z4p3p0?09OrEBnD%-gd0acH+i|6}V8+u_xw_y;q^!QtoACt`{*h zcuGZ+Df_nvw(^In3~R8IWq_Br($MGz0r=G zLnDU1pVEGrfzZI-d@(|iRJWPOv{E1K`e6cz#|ef$x%GuqQNU7?kH(J6E#t_5DDRp6 zOOE;wd&Gi<3G7oD^(MY4+gg~r2^1hS0|orkw!}vx4c0!sC)pUxBcp)Sr>;W=gicjK)DRp&_~jIX8z=|{zoD_!LWYeks)%lyXOMxIbi4`|Q$Jm^=oowa z&z5($RoY}I%v*ybi>&>MZ11dmR7_49xZGYXQl@xy%#`Lm_4M^6S(MUQ=juO#D9=;i zIwMoC6F;Qq3oj$} zMe1A1h<^}`h*Xy0VS0p(9W+k4gM)2V1ki<&M&cRAf!EAvQN5jZ)7?&SxN9Gy@Pj%z z^A<;lYrDm7*3vsK>iAV97iz{evL0281V;!m3?==pdxmB!`CHsg;C52ravrKF%ZQd~ zwU?0}zDMmxIudWjA4&(!y3BC~1ZlfU$;x`-doi5y3u(2ZSg(SP?*T)s)y{ylh5mB@+{6H>YWk0(^axa z%^mD2UCT|&h9A|2eCWiDz+R!G_@};0DZY#~JK)hNdG(5{jyBlGH;mEV@j;Y!g5Llb zeC=kL5Vj9wuGw2N2 z^P=8c|a*H98=HZnmCwyKk%C`=!wt!A#$HwZ4wV~8HFP2 zC&tZFjDhEWcybk6t7ic*h~w(M$HS2OS2{e;^frd-s&jrpGjv>?3FLRFzb@IA}Wzo>zMSbmd$lrXOi#UHR+k zkh42hE6q}bwav=JjLw585pYoo6%pFwKQ^p%NzWxOGJdYLP}j$L)n OKTh42nkfBdU&VjSd(t`p literal 0 HcmV?d00001 diff --git a/guides/asset/readme-qr-examples.png b/guides/asset/readme-qr-examples.png new file mode 100644 index 0000000000000000000000000000000000000000..3c6f0bcef73aa8e0c3c8a11361b0f06bc6869574 GIT binary patch literal 1345 zcmeAS@N?(olHy`uVBq!ia0vp^zd)FS4M=vpiLwP!Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPNrwo&+)WjKAt}!sMobz;X45_&F_HJO&90LJXhy1SJ z@s-657TJp)rm|i9oA1z+9%yR)=ruP`I|8ixruFA-^>NP1{r~OOTz`GF=w7h7QAzIH z>!FtApW^NsZr=ZAee+*VD-J7#7Yz%ToA@}a3Z^QTKFIoOx^%NxoaOf`RbTv%&-*1~ z^Y-VKMa|*m4i^|5*;!--N*-vrANN$>Uai(|`}3C7yV9*PGi5%<&JWbKswf33fU4B6 z_BmL2bywbXu_GtNuBW_yd*wb`#6_qfU^R~H+m`kH<5&Cczx-I}+P~p_YtQAmf{hR; z0V{Zxsk#1bl-SH$%VzCaxBQ;BHo~zAFBD!J*p^iKW!A!ag z$Dd#B;)}bBY?I!`7@r#Zg7tS(-fk_nT7GRx?(;uy_eSlC3@iEY3g~rc7{sLR^xeAo zt6}AvtDnO{qZ72>E?D`w%xjy7`unM(K(9MoaD;`zg4m@CzHf|}u_k!gx#)Rkj!D(M zx^wmCox9{Y?(g3`Un^s6xo+LOkLRkV?pgQbz2-8z=9QKk(Zct5 z9&=WnqD@VE>cH8vX!{Vgf z>Bz3Un#h%QzbIf3Ez7 zWBz8#*X^#l_sDozAJ8axm~M%>_wHxs+j-mc?zw-moDre5b^UMVe~zVnD>uD0hsF{p zSphv&Iqh`z-1uE@Zt?A^ijCEsJ@w~1nc(GjpB=#n%m zhEBU3^8UuEa<_0!oyc9Ycdae@B>76FxM=sMtCpKl;ujQqz~J-GJ^5zMfA!bPR~Cl8 ze|+Vq8b+W`i@lPal_K7E7hhuX}{gN n@^cg-h{1UUQ6d3Z4fcQ7Y!@@j9De)vEJ(uB)z4*}Q$iB}UoTUk literal 0 HcmV?d00001 diff --git a/guides/asset/readme-qr-install.png b/guides/asset/readme-qr-install.png new file mode 100644 index 0000000000000000000000000000000000000000..d635285819d4e39a7e030b83ac181990e9589be0 GIT binary patch literal 1506 zcmeAS@N?(olHy`uVBq!ia0vp^zd)FS4M=vpiLwP!Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPNrwo&te1mM_X$A(?d`}n0kcwMx@1CBv*no%C!KnTJ z|EFh?t}UzPMe$iw?d$91aR1XTzY@)yQ&N4)8Ai^?>~OSV%@jWt$V}w zul|$P{(1MK9cAa<$k)Gq@Q+27MOL81;R2&0d)pjsvsy_tZ{)W4BH;zHYZR+hkr#&a(f9-golF z-36KjF|<){dGLpQCxzlmNk6+z8 zM`RvQ6t3XFo{OJu#qOREd{{BY~Y%d;MZ4Ec^LaOKYTPZ&mMJ&?D)!(bF{nX0OPiCgU zw|B31JlgjGIgCK_KWn(C|b913ft6{$8Yx?yZiiQ`+XF1E^D3$`I!~-_tF|hj|^($K+dOk5d`2wG}QRO1A z3Q+h1(?xmkI&K^8(vG{*zCqLUZdH0NTPgH9_I#`AOa@1GNUBqqWBJ%@%7$O_vy1j_`zBrZ;ogmf zQ>qQ^?qQtMxB^li%0)oSN|Kl#&g^z&;_@_;9h4}ps(J1^7m z50OnyeG`7$dq#8K(aNf=XWxCEa%sY5XFnUXCJ^R zivIE=+nw8O`B;xXp&)hYySJ)qu53z*4}NZY^vT}pAFmLZ0hlf#D$nik@=SCUK6K7k zj`Mla^H1@oZj@&@eL_l?AU~_#&3+l=C3m-Y;nFFUTF0jvr9XHg6o2&dl4@Ro5@>0_ zBKu=S@liM7Q{h*OPNck4eOTk;mvb|AQB>fkSNGz)PF@z4-LnfCHwPvZ7o}_O^LuZT z9^=G(G$XzGv6&JzB@N zCTT8N$>-`1Dak;Ie8)=F_`BslxNcg0o8mV4mBjLr`knV4+IeUG`-oy6qRa%bp8Vp@ WPk8xrTjO3E5ZBYy&t;ucLK6TWVzJ`@ literal 0 HcmV?d00001 diff --git a/libraries/harvester/source/mod/Packager.js b/libraries/harvester/source/mod/Packager.js index ef99e19f..6f9890c9 100644 --- a/libraries/harvester/source/mod/Packager.js +++ b/libraries/harvester/source/mod/Packager.js @@ -23,7 +23,7 @@ lychee.define('harvester.mod.Packager').requires([ json = JSON.parse(JSON.stringify(project.package.json)); } - + if (json === null) json = {}; if (typeof json.api === 'undefined') json.api = {}; if (typeof json.build === 'undefined') json.build = {}; if (typeof json.source === 'undefined') json.source = {}; diff --git a/libraries/lychee/lychee.pkg b/libraries/lychee/lychee.pkg index facfec82..18d90739 100644 --- a/libraries/lychee/lychee.pkg +++ b/libraries/lychee/lychee.pkg @@ -342,6 +342,9 @@ "Sound": [ "js" ], + "State": [ + "js" + ], "Velocity": [ "js" ], @@ -586,6 +589,10 @@ "fnt", "js" ], + "Notice": [ + "fnt", + "js" + ], "Sprite": [ "js" ], @@ -632,6 +639,10 @@ "fnt", "js" ], + "List": [ + "fnt", + "js" + ], "Select": [ "fnt", "js" diff --git a/libraries/lychee/source/core/Environment.js b/libraries/lychee/source/core/Environment.js index 479b24f5..52c562cc 100644 --- a/libraries/lychee/source/core/Environment.js +++ b/libraries/lychee/source/core/Environment.js @@ -131,6 +131,7 @@ lychee.Environment = typeof lychee.Environment !== 'undefined' ? lychee.Environm return function(){}; break; + case 'body': case 'document': case 'location': case 'localStorage': diff --git a/libraries/lychee/source/core/lychee.js b/libraries/lychee/source/core/lychee.js index f5f6b27d..8bb9b202 100644 --- a/libraries/lychee/source/core/lychee.js +++ b/libraries/lychee/source/core/lychee.js @@ -543,7 +543,7 @@ lychee = typeof lychee !== 'undefined' ? lychee : (function(global) { lychee: '/opt/lycheejs', project: null }, - VERSION: "2016-Q2", + VERSION: "2016-Q3", diff --git a/libraries/lychee/source/effect/Alpha.js b/libraries/lychee/source/effect/Alpha.js index fe9adc3c..50186bd3 100644 --- a/libraries/lychee/source/effect/Alpha.js +++ b/libraries/lychee/source/effect/Alpha.js @@ -101,16 +101,15 @@ lychee.define('lychee.effect.Alpha').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { - - this.__start = clock + this.delay; - this.__origin = typeof entity.alpha === 'number' ? entity.alpha : 1; - + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin === null) { + this.__origin = typeof entity.alpha === 'number' ? entity.alpha : 1; } diff --git a/libraries/lychee/source/effect/Color.js b/libraries/lychee/source/effect/Color.js index 8099bdd1..1fe01eae 100644 --- a/libraries/lychee/source/effect/Color.js +++ b/libraries/lychee/source/effect/Color.js @@ -100,10 +100,15 @@ lychee.define('lychee.effect.Color').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { + this.__start = clock + this.delay; + } - this.__start = clock + this.delay; - this.__origin = entity.color || '#000000'; + let t = (clock - this.__start) / this.duration; + if (t < 0) { + return true; + } else if (this.__origin === null) { + this.__origin = entity.color || '#000000'; } @@ -123,11 +128,6 @@ lychee.define('lychee.effect.Color').exports(function(lychee, global, attachment let b = originb; - let t = (clock - this.__start) / this.duration; - if (t < 0) { - return true; - } - if (t <= 1) { let f = 0; diff --git a/libraries/lychee/source/effect/Depth.js b/libraries/lychee/source/effect/Depth.js index a0c78214..936c8812 100644 --- a/libraries/lychee/source/effect/Depth.js +++ b/libraries/lychee/source/effect/Depth.js @@ -14,7 +14,7 @@ lychee.define('lychee.effect.Depth').exports(function(lychee, global, attachment this.duration = 250; this.depth = 0; - this.__origin = 0; + this.__origin = null; this.__start = null; @@ -86,14 +86,15 @@ lychee.define('lychee.effect.Depth').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { - this.__start = clock + this.delay; - this.__origin = entity.depth || 0; + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin === null) { + this.__origin = entity.depth || 0; } diff --git a/libraries/lychee/source/effect/Event.js b/libraries/lychee/source/effect/Event.js index 98d3f10f..61b10816 100644 --- a/libraries/lychee/source/effect/Event.js +++ b/libraries/lychee/source/effect/Event.js @@ -62,7 +62,7 @@ lychee.define('lychee.effect.Event').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { - this.__start = clock; + this.__start = clock; } diff --git a/libraries/lychee/source/effect/Height.js b/libraries/lychee/source/effect/Height.js index 63744684..4503940c 100644 --- a/libraries/lychee/source/effect/Height.js +++ b/libraries/lychee/source/effect/Height.js @@ -14,7 +14,7 @@ lychee.define('lychee.effect.Height').exports(function(lychee, global, attachmen this.duration = 250; this.height = 0; - this.__origin = 0; + this.__origin = null; this.__start = null; @@ -86,14 +86,15 @@ lychee.define('lychee.effect.Height').exports(function(lychee, global, attachmen update: function(entity, clock, delta) { if (this.__start === null) { - this.__start = clock + this.delay; - this.__origin = entity.height || 0; + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin === null) { + this.__origin = entity.height || 0; } diff --git a/libraries/lychee/source/effect/Offset.js b/libraries/lychee/source/effect/Offset.js index 764f1f10..62b42d2a 100644 --- a/libraries/lychee/source/effect/Offset.js +++ b/libraries/lychee/source/effect/Offset.js @@ -96,17 +96,16 @@ lychee.define('lychee.effect.Offset').exports(function(lychee, global, attachmen update: function(entity, clock, delta) { if (this.__start === null) { - - this.__start = clock + this.delay; - this.__origin.x = entity.offset.x; - this.__origin.y = entity.offset.y; - + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin.x === null) { + this.__origin.x = entity.offset.x || 0; + this.__origin.y = entity.offset.y || 0; } diff --git a/libraries/lychee/source/effect/Position.js b/libraries/lychee/source/effect/Position.js index beeca16c..bb55adcf 100644 --- a/libraries/lychee/source/effect/Position.js +++ b/libraries/lychee/source/effect/Position.js @@ -98,18 +98,17 @@ lychee.define('lychee.effect.Position').exports(function(lychee, global, attachm update: function(entity, clock, delta) { if (this.__start === null) { - - this.__start = clock + this.delay; - this.__origin.x = entity.position.x; - this.__origin.y = entity.position.y; - this.__origin.z = entity.position.z; - + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin.x === null) { + this.__origin.x = entity.position.x || 0; + this.__origin.y = entity.position.y || 0; + this.__origin.z = entity.position.z || 0; } diff --git a/libraries/lychee/source/effect/Radius.js b/libraries/lychee/source/effect/Radius.js index 1cfb30e5..57422e0d 100644 --- a/libraries/lychee/source/effect/Radius.js +++ b/libraries/lychee/source/effect/Radius.js @@ -14,7 +14,7 @@ lychee.define('lychee.effect.Radius').exports(function(lychee, global, attachmen this.duration = 250; this.radius = 0; - this.__origin = 0; + this.__origin = null; this.__start = null; diff --git a/libraries/lychee/source/effect/Shake.js b/libraries/lychee/source/effect/Shake.js index 5dc4e6e5..bdb21eed 100644 --- a/libraries/lychee/source/effect/Shake.js +++ b/libraries/lychee/source/effect/Shake.js @@ -98,34 +98,33 @@ lychee.define('lychee.effect.Shake').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { - - this.__start = clock + this.delay; - this.__origin.x = entity.position.x; - this.__origin.y = entity.position.y; - this.__origin.z = entity.position.z; - + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin.x === null) { + this.__origin.x = entity.position.x || 0; + this.__origin.y = entity.position.y || 0; + this.__origin.z = entity.position.z || 0; } - let origin = this.__origin; - let originx = origin.x; - let originy = origin.y; - let originz = origin.z; + let origin = this.__origin; + let originx = origin.x; + let originy = origin.y; + let originz = origin.z; - let shake = this.shake; - let shakex = shake.x; - let shakey = shake.y; - let shakez = shake.z; + let shake = this.shake; + let shakex = shake.x; + let shakey = shake.y; + let shakez = shake.z; - let x = originx; - let y = originy; - let z = originz; + let x = originx; + let y = originy; + let z = originz; if (t <= 1) { diff --git a/libraries/lychee/source/effect/Sound.js b/libraries/lychee/source/effect/Sound.js index bc3eaed7..4b186f23 100644 --- a/libraries/lychee/source/effect/Sound.js +++ b/libraries/lychee/source/effect/Sound.js @@ -62,7 +62,7 @@ lychee.define('lychee.effect.Sound').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { - this.__start = clock; + this.__start = clock; } diff --git a/libraries/lychee/source/effect/State.js b/libraries/lychee/source/effect/State.js new file mode 100644 index 00000000..0bb46831 --- /dev/null +++ b/libraries/lychee/source/effect/State.js @@ -0,0 +1,105 @@ + +lychee.define('lychee.effect.State').exports(function(lychee, global, attachments) { + + + + /* + * IMPLEMENTATION + */ + + let Composite = function(settings) { + + this.delay = 0; + this.state = null; + + this.__start = null; + + + // No data validation garbage allowed for effects + + let delay = typeof settings.delay === 'number' ? (settings.delay | 0) : null; + let state = typeof settings.state === 'string' ? settings.state : null; + + if (delay !== null) { + this.delay = delay; + } + + if (state !== null) { + this.state = state; + } + + }; + + + Composite.prototype = { + + /* + * ENTITY API + */ + + // deserialize: function(blob) {}, + + serialize: function() { + + let settings = {}; + + + if (this.delay !== 0) settings.delay = this.delay; + if (this.state !== null) settings.state = this.state; + + + return { + 'constructor': 'lychee.effect.State', + 'arguments': [ settings ] + }; + + }, + + render: function(renderer, offsetX, offsetY) { + + }, + + update: function(entity, clock, delta) { + + if (this.__start === null) { + this.__start = clock; + } + + + let t = (clock - this.__start) / this.delay; + if (t < 0) { + return true; + } + + + let state = this.state; + + if (t <= 1) { + + return true; + + } else if (state !== null) { + + if (typeof entity.setState === 'function') { + + // XXX: Allowing setState() using removeEffects() + this.state = null; + + entity.setState(state); + + } + + + return false; + + } + + } + + }; + + + return Composite; + +}); + diff --git a/libraries/lychee/source/effect/Velocity.js b/libraries/lychee/source/effect/Velocity.js index fad1ad47..7acf5719 100644 --- a/libraries/lychee/source/effect/Velocity.js +++ b/libraries/lychee/source/effect/Velocity.js @@ -98,18 +98,17 @@ lychee.define('lychee.effect.Velocity').exports(function(lychee, global, attachm update: function(entity, clock, delta) { if (this.__start === null) { - - this.__start = clock + this.delay; - this.__origin.x = entity.velocity.x; - this.__origin.y = entity.velocity.y; - this.__origin.z = entity.velocity.z; - + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin.x === null) { + this.__origin.x = entity.velocity.x || 0; + this.__origin.y = entity.velocity.y || 0; + this.__origin.z = entity.velocity.z || 0; } diff --git a/libraries/lychee/source/effect/Visible.js b/libraries/lychee/source/effect/Visible.js index c9c88428..f610cc5a 100644 --- a/libraries/lychee/source/effect/Visible.js +++ b/libraries/lychee/source/effect/Visible.js @@ -63,14 +63,15 @@ lychee.define('lychee.effect.Visible').exports(function(lychee, global, attachme update: function(entity, clock, delta) { if (this.__start === null) { - this.__start = clock; - this.__origin = entity.visible || false; + this.__start = clock; } let t = (clock - this.__start) / this.delay; if (t < 0) { return true; + } else if (this.__origin === null) { + this.__origin = entity.visible || false; } diff --git a/libraries/lychee/source/effect/Width.js b/libraries/lychee/source/effect/Width.js index d77d5fc0..e35da385 100644 --- a/libraries/lychee/source/effect/Width.js +++ b/libraries/lychee/source/effect/Width.js @@ -14,7 +14,7 @@ lychee.define('lychee.effect.Width').exports(function(lychee, global, attachment this.duration = 250; this.width = 0; - this.__origin = 0; + this.__origin = null; this.__start = null; @@ -86,14 +86,15 @@ lychee.define('lychee.effect.Width').exports(function(lychee, global, attachment update: function(entity, clock, delta) { if (this.__start === null) { - this.__start = clock + this.delay; - this.__origin = entity.width || 0; + this.__start = clock + this.delay; } let t = (clock - this.__start) / this.duration; if (t < 0) { return true; + } else if (this.__origin === null) { + this.__origin = entity.width || 0; } diff --git a/libraries/lychee/source/net/protocol/HTTP.js b/libraries/lychee/source/net/protocol/HTTP.js index b5b5797f..6701b52b 100644 --- a/libraries/lychee/source/net/protocol/HTTP.js +++ b/libraries/lychee/source/net/protocol/HTTP.js @@ -216,10 +216,19 @@ lychee.define('lychee.net.protocol.HTTP').exports(function(lychee, global, attac } else if (tmp.indexOf(':') !== -1) { - let key = (tmp.split(':')[0] || '').trim().toLowerCase(); - let val = (tmp.split(':')[1] || '').trim(); + let i_tmp = tmp.indexOf(':'); + let key = tmp.substr(0, i_tmp).trim().toLowerCase(); + let val = tmp.substr(i_tmp + 1).trim().toLowerCase(); - if (/host|origin|connection|upgrade|content-type|content-length|accept-encoding|accept-language|e-tag/g.test(key) === true) { + if (key === 'host') { + + if (/^\[([a-f0-9\:]+)\](.*)$/g.test(val) === true) { + chunk.headers[key] = val.split(/^\[([a-f0-9\:]+)\](.*)$/g)[1]; + } else { + chunk.headers[key] = val; + } + + } else if (/origin|connection|upgrade|content-type|content-length|accept-encoding|accept-language|e-tag/g.test(key) === true) { chunk.headers[key] = val; diff --git a/libraries/lychee/source/platform/html/Renderer.js b/libraries/lychee/source/platform/html/Renderer.js index d9f755f5..d6ae8e87 100644 --- a/libraries/lychee/source/platform/html/Renderer.js +++ b/libraries/lychee/source/platform/html/Renderer.js @@ -7,7 +7,6 @@ lychee.define('Renderer').tags({ * XXX: typeof CanvasRenderingContext2D is: * > function in Chrome, Firefox, IE10 * > object in Safari, Safari Mobile - * */ diff --git a/libraries/lychee/source/platform/html/bootstrap.js b/libraries/lychee/source/platform/html/bootstrap.js index dab4247f..89dd2219 100644 --- a/libraries/lychee/source/platform/html/bootstrap.js +++ b/libraries/lychee/source/platform/html/bootstrap.js @@ -17,7 +17,7 @@ // Hint: CDNs might have no proper redirect to index.html - if (cwd.split('/').pop() === 'index.html') { + if (/\.(htm|html)$/g.test(cwd.split('/').pop()) === true) { cwd = cwd.split('/').slice(0, -1).join('/'); } @@ -1196,11 +1196,22 @@ } - this.baseline = typeof data.baseline === 'number' ? data.baseline : this.baseline; - this.charset = typeof data.charset === 'string' ? data.charset : this.charset; - this.spacing = typeof data.spacing === 'number' ? data.spacing : this.spacing; - this.kerning = typeof data.kerning === 'number' ? data.kerning : this.kerning; - this.lineheight = typeof data.lineheight === 'number' ? data.lineheight : this.lineheight; + this.baseline = typeof data.baseline === 'number' ? data.baseline : this.baseline; + this.charset = typeof data.charset === 'string' ? data.charset : this.charset; + this.lineheight = typeof data.lineheight === 'number' ? data.lineheight : this.lineheight; + this.kerning = typeof data.kerning === 'number' ? data.kerning : this.kerning; + this.spacing = typeof data.spacing === 'number' ? data.spacing : this.spacing; + + + if (data.font instanceof Object) { + + this.__font.color = data.font.color || '#ffffff'; + this.__font.family = data.font.family || 'Ubuntu Mono'; + this.__font.outline = data.font.outline || 0; + this.__font.size = data.font.size || 16; + this.__font.style = data.font.style || 'normal'; + + } if (data.map instanceof Array) { @@ -1263,11 +1274,18 @@ this.baseline = 0; this.charset = ' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~'; - this.spacing = 0; this.kerning = 0; + this.spacing = 0; this.lineheight = 0; this.__buffer = null; + this.__font = { + color: '#ffffff', + family: 'Ubuntu Mono', + outline: 0, + size: 16, + style: 'normal' + }; this.__load = true; diff --git a/libraries/lychee/source/platform/html/ui/entity/Upload.js b/libraries/lychee/source/platform/html/ui/entity/Upload.js index 4c64d506..4fb9e413 100644 --- a/libraries/lychee/source/platform/html/ui/entity/Upload.js +++ b/libraries/lychee/source/platform/html/ui/entity/Upload.js @@ -6,7 +6,8 @@ lychee.define('lychee.ui.entity.Upload').tags({ ]).supports(function(lychee, global) { if ( - typeof global.document !== 'undefined' + typeof global.addEventListener === 'function' + && typeof global.document !== 'undefined' && typeof global.document.createElement === 'function' && typeof global.FileReader !== 'undefined' && typeof global.FileReader.prototype.readAsDataURL === 'function' @@ -25,6 +26,34 @@ lychee.define('lychee.ui.entity.Upload').tags({ + /* + * FEATURE DETECTION + */ + + (function(document) { + + let focus = 'onfocus' in document; + if (focus === true && typeof document.addEventListener === 'function') { + + document.addEventListener('focus', function() { + + for (let w = 0, wl = _WRAPPERS.length; w < wl; w++) { + + let wrapper = _WRAPPERS[w]; + if (wrapper._visible === true) { + wrapper.oncancel(); + } + + } + + }, true); + + } + + })(global.document || {}); + + + /* * HELPERS */ @@ -41,25 +70,45 @@ lychee.define('lychee.ui.entity.Upload').tags({ const _wrap = function(instance) { - let allowed = [ 'json', 'fnt', 'msc', 'snd', 'png', 'js', 'tpl' ]; + let allowed = [ 'json', 'fnt', 'msc', 'snd', 'png', 'js', 'tpl', 'md' ]; let element = global.document.createElement('input'); if (instance.type !== Composite.TYPE.all) { allowed = [ _MIME_TYPE[instance.type] ]; } + element._visible = false; element.setAttribute('accept', allowed.map(function(v) { return '.' + v; }).join(',')); element.setAttribute('type', 'file'); element.setAttribute('multiple', ''); + element.onclick = function() { + element._visible = true; + }; + + element.oncancel = function() { + element._visible = false; + element.value = ''; + instance.trigger('change', [ null ]); + }; element.onchange = function() { - let val = []; + if (element._visible === false) { + return; + } else { + element._visible = false; + } + + + let val = []; + let change = false; [].slice.call(this.files).forEach(function(file) { + change = true; + let reader = new global.FileReader(); reader.onload = function() { @@ -82,19 +131,29 @@ lychee.define('lychee.ui.entity.Upload').tags({ }); - setTimeout(function() { + if (change === true) { - let result = instance.setValue(val); - if (result === true) { - instance.trigger('change', [ val ]); - } + setTimeout(function() { + + let result = instance.setValue(val); + if (result === true) { + instance.trigger('change', [ val ]); + } else { + instance.trigger('change', [ null ]); + } + + }, 500); - }, 1000); + } else { + + instance.trigger('change', [ null ]); + + } }; - _WRAPPERS.push(element); + return element; }; diff --git a/libraries/lychee/source/platform/node/bootstrap.js b/libraries/lychee/source/platform/node/bootstrap.js index 24005783..eb76de5e 100644 --- a/libraries/lychee/source/platform/node/bootstrap.js +++ b/libraries/lychee/source/platform/node/bootstrap.js @@ -592,11 +592,22 @@ } - this.baseline = typeof data.baseline === 'number' ? data.baseline : this.baseline; - this.charset = typeof data.charset === 'string' ? data.charset : this.charset; - this.spacing = typeof data.spacing === 'number' ? data.spacing : this.spacing; - this.kerning = typeof data.kerning === 'number' ? data.kerning : this.kerning; - this.lineheight = typeof data.lineheight === 'number' ? data.lineheight : this.lineheight; + this.baseline = typeof data.baseline === 'number' ? data.baseline : this.baseline; + this.charset = typeof data.charset === 'string' ? data.charset : this.charset; + this.lineheight = typeof data.lineheight === 'number' ? data.lineheight : this.lineheight; + this.kerning = typeof data.kerning === 'number' ? data.kerning : this.kerning; + this.spacing = typeof data.spacing === 'number' ? data.spacing : this.spacing; + + + if (data.font instanceof Object) { + + this.__font.color = data.font.color || '#ffffff'; + this.__font.family = data.font.family || 'Ubuntu Mono'; + this.__font.outline = data.font.outline || 0; + this.__font.size = data.font.size || 16; + this.__font.style = data.font.style || 'normal'; + + } if (data.map instanceof Array) { @@ -664,6 +675,13 @@ this.lineheight = 1; this.__buffer = null; + this.__font = { + color: '#ffffff', + family: 'Ubuntu Mono', + outline: 0, + size: 16, + style: 'normal' + }; this.__load = true; diff --git a/libraries/lychee/source/platform/node/ui/entity/Upload.js b/libraries/lychee/source/platform/node/ui/entity/Upload.js index ddd2b41c..604dd2db 100644 --- a/libraries/lychee/source/platform/node/ui/entity/Upload.js +++ b/libraries/lychee/source/platform/node/ui/entity/Upload.js @@ -51,6 +51,8 @@ lychee.define('lychee.ui.entity.Upload').tags({ this.bind('touch', function() { // TODO: Show file dialog + // TODO: trigger 'change' with null on no selection + // TODO: trigger 'change' with Asset array on selection }, this); diff --git a/libraries/lychee/source/ui/Blueprint.js b/libraries/lychee/source/ui/Blueprint.js index 87b24a5d..b9b36fe6 100644 --- a/libraries/lychee/source/ui/Blueprint.js +++ b/libraries/lychee/source/ui/Blueprint.js @@ -47,6 +47,7 @@ lychee.define('lychee.ui.Blueprint').requires([ if (visible === true) { let entity = null; + let other = null; let type = this.type; let x1 = -1/2 * this.width; let x2 = 1/2 * this.width; @@ -254,13 +255,201 @@ lychee.define('lychee.ui.Blueprint').requires([ for (let e = 0, el = this.entities.length; e < el; e++) { - let entity = this.entities[e]; + entity = this.entities[e]; entity.position.x = 0; entity.position.y = 0; } + } else if (type === Composite.TYPE.auto) { + + if (this.entities.length === 2) { + + entity = this.entities[0]; + + pos_x = x1 + 32 + entity.width / 2; + pos_y = 0; + + entity.trigger('relayout'); + entity.setOrder(1); + + + if (fade === true) { + + entity.setPosition({ + x: pos_x, + y: pos_y - 3/2 * this.height + }); + + entity.addEffect(new _Position({ + type: _Position.TYPE.easeout, + delay: 100, + duration: 300, + position: { + x: pos_x, + y: pos_y + } + })); + + } else { + + entity.setPosition({ + x: pos_x, + y: pos_y + }); + + } + + + entity = this.entities[1]; + other = this.entities[0]; + + pos_x = other.position.x + other.width / 2 + 32 + entity.width / 2; + pos_y = 0; + + entity.trigger('relayout'); + entity.setOrder(2); + + + if (fade === true) { + + entity.setPosition({ + x: pos_x, + y: pos_y - 3/2 * this.height + }); + + entity.addEffect(new _Position({ + type: _Position.TYPE.easeout, + delay: 100, + duration: 300, + position: { + x: pos_x, + y: pos_y + } + })); + + } else { + + entity.setPosition({ + x: pos_x, + y: pos_y + }); + + } + + } else if (this.entities.length === 3) { + + entity = this.entities[0]; + + pos_x = x1 + 32 + entity.width / 2; + pos_y = 0; + + entity.trigger('relayout'); + entity.setOrder(1); + + + if (fade === true) { + + entity.setPosition({ + x: pos_x, + y: pos_y - 3/2 * this.height + }); + + entity.addEffect(new _Position({ + type: _Position.TYPE.easeout, + delay: 100, + duration: 300, + position: { + x: pos_x, + y: pos_y + } + })); + + } else { + + entity.setPosition({ + x: pos_x, + y: pos_y + }); + + } + + + entity = this.entities[1]; + other = this.entities[0]; + + pos_x = 0; + pos_y = 0; + + entity.trigger('relayout'); + entity.setOrder(2); + + + if (fade === true) { + + entity.setPosition({ + x: pos_x, + y: pos_y - 3/2 * this.height + }); + + entity.addEffect(new _Position({ + type: _Position.TYPE.easeout, + delay: 100, + duration: 300, + position: { + x: pos_x, + y: pos_y + } + })); + + } else { + + entity.setPosition({ + x: pos_x, + y: pos_y + }); + + } + + + entity = this.entities[2]; + + pos_x = x2 - 32 - entity.width / 2; + pos_y = 0; + + entity.trigger('relayout'); + entity.setOrder(3); + + + if (fade === true) { + + entity.setPosition({ + x: pos_x, + y: pos_y - 3/2 * this.height + }); + + entity.addEffect(new _Position({ + type: _Position.TYPE.easeout, + delay: 100, + duration: 300, + position: { + x: pos_x, + y: pos_y + } + })); + + } else { + + entity.setPosition({ + x: pos_x, + y: pos_y + }); + + } + + } + } } @@ -658,7 +847,8 @@ lychee.define('lychee.ui.Blueprint').requires([ Composite.TYPE = { grid: 0, view: 1, - full: 2 + full: 2, + auto: 3 }; diff --git a/libraries/lychee/source/ui/Element.js b/libraries/lychee/source/ui/Element.js index 41730dcd..84728127 100644 --- a/libraries/lychee/source/ui/Element.js +++ b/libraries/lychee/source/ui/Element.js @@ -465,8 +465,8 @@ lychee.define('lychee.ui.Element').requires([ if (options !== null) { - this.options = options.map(function(val) { - return '' + val; + this.options = options.map(function(option) { + return '' + option; }); diff --git a/libraries/lychee/source/ui/Menu.js b/libraries/lychee/source/ui/Menu.js index f519ba88..f2189c37 100644 --- a/libraries/lychee/source/ui/Menu.js +++ b/libraries/lychee/source/ui/Menu.js @@ -12,7 +12,16 @@ lychee.define('lychee.ui.Menu').requires([ 'lychee.ui.Layer' ]).exports(function(lychee, global, attachments) { - const _FONT = attachments["fnt"]; + const _Alpha = lychee.import('lychee.effect.Alpha'); + const _Event = lychee.import('lychee.effect.Event'); + const _Helper = lychee.import('lychee.ui.entity.Helper'); + const _Label = lychee.import('lychee.ui.entity.Label'); + const _Layer = lychee.import('lychee.ui.Layer'); + const _Position = lychee.import('lychee.effect.Position'); + const _Select = lychee.import('lychee.ui.entity.Select'); + const _Visible = lychee.import('lychee.effect.Visible'); + const _Width = lychee.import('lychee.effect.Width'); + const _FONT = attachments["fnt"]; @@ -51,7 +60,7 @@ lychee.define('lychee.ui.Menu').requires([ settings.relayout = false; - lychee.ui.Layer.call(this, settings); + _Layer.call(this, settings); @@ -72,7 +81,8 @@ lychee.define('lychee.ui.Menu').requires([ } else { - let args = [ id, { + let found = null; + let args = [ id, { x: 0, y: 0 }, delta ]; @@ -89,11 +99,17 @@ lychee.define('lychee.ui.Menu').requires([ args[1].y = position.y - helper.position.y; helper.trigger('touch', args); + found = helper; + + break; } } + + return found; + } }, this); @@ -218,12 +234,12 @@ lychee.define('lychee.ui.Menu').requires([ }, this); - this.setEntity('@label', new lychee.ui.entity.Label({ + this.setEntity('@label', new _Label({ font: this.font, value: this.label })); - this.setEntity('@select', new lychee.ui.entity.Select({ + this.setEntity('@select', new _Select({ options: this.options, value: this.value })); @@ -270,7 +286,7 @@ lychee.define('lychee.ui.Menu').requires([ serialize: function() { - let data = lychee.ui.Layer.prototype.serialize.call(this); + let data = _Layer.prototype.serialize.call(this); data['constructor'] = 'lychee.ui.Menu'; let settings = data['arguments'][0]; @@ -303,7 +319,7 @@ lychee.define('lychee.ui.Menu').requires([ } - lychee.ui.Layer.prototype.update.call(this, clock, delta); + _Layer.prototype.update.call(this, clock, delta); }, @@ -379,7 +395,7 @@ lychee.define('lychee.ui.Menu').requires([ if (alpha !== 0) { - lychee.ui.Layer.prototype.render.call(this, renderer, offsetX, offsetY); + _Layer.prototype.render.call(this, renderer, offsetX, offsetY); } @@ -431,7 +447,7 @@ lychee.define('lychee.ui.Menu').requires([ for (let h = 0, hl = this.helpers.length; h < hl; h++) { - this.__helpers.push(new lychee.ui.entity.Helper({ + this.__helpers.push(new _Helper({ width: 32, height: 32, label: null, @@ -508,33 +524,33 @@ lychee.define('lychee.ui.Menu').requires([ this.removeEffects(); - this.addEffect(new lychee.effect.Alpha({ - type: lychee.effect.Alpha.TYPE.easeout, + this.addEffect(new _Alpha({ + type: _Alpha.TYPE.easeout, delay: 300, duration: 300, alpha: 1.0 })); - this.addEffect(new lychee.effect.Position({ - type: lychee.effect.Position.TYPE.easeout, + this.addEffect(new _Position({ + type: _Position.TYPE.easeout, duration: 300, position: { x: this.__boundary + 70 } })); - this.addEffect(new lychee.effect.Width({ - type: lychee.effect.Width.TYPE.easeout, + this.addEffect(new _Width({ + type: _Width.TYPE.easeout, duration: 300, width: 144 })); - this.getEntity('@label').addEffect(new lychee.effect.Visible({ + this.getEntity('@label').addEffect(new _Visible({ delay: 300, visible: true })); - this.getEntity('@select').addEffect(new lychee.effect.Visible({ + this.getEntity('@select').addEffect(new _Visible({ delay: 300, visible: true })); @@ -543,14 +559,14 @@ lychee.define('lychee.ui.Menu').requires([ this.removeEffects(); - this.addEffect(new lychee.effect.Alpha({ - type: lychee.effect.Alpha.TYPE.easeout, + this.addEffect(new _Alpha({ + type: _Alpha.TYPE.easeout, duration: 300, alpha: 0.0 })); - this.addEffect(new lychee.effect.Position({ - type: lychee.effect.Position.TYPE.easeout, + this.addEffect(new _Position({ + type: _Position.TYPE.easeout, delay: 300, duration: 300, position: { @@ -558,19 +574,19 @@ lychee.define('lychee.ui.Menu').requires([ } })); - this.addEffect(new lychee.effect.Width({ - type: lychee.effect.Width.TYPE.easeout, + this.addEffect(new _Width({ + type: _Width.TYPE.easeout, delay: 300, duration: 300, width: 64 })); - this.getEntity('@label').addEffect(new lychee.effect.Visible({ + this.getEntity('@label').addEffect(new _Visible({ delay: 300, visible: false })); - this.getEntity('@select').addEffect(new lychee.effect.Visible({ + this.getEntity('@select').addEffect(new _Visible({ delay: 300, visible: false })); @@ -578,7 +594,7 @@ lychee.define('lychee.ui.Menu').requires([ } - this.addEffect(new lychee.effect.Event({ + this.addEffect(new _Event({ delay: 600, event: 'relayout' })); diff --git a/libraries/lychee/source/ui/Notice.fnt b/libraries/lychee/source/ui/Notice.fnt new file mode 100644 index 00000000..f54b39cd --- /dev/null +++ b/libraries/lychee/source/ui/Notice.fnt @@ -0,0 +1 @@ +{"baseline":0,"charset":" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~","kerning":0,"lineheight":21,"map":[6,7,7,15,12,15,14,4,6,6,10,14,5,10,5,8,13,10,12,12,12,12,12,11,13,12,6,6,12,14,12,10,17,13,13,15,15,12,11,16,15,6,11,13,11,18,16,17,12,17,13,11,12,15,13,19,12,12,12,6,8,6,13,12,11,11,12,11,12,12,7,12,12,5,5,11,5,19,12,13,12,12,8,9,7,12,10,17,10,10,11,7,6,7,13],"spacing":0,"texture":"data:image/png;base64,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"} \ No newline at end of file diff --git a/libraries/lychee/source/ui/Notice.js b/libraries/lychee/source/ui/Notice.js new file mode 100644 index 00000000..9c9a2923 --- /dev/null +++ b/libraries/lychee/source/ui/Notice.js @@ -0,0 +1,386 @@ + +lychee.define('lychee.ui.Notice').requires([ + 'lychee.effect.Alpha', + 'lychee.effect.Position', + 'lychee.effect.State', + 'lychee.ui.entity.Button', + 'lychee.ui.entity.Label' +]).includes([ + 'lychee.ui.Layer' +]).exports(function(lychee, global, attachments) { + + const _Alpha = lychee.import('lychee.effect.Alpha'); + const _Button = lychee.import('lychee.ui.entity.Button'); + const _Label = lychee.import('lychee.ui.entity.Label'); + const _Layer = lychee.import('lychee.ui.Layer'); + const _Position = lychee.import('lychee.effect.Position'); + const _State = lychee.import('lychee.effect.State'); + const _FONT = attachments["fnt"]; + + + + /* + * HELPERS + */ + + const _on_relayout = function() { + + let button = this.getEntity('@options-next'); + let label = this.getEntity('@label'); + let x2 = 1/2 * this.width; + + + if (button.visible === true) { + label.position.x = -48 - 8; + } else { + label.position.x = 0; + } + + + button.width = 96; + button.position.x = x2 - button.width / 2 - 16; + + }; + + + + /* + * IMPLEMENTATION + */ + + let Composite = function(data) { + + let settings = Object.assign({}, data); + + + this.font = _FONT; + this.label = 'Changes applied.'; + this.options = [ 'Undo' ]; + this.state = 'default'; + + this.__boundary = 0; + this.__states = { 'default': null, 'active': null }; + + + this.setState(settings.state); + + delete settings.state; + + + settings.width = 512; + settings.height = 64; + settings.alpha = 0.0; + settings.relayout = false; + + + _Layer.call(this, settings); + + + + /* + * INITIALIZATION + */ + + this.unbind('touch'); + this.bind('touch', function(id, position, delta) { + + let button = this.getEntity('@options-next'); + if (button.visible === true && button.isAtPosition(position) === true) { + + button.trigger('touch', [ id, { + x: position.x - button.position.x, + y: position.y - button.position.y + }, delta ]); + + return button; + + } + + }, this); + + this.bind('relayout', _on_relayout, this); + this.bind('reshape', function(orientation, rotation, width, height) { + + if (typeof width === 'number' && typeof height === 'number') { + + this.__boundary = 1/2 * height; + this.position.y = 1/2 * height + this.height / 2; + + _on_relayout.call(this); + + } + + }, this); + + + this.setEntity('@label', new _Label({ + font: this.font, + value: this.label + })); + + this.setEntity('@options-next', new _Button({ + label: this.options[0], + value: this.options[0].toLowerCase() + })); + + + this.getEntity('@options-next').bind('change', function(value) { + console.log('WHAT'); + this.trigger('change', [ value ]); + }, this); + + + this.setFont(settings.font); + this.setLabel(settings.label); + this.setOptions(settings.options); + + delete settings.font; + delete settings.label; + delete settings.options; + + settings = null; + + }; + + + Composite.prototype = { + + /* + * ENTITY API + */ + + deserialize: function(blob) { + + let font = lychee.deserialize(blob.font); + if (font !== null) { + this.setFont(font); + } + + }, + + serialize: function() { + + let data = _Layer.prototype.serialize.call(this); + data['constructor'] = 'lychee.ui.Notice'; + + let settings = data['arguments'][0]; + let blob = (data['blob'] || {}); + + + if (this.label !== 'Changes applied.') settings.label = this.label; + if (this.options.join(',') !== 'Undo') settings.options = this.options.slice(0, this.options.length); + if (this.state !== 'default') settings.state = this.state; + + + if (this.font !== null) blob.font = lychee.serialize(this.font); + + + data['blob'] = Object.keys(blob).length > 0 ? blob : null; + + + return data; + + }, + + render: function(renderer, offsetX, offsetY) { + + if (this.visible === false) return; + + + let alpha = this.alpha; + let position = this.position; + + + let x = position.x + offsetX; + let y = position.y + offsetY; + let x1 = x - this.width / 2; + let y1 = y - this.height / 2; + let x2 = x + this.width / 2; + let y2 = y + this.height / 2; + + + renderer.drawBox( + x1, + y1, + x2, + y2, + '#363f3e', + true + ); + + + if (alpha !== 1) { + renderer.setAlpha(alpha); + } + + + if (alpha !== 0) { + _Layer.prototype.render.call(this, renderer, offsetX, offsetY); + } + + + if (alpha !== 1) { + renderer.setAlpha(1.0); + } + + }, + + + + /* + * CUSTOM API + */ + + setFont: function(font) { + + font = font instanceof Font ? font : null; + + + if (font !== null) { + + this.getEntity('@label').setFont(font); + this.font = font; + + + return true; + + } + + + return false; + + }, + + setLabel: function(label) { + + label = typeof label === 'string' ? label : null; + + + if (label !== null) { + + this.getEntity('@label').setValue(label); + this.label = label; + + + return true; + + } + + + return false; + + }, + + setOptions: function(options) { + + options = options instanceof Array ? options : null; + + + if (options !== null) { + + this.options = options.map(function(option) { + return '' + option; + }); + + + let next = this.getEntity('@options-next'); + + if (this.options.length === 0) { + + next.visible = false; + this.trigger('relayout'); + + } else if (this.options.length === 1) { + + next.visible = true; + next.setLabel(this.options[0]); + next.setValue(this.options[0].toLowerCase()); + this.trigger('relayout'); + + } + + + return true; + + } + + + return false; + + }, + + setState: function(id) { + + id = typeof id === 'string' ? id : null; + + + if (id !== null && this.__states[id] !== undefined) { + + if (id === 'active') { + + this.removeEffects(); + + this.setPosition({ + y: this.__boundary + this.height / 2 + }); + + this.addEffect(new _Alpha({ + type: _Alpha.TYPE.easeout, + delay: 300, + duration: 300, + alpha: 1.0 + })); + + this.addEffect(new _Position({ + type: _Position.TYPE.easeout, + duration: 300, + position: { + y: this.__boundary - this.height / 2 + } + })); + + this.addEffect(new _State({ + delay: 3000, + state: 'default' + })); + + } else { + + this.removeEffects(); + + this.addEffect(new _Alpha({ + type: _Alpha.TYPE.easeout, + duration: 300, + alpha: 0.0 + })); + + this.addEffect(new _Position({ + type: _Position.TYPE.easeout, + delay: 300, + duration: 300, + position: { + y: this.__boundary + this.height / 2 + } + })); + + } + + + this.state = id; + + return true; + + } + + + return false; + + } + + }; + + + return Composite; + +}); + diff --git a/libraries/lychee/source/ui/State.js b/libraries/lychee/source/ui/State.js index f65fa0a3..a1b3a3fb 100644 --- a/libraries/lychee/source/ui/State.js +++ b/libraries/lychee/source/ui/State.js @@ -6,6 +6,7 @@ lychee.define('lychee.ui.State').requires([ 'lychee.ui.Element', 'lychee.ui.Layer', 'lychee.ui.Menu', + 'lychee.ui.Notice', 'lychee.ui.element.Input', 'lychee.ui.element.Jukebox', 'lychee.ui.element.Network', @@ -20,13 +21,13 @@ lychee.define('lychee.ui.State').requires([ const _Blueprint = lychee.import('lychee.ui.Blueprint'); const _Layer = lychee.import('lychee.ui.Layer'); - const _Menu = lychee.import('lychee.ui.Menu'); const _Position = lychee.import('lychee.effect.Position'); const _State = lychee.import('lychee.app.State'); const _Visible = lychee.import('lychee.effect.Visible'); const _BLOB = attachments["json"].buffer; const _INSTANCES = []; let _MENU = null; + let _NOTICE = null; @@ -68,7 +69,7 @@ lychee.define('lychee.ui.State').requires([ let fade_offset = -3/2 * this.getLayer('ui').height; let entity = this.queryLayer('ui', id); let layers = this.getLayer('ui').entities.filter(function(layer) { - return lychee.interfaceof(_Menu, layer) === false; + return layer !== _MENU && layer !== _NOTICE; }); @@ -149,8 +150,12 @@ lychee.define('lychee.ui.State').requires([ let entity = null; let width = viewport.width; let height = viewport.height; + + let menu = this.queryLayer('ui', 'menu'); - if (menu !== null) { + let notice = this.queryLayer('ui', 'notice'); + + if (menu !== null && notice !== null) { entity = this.getLayer('ui'); entity.width = width; @@ -160,7 +165,7 @@ lychee.define('lychee.ui.State').requires([ for (let e = 0, el = entity.entities.length; e < el; e++) { let blueprint = entity.entities[e]; - if (blueprint !== menu) { + if (blueprint !== menu && blueprint !== notice) { blueprint.width = width - menu.width; blueprint.height = height; @@ -171,6 +176,9 @@ lychee.define('lychee.ui.State').requires([ } + + notice.position.x = menu.width / 2; + } } @@ -221,8 +229,11 @@ lychee.define('lychee.ui.State').requires([ _State.prototype.deserialize.call(this, blob); - let menu = this.queryLayer('ui', 'menu'); - let main = this.main; + let main = this.main; + let menu = this.queryLayer('ui', 'menu'); + let notice = this.queryLayer('ui', 'notice'); + + if (main !== null && menu !== null) { _MENU = menu; @@ -257,6 +268,7 @@ lychee.define('lychee.ui.State').requires([ viewport.relay('reshape', this.queryLayer('bg', 'background')); viewport.relay('reshape', this.queryLayer('bg', 'emblem')); viewport.relay('reshape', this.queryLayer('ui', 'menu')); + viewport.relay('reshape', this.queryLayer('ui', 'notice')); viewport.relay('reshape', this.queryLayer('ui', 'welcome')); viewport.relay('reshape', this.queryLayer('ui', 'settings')); @@ -265,16 +277,28 @@ lychee.define('lychee.ui.State').requires([ } + + if (main !== null && notice !== null) { + + _NOTICE = notice; + + } + } else { _State.prototype.deserialize.call(this, blob); - let menu = this.queryLayer('ui', 'menu'); + let main = this.main; + let menu = this.queryLayer('ui', 'menu'); + let notice = this.queryLayer('ui', 'notice'); + + if (menu !== null && menu !== _MENU) { this.getLayer('ui').removeEntity(menu); this.getLayer('ui').setEntity('menu', _MENU); + menu = _MENU; } else if (menu === null) { @@ -284,7 +308,20 @@ lychee.define('lychee.ui.State').requires([ } - let main = this.main; + if (notice !== null && notice !== _NOTICE) { + + this.getLayer('ui').removeEntity(notice); + this.getLayer('ui').setEntity('notice', _NOTICE); + notice = _NOTICE; + + } else if (notice === null) { + + this.getLayer('ui').setEntity('notice', _NOTICE); + notice = _NOTICE; + + } + + if (main !== null && menu !== null) { let options = []; diff --git a/libraries/lychee/source/ui/State.json b/libraries/lychee/source/ui/State.json index e96fbeda..707a2b8f 100644 --- a/libraries/lychee/source/ui/State.json +++ b/libraries/lychee/source/ui/State.json @@ -58,16 +58,24 @@ "constructor": "lychee.ui.Menu", "arguments": [{ "options": [ - "Welcome", + "Project", + "Asset", + "Entity", "Settings" ], - "value": "Welcome" + "value": "Project" + }] + }, { + "constructor": "lychee.ui.Notice", + "arguments": [{ + "label": "" }] }], "map": { "welcome": 0, "settings": 1, - "menu": 2 + "menu": 2, + "notice": 3 } } } diff --git a/libraries/lychee/source/ui/element/Search.js b/libraries/lychee/source/ui/element/Search.js index 386bde83..e53a255e 100644 --- a/libraries/lychee/source/ui/element/Search.js +++ b/libraries/lychee/source/ui/element/Search.js @@ -34,11 +34,13 @@ lychee.define('lychee.ui.element.Search').requires([ settings.label = 'Search'; - settings.options = [ 'Open', 'Clear' ]; + settings.options = []; _Element.call(this, settings); + settings = null; + /* @@ -56,14 +58,19 @@ lychee.define('lychee.ui.element.Search').requires([ return other.indexOf(value) !== -1; }); - if (filtered.length === 0) { - filtered.push('- No matches -'); - } + this.__select.setOptions([ '- No matches -' ]); + this.trigger('relayout'); + + this.trigger('change', [ value ]); - this.__select.setOptions(filtered); - this.trigger('relayout'); + } else { + + this.__select.setOptions(filtered); + this.trigger('relayout'); + + } }, this); @@ -73,23 +80,17 @@ lychee.define('lychee.ui.element.Search').requires([ }); this.__select.bind('change', function(value) { - this.value = value; - this.trigger('change', [ value ]); - }, this); - this.addEntity(this.__search); - this.addEntity(this.__select); - - - this.bind('change', function(action) { - - if (action === 'clear') { - this.__search.setValue(''); - this.__search.trigger('change', [ '' ]); + if (value !== '- No matches -') { + this.value = value; + this.trigger('change', [ value ]); } }, this); + this.addEntity(this.__search); + this.addEntity(this.__select); + }; diff --git a/libraries/lychee/source/ui/entity/Input.js b/libraries/lychee/source/ui/entity/Input.js index d562b544..6ccfda34 100644 --- a/libraries/lychee/source/ui/entity/Input.js +++ b/libraries/lychee/source/ui/entity/Input.js @@ -128,6 +128,8 @@ lychee.define('lychee.ui.entity.Input').includes([ _Entity.call(this, settings); + settings = null; + /* @@ -264,9 +266,6 @@ lychee.define('lychee.ui.entity.Input').includes([ }, this); - - settings = null; - }; diff --git a/libraries/lychee/source/ui/entity/Joystick.js b/libraries/lychee/source/ui/entity/Joystick.js index bc9711f1..c56d4b45 100644 --- a/libraries/lychee/source/ui/entity/Joystick.js +++ b/libraries/lychee/source/ui/entity/Joystick.js @@ -70,6 +70,8 @@ lychee.define('lychee.ui.entity.Joystick').includes([ _Entity.call(this, settings); + settings = null; + /* @@ -151,9 +153,6 @@ lychee.define('lychee.ui.entity.Joystick').includes([ }, this); - - settings = null; - }; diff --git a/libraries/lychee/source/ui/entity/List.fnt b/libraries/lychee/source/ui/entity/List.fnt new file mode 100644 index 00000000..71a62a46 --- /dev/null +++ b/libraries/lychee/source/ui/entity/List.fnt @@ -0,0 +1 @@ +{"baseline":0,"charset":" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~","kerning":0,"lineheight":16,"map":[5,5,6,12,9,12,11,4,5,5,8,12,4,8,4,7,10,8,10,9,10,9,10,9,10,10,5,5,10,11,10,8,13,10,11,12,12,10,9,13,12,5,9,10,9,14,13,14,10,14,11,9,10,12,10,15,10,10,10,5,7,5,10,10,9,9,10,9,10,9,6,10,10,4,4,9,4,15,10,10,10,10,6,8,6,10,8,13,8,8,9,6,5,6,10],"spacing":3,"texture":"data:image/png;base64,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"} \ No newline at end of file diff --git a/libraries/lychee/source/ui/entity/List.js b/libraries/lychee/source/ui/entity/List.js new file mode 100644 index 00000000..adf83232 --- /dev/null +++ b/libraries/lychee/source/ui/entity/List.js @@ -0,0 +1,422 @@ + +lychee.define('lychee.ui.entity.List').includes([ + 'lychee.ui.Entity' +]).exports(function(lychee, global, attachments) { + + const _Entity = lychee.import('lychee.ui.Entity'); + const _FONT = attachments["fnt"]; + + + + /* + * IMPLEMENTATION + */ + + let Composite = function(data) { + + let settings = Object.assign({}, data); + + + this.font = _FONT; + this.options = []; + this.value = {}; + + this.__cursor = { + active: false, + alpha: 0.0, + duration: 600, + previous: null, + start: null, + pingpong: false + }; + + + this.setFont(settings.font); + this.setOptions(settings.options); + this.setValue(settings.value); + + delete settings.font; + delete settings.options; + delete settings.value; + + + settings.width = typeof settings.width === 'number' ? settings.width : 128; + settings.height = typeof settings.height === 'number' ? settings.height : 32; + settings.shape = _Entity.SHAPE.rectangle; + + + _Entity.call(this, settings); + + settings = null; + + + if (this.options.length > 1) { + this.height = this.options.length * this.height; + } + + + + /* + * INITIALIZATION + */ + + this.bind('touch', function(id, position, delta) { + + if (this.options.length === 0) return; + + + let lh = this.height / this.options.length; + let pos = (position.y + this.height / 2); + + let q = (pos / lh) | 0; + if (q >= 0) { + + let tmp = {}; + let option = this.options[q] || null; + if (option !== null) { + + tmp[option] = !(this.value[option]); + + let result = this.setValue(tmp); + if (result === true) { + this.trigger('change', [ this.value ]); + } + + } + + } + + }, this); + + this.bind('key', function(key, name, delta) { + + if (this.options.length === 0) return; + + + if (this.state === 'active') { + + let option = this.__cursor.previous; + let q = this.options.indexOf(option); + + if (key === 'w' || key === 'arrow-up') option = this.options[--q] || this.options[0]; + if (key === 's' || key === 'arrow-down') option = this.options[++q] || this.options[this.options.length - 1]; + + + if (key === 'space' || key === 'enter') { + + let tmp = {}; + tmp[option] = !(this.value[option]); + + + let result = this.setValue(tmp); + if (result === true) { + this.trigger('change', [ this.value ]); + } + + } else { + + this.__cursor.previous = option; + + } + + } + + }, this); + + this.bind('focus', function() { + this.setState('active'); + }, this); + + this.bind('blur', function() { + this.setState('default'); + }, this); + + }; + + + Composite.prototype = { + + /* + * ENTITY API + */ + + deserialize: function(blob) { + + let font = lychee.deserialize(blob.font); + if (font !== null) { + this.setFont(font); + } + + }, + + serialize: function() { + + let data = _Entity.prototype.serialize.call(this); + data['constructor'] = 'lychee.ui.entity.List'; + + let settings = data['arguments'][0]; + let blob = (data['blob'] || {}); + + + if (this.options.length !== 0) settings.options = [].slice.call(this.options, 0); + if (Object.keys(this.value).length > 0) settings.value = this.value; + + + if (this.font !== null) blob.font = lychee.serialize(this.font); + + + data['blob'] = Object.keys(blob).length > 0 ? blob : null; + + + return data; + + }, + + update: function(clock, delta) { + + let cursor = this.__cursor; + if (cursor.active === true) { + + if (cursor.start === null) { + cursor.start = clock; + } + + + let ct = (clock - cursor.start) / cursor.duration; + if (ct <= 1) { + cursor.alpha = cursor.pingpong === true ? (1 - ct) : ct; + } else { + cursor.start = clock; + cursor.pingpong = !cursor.pingpong; + } + + } + + + _Entity.prototype.update.call(this, clock, delta); + + }, + + render: function(renderer, offsetX, offsetY) { + + if (this.visible === false) return; + + + let alpha = this.alpha; + let position = this.position; + let cursor = this.__cursor; + let font = this.font; + let value = this.value; + let x = position.x + offsetX; + let y = position.y + offsetY; + let hwidth = this.width / 2; + let hheight = this.height / 2; + + + if (alpha !== 1) { + renderer.setAlpha(alpha); + } + + + let x1 = x - hwidth; + let lh = this.height / this.options.length; + + for (let o = 0, ol = this.options.length; o < ol; o++) { + + let option = this.options[o]; + let y1 = y - hheight + o * lh; + let val = value[option]; + + if (val === true) { + + renderer.drawCircle( + x1 + 16, + y1 + 16, + 11, + '#32afe5', + false, + 2 + ); + + } else { + + renderer.drawCircle( + x1 + 16, + y1 + 16, + 11, + '#545454', + false, + 2 + ); + + } + + + if (cursor.active === true && option === cursor.previous) { + + renderer.drawCircle( + x1 + 16, + y1 + 16, + 11, + val === true ? '#32afe5' : '#545454', + false, + 2 + ); + + renderer.setAlpha(cursor.alpha); + + renderer.drawCircle( + x1 + 16, + y1 + 16, + 12, + '#32afe5', + true + ); + + renderer.setAlpha(alpha); + + + } + + + renderer.drawText( + x1 + 36, + y1 + (font.lineheight / 2), + option, + font, + false + ); + + } + + + if (alpha !== 1) { + renderer.setAlpha(1.0); + } + + }, + + + + /* + * CUSTOM API + */ + + setFont: function(font) { + + font = font instanceof Font ? font : null; + + + if (font !== null) { + + this.font = font; + + return true; + + } + + + return false; + + }, + + setOptions: function(options) { + + options = options instanceof Array ? options.unique() : null; + + + if (options !== null) { + + let height = this.height || null; + if (height !== null) { + + if (this.options.length > 0) { + this.height = (height / this.options.length) * options.length; + } else { + this.height = height * options.length; + } + + } + + this.options = options.map(function(option) { + return '' + option; + }); + + this.options.forEach(function(option) { + this.value[option] = this.value[option] === true; + }.bind(this)); + + + return true; + + } + + + return false; + + }, + + setState: function(id) { + + let result = _Entity.prototype.setState.call(this, id); + if (result === true) { + + let cursor = this.__cursor; + + + if (id === 'active') { + + cursor.start = null; + cursor.active = true; + + } else { + + cursor.active = false; + + } + + + return true; + + } + + + return false; + + }, + + setValue: function(value) { + + value = value instanceof Object ? value : null; + + + if (value !== null) { + + let cursor = this.__cursor; + let prev = Object.keys(value)[0] || null; + + + this.options.forEach(function(option) { + value[option] = value[option] !== undefined ? value[option] === true : this.value[option]; + }.bind(this)); + + cursor.previous = prev; + this.value = value; + + + return true; + + } + + + return false; + + } + + }; + + + return Composite; + +}); + diff --git a/libraries/lychee/source/ui/entity/Select.js b/libraries/lychee/source/ui/entity/Select.js index 2af42727..610ba0a1 100644 --- a/libraries/lychee/source/ui/entity/Select.js +++ b/libraries/lychee/source/ui/entity/Select.js @@ -48,10 +48,12 @@ lychee.define('lychee.ui.entity.Select').includes([ settings.width = typeof settings.width === 'number' ? settings.width : 128; settings.height = typeof settings.height === 'number' ? settings.height : 32; - settings.shape = lychee.ui.Entity.SHAPE.rectangle; + settings.shape = _Entity.SHAPE.rectangle; - lychee.ui.Entity.call(this, settings); + _Entity.call(this, settings); + + settings = null; if (this.options.length > 1) { @@ -79,10 +81,10 @@ lychee.define('lychee.ui.entity.Select').includes([ let q = (pos / lh) | 0; if (q >= 0) { - let val = this.options[q] || null; - let result = this.setValue(val); + let option = this.options[q] || null; + let result = this.setValue(option); if (result === true) { - this.trigger('change', [ val ]); + this.trigger('change', [ option ]); } } @@ -96,20 +98,20 @@ lychee.define('lychee.ui.entity.Select').includes([ if (this.state === 'active') { - let val = null; - let q = this.options.indexOf(this.value); + let option = null; + let q = this.options.indexOf(this.value); - if (key === 'w' || key === 'arrow-up') val = this.options[q - 1] || null; - if (key === 's' || key === 'arrow-down') val = this.options[q + 1] || null; + if (key === 'w' || key === 'arrow-up') option = this.options[--q] || this.options[0]; + if (key === 's' || key === 'arrow-down') option = this.options[++q] || this.options[this.options.length - 1]; - if (key === 'space') val = this.options[0]; - if (key === 'enter') val = this.options[this.options.length - 1]; + if (key === 'space') option = this.options[0]; + if (key === 'enter') option = this.options[this.options.length - 1]; - let result = this.setValue(val); + let result = this.setValue(option); if (result === true) { - this.trigger('change', [ val ]); + this.trigger('change', [ option ]); } } @@ -147,7 +149,7 @@ lychee.define('lychee.ui.entity.Select').includes([ serialize: function() { - let data = lychee.ui.Entity.prototype.serialize.call(this); + let data = _Entity.prototype.serialize.call(this); data['constructor'] = 'lychee.ui.entity.Select'; let settings = data['arguments'][0]; @@ -208,7 +210,7 @@ lychee.define('lychee.ui.entity.Select').includes([ } - lychee.ui.Entity.prototype.update.call(this, clock, delta); + _Entity.prototype.update.call(this, clock, delta); }, @@ -416,7 +418,12 @@ lychee.define('lychee.ui.entity.Select').includes([ if (this.options.indexOf(this.value) === -1) { - this.setValue(this.options[0] || null); + + let result = this.setValue(this.options[0] || null); + if (result === true) { + this.trigger('change', [ this.value ]); + } + } @@ -431,7 +438,7 @@ lychee.define('lychee.ui.entity.Select').includes([ setState: function(id) { - let result = lychee.ui.Entity.prototype.setState.call(this, id); + let result = _Entity.prototype.setState.call(this, id); if (result === true) { let cursor = this.__cursor; diff --git a/libraries/lychee/source/ui/entity/Switch.js b/libraries/lychee/source/ui/entity/Switch.js index 7709f8bd..8ff28ae4 100644 --- a/libraries/lychee/source/ui/entity/Switch.js +++ b/libraries/lychee/source/ui/entity/Switch.js @@ -52,6 +52,8 @@ lychee.define('lychee.ui.entity.Switch').includes([ _Entity.call(this, settings); + settings = null; + /* @@ -111,9 +113,6 @@ lychee.define('lychee.ui.entity.Switch').includes([ this.setValue(this.options[0] || null); } - - settings = null; - }; diff --git a/libraries/lychee/source/ui/entity/Textarea.js b/libraries/lychee/source/ui/entity/Textarea.js index c49bcf76..b3b25ac6 100644 --- a/libraries/lychee/source/ui/entity/Textarea.js +++ b/libraries/lychee/source/ui/entity/Textarea.js @@ -133,6 +133,8 @@ lychee.define('lychee.ui.entity.Textarea').includes([ _Entity.call(this, settings); + settings = null; + /* @@ -209,9 +211,6 @@ lychee.define('lychee.ui.entity.Textarea').includes([ }, this); - - settings = null; - }; diff --git a/libraries/lychee/source/ui/entity/Texture.js b/libraries/lychee/source/ui/entity/Texture.js index f956274d..0c3c60f6 100644 --- a/libraries/lychee/source/ui/entity/Texture.js +++ b/libraries/lychee/source/ui/entity/Texture.js @@ -1,8 +1,9 @@ lychee.define('lychee.ui.entity.Texture').requires([ - 'lychee.ui.Entity', 'lychee.ui.entity.Upload', 'lychee.ui.Sprite' +]).includes([ + 'lychee.ui.Entity', ]).exports(function(lychee, global, attachments) { const _Entity = lychee.import('lychee.ui.Entity'); @@ -15,15 +16,14 @@ lychee.define('lychee.ui.entity.Texture').requires([ * IMPLEMENTATION */ - let Composite = function() { + let Composite = function(data) { let settings = Object.assign({}, data); - this.font = null; - this.label = 'UPLOAD'; - this.texture = null; - this.value = null; + this.font = null; + this.label = 'UPLOAD'; + this.value = null; this.__sprite = new _Sprite({}); this.__upload = new _Upload({ @@ -33,12 +33,10 @@ lychee.define('lychee.ui.entity.Texture').requires([ this.setFont(settings.font); this.setLabel(settings.label); - this.setTexture(settings.texture); this.setValue(settings.value); delete settings.font; delete settings.label; - delete settings.texture; delete settings.value; @@ -52,6 +50,24 @@ lychee.define('lychee.ui.entity.Texture').requires([ * INITIALIZATION */ + this.__upload.bind('change', function(assets) { + + if (assets.length === 1) { + + let texture = assets[0]; + if (texture.width <= this.width && texture.height <= this.height) { + + let result = this.setValue(texture); + if (result === true) { + this.trigger('change', [ texture ]); + } + + } + + } + + }, this); + this.bind('touch', function(id, position, delta) { return this.__upload.trigger('touch', [ id, position, delta ]); }, this); @@ -62,16 +78,18 @@ lychee.define('lychee.ui.entity.Texture').requires([ this.bind('relayout', function() { - let sprite = this.__sprite; - let upload = this.__upload; - let dim = (Math.min(this.width, this.height) / 32 | 0) * 32; + let sprite = this.__sprite; + let upload = this.__upload; + let value = this.value; + if (value !== null) { + sprite.width = value.width; + sprite.height = value.height; + } upload.position.x = 0; upload.position.y = 1/2 * this.height - 1/2 * upload.height; - sprite.width = dim; - sprite.height = dim; sprite.position.x = 0; sprite.position.y = -1/2 * this.height + 1/2 * sprite.height; sprite.trigger('relayout'); @@ -94,9 +112,9 @@ lychee.define('lychee.ui.entity.Texture').requires([ this.setFont(font); } - let texture = lychee.deserialize(blob.texture); - if (texture !== null) { - this.setTexture(texture); + let value = lychee.deserialize(blob.value); + if (value !== null) { + this.setValue(value); } }, @@ -111,11 +129,10 @@ lychee.define('lychee.ui.entity.Texture').requires([ if (this.label !== null) settings.label = this.label; - if (this.value !== null) settings.value = this.value; - if (this.font !== null) blob.font = lychee.serialize(this.font); - if (this.texture !== null) blob.texture = lychee.serialize(this.texture); + if (this.font !== null) blob.font = lychee.serialize(this.font); + if (this.value !== null) blob.value = lychee.serialize(this.value); data['blob'] = Object.keys(blob).length > 0 ? blob : null; @@ -196,33 +213,14 @@ lychee.define('lychee.ui.entity.Texture').requires([ }, - setTexture: function(texture) { - - texture = texture instanceof Texture ? texture : null; - - - if (texture !== null) { - - this.__sprite.setTexture(texture); - this.texture = texture; - - return true; - - } - - - return false; - - }, - setValue: function(value) { - value = typeof value === 'string' ? value : null; + value = value instanceof Texture ? value : null; if (value !== null) { - this.__upload.setValue(value); + this.__sprite.setTexture(value); this.value = value; return true; diff --git a/projects/cultivator/api/index.html b/projects/cultivator/api/index.html index a7484110..8095e063 100644 --- a/projects/cultivator/api/index.html +++ b/projects/cultivator/api/index.html @@ -1,15 +1,16 @@ - lycheeJS API Tool + lychee.js API Tool - - + + + @@ -22,20 +23,23 @@ .ico-edit:before { content: "\e05f"; } .ico-refresh:before { content: "\e098"; } .ico-quit:before { content: "\e07a"; } - #tool > article:nth-of-type(1) p { + main { + max-width: initial; + } + main > article:nth-of-type(1) p { margin: 0px; padding: 16px; border-bottom: 2px solid #404844; } - #tool > article:nth-of-type(1) ul.select { - margin: 0px; - } - #tool > article:nth-of-type(2) { + main > article:nth-of-type(2) { position: relative; } + main > article:nth-of-type(2) h3 { + z-index: 1000; + } #tool-documentation { position: absolute; - top: 64px; + top: 0px; right: 0px; bottom: 0px; left: 0px; @@ -43,11 +47,16 @@ padding: 0px; overflow-x: hidden; overflow-y: auto; + z-index: 100; } #tool-documentation article { + display: block; + position: relative; + width: auto; margin: 128px 0px; padding: 0px; font-size: 16px; + text-align: left; background: none; } #tool-documentation article pre { @@ -64,6 +73,7 @@ background: #1f2726; font-family: monaco, Consolas, 'Lucida Console', monospace; font-size: 14px; + text-align: left; border-radius: 3px; vertical-align: middle; -webkit-font-smoothing: antialiased; @@ -101,51 +111,30 @@ -

- -
  • Tool
  • - -
    -
    - -
    - -
    -

    Definitions

    -
    -

    - - -

    -
    -
    -
    - -
    -

    - Documentation - - - - - - -

    -
    -
    - -
    - +
    +

    Definitions

    +
    +

    + +

    +
    +
    +
    + +
    +

    + + + + + + +

    +
    +
    -
    - lycheeJS is (c) 2012-2016 by Artificial-Engineering and released under MIT license. -
    - - - - - - - - - - -
  • Tool
  • -
  • Help
  • - -
    - -
    - -
    - -
    -

    1Modify

    -
    - - - - - - - - - - - - - - - - - -
    Font - -

    - -

    -
      -
    • normal
    • -
    • bold
    • -
    • italic
    • -
    -
    Color - - -
    Spacing
    Outline
    -
    -

    - -

    -
    - -
    -

    2Preview

    -
    -
    - -
    -
    -
    - -
    - -
    - -
    -

    1Tool Usage

    -
    - Install a Font on your System in order to use it with this Tool. - Modify the settings to tweak the Font, the rest is done automatically. -
    -
    - -
    -

    2Engine Usage

    -

    - The exported files include the Font (.fnt). -

    -

    - If you want to use the Font inside your Project, you have to rename - the files accordingly after copying them into the source/entity folder. -

    -

    - If you have an Entity at source/entity/Foo.js, you have to - rename the downloaded Font to source/entity/Foo.fnt. -

    -

    - After that you can access the Font via the attachments parameter: -

    -
    -lychee.define('app.entity.Foo').exports(function(lychee, app, global, attachments) {
    -
    -  var font = attachments["fnt"];
    -  if (font instanceof Font) {
    -    console.log('Yay, font available!', font);
    -  }
    -
    -});
    -			
    -
    - -
    - -
    - -
    - lycheeJS is (c) 2012-2016 by Artificial-Engineering and released under MIT license. -
    - - - - diff --git a/projects/cultivator/font/lychee.pkg b/projects/cultivator/font/lychee.pkg deleted file mode 100644 index 7ebb61a8..00000000 --- a/projects/cultivator/font/lychee.pkg +++ /dev/null @@ -1,23 +0,0 @@ -{ - "api": { - "files": {} - }, - "build": { - "environments": {}, - "files": {} - }, - "source": { - "environments": {}, - "tags": {}, - "files": { - "Main": [ - "js" - ], - "data": { - "FNT": [ - "js" - ] - } - } - } -} \ No newline at end of file diff --git a/projects/cultivator/font/source/Main.js b/projects/cultivator/font/source/Main.js deleted file mode 100644 index e4984f4a..00000000 --- a/projects/cultivator/font/source/Main.js +++ /dev/null @@ -1,113 +0,0 @@ - -lychee.define('tool.Main').requires([ - 'lychee.codec.JSON', - 'tool.data.FNT' -]).includes([ - 'lychee.app.Main' -]).tags({ - platform: 'html' -}).exports(function(lychee, global, attachments) { - - var _FNT = lychee.import('tool.data.FNT'); - var _JSON = lychee.import('lychee.codec.JSON'); - - - - /* - * HELPERS - */ - - var _update_preview = function(blob, settings) { - - var data = _JSON.decode(blob); - if (data instanceof Object) { - - if (data.texture !== null) { - - var img = document.querySelector('img#preview-texture'); - if (img !== null) { - img.src = data.texture; - } - - } - - var button = document.querySelector('button#preview-download'); - if (button !== null) { - - var filename = settings.family + '_' + settings.size + 'x' + settings.outline + '.fnt'; - var buffer = new Buffer(blob, 'utf8'); - - button.onclick = function() { - ui.download(filename, buffer); - }; - - } - - } - - }; - - - - /* - * IMPLEMENTATION - */ - - var Class = function(data) { - - var settings = Object.assign({ - - client: null, - input: null, - jukebox: null, - renderer: null, - server: null, - - viewport: { - fullscreen: false - } - - }, data); - - - lychee.app.Main.call(this, settings); - - - - /* - * INITIALIZATION - */ - - this.bind('init', function() { - - var onsubmit = document.querySelector('form').onsubmit; - if (onsubmit instanceof Function) { - onsubmit(); - } - - }, this, true); - - this.bind('submit', function(id, settings) { - - if (id === 'settings') { - - var font = _FNT.encode(settings); - if (font !== null) { - _update_preview(font, settings); - } - - } - - }, this); - - }; - - - Class.prototype = { - - }; - - - return Class; - -}); diff --git a/projects/cultivator/font/source/data/FNT.js b/projects/cultivator/font/source/data/FNT.js deleted file mode 100644 index 49a26fc2..00000000 --- a/projects/cultivator/font/source/data/FNT.js +++ /dev/null @@ -1,598 +0,0 @@ - -lychee.define('tool.data.FNT').requires([ - 'lychee.codec.JSON' -]).tags({ - platform: 'html' -}).exports(function(lychee, tool, global, attachments) { - - var _JSON = lychee.import('lychee.codec.JSON'); - - - - /* - * HELPERS - */ - - var _defaults = {}; - - (function(defaults) { - - defaults.family = 'Ubuntu Mono'; - defaults.style = 'normal'; - defaults.size = 16; - defaults.spacing = 0; - defaults.color = '#ffffff'; - defaults.outline = 0; - defaults.outlinecolor = '#000000'; - defaults.charset = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"; - - })(_defaults); - - - var _Buffer = function(data, mode) { - - data = typeof data === 'string' ? _JSON.decode(new Buffer(data, 'utf8')) : null; - mode = lychee.enumof(_Buffer.MODE, mode) ? mode : 0; - - - var settings = Object.assign({}, data); - - - var texture = settings.texture; - if (typeof texture === 'string') { - settings.texture = new Texture(texture); - settings.texture.deserialize({ buffer: texture }); - } - - - this.__data = { - baseline: 0, - charset: _defaults.charset, - kerning: 0, - lineheight: 0, - map: [], - spacing: 0, - texture: null - }; - this.__mode = mode; - - - this.setBaseline(settings.baseline); - this.setCharset(settings.charset); - this.setKerning(settings.kerning); - this.setLineHeight(settings.lineheight); - this.setMap(settings.map); - this.setSpacing(settings.spacing); - this.setTexture(settings.texture); - - - settings = null; - - }; - - - _Buffer.MODE = { - read: 0, - write: 1 - }; - - _Buffer.prototype = { - - getBlob: function() { - return this.__data; - }, - - toString: function() { - - var tmp = Object.assign({}, this.__data); - if (tmp.texture !== null) { - tmp.texture = tmp.texture.url || null; - } - - - return _JSON.encode(tmp); - - }, - - setBaseline: function(baseline) { - - baseline = typeof baseline === 'number' ? (baseline | 0) : null; - - - if (baseline !== null) { - - this.__data.baseline = baseline; - - return true; - - } - - - return false; - - }, - - setCharset: function(charset) { - - charset = typeof charset === 'string' ? charset : null; - - - if (charset !== null) { - - this.__data.charset = charset; - - return true; - - } - - - return false; - - }, - - setKerning: function(kerning) { - - kerning = typeof kerning === 'number' ? (kerning | 0) : null; - - - if (kerning !== null) { - - this.__data.kerning = kerning; - - return true; - - } - - - return false; - - }, - - setLineHeight: function(lineheight) { - - lineheight = typeof lineheight === 'number' ? (lineheight | 0) : null; - - - if (lineheight !== null) { - - this.__data.lineheight = lineheight; - - return true; - - } - - - return false; - - }, - - setMap: function(map) { - - map = map instanceof Array ? map : null; - - - if (map !== null) { - - var filtered = []; - - for (var m = 0, ml = map.length; m < ml; m++) { - - var value = map[m]; - if (typeof value === 'number') { - filtered[m] = value; - } else { - filtered[m] = parseInt(value, 10) || 0; - } - - } - - this.__data.map = filtered; - - - return true; - - } - - - return false; - - }, - - setSpacing: function(spacing) { - - spacing = typeof spacing === 'number' ? (spacing | 0) : null; - - - if (spacing !== null) { - - this.__data.spacing = spacing; - - return true; - - } - - - return false; - - }, - - setTexture: function(texture, settings) { - - texture = texture instanceof Texture ? texture : null; - - - if (texture !== null) { - - this.__data.texture = texture; - - return true; - - } - - - return false; - - } - - }; - - - - /* - * ENCODER and DECODER - */ - - var _encode_buffer = function(buffer, data) { - - var settings = Object.assign({}, _defaults, data); - var measurements = { - width: 0, - height: 0, - map: [] - }; - - - - /* - * 1. Measure approximate canvas dimensions - */ - - (function() { - - var canvas = document.createElement('canvas'); - var context = canvas.getContext('2d'); - - measurements.width = settings.spacing; - measurements.height = settings.size * 3 + settings.outline * 2; - - context.font = settings.style + ' ' + settings.size + 'px "' + settings.family + '"'; - context.textBaseline = 'top'; - - for (var c = 0, cl = settings.charset.length; c < cl; c++) { - - var m = context.measureText(settings.charset[c]); - var w = Math.max(1, Math.ceil(m.width)) + settings.outline * 2; - - measurements.map.push(w); - measurements.width += w + settings.spacing * 2; - - } - - })(); - - - - /* - * 2. Render Texture - */ - - var baseline = 0; - var lineheight = 0; - var texture = null; - - - (function() { - - var canvas = document.createElement('canvas'); - - canvas.width = measurements.width; - canvas.height = measurements.height; - - - var measure_baseline = function() { - - var data = this.getImageData(0, 0, measurements.width, measurements.height); - var baselines = []; - var margin = settings.spacing; - - for (var c = 0; c < settings.charset.length; c++) { - - var baseline = data.height; - - for (var x = margin; x < margin + measurements.map[c]; x++) { - - for (var y = 0; y < data.height / 2; y++) { - - if (baseline > y) { - - if (data.data[y * data.height * 4 + x * 4 + 3]) { - baseline = y; - break; - } - - } - - } - - } - - margin += measurements.map[c] + settings.spacing * 2; - baselines.push(baseline); - - } - - - baselines.sort(function(a, b) { - if (a < b) return -1; - if (a > b) return 1; - return 0; - }); - - - // returns the minimum baseline - return baselines[0]; - - }; - - var measure_margin = function() { - - var data = this.getImageData(0, 0, measurements.width, measurements.height); - var found = false; - - var mtop = measurements.height; - var mbottom = 0; - - var d, dl, y; - - for (d = 0, dl = data.data.length; d < dl; d += 4) { - - // var x = (d / 4) % data.width; - y = Math.floor((d / 4) / data.width); - - if (y < mtop && data.data[d + 3] > 0) { - mtop = y; - } - - if (y > mbottom && data.data[d + 3] > 0) { - mbottom = y; - } - - } - - - return { - top: mtop, - bottom: measurements.height - mbottom - }; - - }; - - var render_outline = function(offset) { - - offset = typeof offset === 'number' ? offset : 0; - - - this.font = settings.style + ' ' + settings.size + 'px ' + '"' + settings.family + '"'; - this.textBaseline = 'top'; - this.fillStyle = settings.outlinecolor; - - - var outline = settings.outline; - var m = settings.spacing; - - for (var c = 0; c < settings.charset.length; c++) { - - for (var x = -1 * outline; x <= outline; x++) { - - for (var y = -1 * outline; y <= outline; y++) { - - this.fillText( - settings.charset[c], - m + x, - offset + y - ); - - } - - } - - m += measurements.map[c] + settings.spacing * 2; - - } - - }; - - var render_font = function(offset) { - - offset = typeof offset === 'number' ? offset : 0; - - - this.font = settings.style + ' ' + settings.size + 'px ' + '"' + settings.family + '"'; - this.textBaseline = 'top'; - - - var m = settings.spacing; - - for (var c = 0; c < settings.charset.length; c++) { - - this.fillStyle = settings.color; - this.fillText( - settings.charset[c], - m, - offset - ); - - m += measurements.map[c] + settings.spacing * 2; - - } - - }; - - - /* - * 2.1 Render Font + Outline - */ - - if (settings.outline > 0) { - render_outline.call(canvas.getContext('2d'), settings.size + settings.outline); - } - - render_font.call(canvas.getContext('2d'), settings.size + settings.outline); - - - - /* - * 2.2 Measure Margin - */ - - var margin = measure_margin.call(canvas.getContext('2d')); - if (margin.top > 0 || margin.bottom > 0) { - - measurements.height = measurements.height - margin.top - margin.bottom; - canvas.height = 0; - canvas.height = measurements.height; - - - if (settings.outline > 0) { - render_outline.call(canvas.getContext('2d'), settings.size + settings.outline - margin.top); - } - - render_font.call(canvas.getContext('2d'), settings.size + settings.outline - margin.top); - - } - - - - /* - * 2.3 Export Baseline and Texture - */ - - baseline = measure_baseline.call(canvas.getContext('2d')); - lineheight = canvas.height; - - - var blob = canvas.toDataURL('image/png'); - - texture = new Texture(blob); - texture.deserialize({ buffer: blob }); - - })(); - - - - /* - * 3. Save Buffer - */ - - buffer.setBaseline(baseline); - buffer.setLineHeight(lineheight); - buffer.setKerning(0); - buffer.setMap(measurements.map); - buffer.setTexture(texture); - - }; - - var _encode = function(buffer, data) { - - if (data instanceof Object) { - - buffer.setBaseline(data.baseline); - buffer.setCharset(data.charset); - buffer.setKerning(data.kerning); - buffer.setLineHeight(data.lineheight); - buffer.setMap(data.map); - buffer.setSpacing(data.spacing); - - - if (data.texture instanceof Texture) { - buffer.setTexture(data.texture); - } else { - _encode_buffer(buffer, data); - } - - } - - }; - - - var _decode = function(buffer) { - - var value = buffer.getBlob(); - - -// value.baseline = buffer.baseline; -// value.charset = buffer.charset; -// value.kerning = buffer.kerning; -// value.lineheight = buffer.lineheight; -// value.map = buffer.map; -// value.spacing = buffer.spacing; - - - if (value.texture === null) { - value = undefined; - } - - - return value; - - }; - - - - /* - * IMPLEMENTATION - */ - - var Module = { - - // deserialize: function(blob) {} - - serialize: function() { - - return { - 'reference': 'tool.data.FNT', - 'blob': null - }; - - }, - - encode: function(data) { - - var buffer = new _Buffer('', _Buffer.MODE.write); - - _encode(buffer, data); - - return buffer.toString(); - - }, - - decode: function(data) { - - var buffer = new _Buffer(data, _Buffer.MODE.read); - - var value = _decode(buffer); - if (value === undefined) { - return null; - } else { - return value; - } - - } - - }; - - - return Module; - -}); - diff --git a/projects/cultivator/fyto/app/Main.html b/projects/cultivator/fyto/app/Main.html deleted file mode 100644 index 6b662600..00000000 --- a/projects/cultivator/fyto/app/Main.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - diff --git a/projects/cultivator/fyto/fnt/museo-sans-300.woff b/projects/cultivator/fyto/fnt/museo-sans-300.woff deleted file mode 100644 index 465bda131af16fa01d481da51750af753c9df3f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26880 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 0) { - code = _polyfill_code(identifier, code); - } - - - var i1 = code.indexOf(''); - var i2 = code.indexOf('', i1); - if (i1 !== -1 && i2 !== -1) { - code = code.substr(0, i1) + code.substr(i1 + 9, i2 - i1 - 9) + code.substr(i2 + 10); - } - - - template.innerHTML = code; - - - return template; - - }; - - var _polyfill_code = function(identifier, buffer) { - - var i1 = buffer.indexOf('', i1); - - - if (i1 !== -1 && i2 !== -1) { - - var sheet = (buffer.substr(i1 + 7, i2 - i1 - 7)).trim(); - if (sheet.length > 0) { - - sheet = sheet.split('\n').map(function(line) { - - var tmp = line.trim(); - if (tmp.substr(0, 6) === ':host(') { - - var i3 = tmp.indexOf(')', 6); - var i4 = tmp.indexOf(' ', 6); - - if (i3 !== -1 && i3 < i4) { - return identifier + tmp.substr(6, i3 - 6) + tmp.substr(i3 + 1); - } - - } else if (tmp.substr(0, 5) === ':host') { - return identifier + tmp.substr(5); - } else if (tmp.indexOf(':host') !== -1) { - return tmp.split(':host').join(identifier); - } - - - return tmp; - - }).map(function(line) { - - var tmp = line.trim(); - if (tmp.substr(0, 9) === '::content') { - return identifier + tmp.substr(9); - } else if (tmp.indexOf(' ::content') !== -1) { - return tmp.split(' ::content').join(''); - } - - - return tmp; - - }).join('\n'); - - - var element = global.document.createElement('style'); - if (element !== null) { - element.innerHTML = sheet; - global.document.head.appendChild(element); - } - - } - - - buffer = (buffer.substr(0, i1) + buffer.substr(i2 + 8)).trim(); - - } - - - buffer = buffer.split('\n').map(function(val) { - return val.trim(); - }).join(''); - - - return buffer; - - }; - - - - /* - * IMPLEMENTATION - */ - - var _ONCHANGE = {}; - var _ONINIT = {}; - var _LAZY_ONINIT = {}; - var _LAZY_ONCHANGE = {}; - - - var fyto = { - - define: function(identifier, template) { - - _HTML_IMPORT = true; - _LAZY_ONINIT[identifier] = []; - _LAZY_ONCHANGE[identifier] = []; - - - var ns = _get_namespace.call(global, identifier); - var id = identifier.split('.').pop(); - var tag = identifier.split('.').join('-'); - var wrapper = Object.create(HTMLDivElement.prototype); - var template = _polyfill_template(tag, template); - var instance = Object.assign(wrapper, { - - attributeChangedCallback: function(name, oldvalue, newvalue) { - - var change = _ONCHANGE[identifier] || null; - if (change !== null) { - change.call(this, name, oldvalue, newvalue); - } else { - _LAZY_ONCHANGE[identifier].push(this); - } - - - // XXX: Fuck those Mozilla Monkey Retards. - - setTimeout(function() { - - var onchange = _ONCHANGE[identifier] || null; - if (onchange !== null) { - - for (var l = 0, ll = _LAZY_ONCHANGE[identifier].length; l < ll; l++) { - onchange.call(_LAZY_ONCHANGE[identifier][l]); - } - - _LAZY_ONCHANGE[identifier] = []; - - } - - }, 0); - - }, - - createdCallback: function() { - - var clone = template.cloneNode(true); - var shadow = clone.innerHTML; - var content = this.innerHTML; - - - if (shadow.length > 0) { - this.innerHTML = shadow + '' + content; - this.__SHADOW = null; - } - - var init = _ONINIT[identifier] || null; - if (init !== null) { - init.call(this); - } else { - _LAZY_ONINIT[identifier].push(this); - } - - - // XXX: Fuck those Mozilla Monkey Retards. - - setTimeout(function() { - - var oninit = _ONINIT[identifier] || null; - if (oninit !== null) { - - for (var l = 0, ll = _LAZY_ONINIT[identifier].length; l < ll; l++) { - oninit.call(_LAZY_ONINIT[identifier][l]); - } - - _LAZY_ONINIT[identifier] = []; - - } - - }, 0); - - } - - }); - - - Object.defineProperty(instance, '_init', { - - get: function() { - - return _ONINIT[identifier] || null; - - }, - - set: function(val) { - - var oldinit = _ONINIT[identifier] || null; - if (oldinit === null) { - - if (typeof val === 'function') { - _ONINIT[identifier] = val; - } - - } - - } - - }); - - Object.defineProperty(instance, '_change', { - - get: function() { - - return _ONCHANGE[identifier] || null; - - }, - - set: function(val) { - - if (typeof val === 'function') { - _ONCHANGE[identifier] = val; - } - - } - - }); - - - if (ns !== null) { - - ns[id] = global.document.registerElement(tag, { - prototype: instance - }); - - } - - - return instance; - - } - - }; - - - global.document.addEventListener('DOMContentLoaded', function(event) { - - setTimeout(function() { - - if (_HTML_IMPORT === false) { - - if (typeof global.document.baseURI === 'undefined') { - - Object.defineProperty(global.document, 'baseURI', { - get: function() { - var base = this.querySelector('base'); - return base !== null ? base.href : window.location.href; - }, - configurable: true - }); - - } - - - var links = [].slice.call(global.document.head.querySelectorAll('link[rel="import"]')); - if (links.length > 0) { - - links.forEach(function(link) { - - var url = link.getAttribute('href'); - if (url !== null) { - - var xhr = new XMLHttpRequest(); - - xhr.responseType = 'text'; - xhr.open('GET', url); - - xhr.onload = function() { - - if (xhr.status === 200 || xhr.status === 304) { - - if (xhr.response.length > 0) { - - var doc = global.document.implementation.createHTMLDocument(url); - var base = doc.createElement('base'); - var meta = doc.createElement('meta'); - var body = doc.createElement('body'); - - - base.setAttribute('href', url); - meta.setAttribute('charset', 'utf-8'); - - if (typeof doc.baseURI === 'undefined') { - Object.defineProperty(doc, 'baseURI', { value: url }); - } else { - doc.baseURI = url; - } - - - doc.head.appendChild(meta); - doc.head.appendChild(base); - - - doc.open(); - - - if (doc.body !== null) { - doc.body.innerHTML = xhr.response; - } else { - doc.write('' + xhr.response + ''); - } - - - var scripts = [].slice.call(doc.querySelectorAll('script')); - if (scripts.length > 0) { - - scripts.forEach(function(script) { - - var scope = { - document: { - querySelector: function(selectors) { - return global.document.querySelector(selectors); - }, - querySelectorAll: function(selectors) { - return global.document.querySelectorAll(selectors); - }, - currentScript: { - ownerDocument: doc - } - } - }; - - - try { - - with (scope) { - eval(script.innerHTML); - } - - } catch(e) { - console.log(e); - - } - - }); - - } - - } - - } - - }; - - xhr.onerror = function() { - // XXX: Do nothing - }; - - xhr.send(null); - - } - - }); - - } - - } - - }, 500); - - }); - - - - return fyto; - -})(typeof global !== 'undefined' ? global : this); - diff --git a/projects/cultivator/fyto/ui/Element.html b/projects/cultivator/fyto/ui/Element.html deleted file mode 100644 index cf2f0d3c..00000000 --- a/projects/cultivator/fyto/ui/Element.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - diff --git a/projects/cultivator/fyto/ui/Menu.html b/projects/cultivator/fyto/ui/Menu.html deleted file mode 100644 index 960bb541..00000000 --- a/projects/cultivator/fyto/ui/Menu.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - diff --git a/projects/cultivator/fyto/ui/State.html b/projects/cultivator/fyto/ui/State.html deleted file mode 100644 index e32bd713..00000000 --- a/projects/cultivator/fyto/ui/State.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - diff --git a/projects/cultivator/fyto/ui/element/Project.html b/projects/cultivator/fyto/ui/element/Project.html deleted file mode 100644 index 49603834..00000000 --- a/projects/cultivator/fyto/ui/element/Project.html +++ /dev/null @@ -1,276 +0,0 @@ - - - - diff --git a/projects/cultivator/index.html b/projects/cultivator/index.html index fa4263a4..2a75aa17 100644 --- a/projects/cultivator/index.html +++ b/projects/cultivator/index.html @@ -13,183 +13,52 @@ - - - - - - - - - + + - - - - - - - - - - - - -

    - The lychee.ai Stack, Editor and Strainer are Work-in-Progress until 2016-Q3. -

    -
    -

    - lychee.js Version: 2016-Q1 -

    - - - - - - -

    - An easy template and starting point for developing projects with lychee.js. -

    -
    - -

    - Fast-paced Multiplayer action game with battling Tanks in a Maze. - Hackathon project (48 hours). -

    -
    - -

    - A demo that shows multiple sandboxed instances and a custom game-specific Renderer. -

    -
    - -

    - Live view from the ISS (International Space Station). - Hackathon project (48 hours). -

    -
    - -

    - Pong implementation that is easy to follow. No adaptive layout, everything as simple - as possible. -

    -
    - -

    - Broadcast and Multicast peer-to-peer networking chat service with multiple rooms. -

    -
    - -

    - Tic Tac Toe implementation that is easy to follow. No adaptive layout, everything as simple - as possible. -

    -
    - -
    - - - - -

    - A GUI tool to manage and connect your libraries and projects. - Manages training and debugging data of your apps. -

    -
    - - -

    - A GUI tool to edit your libraries and projects. - Edits all entities, states and manages fertilizer build targets. -

    -
    - - -

    - A GUI tool to update and filter your libraries and projects. - Allows a peer-cloud AI to automatically fix and improve your apps. -

    -
    - - - - - - - - - - -
    - - +
    +

    lychee.js Logo

    +

    lycheejs

    +
    + +
    + +

    + The lychee.js Guide + helps you to get started easily and covers every topic you need to know. + Please also take a look at the README.md, + it exists for a reason. +

    +

    + Installed lychee.js Version: 2016-Q1. +

    +
    # Please update your lychee.js Installation
    +
    +cd /opt/lycheejs;
    +./bin/maintenance/do-update.sh;
    +
    + + +
    +
    + + +
    +
    +

    + Need Help? Join our IRC channel #artificial-engineering @ freenode +

    +
    + +
    + diff --git a/projects/cultivator/sprite/index.html b/projects/cultivator/sprite/index.html index 6606f7ba..9001e606 100644 --- a/projects/cultivator/sprite/index.html +++ b/projects/cultivator/sprite/index.html @@ -1,7 +1,7 @@ - lycheeJS Sprite Tool + lychee.js Sprite Tool @@ -9,165 +9,111 @@ - + + - - -
  • Tool
  • -
  • Help
  • - -
    -
    - -
    - -
    -

    1Modify

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Files
    Texture Size
    Frame Size -
      -
    • original
    • -
    • 2^n
    • -
    -
    Bounding Box -
      -
    • none
    • -
    • auto
    • -
    -
    Entity Dimensions -
    - - - - -
    -
    Entity States -
      -
    • none
    • -
    • auto
    • -
    -
    -
    -

    - -

    -
    - -
    -

    2Preview

    -
    -
    - -
    -
    -
    - -
    - -
    - -
    -

    1Tool Usage

    -

    - Select all frame images in PNG format. - Modify the settings to tweak the Sprite, the rest is done automatically. -

    -

    - Animations are triggered if the frame image file names contain an underscore. -

    -
      -
    • default.png
    • -
    • not-animated.png
    • -
    • animated_01.png
    • -
    • animated_02.png
    • -
    -
    - -
    -

    2Engine Usage

    -

    - The exported files include the Definition (.js), the Texture (.png) - and the Config (.json) for the Entity. -

    -

    - If you want to use the Entity inside your Project, you have to rename - the files accordingly after copying them into the source/entity/ folder. -

    -

    - Don't forget to modify the lychee.define('app.entity.Entity') line in the .js - file accordingly! -

    -
    - -
    - +
    +

    1Modify

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Files
    Texture Size
    Frame Size +
      +
    • original
    • +
    • 2^n
    • +
    +
    Bounding Box +
      +
    • none
    • +
    • auto
    • +
    +
    Entity Dimensions +
    + + + + +
    +
    Entity States +
      +
    • none
    • +
    • auto
    • +
    +
    +
    +

    + +

    +
    + +
    +

    2Preview

    +
    +
    + +
    +
    +
    -
    - lycheeJS is (c) 2012-2016 by Artificial-Engineering and released under MIT license. -
    -

    - The official (planned) release date for the lychee.js CARTEL/ES-HyperNEAT - stack is the 28th September 2016. It will be released to the public here: -
    -
    -
    https://github.com/Artificial-Engineering/lycheejs-cartel -